Mainsoft and IBM are sponsoring the Race to Linux contest on The Code Project site to encourage developers to try out .Net-to-Linux porting. Though The Code Project site is targeted at Windows developers, many Windows developers are thinking about Linux. The Code Project site has about 2.3 million users, with 1.7 million unique visitors each month, according to founder Chris Maunder.
The idea for the race came about after a survey of Code Project users turned up interesting, but not surprising, results. Maunder said that 20% of his readers develop on Linux, 20% use MySQL, and 16% use Java. Those developers may not want to abandon ship, as it were, but they are interested in getting the maximum bang for their buck by running their applications on Linux as well as Windows.
One reason that developers are thinking about cross-platform development is the cost. Maunder said that developers are "looking at the cost of SQL Server and going 'I simply can't afford it'" but still want to develop their applications in their favorite languages, such as C#. Maunder also credited the Mono effort with helping to push cross-platform development.
Laurence Moroney, senior architect of Mainsoft, said that his company also sees cross-platform development as a growing trend. He cited an Evans Data Corp. study that found one in five developers that use Visual Studio .Net as their primary integrated development environment (IDE) have written Linux applications as well.
Mainsoft is sponsoring the contest to highlight their tools for porting C# and Visual Basic .Net to run on Java. Moroney said that Mainsoft's Visual MainWin for J2EE Developer Edition ("Grasshopper"), takes code compiled into Microsoft Intermediate Language (MSIL) and then converts that into Java bytecode.
Developers are not restricted to using Mainsoft's tools, however. Contestants can use any method or toolkit they prefer -- such as Grasshopper, Mono, or PHP -- to port the application, as long the finished product meets the guidelines and the developer includes documentation on how the application was ported.
The first target application won't be unveiled until Monday morning at 8 a.m. Pacific time, but developers can sign up before the applications are announced. The second application will be announced Friday, September 23, and the third will be announced Monday, September 26.
Maunder said that the applications were not chosen to give developers a hard time, but because they were well-known. According to Maunder, it should be possible to port the applications in "between five to 15 hours of work. Some could do it quicker. We've done it so that it's not too much work. We don't want to make it painful. It should be fun and easy to do." Maunders said that the applications to be ported are well-known open source applications.
The prize for the contest has a hint of irony about it. Developers will be racing to port Microft ASP.Net applications to run on Linux to win a Microsoft Xbox 360. The first developer to submit the ported application for each race will win the Xbox, and the first developer using Grasshopper to do their port will win a Xbox game.
Judging will be done by Code Project developers. They'll test the code on IBM eServer xSeries server running SUSE Linux 9. Developers can submit ports that require additional dependencies, but they need to be documented for the judges.
Winners will be announced on Monday, October 3. Maunder said that they want "a little bit of suspense," even though the winning entries may come in within a few hours after the target applications are announced.