Mono and MonoDevelop

Two years later and a lot of work by dedicated developers, Mono’s .NET 1.1 support is essentially 100% complete. The prospect of cross-platform .NET while exciting, brought back memories of the progress made by the Wine project. Wine has been around longer than Mono and still cannot run most Windows applications in a stable fashion. This was part of my decision to wait an extended period before evaluating Mono.

Yesterday I downloaded the generic Linux installer for Mono v. and had a working Mono instance on Ubuntu 6.10 after a few mouse clicks. Using the command line tools, I compiled a couple of simple .NET 2.0 programs I developed on Windows using Visual Studio. I was able to install my assemblies into the GAC and run my applications without any errors. Mono appears to work quite well for .NET 1.1 development and has enough 2.0 support for simple applications.

My experiences with MonoDevelop were disappointing to say the least. My first attempt to create a simple ASP.NET application worked well enough, a couple of basic controls on form that echoed their content on submit. I noticed a number of quirks such as the aspx and code behind files not being displayed in a nested fashion until the project was saved and re-opened. Trying to connect to and query a MySQL 5.0 database was so frustrating I gave up. I was able to create the connection and display the tables in my database. Trying to refresh the view randomly locked MonoDevelop and trying a simple “SELECT *” resulted in a query syntax error. The same query copied from MonoDevelop and pasted into the MySQL Query Browser worked flawlessly. MonoDevelop generated numerous “data source already open” errors.

I checked out the latest MonoDevelop from SVN and built it with the alpha ASP.NET designer. JSCall-Sharp is needed by the ASP.NET editor and was checked out from the SVN trunk as well. MonoDevelop configured and built without any errors. I started the application and encountered the same errors with MySQL and could not get the ASP.NET editor to function as well. The ASP.NET editor was complaining about the number of calls present in JSCall-Sharp.

A project of this scope is difficult and complex. The members of the Mono team have made an outstanding effort creating a cross platform version of .NET. I will be waiting for the official 1.0 release of Mono before re-evaluating the platform. For now the best option for cross platform enterprise applications is still Java.


All I can say about this project is “WOW”! IEs4Linux finally provides a low resource solution to running Internet Explorer on Linux. Many of our web projects are cross browser and we run a number of operating systems for development depending on client requirements. Until IEs4Linux, it has been difficult to develop on Linux and test using Internet Explorer short of having to install a complete virtual machine running WIndows XP.

IEs4Linux runs Internet Explorer versions 5.0 through 7.0. While not totally fool proof, IEs4Linux allows one to quickly verify if a page displays correctly with Internet Explorer. IE7 support is beta and it seems to work quite well. Support for IE7 uses IE6 with the version 7 rendering engine, in other words you won’t get the new interface with tabs and such.

IEs4Linux uses Wine for the translation layer and some users have reported different levels of success depending on the version of Wine installed on the system running IEs4Linux. This solution also requires that one have a legal copy of Windows in hand to avoid any licensing issues.

You can get IEs4Linux from Tatanka.

Web Site Construction

Please forgive us if our sites don’t look quite right in your browser of choice. We are still working the bugs out of our themes for WordPress, PhpBB, PhpBT and Mediawiki. Users browsing with Mozilla based browsers should not encounter any problems. We are having a number of issues tweaking our sites for IE 7 which should be resolved in the near future.

Update 12-10-2006

All sites should render correctly under FireFox 1.5+ and Internet Explorer 7.0.