A few year’s ago I was doing a graduation project at Philips Medical Systems together with a fellow student. Our task was to implement a browser interface to design flowcharts for work instructions. The content would be stored using their custom CMS. Eventually, our solution was based around a grid where each cell would define it’s own layout and could validate itself according to it’s neighbours in the grid. The whole thing was JavaScript based and persistence was handled by posting a dynamically created form to a PHP script.
Although we never got to fully clean up the implementation, the thing did work pretty well and was (and still is) pretty advanced JavaScript technology. It had to run in some kind of weird “template” system designed by the “guys that came before me” and that was pretty nasty but eventually we got stuff to work around and with that too.
Now, a few years later I had almost completely lost my touch with JavaScript if it wasn’t for a particular web-based problem we couldn’t “ViewState” our way out of. The client wanted drill down lookups and my boss wanted a generic solution. Our current solution is very generic but requires the users to postback at least a dozen times to get to the required lookup result. Although it works it rates pretty bad on the usability scales so now I’ve re-implemented the whole thing using JavaScript instead of relying on post-backs and .NET controls do to their job…
And mama, mia! What the #$ck have I been doing lately? Sleeping? Why don’t I use JavaScript in my projects anymore like I used to do… JavaScript kicks ass! Now that I’ve been from QBasic to Pascal to Assembler, Visual Basic, Delphi, Java, VBScript (ASP), C, C++, PHP, Python, Visual Basic.NET, C#, Smalltalk, Ruby and Lisp I can say that there are quite a few languages I would like to work with at the end of that list but that’s not an option right now unfortunately. Luckely though there’s JavaScript which allows me to do some amazing things… Even if it has to be in a browser.