Modernize or Die® - CFML News Podcast for January 10th, 2023 - Episode 179

Gavin and Daniel host this week's CFML News Podcast They discuss a Mura Security Notice, and the CBWire v2.2 Release Webinars / Meetups and Workshops - Ortus Fridays back in January 2023 including Grant Copley talking about CBWire, and Mid Michigan CFUG meetup with Ray Camden talking about Alpine.js Conferences They updated everyone on CF Summit Online. They discussed upcoming conferences including VueJS Nation, VueJS Amsterdam, VueJS Live, Dev Nexus 2023 and ITB 2023 and CFCamp 2023 dates as well. They discussed what's new and coming soon with CFCasts. 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... including some from the community and Ortus hiring another USA Developer. They show off the ForgeBox module of the Week - CommandBox dotenv - Storing secrets in source-controlled files is a bad idea, but we still need some way to provide these sensitive credentials or configuration values to our projects. This week's VS Code Tip of the week is - FilDir - Filtered Directories - Filtered Directories (Fildir) helps you focus on just the parts of your monorepo that you care about. They talked a little information about perks for their Patreon supporters, including Annual Memberships with a discount... and now new perks like the BoxTeam Slack Channel and live streams. For the show notes - visit the website https://cfmlnews.modernizeordie.io/episodes/modernize-or-die-cfml-news-podcast-for-january-10th-2023-episode-179 Music from this podcast is used under Royalty Free license from SoundDotCom https://www.soundotcom.com/ and BlueTreeAudio https://bluetreeaudio.com
2023-01-10 Weekly News - Episode 179

Watch the video version on YouTube at https://youtu.be/noI3EDu9SqQ

Hosts: 
  • Gavin Pickin - Senior Developer at Ortus Solutions
  • Daniel Garcia - Senior Developer at Ortus Solutions

Thanks to our Sponsor - Ortus Solutions

The makers of ColdBox, CommandBox, ForgeBox, TestBox and all your favorite box-es out there. 
A few ways  to say thanks back to Ortus Solutions:
 
Patreon Support ( admirable )

Goal 1 - We have 42 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 37% of the way to fully fund the hosting of ForgeBox.io

 
News and Announcements

Security Notice: Mura CMS < 10.0.580 and Masa CMS < 7.3.10
Security Notice: Mura CMS < 10.0.580 and Masa CMS < 7.3.10 are affected by a critical authentication bypass vulnerability. Patch this one now. Vulnerability details will be disclosed in 60 days.

https://github.com/MasaCMS/MasaCMS/releases/tag/7.3.10
https://www.murasoftware.com/mura-cms/

New Releases and Updates

CBWIRE 2.2 Released
We're excited to announce the release of CBWIRE 2.2. This release includes several added enhancements, such as new lifecycle hooks and simplified Turbo Drive integration. We changed the previous lifecycle hook of mount() to onMount() to be consistent, and several bugs were squashed.
The docs have been updated also. https://cbwire.ortusbooks.com/
https://www.ortussolutions.com/blog/cbwire-22-released


Webinar / Meetups and Workshops

Ortus Event Calendar for Google

https://calendar.google.com/calendar/u/0?cid=Y181NjJhMWVmNjFjNGIxZTJlNmQ4OGVkNzg0NTcyOGQ1Njg5N2RkNGJiNjhjMTQwZjc3Mzc2ODk1MmIyOTQyMWVkQGdyb3VwLmNhbGVuZGFyLmdvb2dsZS5jb20
 

Ortus Fridays are back in Full Effect in 2023
  • ICYMI - Ortus Office Hours - Jan 6th, 2023 - 11 AM CST
  • Ortus Webinar - Jan 20th 2023 - CBWIRE Coding Session - Let’s build an app with CBWIRE with Grant Copley - 11 AM CST
  • Koding with the Kiwi - Jan 27th, 2023 - 2 PM CST
  • Ortus Office Hours - Feb 3rd, 2023 - 11 AM CST
  • Software Craftsmanship Book Club - Feb 10th, 2023 - 2 PM CST (Patreon exclusive)

Mid Michigan CFUG - Adobe’s Ray Camden will be presenting Intro to Alpine.js

Alpine calls itself the jQuery for the modern web. So if you’re not ready to move to React or Vue you many want to give it a serious look. They’ve also done the behind the scenes work to integrate it with charting programs, online rich text editors and online calendars.

