Modernize or Die® - CFML News for December 1st, 2020 - Episode 81

Eric and Gavin host this weeks episode. They discuss Into the Box LATAM happening this week. They discuss Advent of Code and how you can participate. They discuss this weeks Online CF Meetup on progressive webapps, and remind you about Seattle CFUG's rescheduled Thinkific API is coming to you December 9th. They remind you of several security vulnerabilities and patches, including Lucee and TestBox. They give you an update on a post on the Sentry site, to get CFML added into the language lists. They give you an roundup of CFCasts Content Updates... including 2 more qb8 videos and announce the ColdBox Zero to Hero series going live this week. They discuss AWS re:Invent, Into the Box Latam conference, now offering english and spanish as well as Google’s DevFest Silicon Valley. They discuss how the Adobe ColdFusion Certification is still available online. They also discuss Pete Freitag from Foundeo's popular training workshop "Writing Secure CFML" being offered in December, including an early bird price. 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, as well as a Senior CFML position available at Ortus Solutions. They show off the ForgeBox module of the Week, CommandBox CFC to Markdown Docs by Matthew Clemente - A CommandBox custom command to generate markdown documentation from your CFCs. This week's VS Code Tip of the week is vscode-icons by VSCode Icons Team - Bring icons to your Visual Studio Code. Lots and Lots of ICONS For the show notes - visit the website https://cfmlnews.modernizeordie.io/episodes/modernize-or-die-cfml-news-for-december-1st-2020-episode-81 Music from this podcast used under Royalty Free license from SoundDotCom https://www.soundotcom.com/ and BlueTreeAudio https://bluetreeaudio.com
2020-12-01 Weekly News - Episode 81

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

Hosts:

Gavin Pickin - Software Consultant for Ortus Solutions
Eric Peterson - Software Consultant for Ortus Solutions

Thanks to our Sponsor - Ortus Solutions

Into the Box Latam Dec 3rd and 4th - English and Spanish
CFCasts is releasing new Free and Paid content every week


Patreon Support

We have 33 patreons providing 57% 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


ITB Latam is this week and is now FREE

December 3-4th
Live Virtual Conference in Spanish and English!!!
Price: FREE- in the spirit of the holidays
https://latam.intothebox.org/
https://www.ortussolutions.com/events   

Short Videos about the Conference with Jorge from Ortus and Michela from TeraTech
English: https://www.youtube.com/watch?v=F-Kt89ggAek
Spanish: https://www.youtube.com/watch?v=2rEIZysqIMo


Advent of Code 2020

Advent of Code is an Advent calendar of small programming puzzles for a variety of skill sets and skill levels that can be solved in any programming language you like. People use them as a speed contest, interview prep, company training, university coursework, practice problems, or to challenge each other.
You don't need a computer science background to participate - just a little programming knowledge and some problem solving skills will get you pretty far. Nor do you need a fancy computer; every problem has a solution that completes in at most 15 seconds on ten-year-old hardware.

https://adventofcode.com/2020


Coldfusion Online Meetup - "How to build Progressive Web Apps", with John Wargo

Thursday Dec 3 at 12pm US Eastern Time, UTC-5
Progressive Web Apps leverage modern browser capabilities to deliver additional capabilities for developers and app users. These web apps deliver capabilities that make a web app 'feel' more like traditional and mobile apps, providing offline capabilities (like the ability to run when offline or to perform background synchronization), receive push notifications, and installation on the system. In this session, John M. Wargo, the author of Pearson's Learning Progressive Web Apps (https://learningpwa.com) will introduce you to PWAs and show you how to build them.
https://www.meetup.com/coldfusionmeetup/events/274867028/


RESCHEDULED - Seattle CFUG - Hands-on deep-dive into interacting with the Thinkific API.

Wednesday, December 9th, 2020
6:00 PM to 7:30 PM PST
RESCHEDULED FROM Wednesday, November 11, 2020
Hosted by - William Frankhouser and Leon O'Daniel
This meeting features an hands-on deep-dive into interacting with the Thinkific API.
Thinkific is one of the top platforms for online course delivery. This meetup builds upon the concepts shared at the October 2020 Seattle ColdFusion User Group Meeting to provide a hands-on experience interacting with the Thinkific API.
https://www.meetup.com/Seattle-ColdFusion-User-Group/events/274050264/


