Sunday, October 17, 2010

Using Mono

I have been involved in developing .NET web applications  since quite some time now. Usually the applications are targeted for the Windows OS, using IIS as a web server. This particularly helps organization already having users setup and running on windows that could authenticate and authorize themselves against their windows accounts to utilize the web applications. However I quite frequently dabble with code on my home laptop, which runs Windows Vista Home Basic (among others). Not pretty eh !? This does not and can not have an IIS installation. So all I had to rely was on Visual Studio Express edition (since I don't like spending money on stuff), and debug applications using the mini ASP.NET web server shipped with the Visual Studio Express. There were two problems with this :

1) I could only debug my applications. Never actually host them on my laptop.
2) I have a mediocre home laptop. 1.66 GHz dual core processor and 2 GB RAM. Visual Studio Express wasn't helping me achieve efficiency (while working, it would easily hog all the resources).

So I dug up some articles on the web, and found out that I could install Apache HTTPD web server on my laptop, and install the mod_aspdotnet module, to host ASP.NET web applications. This was pretty cool. The HTTPD web server is pretty fast, and doesn't hog down the laptop. Perfect. I could develop applications in Visual Studio Express, and host them on the Apache web server (HTTPD) to see how things work out in real time. So far so good.

But again there were some limitations. Apache community doesn't actively develop/contribute to mod_aspdotnet module, and since then it has been maintained by its own community. It is compliant with only up-to .NET 2.0. But the biggest problem of them all was that I rarely used Windows, and most of the time I am using Ubuntu. Working on windows meant spending away time from my favorite OS and feeling guilty about it.

But if there is a problem, there is always a solution, because chances are you are not the first person to have hit that roadblock. I read about Mono and have been using it ever since. It installed seamlessly on Ubuntu, and does not even hog my laptop resources. It comes with a mini xsp2 web server to let you debug the web applications, and you can also install apache HTTPD together with mod_mono module to host the web applications for real time experience. The bonus is Mono is binary compatible with up-to .NET 4.0 (barring some features). And I am in love with Mono ever since. Apart from the web development you could also do all the console, windows forms, and GTK# development.

Since then I have created solutions using Visual Studio, opened them in Mono from Ubuntu, compiled them in both places, and hosted them on IIS and HTTPD. Totally binary compatible. No issues noted.This is what I call true cross platform development. And as a matter of fact Mono can be installed on Windows as well. Open source for .NET has arrived. Next time some one ridicules .NET to not be truly cross platform, here is the answer. Mono. The only drawback I have found with Mono's IDE is that it doesn't provide for rich design time tools for web site design. However It makes great stuff for trying out code snippets, working on console applications, and creating class libraries and web services.

Here are the links for the softwares I have mentioned in this article. So that you could read more, and decide what combination is best for you :-

Visual Studio Express http://www.microsoft.com/express/
Apache HTTPD web server http://httpd.apache.org/
Project Mono (for Mono runtime, mod_mono module for Apache HTTPD, and the IDE MonoDevelop) http://www.mono-project.com/Main_Page

And this is the blog which helped me actually configure mod_aspdotnet on Apache HTTPD http://weblogs.asp.net/israelio/archive/2005/09/11/424852.aspx

It has only been few weeks since I first started experimenting with Mono, so not all information above might be accurate. There could be omissions or oversights on my part. I would be more than glad if anyone points those out, and helps me move ahead. 

Friday, October 15, 2010

who me? who is that?

I am not just who I am, its an amalgamation of who I was born as, how I was raised, who I mixed with, who I chose to avoid and who I couldn't, the sins I committed, the sins I should have committed but did not have the courage to, the occasional good I did, the actions I took, the choices I made, and the actions and choices of those around me. Could I have been some one else, or even with varying some of the factors forming me would still yield a person a lot similar like me?

Monday, October 11, 2010

An Indian version of Debian

Just found out that India has its own customized version of Debian Linux, credits to CDAC. It has been named as BOSS (Bharat Operating System Solutions) "http://bosslinux.in/". CDAC / DIT of India have also nurtured an organization called NRC-FOSS (National Resource Centre for Free and Open Software) "http://nrcfoss.org.in/". impressive :-)

Saturday, October 9, 2010

College Life

This Saturday (today, if I am not too late) I happened to be present at HCL's Career Development Centre. Actually they host Prometric tests, and my wife happened to have enrolled for an exam. So I had driven her to this place. While she was in the "room" taking the test, I was left with one good hour in the lobby with nothing to do. The place is almost like a college, since many final year kids and/or fresh graduates undertake some or the other IT course here to "jump start" their career. And the place was teaming with many of them. Apparently (or so it seemed) many of them were still not out of the mindset of not being in a college since I could overhear a lot of conversation from a noisy group. There were talks of bunking the class from dushera to diwali, excitement over a cancelled class for a faculty no show, and discontent on the grading given on the tests taken the previous week. It all sounded like pure bliss to me. Schooling was so much fun. 

Thursday, October 7, 2010

is that haze

Woke up this morning to an aromatic cup of tea. Nothing like it. But that is not what this is about. Strolled into the balcony and felt a strange chill in the air. Could just sit around in the hall without a fan, and what was that mist enveloping the Noida skyline? Winters knocking at doorstep already ? Seems like things are changing for good. Happy morning to all of you :-)