Using CommandBox as my every day dev server is awesome. I know the pain developers feel, trying to run multiple versions of their server software locally. I have even presented at conferences about how to get your host machine setup to run Railo, Lucee, and ACF 9 through ACF 11 on the same machine, with a lot of headaches, but you can do it. There is a demand for that, and to be honest, CommandBox put me out of a job. Although, as great as CommandBox is, for running multiple servers, a couple of things were not that easy, a couple of things the lightweight built in webserver didn't do as well, mainly REWRITES... until now.
Several years ago, my company and I spent time reevaluating the ColdFusion community, searching for a framework with great tooling, lots of documentation, training and professional support. We found that with Ortus Solutions and ColdBox. After a bootcamp, I started contributing however I could, a little code, some documentation, online presentations, conference sessions. At first, diving into Open Source was scary, but when you dip your toes to test the water, you realize its warm, like our ColdFusion community, and Ortus is no different. Over time I have done more and more with Ortus's many open source projects, but that is nothing in comparison to what everyone else has done.
Recently, Ortus Solutions, with their many projects, passed a milestone.
I have officially been on the Ortus Solutions team for a year now, and a big part of my work has been focusing on ContentBox 3. I am happy to say all the hard work has paid off, and we have released the final version of ContentBox Module CMS 3. We have closed over 130 issues, its been 1.5 years in the making, its a major change in so many ways, developers are saying "the latest ContentBox has revived my enthusiasm for cf".
As a long term users of ColdFusion and CMS's... I am proud to say that ContentBox is a solid complete solution, with all of the customization you need, with all the help you need to be productive. All my development work starts with a ContentBox site, pick a theme, customize, build new modules and go.
I'm proud of our hard work, find out more below.
I have been thinking about submitting a session or two for dev.Objective(), especially fueled by yesterday’s CFML Panel at CF Summit. I decided we need to be more vocal, so I wanted to write an outline for a session to submit to dev.Objective(). The more I thought about it, and discussed with people in the hallways, I came to the conclusion to make it more than a normal track session, but maybe a keynote, or a general session… so there are no other sessions competing with it… because I think it’s something EVERYONE should think about.
Please note, I am not saying that I am the one that should be leading the charge, giving the talks, or calling the shots, but I have an idea, I have a lot of ideas, some good, most bad, but sometimes putting an idea out there, can let it snowball and evolve into something good, and that’s what I am doing here. I encourage you to speak out, respond in comments, and let’s start a conversation.
For those of you who missed Adobe at dev.Objective()... don't worry, Adobe is going to be all over the map now... as they are starting the Pre-Release program for ColdFusion 12. They opened a survey so if you want to get in on the Pre Release Program, you can do so today.
Recently we finally migrated some big legacy websites off of some ColdFusion 8 servers. Yes, 8, we were still running one last server, and to be honest the only things running on it were BIG higher traffic websites, that we had not got the time to migrate. We have been migrating from Windows to Linux, and CF8 to CF9 and Railo / Lucee. Baby steps, but with our legacy code not having test coverage, it became a long painful process. You would think moving from ColdFusion 8 to 9 is a breeze, and for the most part it is, but I ran into a strange issue, which I am sharing today.
I have been playing with Ortus Solution's amazing new tool CommandBox a lot lately. After a couple of posts on my blog, Brad Wood from Ortus Solutions reached out to me and asked if I would be interested in sharing what I have been doing with the community. A lot of time and money was invested by Ortus Solutions to make this product, and every knows ColdFusion / CFML in general needed something like this for a long time now, so of course I accepted their offer. I have already posted a couple of blog posts on the Ortus blog, and today we recorded an episode of the CommandBox Roadshow, with yours truly in charge of the Adobe Connect session.
As promised in my last few posts, I am finally going to give you a couple of Tomcat tips and tricks, that can seriously speed up your Tomcat startup time. In all fairness, they are simple configurations, and I am not the first to find them, not even the first CFMLer to find them. This is how I got my Tomcat startup from 164 seconds, down to 8 seconds, a gain of 156 seconds, in 1 line of code.
I have been talking a lot lately about different configuration options, since Lucee is the hot new thing since ‘POCKETS’. Everyone has been asking about best ways to work with Tomcat, versus other servlet containers, and so I have been playing… and have released a few posts on the matter. Every time I post anything on Tomcat, I always get asked about MOD_CFML, so I thought it was about time I wrote a post on what I knew about it, as always, I am not the expert, I am just sharing some of my knowledge, hopefully others will share too, and we can all learn.
On the Lucee Google group the other day, someone mentioned a way to connect Nginx to Tomcat, so you do not need to bother adding the XML Host for every new website you want to run on Lucee (or Railo). This has always been a pain point for switching from Adobe ColdFusion, to Railo or now Lucee, dealing with a Virtual Host for Apache in httpd.conf, and a XML Host in server.xml and making sure they match, and editing requires a restart. Adobe’s ColdFusion runs on a hacked Tomcat, that they specially tuned to work like jrun used to, but a lot of people don’t like being stuck on their upgrade path too. I decided to look at this Nginx approach, and get it running in Apache, and see what downsides I could find.