ICYMI - Mid Michigan CFUG Meeting - Going Serverless with Nicholas Kwiatkowski

Presented November 18th, 2020 on Microsoft Teams
Recording: http://www.mmcfug.org/index.cfm/presentations/mmcfug-goes-serverless/?fbclid=IwAR1JJcDt_Q7gsn17x3b6nmgEC6M-eCSSXyCiIgZEt1YgDaqJzufRFTM1jvM


ICYMI - Security Vulnerability Alert - Lucee

We are aware of a potential security vulnerability related to the Lucee Admin. Details of how to exploit this vulnerability will be made public on December 5th, 2020 by a third party, so we are alerting Lucee users to address this potential issue now.
If your Lucee Admin is already locked down, this is not an issue. To lock down your admin, follow the recommendations in the Lucee Lockdown Guide
In addition, we strongly recommend updating to one of the following stable releases which have been patched to address the vulnerability
https://dev.lucee.org/t/lucee-vulnerability-alert-november-2020/7643


ICYMI TestBox v4.2 Released! - SECURITY UPDATE

We are excited to announce a new minor version release of TestBox version 4.2.x. To install just use CommandBox: install testbox --saveDev or to update your TestBox installation update testbox.
This release includes two important security updates just in case you have deployed TestBox or your tests to production (TESTBOX-294 and TESTBOX-293). Please note, that you should NEVER deploy TestBox and your tests to production. It is a library for development purposes and it has no purpose in being deployed to production servers.
In addition to updating your Testbox installation, you need to update any test browser files that may be in your tests folder. The current version of the Testbox test browser can be found here: https://github.com/Ortus-Solutions/TestBox/blob/development/test-browser/index.cfm
You can avoid installing testbox in production by using the install --production CommandBox command.
https://www.ortussolutions.com/blog/testbox-v42-released


Help us get CFML listed on Sentry.io

Giancarlo Gomez started a thread on Sentry.io to get CFML on the Create Project view. As he mentions in the thread, we have a couple of Sentry plugins available, one he created, and one by Brad.
Let’s get behind this thread, like, reply, and make a little noise for CFML.
Upate: We are now listed on the Community List - no icon yet.
https://forum.sentry.io/t/adding-coldfusion-as-a-platform/11875



CFCasts Content Updates

Our ColdBox Zero to Hero workshop videos were uploaded, just waiting on Gavin’s Intro video and they’ll be released - Workshop is broken down into 25+ videos

What’s New in qb8
- Custom Inferred Numeric SQL Types
- Simple Paginate
Send your suggestions at https://cfcasts.com/support



Conferences and Training

AWS re:Invent

NOV. 30 – DEC. 18, 2020
Free
Amazon’s Premium Conference is also virtual, and a free 3-week event:
https://reinvent.awsevents.com/


ITB Latam

December 3-4th
Live Virtual Conference in Spanish and English!!! ( and now Portuguese too )
Price: FREE
https://latam.intothebox.org/
https://www.ortussolutions.com/events

Short Videos about the Conference with Jorge from Ortus and Michela from TeraTech
English: https://www.youtube.com/watch?v=F-Kt89ggAek
Spanish: https://www.youtube.com/watch?v=2rEIZysqIMo


Google’s DevFest Silicon Valley.

Saturday, December 5, 2020
10:00 AM to 2:00 PM PST
There will be 2 tracks over just 4 hours, with 4 sessions in each track and opening/closing remarks. Short and sweet, and the topics are ones that CFers may find interesting.
https://www.meetup.com/gdg-silicon-valley/events/274388593/


ColdFusion Security Training by Foundeo / Pete Freitag

Writing Secure CFML