If you’re unable to make the livestream we will make Ray’s presentation available on our YouTube channel at a later date. https://youtube.com/@CFML

https://tinyurl.com/yeyt7y9u


CFCasts Content Updates

https://www.cfcasts.com

Recent Releases

Coming Soon
  • More ForgeBox and VS Code Podcast snippet videos
  • ColdBox Elixir from Eric
  • Getting Started with ContentBox from Daniel
  • Brad with more CommandBox Videos
  • Box-ifying a 3rd Party Library from Gavin
  •  

Conferences and Training

CF Summit Online

All the webinars, all the speakers from Adobe ColdFusion Summit 2022 – brought right to your screen. All sessions will soon be streamed online, for your convenience. Stay tuned for more!

MODERNIZING THROUGH EVOLUTION NOT REVOLUTION
Guust Nieuwenhuis
January 10, 2023 | 15:00 - 16:00 EST (1 hour)
Our company has grown over a quarter of a century, and across those years we have matured as developers and IT companies, refining both our tools and practices to a degree that the past seems hardly recognizable. Counter to this are the inevitable compromises, products of constrained timeframes, limited client budgets or strained resources. Projects inevitably lean more towards growth and depth than general modernization, to the point that they become difficult to maintain. So, what happens when the bugs add up and the monster emerges? Refactor? Rewrite from scratch? We’ve been involved in many such projects, internally and inherited both, and have learned there is no simple answer to the question “how do we move forward?” Through case studies and anecdotes I will explain what to look out for, from both a technical and business perspective.

EASIER API DEVELOPMENT AND TESTING - USE POSTMAN, WEBHOOK.SITE, AND NGROK TO ENHANCE YOUR WORKFLOW
Daniel Garcia
January 12, 2023 | 12:00 - 13:00 EST (1 hour)
Postman, Webhook.site, and ngrok are great tools that can really enhance your API development and testing workflow. PostMan is a cross-platform API Testing Tool with lots of awesome features, Webhook.site allows you to easily inspect, test, and automate any incoming HTTP request or e-mails, and ngrok enables you to expose a web server running on your local machine to the internet. These are must-have tools for any API developer (either creating or consuming). In short, these tools solve problems and best of all, they all have free versions which allow you to be very productive. My goal is that after this conference, you will start using at least one, if not all three, tools when you get home. I'm not saying using these tools will be life-changing, but I am also not not saying that either

LEVERAGING AI / COGNITIVE SERVICES VIA COLDFUSION
Michael Hayes
January 17 | 12:00 - 13:00 pm EST (1 hour)
Azure Cognitive Services is API that leverages AI and Machine Learning to provide capability such as Sentiment Analysis, Entity Recognition, Auto Translator, Text to Speech, speech translation, and many more. All this would be written in ColdFusion 2021 of course and a GIT repo of the code will be shared with the community. There may be a secondary package that will be shared that would convert PostMan / Swagger collections to ColdFusion for rapid development via API's.

SPREADSHEET MAGIC
Kevin Wright
January 19 | 12:00 - 13:00 pm EST (1 hour)
Microsoft Office is the 'de facto' standard in most business environments. In this session we will look at different ways of integrating with one of the most used applications of the MS office suite, Excel. Come learn how to create, access and manipulate spreadsheets programmatically with the CFSPREADSHEET tag in ColdFusion. We will go beyond basic read and write features, and will delve into more advanced techniques like working with formulas and formatting, and creating multiple sheets. We will also look at examples of more complex types of spreadsheets by using lookups and even creating and embedding dynamic charts. FORMAT: Presentation with slides / live code review

OPPORTUNITIES FOR BLOCKCHAIN TECHNOLOGY AND NFTS IN THE REAL WORLD
Masha Edelen and Nick Juntilla
January 24 | 14:00 - 15:00pm EST (1 hour)
Understanding the value and practical use cases of Non-Fungible Tokens in modern business applications. Learn how to get started using the blockchain and building your Web 3 strategy.


Website for CF Summit Online
https://cfsummit-online.meetus.adobeevents.com/

VUE.JS NATION CONFERENCE
January 25th & 26th 2023
https://vuejsnation.com/

