Modernize or Die® - CFML News for November 12th, 2019

Gavin and Brad host this weeks episode. We discuss Adobe's prelease announcement of ColdFusion 2020 and how you can join. We discuss the release of Quick v2.4.0, Lucee Redis Extension v1.4.0 and ForgeBox v4.8.0. We also tell you how you can get all of the Videos from CFCamp that happened in Germany in October. We announce a Seattle User Group meeting ( in person and online ) as well as the next Online #ColdFusion Meetup. We discuss Into the Box LATAM (LatinoAmerica) being held in San Salvador, El Salvador December 4th, presented in Spanish. We talk about CF Summit India in December and Into the Box 2020 in Houston in May, including the Call for Speakers, which is now open. We spotlight a lot of great blog posts, too many to list, so listen to the show. We show off our ForgeBox module of the Week, Host Header. Our VS Code Hint Tip and Trick of the week is the Spelling Checker made by Street Side Software. We finish the podcast by thanking our Patreon supporters. For the show notes - visit the website https://cfmlnews.modernizeordie.io/episodes/modernize-or-die-cfml-news-for-november-12th-2019 Music from this podcast used under Royalty Free license from SoundDotCom https://www.soundotcom.com/ and BlueTreeAudio https://bluetreeaudio.com

Watch video version on YouTube https://youtu.be/crlfzXcW-28

2019-11-12 Weekly News - Episode 27

Hosts:
Gavin Pickin - Software Consultant for Ortus Solutions
Brad Wood - Lead architecture for Ortus Solutions



News and Events


Adobe ColdFusion 2020 Pre-release announced

We are excited to announce that we will soon open up the pre-release for the next major version of ColdFusion. To express interest in this pre-release, please fill up this survey.
https://www.surveymonkey.com/r/56WXYDQ
The next version of ColdFusion is a game changing release for ColdFusion with significant focus on modernization of the platform, cloud integration and support for microservice architectures.
https://coldfusion.adobe.com/2019/11/announcement-pre-release-next-major-version-coldfusion/


Quick v2.4.0 released

Apply custom setters when hydrating from the database.
Query scopes can return any value.  This allows you to use scopes to perform query functions and return values.  (If you do not want to return a custom value, return the QueryBuilder instance or nothing.)
Improve error messages for not loaded entities.
Return the correct memento with accessors on.
https://quick.ortusbooks.com/whats-new
https://www.forgebox.io/view/quick


Lucee Redis Extension v1.4.0 released

We are very excited to bring you another release for our Redis Lucee Extension. This is a minor release and it sports quite a few updates, improvements and Lucee compatibility updates.
https://www.ortussolutions.com/blog/redis-lucee-v140-extension-released


ForgeBox v4.8.0 released

Today we are pleased to announce a minor release for our FORGEBOX suite of products to version 4.8.0. This release includes lots of fixes and some great additions for your development needs for all Editions: Community and Enterprise.
https://www.ortussolutions.com/blog/forgebox-v480-released


CF Camp Videos released
The recordings of the #cfcamp sessions are available via videos.2019.cfcamp.org for a really small fee. Attendees will get an email with a personal link to the videos (included in the ticket).
Price: $90.00
http://videos.2019.cfcamp.org/


November Seattle ColdFusion​ User Group meeting
November Seattle ColdFusion​ User Group meeting is Wednesday, Nov. 13 at 6pm at WeWork in Bellevue, WA (Online ZOOM will start at 6:30pm)
This month’s meeting includes presentations on the following topics:
– Using Adobe ColdFusion Builder 2018 to Debug your ColdFusion Application by Vinay Jinda
More information about the Seattle CFUG at www.SeattleCFUG.org
RSVP at https://www.meetup.com/Seattle-ColdFusion-User-Group/events/265703602/


Online #ColdFusion Meetup - "Web Acceleration to the Rescue", with Bruno Zugay
Thu Nov 14, 6p US ET
Caching is one of the best ways to maximize the output of your application. However, most developers don’t look past their application code and object caching for other available options. Varnish Cache can increase the performance of your website, while at the same time significantly reduce the load on your server. We’ll go over how it works and demonstrate how you can use it on your site. Whether you are using ColdFusion on Windows or Linux, whether you are running IIS or Apache, join us to find out how Varish can help.
https://www.meetup.com/coldfusionmeetup/events/266300180/

