DotNet --- AUAAAUGUGHH!
Posted: Fri Sep 04, 2009 6:23 am
For the past 6 years, all my development has been on Linux and PHP. The past two weeks, however, I had a client stuck in a bad situation with no one else on the payroll to turn to with his DotNet problems, so it ended up being me. But first, some background -- I left the Microsoft world of programming for these reasons:
- DotNet and all its complexity came out. I was perfectly happy on the old ASP technology at the time, so this was frustrating. Connecting and retrieving data from the database used to be accomplished in like 8 lines on ASP, and became like 50-60 lines on DotNet (although it was abstracted via a GUI). Yeah, that makes all the sense in the world.
- CodeRed walked right on through MS security and MS had difficulty stopping it.
- The Blaster virus walked right on through -- same troubles with MS in capping that. We even had power outages tied to it although the American power companies denied a connection, but I knew better. I remember CNN reporting the Blaster virus was tied to power outages, and then later the power companies denying that. I wasn't buying it -- sounded like the Government told CNN to not report that as a matter of national security.
- I was tired of paying $2000 every two years for MSDN Universal to keep ahead of the pack in my MS skills.
- I was tired of having to relearn new APIs that were the same as last year's APIs, just renamed -- thanks to Joel Splosky for putting that so aptly.
- All the cool news regarding innovation in development was coming out of the Linux world, and that's still the case today.
- Among all my peers and myself, I was seeing Linux fill the server room and Microsoft IIS was diminishing.
- I saw the video where Bill Gates lied in court in the monopoly hearings.
- I surfed around with Java and JSP on Linux and was pulling my hair out until I learned PHP, instead.
- PHP got really cool in the middle of the PHP4 years and has gotten even cooler since then. Sure, the API is a little inconsistent here or there, but it works.
Therefore, ultimately I said enough is enough and quit Microsoft cold turkey. I switched over to LAMP. I reformatted my laptop with RH8 Linux at the time, and traveled through the Linuxes until I settled on Ubuntu about 4 years ago. Haven't left Ubuntu since.
So, anyway, the heck I have gone through these past few weeks with DotNet has been disturbing. I messed with:
- IIS and DotNet not talking to each other.
- Several undocumented things like the fact that all DotNet libraries after 2.0 do not show up in IIS and so you won't see 3.5 seeming like it's installed when it is.
- Crazy stuff with the web.config file.
- Crazy folder permissions you need to make stuff work.
- Getting a server registry so screwed up when trying things that you have no choice but to reformat and start all over again.
- Application pools having trouble.
- Learning that I need to install AJAX Extensions because of the errors I was having, even though it made no sense.
- Plesk control panel being both a blessing and a curse regarding one's IIS install. Sometimes it's better to start all over again in Plesk and recreate the domain there, then start fixing things about an old website after that. But if you check off the wrong thing in Plesk when creating that domain, your old site might not work.
All I can say is, I'm so happy that my world is now LAMP instead of DotNet. I mean really, what a bunch of crap this DotNet stuff is. Once you learn a few basics about how Linux and Apache works, LAMP is a piece of cake compared to DotNet. It's a miracle that DotNet sites are even accomplished without major delays. I would bet, hands down, that if a company wanted to send out RFPs to a LAMP and DotNet team, the LAMP team could deliver it cheaper, on time, and have less troubleshooting and more stability.
- DotNet and all its complexity came out. I was perfectly happy on the old ASP technology at the time, so this was frustrating. Connecting and retrieving data from the database used to be accomplished in like 8 lines on ASP, and became like 50-60 lines on DotNet (although it was abstracted via a GUI). Yeah, that makes all the sense in the world.
- CodeRed walked right on through MS security and MS had difficulty stopping it.
- The Blaster virus walked right on through -- same troubles with MS in capping that. We even had power outages tied to it although the American power companies denied a connection, but I knew better. I remember CNN reporting the Blaster virus was tied to power outages, and then later the power companies denying that. I wasn't buying it -- sounded like the Government told CNN to not report that as a matter of national security.
- I was tired of paying $2000 every two years for MSDN Universal to keep ahead of the pack in my MS skills.
- I was tired of having to relearn new APIs that were the same as last year's APIs, just renamed -- thanks to Joel Splosky for putting that so aptly.
- All the cool news regarding innovation in development was coming out of the Linux world, and that's still the case today.
- Among all my peers and myself, I was seeing Linux fill the server room and Microsoft IIS was diminishing.
- I saw the video where Bill Gates lied in court in the monopoly hearings.
- I surfed around with Java and JSP on Linux and was pulling my hair out until I learned PHP, instead.
- PHP got really cool in the middle of the PHP4 years and has gotten even cooler since then. Sure, the API is a little inconsistent here or there, but it works.
Therefore, ultimately I said enough is enough and quit Microsoft cold turkey. I switched over to LAMP. I reformatted my laptop with RH8 Linux at the time, and traveled through the Linuxes until I settled on Ubuntu about 4 years ago. Haven't left Ubuntu since.
So, anyway, the heck I have gone through these past few weeks with DotNet has been disturbing. I messed with:
- IIS and DotNet not talking to each other.
- Several undocumented things like the fact that all DotNet libraries after 2.0 do not show up in IIS and so you won't see 3.5 seeming like it's installed when it is.
- Crazy stuff with the web.config file.
- Crazy folder permissions you need to make stuff work.
- Getting a server registry so screwed up when trying things that you have no choice but to reformat and start all over again.
- Application pools having trouble.
- Learning that I need to install AJAX Extensions because of the errors I was having, even though it made no sense.
- Plesk control panel being both a blessing and a curse regarding one's IIS install. Sometimes it's better to start all over again in Plesk and recreate the domain there, then start fixing things about an old website after that. But if you check off the wrong thing in Plesk when creating that domain, your old site might not work.
All I can say is, I'm so happy that my world is now LAMP instead of DotNet. I mean really, what a bunch of crap this DotNet stuff is. Once you learn a few basics about how Linux and Apache works, LAMP is a piece of cake compared to DotNet. It's a miracle that DotNet sites are even accomplished without major delays. I would bet, hands down, that if a company wanted to send out RFPs to a LAMP and DotNet team, the LAMP team could deliver it cheaper, on time, and have less troubleshooting and more stability.