Modernize or Die® - CFML News for January 14th, 2020
Gavin and Brad host this weeks episode.They talk about CF Summit 2019 Vegas releasing more videos from the sessions on YouTube. The playlist has 16 videos already. They also remind you to sign up for Rakshith's upcoming Webinar this week on CF2020. They talk about Gavin and Michael Born's plan for a new Live Coding Series this Wednesday. They discuss deadlines for workshops and call for speakers for Into the Box 2020 in Houston in May, so try and submit your ideas, as well as the Super Early Bird tickets are now available. They also discuss some other conferences you should consider attending. They spotlight a lot of great blog posts, tweets, videos and podcasts, too many to list, so listen to the show. They show off our ForgeBox module of the Week, Matthew Clemente's 'smmrize' wrapper and this week's VS Code extensions, CFLint by popular demand. We finish the podcast thank our Patreon supporters For the show notes - visit the website https://cfmlnews.modernizeordie.io/episodes/modernize-or-die-cfml-news-for-january-14th-2020 Music from this podcast used under Royalty Free license from SoundDotCom https://www.soundotcom.com/ and BlueTreeAudio https://bluetreeaudio.com
Watch the video version on YouTube at https://youtu.be/DLPQlgCLS4A
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.
More conferences: https://confs.tech/
Blogs, Tweets and Videos of the Week
Blog - Ben Nadel - Strange MongoDB Error When Incrementing A Document Property In Lucee CFML 126.96.36.199
Yesterday, I ran into a really strange error when trying to increment a numeric value on an in-memory MongoDB document in Lucee CFML 188.8.131.52. Google didn't really provide any answers; so, I wanted to document the error here and share the work-around that I finally used.
Blog - Pete Freitag - List Logical Names from SQL Server bak file
When restoring a SQL Server database from a bak file you may need to know what the Logical Names of the storage files are in order to restore them. Here's how you can do it from a SQL statement:
Blog - Gavin Pickin - 30+ VS Code Hints Tips and Tricks of the Week from 2019 Modernize or Die® CFML News Podcast
VS Code is the hottest IDE out there, and the most asked question I get at every conference I attend is, "what VS Code extensions are you using?". Since I got this question so much, we decided to dedicate a portion of our CFML News Podcast to VS Code Hints, Tips and Tricks. We had 34 episodes in 2019, each with a VS Code hint tip or trick, so we wanted to give you a way to see all of them in one place, so here they are.
Blog - Ben Nadel - Using A Closure To Encapsulate Depth-First Tree Traversal In Lucee CFML 184.108.40.206
In my last couple of Lucee CFML posts, I've looked at using a while loop to recursively iterate over a tree structure without creating a deep (and expensive) call-stack. I've done this using both a breadth-first algorithm and a depth-first algorithm. In both cases, the algorithm for the traversal of the tree was tightly coupled to the way in which each tree-node was being consumed. This made it hard to reuse the traversal logic. As such, I wanted to try extracting the traversal itself, making it consumable with a closure or callback in Lucee CFML 220.127.116.11.
Tweet - James Moberg - Any #ColdFusion developers using the #jQuery formBuilder plugin?
Any #ColdFusion developers using the #jQuery formBuilder plugin? https://formbuilder.online/ (They have an #Angular version too.) It's a client-side builder; form structure & data saved in JSON format. I've been having to add various #CFML tweaks to workaround CF+JSON issues.
Tweet - James Moberg - ColdFusion SerializeJSON CustomSerializer vs JSONUtil
Is anyone using the #ColdFusion serializeJSON "useCustomSerializer" parameter? I considered using it, but framework only supports one (1) custom serializer. What if I want to use two? I prefer using @BenNadel JSONUtil CFC w/UDFs to simplify. #CFML #CodeICanView #NoBlackBox
Tweet - James Moberg - Asking for CFML support on Dev.to
Hey @ThePracticalDev I intend to post a lot of #ColdFusion articles on your platform. #CFML has been around since '95. I've been using it since '97. I noticed that using a #java tag resulted in an icon added to the share image. Could ColdFusion/CFML receive the same treatment?
Tweet- James Moberg - Whitelist IPs
I needed to whitelist many IPv4 & IPv6 CIDRs from my CDN/WAF provider using #ColdFusion. Here's an isIPInRange() UDF that was inspired by 4 different pre-existing #cfml solutions ow.ly/70fM50xRvuV (supports #regex rules too)
Blog - Ben Nadel - Repositories And Data Access Layers Can Have As Many Methods As You Find Helpful
When I was first learning about Abstractions in programming, one of the early patterns that I came across was the Data Access Layer (DAL), which attempted to hide the implementation details of the underlying data persistence mechanism. I believe that the Repository Pattern is a more specific type of Data Access Layer, relating to aggregate roots; however, I tend to use the two terms interchangeably to refer, generally speaking, to the "persistence abstraction".
Blog - Pete Freitag - Solved: Git Clone Large Repo Download Errors
When attempting to clone a large git repository over https, hosted on an on premise GitLab instance, I kept getting the error:
Blog - Ben Nadel - Passing isArray() Decision Function Does Not Ensure Member Methods In Lucee CFML 18.104.22.168
This post is primarily a note-to-self so I don't make this mistake again. But, the other day, when I was working on the memory-leak detector code for Lucee CFML, I ran into a fun edge-case having to do with Reflection-style programming. In that post, I used Lucee's Decision functions (ex, isArray(), isStruct(), isBinary()) in order to figure out how to generate a string-based representation of a complex value. What I discovered, once my code hit production, is that passing the isArray() decision function does not ensure that the given value has array member methods in Lucee 22.214.171.124.
Blog - OpenCage Geocoder Blog - ColdFusion SDK
Thanks to @SimianE there is now an SDK for our geocoding API
Blog - Michael Born - Five Minute Quickstart with cbElasticSearch
Last week I built a small search application using ElasticSearch and ColdBox, and holy cow - it was super easy using the cbElasticSearch module. Here's how to quickly get started using cbElasticSearch for your application.
Tweet - Charlie Arehart - Prevent spam on #coldfusion and #lucee sites
Prevent spam on #coldfusion and #lucee sites by checking email addresses and/or ip addresses for known spammers, using rest/http calls to low-cost Cleantalk anti-spam service cleantalk.org ti#etabyjym
Replied Tweet - James Moberg - Their free tier offers 40k request per day, supports domains, email, IP & ASN queries and queries multiple blacklist services
Also check out @apilityio Their free tier offers 40k request per day, supports domains, email, IP & ASN queries and queries multiple blacklist services #highlyrecommended
Coding Challenge of the Month - January 2020
$25 For whoever completes all of our tasks to help get CFML added to CodeWars
1 - Email firstname.lastname@example.org asking them to add CFML/ColdFusion to the list of languages on their site - cc email@example.com 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.
Thanks to those who have already entered.
Several positions available on https://www.getcfmljobs.com/
Listing over 28 ColdFusion positions from 22 companies across 17 locations in 5 Countries
Full-Time - ColdFusion Developer, Senior at Arlington, VA - United States
Posted Jan 13
Full-Time - Senior ColdFusion Application Developer at Washington, DC - United States
Posted Jan 10
Full-Time - ColdFusion Software Engineer at Tampa, FL - United States
Posted Jan 10
Full-Time - Senior ColdFusion Application Developer at Washington, DC - United States
Posted Jan 09
Full-Time - Senior ColdFusion Developer at Arlington - United States
Posted Jan 07
Full-Time - JR. Software Developer (ColdFusion) at Ahmedabad, Gujarat - India
Posted Jan 07
Full-Time - Senior Developer - Coldfusion - Hyderabad at Hyderabad, Tela.. - India
Posted Jan 07
ForgeBox Module of the Week
smmrize - v1.0.1
By Matthew Clemente
A CFML wrapper for the SMMRY API. Utilize the SMMRY API to summarize articles, text, PDFs, etc. by extracting the most important sentences.
The API can summarize either web-based content or text, via the web() and text() methods, respectively. Both these functions take an optional, second argument, which contains the settings for your summarization. The easiest way to provide these is via the helpers.options component, which provides a fluent interface for setting them.
box install smmrize
VS Code Hint Tips and Tricks of the Week
By KamasamaK - 5,085 installs
CFLint is a linter for CFML and you can find more information at its GitHub repository. This extension integrates CFLint into VS Code.
Recommend using Ortus Solution’s CFLint conventions
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.
Carl Von Stetten
You can see an up to date list of all sponsors on Ortus Solutions' Website
Switch to Modernize or Die ® Podcast - SoapBox Edition - Switch to Modernize or Die ® Podcast - Conference Edition
Music from this podcast used under Royalty Free license from SoundDotCom and BlueTreeAudio© 2019 Ortus Solutions