Did you miss "SQL, I learned enough to break everything" with Dave Ferguson
https://www.meetup.com/coldfusionmeetup/events/266110524/



Conferences


Into the Box LATAM (LatinoAmerica)

Dec 4, 2019 - San Salvador, El Salvador
1 Day - 1 Track - Presented in Spanish
Speakers include: Luis Majano, Edgardo Cabezas, Jorge Reyes, Jon Clausen, Esmeralda Acevedo, Stephanie Monge, Javier Quintero, Luis Vega
Lots of great content, I had to use google translate to know what they were talking about.
https://latam.intothebox.org/
Tickets available now. https://www.eventbrite.com/e/into-the-box-latinoamerica-2019-tickets-76371335721


CF Summit India

Dec 7, 2019 - Bangalore
The ColdFusion India Summit is a confluence of everything in the realm of web applications. If you develop web applications, this is the place to be. For designers, developers, strategists and thought leaders, the ColdFusion India Summit provides the perfect forum to exchange ideas, inspiration and experiences.
In addition to opportunities to interact with ColdFusion experts, domain leaders and peers, get to learn about the latest technologies, techniques, and strategies to rapidly build and successfully deliver web applications to the market. With the web applications scenario evolving rapidly, explore how ColdFusion is driving change and how you can propel this dynamism.
Registration is complimentary.
https://cfindiasummit.attendease.com/

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 now 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.
Early bird tickets will be available close to the end of the year.
Call for Speakers: https://www.papercall.io/itb2020
Buy 2019 Videos: https://vimeo.com/ondemand/itb2019/



Blogs, Tweets and Videos of the Week


Blog - Ben Nadel - ColdFusion Performance Experiment: Caching Per-Application Settings In Lucee CFML 5.3.3.62
At InVision, the amount of work that we do in the Application.cfc ColdFusion framework component is a bit staggering. Not only are we setting up all of the Lucee CFML mappings, custom paths, data-sources, SMTP servers, and cache configurations, we're also defining hundreds of FW/1 routes. The pseudo-constructor of the Application.cfc gets evaluated on every single page request; which means, we're doing the aforementioned work on every single page request. Which got me thinking: can we just cache these settings and re-use them? To explore the potential performance implications of caching, I put together a very simple set of load-tested demos in Lucee CFML 5.3.3.62.
Tweet - In a #ColdFusion application, the Application.cfc defines the per-app settings on every request. As such, I wanted to see if there would be a performance improvement by caching the settings in #Lucee #CFML. TL;DR it doesn't matter. Just keep it simple
https://www.bennadel.com/blog/3719-coldfusion-performance-experiment-caching-per-application-settings-in-lucee-cfml-5-3-3-62.htm


Blog - Ben Nadel - Confusion Over this.mappings And expandPath() Not Working In Lucee CFML 5.3.3.62
So, I've spent the last 3-hours this morning trying to understanding why my this.mappings configuration in my Application.cfc ColdFusion component "wasn't working" in Lucee CFML 5.3.3.62. After much trial-and-error and many Google searches, it seems that the evaluation of the this.mappings paths gets "confused" (depending on how you look at it) if you attempt to reference a directory that does not yet exist. To be honest, I had no idea that the physical file-system had any impact whatsoever on the evaluation of CFML mappings; so, it didn't occur to me that a folder had to exist before I tried to reference it in a mapping. That said, I wanted to record my journey here in case anyone else stumbles over the same issue in Lucee CFML 5.3.3.62.
https://www.bennadel.com/blog/3718-confusion-over-this-mappings-and-expandpath-not-working-in-lucee-cfml-5-3-3-62.htm


Blog - Adobe ColdFusion Blog - Rakshith Naresh - Announcement – Pre-release for the next major version of ColdFusion
We are excited to announce that we will soon open up the pre-release for the next major version of ColdFusion. To express interest in this pre-release, please fill up this survey
The next version of ColdFusion is a game changing release for ColdFusion with significant focus on modernization of the platform, cloud integration and support for microservice architectures.
https://coldfusion.adobe.com/2019/11/announcement-pre-release-next-major-version-coldfusion/