VUEJS AMSTERDAM 2023
9-10 February 2023, Theater Amsterdam
World's Most Special and Largest Vue Conference
CALL FOR PAPERS AND BLIND TICKETS AVAILABLE NOW!
Call for Papers: https://forms.gle/GopxfjYHfpE8fKa57
Blind Tickets: https://eventix.shop/abzrx3b5
https://vuejs.amsterdam/

Dev Nexus

April 4-6th, 2023 in Atlanta
Georgia World Congress Center
285 Andrew Young International Blvd NW
Atlanta, GA 30313
https://devnexus.com/

VueJS Live
MAY 12 & 15, 2023
ONLINE + LONDON, UK

CODE / CREATE / COMMUNICATE

35 SPEAKERS, 10 WORKSHOPS
10000+ JOINING ONLINE GLOBALLY
300 LUCKIES MEETING IN LONDON

https://vuejslive.com/

Into the Box 2023 - 10th Edition
May 17-19, 2023
The conference will be held in The Woodlands (Houston), Texas
This year we will continue the tradition of training and offering a pre-conference hands-on training day on May 17th and our live Mariachi Band Party! However, we are back to our Spring schedule and beautiful weather in The Woodlands! Also, this 2023 will mark our 10 year anniversary. So we might have two live bands and much more!!!
Still time - call for speakers for the Into The Box Conference for 2023 is open until Jan 31st
https://www.intothebox.org/blog/into-the-box-2023-call-for-speakers
https://itb2023.eventbrite.com/

CFCamp is back
June, 22-23rd 2023
Marriott Hotel Munich Airport, Freising
Call for Speakers coming in the New year
https://www.cfcamp.org/


More conferences

Need more conferences, this site has a huge list of conferences for almost any language/community.
https://confs.tech/

https://github.com/scraly/developers-conferences-agenda


Blogs, Tweets, and Videos of the Week

1/10/23 - Blog - Ben Nadel - Hotwire Turbo Drive Requires Failed Form Submissions To Return A non-2xx Status Code

Over the past few weeks, I've been exploring the use of Hotwire in a ColdFusion application. It's a fascinating framework (from Basecamp) that forces you to think about web fundamentals and how to progressively enhance the user experience (UX). This morning, I ran into an issue trying to get Turbo Drive to work with HTTP Form submissions. It turns out, Turbo Drive requires non-2xx status codes to be returned in response to a failed form submission in ColdFusion.
https://www.bennadel.com/blog/4385-hotwire-turbo-drive-requires-failed-form-submissions-to-return-a-non-2xx-status-code.htm

1/9/23 - Blog - Maria Jose Herrera - CBWIRE 2.2 Released

We're excited to announce the release of CBWIRE 2.2. This release includes several added enhancements, such as new lifecycle hooks and simplified Turbo Drive integration. We changed the previous lifecycle hook of mount() to onMount() to be consistent, and several bugs were squashed.
The docs have been updated also. https://cbwire.ortusbooks.com/
Enjoy!
https://www.ortussolutions.com/blog/cbwire-22-released

1/8/23 - Blog - Ben Nadel - Code Kata: Recursively Flattening A Deep Array In Lucee CFML

Yesterday, I looked at flattening an array in ColdFusion. That post was more a look at the available syntax options with a variadic function and less a look at the actual Array flattening algorithm. And, it only flattened to a single depth. As a fast-follow, I wanted to look at what it would take to recursively flatten a deep array, with nested array elements, in Lucee CFML.
https://www.bennadel.com/blog/4384-code-kata-recursively-flattening-a-deep-array-in-lucee-cfml.htm
 
1/7/23 - Blog - Ben Nadel - Iterating Over Function Arguments Using CFLoop In Lucee CFML

In my previous post on flattening arrays in ColdFusion, I mentioned that the arguments scope in a Function body acts as both an Array and a Struct. This is a truly great feature of ColdFusion; but, iterating over such a dynamic data structure can be confusing at times. Luckily, ColdFusion also gives us the highly dynamic CFLoop tag. We can use CFLoop to iterate over the arguments scope using either Array iteration or Struct iteration.
https://www.bennadel.com/blog/4383-iterating-over-function-arguments-using-cfloop-in-lucee-cfml.htm

1/7/23 - Blog - Ben Nadel - Code Kata: Flattening An Array In Lucee CFML

