Modernize or Die® - CFML News for June 1st, 2021 - Episode 106
Eric and Gavin host this weeks episode. They talk about the final release candidate for Lucee 5.3.8. They talked about Adobe Dev Week's website does not have sessions listed yet, but Adobe is leaking some teasers on twitter. They talk about the next Online CF Meetup with Brad talking about getting started with Fusion Reactor. They announce Ortus' Webinar for June, Eric Peterson talking about Building a Blog in 30 Minutes with Quick. They remind you about TestBox v4.3.0 release last week, and remind you to take the State of the CF Union Survey and tell your friends about it. They discuss the latest CFCasts content, and some upcoming conferences. They mention a special survey about the upcoming Into the Box conference, trying to gauge whether people are willing to travel for an in person conference or not. They spotlight a lot of great blog posts, tweets, videos and podcasts, too many to list, so listen to the show. They announce some jobs from getCfmlJobs.com. They show off the ForgeBox module of the Week, qb v8.5 (query builder ) by Eric Peterson - a fluent query builder for CFML. It is heavily inspired by Eloquent from Laravel. Quickly scaffold simple queries - Make complex, out-of-order queries possible - Abstract away differences between database engines. This week's VS Code Tip of the week is Highlight Bad Chars by Kevin Wenger - Extension to highlight bad characters such as No-break space ( ) and the Greek question mark (;) in your source files. They thanked all their Patreons, but also talked a little information about perks for their Patreon supporters. For the show notes - visit the website https://cfmlnews.modernizeordie.io/episodes/modernize-or-die-cfml-news-for-june-1st-2021-episode-106 Music from this podcast used under Royalty Free license from SoundDotCom https://www.soundotcom.com/ and BlueTreeAudio https://bluetreeaudio.com
Watch the video version on YouTube at https://youtu.be/jmA7-rHjomk
Gavin Pickin - Software Consultant for Ortus Solutions
Eric Peterson - Software Consultant for Ortus Solutions
Thanks to our Sponsor - Ortus Solutions
The makers of ColdBox, CommandBox, ForgeBox, TestBox and almost every other Box out there.
A few ways to say thanks back to Ortus Solutions:
- Like and subscribe to our videos on youtube.
- Sign up for a free or paid account on CFCasts, which is releasing new content every week
- Buy Ortus’s new Book - 102 ColdBox HMVC Quick Tips and Tricks on GumRoad (http://gum.co/coldbox-tips)
We have 36 patreons providing 84% of the funding for our Modernize or Die Podcasts via our Patreon site: https://www.patreon.com/ortussolutions. If you love our podcasts and all we do for the #coldfusion #cfml community considers chipping in, we are almost there!
News and Events
Lucee 22.214.171.124-RC4 (Final Release Candidate) Released
This will be the Final RC before STABLE, available via your admin or via https://download.lucee.org/
There are some improvements for MS SQL users since RC3. There is currently a problem with MS SQL extensions not being available for download, including 7.22, apologies, this will be fixed tomorrow.
Adobe leaking Dev Week Sessions on Twitter
Adobe has not added sessions to the Dev Week site yet, but Adobe is tweeting promos with the Session Name, Speaker, date and time on Twitter.
Online CF Meetup - Getting Started with FusionReactor, with Brad Wood
Thursday Jun 3rd at 12pm US Eastern Time, UTC-4.
New to FusionReactor? Perhaps you have a license but aren't sure how to tap into the features? We'll cover the basics of using FR to profile code, view your running and recent requests, and how to tell what is making a request slow. We'll cover tracking JDBC requests, HTTPS calls, and using the Profiler feature. There are many more features in FR, but we'll cover enough to get you started.
Ortus Webinar for June - Eric Peterson - Topic - Build a Blog in 30 minutes with Quick
Webinars Page: https://www.ortussolutions.com/events/webinars
Registration: coming soon
ICYMI TestBox v4.3 Released!
We are excited to announce a new minor version release of TestBox version 4.3.x. To install just use CommandBox: install testbox --saveDev or to update your TestBox installation update testbox.
This update includes several cool new features and improvements that will delight your testing life! For example, we have integrated your favorite code editors to the simple reporter so you can now open the line of code that failed your test or created and exception!
Reminder - State of the CF Union Survey
Help us find out the state of the CF Union – what versions of CFML Engine do people use, what frameworks, tools etc. We will share the summary results with everyone who completes the survey so that you can see how you compare with other CF developers.
Spread the news so we can get as many responses as possible.
CFCasts Content Updates
New features alert🚨: Now you can see when our OOP videos will be dropping! Also, this series will have closed captions 🙌
- Object-Oriented Programming with Nolan Erck (https://cfcasts.com/series/oop-series)
- Public vs Private Between Components
- What is Multiple Inheritance
- Using Super()
- Don't forget - the first 4 videos in this series are FREE
- Using DocBox (https://www.cfcasts.com/series/using-docbox)
- Intro: Using DocBox (Free)
Coming this week
- Object-Oriented Programming with Nolan Erck (https://cfcasts.com/series/oop-series)
- Abstract Classes
- Basic example of composition
- Changing Objects at Runtime
- More What’s new with ColdBox 6
- More What’s new in qb 8
- Up and Running with Quick
- LogBox 101
Send your suggestions at https://cfcasts.com/support
Conferences and Training
Adobe ColdFusion Developers Week
June 22-24, 2021 - Online
Coders, mark your calendars for Adobe ColdFusion Developer Week 2021!
Coders, Adobe ColdFusion Developer Week 2021 is edging closer! This year, we’ve lined up a series of sessions and webinars that will give you a 360-degree view of ColdFusion 2021’s brand new features and updates. Right from developing cloud-native applications to reducing downtime, these webinars will let you in on the best tips to deploy applications rapidly and seamlessly.
This is your chance to meet coders from across the globe and exchange ideas with some of the best minds in the industry. And that’s not all! Your presence at the conference will earn you points that can help you win exciting prizes and vouchers. Our scoreboard will keep track of active participation!
Whether you’re a new developer, someone with little or no experience with Adobe ColdFusion, or even if you have been using it all your life, Adobe ColdFusion Developers Week 2021 is where you need to be. Don’t miss out!
ICYMI - MS Build - last week
Learn. Connect. Code.
Explore what’s next in tech and the future of hybrid work. Find solutions, sharpen skills, and find what you can add to your toolbox at this year’s event.
ICYMI - DockerCon - last week
May 27th 2021
DockerCon 2021 is a free, one-day virtual event that is a unique experience for developers and development teams who are building the next generation of modern applications. If you want to learn about how to go from code to cloud fast and how to solve your development challenges, DockerCon 2021 offers engaging live content to help you build, share and run your applications.
Apple WWDC21 - Glow and behold
The Apple Worldwide Developers Conference is coming to a screen near you, June 7 to 11. Join the worldwide developer community for an all-online program with exciting announcements, sessions, and labs at no cost. You’ll get a first look at the latest Apple platforms, tools, and technologies — so you can create your most innovative apps and games yet.
Learn about this year’s Swift Student Challenge, and stay tuned for additional details.
Ortus’s Conferences for 2021
ITB Online or In Person - Survey went out to ask would you be willing to attend in person
Call for speakers coming soon (once we decide online or in person)
Survey for onsite or not
Need more conferences, this site has a huge list of conferences for almost any language/community.
Blogs, Tweets and Videos of the Week
Blog - Ben Nadel - The 14th Annual Regular Expression Day - June 1st 2021
For 14 years I've been trying to spread the joy - nay, the awesomeness - of Regular Expressions. And while my love of Regular Expressions continues to grow with each year, it turns out, so does the complexity and overhead of adulting. For the past few years, this day of reflection has snuck up on me. And, each year, it becomes harder and harder to plan anything fun. Throw in a global pandemic and a crazy-ass work schedule, and things get even worse. As such, I have nothing at all planned for this year.
Blog - Ben Nadel - Migrating Password Hashing Algorithms In Lucee CFML 126.96.36.199
Over the weekend, I looked at using the Password4j password hashing library in Lucee CFML. One of the APIs that the Password4j library includes is the ability to update a hash with new hashing characteristics. This is actually something I've had to do in the past - migrating a system to a stronger, more security hashing algorithm. As such, I thought it would be fun to demonstrates using the Password4j library in Lucee CFML 188.8.131.52.
Blog - Adam Cameron - CFML: weirdness with… <cfquery> and single-quote escaping
I was looking around for a good (read: bad) example of one of those exercises in "building a dynamic SQL string inside a <cfquery>". Firstly, one should pretty much never do this. You are almost certainly tightly-coupling business logic with DB-tier logic, and that's an anti-pattern right there. And it also means you can't test it without hitting an actual database, which is rubbish. So just: don't do it. Build the SQL string first, testing all the logic as you go, and once the string is built, pass the completed thing to queryExecute (let's all just pretend <cfquery> doesn't exist: it's a horrific construct, and should have been left to die in the C20th where it belongs).
Blog - Ben Nadel - Using Password4j And The BCrypt, SCrypt, And Argon2 Password Hashing Algorithms In Lucee CFML 184.108.40.206
At InVision, we use BCrypt to perform a one-way, cryptographic hash of user passwords. Which we've been doing for as long as I can remember. In a conversation the other day, however, I mentioned to Adam Tuttle that I thought there was now a more "modern" hashing algorithm; but, that I didn't know what it was. So, I wanted to take a minute to freshen-up my understanding of password hashing best practices (and how they can be applied in ColdFusion and Lucee CFML).
Blog - Nolan Erck - Object Oriented Programming with CFML Video Series
Want to learn Object Oriented Programming with CFML? Are you still struggling with Components? No idea what they do or how to use them with confidence? Then you’re in luck! South of Shasta has partnered with Ortus Solutions and we’ve just released the “Object Oriented Programming Series” training videos on CFCasts. This is a collection of 35 videos, designed for the CFML developer that is still struggling with how to use Components. Each video is a bite-size bit of information about Object Oriented Programming using CFML.
Blog - Ben Nadel - Including Tracing Headers In Nginx 1.18.0 Access Logs Using Custom Formatting
As I mentioned yesterday, we're trying to track down a mysterious logout issue at InVision. Part of this investigation involves trying to understand where an even more mysterious 502 Bad Gateway error is coming from. Due to the many layers of our network, it's proving difficult to figure out which "network hop" is failing. Yesterday, I looked at adding tracing headers to Amazon's ALB using X-Amzn-Trace-Id. Today, I want to look at adding tracing headers to the access logs in Nginx 1.18.0 using a custom log format.
Blog - Ben Nadel - Using The "X-Amzn-Trace-Id" Header For Request Tracing Through Amazon's Load Balancers
At InVision, David Bainbridge and I have been working hard to figure out why some users are getting randomly logged-out of one of our client-side applications. Part of what makes this issue so challenging to debug is that there are many services that touch requests coming out of this application. And, even though we are using request tracing headers in our distributed system, we are struggling to connect the dots as those requests pass-through Amazon's load balancers. Yesterday, however, David discovered that Amazon's load balancers will record (and modify) the HTTP header, X-Amzn-Trace-Id, within their request logs. I think this may really help us!
Tweet - Brad Wood - New CommandBox FusionReactor Module feature
I added an enhancement to the CommandBox FusionReactor module to set a diff host for FR vs your server. Use case: CommandBox HTTP listener is on localhost behind a proxy, but you want FR's port to be directly accessible externally.
Several positions available on https://www.getcfmljobs.com/
Listing over 130 ColdFusion positions from 57 companies across 96 locations in 5 Countries since Dec 1st.
0 new jobs listed this week
Ortus - Senior Developer
ForgeBox Module of the Week
qb v8.5 (query builder ) by Eric Peterson
qb is a fluent query builder for CFML. It is heavily inspired by Eloquent from Laravel.
Using qb, you can:
- Quickly scaffold simple queries
- Make complex, out-of-order queries possible
- Abstract away differences between database engines
VS Code Hint Tips and Tricks of the Week
Highlight Bad Chars by Kevin Wenger
Extension to highlight bad characters such as No-break space ( ) and the Greek question mark (;) in your source files.
With this package you'll easily notice invisible and easy-to-confuse characters, which can be the cause for incredibly annoying syntax errors in source code.
Save yourself the burden of debugging invisible bugs for hours!
Thank you to all of our Patreon Supporters
These individuals are personally supporting our open source initiatives to ensure the great toolings like CommandBox, ForgeBox, ColdBox, ContentBox, TestBox and all the other boxes keep getting the continuous development they need, and funds the cloud infrastructure at our community relies on like ForgeBox for our Package Management with CommandBox.
You can support us on Patreon here https://www.patreon.com/ortussolutions
- Bronze Packages and up, now get a ForgeBox Pro and CFCasts subscriptions as a perk for their Patreon Subscription.
- All Patreon supporters have a Profile badge on the Community Website
- All Patreon supporters have their own Private Forum access on the Community Website
Our Patreon Supporters
- Don Bellamy
- Eric Hoffman
- David Belanger
- Gary Knight
- Giancarlo Gomez
- Jonathan Perret
- Mario Rodrigues
- Jeffry McGee - Sunstar Media
- John Wilson - Synaptrix
- Yogesh Mathur
- Joseph Lamoree
- Ben Nadel
- Brett DeLine
- Carl Von Stetten
- Charlie Arehart
- Dan Card
- Daniel Garcia
- Didier Lesnicki
- Edgardo Cabezas
- Jan Jannek
- Jason Daiger
- Jeff McClain
- Jeremy Adams
- Jonas Eriksson
- Jordan Clark
- Kai Koenig
- Laksma Tirtohadi
- Leon Seremelis
- Matthew Darby
- Matthew Clemente
- Mingo Hagen
- Patrick Flynn
- Ross Phillips
- Scott Steinbeck
- Stephany Monge
- Steven Klotz
- Wil de Bruin
You can see an up to date list of all sponsors on Ortus Solutions' Website
Switch to Modernize or Die ® Podcast - SoapBox Edition - Switch to Modernize or Die ® Podcast - Conference Edition
Music from this podcast used under Royalty Free license from SoundDotCom and BlueTreeAudio© 2019 Ortus Solutions