A hands-on CFML / ColdFusion Security Training class for developers. Learn how to identify and fix security vulnerabilities in your ColdFusion / CFML applications.
When: Thursday December 10, 2020 @ 11am-2pm & Friday December 11 @ 11am-2pm
(Eastern Standard Time, UTC -5) - 6 hours in total.
Where: Online / Web Conference
Who: Taught by Pete Freitag
Cost: $600 - $475 (Early Bird Pricing through Dec 1st)
https://foundeo.com/consulting/coldfusion/security-training/


Adobe ColdFusion Certification now available Online

Adobe Certified Professional: Adobe ColdFusion is an industry-leading certification program from Adobe, for ColdFusion developers. The course consists of 50+ online videos and is designed for professionals who have basic to advanced level proficiency in any computer language and basic understanding of how web pages work. Successfully passing an assessment test at the end of the program will reward participants with a badge and certificate from Adobe.

Introductory Offer: $499

Blog: https://coldfusion.adobe.com/2020/07/coldfusion-certification-online-now/
Register: https://www.adobe.com/products/coldfusion-family/certificate.html


More conferences: https://confs.tech/



Blogs, Tweets and Videos of the Week

Blog / Video - TeraTech - Into The Box LatAm 2020 Virtual Conference – Free to Register!
Find out more about Into the Box LatAM, including 2 videos where Jorge Reyes from Ortus Solutions discusses the conference with Michela Smith from TeraTech.
https://teratech.com/into-the-box-latam-2020-virtual-conference-free-to-register/


Blog - Matthew Clemente - TIL: The Timezone parameter in CFML Date/Time Functions
The applications I’ve built up to this point haven’t needed to account for time zones (and for that I consider myself fairly fortunate), which is probably one of the reasons that I only just discovered that ColdFusion’s date/time functions can accept a timezone parameter.
https://blog.mattclemente.com/2020/11/30/til-cfml-datetimeformat-timezone.html


Blog - Wil De Bruin - Using bCrypt in cbsecurity
In a previous post I explained why bCrypt is a good choice for hashing your passwords. In this post I will show were you can hash and check your passwords: in your handlers, in a service layer or in some entity model. When using cbsecurity I will show you why it fits best in your service layer or entity model.
by installing the module some mixin helpers are created so you can just call bCryptHash() or bCryptCheck().
https://shiftinsert.nl/using-bcrypt-in-cbsecurity/


Blog - Wil De Bruin - Cfcookie or cookieStorage?
Coldbox has the cbstorages module which can be used as an API for accessing persistent storage such as cookie, session, application, cache and more. The question is: why should I use such storage if there is cfcookie or something simple as as session struct?
https://shiftinsert.nl/cfcookie-or-cookiestorage/


Blog - Lucee - Lucee Vulnerability Alert - November 2020
We are aware of a potential security vulnerability related to the Lucee Admin. Details of how to exploit this vulnerability will be made public on December 5th, 2020 by a third party, so we are alerting Lucee users to address this potential issue now.
https://dev.lucee.org/t/lucee-vulnerability-alert-november-2020/7643


Blog - ndubey - ColdFusion Portal - Immediately Invoked Function Expressions
An Immediately Invoked Function Expression is a good way at protecting the scope of your function and the variables within it. The term ‘scope’  basically just means where it can be accessed from. For example, if you were to add two numbers and log to console, you could do it use UDFs or closures as per CF 2018.
https://coldfusion.adobe.com/2020/11/immediately-invoked-function-expressions/


Blog - ashuspeed - ColdFusion Portal - Case Sensitive Structs
This Blog post contains details about Case Sensitive Structs, a functionality that has been implemented in Project Stratus (ColdFusion 2021) Release.
https://coldfusion.adobe.com/2020/11/case-sensitive-structs/


Blog - ashuspeed - ColdFusion Portal - String as Collections
This Blog post describes String as Collections. Strings are being treated as a sequence of Characters and so operations like ArrayAccess/Slicing and Member functions can be applied on a String Object.
https://coldfusion.adobe.com/2020/11/string-as-collections/


Blog - ashuspeed - ColdFusion Portal - Labelled Loops
This post contains the details about Labels support in Loops for break and continue construct.
https://coldfusion.adobe.com/2020/11/labelled-loops/


