Novell Home

Developer's Toolbox

Novell Cool Solutions: Feature
By Richard Smith

Digg This - Slashdot This

Posted: 15 Apr 2005

Some thoughts for developers on Linux migration

This month I'm going to take a look at a number of development tools that will allow developers to migrate applications created on a number of different platforms using a number of different tools to Linux. Now these tools can also enable a developer to build new applications on Linux, many times using skills and knowledge learned while developing on the other platforms.

Tools of this nature provide a means for businesses and developers to build a transition plan and make the move to Linux with a minimal impact on the productivity of users. Making the move to using Linux as your server platform will have little or no impact on the users of the software. You can make this migration in many times without your end-users even realizing anything has changed. Web servers, portals, and even databases can be migrated to run on safe and secure SUSE Linux servers, while still being accessed by users running Windows desktops. Decreased downtime might be the only clue that users have to the change.

Where the issues with users arise is typically with the desktop applications that consume the server-side programs and data. The growth of Linux in the datacenter and back-end services is well documented, but adoption by desktop and consumer users has and will take more time. Most users have developed a dependence on the functionality provided by their desktop applications. In many case there are Linux equivalents to existing applications, the Office suite being a prime example. Open Office provides users of Microsoft Office (or WordPerfect or whatever the existing office suite might be) with nearly the same functionality that they have come to expect.

While a number of these more commercialized applications have Linux equivalents, the problem with migrating to a Linux desktop will be most obvious when dealing with the number of customized applications that a user replies upon. In large companies and institutions typically development staffs have built many, often small and single-purposed applications to fulfill the needs of the user base. There are a number of development systems, specifically on the Windows platforms, that have become mainstays for creating applications of this nature.

There are many applications built with tools like Visual Basic, Delphi, FoxPro, Clipper and others that have been in use in small businesses and departments within companies that are some of the most vital to the business. Many times these applications will be the roadblock that could prevent migrating desktops to Linux. What I'll be doing over the next few months is reviewing and highlighting a number of tools available that will help mitigate this issue. In some cases the tools will actually take existing code and create a Linux application that functions and looks like the original. Now this isn't always without some work, but typically these tools will do the bulk of the work for you. A good example of this is in the Cool Solutions article located here.

I'll begin with a couple of these tools this month and then do a couple more each month for the next two or three months. Some of these tools I will even try to do a more in-depth article including some example of migrating applications. If you have a favorite tool that provides this type of functionality please drop me an email (rlsmith at novell dot com - Please replace "at" with the @ symbol and "dot" with .) and I'll consider it for a future article.

Revolution from Runtime Revolution

Special Offer for Cool Solutions Readers: Free Copy of Runtime Revolution

The good folks at Runtime Revolution have extended a special offer to Cool Solutions readers. They are offering it for free to Novell customers who know the secret code. See this page for details.

Runtime Revolution Ltd.'s Revolution ( is a high level application development that enables developers to build and deliver applications on a variety of platforms, from Mac (both Mac OS and OSX) to Windows to many flavors of Unix/Linux. The Revolution development environment makes quick prototyping and development simple and as easy as selecting a visual component and placing it on a window (card in the Revolution vernacular). I'd like to take a quick look at Revolution, highlighting as many of its features as possible.

Developers from the Mac HyperCard world will recognize Revolution immediately and feel very comfortable with the environment. Developers who have worked in other high-level programming environment such as Visual Basic and Delphi will also feel right at home with Revolution's IDE. In fact, in a lot of ways Revolution feels like a number of development environments all rolled into one. While it is not a direct migration tool, Revolution would be an easy tool to pick up for anyone who has used VB, Delphi, Java or even some higher level tools like Flash and Director. Of course Mac developers will have a bit of an edge here since the paradigm upon which Revolution is based has been around in the Mac world forever.

The scripting language that is part of Revolution, Transcript, is very easy to pick-up and many see similarities to other scripting languages and some of the other development languages like VB. Revolution includes a wide variety of built-in functionality in Transcript as it ships and the language is very extensible to allow a developer to add functionality required for specific tasks. Transcript scripts can be attached to events or tied directly to the interface components that drive them.

Building applications in Revolution begins with creating the users interface through a very easy to use IDE. Interface components are dragged from a toolbox and placed on the interface palette. You can easily move components until the interface meets your needs. Here are screenshots of both the Windows and Linux versions of the IDE.

Click for larger view

Click for larger view

From there you attach the scripts you need and within a short time you have a complete GUI-based application that can be compiled to run on multiple platforms easily. All in all Revolution is a very powerful tool for quickly and easily building desktop applications that can be used on a variety of platforms. You can download trial versions and get much more information at Runtime Revolution's website here.

The Recital Products from Recital Corporation

