Modernize or Die® - CFML News for June 8th, 2021 - Episode 107
2021-06-08 Weekly News - Episode 107 Watch the video version on YouTube at https://youtu.be/eaX1QZszAwQ Hosts: Gavin Pickin - Software Consultant for Ortus SolutionsEric 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) Patreon Support We have 36 patreons providing 83% 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!https://www.ortussolutions.com/blog/we-need-your-help News and Events CommandBox Docker v3.4.0 Images ReleasedToday we are pleased to announce the release of version 3.4.0 of our CommandBox Docker images, which bumps the CommandBox binary version to v5.3.1. This release primarily contains optimizations and updates to leverage the new environmental support options available in CommandBox 5.3.0 and above.https://www.ortussolutions.com/blog/commandbox-docker-v340-images-released https://hub.docker.com/r/ortussolutions/commandbox/ ICYMI - Lucee 5.3.8.179-RC4 (Final Release Candidate) ReleasedThis 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.https://dev.lucee.org/t/lucee-5-3-8-179-rc4-final-release-candidate/8400 Ortus Webinar for June - Eric Peterson - Topic - Build a Blog in 30 minutes with QuickWednesday, June 30th at 11:00 AM CTIn this webinar, Eric will: give us an overview of ColdBox and Quick, give us reasons why we would use this library, he'll show us an example app to explore how it works and we'll have tons of live coding!Webinars Page: https://www.ortussolutions.com/events/webinars Registration: https://us02web.zoom.us/meeting/register/tZIsd-2qrzMiG9DIROF-hQGy8Qj2TUkGHGth ICYMI - Online CF Meetup - Getting Started with FusionReactor, with Brad WoodThursday 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.https://www.meetup.com/coldfusionmeetup/events/278404050/ Recording: https://www.youtube.com/watch?v=PWkh2Yig3yQ Reminder - State of the CF Union SurveyHelp 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.https://teratech.com/state-of-the-cf-union-2021-survey CFCasts Content Updateshttp://www.cfcasts.com Just Released Object-Oriented Programming with Nolan Erck (https://cfcasts.com/series/oop-series) Abstract Classes Basic example of composition Changing Objects at Runtime 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) Why Composition over Inheritance Diamond-design Problem Interfaces with Ducks Coming up soon More What’s new with ColdBox 6 More What’s new in qb 8 More Using DocBox 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 - OnlineAgenda now on the website - 2 tracks 4 times 7am 9am 12pm 2pm (PT) No podcast on the 22nd due to the Developer Week 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!https://adobe.vconfex.com/site/adobe-coldfusion-developer-week/977 Apple WWDC21 - Glow and behold - this week June 7-11The 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.https://developer.apple.com/wwdc21/ Ortus’s Conferences for 2021 Into the Box - ITB Online or In Person - Survey went out to ask would you be willing to attend in personSeptember 2021Call for speakers coming soon (once we decide online or in person) ITB LatamDecember 2021 More conferences Need more conferences, this site has a huge list of conferences for almost any language/community.https://confs.tech/ Blogs, Tweets and Videos of the Week Blog - Jon Clausen - Ortus Solutions - CommandBox Docker v3.4.0 Images ReleasedToday we are pleased to announce the release of version 3.4.0 of our CommandBox Docker images, which bumps the CommandBox binary version to v5.3.1. This release primarily contains optimizations and updates to leverage the new environmental support options available in CommandBox 5.3.0 and above.https://www.ortussolutions.com/blog/commandbox-docker-v340-images-released Blog - Charlie Arehart - My upcoming talk, "ColdFusion at 25: not the kid most have stuck in their minds"As you may have heard by now, the Adobe CF Developer Week 2021 will be held June 22-24. My session will be on June 22 at 4p Central in Track 2. While currently the DevWeek site only offers session titles and speakers (not descriptions) here is mine, from the "presentations" page here on my site.https://www.carehart.org/blog/client/index.cfm/2021/6/8/my_upcoming_cfdevweek_talk_CF_at_25 Blog - Wil De Bruin - A new coldbox app with commandbox: A walk in the park?I want to share some recent experience with you, when I created a new coldbox app. Disclaimer: Actually I would like to improve the first impression when generating a new coldbox app, but I may sound a bit biased. As some of you might know I am not always happy with commandbox, especially with the way it handles lucee in production environments.Most of the time, we are working on some long term projects, but recently I had to setup something new, just some proof of concept. So I created a project, ran some of these box coldbox create app wizards and became the proud owner of a brand new cfml advancedscript template setup. https://shiftinsert.nl/a-new-coldbox-app-with-commandbox-a-walk-in-the-park/ Relevant Docs: https://coldbox.ortusbooks.com/for-newbies/60-minute-quick-start Blog - Charle Arehart - CF DevWeek 2021 agenda now postedWhile we’ve heard for several weeks about the coming Adobe ColdFusion Developer Week event (June 22-24) since it’s announcement here and elsewhere, some great news is that the agenda has now been posted. (The topics have also been trickled out via the Adobe CF twitter account.)You can find all the session topics and their times at the registration site. When you click the “Agenda” menu option, you’ll find the 3 days of sessions, in two tracks with about 3-4 sessions per track each day, for a total of 20 sessions.https://coldfusion.adobe.com/2021/06/cf-devweek-2021-agenda-now-posted/ Blog - Wil De Bruin - Module dependencies in interceptorsInterceptors in coldbox are very powerful. They are components which listen to events which are announced by the core framework or modules or custom events created by your application. But this post is not about all details of creating interceptors, you can read all about it in the coldbox documentation. I am using them all the time since they are so powerful, but sometimes they don’t behave as expected, especially when your interceptor depends on other modules.https://shiftinsert.nl/module-dependencies-in-interceptors/ Blog - Ben Nadel - Managing Lists Of IDs Using HTML FORM Posts In Lucee CFML 5.3.7.47At InVision, I'm in the middle of building a custom feature for one of our clients. This feature lives outside of any SPA (Single-Page Application); and, uses "old school" form submission techniques to process the interactions. The techniques that I'm using are the same ones that I learned 2 decades ago. And they still work perfectly well! This is a testament to both the HTML specification and the way that ColdFusion simplifies the management of form submission data. And while this feels like "old technology" to me, it occurred to me that there might be little gems in here that newer developers don't know about. As such, I wanted to put together a quick demo on managing lists of IDs using HTML FORM posts in Lucee CFML 5.3.7.47.https://www.bennadel.com/blog/4061-managing-lists-of-ids-using-html-form-posts-in-lucee-cfml-5-3-7-47.htm Blog Adam Cameron - CFML: messing around with mixins (part 1)There was a conversation on the CFML Slack channel the other day about mixing-in functions into objects in CFML. This stemmed from some of the way CFWheels has been architected, such as how the main Controller class is composed:https://blog.adamcameron.me/2021/06/cfml-messing-around-with-mixins-part-1.html Tweet - Brad Wood - New CommandBox Themed shirt on BoxLife storeHey CommandBox users, we've added a cool CommandBox-themed shirt to the BoxLife store that says "Server is Up" to remind you of the magic of starting CF servers!https://www.ortussolutions.com/about-us/shop#!/server+is+up!?idea=60b4a32396e7c070517d5872 #CFML #ColdFusionhttps://twitter.com/bdw429s/status/1400908226854539266 https://twitter.com/bdw429s Blog - Ben Nadel - Changing Function Argument Defaults At Runtime In Lucee CFML 5.3.7.47In the vast, vast majority of cases, when I author a Function in ColdFusion that has default argument values, those values are static. Meaning, the argument falls-back to a hard-coded token like 0 or "" or false. The other day, however, when I was exploring the Password4j password hashing library in Lucee CFML, I created a ColdFusion component that had dynamic Function Argument defaults that could be changed at runtime. To be honest, it felt a little strange at the time. As such, I wanted to isolate the use-case and think-it-through a bit in Lucee CFML 5.3.7.47.https://www.bennadel.com/blog/4060-changing-function-argument-defaults-at-runtime-in-lucee-cfml-5-3-7-47.htm Blog - FusionReactor - Automatic Root Cause Error AnalysisEvent Snapshots are intended to provide deep-level insight whenever a problem, such as an exception or thread latency occurs. Snapshots are triggered automatically. The Event Snapshot provides automatic root cause error analysis by displaying source code, scope variables, stack trace, and logging information at the point the problem occurs. This, therefore, provides everything you need to isolate the issue as quickly and efficiently as possible.https://www.fusion-reactor.com/blog/technical-blogs/automatic-root-cause-error-analysis/ CFML JobsSeveral positions available on https://www.getcfmljobs.com/ Listing over 134 ColdFusion positions from 60 companies across 97 locations in 5 Countries since Dec 1st. 2 new jobs listed this week Contract - ColdFusion Developer at Middle Town, NJ - United States Posted Jun 04https://www.getcfmljobs.com/jobs/index.cfm/united-states/CFDev-at-NJ-MiddleTow/11281 Full-Time - Coldfusion Developer at Bengaluru, Karnataka - India Posted Jun 01https://www.getcfmljobs.com/jobs/index.cfm/india/Coldfusion-Developer-at-Bengaluru-Karnataka/11280 Ortus - Senior Developer (USA and El Salvaldor)https://www.ortussolutions.com/about-us/careers ForgeBox Module of the Week JSONPrettyPrint Pretty print JSON objects with line breaks and indentation to make it more human readable. If you have an app that writes JSON files that humans need to easily be able to read, run the JSON through this library first. By default, it doesn't modify the data at all-- only the whitespace. It can, however, sort JSON object keys for you if you wish. https://www.forgebox.io/view/JSONPrettyPrint VS Code Hint Tips and Tricks of the Week Remote - Containers (Preview) by Microsoft 3,933,782 installs The Remote - Containers extension lets you use a Docker container as a full-featured development environment. Whether you deploy to containers or not, containers make a great development environment because you can: Develop with a consistent, easily reproducible toolchain on the same operating system you deploy to. Quickly swap between different, separate development environments and safely make updates without worrying about impacting your local machine. Make it easy for new team members / contributors to get up and running in a consistent development environment. Try out new technologies or clone a copy of a code base without impacting your local setup. https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers 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 Patreons 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 You can see an up to date list of all sponsors on Ortus Solutions' Websitehttps://ortussolutions.com/about-us/sponsors ★ Support this podcast on Patreon ★