Blog - saurabhgupta - ColdFusion Portal - Using DynamoDb in Coldfusion 2021
Dyamodb provides a very easy, ready to go storage solutions for your applications. Amazon DynamoDB is a key-value and document database that delivers single-digit millisecond performance at any scale. It’s a fully managed, multi-region, multi-active, durable database for internet-scale applications.
https://coldfusion.adobe.com/2020/11/using-dynamodb-coldfusion-2021/


Blog - ashuspeed - ColdFusion Portal - Strict Equality/In-Equality Operator and SaveContent New Syntax
Object Comparison is one of the fundamental concepts in any language. ColdFusion also have many operators and functions to do object Comparison. While this has been the case, there were some problems faced by ColdFusion developers while comparing two objects viz true/1/”yes” means the same thing and so while trying to compare these values against each other, it would always return true.
SaveContent has been in the ColdFusion Mark up Language and is widely used to save the generated content inside a block to a variable. However the syntax was old and redundant due to which it has been revamped.
https://coldfusion.adobe.com/2020/11/strict-equality-equality-operator-savecontent-new-syntax/


Blog - ashuspeed - ColdFusion Portal - Spread and Rest Operators
Operators define a quick way of implementing complex functionality with a short concise easy to use syntax. ColdFusion exposes multiple operators to ease out the complex operations. With this objective in mind, we have introduced the Spread and Rest Operators
https://coldfusion.adobe.com/2020/11/spread-rest-operators/


Blog - TeraTech - Slow ColdFusion Applications May Ruin Your Business (3 Steps to Prevent It)
Waiting for your device to make progress as it tries to load an app or site. Delays are the death knell of life in the tech world and cause major havoc to your company’s bottom line.
Does this sound familiar for all the wrong reasons?
https://teratech.com/slow-coldfusion-applications-may-ruin-your-business-3-steps-to-prevent-it/


Blog - Ben Nadel - Using String Literals In Date / Time Formatting In Lucee CFML 5.3.7.47
A few weeks back, I took a look at the formatDate() function in Angular 10. In that post, I demonstrated that the date mask used by the formatDate() function could include escaped string literals that would be output as-is without being interpolated. After that post, I wondered if the same thing could be done in Lucee CFML. It doesn't look like it works in dateFormat() or timeFormat(). But then, I stumbled upon this Adobe post by David Byers. In it, he demonstrated that string literals do work in the dateTimeFormat() function. I rarely use the dateTimeFormat() function, so I wanted to try this for myself in Lucee CFML 5.3.7.47.
https://www.bennadel.com/blog/3930-using-string-literals-in-date-time-formatting-in-lucee-cfml-5-3-7-47.htm


Lucee Ticket - Zac Spitzer - add array like key functions/methods for ordered structs
As Ordered structs are like rather like arrays, they should have some array like methods for working with keys
https://luceeserver.atlassian.net/browse/LDEV-3162


Blog - Charlie Arehart - Breaking change in CF2021, new date format mask of D may be serious problem for old code
Consider this fragment, which could exist in similar form in millions of CFML templates:
dateformat("11-24-20","MM-DD-YY")
See anything wrong? Probably not. It will indeed "work fine" in CF2018 and before, producing 11-24-2020, as most would expect.
But that same code in CF2021 will produces instead 11-329-2020, which virtually no one would expect! Because D now means "day in year". It's a Java-standard datemask, but until now CF didn't complain if you used D. It treated it like d.
So yeah, this seems a huge deal!
https://www.carehart.org/blog/client/index.cfm/2020/11/24/breaking_change_in_cf2021_dateformat_D_vs_d


CFML Jobs

Several positions available on https://www.getcfmljobs.com/
Listing over 51 ColdFusion positions from 34 companies across 27 locations in 5 Countries since July 1st

6 new jobs this week.

Freelance - ColdFusion gig at WFH - India
Posted Dec 01
https://www.getcfmljobs.com/viewjob.cfm?jobid=11143

