Modernize or Die® - CFML News for August 11th, 2020 - Episode 65

2020-08-11 Weekly News - Episode 65Watch the video version on YouTube at https://youtu.be/Nq1NCfMMDhcHosts:Gavin Pickin - Software Consultant for Ortus SolutionsBrad Wood - Software Consultant for Ortus SolutionsThanks to our Sponsor - Ortus SolutionsGet live training from the makers of your favorite Box Product.2 August Workshops - 1 day workshop - Jon Clausen leading Containerizing CFML Apps2 day workshop - Brad Wood leading CommandBox - Zero to HeroCFCasts is releasing new Free and Paid content every weekPatreon SupportWe are at the 58% mark for fully funding all of 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 EventsColdBox 6 is cooked - Luis said he is releasing today!He fooled us, not released yet… any day now.Free CommandBox Service Manager module to our CommandBox Zero to Hero Workshop attendeesDid you hear the latest?! We'll be offering a free license of the CommandBox Service Manager module to our #CommandBox Zero to Hero attendees. Get your tickets nowPreside - Release notes for 10.12.0We are proud to announce the release of Preside 10.12.0. This release is a modest one as we move towards more regular releases. Still, there are a solid 33 completed tickets including 25 enhancements and new features. As ever, a huge thank you to all our contributors, issue raisers and supporters. Special thanks to code submitted from: Brayden Tan (who has joined the core dev team recently), SeakChiew Lee, Chun Weng, Michael (Mad Mike) Hnat, Johnson Cheng and Choontat!https://www.preside.org/release-notes/release-notes-for-10-12-0.htmlOrtus Webinar - August Webinar announcement coming soonICYMI - Online CF Meetup - "I Didn’t Know S3 Could Do That!", with Brian KlaasThursday Aug 6th at 12pm US Eastern Time, UTC-4.Millions of developers know Amazon's Simple Storage Service (S3) as the file system for the Internet: it's fast, cheap, and super durable. CFML developers have dead-simple access to S3 via built-in functionality. S3 goes way beyond just uploading and downloading files, though. By dropping down into the AWS Java SDK, we can unlock the full potential of S3, and that's exactly what we'll do in this session.Meetup Link: https://www.meetup.com/coldfusionmeetup/events/272261010/Blog: https://brianklaas.net/aws/coldfusion/conferences/2020/08/10/Slides-Recording-Cfmeetup-S3-Presentation.htmlSlides: https://brianklaas.net.s3.us-east-1.amazonaws.com/assets/pdf/CFMeetupAug2020-S3.pdfVideo: https://www.youtube.com/watch?v=eNcOfG9Vkbgalist=PLG2EHzEbhy0-QirMKgSxhjkUyTSSTvHjLOnline CF Meetup - "Migrating or comparing CF Admin settings", with Charlie ArehartThu, Aug 13 · 11:00 AM CDTHave you ever wished you could easily compare the CF Admin settings between one instance and another? Whether on different machines or multiple instances on the same machine, or even between one version of CF and another? What about between CF and Lucee?Meetup Link: https://www.meetup.com/coldfusionmeetup/events/272410719/Online CF Meetup - "PWA's How Did We Get Here?", with Simon MacDonaldThu, Aug 13 · 5:00 PM CDTBack in the mid 90’s we only had one cross platform choice for building internet connected applications and that was HTML, CSS and JavaScript. So why is it now that after 25+ years have passed we are back to building internet connected applications with HTML, CSS and JavaScript and calling them Progressive Web Apps? Join me as we journey from the webs earliest beginnings to get back exactly where we started, or have we?https://www.meetup.com/coldfusionmeetup/events/272411266/ConferencesInto the Box 2020 - Workshops - Virtual Live trainingBlog: https://www.ortussolutions.com/blog/two-workshops-announced-for-august1 Day Workshop - Containerizing CFML Apps lead by Jon ClausenAugust 20th8:00 AM – 3:00 PM PDTPrice: $499https://www.eventbrite.com/e/containerizing-cfml-apps-tickets-1155124799372 day Workshop - CommandBox Zero to Hero - lead by Brad WoodThu, Aug 27 a 28, 2020, 8:00 AM – 3:00 PM PDTPrice: $899https://www.eventbrite.com/e/commandbox-zero-to-hero-tickets-115511490979?aff=erelpanelorgWe'll be offering a free license of the CommandBox Service Manager module to our CommandBox Zero to Hero attendees.https://www.ortussolutions.com/eventsPodcast Code:PODCAST10 - 10% offThere is a code for ITB attendees to save 15% - If you didn’t get the email contact us. JConf.devSeptember 30th, 9am - 4pm CSTRegister by August 15, and you'll get an awesome SWAG BOX full of goodies! (US only, first 500)https://jconf.dev/Adobe ColdFusion Certification now available OnlineAdobe 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 advance 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. Blog: https://coldfusion.adobe.com/2020/07/coldfusion-certification-online-now/Register: https://www.adobe.com/products/coldfusion-family/certificate.htmlAdobe ColdFusion Summit 2020 - Replaces CF Summit WestDate: November 17-19Location: Onlinehttps://cfsummit.adobeevents.com/Admission: FreeSpeaker sign up for Adobe https://cfsummit.adobeevents.com/speaker-application/Deadline: August 15th.CF CampTBAMore conferences: https://confs.tech/Blogs, Tweets and Videos of the WeekBlog - Wil De Bruin - CbValidation: UDF or Customvalidator?Yesterday someone had an interesting use case for the cbvalidation library. I presented at ITB2020 about cbvalidation, and I’ve contributed some code so I thought it had no secrets anymore. But when trying to solve this case I discovered cbvalidation still had some hidden lines for me. When discussing this validation problem we tried to solve it with UDF validators, but -spoiler alert-finally we agreed it was not powerful enough. So time to build a CustomValidator, which is a lot easier than you might think.https://shiftinsert.nl/cbvalidation-udf-or-customvalidator/Blog - Ben Nadel - Mapping Arrays-To-Structs And Structs-To-Arrays Using Mapping Functions In Lucee CFML 5.3.6.61When mapping one data-set onto another data-set in ColdFusion, we can usually use the built-in .map() functions. This works great when the input and the output data-sets are the same type. But, every now and then, I want to map an Array onto a Struct; or, a Struct onto an Array; which isn't something that the current mapping functions cater to. Normally, I implement this type of mapping with a for-loop; but, as a sort of code-kata, I wanted to see what a more "functional" type of solution might look like in Lucee CFML 5.3.6.61.https://www.bennadel.com/blog/3874-mapping-arrays-to-structs-and-structs-to-arrays-using-mapping-functions-in-lucee-cfml-5-3-6-61.htm Blog - David Byers - ColdFusion Needs to DieSummary: It’s time for bold action in order to make ColdFusion grow… and it starts by killing the reputation that ColdFusion is anchored with.For 20 years, I’ve listened to ColdFusion nay-sayers who haven’t had faith in the language.  My first CF project in 1999 was met with resistance about using ColdFusion as part of the technology stack.  I’ve endured companies and developers alike tell me that ColdFusion is dying; that ColdFusion developers are too hard to find; that ColdFusion isn’t as modern as other languages.  ColdFusion has a bad reputation, regardless of how the die-hards, myself included, love and are passionate about the product.https://coldfusion.adobe.com/2020/08/coldfusion-needs-die/Blog - Steven Neilland - Delete duplicates but keep first recordLast week I posted about getting the most recent entry in each group of records. This week I want to expand on that by showing how you can use the same technique to remove duplicate entries but saving the first entry.Related: SQL SQL Serverhttp://www.neiland.net/blog/article/delete-duplicates-but-keep-first-record/Blog - Fusion Reactor - Cloud live mode – just like traditional on-premise FusionReactorFusionReactor Cloud (the SaaS solution) has a lot of functionality that the traditional on-premise Java agent (On-Prem) has, but has struggled with the perception that its not as ‘real-time’.Both Cloud and On-Prem have live mode for many features; both have the same information and update as quickly.http://www.fusion-reactor.com/blog/technical-blogs/cloud-live-mode/Blog - Ben Nadel - isNumeric() And numberFormat() Can Work With Very Large Numbers In Lucee CFML 5.3.6.61For historical reasons, I'm a bit weary of any kind of numeric value that won't fit into a Signed Integer in ColdFusion. I can't point to specific issues necessarily; but, I know that I've run into errors working with large numbers. That said, yesterday when I was looking at how to implement an in-place natural sort of an alpha-numeric Array in Lucee CFML I discovered that the isNumeric() and numberFormat() functions can work fairly large strings. Though, upon closer examination, the numberFormat() function is a little funny. As such, I wanted to put together a quick demo in Lucee CFML 5.3.6.61.https://www.bennadel.com/blog/3873-isnumeric-and-numberformat-can-work-with-very-large-numbers-in-lucee-cfml-5-3-6-61.htmBlog - Ben Nadel - Performing An In-Place Natural Sort On An Alpha-Numeric Array In Lucee CFML 5.3.6.61In the past, I've looked at implementing a "Natural Sort order" in both JavaScipt and ColdFusion. However, my ColdFusion-based approach has always created a new array as part of its algorithm. Most of the time this doesn't matter; however, yesterday at InVision, I ran into a situation in which I needed to conditionally perform either a numeric sort or an in-place natural sort on an Array. As such, I wanted to quickly revisit the idea of a natural sort, this time using an in-place sorting algorithm in Lucee CFML 5.3.6.61.https://www.bennadel.com/blog/3872-performing-an-in-place-natural-sort-on-an-alpha-numeric-array-in-lucee-cfml-5-3-6-61.htmBlog - Preside - Release notes for 10.12.0We are proud to announce the release of Preside 10.12.0. This release is a modest one as we move towards more regular releases. Still, there are a solid 33 completed tickets including 25 enhancements and new features. As ever, a huge thank you to all our contributors, issue raisers and supporters. Special thanks to code submitted from: Brayden Tan (who has joined the core dev team recently), SeakChiew Lee, Chun Weng, Michael (Mad Mike) Hnat, Johnson Cheng and Choontat!https://www.preside.org/release-notes/release-notes-for-10-12-0.htmlBlog - Gregory Alexander - Galaxie Blog Status UpdateIt's been a while since I have posted or released a new version of Galaxie Blog. I have been busy at work, working with new clients, going on photography road trips and enjoying spending time with my family this summer.https://gregoryalexander.com/blog/2020/8/4/Galaxie-Blog-Status-UpdateBlog - Ortus Solutions - Two Workshops Announced for August!At Ortus, we pride ourselves in delivering relevant and engaging content, that's why decided to host two workshops this August!https://www.ortussolutions.com/blog/two-workshops-announced-for-augustCFML JobsSeveral positions available on https://www.getcfmljobs.com/Listing over 54 ColdFusion positions from 41 companies across 26 locations in 5 Countries1 new jobs this week.Full-Time - ColdFusion Developer at Morrisville, NC - United States Posted Aug 08https://www.getcfmljobs.com/jobs/index.cfm/united-states/CFMLDev-at-Morrisville-NC/11102Other online jobsFull-Time - Senior ColdFusion/C#.NET Developer - RME - Tampa, FLhttps://www.paycomonline.net/v4/ats/web.php/jobs/ViewJobDetails?job=23472aclientkey=B556761A15915FDD195FE2594B51E3EDForgeBox Module of the WeekBookmarks for CommandBox by Adam EuansBookmarks allow you to bookmark directories for easy navigation.List bookmarks - list existing bookmarksCommandBoxg bookmark listAdd bookmark - add a new bookmarkCommandBoxg bookmark add [name] [path]CommandBoxg bookmark add 'Home'Delete bookmark - delete an existing bookmarkCommandBoxg bookmark delete [name] [path]CommandBoxg bookmark delete 'Home'Goto bookmark - go to a bookmarked pathCommandBoxg bookmark goto nameCommandBoxg goto lnameghttps://www.forgebox.io/view/commandbox-bookmarksVS Code Hint Tips and Tricks of the WeekSearch Editor: Apply Changes by Jackson KearlApply changes in a Search Editor to files in a workspace.Steps:Run a searchEdit resultsRun command "Apply Search Editor changes to workspace"Search editor changes will overwrite their target files at the lines specified in the editor - if the lines in the target document have been modified shifted around this will result in erroneous overwriting of existing data.This is a very early experiment of what writing local search editor changes out to the workspace might look like, please file bugs and feature requests as you see fit!https://marketplace.visualstudio.com/items?itemName=jakearl.search-editor-apply-changesThank 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. You can support us on Patreon here https://www.patreon.com/ortussolutionsBen Nadel Brett DeLineCarl Von Stetten Charlie ArehartDa Li Dan CardDaniel GarciaDavid Belanger Didier Lesnicki Don Bellamy Eric HoffmanGary Knight Giancarlo GomezJan JannekJason DaigerJeff McCainJeremy Adams Jordan Clark Joseph LamoreeKai Koenig Laksma TirtohadiMario Rodrigues Matthew Clemente Mingo HagenScott SteinbeckShawn Oden Steven KlotzSynaptrix Yogesh MathurYou can see an up to date list of all sponsors on Ortus Solutions' Websitehttps://ortussolutions.com/about-us/sponsors★ Support this podcast on Patreon ★

2356 232