Rapid Web Development with the prototype library

While I work on tweaking the design of the site, I though I’d just write a quick opinion piece. I’ve been experimenting with a variety of libraries lately to see what’s out there on the web. One bit of internet goodness I’ve been using a lot is Prototype, the JavaScript library made popular by Ruby on Rails and the AJAX boom several months ago. Prototype touts itself as:

a JavaScript framework that aims to ease development of dynamic web applications. Featuring a unique, easy-to-use toolkit for class-driven development and the nicest Ajax library around, Prototype is quickly becoming the codebase of choice for web application developers everywhere

But AJAX is far from the only thing that Prototype has going for it. It also provides a list of useful functions, the simplest (and my favorite) being the $() function to replace the document.getEementById() function - my keyboard is much happier! The downside is in the documentation. The doumentation is very lacking, almost non-existant, which is very annoying, but there are sites such as script.aculo.us that are picking up the slack and providing some informed documentation. A quick google search will also reveal a lot of working examples you can learn from as well.

Aside from what it has to offer, I was impressed by it’s ease of use and simplicity while working on a recent idea. At work, we were starting to use paper and pens to track the time we were spending on each project. As a growing company, we need to know this information so that we can better adjust our quotes and estimates, but the time spent writing and tracking the information became tedious after only one week. thinking about it on my commute home from work one day I had a better idea. Enter Prototype and a JavaScript app.

Starting from a quick sketch, I was able to create a working app using an XHTML/Prototype user interface and PHP server side base, in less than an hour. It relied on 100% AJAX communication but it was for my personal use anyways so it didn’t matter. Quick, fast, simple, clean code and anything else I could ask for. Now tracking time is as simple as typing in a task and hitting go. No more fumbling with paper and pens. <div style="text-align:center">Time Tracker</div> If you haven’t tried prototype yet I highly suggest you do. You’ll be up and running in minutes!