# 5 ColdFusion Resources for your Everyday Life

Here's a short list of ColdFusion resources I've either found handy or use almost daily in my career. These'll go in reverse order, where #5 will be the one that I use most frequently.


## 1 - Lucee 
There's a few ways to go about diving into ColdFusion, all starting with the development environment you choose to go with. [Adobe](https://www.adobe.com/products/coldfusion-family.html) is great, but expensive once you start looking at the licensing. [BlueDragon](https://www.newatlanta.com/products/bluedragon/index.cfm) is what we use at my job, since we also work closely with .NET Code, but that's a story for another day. If you're wanting to get your feet wet, [Lucee](https://www.lucee.org/) is the free and open source CFML Engine for you. With a massive community, frequent updates, and great documentation, I can't recommend this engine enough for either getting started or being the backbone of your production applications.

## 2 - Learn CF In a Week 
[Learn CF in a Week](http://www.learncfinaweek.com/course/index) was an absolute godsend when I first got hired onto my job and I need to reteach myself ColdFusion after not having touched it for several years. From the very basics such as the syntax of the language to a detailed overview of keeping your applications safe from XSS and SQL injection, [David Epler](https://www.twitter.com/dcepler) and [Pete Freitag](https://www.twitter.com/pfreitag) have authored a fantastic guide if you're looking to get into CFML or need a refresher on any concept.

## 3 - Ortus Solutions
[Ortus Solutions](https://www.ortussolutions.com/products) has an entire catalog of ColdFusion products that fill several roles for development. [CommandBox](https://www.ortussolutions.com/products/commandbox) is the biggest one of note, allowing you to very easily spin up your own development instances, have a command line REPL for quickly testing out code, and a package manager. [TestBox](https://www.ortussolutions.com/products/testbox) is available for those of you bitten by the unit testing bug.  [ForgeBox](https://www.ortussolutions.com/products/forgebox) is the aforementioned package management system, serving as CFML version of NuGet or NPM. 

## 4 - CFLint
Who doesn't love linters? [CFLint](https://github.com/cflint/CFLint) is an open source, java powered linter for ColdFusion, allowing you to enforce style guidelines on your CFML codebases. I personally use this in conjunction with the [VS Code CFLint Extension](https://marketplace.visualstudio.com/items?itemName=KamasamaK.vscode-cflint) and the [VS Code CFML Language Extension](https://marketplace.visualstudio.com/items?itemName=KamasamaK.vscode-cfml) to serve as a very powerful and almost IDE-like experience when at work.

## 5 - CFDocs
[CFDocs](https://cfdocs.org/) is an open-sourced documentation website for ColdFusion, that is the best of all worlds of this language's ecosystem. Every tag and function is thoroughly documented, and provides outbound links to the various engines (Adobe, Lucee, and BlueDragon/OpenBD). There are also various guides on concepts such as authentication, security, using the ORM features provided by the language. If you ever find items on the site you think could be described better or even corrected, [contributions are gladly accepted](https://cfdocs.org/how-to-contribute). My favourite part about the site though is how cleverly the URL pattern was set up, such that you can go directly to https://cfdocs.org/<tag/function-name> and get exactly what you want. Not a day goes by that I don't visit this site to either familiarize myself on a tag's attributes, or look through a list of functions to see if there's one that already exists that suits my needs. 