For many years the XBase family of database application development tools was king of data management world. Dbase and the many products that were spawned to take advantage of XBase-based databases were used extensively to build applications ranging from banking to complete accounting systems to Point of Sale systems. Many of these applications are still in use and the users are forced to use out-dated operating systems in order to have access to these programs. Maintaining these applications can be expensive since the operating systems upon which they are deployed are in many cases not being maintained.

The Recital line of products ( provides the tools to enable the migration of these applications to more up-to-date and maintained operating systems. Those old FoxBase, FoxPro, Clipper and dBase applications can easily be migrated to run on Linux, further mitigating the transition for the end-user. Another consideration is that these applications pre-date the extensive use of the World Wide Web as a means for providing application access and Recital has products that allow these older applications to be enabled to leverage the web as an access medium. Here are brief descriptions of the Recital products:

Recital 9 Visual Developer
Recital 9 Visual Developer is the only product for Windows, Linux, Unix, and OpenVMS that migrates FoxPro 2.6 and SCO FoxBASE applications to the internet and transforms them into GUI client/server applications without having to rewrite the code. Legacy FoxPro 2.6 and SCO FoxBASE applications can be enhanced with full Windows .NET Forms functionality. Recital 9 Visual Developer extends the life of your existing applications, providing you with a greater return on investment, without the need to rewrite the application, or retrain your developers and end-users.

Recital 9 Terminal Developer
Recital 9 Terminal Developer is the only cross-platform ANSI SQL compliant database and 4GL for Linux, Unix, and OpenVMS that has 100% language and database compatibility with FoxPro 2.6 and SCO FoxBASE. According to Oracle, statistics show that migrating your applications to run against a new database can amount to 50% of your overall migration project, and that does not include recoding of the application logic! That's why Recital 9 Terminal Developer is the premier cross-platform tool for running, enhancing, and supporting your legacy FoxPro 2.6 and SCO FoxBASE applications on Linux, Unix or OpenVMS without the need to rewrite the application, or retrain your developers and end-users.

Recital 9 Database Server
The Recital 9 Database Server is the only cross-platform ANSI compliant SQL database server for Windows, Linux, Unix, and OpenVMS that has native support for Visual FoxPro 8.0 SQL and allows stored procedures, triggers, and user-defined functions to be written in a Visual FoxPro 8.0 compatible 4GL. The Recital 9 Database Server includes a Universal ODBC driver, a Universal JDBC driver, and a Universal .NET Data Provider. The Recital 9 Database Server has support for accessing disparate data on Linux, Unix, OpenVMS and Windows servers across the internet. Also includes support for server-side ODBC drivers, JDBC drivers and ADO drivers. If you know Visual FoxPro then you can be productive immediately with The Recital 9 Database Server.

From this quick overview you can see that the Recital product line provides not only great migration tools, but development tools that can be used to leverage a single source code base across multiple deliver platforms. For more information and trial version downloads visit Recital's website here and watch for a more in-depth look at the Recital products in an upcoming Cool Solutions for Developers article.

Formativ from Advansys

Long time Cool Solutions readers will readily recognize Formativ and the company that publishes it, Advansys. As a supplier of the premier add-on for GroupWise, Advansys has contributed a significant amount of content to the GroupWise Cool Solutions site. While I have looked at Formativ a few times in the past and even played with it a bit, I didn't get a real understanding of the power of the product until I spent some time at the Advansys booth at BrainShare 2005 in Salt Lake City.

This tool is a must have for any GroupWise shop. I saw demonstrations of a couple of extensions to GroupWise built in Formativ and couldn't believe what they could do. What can be done with GroupWise using Formativ really make GroupWise a very powerful collaboration tool, even beyond what can be done with GroupWise out of the box.

One extension that stood out to me, might seem like a simple thing, but isn't it really the simple tasks that usually either don't get done or cause last minute scrambles? This Formativ applet was for submitting a request for leave or time off. The submission part is no big deal, right! We all manage to do that when we need time off. But what this applet did that was so cool was that once the request had been processed it blocked the time in your calendar automatically. I can't remember how many times I've requested time off and forgotten to block the time on my calendar; a time and frustration saver for sure. Formativ comes with a number of applets and you can download many more from Formativ Applet Central. Everything from simple forms (Formativ has a great forms builder) to complete portals built within GroupWise, Formativ has far too much to cover here.

And best of all you can build your own custom applets that do what you want and need by using Formativ's built-in development environment. Here is a screen shot of the IDE. I can't imagine any GroupWise administrator who hasn't been asked over and over to add a certain feature to GroupWise. Formativ is the tool that allows you to do just that.

So whether you are a GroupWise developer, administrator or even just an end-user, you need to look at Formativ to fill those gaps in GroupWise, many of which you might not even realize exist.

Novell Cool Solutions (corporate web communities) are produced by WebWise Solutions.

© 2014 Novell