Yesterday, at InVision, I was writing an algorithm in which I needed to build several one-dimensional arrays. And, in some cases, I was using all simple values; but, in other cases, I was using a mixture of simple values and other arrays. To keep my calling code clean, I abstracted the logic into a flattenArray() method that would take N-arguments and then smoosh all of those arguments down into a single array. The method I created worked fine, but it just didn't look "right". I wasn't vibing it. As such, I wanted to step back and try creating a flatten method with a variety of different syntaxes to see which strikes the right balance between simplicity, elegance, and readability (which is all highly subjective).
https://www.bennadel.com/blog/4382-code-kata-flattening-an-array-in-lucee-cfml.htm

1/6/23 - Blog - Ben Nadel - Hotwire Turbo Drive Doesn't Work With .cfm Page Extensions

Over the holiday break, I had this grand vision of building a ColdFusion site and then adding Hotwire (HTML Over The Wire) to it as a progressive enhancement. Unfortunately, it took me all of break just to get the ColdFusion parts written (I chose a poor problem space). And then, when I finally installed Hotwire and tried to use Turbo Drive, nothing happened. Every link and form submission lead to a full page refresh. After a few hours of Googling, I discovered that Hotwire Turbo Drive doesn't work with .cfm file extensions.
https://www.bennadel.com/blog/4381-hotwire-turbo-drive-doesnt-work-with-cfm-page-extensions.htm

1/5/23 - Tweet - Lucee Script Runner

@BenNadel just listening to @WorkingCodePod, reckon you should try my github.com/lucee/script-r… for your CI with github, it's so f-ing easy
https://twitter.com/zackster/status/1611050555308232704
https://twitter.com/zackster


CFML Jobs

Several positions available on https://www.getcfmljobs.com/
Listing over 39 ColdFusion positions from 25 companies across 22 locations in 5 Countries.


1 new jobs listed this week

Full-Time - ColdFusion Developer at Remote - United Kingdom
Jan 03
https://www.getcfmljobs.com/jobs/index.cfm/united-kingdom/ColdFusion-Developer-at-Remote/11543


Other Job Links

ForgeBox Module of the Week

CommandBox dotenv
Storing secrets in source-controlled files is a bad idea, but we still need some way to provide these sensitive credentials or configuration values to our projects. This problem is exacerbated in development environments where we are running multiple servers at once. This package let's us solve this problem for servers started with CommandBox.

https://www.forgebox.io/view/commandbox-dotenv

VS Code Hint Tips and Tricks of the Week

FilDir - Filtered Directories
Filtered Directories (Fildir) helps you focus on just the parts of your monorepo that you care about. Fildir creates a virtual workspace root in the File Explorer, listing only the directories (and their subdirectories and files, recursively) that match one of a set of prefixes you specify. Adding a new prefix is simple: right click on a directory or file in the File Explorer and select "Add as Filter Prefix". Removing a prefix is also easy, accessible from either the Fildir panel, Settings UI, or in the settings.json file.

https://marketplace.visualstudio.com/items?itemName=diggyk.fildir&ssr=false#overview


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


Don’t forget, we have Annual Memberships, pay for the year and save 10% - great for businesses.

  • 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
  • All Patreon supporters have their own Private Channel access BoxTeam Slack
  • Live Stream Access to streams like “Koding with the Kiwi + Friends” and Ortus Software Craftsmanship Book Club
https://community.ortussolutions.com/

Top Patreons ( admirable )
  • John Wilson - Synaptrix
  • Tomorrows Guides
  • Jordan Clark
  • Gary Knight
  • Mario Rodrigues
  • Giancarlo Gomez
  • David Belanger 
  • Dan Card
  • Jeffry McGee - Sunstar Media
  • Dean Maunder
  • Nolan Erck 
  • Abdul Raheen
You can see an up to date list of all sponsors on Ortus Solutions' Website
https://ortussolutions.com/about-us/sponsors

Thanks everyone!!!



★ Support this podcast on Patreon ★

Switch to Modernize or Die ® Podcast - SoapBox Edition - Switch to Modernize or Die ® Podcast - Conference Edition

Powered by

Music from this podcast used under Royalty Free license from SoundDotCom and BlueTreeAudio

© 2019 Ortus Solutions