Using Vue CLI 3 with a Coldbox Application

The Vue CLI is a great tool for developing Vue.js applications but I wanted to see how it could be integrated into an application with a CFML/Coldbox back-end. »
Coldbox, CFML, and Vue.js

OWASP TOP 10 2017 A2-Broken Authentication: Password Guidance

One of the recommendations I mention in OWASP TOP 10 2017 A2-Broken Authentication: Password Requirements is to provide guidance to your users when creating passwords. Here I attempt to explore some ways of implementing feedback to users on the strength of their passwords. »
Security, OWASP, and Vue.js

Implementing a Password Blacklist in CFML

the new guidelines for password requirements say to drop all the complexity rules and to create a blacklist of weak, common, and compromised passwords that cannot be used when a user creates a new account. Here is a quick example of one way this could be implemented in CFML. »
Security, CFML, and OWASP

OWASP TOP 10 2017 A2-Broken Authentication: Password Requirements

Continuing the series on the OWASP Top 10 now we look at the #2 OWASP vulnerability which is Broken Authentication »
Security and OWASP

Secure CFML: OWASP TOP 10 2017 A1-Injection

In this post, I will focus on the #1 OWASP vulnerability which is Injection and how to prevent it in CFML applications. »
Security, CFML, and OWASP

Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations

The book Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations by Nicole Forsgren Ph.D., Jez Humble, and Gene Kim warn that organizations should be learning continuous delivery so they do not fall behind in a world where IT is critical to remain competitive in any industry. »
DevOps, Books, and Development

Linting Your CFML code with CFLint and Sublime Text Build Systems

Here is an easy way to run CFLint on files from within ST2 or ST3 using build systems. »
CFML, CFLint, and Sublime Text

Example of Using a CommandBox Task Runner to Run CFLint

I created this gist that is a CommandBox Task Runner that takes a glob pattern and runs CFLint on any files that match. »
CFML and CFLint

Refactoring Legacy CFML with Approval Tests: Part II

In part I of this blog series we walked through using TestBox-Snapshots to create some approval tests for refactoring a legacy CFML application. In this post, we will focus on setting our application up to use the ColdBox MVC framework. Once it is setup we can start using the MVC pattern to separate concerns. We start by installing ColdBox.

»
CFML, Testbox, Legacy Code, and Refactoring

Refactoring Legacy CFML with Approval Tests: Part I

In my previous post, I discussed the importance of refactoring and a general workflow for using Approval Tests to be sure your output is not changing.

»
CFML, Testbox, Legacy Code, and Refactoring

Refactoring Legacy Code with Approval Tests

Legacycode.rocks is a great resource for anyone working with legacy code. Aside from a ton of useful information, it is also motivational because they really try to take away the stigma of working with legacy code and frame it as something to really be proud of. If you work with legacy code, you know it can be frustrating and difficult however it can also be very satisfying to figure out how a piece of code works and be able to improve it.

»
CFML, Testbox, Legacy Code, and Refactoring

Playing Around with CFML and Docker: First Steps

Watching the keynote talks from this year’s Into the Box Conference gave me some inspiration to start learning more about running CFML applications in Docker. I currently run a Jekyll Docker image to develop this blog but I am still very much a newbie.

»
CFML and CommandBox

Mura 7 Development with CommandBox

This is a script I wrote to quickly setup a new Mura 7 development server in CommandBox. It runs on Lucee with an embedded H2 database. It uses the new cfconfig module to setup the datasource.

»
CFML, Mura, and CommandBox

Working with File Streams in CFML/Java

In my previous blog posts I talked about working with streams in Node.js. I assumed I could do something similar working in CFML by using Java but had never attempted it. At my company we process many different data feeds in various formats. So we sometimes need to read and write some large data files. This can be a very memory intensive task with large data sets. So using streams is usually a more efficient solution.

»
CFML, Java, and Streams

Return Multiple Record Sets from a Query in Coldfusion

In Adobe Coldfusion you can only return one record set from using cfquery or queryExecute. If you need to return multiple record sets then you can write a stored procedure and use cfstoredproc.

»
CFML, MS SQL Server, and Coldfusion