Author: Tom Chance
Of course compiling Qt applications using MinGW has been possible for some time — the earliest success story I could find was from November 1999 — but SourceXtreme now claim to have refined the process to the point where it can develop Windows applications under Linux commercially.
SourceXtreme’s business plan seems quite simple — delivering a range of services from groupware migration to custom programming. A large proportion of businesses in the company’s area are of small or medium size, and almost all of them use computers, usually with proprietary software. If they can be offered a cheaper free software solution, and if SourceXtreme can make that migration trivial, then it will have an open market.
The big hurdle, of course, is the migration, which requires either compatibility between the old proprietary applications and SourceXtreme’s free software solutions, or porting the proprietary products and maintaining them as free software. With most of the major technologies, such as groupware, Web servers, and file servers, free software has become increasingly capable, so companies like SourceXtreme are able to offer seamless migration. But when confronted with custom applications the process can be more painful.
Of course the picture isn’t quite that simple, since companies often upgrade their applications. This, according to Ian Geiser, vice president of SourceXtreme, gives free software advocates the upper hand: “A lot of business applications contain legacy C code that companies porting to Java or C# would have to rewrite. With Qt and C++ we can keep it.” Geiser believes that Microsoft has given the development and business communities the impression that it is abandoning these custom applications in favor of ports to the new .Net architecture. By using the leverage of free software tools like Qt, MinGW, Wine, and Valgrind, all of which Geiser considers superior to Windows alternatives, SourceXtreme is able to port applications to the Qt toolkit and C++ at a lower cost, thus preserving a business’s core applications, freeing the organization from vendor lock-in and helping its bottom line.
Though he is positive about his company’s future with this plan, Geiser is more excited about its implications for the software development market. The second stage, which SourceXtreme intends to help through support and training, is moving development shops off Windows onto Linux, where they can port legacy applications and develop new ones using free software tools. “The shift”, Geiser said, “will be similar to when Microsoft first offered a C compilation environment for DOS, which resulted in developers flocking to their platform. When developers compare the Windows and Linux platforms, and especially the features of Qt to Windows’ MFCs, they’ll see that they’ll have less work to do with better tools under Linux.”
If Geiser is right and development shops start to migrate to Linux as their primary development platform, we could see some major knock-on effects. The first is that there will be no barriers to developing cross-platform applications, giving businesses that buy from these shops fewer barriers to switching themselves. Widespread migration would also provide another incentive for development shops both to develop cross-platform software and to provide migration services themselves.
Secondly, developers are early adopters in the software market, and if a large proportion of them move from Windows to Linux and are seen to be adopting a platform for their work that has already become extremely successful in other context, many will follow. In the context of development shops, a company is more likely to be persuaded to migrate to a platform if its contractor is using it successfully. If that contractor can migrate them to the free software platform and save them money, it becomes an obvious move.
The idea of making Linux and Windows applications compatible seems similar to KDE on Cygwin, a port of KDE and Qt to Windows. When I asked Geiser about this project, he was dismissive: “It isn’t viable, it’s working in the wrong direction. KDE on Cygwin says to companies that Linux and KDE aren’t a viable platform, so promoting KDE on Cygwin is promoting Windows. We want to promote technologies that move companies away from Windows.”
If, as John Terpstra is advocating, we need to “get our act together” migrating small and medium businesses to free software platforms, then the work that has gone into SourceXtreme’s software puts the entire community in good stead. It may not reshape the market overnight, but it provides another piece of the puzzle.