Development Decisions Du Jour
Besides following both politics and the current state of the economy, I’ve been continuing on my mission to determine which tools I plan to settle on for beginning my foray into “lone, mercenary web-app coding.” It’s been a long and convoluted expedition and many languages and web frameworks were auditioned, some more in-depth than others, and certainly some got my mind at better times than others this year. For better or for worse, I’ve settled certainly and somewhat finally, and I’m going to be focusing on Ruby, Erlang, and ActionScript. Without a doubt, haXe/neko is extremely slick, as is Twisted, which I looked at some time back – however at this time, I’m better served by focusing my attention on a limited selection of languages and going a lot deeper with each. There are other major changes on the horizon as well, for instance, I’m coding on OS X now as well as on Vista x64, and I’m probably retiring my Beast-like PC to the role of headless, VNC-able NAS and beginning to develop primarily on an iMac. I’m resentful and can barely talk about it without it becoming rant-like, but I can no longer struggle to translate all of the existing learning materials and conversations I’m having with others into Windows-speak, and to then learn at the rate necessary to keep up with the web development industry. I have wasted 3-4 months worth of effort this past year struggling to fight to develop in Erlang and Ruby on Windows and in VM’s, and I’m sure the 24″ iMac screen will make me happy, regardless.
With the trending towards distributed computing, cloud services, and higher SMP processors, it would be unfathomable to not spend a significant portion of my energy furthering my Erlang competency. I myself find Erlang to be some kind of beautiful, although I confess, it wasn’t immediately apparent coming from Ruby. There are some very interesting, Erlang-based projects that I’m waiting to explore, including Mochiweb, Webmachine, Dissident, Zend on Yaws, and Nitro. I’ve been very pleased with the performance and reliability of Yaws on my slices, although this shouldn’t be suprising people anymore and Erlang is all the rage at present. Erlang will not get passed over by me, but it really can’t be my everything either.
Conversely, Ruby will probably end up being my most-everything, and even I’m a little surprised it ended up this way. If you asked me to guess which language would have that slot, I’d have thought it to be Python most of this past year. I’m not sure if I’m making the “right” decision, nonetheless, it is my decision for the foreseeable future. I’ve been consistently hard on Rails, and I’m still far from confident that it will be my Ruby framework. In fact, I’m almost certain Merb or another Rack-based framework will take that spot. Since I plan to be the sole coder on much of what I will be working on, maintaining a loose coupling between various technologies will be important since I’ll be maintaining my codebase forever and ever.
ActionScript is my most recent flame, and I’ve fallen deeply for coding to the flashplayer. This just isn’t going to change and I’m pretty positive of this. I absolutely love the tools from the perspective of design, and it’s a great way to both minimize the impact of browser incompatibilities and at once offers a low cost-of-entry means to build networked desktop applications in the form of Air. I’m unsure what percentages of time will be spent in Flash IDE vs Flex Builder vs OS/SDK coding right now, but I’m sure it’ll work itself out as I work on projects in the short term. I learned a lot tinkering w/ Proce55ing over the past year, things which are helping me pick up ActionScript quicker than any other languages I’ve tested to date. There is a heavy tendency for people to code with Flex Builder from what I’ve seen so far, but I’m not sure that I will be in that crowd as I can’t say that I like Eclipse in any context. I was constrained to using Flash Develop 2 while I was exploring coding to the flashplayer via haXe, but I’ll have to give version 3 a shot before I settle on doing everything manually. Regardless, I’ll take a little while and learn to work w/ the SDK and learn how to use ANT to build projects, as it seems a worthwhile learning experiment whether I keep that workflow or not. It’s always good to peek behind the curtain, at least that’s my opinion thus far.
Finally, the cloud certainly calleth. I haven’t done much beyond read at length and hack on some CouchDB so far, but I’m about to crack open this O’Reilly book I’ve been sitting on and get dirty with some Amazon Web Services. I’ve got some great blog posts printed out regarded Puppet, Panda, and some instance images that I can use to get up and running quickly and I’m really looking forward to spending some much needed time with my head in the clouds.
grantmichaels

I’m a 43 year old career switcher starting my post Bacc in Computer Science. I found this posting useful. I am amazed at the thought of programming for parallel cores. I am still just writing nested loops. I can’t imagine I will ever get to the level I am reading here in this post. I sure do like discovering that computer books are well written and fairly interesting and even, sometimes, humorous. Anyway, thanks for your thoughts on Erlang.
twodishes
October 28, 2008 at 1:08 am