Skip to main content

Java is dead, but you'll learn to love it - Chas Emerick - Muck and Brass

The upshot of all this is that it's more likely than not that over the course of the coming years, your life (and quite likely your professional life as well, if you're involved in software) will come to rely upon Java, the JVM behind it, and many different other language stacks built on one or both of those technologies.

Another argument that Java the language is dead, but Java the platform is as vital as ever. Where CFML is concerned I personally find the lack of true understanding (and in some cases even awareness) of the JVM as the platform on which CFML runs (or the .NET platform in the case of BlueDragon .NET) to be problematic. So many CFML problems become so much more understandable and solvable when we think of CFML engines as what they really are: Java web applications. Things like tuning your JVM settings are seen as a black art in the CFML world and they shouldn't be: that's stuff that may be vital to the success of your application. If you continue to ignore it you're doing yourself and your users a huge disservice.

If you're a CFML developer and you still haven't even experimented with running your CFML engine as a WAR on a standard Java servlet container, I strongly encourage you to do so. It'll open your eyes and you'll learn a lot in the process.


Jason Haritou said…
I think one of the many benefits of using Railo/BD over Adobe CF is that there isn't a click-click-click-done installer.You have to interact (or at least be aware of) the JVM for installation of the CF engine. Even if you would never install Railo/BD for production purposes, I would highly recommend you install them simply for a learning experience.
Matthew Woodward said…
Actually there now is a click-click-click-done installer for OpenBD on Linux and Windows. ;-)But I do agree that if you have to get your hands a bit dirty (and it really is just a bit dirty) configuring things by hand, even for educational purposes (as you point out) it's WELL worth the effort.

Popular posts from this blog

Installing and Configuring NextPVR as a Replacement for Windows Media Center

If you follow me on Google+ you'll know I had a recent rant about Windows Media Center, which after running fine for about a year suddenly decided as of January 29 it was done downloading the program guide and by extension was therefore done recording any TV shows.

I'll spare you more ranting and simply say that none of the suggestions I got (which I appreciate!) worked, and rather than spending more time figuring out why, I decided to try something different.

NextPVR is an awesome free (as in beer, not as in freedom unfortunately ...) PVR application for Windows that with a little bit of tweaking handily replaced Windows Media Center. It can even download guide data, which is apparently something WMC no longer feels like doing.

Background I wound up going down this road in a rather circuitous way. My initial goal for the weekend project was to get Raspbmc running on one of my Raspberry Pis. The latest version of XBMC has PVR functionality so I was anxious to try that out as a …

Setting Up Django On a Raspberry Pi

This past weekend I finally got a chance to set up one of my two Raspberry Pis to use as a Django server so I thought I'd share the steps I went through both to save someone else attempting to do this some time as well as get any feedback in case there are different/better ways to do any of this.

I'm running this from my house (URL forthcoming once I get the real Django app finalized and put on the Raspberry Pi) using I don't cover that aspect of things in this post but I'm happy to write that up as well if people are interested.

General Comments and Assumptions

Using latest Raspbian “wheezy” distro as of 1/19/2013 (’lll be using Nginx ( as the web server/proxy and Gunicorn ( as the WSGI serverI used heavily as I was creating this, so many thanks to the author of that tutorial. If you’re looking for more details on …

The Definitive Guide to CouchDB Authentication and Security

With a bold title like that I suppose I should clarify a bit. I finally got frustrated enough with all the disparate and seemingly incomplete information on this topic to want to gather everything I know about this topic into a single place, both so I have it for my own reference but also in the hopes that it will help others.Since CouchDB is just an HTTP resource and can be secured at that level along the same lines as you'd secure any HTTP resource, I should also point out that I will not be covering things like putting a proxy in front of CouchDB, using SSL with CouchDB, or anything along those lines. This post is strictly limited to how authentication and security work within CouchDB itself.CouchDB security is powerful and granular but frankly it's also a bit quirky and counterintuitive. What I'm outlining here is my understanding of all of this after taking several runs at it, reading everything I could find on the Internet (yes, the whole Internet!), and a great deal…