Modernize or Die® - CFML News for January 7th, 2020 - Episode 35
Watch the video version on YouTube at https://youtu.be/Zs3AT013CHY
Listen to the Podcast on your favorite podcast player or online at https://cfmlnews.modernizeordie.io/episodes/modernize-or-die-cfml-news-for-january-7th-2020
Gavin Pickin - Software Consultant for Ortus Solutions
Brad Wood - Lead Architect for Ortus Solutions
News and Events
CF Summit - Las Vegas 2019 - More Videos being released on Youtube/Facebook
Blog - https://coldfusion.adobe.com/2019/12/adobe-2019-coldfusion-summit-sessions/
Playlist - 16 Videos so far!!!
Webinar - ColdFusion for the Next Decade – All about the Buzzworthy ColdFusion 2020
January 16th, 2020 - Presented by Rakshith Naresh - Product Manager for ColdFusion and Captivate Prime Content Catalog
One of the reasons for ColdFusion’s success right from its inception is that the platform has been able to pivot at regular intervals to remain relevant for the future. There are very few technologies that have managed to stay in the game for so long and that is something all of us in the community are proud of. ColdFusion 2020, slated to be released next year, is going one such pivotal release in the history of ColdFusion. The vision for ColdFusion 2020 goes like this:
“To be the modernized platform of choice for building cloud-native microservice applications with absolute focus on ease of use without getting locked to a particular cloud vendor (multi-cloud).”
Attend this session as the Product Manager for ColdFusion unravels every piece of ColdFusion 2020 that leads to the overarching vision.
Register online: https://cfwebinar-cf2020.meetus.adobeevents.com/
CF Live Coding
Michael Born and Gavin are going to start a new live coding series, where they are going to build a ForgeBox package, to let you participate in the Monthly code challenge. Follow along and see how they build it, pair programming, live on YouTube.
Follow @michaelborn_me and @gpickin to see the scheduled dates and times as they come available. Aiming for Wednesdays 7pm EST / 4pm PST starting on Wednesday Jan 15th.
Into the Box 2020
May 6-8, 2020 | Texas
Hyatt Place The Woodlands
1909 Research Forest Dr., The Woodlands, TX 77380
Call for Speakers is still open. We are always looking for lots of different content from different speakers, don’t be shy, submit something. Does not have to be related to BOX products.
Into The Box 2020 tickets are up for sale now! To thank you for your loyalty, our #SuperEarlyBird all access pass will be $200 off the original price and you can select your workshop once the schedule is published #ModernizeOrDie
Register now: https://intothebox.org/
Call for Speakers: https://www.papercall.io/itb2020
Buy 2019 Videos: https://vimeo.com/ondemand/itb2019/
Feb 19-21 2020 ATLANTA, GA
AUSTIN CONVENTION CENTER
AUSTIN, USA • MARCH 2-4, 2020
DockerCon 2020 is scheduled for June 15-18 in Austin, Texas. This is one of the largest conferences for developers who focus on software containers.
Blogs, Tweets and Videos of the Week
Blog - Pete Freitag - Searching for files by file name on Mac or Linux
Have you ever had to find a file by a file name or file extension? Sure you have! Here's how I locate a file when I'm using a Mac or Linux shell.
Blog - Ben Nadel - Snapshotting ColdFusion Component State In Order To Find Memory Leaks In Lucee CFML 22.214.171.124
A couple of years ago, I wrote about a "Snooper" component that I created that would allow you to peek into the private scope of your ColdFusion component state in order to try and find memory leaks. That approach worked. Sort of. But, it was clumsy and hard to use. Then, the other week, while listening to the Modernize Or Die podcast, Brad Wood described a ColdBox module that he created that would snapshot component state and then compare those snapshots over time in order to find memory leaks. Brad's solution sounded much more elegant than my own; so, I wanted to try and build off of his snapshotting idea, but adapt it for a really old ColdFusion application that has no framework. Here's a breakdown of what I came up with in Lucee CFML 126.96.36.199.
Blog - TeraTech - 3 Steps to Establish a Reliable Recovery Plan for Your Next ColdFusion Project
Backups and recovery plans are the fire extinguishers of the tech world. If you need one, you better hope it works. You don’t want a spreading fire to be your reminder to check if the extinguisher is charged and ready to use.
Blog - Ben Nadel - Depth-First vs Breadth-First Tree Traversal Using A While-Loop In Lucee CFML 188.8.131.52
As part of my post yesterday on how I sometimes replace recursive algorithms with loop-based algorithms in Lucee CFML, I mentioned that the algorithm incidentally shifted from a depth-first strategy to a breadth-first strategy. In a follow-up conversation that I had about the post with fellow InVisioneer, Kevin Conway, he mentioned that, if I wanted to, I could maintain a depth-first strategy by changing the way that I am queuing-up values for subsequent inspection. Given that this fact was not obvious to me, I wanted to quickly look at how the queuing approach changes the order of traversal. To explore this, I'm going to walk the nodes of an XML document in Lucee CFML 184.108.40.206.
Blog - Ben Nadel - Replacing Depth-First Recursion With A Breadth-First While-Loop In Lucee CFML 220.127.116.11
Tweet - Brad Wood - CommandBox usage in last year's State of the CF Union Survey.
Crunching through some stats from last year's State of the CF Union survey. One in five respondents use CommandBox for local dev and out of those respondents using Docker, one in three are deploying on CommandBox. Can't wait to see this year's numbers. #ModernizeOrDie #CFML
Tweet - Ben Nadel - Writing Individual files to Zip VFS
Wow, writing individual files to the Zip Virtual File System (VFS) is orders-of-magnitude slower than zipping a nested-directory of files.
In retrospect, that probably makes sense. I just didn't expect it to be so much slower. #Lucee #CFML #ColdFusion.
Blog - Ben Nadel - Struct Iteration Methods Like Each, Map, And Filter Include Null Values In Lucee CFML 18.104.22.168
Earlier this week, I was working on some reflection-style code in CFML wherein I was recursively looking through structs of data. As I was doing this, it occurred to me that some of the values stored in the structs could be null; and, I wasn't sure off-hand how Lucee would handle these values during iteration. I've already demonstrated that array iteration with null values can be surprising; so, I wanted to take a moment and look at how null values are handled in struct iteration methods (ex, .each, .map, .filter, .every, .reduce) in Lucee CFML 22.214.171.124.
Tweet - Paul Haarstick - First Production Build using Bitbucket Pipelines
2020 is off to a good start. Did my very first production build using @Bitbucket Pipelines and #git! Soon, I'll have to through in some TestBox tests from @ortussolutions. #cfml #coldfusion #continuousIntegration
Blog - James Moberg - Adobe CF Add Column Error
While generating a ColdFusion query using QueryNew, I added a new column using QueryAddColumn and encountered a misleading error message. If 4th param is omitted, error message indicates 3rd param is invalid
Tweet - Paul - Looking at ColdFusion again
Since I support #ColdFusion again, I am taking a closer look at #CommandBox and #CFConfig from @ortussolutions. Known about the tools forever, but now that I am tasked with migrating vagrant to docker, I am finding them very useful. Thanks, @bdw429s and team for the tools!
Blog - Michael Born - Five Things I'd Like To Learn in 2020
Here's a list of five things I don't know that I should learn this year.
Coding Challenge of the Month - January 2020
$25 For whoever completes all of our tasks to help get CFML added to CodeWars
1 - Email email@example.com asking them to add CFML/ColdFusion to the list of languages on their site - cc firstname.lastname@example.org so we know you did it.
2 - Tweet: I love @codewars but when will you be adding #cfml / #coldfusion to the list of languages #modernizeordie @ortussolutions @coldfusion
3 - Retweet other tweets to CodeWars about adding CFML to their list of languages.
Winner chosen randomly at the end of January.
Several positions available on https://www.getcfmljobs.com/
Listing over 22 ColdFusion positions from 20 companies across 15 locations in 5 Countries
Fulltime ColdFusion Software Developer for Zekiah Technologies in La Plata, MD, United States
Zekiah Technologies is accepting applications for THREE (3) ColdFusion Software Developers. 7+ years ColdFusion and Oracle DB, SQL and PL/SQL development…
ColdFusion Software Engineer for Webstaurant Store, Inc. in Tampa, FL, United States
Web programming experience with ColdFusion version 9+. As a ColdFusion Software Engineer, you will be: Webstaurantstore has multiple on site openings for…
Sr. ColdFusion Developer for USmax Corporation in National, WV, United States
7+ years ColdFusion and Oracle DB, SQL and PL/SQL development experience. Designs, develops, enhances, debugs, and implements software in Java Script, HTML5,...
JR. Software Developer (ColdFusion) for iSummation Technologies Pvt. Ltd. at Ahmedabad, Gujarat, India
Senior Developer - Coldfusion - Hyderabad for Neovatic Technologies Private limited at Hyderabad, Telangana, India
Design ,Develop and maintain ColdFusion applications. Experience on configuration of ColdFusion web sites. Minimum 3-5 years of experience in ColdFusion Version...
ForgeBox Module of the Week
Wkhtmltopdf - A CFML (Coldbox) wkhtmltopdf wrapper
By Samuel Knowlton
After years of wrestling with cfdocument from Adobe and Lucee, we centralized our "convert this to PDF" functions using a wkhtmltopdf Docker container based on this repository:
All this module does is provide a friendly interface to the API for that service. This module does not contain the wkhtmltopdf utility or do any conversion by itself. You must be running wkhtmltopdf as a service for this module to do any good.
box install wkhtmltopdf
Last Update: Jan 04 2020 03:45 PM | Installs: 5 | Views: 70 | Versions: 1
VS Code Hint Tips and Tricks of the Week
By Mehmet Yatkı - 17,978 installs - 5 stars
A simple yet powerful extension to add wrapper templates around your code blocks.
- Supports multi selections
- Fully customizable
- Custom wrapper functions
- You can assign shortcuts for each wrapper function separately
- Nicely formatted
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.
Carl Von Stetten
You can see an up to date list of all sponsors on Ortus Solutions' Website