Full-Time - ColdFusion Developer - ColdFusion 2016+,CFML,Bootstrap,Coldbox, Fusebox  - Bengaluru, Karnataka,  India
Posted Nov 28
https://www.getcfmljobs.com/jobs/index.cfm/india/ColdFusion-Developer-ColdFusion-2016CFMLBootstrapColdbox-Fusebox-at-Bengaluru-Karnataka/11142

Full-Time - ColdFusion Developer -ColdFusion Developer - ColdFusion 2016+,CFML,Bootstrap,Coldbox, Fusebox - Bengaluru, Karnataka,  India
Posted Nov 27
https://www.getcfmljobs.com/jobs/index.cfm/india/ColdFusion-Developer-ColdFusion-2016CFMLBootstrapColdbox-Fusebox-at-Bengaluru-Karnataka/11141

Full-Time - Mura CMS ,ColdFusion , Lucee , Amazon ( AWS ) Developer - United Kingdom
Posted Nov 27
https://www.getcfmljobs.com/jobs/index.cfm/united-kingdom/Mura-CMS-ColdFusion-Lucee-Amazon-AWS-Developer-at-Swindon/11139

Full-Time - Sr. ColdFusion Developer at Moncton, NB - Canada
Posted Nov 25
https://www.getcfmljobs.com/jobs/index.cfm/canada/Sr-ColdFusion-Developer-at-Moncton-NB/11138

Full-Time - Sr. ColdFusion Developer at Moncton, NB - Canada
Posted Nov 25
https://www.getcfmljobs.com/jobs/index.cfm/canada/Sr-ColdFusion-Developer-at-Moncton-NB/11140


Ortus is hiring: Senior ColdFusion CFML Developer

At Ortus you will be:
- Modernizing web applications and helping companies move out of legacy hell
- Teaming up with ColdFusion Experts in order to solve complex web development problems.
- Testing and integrating new web technologies in order to create custom business implementations
- Pushed to innovate constantly and create new solutions to web development problems
- Leading project teams that deliver software that matters

- US Timezone availability is a must
- US Citizen or Resident or Work Visa is a must
https://www.ortussolutions.com/about-us/careers


ForgeBox Module of the Week

CommandBox CFC to Markdown Docs by Matthew Clemente

A CommandBox custom command to generate markdown documentation from your CFCs.
You will need CommandBox installed to use this tool. If you're a CFML developer not using CommandBox, see my note on the bottom.
From within the terminal, simply run the following command to install the module.
box install commandbox-cfc-to-markdown-docs
Once the module is installed, it uses the command: markdowndoc or the alias mdd.

Youtube Livestream: https://www.youtube.com/watch?v=R25ULWBwx6A
https://forgebox.io/view/commandbox-cfc-to-markdown-docs   



VS Code Hint Tips and Tricks of the Week

vscode-icons by VSCode Icons Team

Bring icons to your Visual Studio Code. Lots and Lots of ICONS
Once installed and after reloading vscode, you will be presented with a message to Activate the icons.
In case this doesn't happen, navigate to:
Linux & Windows => File > Preferences > File Icon Theme > VSCode Icons.
MacOS => Code > Preferences > File Icon Theme > VSCode Icons.

https://marketplace.visualstudio.com/items?itemName=vscode-icons-team.vscode-icons



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

Ben Nadel
Brett DeLine
Carl Von Stetten
Charlie Arehart
Da Li
Dan Card
Daniel Garcia
David Belanger
Didier Lesnicki
Don Bellamy
Edgardo Cabezas
Erick Hoffman
Gary Knight
Giancarlo Gomez
Jan Jannek
Jason Daiger
Jeff McClain
Jeremy Adams
Jonas Erickson
Jordan Clark
Joseph Lamoree
Kai Koenig
Laksma Tirtohadi
Mario Rodrigues
Matthew Darby
Matthew Clemente
Mingo Hagen
Patrick Flynn
Ross Phillips
Scott Steinbeck
Shawn Oden
Steven Klotz
Synaptrix
Yogesh Mathur

You can see an up to date list of all sponsors on Ortus Solutions' Website
https://ortussolutions.com/about-us/sponsors


★ 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