Modernize or Die® - CFML News Podcast for May 24th, 2022 - Episode 149
Gavin and Brad host this weeks CFML News Podcast. They discussed the Into the Box Sessions and Speakers, Workshops and other news about the conference. They discussed Adobe CF Summit Dates and the new Ceritification Program. They discussed CommandBox 5.5.2 release, Lucee 18.104.22.168 stable release, as well as reminders about Adobe CF updates released in CommandBox via ForgeBox and CFWheels 2.3.0 stable release. They discussed the Ortus Webinar on Fuzzy Searching, Seattle CFUG coming back in June, and all of Adobe's Webinars and Workshops. They discuss upcoming conferences, including updates for ITB later in the year and the big announcement for CF Summit, as well as some new events, like the VueJS Forge hackathon by Vue School. They discuss what's new and coming soon with CFCasts as well... including some new series and more free content, dont forget a selection of ITB 2021 videos to get you hyped up for ITB 2022. 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 and on the web... and our new Patreon Sponsor Hagerty MotorSportReg, who is a big sponsor with 2 great job opportunities available right now. Ready to get in the driver’s seat? Join us! https://bit.ly/3985J3U They show off the ForgeBox module of the Week - Send Grid Protocol - This module adds SendGrid support via CBMailServices as well as the ability to optionally use SendGrid templates. This week's VS Code Tip of the week is Active File In StatusBar - Visual Studio Code extension for showing the full path of the currently active file in the status bar. They thanked all their Patreons - including Hagerty MotorSportReg. They talked a little information about perks for their Patreon supporters, including Annual Memberships with a discount. For the show notes - visit the website https://cfmlnews.modernizeordie.io/episodes/modernize-or-die-cfml-news-podcast-for-may-24th-2022-episode-149 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/41GeENj1zho
- Gavin Pickin - Senior Developer at Ortus Solutions
- Brad Wood - Senior Developer at Ortus Solutions
Thanks to our Sponsor - Ortus Solutions
The makers of ColdBox, CommandBox, ForgeBox, TestBox, and all your favorite box-en out there.
A few ways to say thanks back to Ortus Solutions:
- BUY SOME ITB TICKETS - COME TO THE CONFERENCE
- Like and subscribe to our videos on YouTube.
- Help ORTUS reach for the Stars - Star and Fork our Repos
- Star all of your Github Box Dependencies from CommandBox with https://www.forgebox.io/view/commandbox-github
- Subscribe to our Podcast on your Podcast Apps and leave us a review
- Sign up for a free or paid account on CFCasts, which is releasing new content every week
- Buy Ortus’s Book - 102 ColdBox HMVC Quick Tips and Tricks on GumRoad (http://gum.co/coldbox-tips)
Goal 1 - We have 37 patreons providing 100% of the funding for our Modernize or Die Podcasts via our Patreon site: https://www.patreon.com/ortussolutions.
Goal 2 - We are 48% of the way to fully fund the hosting of ForgeBox.io
PATREON SPONSORED JOB POSTING!
Hagerty - MotorSportReg
2 Job Opportunities for Senior Software Engineer, Motorsport - more in the job section.
Watch the video on Youtube
Ready to get in the driver’s seat? Join us!
News and Announcements
CFSummit Website has Announced Dates for 2022
It’s finally happening! For the first time in 2 years, our 10th edition of the Adobe ColdFusion Summit will be in-person! Oct 3-4th will be when you meet coders from across the globe, learn from industry professionals, and dive into our latest release, as you explore coding like never before.
On October 5th, we’re hosting a certification program too. Join in and earn your very own Adobe badge and certificate.
INTO THE BOX - Updates
Announcing Speakers and Sessions for Into the Box 2022 - Round 2
We are excited to announce the second set of speakers and sessions. We have a great mix of Ortus Speakers and Community speakers in this conference, and we have more community speakers coming soon, with a couple more special announcements.
Here is the next 10 speakers and their sessions.
Into the Box 2022 - First Workshops Announced
- Async Programming & Scheduling
- Containerizing & Scaling Your Applications
- Legacy Code Conversion To The Modern World!
- TestBox: Getting started with BDD-TDD Oh My!
Help us decide on the other workshops - Twitter Poll concluded!
- CommandBox CLI Scripting/Productivity
- Up and Running with Quick
- VueJs SPA and Mobile App with Rest APIs
CFML Slack Channel without using Slack
Sean Corfield tweeted about this new Slack link, and we wanted to share it.
New Releases and Updates
CommandBox v5.5.2 Released!
We are pleased to release CommandBox 5.5.2. This is patch release following our recent 5.5.1 release. It contains mostly fixes for regressions in the 5.5. release. If you're upgrading from CommandBox 5.4, please refer to the 5.5.1 release notes first.
Good number of bug fixes, improvements and tasks.
Lucee 22.214.171.124 Released
Following up on our 126.96.36.199 stable release, the Lucee team is proud to announce our 188.8.131.52 stable release
Adobe CF Builder release - update
From Mark on Slack
I know I sound like a broken record, but it is really close. I've had 2 long demos of it this week, with one more left. It looks really, really good. I'm using the latest build for all my demos, and its like... right there. There's like, one dumb bug that's probably already been fixed. Look for at least one deep dive engineering talk about VS Code during Developer Week (and I'm pushing for 2 talks because, frankly, an hour isn't enough time to cover everything this tool does). I'm trying so hard not to oversell it here, but I honestly think this is going to become the number 1 CFML IDE tool everyone uses.
ICYMI - Adobe CF Engine Updates are in CommandBox now
Adobe CF engines 2018.0.14+330003 and 2021.0.04+330004 are now available on ForgeBox for your usage. When started on CommandBox 5.5, ACF 2021 is finally free of Log4j 1.x. ACF 2018 seems to still be using Log4j 1.x however.
ICYMI - CFWheels 2.3.0 Stable Released
This is the official v2.3.0 release. It is dropping a little over a week from Release Candidate 1. We simply wanted to make sure the new CI/CD workflow was functioning before calling the release final. We feel confident that we’re good to mark this release as final. There are no new enhancements or bug fixes in this release from 2.3.0.rc.1.
WEBINARS / MEETUPS AND WORKSHOPS
Ortus Webinar - May - Clearing the Fuzzies on Fuzzy Search with Michael Born
May 27th 2022: Time 11:00 AM Central Time ( US and Canada )
Take a walk through the world of search in this webinar which will show why your database search is not smart enough, explain the basics of how fuzzy search works, and show how to use CBElasticsearch to bring the power of fuzzy searching to your CF application.
View all Webinars: https://www.ortussolutions.com/events/webinars
June 2022 Seattle ColdFusion User Group Meeting
We are restarting our Seattle ColdFusion User Group meetings and are looking forward to meeting online with all of you.
This month's meeting includes a presentation by Leon O'Daniel on sending SMS messages using ColdFusion and the Twilio API.
Join the Adobe ColdFusion Workshop to learn how you and your agency can leverage ColdFusion to create amazing web content. This one-day training will cover all facets of Adobe ColdFusion that developers need to build applications that can run across multiple cloud providers or on-premise
WEDNESDAY, MAY 26, 2022
Webinar - Exploring the CF Administrator: pt1
In part one of exploring the capabilities of the ColdFusion Administrator, Mark will explore the GUI of this powerful, unique ColdFusion tool, explaining how to use many of the capabilities exposed and available for tuning.
WEDNESDAY, JUNE 15, 2022
9:00 AM EDT
Adobe ColdFusion Workshop
WEDNESDAY, JUNE 22, 2022
9:00 AM CET
Adobe ColdFusion Workshop
Full list - https://meetus.adobeevents.com/coldfusion/
CFCasts Content Updates
- Gavin Pickin - Publish Your First ForgeBox Package
- How to exclude files when using ForgeBox to zip and publish your package
- How to use another build process for zipping up your package for publishing
- How to exclude files when using ForgeBox to zip and publish your package
- 2022 ForgeBox Module of the Week Series - 2 new Videos https://cfcasts.com/series/2022-forgebox-modules-of-the-week
- 2022 VS Code Hint tip and Trick of the Week Series - 2 new Videos https://cfcasts.com/series/2022-vs-code-hint-tip-and-trick-of-the-week
- Last couple of videos for Gavin Pickin - Publish Your First ForgeBox Package
- LogBox 101 from Eric Peterson
- Box-ifying a 3rd Party Library from Gavin
- More ForgeBox and VS Code Podcast snippet videos
Conferences and Training
May 24-26, 2022
Come together at Microsoft Build May 24–26 2022, to explore the latest innovations in code and application development—and to gain insights from peers and experts from around the world.
Regional Spotlights, One on One bookings available and more.
Ioniconf (Free Online Ionic conference)
May 25, 2022
Join us for a full day of talks from experts and leaders in the web community, showing how the web is pushing the boundaries of mobile app development. Get insights on the latest web libraries, frameworks, and tools that are empowering web developers to build stunning mobile and cross-platform apps using the power of the web.
US VueJS Conf
FORT LAUDERDALE, FL • JUNE 8-10, 2022
Beach. Code. Vue.
Workshop day: June 8
Main Conference: June 9-10
Speakers and Schedule Announced https://us.vuejs.org/schedule/
Please let us know about you and what you'd like to speak about in all things Quasar or Vue!!!
Conference Date: Saturday, July 9th, 2022 - 3 p.m. GMT
Deadline for Proposals: June 9th, 2022
Call for Proposals - https://docs.google.com/forms/d/e/1FAIpQLSecQfTFUM1BINAvpPl-Khbk7UYpLk2srIR0pLgMcVjpJwWMCA/viewform
Howdy. We’re a full-stack, tech-obsessed community of fun, code-loving humans who share and learn together.
We geek-out in Texas and Wisconsin once a year but we host digital events all the time.
WISCONSIN DELLS, WI / JULY 25TH - 28TH, 2022
A four-day summer camp for developers passionate about learning all things mobile, web, cloud, and technology.
Our very own Daniel Garcia is speaking there
Adobe Developer Week 2022
July 18-22, 2022
Online - Virtual - Free
The Adobe ColdFusion Developer Week is back - bigger and better than ever! This year, our experts are gearing up to host a series of webinars on all things ColdFusion. This is your chance to learn with them, get your questions answered, and build cloud-native applications with ease.
Note: Speakers listed are 2021 speakers currently - check back for updates - I heard speakers were being contacted, and info coming very soon!!! Wink wink nudge nudge
CF Summit - Official
Oct 3rd & 4th - CFSummit Conference
Oct 5th - Adobe Certified Professional: Adobe ColdFusion Certification Classes & Tests
From Mark Takata on Slack re Adobe Certified Professional
The Adobe Certified Professional: Adobe ColdFusion cert is a totally different, MUCH more difficult and comprehensive certification than the CF Specialist previously offered.
Myself, Nolan and Dave F + the CF engineering team, Elishia and Kishore all spent a week together building the new one and it is HARD.
I highly recommend it as a test of your skills, I guarantee everyone will learn something new.
... Yes, but there's also over 100 hours of video to go over before the 1 day lecture + cert. So you watch videos, sit in class, then take the exam there. It is no joke, definitely challenging, but super satisfying to pass.
Plus you get access to those videos for a year, which is nice for going back and reviewing things down the line.
- So this is not the same certification as the specialist, the professional seems like a big step up.
Organized by Vue School
_The largest hands-on Vue.js Event
Team up with 1000s of fellow Vue.js devs from around the globe to build a real-world application in just 2 days in this FREE hackathon-style event.
Make connections. Build together. Learn together.
Sign up as an Individual or signup as a company
Company Deal - $2000 for a team of 5, includes VueSchool annual membership and guaranteed seat at the workshops at VueJS Forge as well… and you can pick your team
Into The Box 2022
September 6, 7 and 8, 2022
One day workshops before the two day conference!
Early bird pricing available until May 31st, 2022
ITB Blog has new updates almost every day!
Into the Box Latam 2022
More information coming very soon.
No CFCAMP 2022, we're trying again for summer 2023
TLDR is that it's just too hard and there's too much uncertainty right now.
Need more conferences, this site has a huge list of conferences for almost any language/community.
Blogs, Tweets, and Videos of the Week
5/23/22 Blog - James Moberg - Parsing Width/Height from SVG File using ColdFusion
Someone on the Lucee website asked how to get width/height of SVG image file in Lucee. I tend use a lot of SVG images when generating PDFs using WKHTMLTOPDF with ColdFusion 2016-2021 and Lucee. I thought I'd try writing a cross-compatible UDF to parse this information. I've added support for desc, title and id metadata. The dimensions will be pulled from svg.viewBox (if exists) rather than width and height tags as I noticed that these dimensions seemed to be used more often with some generators. (NOTE: While the "S" in SVG means that images "scaleable", the dimensions are still extremely beneficial when embedding so you can explicitly code the dimensions using the correct aspect ratio.)
5/21/22 - Tweet - James Moberg - isValid doesnt support IPv4 but 20 year old UDF does
I'm validating an IPv4 value & just realized that #ColdFusion isValid() doesn't support it. (I know type="regex" can be passed, but I'm just surprised that it's 2022 and it's not already built-in.)
NOTE: This #cfml UDF from ~20 years ago supports IPv4.
5/20/22 - Podcast - CFAlive - Are your Database Relationships in a Rut? with Dave Ferguson
Dave Ferguson talks about "Are your Database Relationships in a Rut?" in this episode of the CF Alive Podcast, with host Michaela Light.
5/18/22 - Blog - Gavin Pickin - Why should I use 3rd party libraries vs Roll my own?
There is always a trade-off between using a 3rd party library and rolling your version in software development. I often hear many of these points in discussions, but I wonder how many people know and consider them, so I wanted to share my pros and cons.
This article will help convince you that libraries are not EVIL like so many haters believe. Choosing the right libraries make you more productive and efficient, not lazy. This article identifies solid use-cases for using a 3rd party library in your application. It gives you a checklist of questions to help you identify the red flags of unsafe, unreliable, poorly supported, or ill-suited libraries.
5/14/22 - Podcast - Wicked Good Development - Developer and Open Source Contributor Stories at Dev Nexus - Part 3 - Luis Majano
his episode is three fold as we finish up the roundtable discussion on Devnexus 2022 and we get a chance to interview two more developers who contribute to the open source community. We connect with Luis Majano, CEO of Ortus Solutions and long-time computer engineer, about putting in the open source work. From using a 70/30 ratio to dedicate time building open source in between client work to getting the next generation involved in maintaining minor code fixes first-hand, hear how the level of work put in makes the difference in professional open source.
Ben Nadel Corner
5/18/22 - Blog - Ben Nadel - Code Kata: Getting Initials For A Name In Lucee CFML 184.108.40.206
At work, we have many user interfaces (UI) that use initials instead of full names, such as the "face pile" widget. The current technique for extracting initials from names is rather simplistic: we grab the set of tokens defined by the RegEx pattern, \S+, and then pluck out the leading character of each match. As a code kata, I wanted to see if I could author a slightly more clever user defined function (UDF) that could take a name and return initials in Lucee CFML 220.127.116.11.
5/19/22 - Blog - Ben Nadel - SQL "Join Tables" Are Just "Entity Tables" With Hard-To-Name Concepts
Over the past few months, I've been incrementally modernizing the public-facing portion of this ColdFusion blog. And, all in all, it's been going quite smoothly! But, when I started to work on modernizing the administrative portion of the blog, things got a little hairy. Not only is the administrative code even older and jankier than the public code, it requires CRUD (Create, Read, Update, Delete) operations on "join tables" in the MySQL database. And, up until now, I haven't had to think about modeling these join tables in a data access layer (DAL)
5/20/22 - Blog - Ben Nadel - Parsing Nullish Date "0001-01-01T00:00:00Z" In Lucee CFML 18.104.22.168
At work, one of the APIs that I consume returns data for a Date column that didn't always exist. And, instead of returning a null or an empty string for rows in which the value in the database is NULL, they return what I assume is a null-coalesced date: 0001-01-01T00:00:00Z. I didn't realize that this was happening until I started to see dates in my system showing up as 2001 - which is many years before the API in question even existed. It turns out, passing a date/time mask into the parseDateTime() function is kind of important in Lucee CFML 22.214.171.124
5/21/22 - Blog - Ben Nadel - Dynamically Enabling / Disabling Session Management In Lucee CFML 126.96.36.199
Currently, my blog is composed of two completely separate ColdFusion applications: one for the public facing functionality (you) and one for the content publisher (me). The public facing ColdFusion application has no session management. But the internal facing ColdFusion application has sessions and login-based authentication. As I've been refactoring this platform, I briefly considered combining the two ColdFusion applications and just dynamically enabling sessions for my user. I dismissed this approach as unnecessarily complicated; but, the fact that it's even possible is a fascinating aspect of ColdFusion. As such, I thought that I might quickly demonstrate that you can dynamically enable and disable session management in Lucee CFML 188.8.131.52
Adam Cameron Corner
5/17/22 - Blog - Adam Cameron - Why I'm doing this TinyTestFramework exercise
I have listened to both Modernize or Die® and Working Code Podcast (the specific episode of the latter is not public yet: I get it early as I'm a patreon… which you should be too: Patreon: Working Code is creating podcasts) this evening, and I appreciate them both mentioning my series on TinyTestFramework, but they both kinda got my motivations for doing it wrong.
I'm not doing it for these reasons. I mean… I am doing it, yes, obviously. But these are not my motivations:
To work out how to write a testing framework. This is not really that interesting to me. How to do it within a single expression (the whole thing is one struct literal)? Yes, interested in that. Def.
Because I think TestBox is doing anything wrong. It could not be further from the truth: I think TestBox is one of the best CFML projects out there. I am using it as inspiration, as I want code written in TinyTestFramework to be lift-and-shift-able into TestBox.
5/18/22 - Blog - Adam Cameron - CFML: Filler article with code but no TDD at all
I'm still working on the TinyTestFramework though: some things don't change.
My test file for this work, which is the framework and all its tests in one is getting a bit weighty: >1200 LOC, and I'm finding it difficult to navigate about the place. Especially as I'm using trycf.com as my dev environment :-).
Using the technique I recently documented to execute code on trycf.com remotely ("Running CFML code on trycf.com via a remote HTTP request"), I've split-out the framework and the tests into different gists, and wrote a wee calling-harness to run them all… and for completeness on both ColdFusion 2021 and Lucee 5.
Several positions available on https://www.getcfmljobs.com/
Listing over 89 ColdFusion positions from 50 companies across 45 locations in 5 Countries.
4 new jobs listed
Full-Time - Senior Software Engineer - Coldfusion/C# at Plano, TX - United States
Posted May 24
Full-Time - Software Engineer-ColdFusion at Reno, NV - United States
Posted May 18
Full-Time - Software Engineer-ColdFusion at Bloomington, MN - United States
Posted May 18
Full-Time - Software Engineer-ColdFusion at Roseville, CA - United States
Posted May 18
PATREON SPONSORED JOB POSTING!
Hagerty - MotorSportReg
Senior Software Engineer, Motorsport
We are seeking a Senior Software Engineer to work primarily with Node/Vue.js, ColdFusion, and AWS to improve our platform and build greenfield experiences.
We are a 25-person team supporting 1,600 organizations with our SaaS CRM, commerce and event management platform. With 8,000 events managed in our marketplace annually by our customers, our goal is to be the number one software platform for automotive and motorsport events.
Ready to get in the driver’s seat? Join us!
Other Job Links
- Ortus Solutions https://www.ortussolutions.com/about-us/careers
- Clear Capital - Carol from Working Code Pod
- There is a jobs channel in the cfml slack team, and in the box team slack now too
ForgeBox Module of the Week
Send Grid Protocol
A cbmailservices protocol for sending email via Send Grid. cbmailservices already supports CFMail, File, InMemory, Null, and PostMark. This module adds SendGrid support as well as the ability to optionally use SendGrid templates.
VS Code Hint Tips and Tricks of the Week
Active File In StatusBar
Visual Studio Code extension for showing the full path of the currently active file in the status bar. You can also click on it to copy to your clipboard. Its handy when you need to quickly see the full filepath.
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’t forget, we have Annual Memberships, pay for the year and save 10% - great for businesses.
- Brand new Big Patreon Sponsor
Brian Ghidinelli - Hagerty MotorsportReg
- Wil De Bruin - Sponsoring again - thank you Wil.
- John Wilson - Synaptrix
- Eric Hoffman
- Gary Knight
- Mario Rodrigues
- Giancarlo Gomez
- David Belanger
- Dan Card
- Jonathan Perret
- Jeffry McGee - Sunstar Media
- Dean Maunder
- Joseph Lamoree
- Don Bellamy
- Jan Jannek
- Laksma Tirtohadi
- Carl Von Stetten
- Jeremy Adams
- Didier Lesnicki
- Matthew Clemente
- Daniel Garcia
- Scott Steinbeck - Agri Tracking Systems
- Ben Nadel
- Brett DeLine
- Kai Koenig
- Charlie Arehart
- Jonas Eriksson
- Jason Daiger
- Shawn Oden
- Matthew Darby
- Ross Phillips
- Edgardo Cabezas
- Patrick Flynn
- Stephany Monge
- John Whish
- Kevin Wright
- Peter Amiri
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