Blog - Ben Nadel - Superficial Performance Comparison Between ColdFusion Query-of-Queries (QoQ) And Array Functions In Lucee CFML 5.3.3.62
a few people on Twitter asked me if ColdFusion Query-of-Queries (QoQ) are actually slower than Array-based collation. Instinctually, I think it would make sense that Array-based methods are faster since they don't have parse SQL statements; and, their execution is less abstract. But, instincts are not nearly as interesting as numbers. So, I wanted to run a superficial performance comparison between a ColdFusion Query-of-Query example and an Array-based approach that attempts to gather the same data in Lucee CFML 5.3.3.62.
https://www.bennadel.com/blog/3717-superficial-performance-comparison-between-coldfusion-query-of-queries-qoq-and-array-functions-in-lucee-cfml-5-3-3-62.htm


Blog - Ben Nadel - Replacing ColdFusion Query-of-Query (QoQ) INNER JOIN And LEFT OUTER JOIN With Array Functions In Lucee CFML 5.3.3.62
Earlier this week, I took a look through the InVision codebase, pulled-out several ColdFusion Query-of-Query (QoQ) examples, and then demonstrated how those query-of-queries could be re-implemented using Array functions in Lucee CFML. I wanted provide a quick follow-up post about re-implementing INNER JOIN and LEFT OUTER JOIN queries using Array functions in Lucee CFML 5.3.3.62.
https://www.bennadel.com/blog/3716-replacing-coldfusion-query-of-query-qoq-inner-join-and-left-outer-join-with-array-functions-in-lucee-cfml-5-3-3-62.htm


Tweet - Brad Wood - Foundeo has created safeXMLParse
In light of recent XML security issues like parsing external entities, @foundeo has created a new safeXMLParse() function you can use instead which is immune to malicious XML. https://www.forgebox.io/view/safexmlparse #CFML #ColdFusion #infosec
https://twitter.com/bdw429s/status/1192842097583370243
https://twitter.com/bdw429s


Blog - Adobe ColdFusion Form - Charlie Arehart - How to implement a special hotfix that Adobe may give you to fix a CF update
If you’ve been told by Adobe to apply a special hotfix file (with a name like hf-something.jar), to fix a problem with a recent CF update, just be very careful how you proceed. Either of a couple of wrong moves could leave you feeling “the problem was not fixed” or worse, totally new “inexplicable” problems could occur that “no one else has reported”. Just follow these steps, for safe “update fixing”.
https://coldfusion.adobe.com/2019/11/how-to-implement-a-special-cf-hotfix/


Tweet - Michaela Light - 100th episode of CF Alive to be released soon.
Thanks @southofshasta for a great 100th episode of the CF Alive podcast. All about the CF Alive revolution. #CFML #ColdFusion #CFAlive
Out soon at https://teratech.com/podcast


Tweet - James Moberg - Default arguments ColdFusion bug
I recall another #ColdFusion bug regarding default arguments that negatively impacted us.  "remove=no" is identified as the default for cfmailparam file. During a past ACF update, ommitting this argument caused files to be deleted. We now always set it. #FooledOnce
https://twitter.com/gamesover/status/1192812230846357507
https://twitter.com/gamesover


Tweet - James Moberg - duplicate headers override
I noticed an unexpected result when reading an XLSX file using #ColdFusion CFSpreadsheet. If multiple headers accidentally share the same value, the query will contain multiple columns with the same name & the values will all be whatever was in the first named column. #cfml
https://twitter.com/gamesover/status/1192152906629287938
https://twitter.com/gamesover/


Tweet - Brad Wood - Null without Full Null support
A little trick in @lucee_server for creating a null value (without full null support on) is the nullValue() BIF instead of javacast. Of course, full null support gives you the "null" keyword. #CFML
https://twitter.com/bdw429s/status/1192080849627422720
https://twitter.com/bdw429s


Blog - Ben Nadel - Safe Navigation Operator Works In Comparison Expression Even When NULL In Lucee CFML 5.3.3.62
While there is a version of the Lucee CFML syntax that treats null as a first-class citizen, null has, historically, been a tricky value to work with in the ColdFusion world. As such, my instinct is always to treat a potentially null value with kid-gloves. That said, I discovered this morning that the Safe Navigation operator will work properly in a comparison expression, even if the evaluation of the operand results in a null value in Lucee CFML 5.3.3.62.
What I am finally beginning to understand is that null values aren't a problem in ColdFusion - it's null references that are problematic
https://www.bennadel.com/blog/3715-safe-navigation-operator-works-in-comparison-expression-even-when-null-in-lucee-cfml-5-3-3-62.htm


