Skip to content

great web hosting with Dreamhost


Get MTW by Email

Enter your Email


Powered by FeedBlitz


  • Syndicate RSS 2.0
  • Syndicate with Atom

Creative Commons License

Blog Directory - Add Link

NoSpec!

Feedburner!

Performancing

Blog Directory

get camino browser

GeoURL


Old fart on rails

Way back in the stone age when I began my bachelor’s degree in computer science, computers were impressive things, taking up whole buildings though having less actual computing power than a modern cell phone. Yes, we powered the things by steam and entered data with stone tablets. It seems like it anyway. Punch cards were not much better. We also walked uphill five miles to class each way in the snow in our bare feet, too.

Where am I going with this? What happened was that I changed my major from CS to geology and pretty much forgot about computers for years. The whole process was just too much hard work.

20 years later when, armed with a Mac and happy with computers again, I decided to try my hand at programming once more, I looked at Perl. Perl is certainly different from the Fortran I worked with in the bad old days and without punch cards it was sort of fun to get into.

Perl makes it possible to create interactive web site and programs like shopping cart, but Perl wasn’t designed as a web specific language. Rather it was born as a compilation of Unix administration scripts. As such it is powerful. Unfortunately, as a web programming language it has a lot of baggage.

So from Perl was born PHP, which focused on only on internet specific functionality. Wanting things to be easier I simplified my life by moving from Perl to PHP.

PHP makes it very straightforward to do simple things on the web. But it quickly becomes very complicated to create a more complex application. The progression is more than linear, too. As complexity grows, web apps sprout frighteningly many directories and includes. Not appealing.

Of course, I made the obligatory personal blog and shopping cart applications with PHP/MySQL then pretty much quit bothering. There were smarter people than I and certainly better programmers who were building quality products that I could simply use. This blog is built with Wordress and is so much better than I could have created that it would have been silly to try to roll my own.

And since PHP grew semi-randomly from a base of Perl, which also grew semi-randomly, it is a messy and complicated language, composed of tacked on pieces and parts that was never a joy to use.

Skip ahead a few years and we find that others, much smarter than I, have had the same experiences and done something about it. One in particular, David Heinemeier Hansson, created a set of new web programming protocols called Ruby on Rails.

Ruby on Rails, or RoR or simply Rails was built from the Ruby programming language. Ruby has the advantage over Perl or PHP of being created from scratch as a whole and not duck taped together from bits an pieces. As such it is both easier to learn and more streamlined. I find this highly appealing. As I get older I’m getting both a little slower in my learning ability and a lot less willing to spend the effort to learn something complicated. Yeah, yeah, all programming is complicated but there are degrees.

But what really makes Rails appealing is that its creator, DHH, has a Steve Jobsian like vision of making things elegant (DHH uses the term beautiful), easy to use, and productive. In short it makes the idea of programming fun again the way that my first Mac made computing fun again. Moving from PHP to Rails feels very much like moving from the oppressive world of DOS to the pleasingly sane world of the Mac OS.

The idea is simple, follow Rails conventions and most of the work is taken care of. Things just work - the way a Mac just works. Of course, there is still a learning curve, but it’s one that seems reasonable to an aging HTML jockey.

I have a couple of web applications that I’ve been thinking of making. Before it just seemed like too much work, especially since they are specialized and would appeal to a small audience. It just wasn’t worth the effort to write a program for myself. Obviously, I’m not a programmer at heart. There is no joy of creating applications to scratch an itch. Programming is a tool that requires a lot of skill and time to master and to keep current with. Rails just may make the effort required to create personal applications small enough to be worth my time. It’s certainly interesting enough on its own for me to give it a serious learning effort.


Possibly related:

Leave a Comment

You must be logged in to post a comment.

Trackback this post  |  Subscribe to the comments via RSS Feed