Apart from eating too much chocolate, this Easter has given me a chance to do some non-work programming.
I’ve gone through some of the internal gubbins of Haddock CMS and worked on the classes that can be used to generate SQL statements. They need a bit more testing but they should make DB code a lot tidier.
I’ve also been playing around with Visual Studion C# Express Edition in order to get back up to scratch with C# for Coelacanth:
http://code.google.com/p/coelacanth/
I’m very impressed with the IDE and have thought for a long time that C# is a great language. In fact, I think that I like it more than any other language that I’ve used (Java, C, C++, Perl, PHP, Python, Ruby, JS, Prolog, POP-11, Star Basic, VBA, Bash and Script-Fu being the others). This is a bit of a problem for me as I have lots of compelling reasons not to give up PHP to use ASP.NET with C#.
An enormous investment of time in existing code being the main one. Having said that, this weekend’s coding with Haddock has reminded me of the limitations of PHP for object oriented programming. I’ve always liked statically and strongly typed languages and PHP’s looseness makes me worry a lot. When you spend an afternoon tracking bugs that would be caught by the compiler of a stricter language, the idea the flexibility in your language saves programmer time looks like a childish myth. Don’t get me wrong, there are cool OOP tricks that you can do with PHP, Perl, Python, Ruby and JS that aren’t possible with stricter languages. Perhaps this easy compilation phase is a good thing as it makes me test the running code more thoroughly.
Also, try comparing the offerings for PHP hosting with those for ASP.NET. You get a lot more bang for your buck in the LAMP world. If one provider doesn’t live up to your expectations, you can dump them pretty easily and go on to the next one. Although Lunar pages seem to have quite a good deal:
http://www.lunarpages.com/windows-hosting/
For a dedicated machine or a VPS, there’s really no comarison. Linux is miles ahead. Perhaps I should give mod_mono a go. Microsoft are getting into the Virtualization game in a big way. Are they going to go after the likes of Linode ($20 pm for a Linux VPS and 10 GB of disk space)? Hopefully they’ll launch a dumping campaign and start selling a version of Windows Server to be run as a guest OS at a studidly low price.
I guess that I’ll probably get to find C#’s wrinkles as I write Coelacanth. I’m not likely to stop working with PHP any time soon and I’m certainly not going to rewrite any of my existing sites. But playing with rival languages is very instructive.