2020-01-14 Weekly News - Episode 36Watch the video version on YouTube at
https://youtu.be/DLPQlgCLS4AHosts:
Gavin Pickin - Software Consultant for Ortus Solutions
Brad Wood - Lead Architect for Ortus Solutions
News and EventsCF Summit - Las Vegas 2019 - More Videos being released on Youtube/FacebookBlog -
https://coldfusion.adobe.com/2019/12/adobe-2019-coldfusion-summit-sessions/Facebook:
https://www.facebook.com/AdobeColdFusion/YouTube:
https://www.youtube.com/channel/UCCUMP7Nr8Oa0_BPpD8MUgAQSlides:
https://coldfusion.adobe.com/2019/10/coldfusion-summit-2019-presentation-files/?fbclid=IwAR15kCQ_BtHV56Y77gCIC-F6XX7n3_wVaBPvFo4yNKC2bRxUr42HMzm54_kPlaylist - 16 Videos so far!!!
https://www.youtube.com/playlist?list=PL3iywAijqFoUpNIUCPEoqZb6c6ZeUahIGWebinar - ColdFusion for the Next Decade – All about the Buzzworthy ColdFusion 2020January 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 CodingMichael 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.
ConferencesInto the Box 2020May 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/itb2020Buy 2019 Videos:
https://vimeo.com/ondemand/itb2019/DevnexusFeb 19-21 2020 ATLANTA, GA
https://devnexus.com/VUEConf USAUSTIN CONVENTION CENTER
AUSTIN, USA • MARCH 2-4, 2020
https://us.vuejs.org/DockerCon 2020DockerCon 2020 is scheduled for June 15-18 in Austin, Texas. This is one of the largest conferences for developers who focus on software containers.
https://www.docker.com/dockercon/More conferences:
https://confs.tech/Blogs, Tweets and Videos of the WeekBlog - Ben Nadel - Strange MongoDB Error When Incrementing A Document Property In Lucee CFML 5.2.9.31Yesterday, I ran into a really strange error when trying to increment a numeric value on an in-memory MongoDB document in Lucee CFML 5.2.9.31. Google didn't really provide any answers; so, I wanted to document the error here and share the work-around that I finally used.
https://www.bennadel.com/blog/3756-strange-mongodb-error-when-incrementing-a-document-property-in-lucee-cfml-5-2-9-31.htm
Blog - Pete Freitag - List Logical Names from SQL Server bak fileWhen 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:
https://www.petefreitag.com/item/892.cfmBlog - 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.
https://www.ortussolutions.com/blog/30-vs-code-hints-tips-and-tricks-of-the-week-from-2019-modernize-or-die-cfml-news-podcast
Blog - Ben Nadel - Using A Closure To Encapsulate Depth-First Tree Traversal In Lucee CFML 5.3.3.62In 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 5.3.3.62.
https://www.bennadel.com/blog/3755-using-a-closure-to-encapsulate-depth-first-tree-traversal-in-lucee-cfml-5-3-3-62.htm
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.
https://twitter.com/gamesover/status/1215440926136508421https://twitter.com/gamesoverTweet - James Moberg - ColdFusion SerializeJSON CustomSerializer vs JSONUtilIs 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
https://twitter.com/gamesover/status/1215439005841547264https://twitter.com/gamesoverTweet - James Moberg - Asking for CFML support on Dev.toHey @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?
https://twitter.com/gamesover/status/1215411301385756673https://twitter.com/gamesoverTweet- James Moberg - Whitelist IPsI 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)
https://twitter.com/gamesover/status/1215354261057540099https://twitter.com/gamesoverBlog - Ben Nadel - Repositories And Data Access Layers Can Have As Many Methods As You Find HelpfulWhen 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".
https://www.bennadel.com/blog/3754-repositories-and-data-access-layers-can-have-as-many-methods-as-you-find-helpful.htm
Blog - Pete Freitag - Solved: Git Clone Large Repo Download ErrorsWhen attempting to clone a large git repository over https, hosted on an on premise GitLab instance, I kept getting the error:
https://www.petefreitag.com/item/891.cfmBlog - Ben Nadel - Passing isArray() Decision Function Does Not Ensure Member Methods In Lucee CFML 5.3.3.62This 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 5.3.3.62.
https://www.bennadel.com/blog/3753-passing-isarray-decision-function-does-not-ensure-member-methods-in-lucee-cfml-5-3-3-62.htmBlog - OpenCage Geocoder Blog - ColdFusion SDKThanks to @SimianE there is now an SDK for our geocoding API
https://blog.opencagedata.com/post/coldfusion-sdkBlog - 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.
https://michaelborn.me/entry/five-minute-quickstart-with-cbelasticsearchTweet - Charlie Arehart - Prevent spam on #coldfusion and #lucee sitesPrevent 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
https://twitter.com/carehart/status/1214592351743676422https://twitter.com/carehartReplied Tweet - James Moberg - Their free tier offers 40k request per day, supports domains, email, IP & ASN queries and queries multiple blacklist servicesAlso check out @apilityio Their free tier offers 40k request per day, supports domains, email, IP & ASN queries and queries multiple blacklist services #highlyrecommended
https://twitter.com/gamesover/status/1215432741065388033https://twitter.com/gamesoverCoding Challenge of the Month - January 2020
$25 For whoever completes all of our tasks to help get CFML added to CodeWars
1 - Email info@codewars.com asking them to add CFML/ColdFusion to the list of languages on their site - cc gavin@ortussolutions.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.
CFML JobsSeveral 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
https://www.getcfmljobs.com/jobs/index.cfm/united-states/ColdFusion-Developer-Senior-at-Arlington-VA/11002Full-Time - Senior ColdFusion Application Developer at Washington, DC - United States Posted Jan 10
https://www.getcfmljobs.com/jobs/index.cfm/united-states/Senior-ColdFusion-Application-Developer-at-Washington-DC/11001
Full-Time - ColdFusion Software Engineer at Tampa, FL - United States Posted Jan 10
https://www.getcfmljobs.com/jobs/index.cfm/united-states/ColdFusion-Software-Engineer-at-Tampa-FL/11000Full-Time - Senior ColdFusion Application Developer at Washington, DC - United States Posted Jan 09
https://www.getcfmljobs.com/jobs/index.cfm/united-states/Senior-ColdFusion-Application-Developer-at-Washington-DC/10999
Full-Time - Senior ColdFusion Developer at Arlington - United States Posted Jan 07
https://www.getcfmljobs.com/jobs/index.cfm/united-states/CFDeveloper-at-Arlington/10998Full-Time - JR. Software Developer (ColdFusion) at Ahmedabad, Gujarat - India Posted Jan 07
https://www.getcfmljobs.com/jobs/index.cfm/india/JR-Software-Developer-ColdFusion-at-Ahmedabad-Gujarat/10996Full-Time - Senior Developer - Coldfusion - Hyderabad at Hyderabad, Tela.. - India Posted Jan 07
https://www.getcfmljobs.com/jobs/index.cfm/india/Senior-Developer-Coldfusion-Hyderabad-at-Hyderabad-Telangana/10995
ForgeBox Module of the Week
smmrize - v1.0.1By 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
https://www.forgebox.io/view/smmrizeVS Code Hint Tips and Tricks of the WeekCFLintBy 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
https://github.com/Ortus-Solutions/coding-standardshttps://marketplace.visualstudio.com/items?itemName=KamasamaK.vscode-cflintThank you to all of our Patreon SupportersThese 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