Many people have sent me emails to feedback[at]codespaces.com asking about code spaces, these email range from “When is it going to be ready?” to “What web technologies are you using?” (or words to that effect).
Well the BETA release is still planned for the end of JULY and I will certainly keep you posted on that, but for this post I would like to concentrate on the technologies I have used and the decisions I have made along the way.
A long time ago, in a galaxy far far away
About 6 months ago I decided to build CodeSpaces, back then I was going to roll my own brand new version control, and integrate it with a best of breed project management system.
My technologies of choice were Microsoft Windows 2003, C#, asp.net, MS SQL Server and IIS. Now, at the time these choices made a lot of sense because I’m a pretty good C# developer with tons of experience of writing solid applications, and I already have a business doing just that.
About 6 weeks later I had a basic version control system in place and some project management functionality, however something wasn’t right!
I wasn’t enjoying the process of building this application at all, and considering this was my vision, my idea of developer heaven I knew I was in trouble.
Imagine, if I’m not enthusiastic about the development, what will happen when I have to test, do marketing or fix bugs? (doomed I tell you!)
Well, fortunately the gods conspired to bring about three events that changed my life (as a software developer) forever.
1. Mac OSX
For my other project I had purchased a series of Apple Mac’s (ibook, mac mini – 1x ppc, 1x Intel ) to test the client side Java functionality in my product, and over time i had, (almost accidently) become obsessed with using a Mac for every possible task (do you need to ask why?), to the point that my desktop PC is now a MAC PRO and all my windows development is done via a windows virtual machine.
2. Subversion
A colleague re-introduced me to Subversion which i was (of course) aware of and in fact had attempted to install about a year earlier, but like most Microsoft developers in the hands of an open source project that doesn’t have a GUI to install and configure I failed and vowed never to try again.
Well this time round I had much more success, low and behold I can use a command prompt!
Within minutes (and I mean minutes) I was hooked, no more Visual Source Safe for me
3. Ruby On Rails
Imagine the look on a child’s face when she first recites the 7x table, well I’m sure that was the look on my face when I first saw Ruby On Rails, if i had previously been impressed by Subversion, this was an absolute BOMB SHELL, ROR is truly a magical framework built on top of the most elegant language, that shakespeare himself would have enjoyed using.
With these three things firmly planted into my every thought, I realized that one or two tough decisions had to be made and pretty much from that day onwards I have not written a single line of c# code. I scrapped my codespaces implementation and started again using ruby on rails, only this time I didn’t need to write a brand new version control system as I could simply use Subversion which is already a million times better than anything I could have written, and to top it all off I can develop on my MAC
Well if we wiz forward to today, I have new found thirst for developing software and the main fruit of that is about to blossom in the form of CodeSpaces A Ruby On Rails application using Subversion for Source control, MySQL for the database and not a sight or sound of Microsoft software
This transition I have made is one of the best decisions of my working life, and although it may sound like I have trivialized it somewhat in this post, it has actually been a very easy and rewarding experience.
Should you wish to make the same transition as I (and others) have, please “Just do it!” and feel free to send me a question or two, to floyd[at]codespaces.com
Don’t go too far, I will be posting a Code Spaces preview real soon!!!