ColdFusion is the most important tool in my development toolbox; but it’s not the only tool. Developers are wise to embrace new technologies and not become too entrenched in one solution.
Back in the day, I was all in on the Commodore Amiga. In the late 80’s / early 90’s it was a beast of a machine. Imagine a 14 megahertz processor that could power full screen 600 x 400 animation at a full thirty frames a second, and without breaking the budget. I had two machines… an Amiga 500 and an Amiga 2000 that had a Video Toaster in it. (Seriously… click that link and watch the demo. It looks tacky and campy by today’s standards, but in 1992, that was the pinnacle.) The Amiga was amazing, and I was a zealot. Windows? Sucked. Macs? Too expensive. The Amiga was the way to go. Powerful. Inexpensive… clearly the best choice to get anything done quickly, efficiently, and professionally.
I may have been under 20 years old and a little opinionated on the way I saw the world. But I digress.
The Amiga had a problem. And it was its owners; Commodore. Their lack of marketing and understanding of how good of a product they had on their hands, along with supply line constraints caused the ecosystem to wither, and eventually, die. I held out and used my A2000 right up to the point Windows 95 came out. Then, the Windows operating system had (more or less) caught up to the point where sticking with the Amiga wasn’t feasible. And then I switched.
That was a humbling decision. The platform that I coveted and preached the benefits of was unsustainable and I had to let it go. I honestly believed that it was the superior technology; but it wasn’t meant to be.
When I first started with ColdFusion, it seemed like there was nothing it couldn’t do; and indeed, I relied on it for a lot of things. Many things I no longer would dream about having ColdFusion handle. I was heavy on Flash Forms back in the MX 6.1 and MX 7 days. I wouldn’t even consider something like that now. I don’t typically use <cfform> either, except when I encounter it in legacy code. There’s just different ways to handle those sort of interactions.
I’ve seen developers who tend to stagnate. My current contract position was started in 2000, and has been ever-evolving legacy code from developers who have not had the time, or taken the opportunity to expand the types, styles, and methods they use to build web pages. Each page is a silo. There’s no methodology. Queries are inline. It works… but it’s a very old way of programming. The lead developer still uses Dreamweaver CS 3 as their editor because… well, it supports the style of programming they learned in 2000 and never evolved from.
Today, I’m much less of a zealot. People have asked me, “are you a PC guy, or a Mac guy?” I respond, “I’m a computer guy.” The bottom line is that these devices we use are tools, and choosing one over another is largely a matter of preference. That being said, I personally prefer Macs but I don’t begrudge anyone their choices for the technology they prefer. Like Android over iOS? Great! It’s an excellent platform. Prefer Node over Vue? Awesome! Both have their advantages. Use the tools that work best for you.
The same goes for application and web development. ColdFusion is (and will likely continue to be) the most important tool in my toolbox. It just does so !@#$% much, so well, and so effortlessly. But at the same time, I try to advocate for whatever tools get the job done, as I stated before, quickly, efficiently, and professionally. Currently my toolbox tends to be heavy on ColdFusion, jQuery, Bootstrap, Node, and Angular. They’re the tools I need to get my task done… and they do a damn good job.
Until one of them becomes unsustainable, and I need to move on once again. Technology is organic; and I’ve learned over the years to grow with it. Failing to do so will earn me the fate of my beloved Amiga.