ColdFusion Posts Around the World.
ColdFusion Posts Around the World. Using Partial Component Paths As Argument Types In ColdFusionBen NadelBen Nadel demonstrates that partial component paths can be used in ColdFusion user-defined functions (UDF) argument and return types....Overloading Error.ExtendedInfo As A Data URL In ColdFusionBen NadelBen Nadel explores overloading of the error.extendedInfo property as a data URL in a ColdFusion application....Working Code Podcast - Episode 202: Um, ActuallyBen NadelBen Nadel and the crew play a game in which each statement contains a falsehood. The challenge is to figure out which aspect is false; and how to correct it.... ...Getting Flattened Component Metadata In ColdFusionBen NadelBen Nadel demonstrates how to traverse the metadata inheritance chain in ColdFusion; and how to flatten the metadata into a more consumable structure.... ...Working Code Podcast - Episode 201: LLM's vs Stack OverflowBen NadelBen Nadel and the crew talk Large Language Models (LLMs) and their impact on sites like Stack Overflow....Collocating My .gitignore Configuration Files With The Omitted FilesBen NadelBen Nadel looks at collocating .gitignore files with the files that they control in order to make code easier to find and easier to delete....Extracting InVision V6 Document Export JSON Data In ColdFusionBen NadelBen Nadel creates a ColdFusion utility to extract JSON configuration data from an InVision V6 document export....Hosting Your Exported InVision V6 Prototypes On Cloudflare PagesBen NadelBen Nadel demonstrates how InVision V6 exported prototypes and boards can be effortlessly uploaded to Cloudflare Pages for free hosting....Strange ___IMPLICITARRYSTRUCTVAR Behavior In ColdFusionBen NadelBen Nadel demonstrate a ColdFusion bug regarding implicit struct and array notation that can create unsafe parallel code execution....Free Online Version Of My Feature Flags BookBen NadelBen Nadel publishes a free online edition of his book, Feature Flags: Transform Your Product Development Workflow....My Internal InVision Feature Demo VideosBen NadelBen Nadel shares many of the feature and experiment demo videos that he made in his time at InVision....Considering The Aesthetics And Ergonomics Of Post-Back URLs In ColdFusionBen NadelBen Nadel re-thinks the aesthetics and ergonomics of post-back URLs in ColdFusion; and changes his strategy going forward....Unreasonable Hospitality By Will GuidaraBen NadelBen Nadel reviews Will Guidara's book, Unreasonable Hospitality - a truly wonderful book....Code Kata: Box Breathing Exercise With SpeechSynthesis And Alpine.jsBen NadelBen Nadel uses the SpeechSynthesis API to build a small box breathing guided meditation in Alpine.js....Collocating Views And View-Specific Components In ColdFusionBen NadelBen Nadel continues to explore the collocation of view-specific files, this time putting ColdFusion components right next to his CFML files in a ColdFusion application.... ...Using Row Constructor Comparisons In MySQLBen NadelBen Nadel demonstrates how to use the "row constructor" syntax in MySQL for comparing multiple values simultaneously....Mastering Postgres Video Course By Aaron FrancisBen NadelBen Nadel reviews the Mastering Postgres video course by Aaron Francis....Adding Keyboard Shortcuts To Incident Commander Using Alpine.jsBen NadelBen Nadel looks at adding keyboard shortcuts to Incident Commander using Alpine.js....What Every Engineer Should Know About Digital Accessibility By Sarah Horton And David SloanBen NadelBen Nadel reviews the book, What Every Engineer Should Know About Digital Accessibility by Sarah Horton and David Sloan....Ask Ben: Sorting Quasi-Numeric Values Like 4K And 3M In ColdFusionBen NadelBen Nadel demonstrates how to sort an array of mixed numeric and numeric-like text values (such as 4K and 3M) in ColdFusion....Associating Form Inputs With ColdFusion Validation Error TypesBen NadelBen Nadel looks at associating form input controls to ColdFusion validation errors using a simple, opt-in experience....Exploring Cloudflare R2 And Request Authorization Using AWS Signature V4Ben NadelBen Nadel explores the AWS S3 and Cloudflare R2 Signature V4 authorization algorithm in ColdFusion....Using CSS Gap To Control Margins In Website CopyBen NadelBen Nadel demonstrates how the CSS gap property can be used to effectively manage margins in website content....Optional Password Protection Added To Incident CommanderBen NadelBen Nadel explores the optional password protection that he's add to Incident Commander, his ColdFusion incident triage application....Considering Encrypting Passwords At Rest In ColdFusionBen NadelBen Nadel explores the idea of storing encrypted passwords in ColdFusion in cases where decrypting a password is an application requirement....Considering A Secure Encoding Technique Inspired By JWT In ColdFusionBen NadelBen Nadel creates a JWT-inspired light-weight encoder for his secure cookies in ColdFusion....Formatting Dates In The Local Timezone With Alpine.jsBen NadelBen Nadel explores the idea of using Alpine.js to format date/time values on the client-side in the user's local timezone....Counting The Occurrences Of A Substring Or RegEx Pattern In ColdFusionBen NadelBen Nadel explores various techniques for counting the occurrences of a string or regular expression pattern in ColdFusion....Rebuilding Incident Commander As A ColdFusion AppBen NadelBen Nadel shares his Incident Commander app, for triaging incidents, which he's rebuilt in Adobe ColdFusion....Using fileGetMimeType() To Determine File Type In ColdFusionBen NadelBen Nadel demonstrates that the fileGetMimeType() function can be used to inspect the file type / mime-type of a file in ColdFusion....Building A Moment-Inspired .fromNow() Date Formatting Method In ColdFusionBen NadelBen Nadel ports his .fromNow() relative date formatting method from Angular in ColdFusion....Inspecting The Form Upload File Field Metadata In ColdFusionBen NadelBen Nadel demonstrates that you can inspect the form upload file field in ColdFusion to get access to the temporary location of the uploaded file.... ...VARCHAR(Length) Limit Refers To Characters, Not Bytes, In MySQLBen NadelBen Nadel demonstrates that the VARCHAR(length) limit in MySQL refers to the number of characters, not the number of bytes....Using JSoup To Report Untrusted HTML Elements And Attributes In ColdFusionBen NadelBen Nadel demonstrates how to use JSoup's Safelist to access information about which tags and attributes are going to be removed during the sanitization process in ColdFusion.... ...Using jSoup To Sanitize Untrusted HTML In ColdFusionBen NadelBen Nadel demonstrates how to use JSoup's Safelist and Cleaner classes to sanitize untrusted HTML in ColdFusion....Safe-Navigation Operator Swallows Method Errors In Adobe ColdFusion 2023Ben NadelBen Nadel demonstrates a bug in the safe-navigation operator in Adobe ColdFusion that swallows errors....Working Code Podcast - Episode 200: We're Taking A BreakBen NadelBen Nadel and the crew reflect on recording 200 episodes of the show and decide to take a break through the end of 2024....Feature Flags Book Playground, Videos, And CodeBen NadelBen Nadel shares his feature flags playground app, complete with video commentary and source code on GitHub....Playing With Window Functions In MySQL 8Ben NadelBen Nadel looks at Window Functions in MySQL for the first time, applying ROW_NUMBER() and DENSE_RANK() to a common table expression....High Performance SQLite Video Course By Aaron FrancisBen NadelBen Nadel reviews the High Performance SQLite video course by Aaron Francis. A high quality course for SQLite; or anyone interested in SQL....Working Code Podcast - Episode 199: Country Code TLDsBen NadelBen Nadel and the crew talk about the practice of co-opting country top level domains (TLDs)....Running Memory Leak Detection After Every ColdFusion RequestBen NadelBen Nadel adds memory leak detection to his ColdFusion feature flags playground app. This leak detection runs in the onRequestEnd() event method after every request.... ...Collocating My ColdFusion, CSS, And JavaScript FilesBen NadelBen Nadel explores the use of collocated CFML, JavaScript, and Less CSS files in his ColdFusion multi-page application (MPA) architecture....Dave Farley On What Makes High Quality CodeBen NadelBen Nadel heartily agrees with Dave Farley's notion that high quality code is code that's safe and easy to change....Making A Case For Var Declarations In ColdFusion TemplatesBen NadelBen Nadel makes a case for why Adobe ColdFusion should allow the var keyword to be used outside of function bodies....CSV To CTE Transformer In Angular 18Ben NadelBen Nadel creates a CSV (comma separated values) to CTE (common table expression) transform in Angular 18....Working Code Podcast - Episode 197: PotluckBen NadelBen Nadel and the crew talk about a variety of topics from job promotions, AI training, team alignment, and reconnecting with one's self....Using Canonicalize() To Embed Emoji In Email Subject Lines In ColdFusionBen NadelBen Nadel demonstrates how to use the canonicalize() function to render emoji in email subject lines in ColdFusion....Using Canonicalize() To Render Emoji In ColdFusionBen NadelBen Nadel demonstrates how to use the canonicalize() function to render emoji characters in a ColdFusion page response....Working Code Podcast - Episode 195: Isn't Worth The SqueezeBen NadelBen Nadel and the crew talk about cases in our work in which the maximum effort isn't worth the potential outcome....Dynamically Define For-Loop Increment In ColdFusionBen NadelBen Nadel demonstrates that the for-loop can have a dynamically assigned increment that changes on every loop iteration....Generating Lorem Ipsum Text In ColdFusionBen NadelBen Nadel builds a Lorem Ipsum text generator with ColdFusion....ColdFusion: Comparison Method Violates Its General ContractBen NadelBen Nadel explores the array sorting error, Comparison method violates its general contract, that he was getting in ColdFusion....Working Code Podcast - Episode 193: Bonding In The FoxholeBen NadelBen Nadel and the crew talk about the strong bonds created during intense experiences. And, whether or not we can create those same bonds without suffering.... ...TODO: Granting Yourself Permission To Move ForwardBen NadelBen Nadel discusses the power of a TODO comment to grant permission in the face of a sub-optimal solution....Signals And Array Mutability In Angular 18Ben NadelBen Nadel explores the interplay between Signals, array mutation, and change detection in Angular 18....Exploring Lazy Evaluation Of Computed Signals In Angular 18Ben NadelBen Nadel explores the lazy evaluation of computed Signals in Angular 18....Building An Angular App For ColdFusion Using Docker ComposeBen NadelBen Nadel shares how he's building Angular utility apps inside his ColdFusion blogging platform using Docker Compose....Working Code Podcast - Episode 192: The Best And Worst CodeBen NadelBen Nadel and the crew talk about the best and worst code that they've seen (which is sometimes the code that they also wrote)....Working Code Podcast - Episode 191: Too Much ProcessBen NadelBen Nadel and the crew talk about bureaucratic processes at work, why they exist, and what we can (maybe) do about them....Creating A Transient View Helper In Angular 18Ben NadelBen Nadel creates a transient view helper service that is unique instantiated for each host component in Angular 18....Working Code Podcast - Episode 190: Career Advice To Younger SelfBen NadelBen Nadel and the crew talk about career advice that they'd give to their younger selves....JavaScript Application Size Shouldn't Affect PerformanceBen NadelBen Nadel deconstructs the argument that the size of a JavaScript application affects the overall performance of said application....Code Isn't Magical, It's Just A Series Of CommandsBen NadelBen Nadel explains that code isn't magical - that's is just a series of commands. And that thinking about it this way makes it easier to maintain.... ...Working Code Podcast - Episode 188: Code Review NuanceBen NadelBen Nadel and the crew talk about code reviews; and reflect on the decision tree that we use when reviewing other people's code...An "x-input" Property Binding Directive In Alpine.jsBen NadelBen Nadel creates an x-input directive in Alpine.js which allows outer component properties to be bound to inner component properties....Code Kata: Building A Tri-State Switch In Alpine.jsBen NadelBen Nadel tries to build a tri-state switch / toggle using Alpine.js....Using AttributeCollection To Manage Locking In ColdFusionBen NadelBen Nadel demonstrates how to use attributeCollection to manage locking in ColdFusion....Highlighting Dynamic Parts Of A Pretty-Printed JSON Value In JavaScriptBen NadelBen Nadel demonstrates how he highlighted the dynamic parts of a pretty-printed JSON value in JavaScript....Working Code Podcast - Episode 187: Viability Of The Minimum Viable ProductBen NadelBen Nadel and the crew talk about the viability of the Minimum Viable Product; and whether solopreneurship is still possible in the web application industry.... ...Getting A Struct Key In Its Native Key-Casing In ColdFusionBen NadelBen Nadel demonstrates how to access the internal key-casing of a struct key in ColdFusion....OWASP Java Encoder Project Recommends Using Both URL and Attribute Encoding For HREF AttributesBen NadelBen Nadel looks at the OWASP Java Encoder project's recommendation to double-encode dynamic URLs in an HREF context....Normalizing Collection Entries In ColdFusionBen NadelBen Nadel creates a user defined function, toEntries(), for normalizing collection iteration in ColdFusion....Sorting Arrays With Priority Elements In ColdFusionBen NadelBen Nadel demonstrates how to sort an array with a subset of priority items in ColdFusion....Working Code Podcast - Episode 186: Work InsecuritiesBen NadelBen Nadel and the crew talk about the insecurities that they feel at work regardless of how much value they create for their companies....Creating A ColdFusion-Oriented HashCode With Loose Types (Part 2)Ben NadelBen Nadel updates his FusionCode algorithm to allow for key-casing and type-coercion settings to be configurable in ColdFusion....Working Code Podcast - Episode 185: A/B Testing MechanicsBen NadelBen Nadel and the crew talk about the mechanics of A/B testing; and, how it might be incrementally added to a bulk email system....Extracting Illegal Tag Names From AntiSamy Error Messages In ColdFusionBen NadelBen Nadel demonstrates how to extract illegal tag names from the OWASP AntiSamy HTML sanitization error messages in ColdFusion....Creating A ColdFusion-Oriented HashCode With Loose TypesBen NadelBen Nadel creates a FusionCode algorithm which is a ColdFusion-oriented version of Java's HashCode concept....Using An Ordered Struct As A Fixed-Size Cache In ColdFusionBen NadelBen Nadel demonstrates how to build a simple, fixed-size cache using an ordered struct in ColdFusion....Encapsulating Serialization Logic In ColdFusionBen NadelBen Nadel demonstrates how to encapsulate JSON serialization logic in ColdFusion when data needs to be manipulated as part of the serialization workflow.... ...Adobe ColdFusion Parses JSON Into Non-Ordered StructsBen NadelBen Nadel demonstrates that Adobe ColdFusion's implementation of deserializeJson() loses key-order....Two Spread Operator Bugs In Adobe ColdFusion 2023Ben NadelBen Nadel demonstrates two spread operator bugs in Adobe ColdFusion 2021 and 2023....Working Code Podcast - Episode 184: Code Comments For The WinBen NadelBen Nadel and the crew talk the value add (and the value detraction) of putting comments in code....Working Code Podcast - Episode 183: Carol's New ProjectBen NadelBen Nadel and the crew talk to Carol about her idea for a small piece of software; and, how to break ground without getting overwhelmed....Core Decision Functions Will Accept Null / Undefined Values In ColdFusionBen NadelBen Nadel demonstrates that core decision functions, such as isSimpleValue() and isStruct() can accept null / undefined arguments in ColdFusion....Bug In Struct.Each() Error Handling In Adobe ColdFusionBen NadelBen Nadel shows reproduction steps for a bug in the way Adobe ColdFusion surfaces struct.each errors....Exploring Randomness In JavaScriptBen NadelBen Nadel compares the randomness of Math.random() to crypto.getRandomValues() in JavaScript....Color Palette Utility In Apline.jsBen NadelBen Nadel builds a color palette tool using Alpine.js. Color palettes can be saved (and loaded) as PNG and SVG files....Using Both Tab And Arrow Keys For Keyboard NavigationBen NadelBen Nadel explores the use of both the Tab and Arrow keys for keyboard navigation on the web.... |