A year after Australia's one-man army started pounding out code for GNU/Linux's version of .Net, he's looking to double the quarter of a million lines of code already written, and hopes to do so in six months if he can convince some new "code demons" to sign up to the cause.
"We're moving full-steam ahead," said Rhys Weatherley, the Brisbane developer who had written 254,423 lines of code by December last year -- just 12 months after throwing himself into his Portable.NET project.
Portable.NET is designed to run on a variety of operating system platforms -- GNU/Linux, BSD, Solaris, MacOS, Windows, PDAs -- whereas Microsoft only caters for Windows, and its main focus is to build a runtime engine, C# compiler, and C# system library for the "Common Language Infrastructure" (CLI) platform -- -a European Computer Manufacturer's (ECMA) standard --- for Free Software.
Portable.NET is now a component of the www.dotgnu.org project to build a Free Software alternative to Microsoft's move into Web services, and it's intended Portable.NET will provide complete CLI services for the DotGNU platform -- "so that Microsoft doesn't end up owning yet another piece of critical infrastructure," Weatherley said.
Other projects in DotGNU are looking into authentication, Web services, and the other aspects of .Net.
"Not all of Microsoft's .Net stuff will be tackled by DotGNU," Weatherly explained. "Like, will we have a travel agent Web service? Probably not. But we would provide the infrastructure necessary so that someone in the travel industry could build such a thing using our software."
Wanted: Code demons
The biggest task at the moment is bringing the C# compiler and runtime engine to fruition, according to Weatherly. With 80 percent of that complete already and 60 percent of the C# system class library, Australia's star performer has done 99 percent of it on his own -- pumping out 5000 lines of code a week on average since 1 January, 2001. However, Weatherley is looking for a volunteers to help build the class library. To date a few contributors have helped here and there and Weatherley is looking at ramping them up to become more regular contributors, "but most people have day jobs making it difficult to put 200 percent into it," he said. Weatherley admits that his own luxury of being able to work on Portable.NET full-time (he founded Southern Storm Software to work on this and other Free Software projects) has meant his loyalty hasn't been split with a day job. However, "I can't do that forever...eventually i'll have to rejoin the human race," he quipped. "We need a couple of more code demons...if we get that we'll pound it out in no time," he added. After that the next step is to branch out into other areas. Portable.NET will eventually be able to compile C# code to run on the Java Virtual Machine (JVM), and compile Java programs to run on CLI engines, according to Weatherley's predictions. "We are looking for ways to marry the JVM and CLI worlds, to give programmers maximum choice as to how they build programs," Weatherley said. "Microsoft wants Java to go away, because they can't control it." Everyday challenges
The biggest challenge for Free Software developers is getting useful information from Microsoft as independent groups cannot join the ECMA standards group so lag behind when it comes to information about how CLI is supposed to work, according to Weatherley. "At one point last year, the drafts that were being released to the public by ECMA were three months out of date by the time we could view them. There's no reason for this: publishing specifications on the Web is cheap and easy, but groups like the ECMA persist in putting roadblocks in the way of effective and open standardisation." The second biggest challenge, he said, is getting sufficient people to work on the project. Weatherly will be attending the Linux conference at Queensland University next month to show off his work in progress, to find people interested in joining the cause, and garner feedback from other Linux attendees: "Like have I lost my mind?" he said.