Future of Web Dev and the Perfect Skill Set
As Microsoft tries to patch up its mutt of a web browser, some questions remain about the Internet Explorer behemoth and what may come of other technologies raising the ante on what’s possible with the web. I’m fairly convinced that with time, IE will be dethroned, thanks to open source projects like Firefox and WebKit. With Google Chrome entering the foray with WebKit as its rendering engine, it’s only a matter of time before IE will get pushed aside by the developers out there. And the rise of the iPhone… like Cameron Moll has been saying, the future of web dev is in mobile devices. How might a shift in the internet market further push IE to the side?
I only focus on IE because it’s really the only thing I see as holding back the progress of web technology. Across the board, it’s inferior in terms of the technical aspects of making things possible. Its JavaScript processing is terrible, it’s XHTML isn’t up to speed (it’s best to stick with XHTML 1.0 Transitional… wha? “Transitional” means not permanent, yet IE seems content to encourage holding to outdated methods), and I don’t even want to start in on how it handles CSS. To me, IE is the bottleneck.
However, this fact doesn’t seem to be slowing down real innovators out there. We’ve seen a rise in frameworks-based solutions in the last couple of years, until at this moment, some incredibly useful options exist for almost every major programming platform. In many ways, the days of writing individual scripts and classes are over.
Where I’m most impressed with what folks have been creating for web developers is with Cappuccino and SproutCore. These two projects work to abstract the JavaScript/AJAX aspect of web applications. Cappuccino appears to do a better job of abstracting entirely any JavaScript, HTML, and CSS, so all you have to do is immerse yourself in Objective-J and you’ve got yourself a stylish web app. If you want to be wowed, just go and see 280 Slides: a fully web-based Keynote-esque application. The whole thing was done in Cappuccino and (I’m fairly sure) Rails.
With the advent of such robust JavaScript frameworks, the web browser has all of a sudden become a bridge rather than a browser. The early “web-based OS” projects, I initially thought, seemed redundant and a little excessive (why build a web-based OS if, to access it, another OS must necessarily be running?). And I still hold to that opinion, though I do believe Cappuccino and SproutCore are moving in the right direction. They serve more like web application and UI frameworks, much like Cocoa on MacOS. You still need to know your programming language (Objective-C, C++, Java, or Python), but how the language interacts with the UI gets abstracted wonderfully, saving time and improving the user experience at the same time.
So, I suppose my rant here is simply to encourage developers to learn these new technologies and to use them well. I, for one, am excited about open source taking over web development. It at least helps to move us beyond waiting for the big companies to get it right. And the limits of our skills get pushed out as well.
My idea of the perfect skill set for web devs? (Just for fun :)
- PHP 5 / Ruby 1.8
- MySQL 5
- CakePHP 1.2 / Rails 2.2
- Cappuccino / Objective-J
- jQuery 1.2.6
- XHTML 1.0 Strict
- CSS 3.0
- Unix
- Git
- An eye for good UI
Notice how much of these are open source?
Anno Domini on GitHub
Anno Domini has needed some work, now that CakePHP has progressed since the last release, which was quite awhile ago. Since then I wrote the book, graduated from college, got back into college, reviewed another book (“Practical CakePHP Projects”), built two seriously amazing private applications, worked far into a third, and by far the most complicated app of my illustrious :) career, moved twice, and wrote five detailed academic papers. Busy, and my excuse for not revisiting AD for some time.
But, I recently decided to get the code out there in a format where any other developers that might want to contribute could actually get access. I tried subversion on CakeForge and really just screwed things up (I’m not the most experienced chap at svn…). But I’ve been doing a bunch in git recently, and decided to give GitHub a try. I’ll just say I’m hooked. And since the Cake dev team put together The Chaw which appears to be using git, or at least a git-svn bridge, I have hopes that CakeForge may someday include git for its SCM.
Anyway, I encourage you to checkout AD GitHub and fork it, tinker with it, and contribute if you can. If you’re wanting to see some Cake code in action, for those newbies out there, this is a great app to get your feet wet in. I’m pretty sure the changes I’ve made in the last little bit will ensure AD is at least compatible with RC3, so it should install now, but I haven’t yet updated the installation guide (PDF) to reflect some structural changes in the app, you’ll just have to experiment with it if you aren’t already familiar with typical Cake install procedures.
Well, it’s late, and I’ve got more writing to do before Monday at 9 :) Anyone know a thing or to about Derridean deconstruction technique and religious studies? Ah, well, hopefully the weekend won’t be too destroyed.
Looking for Interested Folks
I’m working on a project that will launch next summer (2009) and have decided to bring others along for the ride. If you’re interested in participating with me in a tech consulting (esque) business endeavor, please fill out an application:
I’ll provide more details to interested persons via email.
Thanks for letting me make this shout out, and please forward it along if you think someone you know might be interested as well.
(I make the following very important disclosures in the event that some readers may be suspecting me of resorting to hype-ridden / manipulative / cheap business gimmicks :) )
- This is not a ponzi scheme, summer sales project, or pyramid/multi-level marketing ploy.
- The project is primarily web-based and will involve some level of web development.
- This is not an investment capital-seeking project, etc. It’s already got the funding it needs. But, heck, if anyone’s interested in putting some more cash into it, I’ve got no problem with that :)
- This is not a web gimmick with testimonials or “get rich quick”/”infomercial” type marketing tactics to gain returns.
- This IS a higher-level business-to-business consulting project.

