Modernize or Die® - CFML News for May 18th, 2021 - Episode 104
2021-05-18 Weekly News - Episode 104
Watch the video version on YouTube at https://youtu.be/XADBSOM1CGs
Gavin Pickin - Software Consultant for Ortus Solutions
Luis Majano - Owner of 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 37 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
CommandBox 5.3.1 Released
The sql command is brand new in 5.3.1 as well thanks to Scott and Brad.
cat myfile.json | sql select=id,name where="name like '%sql%'" orderby=name limit=3
You can pipe in any JSON representation of data and filter it on the fly with QoQ
Which pairs nicely with the table printer and this new import/export module that supports different file formats
FusionReactor 8.7.1 Released
FusionReactor 8.7.1 was released on May 12th. Included are improvements to both the support chat and Redisson async tracking, as well as various bug fixes.
ColdBox Validation 3.1 Released
cbValidation v3.1 was released on May 17th. Included 6 new validators, 3 new mixins and a new functional approach to validation.
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.
ICYMI - Bintray decommissioning - Adobe Docker image update
On May 1, 2021, all Bintray services will be deprecated, and your accounts will be disabled. For more information, see the official Bintray blog.
This means that the ColdFusion, Performance Monitoring Toolset, and API Manager containers for the versions 2016/2018/2021 will no longer be accessible. This may lead to interruption in your automation scripts and other CI/CD pipelines.
We have moved all the containers to ColdFusion downloads. You’ll load the tar file in Docker and then run ColdFusion or the other tools.
ICYMI - FusionReactor Webinar - Reach for the Clouds with FusionReactor
May 12, 2021 05:00 PM in Amsterdam, Berlin, Rome, Stockholm, Vienna
8am PST, 10am CST
FusionReactor APM has been available as a cloud-based or SaaS solution for a few years now. This webinar will reveal what additional capabilities and benefits this platform has to offer (on top of everything which FusionReactor on-premise provides). We will also answer questions about licensing, data retention and technical aspects of expanding to the cloud.
Adobe Webinar Series - API Creation and Management - One left
Next Webinar: 5/24/21
ColdFusion Developers, do you want a first hand look at publishing APIs securely and at scale? Then mark your calendars for Brian Sappey’s upcoming webinars! This seven-part series will give you a 360 degree view of the API Manager and teach you how to build RESTful APIs with Adobe ColdFusion. Everything from securing, publishing and monitoring APIs, will be covered with hands-on examples, and easy discussions.
Dates: 3/24/21, 3/25/21, 4/28/21, 4/29/31, 5/12/21, 5/13/21, 5/24/21
Recordings: https://t.co/ZQc637BSkv (2 videos posted)
Ortus Webinar for May - What's new in CommandBox 5.3 with Brad Wood
Friday, May 21st at 11:00 AM CT
Come learn with Brad Wood about all the new features and tricks in the newest CommandBox releases, including versions 5.1.0, 5.2.0, and 5.3.0.
Webinar Page: https://www.ortussolutions.com/events/webinars
CFCasts Content Updates
CommandBox: Zero to Hero Workshop (https://cfcasts.com/series/commandbox-zero-to-hero)
- Cattle Servers & Service Manager
- Guidelines for Your Code
Object-Oriented Programming with Nolan Erck (https://cfcasts.com/series/oop-series)
- Var Scoping
- Static Properties and Methods
- Encapsulation and Cohesion
Don't forget - the first 4 videos in this series are FREE
Coming this week
Object-Oriented Programming with Nolan Erck (https://cfcasts.com/series/oop-series)
- Single Responsibility
- Features of Good Design: Code Reuse, Extensibility, Testability
Coming up soon
- More What’s new with ColdBox 6
- Up and Running with Quick
- LogBox 101
- Using DocBox
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 - AWS Summit Online - Americas
Online and Free
AWS Summit Online is designed for developers and IT professionals looking to learn how to build and innovate at scale using AWS Cloud. Hear the very latest from AWS executives, attend breakout sessions featuring customer stories, and engage with AWS experts to get your questions answered. Enhance your skills with hands-on labs and workshops, learn from inspiring demos, and discover what AWS and our Partner Solutions can do for your business.
This free online conference is designed to educate you about AWS services; and help you design, deploy, and operate infrastructure and applications.
Google I/O - THIS WEEK
May 18-20 - Online and Free for Everyone
Connect with developers from around the world at this year's virtual Google I/O for thoughtful discussions, hands-on learning with Google experts, and a first look at our latest developer products.
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.
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.
Call for Speakers open until Midnight April 1st
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.
CFML Is now on the list - https://confs.tech/conferences/new
Blogs, Tweets and Videos of the Week
Blog - Matthew Clemente - TIL: The Easiest Way to Select the Last 30 Days (or Any Interval) in PostgreSQL
Thanks to my ignorance, PostgreSQL is an ongoing source of TILs. Today, I learned about using interval to easily select a range of time.
While reviewing data from a logging table, I needed to select records from the past 30 days. On a whim, I decided to see if PostgreSQL provided any clever ways to do this. My searches lead me to learn about a new data type: interval.1 Here’s a link to the docs, as well as the post I stumbled upon that demonstrated how to write this type of query. Let’s take a closer look.
Blog - Luis Majano - Ortus Solutions - cbValidation v3.1.0 Released
I am so excited to bring you the release of cbValidation to version 3.1.0. This has been a great collaboration between Wil De Bruin and Eric Peterson. Thanks so much guys for all that you do for open source. You can see all of the release notes below with some of the major improvements of this release. To get this release make sure you are already on version 3.x and use CommandBox: box update cbvalidation. You can find the release notes here: https://coldbox-validation.ortusbooks.com/intro/release-history/whats-new-with-3.1.0 and you can view all the new documentation here: https://coldbox-validation.ortusbooks.com. Enjoy!
Blog - Zac Spitzer - Debugging Trick with Echo()
@micstriit showed me a nice debugging trick with echo()
Blog - Adam Cameron - CFWheels: running TestBox instead of RocketUnit
CFWheels ships with its own inbuilt (albeit third-party) testing framework. I discuss its merits in an earlier article: "Testing: A Horror Story". You can probably work out my opinion of the inbuilt testing framework - RocketUnit - from the title. That's really all you need to know to contextualise why I am now going to get TestBox working in a CFWheels context. One would expect that this would simply be a matter of installing TestBox and then using the CFWheels API to call methods on its classes to… um… use it. Not so fast there chief.
Blog - Ben Nadel - GetBaseTagData() Works Differently In Adobe ColdFusion 2018 And Lucee CFML 184.108.40.206
For a few weeks now, I've been slowly rolling out my ColdFusion custom tag DSL for HTML emails at InVision. And, it's been great! So, yesterday, I decided to start using it on my blog for the comment emails. However, InVision runs on Lucee CFML and my blog runs on Adobe ColdFusion 2018; and, it turns out that the getBaseTagData() function - which is a critical part of my DSL architecture - works completely different in the two ColdFusion runtimes.
Blog - Ben Nadel - Using The Elvis / Null Coalescing Operator To Loop Past Array Boundaries In Lucee CFML 220.127.116.11
The Elvis / null coalescing operator (?:) in Lucee CFML allows us to evaluate expressions that have fallback values if the left operand results in a null / undefined value. It's a powerful operator; and, can even replace the safe-navigation operator under certain circumstances. One place that I've been using it lately is when looping over an Array wherein I need to "cycle back" to the opposite end of the array upon hitting a boundary condition. I feel like it expresses the intent of the code quite cleanly. As such, I wanted to make a quick demo in Lucee CFML 18.104.22.168.
Blog - Ben Nadel - Pro Tip: Using The say Voice Synthesis Command After A Long-Running Task
This is a pro-tip that I picked up from Aaron Lerch - using the say voice synthesis command after a long-running command-line task. Often times, at work, I'll have to run some sort of compilation process that can take anywhere from a few seconds to a few minutes. And, in order to maximize my productivity, I'll use this compilation "down time" to perform other duties. However, so as to not let myself go down a rabbit hole, I'll append the say command so that I am alerted to the completion of the compilation.
Blog - Brad Wood - Ortus Solutions - Have you taken the State of the CF Union 2021 survey?
Our friends at TeraTech help put together a comprehensive survey of the entire CFML community to get a feel for how it's evolving, what new technologies are getting picked up, and what the current pain points are. We use this data at Ortus to help us decide what CF engines to support and how to help the community.
Guide - Lucee - Installing and running Lucee with CommandBox on Ubuntu 20.04 LTS Server and Apache2
A step by step guide about installing and running Lucee with CommandBox behind Apache2 with AJP. The setup is made from a remote computer with Windows 10 using SSH X11 forwarding and Ubuntu's lightweight display manager lightdm from desktop interface xfce4. The first two steps are equal to the first two videos of the 'Installing Lucee on Ubuntu 20.04 LTS Server Apache2 - Video Guide'.
Tweet - Brad Wood - Lucee Tricks
Two fun Lucee tricks for today. You can pass a Java InputStream into toString() and get back a single String without looping over the stream manually.
toString( inputStream )
Also, arrays can be dereferenced as
and both work the same. #CFML #ColdFusion
Blog - Matthew Clemente - Group By or Order By Column Position in a SQL Query
File this under interesting SQL features that I just learned - you can GROUP BY and/or ORDER BY the numeric column position in your SELECT statement, rather than writing out the full column identifier. If that’s unclear, an example should help clarify.
Tweet - James Moberg - Yes and No vs True and False
.@coldfusion YES & NO strings are allegedly treated as boolean values, but boolean values <> YES/NO.
CFHTTP throws a hard error if you pass true/false instead of stringified YES/NO values. (Lucee #cfml logically accepts both data types.)
WORKAROUND: Use YesNoFormat(). #lame
Blog - Wil De Bruin - Using commandbox Lucee for production
This question will come back now and then on the coldfusion and boxteam slack, and until recently I would say: no problem! As CTO and owner of a hosting company I decided this setup was capable for production for several of our customers. But I changed my mind, so let me explain.
Several positions available on https://www.getcfmljobs.com/
Listing over 125 ColdFusion positions from 54 companies across 93 locations in 5 Countries since Dec 1st.
Full-Time - ColdFusion Developer at Bengaluru, Karnataka - India
Posted May 15
Full-Time - Coldfusion Developer | 4 to 6 years |Mumbai & Bangalore - India
Posted May 11
Ortus - Senior Developer
ForgeBox Module of the Week
CommandBox Convert by Scott Steinbeck
Commandbox Convert is a module for working with excel/csv data. The module utilizes the amazing lucee-spreadsheet created by Julian Halliwell. The module tries to handle some of the common use cases for working with table like data coming from a csv, excel, or any other valid JSON type data like an array, array of arrays, array of structs, or a JSON file.
This module can:
- Convert a csv file to a serialized query for use in piping to other commands
- Converts table like data to excel
- Converts table like data to csv
- Converts table like data to json
- Converts table like data to PDF
VS Code Hint Tips and Tricks of the Week
Screencast Mode - Built in to VS Code
VS Code's built-in screencast mode displays your keypresses and mouse clicks.
This is useful when presenting VS Code to an audience or when recording videos of VS Code being used.
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
- 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 (bru-hine)
You can see an up to date list of all sponsors on Ortus Solutions' Website