Tweet - Yogesh Mathur - Who’s going to CF Summit India
After awesome #zerotohero with @lmajano, We ( @LucidSolutions_ ) are ready for another conference, Adobe ColdFusion India Summit 2019 [cfindiasummit.attendease.com] at @Adobe Bangalore office on 7th Dec 2019. Who else is going to be there? Let's meet.
#coldfusionconference, #CFML
https://twitter.com/yogeshmathurjod/status/1191979064959143936
https://twitter.com/yogeshmathurjod/


Tweet - Brad Wood - CommandBox on Lucee 5.3 and Java 11
After way WAY too long, the snapshot builds of CommandBox are running Lucee 5.3, java 11, a shiny new Runwar build, updated JLIne & JGit libs and more. If it holds, I'll push for an RC release.  Please give it a looksy: https://downloads.ortussolutions.com/#/ortussolutions/commandbox/4.9.0-alpha/ #CFML #ColdFusion
https://twitter.com/bdw429s/status/1191865676555866112
https://twitter.com/bdw429s



CFML Jobs

Several positions available on https://www.getcfmljobs.com/


ColdFusion Developer for City & Guilds Group in London, UK
Jon Joyce on Twitter - City and Guilds is hiring 2 #coldfusion developers in London - Plus side is you get to work with me!
https://apply.careers.cityandguildsgroup.com/vacancy/coldfusion-developer-402359.html


Paul Klinkenberg @frinky - Looking for a Dutch #Lucee / #Coldfusion dev to join my team @FeedbackCompany!
Exciting work, great tech, fast-growing scale-up, Utrecht CS, splendid view! Check it out:
https://www.linkedin.com/jobs/view/1546310471/?refId=wUsBZGybQvOku2GBKV5KkQ%3D%3D


ColdFusion Developer for City & Guilds Group in United Kingdom,  United Kingdom
Do you enjoy investigating and solving technical issues, developing enterprise level applications, working with innovative technologies and providing expert...
https://www.getcfmljobs.com/jobs/index.cfm/united-kingdom/ColdFusion-Developer-at-United-Kingdom/10971


Senior ColdFusion Developer for Information Analysis in United States,  United States
Senior ColdFusion Developer needed as part of a mainframe migration team. Assist with the setup and configuration of the ColdFusion...
https://www.getcfmljobs.com/jobs/index.cfm/united-states/Senior-ColdFusion-Developer-at-United-States/10970


ColdFusion Developer for Marcus Donald People in London,  United Kingdom
Marcus Donald are currently recruiting for a ColdFusion Developer to join an Education client based in Central London. Experience with LESS or SCSS…
https://www.getcfmljobs.com/jobs/index.cfm/united-kingdom/ColdFusion-Developer-at-London/10969



ForgeBox Module of the Week

Hostname Header by Gavin Pickin

This module determines the servers internal host name, and then creates a response header for you. The module sets a header called x-server-hostname.

This module is ideal for clustered setups, or docker swarms, where the code could be running on one of many servers. In Docker, can you search for this hostname in portainer or via the CLI, making debugging much easier

box install hostnameHeader

Last Update: Mar 28 2018 11:11 AM | Downloads: 0 | Installs: 4,202 | Views: 411 | Versions: 7

https://www.forgebox.io/view/hostnameHeader




VS Code Hint Tips and Tricks of the Week

Spelling Checker for Visual Studio Code

Street Side Software - 849,821 installs - 4.5+ stars
A basic spell checker that works well with camelCase code.
The goal of this spell checker is to help catch common spelling errors while keeping the number of false positives low.

https://marketplace.visualstudio.com/items?itemName=streetsidesoftware.code-spell-checker



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.

If we’re getting your name wrong please let us know.

Andrew  Davis
Brian  White
Carl  Von Stetten
Da Li
Dan  Card
Daniel Garcia
David  Belanger
Didier  Lesnicki
Don  Bellamy
Erick Hoffman
Gary  Knight
Jan  Jannek
Jeremy Adams
John  Farrar
Jordan Clark
Joseph  Lamoree
Laksma  Tirtohadi
Matthew Clemente
Richard  Herbert
Samuel  Knowlton
Scott Steinbeck
VJ
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

Powered by

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

© 2019 Ortus Solutions