Modernize or Die® - CFML News for February 16th, 2021 - Episode 91

2021-02-16 Weekly News - Episode 91Watch the video version on YouTube at https://youtu.be/99oJ3kAZcXc Hosts:Gavin Pickin - Software Consultant for Ortus SolutionsThanks to our Sponsor - Ortus SolutionsOne way to say thanks back to Ortus Solutions, is to support CFCasts, which is releasing new content every weekPatreon SupportWe have 33 patreons providing 65% 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 EventsNew Blogs Aggregator to replace CF Bloggers www.cfblogs.org is meant to replace the popular 'ColdFusion Bloggers' blog aggregator that was so popular in the ColdFusion community in the last ten years. Unfortunately, the ColdFusion Bloggers platform is no longer active at this time due to the unfortunate demise of Wil Genovese, who maintained Cfbloggers after Raymond Camden provided Wil with the keys.https://gregoryalexander.com/blog/2021/2/13/CfBlog-Feeds--A-New-ColdFusion-Blog-Aggregator Ortus Webinar - Take Control of Logging and Error handling with Stachebox with Jon ClausenFriday, February 26th - 11:00 AM CDT (GMT -6:00)Tracking, handling, and resolving bugs between different tiers can be challenging, especially in containerized or cloud environments. In this webinar, Jon Clausen will introduce you to capturing your back end and front-end error messages, and consolidating them in to one single, aggregated platform - backed by the power of Elasticsearch.https://www.ortussolutions.com/events/webinars Register: https://us02web.zoom.us/meeting/register/tZEqdO2qpjgjH9Y9FCGbn2dkx-ARjlpenKMm Mid Michigan CFUG - Docker with John FarrarFeb 16th @ 7pm I will be doing a Docker meeting for the Mid Michigan CFUG this month. It is Rick Mason’s user group and details will follow. I am going to put a special emphasis on Traefik if anyone is interested. I am a user now, not an expert but find it a better experience than Apache, HAProxxy, IIS or Nginx so far. Your experience may vary. https://community.ortussolutions.com/t/docker-cfug-meeting/8755?u=john_farrar CFUG Website: http://www.mmcfug.org/ Teams Link: https://bit.ly/3didqEQ Adobe Webinar - SQL, I know enough to break everything - Dave FergusonFebruary 24th 2021 @ 8 AM PTIf you are reading this you have probably written SQL in one form or another.  I would also bet that you have written SQL that looked great but didn't act great.  Looking back at it was more like a little puppy that tilts its head at strange sounds.  We all have, even the "experts" among, us have written SQL that had intentional consequences.  On the other hand, maybe you support a system that has SQL that you just don't quite understand.  If some of this is true, this session is for you. This session will take a look at why SQL may not run the way it was intended.  We will look well beyond just the select statement and look deeper into how SQL runs.  We will go over what the DBA's keep to themselves as well as other metrics.  We will also look at some well-intended SQL and why the results were less than ideal.  https://cfwebinar-sql.meetus.adobeevents.com/ New Book from Luis Majano in the next week or so - 102 ColdBox HMVC Quick Tips and TricksReminder about the new Ortus CommunityOrtus has rolled out our new Ortus Community site to help consolidate all of our community support and interaction.  As part of that effort, all our Google Group threads have been imported to the new Ortus Community and effective immediately, our Google Groups are closed for further posting.If you're a member of our Google groups, don't worry-- your user has already been imported into the community forum and as soon as you sign up, you will be automatically associated with all of your old posts so you can pick up your conversations right where you left off!  We've even added single sign on options for Github, Facebook, Google, and Twitter (coming soon).  If your new account is under a different E-mail address, let us know and we can merge your accounts together.https://community.ortussolutions.com/ CFCasts Content UpdatesJust Released - CommandBox Zero to Hero    - Running Commands    - Shell Features, REPL and CFML Commands    - Special CommandsComing up - More CommandBox Hero to ZeroConferences and TrainingDevnexusJoin the VIRTUAL ldev/golutionFeb 17 2021 - Onlinehttps://devnexus.com/RedisConf 2021Virtual: Apr 20-21Call for speakers ended Feb 14 - https://sessionize.com/redisconf2021/ https://redislabs.com/redisconf/DockerConMay 27th 2021https://www.docker.com/dockercon/ Ortus Workshops - Dates coming soonQuick WorkshopMarch 11-12Lead by the creator of Quick himself, Eric Peterson.Information: https://www.ortussolutions.com/events Register now https://www.eventbrite.com/e/up-and-running-with-quick-tickets-124157021995 More dates to come - CommandBox Zero to Hero - ColdBox Zero to Hero - ColdBox Hero to SuperHeroOrtus’s Possible Conferences for 2021Dates subject to changeDue to Online conference overload, we are thinking about not expanding the number of events, but more content in more timezones with a different format.ITB - Developer Week StyleWith some European Timezone Friendly slots from our European Community MembersSeptember 2021Call for speakers coming soonITB LatamDecember 2021More conferencesNeed more conferences, this site has a huge list of conferences for almost any language/community.https://confs.tech/CFML Is now on the list - https://confs.tech/conferences/new Blogs, Tweets and Videos of the WeekBlog - Ben Nadel - Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part IILast week, I shared a proof-of-concept (POC) that I had been working in which I used ColdFusion Custom Tags as a DSL for HTML emails. Well, I've been continuing to work on it and I'm actually pretty stoked on where it's going. It's starting to feel like it might actually be something that I can use at InVision for our transactional emails. I've gotten my POC to a point where I feel like creating and overriding styles feels fairly easy (within a given set of constraints). So, I wanted to share this update more broadly.https://www.bennadel.com/blog/3979-using-coldfusion-custom-tags-to-create-an-html-email-dsl-in-lucee-cfml-5-3-7-47-part-ii.htm Blog - Ben Nadel - Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part IIIOver the last few weeks, I've been exploring the use of ColdFusion custom tags as a DSL for HTML emails, first laying the foundation of the concept, then adding themeing of HTML entities, and most recently, improving the performance by removing implicit variable access. Today, as a quick follow-up, I wanted to add some dynamic rendering in which content can be targeted for Desktop devices vs. Mobile / Responsive devices.https://www.bennadel.com/blog/3981-using-coldfusion-custom-tags-to-create-an-html-email-dsl-in-lucee-cfml-5-3-7-47-part-iii.htm Blog - Ben Nadel - Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part IVWhen creating dynamic HTML emails, you can progressively enhance a layout (on more modern devices) using CSS media queries. However, doing so requires repetitive boilerplate: wrapping the styles in a @media block and - super importantly - remembering to append the !important flag to every single CSS property in your style block. Since I plan to use CSS media queries in my ColdFusion custom tag DSL (Domain Specific Language) for HTML emails, I wanted to find a way to abstract the boilerplate.https://www.bennadel.com/blog/3982-using-coldfusion-custom-tags-to-create-an-html-email-dsl-in-lucee-cfml-5-3-7-47-part-iv.htm Blog - Ben Nadel - Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part VAs I've been testing my ColdFusion custom tag DSL (Domain Specific Language) for HTML emails in Litmus, I noticed that they offer previews for email clients running in "Dark Mode". Dark mode, like other responsive design elements, can be controlled on the web using @media queries. Yesterday, I added two @media abstractions for max-width and min-width. As such, I wanted to see if I could do the same thing for dark mode.https://www.bennadel.com/blog/3983-using-coldfusion-custom-tags-to-create-an-html-email-dsl-in-lucee-cfml-5-3-7-47-part-v.htm Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part VIIn the first post on my ColdFusion custom tag DSL (Domain Specific Language) for HTML emails, I had an image-grid abstraction that took a list of images and rendered a responsive table. In that example, I had several custom tags that did nothing but aggregate data (ie, they had no layout in and of themselves). As I've continued to think about more complex layouts, I've noticed this pattern cropping back up. As such, I thought it would be worth codifying in a core tag, lcore:Slotg. The Slot tag is meant for content projection in which the rendered contents of the Slot tag are just captured and passed back up to an ancestor tag such that they can be subsumed into more complex layouts.https://www.bennadel.com/blog/3984-using-coldfusion-custom-tags-to-create-an-html-email-dsl-in-lucee-cfml-5-3-7-47-part-vi.htmBlog - Ben Nadel - Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part VIII've been making some wonderful progress on my ColdFusion custom tag DSL (Domain Specific Language) for HTML emails! We've looked at how HTML tags are abstracted away; and, how themes can be applied to those HTML tag abstractions; and, how we can apply responsive styling on mobile email clients; and, how we can add support for Dark Mode; and, how we can use advanced content projection techniques to build complex widgets. So, this morning, I just wanted to do a quick recap of the various encapsulation techniques that we can use when building HTML emails in Lucee CFML 5.3.7.47.https://www.bennadel.com/blog/3985-using-coldfusion-custom-tags-to-create-an-html-email-dsl-in-lucee-cfml-5-3-7-47-part-vii.htm Blog - Ben Nadel - Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part VIII For the last couple of weeks, I've been neck-deep in HTML emails, fleshing out a ColdFusion custom tag DSL (Domain Specific Language) for HTML email authoring. In my previous posts, I've been building-up theming concepts, responsive desktop and mobile logic, CSS media query overrides, dark mode support, and multi-slot content projection. With all of these tools in my HTML email toolbox, I wanted to finally try to recreate a real-world HTML email. Specifically, one with a more advanced layout to see if the current tools provide sufficient functionality. And so, in this post, I am going to try and build the new comment email (or, my take on it), that we might send out from InVision.https://www.bennadel.com/blog/3986-using-coldfusion-custom-tags-to-create-an-html-email-dsl-in-lucee-cfml-5-3-7-47-part-viii.htm Community Post - Brad Wood - Fixing ColdBox performance affected by custom tag pathsI’m putting this here to preserve it and so others can find it. I recently helped someone who had a simple ColdBox application that performed very well on their local CommandBox development server. However, when they placed the app on their production server (Adobe CF 2018), it was very slow. Taking up to 2 seconds for a simple event to run.https://community.ortussolutions.com/t/fixing-coldbox-performance-affected-by-custom-tag-paths/8762 Blog - Gregory Alexander - CfBlogs.org - A New ColdFusion Blog Aggregatorwww.cfblogs.org is meant to replace the popular 'ColdFusion Bloggers' blog aggregator that was so popular in the ColdFusion community in the last ten years. Unfortunately, the ColdFusion Bloggers platform is no longer active at this time due to the unfortunate demise of Wil Genovese, who maintained Cfbloggers after Raymond Camden provided Wil with the keys.https://gregoryalexander.com/blog/2021/2/13/CfBlog-Feeds--A-New-ColdFusion-Blog-Aggregator  Live Stream - Matthew Clemente - Writing Tests for a Prism.js Language Definition (Learning by Trial and Error) [Part 2]I got started with testing this CFML language definition last week. I still have some language features that I'll need to write tests for. And in testing I'll likely find improvements that I can add to the language definition. If you only work on something for 1 hour a week - it takes a long timehttps://www.youtube.com/watch?v=hgNrdqVWiEUafeature=youtu.be Blog - David Byers - ColdFusion 101: Tags, Script and FunctionsThe first in an on-going series of posts covering ColdFusion basics for new developers. This series is intended to cover basic concepts. In this article, I cover the building blocks of ColdFusion; Tags, Script, and Functions.https://coldfusion.adobe.com/2021/02/coldfusion-101-tags-script-functions/ Blog - David Byers - ColdFusion 101: Different ways to create and add data to structuresAn on-going series of posts covering ColdFusion basics for new developers. This series is intended to cover basic concepts, and demonstrate how there are many ways to accomplish tasks. This will cover some, but not all of them.https://coldfusion.adobe.com/2021/02/coldfusion-101-different-ways-create-add-data-structures/Podcast - Working Code Podcast - Episode 009: TestingThere are very few people in the programming world who will argue against the idea of testing software. But, when it comes to the mechanisms though which code is tested, the conversation starts to get interesting. There are those who feel that TDD - Test Driven Development - is "the way"; and, that any divergence from TDD is not only laziness but is, in fact, borderline malfeasance. At the other end of the spectrum are the people who perform all their testing manually; often, relying on QA (Quality Assurance) teams and smoke tests to find regressions before each deployment.https://www.bennadel.com/blog/3980-working-code-podcast-episode-009-testing.htm Adam Cameron’s Response: http://blog.adamcameron.me/2021/02/thoughts-on-working-code-podcasts.htmlBlog - Charlie Arehart - Coldfusion Portal - How to quickly solve outofmemory metaspace errorsGetting metaspace errors, or blank pages that end up being related to this? Don’t tweak the maxmetaspace: remove it!https://coldfusion.adobe.com/2020/02/quickly-solve-outofmemory-metaspace-errors/ Blog- Charlie Arehart - ColdFusion Portal - Solving problems calling out of CF via https, by updating JVMIf you’re getting errors in calling out to https urls from CF, you may not need to “import new certificates”. You may merely need to update the JVM that CF uses.https://coldfusion.adobe.com/2019/06/error-calling-cf-via-https-solved-updating-jvm/ CFML JobsSeveral positions available on https://www.getcfmljobs.com/Listing over 40 ColdFusion positions from 26 companies across 30 locations in 5 Countries since Dec 1st.6 new jobs this weekFull-Time - Senior Developer at Remote - United States Posted Feb 09https://www.getcfmljobs.com/jobs/index.cfm/united-states/SrDeveloper-ColdFusion-at-Remote-US/11186 Full-Time - Web/ColdFusion Developer at Ahmedabad, Gujarat - India Posted Feb 09https://www.getcfmljobs.com/jobs/index.cfm/india/WebColdFusion-Developer-at-Ahmedabad-Gujarat/11187 Full-Time - ColdFusion Developer at Melbourne VIC - Australia Posted Feb 09https://www.getcfmljobs.com/jobs/index.cfm/australia/ColdFusion-Developer-at-Melbourne-VIC/11185 Full-Time - ColdFusion Developer at Sydney NSW - Australia Posted Feb 09https://www.getcfmljobs.com/jobs/index.cfm/australia/ColdFusion-Developer-at-Sydney-NSW/11189 Full-Time - ColdFusion Developer at Melbourne VIC - Australia Posted Feb 09https://www.getcfmljobs.com/jobs/index.cfm/australia/ColdFusion-Developer-at-Melbourne-VIC/11184 Full-Time - oldFusion Developer at Sydney NSW - Australia Posted Feb 09https://www.getcfmljobs.com/jobs/index.cfm/australia/ColdFusion-Developer-at-Sydney-NSW/11188  ForgeBox Module of the WeekSocket.IO-Lucee by Pixel 8Socket.io-Lucee is a Socket.IO server implementation for the Lucee webserver. Socket.IO is a javascript library for realtime web applications. You can use the Socket.io-lucee project to marry your Lucee server with your frontend client(s) using the Socket.IO client library.The project is currently in an ALPHA state. This means it is suitable for experimenting with, but unlikely that it is ready for production use. We have implemented much of the core feature set, but there is much to do to ensure that we have a robust, performant and feature complete set.https://www.forgebox.io/view/socketiolucee VS Code Hint Tips and Tricks of the WeekFootsteps by WattenbergerKeep your place when jumping between a different parts of your code. This is a VSCode extension that will highlight lines as you edit them, fading as you move away.Jump between lines using ctrl+alt+left and ctrl+alt+right.https://marketplace.visualstudio.com/items?itemName=Wattenberger.footsteps Thank 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/ortussolutions - Bronze Packages and up, now get a ForgeBox Pro and CFCasts subscriptions as a perk for their Patreon Subscription. - All Patreon supporters have a Profile badge on the Community Website - All Patreon supporters have their own Private Forum access on the Community WebsiteDon BellamyEric HoffmanGary KnightGiancarlo GomezMario RodriguesJohn Wilson Synaptrix Joseph LamoreeBen NadelBrett DeLineCarl Von StettenCharlie ArehartDan CardDaniel GarciaDavid BelangerDidier LesnickiEdgardo CabezasJan JannekJason DaigerJeff McClainJeremy AdamsJonas ErikssonJordan ClarkKai KoenigLaksma TirtohadiLeon SeremelisMatthew DarbyMatthew ClementeMingo HagenPatrick FlynnRoss PhillipsScott SteinbeckYogesh MathurSteven KlotzYou 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