All Blog Posts by Ben Nadel
Holy cow! I can't believe I've been writing about web development for the past 18 years! Time really flies when you're having fun. It's been quite a journey; but don't be fooled for a minute — we're only getting started! There's plenty more to learn!
November 2024
- Formatting Dates In The Local Timezone With Alpine.js
- Counting The Occurrences Of A Substring Or RegEx Pattern In ColdFusion
- Rebuilding Incident Commander As A ColdFusion App
- Using fileGetMimeType() To Determine File Type In ColdFusion
- Building A Moment-Inspired .fromNow() Date Formatting Method In ColdFusion
- Inspecting The Form Upload File Field Metadata In ColdFusion
- VARCHAR(Length) Limit Refers To Characters, Not Bytes, In MySQL
- Using JSoup To Report Untrusted HTML Elements And Attributes In ColdFusion
- Using jSoup To Sanitize Untrusted HTML In ColdFusion
October 2024
- Safe-Navigation Operator Swallows Method Errors In Adobe ColdFusion 2023
- Working Code Podcast - Episode 200: We're Taking A Break
- Feature Flags Book Playground, Videos, And Code
- Playing With Window Functions In MySQL 8
- High Performance SQLite Video Course By Aaron Francis
- Working Code Podcast - Episode 199: Country Code TLDs
- Running Memory Leak Detection After Every ColdFusion Request
- Collocating My ColdFusion, CSS, And JavaScript Files
- Dave Farley On What Makes High Quality Code
- Making A Case For Var Declarations In ColdFusion Templates
- CSV To CTE Transformer In Angular 18
September 2024
- Working Code Podcast - Episode 197: Potluck
- Using Canonicalize() To Embed Emoji In Email Subject Lines In ColdFusion
- Using Canonicalize() To Render Emoji In ColdFusion
- Working Code Podcast - Episode 195: Isn't Worth The Squeeze
- Dynamically Define For-Loop Increment In ColdFusion
- Generating Lorem Ipsum Text In ColdFusion
- ColdFusion: Comparison Method Violates Its General Contract
August 2024
- Working Code Podcast - Episode 193: Bonding In The Foxhole
- TODO: Granting Yourself Permission To Move Forward
- Signals And Array Mutability In Angular 18
- Exploring Lazy Evaluation Of Computed Signals In Angular 18
- Building An Angular App For ColdFusion Using Docker Compose
- Working Code Podcast - Episode 192: The Best And Worst Code
- Working Code Podcast - Episode 191: Too Much Process
- Creating A Transient View Helper In Angular 18
- Working Code Podcast - Episode 190: Career Advice To Younger Self
- JavaScript Application Size Shouldn't Affect Performance
- Code Isn't Magical, It's Just A Series Of Commands
July 2024
- Working Code Podcast - Episode 188: Code Review Nuance
- An "x-input" Property Binding Directive In Alpine.js
- Code Kata: Building A Tri-State Switch In Alpine.js
- Using AttributeCollection To Manage Locking In ColdFusion
- Highlighting Dynamic Parts Of A Pretty-Printed JSON Value In JavaScript
- Working Code Podcast - Episode 187: Viability Of The Minimum Viable Product
- Getting A Struct Key In Its Native Key-Casing In ColdFusion
- OWASP Java Encoder Project Recommends Using Both URL and Attribute Encoding For HREF Attributes
- Normalizing Collection Entries In ColdFusion
- Sorting Arrays With Priority Elements In ColdFusion
- Working Code Podcast - Episode 186: Work Insecurities
- Creating A ColdFusion-Oriented HashCode With Loose Types (Part 2)
- Working Code Podcast - Episode 185: A/B Testing Mechanics
- Extracting Illegal Tag Names From AntiSamy Error Messages In ColdFusion
- Creating A ColdFusion-Oriented HashCode With Loose Types
- Using An Ordered Struct As A Fixed-Size Cache In ColdFusion
- Encapsulating Serialization Logic In ColdFusion
- Adobe ColdFusion Parses JSON Into Non-Ordered Structs
June 2024
- Two Spread Operator Bugs In Adobe ColdFusion 2023
- Working Code Podcast - Episode 184: Code Comments For The Win
- Working Code Podcast - Episode 183: Carol's New Project
- Core Decision Functions Will Accept Null / Undefined Values In ColdFusion
- Bug In Struct.Each() Error Handling In Adobe ColdFusion
- Exploring Randomness In JavaScript
- Color Palette Utility In Apline.js
- Using Both Tab And Arrow Keys For Keyboard Navigation
- Generating Fake User And Company Data With ColdFusion
- Working Code Podcast - Episode 181: More The Laws Of Software
- Using Range Offsets To Power Weighted Distributions In ColdFusion
- The 17th Annual Regular Expression Day - June 1st 2024
May 2024
- Using Margins With Four-Sided Positioning In CSS
- Parallel Iteration vs. Chunked Parallel Iteration In Lucee CFML
- Working Code Podcast - Episode 180: The Laws Of Software
- Nesting The pointer-events Property In CSS
- Working Code Podcast - Episode 179: AI Sells You On AI
- Experimenting With Low-Level SQLite Access In Lucee CFML
- Working Code Podcast - Episode 178: Upgrading From Node 0.10
- Creating In-Memory SQLite Databases Using JDBC In Lucee CFML
- Creating On-The-Fly Datasource Connections In Lucee CFML
- Experimenting With SQLite JDBC Connections In Lucee CFML
- Using Multiple Common Table Expressions In One SQL Query In MySQL
- CSS Open Props Exploration
- Working Code Podcast - Episode 177: Infinite Invisibility Timeout
- Where Does Serialization / Deserialization Belong In A Database Access Workflow?
- Why I Avoid DEFAULT Column Values In My SQL Database
- CFHttp Error: Column Names Must Be Valid Variable Names In ColdFusion
- Working Code Podcast - Episode 176: Mocking In Public
April 2024
- Using :where() To Reduce CSS Specificity Issues
- Inline Script Tag Execution In Hotwire Turbo And ColdFusion
- Adding turbo-cfml To My ColdFusion + Hotwire Demos Project
- Working Code Podcast - Episode 175: Overcompensation, Mentoring, And More
- Variables Scope Persists Across Custom Tag Execution Modes In ColdFusion
- ColdFusion Custom Tags Can Have Privately Scoped Functions
- Using getApplicationMetadata() To Provide Global Defaults In ColdFusion
- CF_SaveFile Custom Tag In ColdFusion
- Dedenting Text In ColdFusion
- Paginating The Postmark Bounces API In ColdFusion
- Creating blockTrim(), inlineTrim(), and trailingTrim() Functions In ColdFusion
- Working Code Podcast - Episode 174: When Good Software Goes Bad
- Working Code Podcast - Episode 172: Building Your Own Standard
- Extracting JSON Embedded Within A Generate HTML File In ColdFusion
- Decoding The EncodeForJavaScript() Output In ColdFusion
- Less CSS Won't Import The Same File Twice When Globbing
- Forking Hotwire Turbo To Make It ColdFusion Compatible
- Understanding RegExp Capture Groups When Using .split() In JavaScript
- Playing With MutationObserver In JavaScript
March 2024
- Using VALUES / ROW To Create Derived Table From Static Values In MySQL 8.0.19
- On Ending Path Variables With A Slash (Or Not) In ColdFusion
- Using CFModule To Render Templates With Isolation In ColdFusion
- Working Code Podcast - Episode 171: Strategy Vs. Tactics
- Magic Life-Cycle Test In Alpine.js
- Code Kata: Parsing Time Spans In ColdFusion
- Code Kata: Alpine.js Calendar Component
- HTML Templates Can Be Mutated Just Like Any Other DOM
- CSS Enter Animations Follow The 80/20 Rule
- Reading Element Attributes Collection In JavaScript
- Working Code Podcast - Episode 170: Product Design With Thelma Van
- Working Code Podcast - Episode 169: Earning Potential Of Spaces
- Adding One-Click Unsubscribe SMTP Headers To My Comment Emails In ColdFusion
- I Broke The Comment Subscription System For The Last Year
- Using The Angular.js Parser To Comply With CSP In Alpine.js 3.13.5
- Recursive JSON Explorer In Alpine.js 3.13.5
- Using Alpine.js To AJAX'ify HTML Fragments Served From ColdFusion
- DateGetTime() To Get UTC Milliseconds From Date In ColdFusion
- ColdFusion 2021 MySQL Query No Longer Returning Dates As Dates
- Working Code Podcast - Episode 168: Memory Safe Mandate
- Ask Ben: Fisher-Yates Shuffle Algorithm In ColdFusion
- Exploring DOM Mutation Observation In Alpine.js 3.13.5
- Various Ways To Get ColdFusion Data Into An Alpine.js Component
- Recursive Template Rendering In Alpine.js 3.13.5
February 2024
- Creating A Template-Outlet Directive In Alpine.js 3.13.5
- Cloning Templates In Alpine.js 3.13.5
- Overcoming Asymmetric Prototype Property Access With Proxies In JavaScript
- Working Code Podcast - Episode 167: Do You Have A Brand?
- Scoping Reactive Object References In The DOM In Alpine.js 3
- Creating A CSS Class Name Directive In Alpine.js 3
- Submitting Forms With CMD+Enter In Alpine.js
- Hello World In Svelte JS 4
- Working Code Podcast - Episode 166: Successful Onboarding
- Casting Java Structs And Arrays To ColdFusion Structs And Arrays
- Polyfill Form Field Grouping Using Bracket Notation In Adobe ColdFusion
- Working Code Podcast - Episode 165: Agile Methodology With Brian Sadler
- Conditionally Updating Columns When Using ON DUPLICATE KEY UPDATE In MySQL
January 2024
- Comparing Binary Values In ColdFusion
- Working Code Podcast - Episode 164: Potluck
- Performance Of Struct vs. Ordered Struct In ColdFusion
- Powering Email Unsubscribe Links Using Signed URLs In ColdFusion
- Converting Strings To Integers Using Hash, HashCode, And CRC-32 In ColdFusion
- Working Code Podcast - Episode 163: Exposing Yourself To New Technology
- Always Identify Your Calling Service Within The HTTP User Agent Header
- Generating Secure URL Signatures To Prevent Tampering In ColdFusion
- Define Your Email Content Using Pure Templates In ColdFusion
- Working Code Podcast - Episode 162: Not Enough Time
- Timeboxing Code Execution In ColdFusion
- Using Per-Application Mappings To Alias Files In ColdFusion
- Consuming Large Configuration Files Inside A ColdFusion Component
- Working Code Podcast - Episode 161: Goals For 2024
- Lessons Learned From Sending 7 Million Emails In 5 Days Using ColdFusion
- Using Cloudflare Turnstile reCAPTCHA-Alternative In ColdFusion
- Follow-Up On Error Handling During Async Iteration In ColdFusion
- Proof Of Concept: CFHttp With A Retry Policy In ColdFusion
- Considering The Ergonomics Of Tags And Objects In ColdFusion
- Working Code Podcast - Episode 160: Design Systems And Coding Philosophy
December 2023
- Working Code Podcast - Episode 159: No Effort December Returns
- Feature Flags Book: I Eat, I Sleep, I Feature Flag
- Feature Flags Book: What If I Can Only Deploy Every 2 Weeks?
- Feature Flags Book: Getting From No To Yes
- Feature Flags Book: Product Release vs. Marketing Release
- Feature Flags Book: Increasing Agility With Dynamic Code
- Feature Flags Book: Measuring Team Productivity
- Feature Flags Book: Removing The Cost Of Context Switching
- Feature Flags Book: An Opinionated Guide To Pull Requests (PRs)
- Feature Flags Book: Building Inclusive Products
- Feature Flags Book: People Like Us Do Things Like This
- Feature Flags Book: Transforming Your Company Culture
- Feature Flags Book: Logs, Metrics, And Feature Flags
- Feature Flags Book: Track Actions, Not Feature Flag State
- Feature Flags Book: Build vs. Buy
- Feature Flags Book: Not Everything Can Be Feature Flagged
- Feature Flags Book: The Hidden Cost Of Feature Flags
- Feature Flags Book: Ownership Boundaries
- Feature Flags Book: Life Without Automated Testing
- Feature Flags Book: Bridging The Sophistication Gap
- Feature Flags Book: Server-Side vs. Client-Side
- Feature Flags Book: Use Cases
- Feature Flags Book: Life-Cycle Of A Feature Flag
- Feature Flags Book: Types Of Feature Flags
- Feature Flags Book: The User Experience (UX) Of Feature Flag Targeting
- Feature Flags Book: Going Deep On Feature Flag Targeting
- Feature Flags Book: Key Terms And Concepts
- Feature Flags Book: Feature Flags, An Introduction
- Feature Flags Book: The Status Quo
- Feature Flags Book: Of Outages And Incidents
- Working Code Podcast - Episode 158: The Premortem Premortem
- Using Google reCAPTCHA v3 In ColdFusion
- Generating Pandoc Heading Identifiers In ColdFusion
November 2023
- Creating A Marquee Effect With CSS Animations
- Multi-Var Assignments In A Single Line In ColdFusion
- Reflecting On Natural Language Operators In ColdFusion
- Working Code Podcast - Episode 155: We're Thankful For Software
- The RegEx Of Everyday Things
- Early Access: Feature Flags - From Concept To Cultural Revolution
- Working Code Podcast - Episode 154: Premortems And Log Levels
- Working Code Podcast - Episode 153: Our Biggest Failures
- Working Code Podcast - Episode 152: Crontab, AI, And Book Publishing
- Working Code Podcast - Episode 151: Async Human Solutions
October 2023
- Working Code Podcast - Episode 150: What's On Your Workbench
- Enforcing The HTTP Request Method In ColdFusion
- jSoup Error: Index Out Of Bounds For Length
- Working Code Podcast - Episode 147: Potluck
- Understanding The TrimWhitespace() Function In Lucee CFML
- Generating A Table Of Contents Using jSoup And ColdFusion
September 2023
- Transactive Memory Systems Theory And Engineering Team Mentality
- Replacing RxJS With A State Machine In JavaScript
- Working Code Podcast - Episode 146: Resiliency Is Hard
- Working Code Podcast - Episode 145: Shiny New Things
- Which Whitespace Characters Does trim() Remove In ColdFusion
- Using FileReadLine() With Seekable Files In ColdFusion
- Working Code Podcast - Episode 144: The Power Of One
- Coming Soon: Feature Flags - From Concept To Cultural Revolution
- Using Labeled Loops In JavaScript
- Working Code Podcast - Episode 143: Moving On, Rewriting, And Replatforming
- Including CSS File Content Using CFInclude In ColdFusion
- Using Labeled Loops In ColdFusion
- Using Seekable Read Files In ColdFusion
August 2023
- Using CFLoop To Iterate Over A File Line-By-Line In ColdFusion
- Using Feature Flags To Hack Your Own Psychology
- Working Code Podcast - Episode 142: Tangents All The Way Down
- Wireframing For Everyone By Michael Angeles, Leon Barnard, And Billy Carlson
- Working Code Podcast - Episode 141: Building Stuff So You Can Build Stuff
- Using Position: Sticky With Multi-Sided Anchoring In CSS
- Working Code Podcast - Episode 140: Fraud, What Is It Good For?
- Error "Type" Isn't Always A String In Adobe ColdFusion
- Sanity Check: Using Overflow Scrolling On CSS Flexbox Panels
- Working Code Podcast - Episode 139: New Tables vs New Columns
- My ColdFusion "Controller" Layer Is Just A Bunch Of Switch Statements And CFIncludes
- Working Code Podcast - Episode 138: Ben Goes Streaking!
- Layla Porter On Modular Monolith Boundaries
July 2023
- Auto-Saving Form Data In The Background Using The fetch() API
- MySQL 8.0.13 Can Use An Existing Column As The DEFAULT Value For A New Column
- Considering UTC And Recording Activity Streak Data In ColdFusion
- Working Code Podcast - Episode 137: The Grug Brained Developer
- Working Code Podcast - Episode 136: Do Words Matter?
- Spread Operator Cannot Replace Struct-Based argumentCollection In ColdFusion
- Adobe ColdFusion Elvis Operator Struggles With Nested Array References
- Styling An Element When An Input's Placeholder Is Being Shown In CSS
- On Returning SQL Queries As Arrays In ColdFusion
- Working Code Podcast - Episode 135: Note To Self
- Dynamically Swapping Input / Keyboard InputMode On iOS
- Adobe ColdFusion Returns NULL Dates As NULL When Using CFQuery ReturnType "Array"
- Always Include Charset With fileRead() In ColdFusion
- Working Code Podcast - Episode 134: Ben Goes To A Conference
June 2023
- Working Code Podcast - Episode 133: The Final Stretch
- Working Code Podcast - Episode 132: Virtual Reality
- Code Kata: Compacting Arrays In ColdFusion
- Working Code Podcast - Episode 131: Starting From Scratch
- They Were Able To Heal Even When They Could Not Cure
- Creating A Database-Driven Scheduled Task Runner In ColdFusion
- Working Code Podcast - Episode 130: Book Club, The Phoenix Project
- Building A Magic Link Passwordless Login In ColdFusion
- Using Nested Locks To Synchronize Background Data Cleanup In ColdFusion
- The 16th Annual Regular Expression Day - June 1st 2023
May 2023
- Working Code Podcast - Episode 129: Build vs. Maintain
- Code Kata: Simple Dependency Injection (DI) With ColdFusion
- Working Code Podcast - Episode 128: Potluck
- Firefox CSS Bug: Four-Sided Positioning With Buttons
- Using CSS Flexbox To Create A Simple Bar Chart In ColdFusion
- Working Code Podcast - Episode 127: Tech Interviewing Is Broken With Sean Corfield
- Parsing GitHub Gist Embeds Into A Normalized Data Structure Using jSoup In ColdFusion
- Maintaining White Space Using jSoup And ColdFusion
- Using BugSnag As A Server-Side Logging Service In ColdFusion
- Working Code Podcast - Episode 126: Documenting Design Decisions
- Importing Multiple ColdFusion Custom Tag Directories Using The Same Prefix
- ColdFusion Custom Tags Can Use Dashed Attributes
- On Starting A Side-Project: Hotwire vs. Angular
- Working Code Podcast - Episode 125: What's On Your Workbench?
- Hosting Google Fonts Locally For GDPR Compliance
April 2023
- DHH On The Freedom Of Server-Side Programming
- Handling 401 Unauthorized Responses In Turbo Drive And ColdFusion
- Working Code Podcast - Episode 124: Juniors For Life
- John Gall's Law On Building Complex Systems
- Working Code Podcast - Episode 123: Negative 10x Developers
- Selecting Portions Of A Turbo Stream Template With Custom Actions
- Accessing Stimulus Controllers From A Given DOM Element In Hotwire
- Building Resilient Feature Flags That "Fail Open" In ColdFusion
- Associating Submit Buttons With Any Form Using Button Attributes In Native HTML
- Working Code Podcast - Episode 122: Coding Hot Takes
- Listen For Stimulus Custom Events Outside Of Hotwire
- Using navigator.sendBeacon() To Publish Analytics Back To ColdFusion
- Using Public Class Fields To Bind Event Handlers In JavaScript
- Using A Transient CSS Stylesheet To Remove Scrolling On Body While Modal Is Open
- Removing A CSS Stylesheet Removes Its Affect On The Document
- CSS overscroll-behavior Only Affects Scroll Containers
- Working Code Podcast - Episode 121: Ben's Testing Tribulations
- Conway's Game Of Life In Hotwire And ColdFusion
March 2023
- Thought Experiment: Creating Single Use-Case Components In ColdFusion
- Getting FusionReactor User Experience Monitoring (UEM) To Play Nicely With Content Security Policy (CSP) In ColdFusion
- Working Code Podcast - Episode 120: Freelancing With Nolan Erck
- A Bit Of Optimism: This Might Not Work
- Trying To Get ChatGPT 4 To Solve My Hotwire Form Submission Problem
- Disabling Turbo Drive In A Subdirectory Of Your ColdFusion Application
- Russian Doll Content Wrapping With CFSaveContent In ColdFusion
- Working Code Podcast - Episode 119: Potluck
- Incrementally Applying Hotwire To An Existing ColdFusion Application
- I've Never Had A Good Story For View-Rendering Helpers In ColdFusion
- Working Code Podcast - Episode 118: Things We Should Be Doing
- Using Nested Stimulus Controllers With Hotwire And Lucee CFML
- Using "return" To Short-Circuit A CFML Template In ColdFusion
- Rendering A Fly-Out Form Panel Using Turbo Frames With Hotwire And Lucee CFML
- Working Code Podcast - Episode 117: Champions Of Truth
- Styling Submit Buttons During Form Submission With Hotwire And Lucee CFML
- Rendering A Persistent Dismissible Banner Using Hotwire And Lucee CFML
- Dynamically Adding Stimulus Controllers To Static Content Using Hotwire And Lucee CFML
- The User Experience (UX) Of Disabled Form Buttons
- Transcluding A Form Into A Turbo Frame Using Hotwire And Lucee CFML
- Working Code Podcast - Episode 116: State Of Developer Conferences
February 2023
- Creating Custom Turbo Stream Actions In Hotwire And Lucee CFML
- Async Communication Is Great, Except For When It's Awful
- Including Inline Turbo-Stream Actions In Hotwire And Lucee CFML
- Persisting An IFrame-Based Video Player Across Page Visits With Hotwire And Lucee CFML
- Working Code Podcast - Episode 115: Self-Care For Developers
- Rendering Elements After The HEAD Tag In JavaScript
- Updating Permanent Elements On Page Navigation In Hotwire Turbo And Lucee CFML
- Parsing File Paths As Slash-Delimited Lists In MySQL
- Working Code Podcast - Episode 114: Carol Got Laid Off
- Using Stimulus To Preload Links On Hover In Hotwire And Lucee CFML
- Defer Loading Using Permanent Turbo Frames In Hotwire And Lucee CFML
- Extending The Current Request Timeout In ColdFusion / CFML
- Exploring Turbo Drive Back-Button Caching Behavior In Lucee CFML
- Exploring The Turbo Drive Navigation Progress Bar In Lucee CFML
- Working Code Podcast - Episode 113: Surviving A Layoff
- Rendering A Local TimeStamp With Stimulus Using Hotwire And Lucee CFML
- Dynamically Updating Views With Turbo Streams Using Hotwire And Lucee CFML
- Working Code Podcast - Episode 112: Listener Questions
January 2023
- A Simple Slide Show Using Hotwire And Lucee CFML
- OnRequestStart() / OnRequest() Methods Invoked Even If Requested Template Doesn't Exist In Lucee CFML
- Setting Up My ColdFusion + Hotwire Demos Playground
- Working Code Podcast - Episode 111: How To Learn Stuff Good
- Does The Order Of Hash Inputs Matter In Terms Of Uniqueness And Distribution?
- Comparing Java's MessageDigest To ColdFusion's hash() Function In Lucee CFML
- Using "continue" To Short-Circuit .each() Iteration In ColdFusion
- Working Code Podcast - Episode 110: Measuring Impact At Work
- Dynamically Instrumenting ColdFusion Component Methods With GetTickCount() To Locate Performance Bottlenecks
- Overriding Form Submission Properties Using Button Attributes In Native HTML
- CUID2 For ColdFusion / CFML
- Testing Performance Overhead Of Creating Java Classes In Lucee CFML
- Working Code Podcast - Episode 109: Best Of 2022
- Hotwire Turbo Drive Requires Failed Form Submissions To Return A non-2xx Status Code
- Code Kata: Recursively Flattening A Deep Array In Lucee CFML
- Iterating Over Function Arguments Using CFLoop In Lucee CFML
- Code Kata: Flattening An Array In Lucee CFML
- Hotwire Turbo Drive Doesn't Work With .cfm Page Extensions
- Working Code Podcast - Episode 108: 2022 Year In Review
- In Life, Things Suffer More From Disuse Than From Overuse
December 2022
- Showing An Error Message In The OnError() Method In Application.cfc In CFML
- Working Code Podcast - Episode 107: Through The Wormhole
- Considering Nullable Date Columns As A Representation Of State In SQL
- Setting And Clearing Nullable Values In A Data Access Layer In ColdFusion
- People Don't Mind Being Used As Long As They Aren't Forgotten
- Fixing GitHub Gist's Sudden Case Of Line Wrapping
- Working Code Podcast - Episode 106: A Cascading Cataclysmic Christmas
- Paging Through Data Using LIMIT And OFFSET In MySQL And ColdFusion
- Using INSERT INTO SELECT To Duplicate Rows In MySQL And Lucee CFML
- Breaking An IPv4 Address Range Up Into CIDR Ranges In Lucee CFML 5.3.9.141
- Working Code Podcast - Episode 105: No Effort December
- Serving Secure Files With CFContent Tag's File Attribute In ColdFusion
- Dynamic Tab-Size Demo Using CSS Custom Properties In JavaScript
- What Files Should Live In The WwwRoot Folder?
- Working Code Podcast - Episode 104: Alexa Make A Podcast About AI
- I'm Beginning To Think That Much Of Programming Is Wildly Subjective
- Using LATERAL Joins To Get "Top N" Records From Each Group In MySQL 8.0.14
November 2022
- Working Code Podcast - Episode 103: Birdsite Go Boom
- Using Picture And Source Tags To Prevent Loading Hero Image On Mobile Devices
- EventSource And Generating Server-Sent Events In ColdFusion / Lucee CFML
- Working Code Podcast - Episode 102: Migrating Large Databases
- You Can Render Anything In Angular
- Using A Closure To Encapsulate CFThread Execution And Error Handling In ColdFusion
- Working Code Podcast - Episode 101: Error Messages
- Generating Fallback Avatars Using CFImage And ColdFusion
- Working Code Podcast - Episode 100: The Spicetacular
- Only Solve One New Problem At A Time
- Proxying Gravatar Images For Better Avatar Caching In ColdFusion
- Nesting JSON Functions Inside JSON_ARRAYAGG() And JSON_OBJECTAGG() In MySQL 5.7.38
- Working Code Podcast - Episode 99: Technical Debt Isn't Romantic
- Preventing Unbounded Full-Table Scans In My ColdFusion Database Access Layer
- CFCookie "Expires" Can Use CreateTimeSpan() In ColdFusion
October 2022
- Looking At How Cookies And Domains Interact In ColdFusion
- Leading Dots On HTTP Cookie Domains Ignored
- A Database Column For "Date Updated" Has No Semantic Meaning, Nor Should It
- Working Code Podcast - Episode 98: In Defense Of Working On The Legacy Platform
- Considering The "Bounded Context" Of Error Messages In A ColdFusion Application
- Base Tag HREF Doesn't Affect Document Root-Relative URLs
- Using MailHog SMTP Server With ColdFusion And Docker
- Working Code Podcast - Episode 97: Expectations Of Professional Software Engineers
- Rotating Table Headers With CSS Transform
- Trying To Get The Most Trustworthy IP Address For A User In ColdFusion
- Router's loadChildren Callback Doesn't Have To Be A Fat-Arrow In Angular 14
- Working Code Podcast - Episode 96: Why Do You Write?
- Converting A Query Into A Human-Readable CSV In Two Phases In ColdFusion
- Working Code Podcast - Episode 95: Unpopular Opinions
- Converting UUIDs To Binary For VARBINARY(16) Storage In MySQL And ColdFusion
- Using CreateDynamicProxy() To Power Thread-Safe Counters In ColdFusion
- Remediating CSV Injection Attacks In ColdFusion
September 2022
- Working Code Podcast - Episode 94: Disagree And Commit
- Considering Control Flow And Transient Data Relationships In ColdFusion
- CAUTION: Your JavaScript / Node Module Might Be A "Singleton" (Anti-Pattern)
- Key Conflicts On INSERT Still Increment AUTO_INCREMENT Value In MySQL
- Working Code Podcast - Episode 93: Sounds Easy, Sure Isn't
- Using Type Guards To Narrow Down Error Handling Types In Angular 14
- Adding An Angular 14 Front-End To My ColdFusion Feature Flag Exploration
- Canvas "alphabetic" textBaseline Is Consistent Across Browsers
- Working Code Podcast - Episode 92: The Power Of No
- Rendering Text To Canvas With Adjusted X,Y Offsets For Better Cross-Browser Consistency
- Working Code Podcast - Episode 91: Side Projects
- Playing With Standalone Components / Optional Modules In Angular 14
- Tokenizing Date/Time Values In Lucee CFML 5.3.7.47
- Bucketing Dates Using floor() In ColdFusion
August 2022
- Using jSoup To Fix Post-Marriage Name Changes In ColdFusion 2021
- Working Code Podcast - Episode 90: Side Hustles
- Working Code Podcast - Episode 89: What Makes A Good Roadmap?
- Using jSoup To Extract JSON+LD Structured Data In ColdFusion 2021
- Rendering Wrapped Text To A Canvas In JavaScript
- Detecting Rendered Line Breaks In A Text Node In JavaScript
- Working Code Podcast - Episode 88: Documentation, Yay!
- Updated Thoughts On Validating Data In My Service Layer In ColdFusion
- Strangler: Building A Feature Flag System In ColdFusion
- Working Code Podcast - Episode 87: Note To Self
- ColdFusion Alive, Episode 117: Adobe ColdFusion And Lucee CFML Roundtable, Part III
- Working Code Podcast - Episode 86: The Working Code Test
July 2022
- Working Code Podcast - Episode 85: Shipping Complexity
- Pretty-Printing JSON Using GSON In Lucee CFML 5.3.9.141
- Using Multiple Break Statements In A Single Case Clause In ColdFusion
- Working Code Podcast - Episode 84: Interview With Jason Henriksen
- Using Strict Type Decision Methods In ColdFusion
- Validating Complex, Nested, Dynamic Data Structures In ColdFusion
- Working Code Podcast - Episode 83: What If You Weren't A Coder?
- Building-Up A Complex Objects Using A Multi-Step Form Workflow In ColdFusion
- Working Code Podcast - Episode 82: GitHub Charging For Copilot
- Building-Up A Complex Objects Using Form POST-Backs In ColdFusion
June 2022
- Working Code Podcast - Episode 81: Total Randos
- Using An Array To Power Weighted Distributions In Lucee CFML 5.3.8.201
- Namespacing Components With Per-Application Mappings In ColdFusion
- Looking At The Performance Overhead Of A Read-Only Lock In Lucee CFML 5.3.8.201
- Updating My Mental Model For Shared Array / Struct Iteration In ColdFusion
- Working Code Podcast - Episode 80: Other Duties As Assigned
- Considering A Stale-While-Revalidate Pattern To Caching In ColdFusion
- Playing With Java Pattern's Named Capture Groups In ColdFusion
- Adding jreExtract() To Pluck Captured Groups Using Regular Expressions In ColdFusion
- ColdFusion Alive, Episode 115: Adobe ColdFusion And Lucee CFML Roundtable, Part II
- Ask Ben: Extending A ColdFusion Session On A Long-Lived Page
- Working Code Podcast - Episode 79: Potluck 5
- It's OK To Be Super Explicit In Your Data Access Method Names
- A Relational Database Table To Prevent Double Form-Submissions In ColdFusion
- Working Code Podcast - Episode 78: User Experience (UX) Guard Rails
- Disabling Async Attribute On CFMail For At-Least-Once Delivery In Lucee CFML
- Adding New Regular Expression Parsing To My JRegEx Project For ColdFusion
- More Slicing And Dicing Strings Using Java Regular Expressions In ColdFusion
- Parsing Lists Using A RegEx Delimiter In Lucee CFML 5.3.8.201
- The 15th Annual Regular Expression Day - June 1st 2022
- Working Code Podcast - Episode 77: Mid Manager Blues
May 2022
- Parsing Liquid Tag Embeds With jSoup And Lucee CFML 5.3.8.201
- Code Kata: Array Intersection, Union, And Difference In Lucee CFML 5.3.8.201
- Working Code Podcast - Episode 76: Ben Needs A Minute
- Dynamically Enabling / Disabling Session Management In Lucee CFML 5.3.8.201
- Parsing Nullish Date "0001-01-01T00:00:00Z" In Lucee CFML 5.3.8.201
- SQL "Join Tables" Are Just "Entity Tables" With Hard-To-Name Concepts
- Working Code Podcast - Episode 75: What Problem Does This Solve?
- Code Kata: Getting Initials For A Name In Lucee CFML 5.3.8.201
- Working Code Podcast - Episode 74: What's On Your Workbench?
- Caveat When Using Umbrella JS With Template Elements In JavaScript
- Generating PDF Signatures With Google Fonts And html2canvas In JavaScript
- Working Code Podcast - Episode 73: On Bad Leaders And Gaslighting Employees
- ColdFusion Alive, Episode 113: Adobe ColdFusion And Lucee CFML Roundtable
- Considering Approaches To Handling MySQL Key Conflicts In Lucee CFML
- For Consideration: An ArrayFrom() Function In ColdFusion
- Safely Using Array.sublist() To Generate Slices In Lucee CFML
April 2022
- R.O.P.E. And Battling Post-Deployment Depression
- Working Code Podcast - Episode 72: Wearing Too Many Hats
- Considering The Separation Of Concerns When Invoking A Remote API In ColdFusion
- ArraySlice() Has An Exponential Performance Overhead In Lucee CFML 5.3.8.201
- Working Code Podcast - Episode 71: Potluck #4
- On Always Returning Collections From Data Access Layers (DAL) In ColdFusion
- Instrumenting Cache Hits And Misses With FusionReactor Metrics In ColdFusion 2021
- Working Code Podcast - Episode 70: Self Reflection
- MySQL Query Optimization + Forgetting To Run EXPLAIN = Full Table Scan
- Using sgn() To Clamp Values In Array Sorting Operations In ColdFusion
- Code Kata: Throbbing Buttons Using box-shadow Animation In CSS
- Working Code Podcast - Episode 69: Now I'm Catching Events
- Adding CreateTimeSpan() To Date/Time Values In ColdFusion
- Moving My Short-Code Redirects To Netlify
- Adding FusionReactor Sub-Transaction Breakdowns To My ColdFusion Blog
March 2022
- Moving Comment Moderation To A Form POST Away From "cache.google.com"
- Using Closures To Bind Naked Functions To Components In ColdFusion
- Working Code Podcast - Episode 68: Hire Women, Inspire Women
- Avoiding MySQL max_allowed_packet Errors By Splitting-Up Large Aggregation Queries In ColdFusion
- Splitting An Array Into Groups In ColdFusion 2021
- Updating OWASP AntiSamy From 1.5.7 To 1.6.5 In ColdFusion 2021
- Considering A Numeric Range / Sequence Data Structure In ColdFusion
- Working Code Podcast - Episode 67: On Logging, Metrics, And Tracing
- Playing With The MySQL 8 Document Store X DevAPI In Lucee CFML 5.3.8.201
- Creating A Health Probe Using Netlify Cron Functions, Postmark, And ColdFusion
- Fundamental Differences In Elvis Operator Between Adobe ColdFusion And Lucee CFML
- Working Code Podcast - Episode 66: Make Meetings Suck Less
- compare() And compareNoCase() Can Accept NULL Values In ColdFusion
- Adding Strict-Transport-Security (HSTS) HTTP Header In ColdFusion 2021
- Serving A Bypassable "Down For Maintenance" Page In ColdFusion 2021
- Emitting Application Events In The Context Of Bulk Operations?
- FusionReactor APM Gives Me Peace-of-Mind Over In-Memory Caching In ColdFusion
- Working Code Podcast - Episode 65: TDD In The Trenches With Scott Stroz
- Using Common Table Expressions (CTE) To Create Derived Tables In MySQL 8
- Using LATERAL Derived Tables To Gather Row-Specific Aggregations In MySQL 8.0.14
- Tracking Database Schema And Schema Migrations In Git Version Control
- Moving MySQL To A Per-Application Datasource In ColdFusion 2021
- Working Code Podcast - Episode 64: Should I Stay Or Should I Go Now?
- Upgrading My ColdFusion Blog From MySQL 5.7.10 To MySQL 8.0.28
February 2022
- Goodbye GROUP_CONCAT(), Hello JSON_ARRAYAGG() And JSON_OBJECTAGG() In MySQL 5.7.32
- POC: Embedding Encryption Key-Version Within Encrypted Payload In Lucee CFML 5.3.8.201
- Installing FusionReactor APM Showed Me A Huge Oversight In My ColdFusion Queries
- Irrational Guilt Over Using ORDER BY id In My ColdFusion SQL Queries
- Working Code Podcast - Episode 63: Nobody Makes It Out Alive!
- Storing Encryption Key Version As A Prefix On The Encrypted Field In MySQL
- Irrational Guilt Over Returning Queries From My Data-Access Layer (DAL) In ColdFusion
- You Can throw() Anything In JavaScript - And Other async/await Considerations
- Ignoring Loopback WebSocket Events From Pusher In Lucee CFML 5.3.8.206
- Working Code Podcast - Episode 62: Note To Self
- Using Unicode And Special Characters Within The content Property In CSS
- Using jSoup To Extract Open Graph / Twitter Card Images In ColdFusion 2021
- Ask Ben: Grouping Query Output By Column Value In ColdFusion
- Using jSoup To Generate Blog Post Previews In ColdFusion 2021
- Using jSoup To Inject Section-Title Anchors In ColdFusion 2021
- Working Code Podcast - Episode 61: Software Is For People
- Using jSoup To Clean-Up And Normalize HTML In ColdFusion 2021
- Using fetch(), AbortSignal, And setTimeout() To Apply Retry Mechanics In JavaScript
- Normalizing 0xA0 (No-Break Space) And Other Special Characters Within ColdFusion Form Posts
- Returning Permissions With My API Response Payloads In ColdFusion
- Performing A Double-Check Lock Around "Run Once" Code In ColdFusion
- Working Code Podcast - Episode 60: Technical Debt
- Using AbortController To Debounce setTimeout() Calls In JavaScript
January 2022
- Turning Off "InvalidTag" ScriptProtect Safely In ColdFusion 2021
- Ask Ben: Converting An XML Document Into A Nested ColdFusion Struct
- Dynamically Creating Script Tags With Umbrella JS
- I Always Design The Database Schema First, Then The ColdFusion Code
- Working Code Podcast - Episode 59: Everything Old Is New Again
- 100% Of BenNadel.com Traffic Now Flows Through The CloudFlare CDN (For Free)
- Download A GitHub Gist As JSON Using A Proxy End-Point In ColdFusion
- Mixing Promises And async / await For Caching Purposes In JavaScript
- Working Code Podcast - Episode 58: Do 10x Developers Exist?
- Creating jQuery Function Parity With Umbrella JS
- Replacing jQuery (110kb) With Umbrella JS (8kb)
- It's Not Enough, But Not Enough Is Better Than Nothing
- I'm Dropping IE11 Support, What JavaScript Features Can I Use Now?
- Working Code Podcast - Episode 57: Goals For 2022
- Canceling API Requests Using fetch() And AbortController In JavaScript
- Building An API Client With The fetch() API In JavaScript
- Showing A Comment Preview As You Type On This Blog
- Working Code Podcast - Episode 56: Best Of 2021
- Mitigating Cross-Site Scripting (XSS) Attacks With A Strict Content Security Policy (CSP) In ColdFusion 2021
- preserveCaseForStructKey Doesn't Work Inside Application.cfc In Adobe ColdFusion 2021
- Posting Comments Using Reply Emails And Postmark's Inbound Streams In ColdFusion 2021
December 2021
- Centralizing The Error Response Handling For My ColdFusion Blog
- Working Code Podcast - Episode 55: Sales Fails
- Working Code Podcast - Episode 54: We're So Quacked!
- Adding Canonical Link Tags To My Blog For Search Engines
- Working Code Podcast - Episode 53: Interview With Adam Lehman
- I Finally Implemented Dark Mode Using CSS Custom Properties On This Blog
- Working Code Podcast - Episode 52: Interview With Steve Rittler
- Recording Datadog / StatsD Gauges For Database Key Utilization In Lucee CFML 5.3.7.47
- Inspecting Primary And Secondary Index Key Utilization For MySQL 5.7.32 In Lucee CFML 5.3.7.47
- Using InVision Principles To Experiment With Scroll Snapping In CSS
- Worth: A Movie That Underscores The Criticality Of Customer Empathy
- You Can Now Edit Your Comments On This Blog Using SHA1PRNG Secure Tokens
- Terrifying Excitement: My First CFUNITED Conference Experience From 2007
- Working Code Podcast - Episode 51: You Are Replaceable
November 2021
- Referencing String Characters Using Array-Notation In ColdFusion 2021
- Standard Query Iteration Values Available During For-In Loop In ColdFusion
- CAUTION: Silent Value Truncation In CFQueryParam Tag In Lucee CFML 5.3.7.47
- Working Code Podcast - Episode 50: Where Do You See Yourself In 5 Years?
- Moving 5-Years Of Files Into Year-Based Folders In Adobe ColdFusion 2021
- Working Code Podcast - Episode 49: Replatforming
- Phill Nacelli's SQL Tip Is Making My CFQuery Upgrades In Adobe ColdFusion 2021 Easy
- A Query Object Maintains Its CurrentRow When Passed Out-Of-Context In Adobe ColdFusion 2021
- Working Code Podcast - Episode 048: TODO: Microwave ToDo List
- Writing To The Standard Out / Console Using WriteDump() In Adobe ColdFusion 2021
- ColdFusion Component Setters / Accessors Are Chainable For Easy Dependency-Injection
- Considering An isError() Decision Function In ColdFusion
- Getting Rollbar's Java SDK 1.7.10 Working In Adobe ColdFusion 2021
- Working Code Podcast - Episode 047: Email Ruins Everything
- From ColdFusion 10 To ColdFusion 2021 - Preparing For Some Blog Love
October 2021
- The Value Class java.time.LocalDateTime Cannot Be Converted To A Date In ColdFusion
- Securing ColdFusion Scheduled Tasks In A Docker Container Using Lucee CFML 5.3.8.206
- Managing Shared Secret Token Rotation Across Systems In Lucee CFML 5.3.7.47
- Working Code Podcast - Episode 046: Secret Management vs. Premature Optimization
- Reading Environment (ENV) Variables From The Server Scope In Lucee CFML 5.3.7.47
- Adam Lenda: Always Choose Consistently Bad Over Inconsistently Good
- Warning Users About The Windows Explorer Zip Archive Preview In JavaScript
- Making SQL Queries More Flexible With LIKE In MySQL 5.7.32 And Lucee CFML 5.3.7.47
- Creating A Group-Based Incrementing Value Using LAST_INSERT_ID() In MySQL 5.7.32 And Lucee CFML 5.3.7.47
- Creating A Group-Based Incrementing Value In MySQL 5.7.32 And Lucee CFML 5.3.7.47
- Working Code Podcast - Episode 045: Join Our Discord
- The Scope Of SERIALIZABLE Transaction Row-Locking Is Larger When Rows Don't Yet Exist In MySQL 5.7.32
- Applying Multiple Animation @keyframes To Support Prefers-Reduced-Motion In CSS
- Four-Sided Positioning Plays Nicely With Scale() Transformations In CSS
- Working Code Podcast - Episode 044: Facebook's No Good Very Bad Week
- Using INTERVAL To Perform Date Math Without DATE_ADD() In MySQL 5.7.32
- CFQueryParam Value Attribute Seamlessly Handles Arrays In Lucee CFML 5.3.7.47
- Using WHERE TRUE To Create Dynamic, High-Performance SQL Queries In MySQL 5.7.32 And Lucee CFML 5.3.8.201
- Working Code Podcast - Episode 043: Relay Race Programming
- Testing BIGINT AUTO_INCREMENT Usage In MySQL 5.7.32 And Lucee CFML 5.3.8.201
September 2021
- Working Code Podcast - Episode 042: Potluck
- Fixing Protocols In My ColdFusion Custom Tag DSL For HTML Emails
- Exploring The Scope Of SERIALIZABLE Transaction Row-Locking In Lucee CFML 5.3.7.47
- CFThread "ElapsedTime" Is Not "Processor Time" In Lucee CFML 5.3.8.201
- Working Code Podcast - Episode 041: The Third Age Of JavaScript With Shawn "swyx" Wang
- Enforcing Unique Naming Constraints Using A SERIALIZABLE Transaction In Lucee CFML 5.3.7.47
- Request Tracing Propagation When Consuming Amazon SQS Queues In Lucee CFML 5.3.8.201
- Spreading Http And HttpParam Tags Across Multiple Function Calls In Lucee CFML 5.3.8.201
- Generating SQL INSERT Statements From SQL SELECT Statements In MySQL 5.7.32
- Yahoo! Mail Does Not Render Anchor Tags With Encoded HREF Attributes
- Working Code Podcast - Episode 040: Are Database Transactions Overrated?
- Organizing My Application Layers Using Z-Index Stacking Contexts In CSS
- Checking CFLock Acquisition Success In Lucee CFML 5.3.8.201
- Separation Of Concerns When Consuming Amazon SQS Queues In Lucee CFML 5.3.8.201
- Producing And Consuming Amazon SQS Messages In Lucee CFML 5.3.8.201
- Working Code Podcast - Episode 039: Ben's Future At InVision
- Maintaining Route Information During SPA (Single-Page Application) Authentication In Lucee CFML
- I Wish My Relational Database Tables Were Narrower
- Using Relative File Paths To Configure Application Mappings In Lucee CFML 5.3.8.201
- Working Code Podcast - Episode 038: Holding Developers Accountable
August 2021
- Code Kata: Water Breathing Exercise In JavaScript
- Tracking User Interactions And Analytics With Small Abstractions In AngularJS
- Embracing Asymmetrical Design And Overcoming The Harmful Effects Of "text-overflow: ellipsis" In CSS
- Working Code Podcast - Episode 037: Brian Klaas Talks Cloud
- Using The LaunchDarkly Feature Flag Java SDK With Lucee CFML 5.3.8.201
- Brute-Force Refreshing View-Data In The Background In Angular 11.0.5
- Working Code Podcast - Episode 036: Blogging And Digital Gardening
- Restoring ActiveElement Focus After A User-Interaction In JavaScript
- Trapping Focus Within An Element Using Tab-Key Navigation In JavaScript
- Working Code Podcast - Episode 035: Being A Swamp Guide
- Applying Multiple Animation Keyframes To A Loading Indicator In CSS
- RandRange() With Algorithm Argument Uses java.security.SecureRandom In Lucee CFML 5.3.7.47
- Working Code Podcast - Episode 034: Some Of My Best Friends Are React Developers
- Why Do People Think React Teaches You More JavaScript?
July 2021
- Capturing Keyboard Event Modifiers Across Operating Systems In JavaScript
- Feature Flags Shift The Balance Of Power Away From Designers
- Working Code Podcast - Episode 033: Software Patents
- Exploring The Interplay Between HTML Entities And TextContent In JavaScript
- Inserting Text At The Last Known Selection / Caret Location In JavaScript
- Printing Emoji Characters From Unicode CodePoints Using HTML Entities In Lucee CFML 5.3.7.47
- Rending Emoji Glyphs Using Hexadecimal CodePoints In JavaScript
- Extolling The Benefit Of Feature Flags On The Deploy Friday Podcast
- I Assume That I'll Never Complete My Work, And I Plan Accordingly
- Working Code Podcast - Episode 032: What Comes After Senior Developer?
- The Deleterious Effects Of Working At Full Utilization
- Video Presentation: Feature Flags Change Everything About Product Development
- Working Code Podcast - Episode 031: To The Cloud, But Why?
- Animating The Pseudo-Element Content Property Using CSS Keyframes Animation
- Working Code Podcast - Episode 030: Carol Is Crushing It
- TimeMachine-Inspired Progress Indicator Using CSS Keyframes Animation
- Using The Directory Attribute To Invoke CFExecute From A Working Directory In Lucee CFML 5.3.8.189
June 2021
- The User Experience (UX) Of A Graceful No
- Working Code Podcast - Episode 029: Potluck
- Using The OWASP Java HTML Sanitizer In Lucee CFML 5.3.7.48 To Sanitize HTML Input And Prevent XSS Attacks
- Generating Color Swatches With GraphicsMagick And Lucee CFML 5.3.7.47
- Working Code Podcast - Episode 028: Build vs Buy
- Product Design And Meeting Customers Where They Are
- Managing And Reporting Errors During Parallel Array Iteration In Lucee CFML 5.3.7.47
- Working Code Podcast - Episode 027: Giving Technical Presentations
- Strange Variable-Name Error When Writing To Base Tag In Adobe ColdFusion 2018
- Adobe ColdFusion 2018 Compatible Version Of My ColdFusion Custom Tag DSL For HTML Emails
- Using The LaunchDarkly REST API To Update Rule Configuration In Lucee CFML 5.3.7.47
- Working Code Podcast - Episode 026: Passwords
- Managing Lists Of IDs Using HTML FORM Posts In Lucee CFML 5.3.7.47
- Changing Function Argument Defaults At Runtime In Lucee CFML 5.3.7.47
- Working Code Podcast - Episode 025: Breaking Up With Your Stack
- The 14th Annual Regular Expression Day - June 1st 2021
- Migrating Password Hashing Algorithms In Lucee CFML 5.3.7.47
May 2021
- Using Password4j And The BCrypt, SCrypt, And Argon2 Password Hashing Algorithms In Lucee CFML 5.3.7.47
- Including Tracing Headers In Nginx 1.18.0 Access Logs Using Custom Formatting
- Using The "X-Amzn-Trace-Id" Header For Request Tracing Through Amazon's Load Balancers
- Working Code Podcast - Episode 024: The Archetype Of An Effective Developer
- Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part XV
- Working Code Podcast - Episode 023: Clean Code By Robert Martin (Part 2)
- GetBaseTagData() Works Differently In Adobe ColdFusion 2018 And Lucee CFML 5.3.7.47
- Using The Elvis / Null Coalescing Operator To Loop Past Array Boundaries In Lucee CFML 5.3.7.47
- Pro Tip: Using The say Voice Synthesis Command After A Long-Running Task
- Using The CSS Function calc() Inside The LESS CSS Preprocessor
- Working Code Podcast - Episode 022: Clean Code By Robert Martin
- Creating Page-Breaks In CFDocument Without Using CFDocumentItem In Lucee CFML 5.3.7.47
- CFSaveContent Trim And Append Attributes In Lucee CFML 5.3.7.47
- Collecting HTML Class Name Attributes In Template Rendering In Lucee CFML 5.3.7.47
- Using Both SrcFile And CFDocumentItem In The Same CFDocument Tag In Lucee CFML 5.3.7.47
- Validating And Documenting Complex Object Structures With CFParam In Lucee CFML 5.3.7.47
- Working Code Podcast - Episode 021: Listener Questions
- Setting Global, Default Tag Attributes With "this.tag" In Lucee CFML 5.3.7.47
- Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part XIV
April 2021
- Modernizing My CSV (Comma Separated Value) Parser In Lucee CFML 5.3.7.47
- GetTickCount() Precision Argument In Lucee CFML 5.3.7.47
- Working Code Podcast - Episode 020: Carol Needs A Consult
- Experimenting With Lazy Queries And Streaming CSV (Comma Separated Value) Data In Lucee CFML 5.3.7.47
- Celebrating The Power And Simplicity Of CSV (Comma Separated Value) Data In Lucee CFML 5.3.7.47
- Calculating Derived Datasets Using Objects As Indexes In AngularJS 1.2.22
- Expected And Unexpected getBaseTagData() Behavior In Lucee CFML 5.3.7.47
- Working Code Podcast - Episode 019: Makefiles
- Using The URL As The Source Of Truth During Search In AngularJS 1.2.22
- Returning Search Filters Along With Search Results In Lucee CFML 5.3.7.47
- Working Code Podcast - Episode 018: Feature Flags
- Using Array-Like Structs As Arrays In Lucee CFML 5.3.7.47
- Experimenting With Try / Catch / Retry Semantics In Lucee CFML 5.3.7.47
- Unifying Type Casting Exceptions For Cleaner Log Aggregation In Lucee CFML 5.3.7.47
- Task Switching, Sensory Specific Satiety, And Staying Productive At Work
- Working Code Podcast - Episode 017: Premature Optimization
- Rethinking Error Type Schemas And Naming Conventions In My ColdFusion Application
- A Peek Into The Interstitial Cost Of Microservices
- Things I Regret: Returning Modified Data In API Response Payloads
March 2021
- Working Code Podcast - Episode 016: Interviews
- The Safe Navigation Operator Checks Both Left And Right Operands In ColdFusion
- Consuming Sparse, Unpredictable "omitempty" Golang JSON Payloads Using Null Coalescing In Lucee CFML 5.3.7.48
- Working Code Podcast - Episode 015: Potluck
- The ColdFusion Monolith Allows My Team To Move Fast And Deploy Hella Often
- An Opinionated Guide To Handling Pull Requests (PRs) On My Team
- Porting Lucee CFML's SystemOutput() Function Over To Adobe ColdFusion
- Casting Between Dates And Numeric Dates In Lucee CFML 5.3.7.48
- My Docker For Mac File IO Is 68-Times Slower Than It Is In Production
- Working Code Podcast - Episode 014: Zen And The Art Of Pull Requests
- Considering Two-Step ColdFusion Custom Tags That Generate CFML Code In Lucee CFML 5.3.7.48
- GetBaseTagList() Behavior With Different ColdFusion Custom Tag Invocations And Engines
- Extending A Distributed Lock TTL Using CFThread, Redis, And Lucee CFML 5.3.7.47
- Dynamically Extending A Long-Lived Distributed Locks With Redis In Lucee CFML 5.3.7.47
- Every Customer-Facing Call Should Have An Engineer On It
- Working Code Podcast - Episode 013: Do What You Love And You'll Never Work A Day In Your Life
- Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part XIII
- Case Study: Removing Massive IN (ID-List) Clauses For Performance In MySQL 5.7.32 And Lucee CFML 5.3.7.47
- Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part XII
- Killing Slow MySQL Queries In An Emergency In Lucee CFML 5.3.7.47
- Working Code Podcast - Episode 012: Idiomatic Code
- Converting My Loggly Search Bookmarklets Into An Unpacked Chrome Extension
February 2021
- Custom CFParam Tag That Exposes Error Information In Lucee CFML 5.3.7.48
- Divergent CALLER Scope Assignment Behavior In Adobe ColdFusion And Lucee CFML 5.3.7.48
- ColdFusion Custom Tag Performance Differences Between CFModule And CFImport In Lucee CFML 5.3.7.47
- Working Code Podcast - Episode 011: Listener Questions
- Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part XI
- Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part X
- Replacing Blank Lines Using Multiline Mode RegEx Patterns In POSIX And Java In Lucee CFML 5.3.7.47
- Finding All Unique Paths In A Tree Structure In Lucee CFML 5.3.7.47
- Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part IX
- Working Code Podcast - Episode 010: Scaling
- Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part VIII
- Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part VII
- Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part VI
- Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part V
- Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part IV
- Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part III
- Working Code Podcast - Episode 009: Testing
- Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47, Part II
- Case Study: Removing Implicit Variable Access At Scale In Lucee CFML 5.3.7.47
- Working Code Podcast - Episode 008: Origin Stories, Part II
- "Enterprise" Is Not A Dirty Word
January 2021
- Using ColdFusion Custom Tags To Create An HTML Email DSL In Lucee CFML 5.3.7.47
- Working Code Podcast - Episode 007: Origin Stories, Part I
- Building reMatchGroups() Using reFind() In Adobe ColdFusion 2018 And Lucee CFML 5.3.7.47
- Code Kata: Parsing Strings Like "5mb" Into A Number Of Bytes In Lucee CFML 5.3.7.47
- Generate And Incrementally Stream A ZIP Archive To Amazon S3 Using Multipart Uploads In Lucee CFML 5.3.7.47
- Using CSS :target Pseudo-Class To Toggle Element Display
- Working Code Podcast - Episode 006: Hopes For 2021
- Array.Sort() Operator Has Trouble With Return Values Between Zero And One In Lucee CFML 5.3.7.47
- Escaping The Build Trap: How Effective Product Management Creates Real Value By Melissa Perri
- Using Both STORED And DEFLATED Compression Methods With ZipOutputStream In Lucee CFML 5.3.7.47
- Generate And Incrementally Stream A ZIP Archive File On-The-Fly In Lucee CFML 5.3.7.47
- Using FrameworkOne (FW/1) Layouts To Strip Whitespace In Lucee CFML 5.3.7.47
- Working Code Podcast - Episode 005: Monoliths vs. Microservices
- Generating Newline-Delimited JSON (NDJSON) Using JSON_OBJECT() In MySQL 5.7.32
- Having Fun With The Horizontal Usage Of Position: Sticky In Angular 11.0.5
- Packaging A Password-Strength Module In Angular 11.0.5
- Working Code Podcast - Episode 004: Impostor Syndrome
- Inclusive Components: Accessible Web Interfaces, Piece By Piece By Heydon Pickering
- Making Snow Animations In Angular 11.0.5
- The User Experience (UX) Of My Microwave's "Add 30-Seconds" Button
- Having Fun With The SpeechSynthesis API In Angular 11.0.5
December 2020
- IntersectionObserver API Performance: Many vs. Shared In Angular 11.0.5
- Working Code Podcast - Episode 003: Burnout, Mental Exhaustion, And How To Be Productive When Life Sucks
- The SublimeText 3 Extended Find Results Tab Is A "Living Document"
- Using COUNT(), COUNT(column), And COUNT(expression) Variations To Extract Row Metadata In MySQL 5.7.32
- One Unhappy User Is A Tragedy; One Thousand Unhappy Users Is A Statistic
- Working Code Podcast - Episode 002: Working From Home
- Working Code Podcast - Episode 001: Adam's Secret Shame
- Working Code Podcast - Episode 000: Hello, World!
- Using IntersectionObserver And NgSwitch To Defer Template Bindings In Angular 11.0.5
- Attempting To Inject My echo.log() CSS-Styled Logger As A Chrome Extension
- Why I've Been Merging Microservices Back Into The Monolith At InVision
- Looking For Database Performance Bottlenecks And Optimizations Using The Sys Schema In MySQL 5.7
- Styling console.log() Output With A Chalk-Inspired Formatter Using JavaScript Proxies
- Styling console.log() Output Formatting With CSS
- Using Java's Concurrent Queues For Asynchronous Processing In Lucee CFML 5.3.7.47
- Recursive / Nested CFThreads Can Get Around CFSetting RequestTimeout In Lucee CFML 5.3.7.47
- Experimenting With "Tail Recursion" Using CFThread In Lucee CFML 5.3.7.47
- Exploring Type-Coercion And Value Comparisons In A JSON Column In MySQL 5.7.32
- Experimenting With Virtual Indexed Columns In MySQL 5.7.32 And Lucee CFML 5.3.7.47
- Atomically Incrementing JSON Column Values In MySQL 5.7.32 And Lucee CFML 5.3.7.47
- More Experimenting With The JSON Column Type In MySQL 5.7.32 And Lucee CFML 5.3.7.47
- Experimenting With The JSON Column Type In MySQL 5.7.32 And Lucee CFML 5.3.7.47
- Using A Top Of -1px To Observe Position Sticky Intersection Changes In Angular 11.0.3
November 2020
- Organizing My Reaction GIFs Using Node.js, Sharp, And Angular 11.0.2
- Using String Literals In Date / Time Formatting In Lucee CFML 5.3.7.47
- Proof-Of-Concept: Injecting Features Into An InVision Share Link Experience Using AngularJS 1.6.7
- Lists - The Unsung Heroes Of ColdFusion And Lucee CFML
- Replacing All External Date Libraries With 300 Lines-Of-Code In AngularJS 1.2.22
- Replacing All External Date Libraries With 300 Lines-Of-Code In Angular 11.0.0
- Adjusting Dates By Adding Date / Time Parts In Angular 11.0.0
- Adding Differ() And DifferNoCase() Built-In Function Extensions In Lucee CFML 5.3.7.47
- Building A Moment-Inspired .fromNow() Date Formatting Method In Angular 10.2.3
- Painless Date / Time Formatting With formatDate() In Angular 10.2.3
- Using Redis Blocking List Operations To Power Long-Polling In Lucee CFML 5.3.7.47
- Using Pusher WebSockets To Show Progress During Page Unload / Redirect In Lucee CFML 5.3.7.47
- The Power Of Cascading Tag Attributes In Lucee CFML 5.3.7.43
October 2020
- Performing A Case-Sensitive Search On A Case-Insensitive Column Using COLLATE In MySQL 5.6.49
- Generating A QR Code With iTextPDF 7 Barcodes In Lucee CFML 5.3.6.61
- Struct Iteration With CFLoop Includes Super Intuitive Aliases In Lucee CFML 5.3.6.61
- MongoDB BSON Structs Are Case-Sensitive In Lucee CFML 5.3.6.61
- Considering Data Workflows Within A MongoDB Data-Access Layer In Lucee CFML 5.3.6.61
- Experiment: Modeling Complex Data Structures As Nested Query Objects In Lucee CFML 5.3.6.61
- Using Closures To Encapsulate FileReadLine() Operations In Lucee CFML 5.3.6.61
- A Closer Look At Error Handling During Parallel Array Iteration In Lucee CFML 5.3.6.61
- Using A Progressive-Search Optimization When Filtering Arrays In Angular 10.1.6
- Checking To See If A Struct Is Of Type Ordered / Linked In Lucee CFML 5.3.6.61
- Exploring Postmark Tags For Grouping Related Transactional Emails In Lucee CFML 5.3.6.61
- Using A Single, Pre-Compiled Keyword Search Target For Filtering In Angular 10.1.5
- Using SMTP Headers To Send Custom MetaData Through Postmark In Lucee CFML 5.3.6.61
- Getting MongoDB Database And Collection Names From The Connection String In Lucee CFML 5.3.6.61
- Including Custom SMTP Headers For Debugging Using CFMailParam In Lucee CFML 5.3.6.61
- Calling Into A Timed-Out Parent Page Context From A CFThread Tag In Lucee CFML 5.3.6.61
- Racing To Show Asynchronous Report-Generation Results With CFThread In Lucee CFML 5.3.6.61
September 2020
- On The Virtues Of Being Emotionally Attached To Your Code
- Using Amazon S3 As Temporary Storage In Lucee CFML 5.3.6.61
- Reflecting On 40-Years Of Privilege And An Obligation To Vote
- ArrayPop(), ArrayShift(), And ArraySliceSafe() In Lucee CFML 5.3.6.61
- Playing Zoom Bingo In Angular 10.1.2
- Creating Pixel-Art Of Ruth Bader Ginsburg Using CSS Box-Shadow In Lucee CFML 5.3.6.61
- Using Derived Tables To Generate "Stats" For An Outer Query JOIN In MySQL 5.6.49
- Code Kata: Creating A Fluent, Closure-Based "Builder" API In Lucee CFML 5.3.6.61
- Accessing Cookies With The Same Name In Lucee CFML 5.3.6.61
- The First Cookie Wins When Conflicting Cookie Names Are Used With Different Settings In Lucee CFML 5.3.6.61
- Deleting Temporary Upload Files In Our K8 Operational Readiness Probe In Lucee CFML 5.3.6.61
- The Elvis / Null Coalescing Operator Can Sometimes Replace The Safe Navigation Operator In Lucee CFML 5.3.6.61
- Temporary Upload Files Are Duplicated And Persisted When A Request Uses CFThread In Lucee CFML 5.3.6.61
- Using Both STORE And DEFLATE Compression Methods With The zip CLI In Lucee CFML 5.3.6.61
- Proxying Amazon AWS S3 Pre-Signed-URL Uploads Using Netlify Functions
- Animation Timing-Functions Can Be Changed Per-Keyframe In CSS
August 2020
- Animation Timing-Functions Get Applied Per-Keyframe In CSS
- Generating An Interactive Craft Sketch File From An InVision Prototype In Lucee CFML 5.3.6.61
- Most ColdFusion Examples Of EncodeForCSS() Are Broken
- Wrestling With My Dogmatic Fear Of The REQUEST Scope And Accessing Global Variables In ColdFusion
- CSS Flexbox, Overflow, Text-Overflow Ellipses, And A Separation Of Concerns
- Using Inline-Block To Provide Consistent Padding And Element Width Inside An Overflow Container In CSS
- Using Constants To Help Clarify Boolean Arguments And Return Values In ColdFusion And JavaScript
- Using NPM Run-Scripts To Execute Shell Commands In Lucee CFML 5.3.6.61
- Creating A Simple Slide-Show With Dynamic Keyframe Animations In Angular 10.0.9
- Generating Rich Server-Side Reports In Lucee CFML 5.3.6.61
- Encapsulating Deep Object-Graph Traversal Using A Visitor Function In Lucee CFML 5.3.6.61
- Mapping Arrays-To-Structs And Structs-To-Arrays Using Mapping Functions In Lucee CFML 5.3.6.61
- isNumeric() And numberFormat() Can Work With Very Large Numbers In Lucee CFML 5.3.6.61
- Performing An In-Place Natural Sort On An Alpha-Numeric Array In Lucee CFML 5.3.6.61
- Using A Closure To "Terminate" CFThread Tags Across Page Requests In Lucee CFML 5.3.6.61
- RequestTimeout Setting Affects CFThread Execution In Lucee CFML 5.3.6.61
- Using A Task CFThread To Run And Restart Daemon CFThreads Indefinitely In Lucee CFML 5.3.6.61
July 2020
- Using Apache POI 3.17 To Save InVision Prototypes As Interactive PowerPoints In Lucee CFML 5.3.6.61
- Using Negative Box-Shadow Spread To Communicate Depth In CSS
- Thinking About Boolean Arguments As A Code-Smell In A Legacy Codebase
- Looking At Different Click-To-Edit Implementations In Angular 9.1.12
- Copying Slack's Brilliant Virtual Scrollbar And Overflow Container In Angular 9.1.12
- Strange Double-Encoding Character Behavior With CFLocation Tag In Lucee CFML 5.3.6.61
- Testing wkhtmltopdf 0.12.6 With Docker In Lucee CFML 5.3.4.80
- Evaluating Database Records That Contain ColdFusion Interpolation Expressions In Adobe ColdFusion 2018
- CFDocument Intelligently Reuses Repeated Image Objects In Lucee CFML 5.3.4.80
- ColdFusion Components (CFC) vs. ColdFusion Closures Performance Exploration In Lucee CFML 5.3.4.80
- The Double-Bang (!!) Operator And A Misunderstanding Of How JavaScript Handles Truthy / Falsy Values
- Applying CSS Flexbox To Pseudo-Elements
June 2020
- Using CFDocument To Save InVision Prototypes As Interactive PDFs In Lucee CFML 5.3.4.80
- Are There "Dark Matter" Designers?
- Using CFDocument And CFPDF To Generate PDFs With Different-Sized Pages In Lucee CFML 5.3.6.61
- Using A Tracer Cookie To Watch For Browser Download-Prompts In Lucee CFML 5.3.6.61
- Scope Traversal Behavior With Undefined Function Arguments In Lucee CFML 5.3.6.61
- Struct Iteration With CFLoop Exposes Both Key And Value In Lucee CFML 5.3.6.61
- Proxying Amazon AWS S3 Pre-Signed-URL Uploads Using CFHTTP And Lucee CFML 5.3.6.61
- Returning CFQuery / Query Results As Structs In Lucee 5.3.6.61
- Every Line Of Code That You Write Is An Explicit Decision To Make The Application Better Or Worse
- Using UPDATE + ORDER BY + LIMIT To Drive Multi-Worker Migrations In Lucee CFML 5.3.6.61
- You Can Use ORDER BY And LIMIT Within UPDATE And DELETE Statements In MySQL 5.6.37
- Why I Use TINYINT Columns Instead Of BIT Columns For Boolean Data In A MySQL Application
- I've Had Fundamental Misunderstandings Of How CFQueryParam Works Within MySQL Queries And ColdFusion / Lucee CFML
- Showing The Affects Of Database Index Structure On Membership Table JOIN Performance In MySQL 5.6.37
- Attempting To Create A Flexible Dual-Select Control Component In Angular 9.1.9
- Managing Selections With A Dual-Select Control Experience In Angular 9.1.9
- deserializeJson() Silently Fails On High-Precision Numbers In Lucee CFML 5.3.4.77
- The mid() Function Can Safely Go Out-Of-Bounds And Gather Zero Characters In Lucee CFML 5.3.4.77
- The 13th Annual Regular Expression Day - June 1st 2020
- Attempting To Improve Rendering Performance Of A Large List View In AngularJS 1.2.22
May 2020
- Using Abstract Classes As Dependency-Injection Tokens With "providedIn" Semantics In Angular 9.1.9
- Returning Promises From Async / Await Functions In JavaScript
- Saving Temporary Form-Data To The SessionStorage API In Angular 9.1.9
- Can't Cast Object Type [Struct] To A Value Of Type [image] In Lucee CFML 5.3.4.77
- Canonicalizing A URL By Its Individual Components In Lucee CFML 5.3.6.61
- Hiding Overflow Scrollbars Until Hover (ala Gmail Labels) In Angular 9.1.7
- Separating Layout HTML And CSS From Content HTML And CSS Is Good
- Application Setting "useJavaAsRegexEngine" Tells CFML To Use Java's RegEx Engine For Built-In Re-Functions In Adobe ColdFusion 2018
- Creating Squishy Tabs With CSS Flexbox In Angular 9.1.7
- The canonicalize() Function Will Decode Strings That "Loosely Match" HTML Entities In Lucee CFML 5.3.5.92
- Using Expando DOM Properties To Power The IntersectionObserver API In Angular 9.1.6
- Performing A LEFT OUTER JOIN On An INNER JOIN In Order To Write More Expressive SQL In MySQL 5.6.37
- Using Expando DOM Properties In Angular 9.1.6
- Using SELECT And UNION ALL To JOIN SQL Tables To CSV Data In MySQL
- Wrapping 3rd-Party Scripts In Angular Services In Case They Get Blocked In Angular 9.1.4
- Using Layer Blend Modes To Highlight Text In Graphics Design
- Generating A Word Search Puzzle Grid In Angular 9.1.4
- The Affect Of File-IO On Performance Experimentation In Docker And Lucee CFML
April 2020
- Reading EXIF Orientation And Auto-Orienting Images Using GraphicsMagick And Lucee CFML 5.2.9.31
- Creating A Partially-Transparent Overlay Using GraphicsMagick And Lucee CFML 5.2.9.31
- Sprint Name Generator In Angular 9.1.3
- The Default MySQL Driver Settings Do Not Appear To Truncate Long Text In Lucee CFML 5.3.5.92
- Scaling An Image During A Draw Operation Using GraphicsMagick And Lucee CFML 5.2.9.31
- Built-In Functions And Member-Methods Return Different Data Types In Lucee CFML 5.3.5.92
- Running CFExecute From A Given Working Directory In Lucee CFML 5.2.9.31
- Looking At How Browser Zoom Affects CSS Media Queries And Pixel-Density
- Executing Command-Line Processes From A Working Directory Using ProcessBuilder In Lucee CFML 5.2.9.31
- Rediscovering My Love Of ColdFusion And CFML In 2020
- Understanding ReadOnly And Exclusive Named Locks In Lucee CFML 5.3.5.92
- Behavior Change Of AutoComplete = "Username" In Recent Chrome Update
- Spreading SQL And CFQueryParam Tags Across Multiple Function Calls In Lucee CFML 5.2.9.40
- Considering MySQL, CFQueryParam, Prepared Statements, And SQL Queries That Use IN Clauses In ColdFusion
- Printing Emoji Characters From Unicode CodePoints In Lucee CFML 5.3.5.92
- I Prefer The Unary Plus (+) Operator Over parseInt() And ParseFloat() When Coercing Strings To Numbers In JavaScript
- Zipping Image Archives With DEFLATE And STORE Compression Methods In Lucee CFML 5.2.9.31
- Pretty-Printing A ColdFusion Query Object In Lucee CFML 5.2.9.31
- Referencing String Characters Using Array-Notation In Lucee CFML 5.3.5.92
March 2020
- Experimenting With Chained Keyboard Events Using Event Plug-ins In Angular 9.1.0
- Exploring The Power Of Multiple Cursors And Selections In Sublime Text 3
- Putting DEBUG Comments In Your SQL Statements Makes FusionReactor Query Tracing More Effective
- Deleting Data From A Table Using An INNER JOIN DELETE Query In MySQL 5.6.37
- Array.Sort() Operator Must Return INT-Sized Result In Lucee CFML 5.3.4.80
- Now Using utf8mb4 To Enable Emoji In My Comments
- Tag Islands And CFScript-Based Tags Bring Perfection To ColdFusion In Lucee CFML 5.3.4.80
- Copying Data From One Table To Another Using An INNER JOIN UPDATE Query In MySQL 5.6.37
- As A Man, I Can Be A Better Example Than I Have Been
- Avoiding Self-Closing IFRAME Tags Using htmlParse() In Lucee CFML 5.3.4.80
- Reading XmlText Values From The XML Document Produced By htmlParse() In Lucee CFML 5.3.4.80
- Retrofitting Markdown Onto 15-Years Of Articles Using htmlParse(), XPath, And Lucee CFML 5.3.4.80
- Pixelating An Image Using GraphicsMagick And Lucee CFML 5.2.9.31
- Using Subtraction To Power The Array Sort Comparison Operator In Lucee CFML 5.2.9.31
- Exploring Color Histograms In GraphicsMagick And Lucee CFML 5.2.9.31
- Replacing Transparent Image Backgrounds With GraphicsMagick And Lucee CFML 5.2.9.31
- Centering An Image Annotating Using GraphicsMagick And Lucee CFML 5.2.9.31
- Annotating An Image Point Using GraphicsMagick And Lucee CFML 5.2.9.31
- Getting Image Width And Height Using GraphicsMagick And Lucee CFML 5.2.9.31
- Getting The RGB Color Value Of An Image Pixel Using GraphicsMagick And Lucee CFML 5.2.9.31
- Creating A GraphicsMagick Playground With Docker, CommandBox, And Lucee CFML
February 2020
- Using CSS Webkit-Appearance To Style Checkbox ::after Pseudo-Element
- Retrofitting Theming Into A Legacy App Using LESS CSS And CSS Custom Properties
- Effortless Custom Form Input Styling With Webkit Appearance None
- Exploring The Triple Equals (===) Operator In Lucee CFML 5.3.4.77
- Using CSS Counters To Apply Custom Labels To An HTML List
- Experiment: Wrapping CFThread Execution In A FusionReactor Tracked Transaction In Lucee CFML 5.2.9.40
- Adding A Description To FusionReactor Tracked Transactions In Lucee CFML 5.2.9.40
- Generating Meme Images In The Browser Using html2canvas In Angular 9.0.1
- Using XSLT And XML Transformations To Style My Blog's RSS Feed As An HTML Page
- Dynamically Instrumenting ColdFusion Component Methods With FusionReactor Tracked Transactions In Lucee CFML 5.2.9.40
- Exploring Tag Islands (Tags In CFScript) In Lucee CFML 5.3.1.13
- Using ColdFusion Tags In CFScript In Lucee CFML
- My Personal Best Practices For Using LaunchDarkly Feature Flags
- Trying To Debug "Deadlock found when trying to get lock; try restarting transaction" Errors In Lucee CFML 5.2.9.40
- StructCopy() Does Not Necessarily Return A Native Struct In Lucee CFML 5.3.3.62
- The "Top" Argument In Dump() Will Not Protect You From Circular References In Lucee CFML 5.3.3.62
- Sending FusionReactor Tracked Transaction Metrics To The Cloud Dashboard With Lucee CFML 5.2.9.40
January 2020
- Wrapping The FusionReactor API (FRAPI) For Safe Consumption In Lucee CFML 5.2.9.40
- Using The FusionReactor API (FRAPI) To Add Custom Instrumentation In Lucee CFML 5.2.9.40
- A Months-Long Journey Of Incrementally Increasing Performance Of A Lucee CFML 5.2.9.40 Service
- Using A File Upload Or The Request Body To Overcome The Slow Processing Of A Large Form POST In Lucee CFML 5.3.3.62
- Lucee Appears To Incur Request-Cloning Overhead When Spawning CFThread Tags In Lucee CFML 5.3.3.62
- Strange MongoDB Error When Incrementing A Document Property In Lucee CFML 5.2.9.31
- Using A Closure To Encapsulate Depth-First Tree Traversal In Lucee CFML 5.3.3.62
- Repositories And Data Access Layers Can Have As Many Methods As You Find Helpful
- Passing isArray() Decision Function Does Not Ensure Member Methods In Lucee CFML 5.3.3.62
- Snapshotting ColdFusion Component State In Order To Find Memory Leaks In Lucee CFML 5.3.3.62
- Depth-First vs Breadth-First Tree Traversal Using A While-Loop In Lucee CFML 5.3.3.62
- Replacing Depth-First Recursion With A Breadth-First While-Loop In Lucee CFML 5.3.3.62
- Struct Iteration Methods Like Each, Map, And Filter Include Null Values In Lucee CFML 5.3.3.62
December 2019
- Considering HTTP Methods PUT And PATCH Indicators Of An Anemic Domain Model And A Leaky Abstraction
- The Unicorn Project: A Novel About Developers, Digital Disruption, And Thriving In The Age Of Data By Gene Kim
- Sand In The Gears As A Metaphor For People's Work Capacity
- The Phoenix Project: A Novel About IT, DevOps, And Helping Your Business Win By Gene Kim, Kevin Behr, And George Spafford
- Getting ColdFusion Date Objects From UTC Milliseconds In Lucee CFML 5.3.3.62
- Error Variable Randomly Exists After Running CFExecute In Lucee CFML 5.3.3.62
- Linking My Loggly JSON-Parsing Bookmarklet To My JSON Explorer App
- Common Mistakes That Engineers Make During The Designer-Developer Hand-Off
- Creating Linked Slider Inputs Constrained To A Given Total In Angular 9.0.0-rc.5
- Rendering A List Of Mixed Types Using NgFor And NgTemplateOutlet In Angular 9.0.0-rc.5
- Rendering A TemplateRef As A Child Of The Body Element In Angular 9.0.0-rc.5
- Using $any() To Temporarily Disable Type-Checking Within A Component Template In Angular 9.0.0-rc.4
- The Elvis Operator Can Be Chained Multiple Times In A Single Expression In Lucee CFML 5.3.3.62
- Capturing Pointer Events Using Bookmarklets
- Monolith To Microservices: Evolutionary Patterns To Transform Your Monolith By Sam Newman
November 2019
- Fixing Connection Failure: Unable To Determine MIME Type Errors With sslCertificateInstall() In Lucee CFML 5.3.3.62
- Tracking Feature Flags In New Relic And NRQL Using The Java Agent In Lucee CFML 5.3.3.62
- TypeScript And .parentNode vs .parentElement
- Customizing A Select Component Using TemplateRef And NgTemplateOutlet In Angular 9.0.0-rc.3
- Creating A Custom Select Component With The Options-Menu In The Root Stacking Context In Angular 9.0.0-rc.3
- Having Fun With Position: Fixed And Element.getBoundingClientRect() In Angular 9.0.0-rc.2
- Using MySQL's Null-Safe Equality Operator With CFQueryParam's Null Option In Lucee CFML 5.3.3.62
- Positioning And Constraining A Fixed-Position Element Relative To An Absolute-Positioned Element In Angular 9.0.0-rc.2
- Maintaining Scroll Offsets When Adding Content Above The User's Viewport In Angular 9.0.0-rc.2
- Component Queries Metadata Appears To Be Broken When The Ivy Renderer Is Enabled In Angular 9.0.0-rc.2
- Component View-Template Fragments Retain Bindings And Can Be Moved Around In The DOM In Angular 9.0.0-rc.2
- Closure Variable-Access Changes With Function Expressions vs. Function Declarations In Lucee CFML 5.3.3.62
- Collapsing Sticky Elements And Maintaining Scroll Offsets In Angular 9.0.0-rc.2
- ColdFusion Performance Experiment: Caching Per-Application Settings In Lucee CFML 5.3.3.62
- Confusion Over this.mappings And expandPath() Not Working In Lucee CFML 5.3.3.62
- Superficial Performance Comparison Between ColdFusion Query-of-Queries (QoQ) And Array Functions In Lucee CFML 5.3.3.62
- Replacing ColdFusion Query-of-Query (QoQ) INNER JOIN And LEFT OUTER JOIN With Array Functions In Lucee CFML 5.3.3.62
- Safe Navigation Operator Works In Comparison Expression Even When NULL In Lucee CFML 5.3.3.62
- Replacing ColdFusion Query-Of-Queries (QoQ) With Array Functions In Lucee CFML 5.2.9.31
- Serializing A MySQL RecordSet As A Set Of INSERT Statements Using Lucee CFML 5.2.9.40
- Adding A TTL To All Persistent Keys In Redis Using LaunchDarkly Feature Flags And Lucee CFML 5.2.9.40
October 2019
- Delaying Loading Indicators Using CSS Animations In Angular 9.0.0-next.14
- Creating An Interactive JSON Explorer Using CSS Grid In Angular 9.0.0-next.14
- Loading And Using Remote Feature Flags In Angular 9.0.0-next.12
- Using RegEx To Filter Keys With Redis Key Scanner In Lucee CFML 5.2.8.50 And Jedis
- Remote Work Increases Intimacy And Amplifies A Shared Sense Of Humanity
- Building A Simple Redis Key Scanner Using Lucee CFML 5.2.8.50 And Jedis
- Thought Experiment: Splitting A Single Data Table Up Into High-Writes And High-Reads For Better Performance In MySQL
- Playing With Lists And Blocking Pop Operations In Redis And Lucee 5.2.9.40
- CFQueryParam "Fails Silently" With Empty Lists And IN Clauses In Lucee 5.2.9.40
- Proof-Of-Concept: InVision Breadboarding In Angular 9.0.0-next.9
September 2019
- Experiment: Using A Feature Flag To Conditionally Render Routable Components In Angular 9.0.0-next.8
- Tracking Page Request Metrics With Framework One (FW/1) And Lucee CFML
- JavaLoader Needs Access To Internal ColdFusion Java Components In ColdFusion 2018
- Using CSS Overscroll-Behavior To Prevent Scrolling Of Parent Containers From Within Overflow Containers
- Using An Immediately Invoked Function Expression (IIFE) And CachedWithin To Easily Cache Steps In A Procedural Script In Lucee 5.3.2.77
- Discriminated Unions Don't Seem To Work In Angular 9.0.0-next.5 When fullTemplateTypeCheck Is Enabled
- Creating An Incrementing Input Directive Inspired By Chrome Dev Tools In Angular 9.0.0-next.5
- Locating LaunchDarkly Feature Flag References In Your Application Code In Lucee 5.3.2.77
- Anchor Tags Can Contain Block-Level Elements As Of HTML5
August 2019
- Calculating Various Time-Deltas Between Two Dates In Angular 9.0.0-next.4
- Considering Index Design And Database Uniqueness Constraints With Soft-Deletes In MySQL 5.6.37
- Trying To Find My Preferred Format For Method Annotations In Lucee 5.3.2.77
- REST And GraphQL Are Not Your Only Choices When Building An HTTP API
- Solutions Don't Have To Work For Everyone
- Shape Up: Stop Running In Circles And Ship Work That Matters By Ryan Singer
- Calculating A Consistent Cache-Friendly Expiration Date For Signed-URLs In Lucee 5.3.2.77
- Performance Case Study: Caching Cryptographically Signed-URLs In Redis In Lucee 5.2.9.40
- The Magic Of Thinking Small: Embracing Limitations As A Strength
- Upgrading A Built-In Function To A First-Class Citizen In Lucee 5.3.2.77
- Installing User Defined Functions (UDF) As An Extension For Built-In Functions (BIF) In Lucee 5.3.2.77
- Playing With The Zip Virtual File System (VFS) In Lucee 5.3.2.77
- Unexpected Variable Assignment Using Function LocalMode Modern With Nested Closures In Lucee 5.3.2.77
- Using Function LocalMode To Render Templates During Static Site Generation In Lucee 5.3.2.77
- Using Function LocalMode Modern To More-Safely Render ColdFusion Templates In Lucee 5.3.2.77
- Fixing ImageScaleToFit() Invalid Size Errors In Earlier Versions Of Lucee CFML
- CachedWithin Function Memoization Can Be Applied To Closures In Lucee 5.3.2.77
- Using Hmac() And An Ordered Struct To Implement A Secure Email Tracking Pixel In Lucee 5.3.2.77
- Function Results Are Returned By Value When Using CachedWithin In Lucee 5.3.2.77
- CFCatch Can Target Explicit Java Exception Types Even With JavaLoader In Lucee 5.3.2.77
July 2019
- Using The Safe-Navigation Operator To Safely Clean Up Resources In Lucee 5.3.2.77
- Sanity Checking Closure Invocation Overhead And Performance In Lucee 5.3.2.77
- Ordered Structs Are Perfect For Creating MongoDB BSON Documents In Lucee 5.3.2.77
- Exploring Linked / Ordered Structs In Lucee 5.3.2.77
- Parsing And Serializing Large Datasets Using Newline-Delimited JSON In Lucee 5.3.2.77
- Understanding Struct Key-Casing Using SerializeJson() In Lucee 5.3.2.77
- Performance Case Study: Parallel Data Access Using Parallel Struct Iteration In Lucee 5.2.9.40
- How I Take A "Mental Health Day" At Work
- The CFQueryParam Tag Does Not Require The "CF_SQL_" Prefix On SQL Types In Lucee 5.3.2.77
- Possible Bug: Variable Assignment Gets Swallowed By Function Invocation In Lucee 5.3.2.77
- Immediately Invoked Function Expressions (IIFE) Work In Lucee 5.3.2.77
- CFThread Attributes Are Passed By Reference - Not By Deep Copy - In Lucee 5.3.2.77
- Deeply Nested CFThread Tags Are Permitted In Lucee 5.3.2.77
- The CFQuery Tag Supports Silent Asynchronous Query Execution In Lucee 5.3.2.77
- I Can Finally Embed An Assignment Operation Inside Of Other Expressions In Lucee 5.3.2.77
- The CachedWithin Function Memoization Feature Appears To Compare Complex Objects By Value In Lucee 5.3.2.77
- Caching Function Outcomes With CachedWithin Caches Both The Return Value And The Output Buffer In Lucee 5.3.2.77
- Returning CFQuery / Query Results As Arrays In Lucee 5.3.2.77
- Using The String localeCompare() Method To Implement A Natural Sort In Angular 8.2.0-next.0
- A Good Samaritan Law For Engineers At A Software As A Service (SaaS) Company
- Dynamically Loading Java Classes From JAR Files Using CreateObject() In Lucee 5.3.2.77
- Parsing HTML Natively With htmlParse() In Lucee 5.3.2.77
- Wrapping Immutable Arrays In Mutable Arrays For Easier Processing In Angular 8.2.0-next.0
- Fat-Arrow Functions And Lambda Expressions Are Supported In Lucee 5.3.2.77
- Creating asyncAll(), asyncSettled(), And asyncRace() Functions Using runAsync() And Parallel Iteration In Lucee 5.3.2.77
June 2019
- Experimenting With The Developer Ergonomics Of Data Access Using Parallel Struct Iteration In Lucee 5.3.2.77
- Experimenting With Asynchronous Data Access Using Parallel Array Iteration In Lucee 5.3.2.77
- Considering Index Design When Using A Nullable DateTime Column To Record A Scheduled Action
- Creating A Composite Index Using Ancestral Keys In A Hierarchical Database Table Design
- Use CSS Overflow "Auto" - Not Overflow "Scroll" - When Clipping Most Fixed-Size Containers
- Instrumenting ColdFusion And Lucee Code With New Relic's Java Agent
- Hello World With The CLI, AoT, Lazy Loading Routes, Differential Loading, And Ivy In Angular 8.1.0-beta.2
- The Hope Of Using JVM Metrics To Drive The Readiness Check In Kubernetes (K8) And ColdFusion
- Gathering CPU Load, Garbage Collection Time, Thread Dumps And Other JVM Metrics In ColdFusion
- Keeping Prepared Statements Consistent Even With Dynamic Parameterized Queries In MySQL And ColdFusion
- SQL Queries That Look The Same Are Not Violating The DRY Principle
- Romanticizing The Idea Of Old-Man Vengeance In A Fast-Paced Web Development World
- Accessibility And Styled Anchor Links vs. Styled Buttons In Angular 7.2.15
- Giving (click) Anchor Links Tab-Access Using A Directive In Angular 7.2.15
- Software Application Layers And Responsibilities, 2019 Edition
- Adding My Blog As A Custom Search Engine In Google Chrome's OmniBox
- Pasting Images Into Your App Using File Blobs And URL.createObjectURL() In Angular 7.2.15
- The 12th Annual Regular Expression Day - June 1st 2019
- Creating An Inline Auto-Complete Directive Using NgModel And A Control Value Accessor In Angular 7.2.15
May 2019
- Desktop Safari Seems To Add Extra Padding To CSS Flexbox Item Inside List Item
- Trying To Center A Text-Overflow Ellipsis Using CSS Flexbox In Angular 7.2.15
- Revisiting: Styling A Movie Cast List Using A Definition List And Flexbox
- Reconsidering "text-overflow: ellipsis" As A Design Smell And Accessibility Concern
- A Book Apart: Accessibility For Everyone By Laura Kalbag
- Styling A Movie Cast List Using A Definition List And CSS Flexbox
- Managing Confirm And Prompt Modals Outside Of The Router In Angular 7.2.15
- Most Of Your Modal Windows Should Be Directly Accessible By Route In Angular 7.2.15
- The Location() Function URL-Encodes The Hash If The URL Also Contains A Query-String In Lucee 5.3.1.102
- Performing A SublimeText-Inspired Fuzzy Search For String Matching In Angular 7.2.15
- Considering Ways To Embed Widgets In My Markdown Using Flexmark 0.42.6 And ColdFusion
- Cool Things I Learned From Reading The CommonMark Spec For Markdown
- Using replaceUrl To Persist Search Filters In The URL Without Messing Up The Browser History In Angular 7.2.14
- Creating A Proxy For Analytics Libraries In Order To Defer Loading And Parsing Overhead In Angular 7.2.13
- Viewing The LaunchDarkly Feature Flag Evaluation Process As A Pure Function
April 2019
- Thought Experiment: Partially-Applying Ng-Template References In Angular 7.2.13
- Sanity Check: Nested Templates Maintain Lexical Binding In Angular 7.2.13
- Sub-Classing NgForOf In Order To Make It A "Pure" Directive In Angular 7.2.13
- @Directive().inputs And @Input() Are Not Functionally Equivalent In Angular 7.2.13
- Quick Reference For NgModel Values And Template-Driven Forms In Angular 7.2.13
- Rendering A List Of Mixed Components Using NgFor And NgSwitch In Angular 7.2.13
- Lessons I Wish I Had Learned Much Earlier In My Web Development Career
- An Experiment In Consuming Reactive-Form Events From Template-Driven Forms In Angular 7.2.13
- My First - And Possibly Last - Look At Reactive Forms In Angular 7.2.13
- Using "replaceUrl" In Order To Honor The Back-Button While Chaining Absolute Redirects In Angular 7.2.13
- More Fun With Recursive Components, Tree State, And One-Way Data Flow In Angular 7.2.13
- Chaining Absolute And Local Redirects With The Router In Angular 7.2.13
- Loading Text File Content With FileReader During A Drag-And-Drop Interaction In Angular 7.2.12
- Webpack 4 Automatically Makes process.env.NODE_ENV Available In Your JavaScript
- Using NgModel With Input Type="File" And A Custom ControlValueAccessor In Angular 7.2.12
- Uploading Multiple Files In A Single "Form Post" With HttpClient In Angular 7.2.12
- Creating A "position: sticky" Header Component Using IntersectionObserver In Angular 7.2.11
- Alligator.io Code Kata: Defaulting Theme Based On Time-Of-Day In Angular 7.2.11
- Uploading Files With HttpClient In Angular 7.2.11
- Quick File Share Using Netlify Functions And Amazon S3 In Angular 7.2.10
March 2019
- Using Guard Conditions To Short-Circuit Object-Spread Operations In TypeScript 3.2.4
- You Can Safely Apply Object-Spread To Null And Undefined Values in TypeScript 3.2.4
- HTTP Interceptors Are An Anti-Pattern That Create Hidden Dependencies And Unnecessary Complexity In Angular
- Reporting The User's Timezone Offset To The Server Using An API Client In Angular 7.2.10
- My Opinionated git Cheat Sheet
- Scrolling An Overflow-Container Back To The Top On Content Change In Angular 7.2.7
- I'm Going To Stop Worrying About Tightly-Coupled DOM Access In Angular 7.2.7
- Some Real-World Experimenting With The Runtime Abstraction For State Management In Angular 7.2.7
- Code Kata: Parsing Simple Timespan Strings Like 3h:12m:57s Using JavaScript
- Using The Non-Null Assertion Operator To Fix .shift() and .pop() Errors In TypeScript 3
- Proof-of-Concept: InVision Screen Flow In Angular 7.2.7
- Using Pure Pipes To Generate NgFor TrackBy Identity Functions For Mixed Collections In Angular 7.2.7
- Using Pure Pipes To Generate NgFor TrackBy Identity Functions In Angular 7.2.7
- Using Dynamic Template-Driven Forms In Angular 7.2.7
- Harnessing My Social Anxiety Using A Countdown Timer In Vue.js 2.6.7
February 2019
- So Mediocre They Can't Ignore Me
- Creating Shortcuts By Mapping Multiple Routes On To The Same View-Component In Angular 7.2.5
- Using A Wild Card Shortcuts Route To Hide The Internal Routing Implementation In Angular 7.2.5
- Projecting Content Into The Root Application Component Using Slots In Vue.js 2.6.6
- Using A Wild Card Route (**) To Traverse Arbitrarily Nested Data In Angular 7.2.4
- Trying To Implement 9-Slice Scaling With SVG Components In Angular 7.2.4
- Prototypes Are Worthless, But Prototyping Is Essential
- Hacking Scoped CSS Modules Into A Brownfield AngularJS 1.2.22 Application
January 2019
- Adventures In Angular, Episode 224: The Irrational Demonization Of Two-Way Data-Binding In Angular With Ben Nadel
- Sort Only Works With directoryList() When ListInfo Is Query In Lucee 5.2.9.31
- Renderless Components In Angular 7.2.0
- Providing Module Configuration Using forRoot() And Ahead-Of-Time Compiling In Angular 7.2.0
- What If The User Experience (UX) Of My InVision Projects Page Looked More Like Basecamp
- Experiment: Using Service Barrels As A De Facto Dependency-Injection Container In Vue.js 2.5.22
- Creating SVG Icon Components And SVG Icon Sprites In Angular 7.2.0
- Using Embedded Data To Provide Request-Specific Application Configuration In Angular 7.2.0
- Using encodeForJavaScript() To Embed A JSON Payload As Configuration For A Single-Page Application in ColdFusion
- Animating Elements In From A Mouse-Event Location In Vue.js 2.5.21
- Creating A Pandora Radio Station List Animation In Vue.js 2.5.21
- Creating A Bind-Once Structural Directive In Angular 7.1.4
- Calling Canonicalize() On An Empty-String Returns NULL In Lucee 5.2.9.31
December 2018
- Updating Reactive Values Can Cause Some Non-Reactive Values To Re-Render In Vue.js 2.5.21
- Creating A Vue.js Inspired Event-Modifier DOM Plug-In In Angular 7.1.4
- Vue.js Up And Running By Callum Macrae
- CSS Custom Properties (aka CSS Variables) Don't Make CSS Preprocessors Obsolete
- Creating A DOM Events Plug-In That Configures Host Bindings Outside Of The Angular Zone In Angular 7.1.4
- Creating A Mouse-Over Hesitation Directive In Angular 7.1.4
- If You Trust Your Developers To Deploy Code, You Should Trust Your Developers To Toggle Feature Flags
- Shared-Array Iteration Can Cause Thread Deadlocks In Lucee ColdFusion 5.2
- Refactoring UI By Adam Wathan And Steve Schoger
- In A Unidirectional Data Flow, How Should A Selection Component Handle Incompatible Rendering Options?
- Enabling The Second-Click Of A RouterLink Fragment Using onSameUrlNavigation Reload In Angular 7.1.3
- Trapping The Wheel Event May Prevent Chrome Browser Bug In Which The Scroll Wheel Stops Working In Overflow Container
- Using Magic Email Links To Authenticate Users With Firebase 5.7.0 In Angular 7.1.2
- Using A "Drag Shield" To Block Mouse Events During A Drag-And-Drop Workflow In Angular 7.1.2
- ngOnChanges() Life Cycle Hook Only Gets Invoked If Calling Context Actually Provides Input Bindings In Angular 7.1.1
- Strict Mode Settings In JavaScript Are Scoped To The Script Tag
- Using The "Definite Assignment Assertion" To Define Required Input Bindings In Angular 7.1.1
- On The Irrational Demonization Of Two-Way Data-Binding In Angular
- Polyfilling The Second-Click Of A RouterLink Fragment In Angular 7.1.1
November 2018
- Host Bindings Don't Prevent Default Event Behavior Until After All Event Handlers Have Executed In Angular 7.1.1
- Chrome Browser Bug: Scroll Wheel Randomly Stops Working In Overflow Container
- Restoring And Resetting The Scroll Position Using The NavigationStart Event In Angular 7.0.4
- Using Router Events To Detect Back And Forward Browser Navigation In Angular 7.0.4
- Time-Boxing A CFThread And Then Terminating It If It Takes Too Long To Complete In ColdFusion
- ColdFusion 2016 Skips Over Undefined Elements With For-In Array Loop
- Generate A Java Thread Dump Programmatically Using ColdFusion
- Understanding The Limitations Of Template Syntax Desugaring In Angular 7.0.4
- Using Presentation Components In Order To Hide Async Pipe Complexity In Angular 7.0.3
- Async Pipe "as" Syntax Is Just The $implicit View Context Property In Angular 7.0.3
- Experimenting With The Runtime Abstraction For State Management In Angular 7.0.3
- Considering State Management Boundaries And The Separation Of Concerns
- Human Redux By Henrik Joreteg
- Creating A Simple setState() Store Using An RxJS BehaviorSubject In Angular 6.1.10 - Part 2
October 2018
- Creating A Simple setState() Store Using An RxJS BehaviorSubject In Angular 6.1.10
- I Am Struggling To Understand The Atomic Boundaries Of Redux Actions
- Software Design Decoded: 66 Ways Experts Think By Marian Petre And Andre van der Hoek
- Searching For The Wrong Type Of Simplicity Can Lead To An Explosion Of Complexity
- Trying To Create A Message Bus Using An RxJS Subject In Angular 6.1.10
- THIS IS US Opening Titles Animation Using CSS Animations
- On The Code Smell Of Asynchronous Middleware In Redux
- Sanity Check: Shared Style URLs And Emulated Encapsulation Attributes In Angular 6.1.10
- Emulated Encapsulation Host And Content Attributes Are Calculated Once Per Component Type In Angular 6.1.10
- Playing With Recursive Components In Angular 6.1.10
- Playing With Recursive Ng-Template References In Angular 6.1.10
- Updating InVision Router Experiment To Use Lazy Loading Feature Modules In Angular 6.1.9
- ProvidedIn FeatureModule Is A Confusing Concept For Me In Angular 6.1.9
- It Doesn't Have To Be Crazy At Work By Jason Fried And David Heinemeier Hansson
- Playing With RegExp Named Capture Groups In Node 10
- The Transformative Power Of Love
September 2018
- Preloading Lazy-Loaded Feature Modules In Angular 6.1.9
- Showing A Loading Indicator For Lazy-Loaded Route Modules In Angular 6.1.7
- Microservices Patterns: With Examples In Java By Chris Richardson
- Using Commons IP Math To Check If An IP Address Exists In An IPv4 Or IPv6 CIDR Range In ColdFusion
- Experimenting With Lazy Loaded Modules, Ahead Of Time (AoT) Compiling, And Webpack 4 In Angular 6.1.7
- When Is A Change A Breaking Change For An API
- Checking To See If An IP v4 Address Is In A CIDR Range Using ColdFusion And SubnetUtils
- JavaScript Demos Using Webpack 4 With Angular 6.1.7 And Ahead Of Time (AoT) Compiling
August 2018
- Testing For Future Data-Types With isFuture() And isEmptyFuture() In ColdFusion 2018
- Passing A Timeout To .get() Will Not Override An Existing Future Timeout In ColdFusion 2018
- Saving A Future In An Intermediary Variable Breaks Error Handling In ColdFusion 2018
- EXPERIMENT: Creating A Promise-Inspired Future Constructor In ColdFusion 2018
- Mysterious Error Handling Behavior With Proxied Futures In ColdFusion 2018
- The .error() Method Cannot Catch Future Task Timeout Errors In ColdFusion 2018
- Providing A Timeout To A Future Method Changes It To A Synchronous Blocking Call In ColdFusion 2018
- Timeouts Only Apply To Last Future Thread, Not The Preceding Future Chain In ColdFusion 2018
- Errors Thrown In Future Threads Don't Report Complete Details In ColdFusion 2018
- The Future Methods .then() And .error() Are Blocking In ColdFusion 2018
- MySQL 5.7 InnoDB AUTO_INCREMENT Counters Get Reset After MySQL Service Restart
- Defining Dynamic AJAX-Driven Service Providers Using APP_INITIALIZER In Angular 6.1.4
- Using Background-Attachment CSS To Create A Sticky IFrame Advertising Background In JavaScript
- Using CSS Custom Properties To Theme Components In Angular 6.1.3
- Using CSS Host-Context To Theme Components In Angular 6.1.3
- Replacing Double-Dashes With Em Dashes While Typing In JavaScript
- Creating A Pre-Bootstrap Loading Screen With window.postMessage() In Angular 6.1.2
- Experimenting With CSS Variable / Custom Property DOM Inheritance
- Using style.setProperty() To Keep CSS Property Names Consistent In JavaScript
- Using "Safe Updates" To Prevent Unbounded UPDATE And DELETE Statements In MySQL
- BigSexy Poems Uses Angular And The Datamuse API To Help You Write Poetry
- Don't Let The Minimum Lovable Product (MLP) Become The Enemy Of The Good
- Checking To See If An Element Has A CSS Pseudo-Class In JavaScript
July 2018
- A Book Apart: Flexible TypeSetting By Tim Brown
- Implementing A "Show Password" Checkbox On A Login Form In JavaScript
- ColdFusion Client For The Word-Finding Datamuse API
- Downloading Text Using Blobs, URL.createObjectURL(), And The Anchor Download Attribute In JavaScript
- Timezone In Date .toTimeString() Is Not Always An Abbreviation In JavaScript
- .NET Microservices: Architecture For Containerized .NET Applications
- Accessing Parent Route Params Via paramsInheritanceStrategy In Angular 6.0.7
- Collecting Route Params Across All Router Segments In Angular 6.0.7
- The Not-So-Dark Art Of Designing Database Indexes: Reflections From An Average Software Engineer
- Open-Source, Secure, Client-Side, Network-Free, JSON Linting
June 2018
- Using The LaunchDarkly Dashboard And JSON Types To Create Light-Weight Application Administrative Features
- LaunchDarkly Lunch-And-Learn Panel Discussion: New York City
- Drawing Parallels Between a Flux-Style State Management Architecture (Like Redux) And An Event-Driven Microservices Architecture
- Taming The State In React: Your Journey To Master Redux And MobX By Robin Wieruch
- Using invoke() To Invoke Passed-In Closure And Function References In ColdFusion
- Automatically Scroll The Window When The User Approaches The Viewport Edge In JavaScript
- Using Multivariate Feature Flags In LaunchDarkly To Gradually Ramp-Up Batched Operations Like Database Migrations
- Distributed Systems Observability: A Guide To Building Robust Systems By Cindy Sridharan
- Enable Tabbing Within A Fenced Code-Block Inside A Markdown Textarea In JavaScript
- Exploring Plain-Text Data URIs And The Anchor Download Attribute In JavaScript
- Randomly Selecting RegEx Day Winners Using A Cryptographically Secure Pseudo-Random Number Generator (CSPRNG) In Node.js
- jQuery's append() Methods Intercept Script Tag Insertion And Circumvent Load Handlers
- The 11th Annual Regular Expression Day - June 1st 2018
May 2018
- Using Flexmark 0.32.24 To Parse Markdown Content Into HTML Output In ColdFusion
- Using The OWASP AntiSamy 1.5.7 Project With ColdFusion 10 To Sanitize HTML Input And Help Prevent XSS Attacks
- NgRx Store Reducers Work Using A TypeScript Feature Called A Discriminated Union
- Environment Variables Represent Global State And Should Be Accessed By The Application Bootstrapping Logic Only
- Binding RxJS Observable Sources Outside Of The NgZone In Angular 6.0.2
- Functional-Light JavaScript By Kyle Simpson
- Monitoring Document And Element Scroll Percentages Using RxJS In Angular 6.0.2
- Static Methods Can Access Private Class Constructors In TypeScript
- Proof Of Concept: Using Axios As Your HTTP Client In Angular 6.0.0
- Experiment: Injecting A Component Reference Into A Pipe Instance In Angular 6.0.0
- The Angular Framework Forces You To Learn More JavaScript, Making You A Better JavaScript Programmer
- Translating Viewport Coordinates Into Element-Local Coordinates Using Element.getBoundingClientRect()
- Sanity Check: Manipulating Event Handlers And Timers Outside Of NgZone In Angular 5.2.10
- Creating A Medium-Inspired Text Selection Directive In Angular 5.2.10
April 2018
- Using Node.contains() To Determine If One DOM Node Is Inside Another
- Going Offline: Designing An Ideal Offline Experience With Service Workers By Jeremy Keith
- 90% Of Design Is Picking Good Margins And Making Sure Things Line Up
- Leaders Are The People We Bleed With - Not The People We Bleed For
- Designing Distributed Systems: Patterns And Paradigms For Scalable, Reliable Services By Brendan Burns
- Outlining Text Selections Using The Window Selection API
- The Daily Prime: Docker Experiment And A Source Of Daily Inspiration
- Reporting StatsD Metrics From The Browser In Angular 5.2.9
- Practical Monitoring: Effective Strategies For The Real World By Mike Julian
- Tracking Image Error Events Using Event Delegation In JavaScript
March 2018
- Effective Monitoring And Alerting By Slawek Ligus
- Using An AtomicLong With A Modulo Operation May Be Faster Than Using compareAndSet() For Thread-Safe Range-Based Counters
- Using Multivariate Feature Flags In LaunchDarkly To Drive Operational Settings Like Minimum Log Level
- Using LaunchDarkly To Target Personally Identifiable Information (PII) During Feature Flag Evaluation Without Leaking Sensitive Data
- Using Java's AtomicInteger To Loop Over A Range Of Numbers In ColdFusion
- Enterprise Integration Patterns: Designing, Building, And Deploying Messaging Solutions By Gregor Hohpe And Bobby Woolf
- Adding Slug Generation To cuid For ColdFusion
- cuid For ColdFusion - Collision-Resistant IDs Optimized For Horizontal Scaling And Performance
- Obtaining A Wildcard SSL Certificate From LetsEncrypt Using The DNS Challenge
- From Noob To Docker On DigitalOcean With Nginx, Node.js, DataDog Logs, DogStatsD, And LetsEncrypt SSL Certificates
February 2018
- Bug When Passing Nested-Struct Data Into CFThread In ColdFusion 10
- Using No-Op Transitions To Prevent Animation During The Initial Render Of ngFor In Angular 5.2.6
- Animating Modal Windows While Blocking Intra-Modal Transitions In Angular 5.2.6
- Creating A Poor Man's Exponential Backoff And Retry Algorithm In Legacy Code Using ColdFusion
- The User Experience (UX) Of The Rogue Fitness Shipping Map
- The Practice Of Empathy And The Avoidance Of "It Depends" As An Answer
- Using The Anchor Tag href And download Attributes To Force A File Download
- The User Experience (UX) Of Image-Oriented Lists On Apple TV
- Experiment: Recreating The InVision App User Interface With The Angular 5 Router
- Using Position Absolute Inside A Scrolling Overflow Container
- Creating A Dynamic Favicon Service In Angular 5.2.4
- Restoring And Resetting The Scroll Position On Navigation With A Polyfill In Angular 5.2.3
- Each Feature Flag Should Be Owned By A Single Deployment Boundary
January 2018
- In Node.js, The error.stack Property Will Represent The Point In The Code At Which new Error() Was Called - Not When The Error Is Thrown
- Practice: Progressively Enhancing A Flexbox Grid To Use CSS Grid
- CSS Grid: A Free Video Course On The CSS Grid Layout By Wes Bos
- Creating A Jump-To-Anchor Fragment Polyfill In Angular 5.2.0
- Wildcard Routes (**) Can Redirect Relative To Their UrlTree Location In Angular 5.1.3
- Wildcard Routes (**) Can Be Scoped To Route Sub-Trees In Angular 5.1.3
- Sanity Check: Chrome 63 Still Causes Blurry Borders With Percentage-Based CSS Translation
- Converting TechSmith JING SWF Movies To MP4 Videos
- You've Kissed The Lips Of JavaScripts
- Loggly Derived Field RegEx Matching May Require A Newline In The Pattern
December 2017
- The User Experience (UX) Of Conversion-Driven Development
- CSS Flexbox: Aligning Content Slightly Off-Center
- Frameworks And Libraries Can Make You A Better JavaScript Programmer
- Margin Collapsing Causes Unexpected Scrollbar With 100vh Body In Webkit
- Considering Strategies For Idempotency Without Distributed Locking With Ben Darfler
- Favor Readable Code Over Idiomatic Code
- Using Data Attributes To Pass Configuration Into An Event Plug-in In Angular 5.1.1
- Creating A General vs. InVision Experience For Incident Commander
- Note To Self: Adding Type Declaration Files To A TypeScript 2.6.2 Project
- Considering LocalStorage And The Browser Cookies As Integration Databases
- Providing Services As Both A Multi-Collection And As An Individual Injectable In Angular 5.1.0
- Interactive Git Rebase: Moving White-Space Changes To An Isolated Commit
- Handling Global Keyboard Shortcuts Using Priority And Terminality In Angular 5.0.5
November 2017
- I Love That TypeScript Doesn't Allow Me To Make Incorrect Assumptions About Object Usage
- Singleton vs. Single Instance And A Decade Of Unnecessary Guilt
- Fixing A 10-Year Gap In My Understanding Of How Form.submit() And Other DOM-Methods Work
- Double-Parentheses ()() Requires Too Much Cognitive Load For My Brain
- Favoring Local Interfaces Over Imported Interfaces For Data Structures In Angular 5.0.2
- Creating An Input-Driven AutoFocus Directive In Angular 5.0.2
- Forcing RouterLinkActive To Update Using An Inputs Hack In Angular 5.0.2
- Prevent Body Scrolling With A WindowScrolling Service When Showing A Modal Window In Angular 5.0.2
- Why Message-Queues Don't Carry The Stigma Of An Integration Database
- Sanity Check: Shared Style Urls Are Only Compiled Into Angular 5.0.1 Once
- Stacking Context Is The Key To Understanding The CSS Z-Index
- Creating A Twitter-Inspired SVG Progress Indicator In Angular 5.0.1
- CSS Flexbox: Creating The InVision Avatar Row Widget
- Prevent Routing To Secondary View If Page Refresh In Angular 5.0.0
- Matching Multiple Selectors On The Same Element Creates A Single Directive Instance In Angular 5.0.0
- Lazy Loading Images With The IntersectionObserver API In Angular 5.0.0
- Prevent Scrolling In A Parent Element Using Directives In Angular 4.4.6
- Creating A Direct-Click DOM Event Plug-in In Angular 4.4.6
October 2017
- What The Flexbox: A Free Video Course On The CSS Flexible Box Model By Wes Bos
- Adding .delay(10) To ActivatedRoute Helps Prevent Unwanted Router Behaviors In Angular 4.4.6
- View Components May Get Unnecessarily Reinstantiated Under Certain Circumstances In Angular 4.4.6
- CSS @keyframes Animations Are Not Scoped With Emulated View Encapsulation In Angular 4.4.6
- The New CSS Layout By Rachel Andrew
- MySQL's Slow Query Log "start_time" Column Is Actually The "end" Time Of The Query
- MySQL Multi-Range Read (MRR) Optimization Caused A Partial Database Outage
- ngOnInit() May Not Get Called Before ngOnDestroy() Is Called In Angular 4.4.6
- RabbitMQ: Patterns For Applications By Derick Bailey
- Using The LESS CSS fade Method To Apply Opacity To A HEX Color
- Patterns Of Enterprise Application Architecture By Martin Fowler
- Applying CSS Styles To Routable Child Views Using Simulated Encapsulation In Angular 4.4.4
- Closing Secondary Router-Outlet Views From Within The Named-Route View Components In Angular 4.4.4
- Routable View Components Don't Need Selectors In Angular 4.4.4 - But They May Be Helpful
- I Heart Logs: Event Data, Stream Processing, And Data Integration By Jay Kreps
- Local Redirects Automatically Append The Non-Local Route Segments In Angular 4.4.4
- A Single Route Parameter Can Match Multiple URL Segments In Angular 4.4.4
- Named-Outlets Require Non-Empty Parent Route-Segment Paths In Angular 4.4.4
- My Manager Once Wagered $1,000 That My Code Would Break Production
- Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, And Maintainable Systems By Martin Kleppmann
September 2017
- Accessing Parent And Child Route Segment Parameters In Angular 4.4.4
- Building A Mental Model For Precedence And The "new" Operator In JavaScript
- Experimenting With Tagged Proxy Database Metrics Using DogStatsD In ColdFusion
- Leaders Eat Last: Why Some Teams Pull Together And Others Don't By Simon Sinek
- Using Method And Function Overloading In TypeScript
- Adding Service Check Support For My DataDog / DogStatsD ColdFusion Component
- Adding Event Support For My DataDog / DogStatsD ColdFusion Component
- Adding DataDog / DogStatsD Support To My StatsDGateway ColdFusion Component
- Viewing Software Engineers Through The Lens Of The Milgram Experiment On Obedience To Authority Figures
- You Can Include Delimiters In The Result Of JavaScript's String .split() Method When Using Capturing Groups
- Conditional Router Outlets Mostly Work In Angular 4.4.0-RC.0
- Creating An Angular 1.x $location-Inspired RetroLocation Service In Angular 4.4.0-RC.0
- Changing The Hash With The Location Service In Angular 4.4.0-RC.0
- Incident Commander Now Allows Incidents To Be Deleted From The Cloud
- Creating A Pipe That Can Consume Component Methods In Angular 4.4.0-RC.0
- Fixing Lodash TypeScript Errors By Upgrading @types/lodash In Node Or Webpack
- Using Abstract Classes As Dependency-Injection Tokens For Swappable Behaviors In Angular 4.2.3
- Encapsulating Firebase Using RxJS Streams In Angular 4.2.3
- Understanding Pipe Instantiation Life-Cycles In Angular 4.2.3
August 2017
- Incident Commander Now Provides Time Zone Select Menu For Slack Message Rendering
- Incident Commander Now Powered By Firebase For Remote Synchronization
- JRegEx - A ColdFusion Wrapper Around Java's Regular Expression Patterns
- Considering Uniqueness Constraints And Database Abstractions In Application Business Logic
- Using Firebase 4 With TypeScript, Type Declarations, And npm
- Log Level 30 Doesn't Mean Anything To Most Humans
- Nerd Life Balance: The Art Of Open Sourcing Your Life By Nick Floyd
- An Introduction To Programming In Go By Caleb Doxsey
- Creating A ColdFusion Closure-Based Wrapper To Java's Pattern Matcher For Regular Expression String Replacement
- The MySQL 5.1 Java Driver Deprecates validationQuery Which Is Why "SELECT 1" May Not Show Up In Your ColdFusion Application
- Aggregating Cherry-Picked Lodash Methods In An Application Module In JavaScript
- Adding Import / Export Functionality To The Incident Commander
- After 3 Months Of JavaScript Linting, It's Pretty Much All Pain And No Gain
July 2017
- Using The Joyous Power Of Relative Dates To Calculate Days-In-Month In JavaScript
- Running Incident Commander At InVision App Using Angular 4
- Creating A Generic Proxy For Retry Semantics In ColdFusion
- Wrapping Database Gateways In A Retriable Proxy For Lock Timeouts In ColdFusion And MySQL
- Using SLEEP() And innodb_lock_wait_timeout To Force Transaction Lock Timeouts In ColdFusion And MySQL
- ColdFusion Does Not Appear To Use The Connection Pool When Issuing KILL QUERY Commands
- CFQuery Timeout Uses KILL QUERY Command With MySQL 5 Driver In ColdFusion
- A Graph Should Answer One Question And Should Answer It Well
- Parsing And Pretty-Printing JSON Values On-The-Fly In Loggly Using Bookmarklets
- You Can Use Arrays In Field Equality Checks Within A Sequelize WHERE Clause In Node.js
- Calling Timeout.unref() With setTimeout() Does Not Appear To Be A Best Practice In Node.js
- Static Methods Are Inherited When Using ES6 Extends Syntax In JavaScript And Node.js
- Building A Circuit Breaker For Node.js
- Using Static Class Methods To Generate Concrete Instances Of Abstract Classes In JavaScript And Node.js
- ES6 Function Argument Defaults Don't Have To Be Trailing Arguments
- The ES6 Promise Constructor And Its Executor Function Are Invoked Synchronously
- Using Chalk 2.0's Tagged Template Literals For Nested And Complex Styling
June 2017
- Using BEM Class Names To Guide Module Structure In ReactJS 15.6.1
- Hello World With Webpack And TypeScript 2.3.4 In React 15.6.1
- Using % (Percent) For In-Line Styles In Angular 4.2.3
- Reflecting On Data Persistence, Transactions, And Leaky Abstractions
- Using Module Augmentation To Safely Inject Runtime Methods Using TypeScript And Node.js
- Implementing Q's .allSettled() Promise Method In Bluebird
- It's Safe To Use Empty Arrays With The $in Operator In Sequelize
- Using Type Argument Inference When Accepting Generic Callbacks In TypeScript And Node.js
- I Wish JavaScript Had A Way To Map And Filter Arrays In A Single Operation
- Using Element.classList To Manipulate CSS Classes On The DOM
- The Learn Node.js Master Package Video Course By Wes Bos Is Awesome
- Attempted Regular Expression Pattern Search Game For RegEx Day 2017 Using Angular 4.1.3
- The 10th Annual Regular Expression Day - June 1st 2017
May 2017
- The Chalk Module Can Be Used With The Console's String Interpolation In Node.js
- Some Reflections On How Express.js Prepares JSON Responses
- Sequelize-Comment: A Sequelize Plug-in That Injects Comments Before Your SQL Statements
- Using JSON.stringify() Replacer Function To Recursively Serialize And Sanitize Log Data
- JSON.stringify() Will Recursively Call toJSON() If It Exists During Serialization In JavaScript
- Validating / Consuming Mount-Path Parameters With Middleware In Express.js And Node.js
- You Can Continue To Process An Express.js Request After The Client Response Has Been Sent
- Understanding The 4 Rules Of Simple Design By Corey Haines
- Considering When To Throw Errors, Why To Chain Them, And How To Report Them To Users
- Exceptions Are For Exceptional Circumstances And Thoughts On Cross-Layer Coupling
- Sequelize - Validation Error: Validation Not Failed
- Centralizing Distributed Locks In Order To Provide Application-Oriented Semantics Around Locking In Node.js
- Inverse Type Guards Work In TypeScript
- Experimenting With ts-node And Using TypeScript In Node.js On The Server
- Chalk Styles Can Be Passed Around As Naked Function References In Node.js
- Exceptions Are For Programmers, Error Responses Are For Users
- Experiment: Putting DEBUG Comments In Your Sequelize-Generated Queries In Node.js
- Thoughts On Defining Coroutines As Class Methods In Node.js And TypeScript
- SyntaxError: Unexpected Strict Mode Reserved Word Using Yield In Generators
- Using Proxy Objects To Dynamically Change The THIS Binding Within A Generator In Node.js
- Changing The THIS Binding And Execution Context Of A Generator In Node.js
- Manually Invoking Express.js Middleware Functions
- Using Import = Require Syntax With TypeScript 2.2 In Angular 2.4.9
April 2017
- Understanding The Query Plan "Explained" By the Find Plugin In PouchDB 6.2.0
- Google Chrome Will Automatically Retry Requests On Certain Error Responses
- Monkey-Patching The Mango .find() Plugin To Use .allDocs() In PouchDB 6.2.0
- Experimenting With The Mango .find() API In PouchDB 6.2.0
- Method Binding Is An Implicit Part Of Your API Contract (Whether You Like It Or Not)
- As A Node.js Novice, I Don't Understand Why Uncaught Exceptions Are So Dangerous
- The User Experience (UX) Of Waiting And The Affordance Of Lines / Queues
- The JavaScript "copy" Event - Fun With InVision Freehand Shapes
- Defining Functions With Properties Using TypeScript Declaration Merging In Angular 2.4.9
- Wrapping The Zendesk Web Widget In A Promise-Based Zendesk Service In Angular 2.4.9
- The Zendesk Web Widget Appears To Have A Small Hide / Show Race Condition
- An Express.js Learning Experiment - Porting FW/1 Ideas Into A Node.js Application
- Express.js Middleware Can Be Arbitrarily Nested Within A Route In Node.js
- Tracking Static Asset Request Duration In Express.js And Node.js
- Non-Module File Paths Are Relative To The "Working Directory" In Node.js
- Using require.resolve() To Calculate Module-Relative File Paths In Node.js
March 2017
- Building JavaScript Demos With TypeScript 2.2.1, Webpack 2, And Angular 2.4.9
- Relative Template And Style URLs Using System.js Without moduleId In Angular 2.4.9
- Building JavaScript Demos With System.js, TypeScript 2.2.1, And Angular 2.4.9
- Logging And Debugging Unhandled Promise Rejections In The Browser
- Logging And Debugging Unhandled Promise Rejections In Node.js v1.4.1 And Later
- Managing Stream Back-Pressure During Asynchronous Tasks Using READABLE and DATA Events In Node.js
- Using Transform Streams To Manage Backpressure For Asynchronous Tasks In Node.js
- Creating A Simple Copy-To-Clipboard Directive In Angular 2.4.9
- Hello World: Concurrency In Node.js Using The Cluster Module
- Parsing And Serializing Large Datasets Using Newline-Delimited JSON In Node.js
- Parsing And Serializing Large Objects Using JSONStream In Node.js
February 2017
- Programming Is Hard: Reconciling Server-Side And Client-Side "Clean" Architectures
- Considering BEM - Block Element Modifier - CSS And Bounded Contexts
- Thinking About Exception Chaining And Error Reporting In JavaScript
- Always Throw Errors In Order To Get A Stack Trace In Promise Chains
- Build APIs You Won't Hate By Phil Sturgeon
- Experimenting With Error Sub-Classing Using ES5 And TypeScript 2.1.5
- Using ANY Type Prevents Function Parameter Type-Checking In TypeScript 2.1.5
- java.security.InvalidKeyException: IOException : Short read of DER length
- Using NgOnChanges Collection With Dot-Notation And TypeScript In Angular 2.4.4
- Production-Ready Microservices: Building Standardized Systems Across An Engineering Organization By Susan J. Fowler
- Visualizing API Calls And Asset Loading During Rolling Deployments Of Horizontally Scaled Servers
- Creating An Animated Slack-Inspired "Reaction" Emoticon Button In Angular 2.4.4
- Using Animation Callbacks When Animation Transitions Are Interrupted In Angular 2.4.4
January 2017
- Developer Myth: Work Expands To Fill The Time Available
- Defining Function And Callback Interfaces In TypeScript
- Template vs. ng-container For Grouping DOM Nodes In Angular 2.4.4
- Mixing Specific And Non-Specific ng-content Transclusion In Angular 2.4.1
- Consuming Auth0-Secured WebTask.io Resources In Angular 2.4.1
- Using BEM (Block Element Modifier) And Emulated View Encapsulation In Angular 2.4.1
- Syncing Local PouchDB Data With Remote IBM Cloudant Database In Angular 2.4.1
- Injecting "Newable" Classes Using TypeScript And Dependency-Injection In Angular 2.4.1
- Posting Additional Parameters During Authentication With Auth0 In Angular 2.4.1
- Associating Auth0 Rules With Specific Auth0 Clients In Angular 2.4.1
- Provisioning Cloudant / CouchDB Databases From Auth0 For A Database-Per-User Architecture In Angular 2.4.1
- Experimenting With Auth0 Passwordless Email Authentication In Angular 2.4.1
December 2016
- Configuring PouchDB After Login For A Database-Per-User Architecture In Angular 2.4.1
- Using Form Controls Without FormsModule Or NgModel In Angular 2.4.1
- Solved: CSS Specificity And Shadow DOM Overrides In Angular 2.4.1
- Exploring CSS Specificity With Shadow DOM Styles In Angular 2.4.1
- My Evolving Angular 2 Mental Model: Promises And RxJS Observables
- Exploring Recursive Promises In JavaScript
- Retrying Bulk Updates In PouchDB Using A Recursive Promise Chain
- Creating A PouchDB Plugin For Bulk Document Updates
- Updating Multiple Documents With PouchDB
- Always Use A Deterministic ORDER BY When Using LIMIT And OFFSET In MySQL
- Creating A PouchDB Playground In The Browser With JavaScript
- PouchDB Data Modeling For My Dig Deep Fitness Offline First Mobile Application
- Experimenting With Simple CRUD Operations Using PouchDB In Angular 2.1.1
- Angular 2 Master Class - New York City - With Thoughtram
- Performing The Stream Equivalent Of Promise.all() Using RxJS
- Syncing LocalStorage In-Memory Cache With "storage" Events In Angular 2.1.1
November 2016
- ColdFusion Circuit Breaker Project On GitHub
- Type Coercion Will Bypass Index Selection During Query Planning In MySQL
- Casting Bit Fields To Booleans Using The Node.js MySQL Driver
- Partial Stream Execution: A Case For Hot RxJS Observables In Angular 2.1.1
- Using Hot RxJS Observables In Your Service Layer In Angular 2.1.1
- Follow-Up: Creating Leaky Abstractions With RxJS In Angular 2.1.1
- Creating Leaky Abstractions With RxJS In Angular 2.1.1
- The Problem Of Tracking Failures When Using Fallback Values In A Circuit Breaker In ColdFusion
- Tracking Request Resolution Within A Circuit Breaker In ColdFusion
- Including node_modules And vendors Folders In Your GitHub Pages Site
- NgModule Constructors Provide A Module-Level Run Block In Angular 2.1.1
- Why I Don't Like UPDATE Methods In API Design
- Considering Tree Shaking As An Influence On Application Architecture In Angular 2
October 2016
- Providing Run Blocks As Services That Implement A Runnable Interface In Angular 2.1.1
- Providing Run Blocks Using A Service Constructor In Angular 2.1.1
- Configuring A Service With Both Dependency-Injection And A Run Block In Angular 2.1.1
- Handling Service Configuration Without A Configuration Phase In Angular 2.1.1
- Monitoring Circuit Breaker State In ColdFusion
- How Deeply Should Feature Flags Be Embedded In Your Application?
- Extracting State Management From A Circuit Breaker In ColdFusion
- Exploring The Possibility Of Parallelizing Queries In ColdFusion Using CFThread
- Adding Custom Typings Files (*.d.ts) In An Angular 2 TypeScript Application
- High Performance MySQL: Optimization, Backups, And Replication By Baron Schwartz, Peter Zaitsev, And Vadim Tkachenko
- Thinking About Fallback Values In Circuit Breakers In ColdFusion
- How I Format The Conditional Ternary Operator In ColdFusion And JavaScript
- Revisiting Circuit Breakers As Explicit Action Proxies In ColdFusion
- Thinking About Duck Typing And Errors And Events
- Testing Performance Of Various Byte Array / Binary Value Generation Methods In ColdFusion
- Release It! Design And Deploy Production-Ready Software By Michael T. Nygard
- ColdFusion Gateway For IPInfo.io Geolocation Service
- Experimenting With Circuit Breakers In Decoupled Systems Using ColdFusion
- The User Experience (UX) Of Email As An Application Platform Interface
- Scalability Rules - 50 Principles For Scaling Web Sites By Martin L. Abbott And Michael T. Fisher
- ngModel Is Still Kind Of Broken In Angular 2.0.0
September 2016
- Experimenting With ByteBuffer In ColdFusion For Binary Manipulation
- Building Microservices (Designing Fine-Grained Systems) By Sam Newman
- Question: Reconciling One-Way Data Flow With Browser-Based Navigation
- Running MySQL Compress() And Uncompress() Compatible Methods In ColdFusion
- Revisited: Creating An Event-Driven Pre-Bootstrap Loading Screen In Angular 2.0.0
- There's What Your Manager Tells You And Then There's What Your Heart Tells You
- Moving Core Application CSS Styles Into The Root Component In Angular 2.0.0
- Fixing The Dropdown / Type-Ahead Menu In Amazon's Kibana / ELK Stack
- Creating An Event-Driven Pre-Bootstrap Loading Screen In Angular 2.0.0
- You Cannot Project Static Content Into The Root Component In Angular 2.0.0
- Automatic Property Calculation Support With Animations In Angular 2 RC 6
- Possible Bug With Asymmetric Support For Nested Animations In Angular 2 RC 6
- Possible Bug With Nested Animation Transitions In Angular 2 RC 6
- Blocking Nested Animations In Angular 2 RC 6
- Styling The Void State Using Animations In Angular 2 RC 6
- Using ChangeDetection With Animation To Setup Dynamic Void Transitions In Angular 2 RC 6
- Experimenting With Conditional Enter-Leave Animations In Angular 2 RC 6
- Creating A Custom ErrorHandler In Angular 2 RC 6
- I'm Excited When People Leave My Company
- Using Lodash's intersection() To Apply An Arbitrary Sort To A Set Of Simple Values
August 2016
- FAILURE: Exploring The ngRx Router In Angular 2 RC 4
- Transitions And Animations In CSS By Estelle Weyl
- Code Kata: Using Array Reduce() To Navigate An Object Graph In JavaScript
- Practical SVG By Chris Coyier
- The Import Statement Creates A "Live" View Of Modules In ES6 And TypeScript In Angular 2
- Thinking About TypeScript, Dependency-Injection Tokens, Type-Checking, And Architecture In Angular 2 RC 4
- Implementing A $log-Inspired Logging Service In Angular 2 RC 4
- A Promise Chain's API Is Determined By Its Initiating Promise Library
July 2016
- 99 Bottles Of OOP - A Practical Guide To Object-Oriented Design (BETA) By Sandi Metz And Katrina Owen
- Object Access: Bracket-Notation vs. Dot-Notation With TypeScript In Angular 2 RC 4
- On The Difficult Problem Of Logging Errors In Parallel Promises In JavaScript
- Gathering Data In Parallel Inside An Asynchronous Generator-Based Workflow In JavaScript
- Using ES6 Generators And Yield To Implement Asynchronous Workflows In JavaScript
- Using AES / CBC / PKCS5Padding Encryption With An Auto-Generated Initialization Vector In ColdFusion
- Using AES / CBC / PKCS5Padding / IV Encryption In ColdFusion And Decrypting Values In Node.js
- Writing Conditional SQL Statements Using Nested Tagged Template Literals In Node.js
- Exploring ES6: Upgrade To The Next Version Of JavaScript By Dr. Axel Rauschmayer
- Using AES / ECB / PKCS5Padding Encryption In ColdFusion And Decrypting Values In Node.js
June 2016
- Using An Item Template With An HTML Dropdown Menu Component In Angular 2 RC 3
- Maintaining JavaScript Date Values During Deserialization With A JSON Reviver
- Change Detection Strategy Appears To Override The ChangeDetectorRef In Angular 2 RC 3
- Learning About Promises By Implementing The Race() Method Algorithm
- Aggregating Values In A Promise-Based Workflow In JavaScript
- Emitting Cancelable / Preventable Output Events In Angular 2 RC 3
- ChangeDetectorRef Is A Special Dependency In Angular 2 RC 3
- Inline Object Literals Don't Trigger Unnecessary Input Changes In Angular 2 RC 2
- Elegant Objects By Yegor Bugayenko
- Thinking About Draggability Within A Unidirectional Data Flow In Angular 2 RC 1
- Node's require() Function Can Seamlessly Switch Between .json And .json.js Files
- Creating A Pre-Bootstrap Loading Screen In Angular 2 RC 1
- Q's Node Resolver Will Aggregate Results In An Array When Necessary
- The Node.js MySQL Driver Doesn't .end() As Gracefully With Connection Pooling
- Templates Appear To Maintain Lexical Bindings In Angular 2 RC 1
- Experimenting With Dynamic Template Rendering In Angular 2 RC 1
- Thinking About Static vs. Private Methods In TypeScript / Angular 2
- The 9th Annual Regular Expression Day - June 1st, 2016
- What If Your Company Is A Representative Of You?
May 2016
- Prioritizing Global Key Handlers In Angular 2 RC1
- Maintaining Proper Type-Checking With Callbacks Using TypeScript In Angular 2 RC1
- Better Type Checking With In-Browser TypeScript Transpiling In Angular 2
- Building Angular 2 Demos With System.js And TypeScript
- Creating A Value Accessor "Service" For NgModel In Angular 2 Beta 17
- Creating An Abstract Value Accessor For NgModel In Angular 2 Beta 17
- You Can Bind To The Same Event Several Times In Angular 2 Beta 17
- Trying To Enable Tabbing In Textareas In Angular 2 Beta 17
- Learning About The "Input" Event From Angular 2
- Native Key-Combination Event-Binding Support In Angular 2 Beta 17
- Querying For Multiple ViewChild Directives On A Single Element In Angular 2 Beta 17
- Exporting Component And Directive References In Angular 2 Beta 17
April 2016
- NgModel Host Bindings Finally Fixed But OnPush Change Detection Breaking In Angular 2 Beta 17
- Attaching Key Handlers With Dynamically-Parsed Host Event Bindings In Angular 2 Beta 14
- Extracting And Interpolating URL Subdomains Using ColdFusion
- Input And Output Aliases Can Be Namespaced In Angular 2 Beta 14
- Input And Output Bindings Can Be Namespaced In Angular 2 Beta 14
- Multi-Providers Do Not Aggregate Value Across Hierarchical Injectors In Angular 2 Beta 14
- The User Experience (UX) Of False Affordance And Threaded Conversations
- MySQL Truncating Value At First Supplementary / Astral / utf8mb4 Character On INSERT And UPDATE
- The Flexible Syntax Of Structural Directive Expressions In Angular 2 Beta 14
- Creating An Index Loop Structural Directive In Angular 2 Beta 14
- Implementing A Publish And Subscribe (Pub/Sub) Service In Angular 2 Beta 14
- Stripping Supplementary Characters Out Of A String In Order To Make It MySQL UTF-8 Compatible
- ColdFusion Rollout For Feature Flag Based Deployment
- Setting Cookies In CFScript Using Structs In ColdFusion 10
- Synchronous vs. Asynchronous EventEmitters In Angular 2 Beta 14
- Second Experiment With Controlled Inputs (ala ReactJS) In Angular 2 Beta 11
- Experimenting With Controlled Inputs (ala ReactJS) In Angular 2 Beta 11
- Fluent API Causing StackOverflow Error During Parsing In ColdFusion 10 On Java 8
- The User Experience (UX) Of User Experience Meetup Groups
- Using Checksums To Calculate Consistent User Bucket Assignment In ColdFusion
- Generating CRC-32 And Adler-32 Checksums In ColdFusion
- Ng-Content Life-Cycle Is Controlled By The Parent View Not The Consumer In Angular 2 Beta 11
March 2016
- Using Structs As Data Lookup Indices In ColdFusion Data Manipulation
- Creating An HTML Dropdown Menu Component In Angular 2 Beta 11
- The User Experience (UX) Of CSS Text-Transform On Form Input Fields
- Using ngModel With The OnPush Change Detection Strategy In Angular 2 Beta 11
- Adventures In Angular, Episode 85: Looking At Angular 2 With Ben Nadel
- Putting DEBUG Comments In Your SQL Statements Makes Debugging Performance Problems Easier
- Manually Triggering ngOnChanges() Inside An NgModel Value Accessor In Angular 2 Beta 11
- Host Bindings Are Breaking The ngModel Bridge In Angular 2 Beta 11
- Public Properties, Component Inputs, And The Change-Detection Contract In Angular 2
- Grouping The MySQL PROCESSLIST By IP Address To View Connection Counts
- Changing Directive Inputs Programmatically Won't Trigger ngOnChanges In AngularJS 2 Beta 9
- Injecting HTML With The BrowserDomAdapter In AngularJS 2 Beta 9
- Setting The Document Title Using Platform-Agnostic Methods In Angular 2 Beta 9
- Setting The Window / Document Title In Angular 2 Beta 9
- Thinking About Select Menu Components, Option Lists, One-Way Data Flow, And Angular 2
- Converting A Subject To An Observable Using RxJS In Angular 2
- Creating Specialized HTTP Clients In Angular 2 Beta 8
- Experimenting With The .catch() Operator And Stream Continuation In RxJS And Angular 2
- Ward Bell: Do Not Expect EventEmitter To Be Observable In Angular 2
- Creating A "Run Block" In AngularJS 2 Beta 8
- Providing Default Values For The Safe Navigation Operator In Angular 2 Beta 8
- How Injection Method Affects ViewChild Queries In Angular 2 Beta 8
- Constructor vs. Property QueryList Injection In Angular 2 Beta 8
- I Have A Fundamental Misunderstanding Of Change Detection In Angular 2 Beta 8
- Logging Error Streams To The Server In Angular 2 Beta 6
- EventEmitter Is An RxJS Observable Stream In Angular 2 Beta 6
February 2016
- Unhandled Errors In RxJS Observable Streams Will Throw Errors In Angular 2 Beta 6
- Understanding The Role Of Static Methods In An Angular 2 Dependency-Injection Context
- HTTP Requests Are Cold / Lazy Streams In Angular 2 Beta 6
- Providing Custom View Templates For Components In Angular 2 Beta 6
- ColdFusion Can Safely Pull-Through NULL Values In Function Return Statements
- Unwrapping HTTP Responses Using RxJS Observables In Angular 2 Beta 6
- Strange arrayContains() Behavior In For-Loop In ColdFusion 10
- Canceling RxJS Observables With ngOnDestroy In Angular 2 Beta 6
- RxJS Streams Are Inconsistently Asynchronous In Angular 2 Beta 6
- Throwing Errors In The Future Using RxJS In Angular 2 Beta 6
- Exploring Dependency-Injection Tokens Using Pictures In Angular 2
- Directive Conflict When Classes Export The Same Name In Angular 2 Beta 6
- Creating Custom DOM And Host Event Bindings In Angular 2 Beta 6
- Selectors And Outputs Can Have The Same Name In Angular 2 Beta 6
- Provider And Directive Arrays Can Be Mixed-Depth In Angular 2 Beta 6
- Dependency-Injection With Sub-Classed Services In Angular 2 Beta 3
- Experimenting With Class Delegates And Factories In Angular 2 Beta 3
- Understanding "Object Identity" With ngFor Loops In Angular 2 Beta 3
- Differentiating Between Initialization And Update With ngOnChanges() In Angular 2 Beta 3
- Experimenting With Input Cursor Positions In Angular 2 Beta 3
- Extending React.Component Using ES5 With ReactJS 0.14
- Rendering Large Datasets With Angular 2 Beta 3 And ReactJS 0.14.7
- Defining Optional Dependencies / Arguments Using ES5 In Angular 2 Beta 3
- Building A Better Mental Model For Meta-Data In Angular 2 Beta 3
- The Worst Code I Ever Wrote Was The Code I Wrote Six Months Ago
- ImageGetEXIFMetadata() Requires Existing File For First Read In ColdFusion
- EXCEPTION: Token Must Be Defined! In Angular 2 Beta 1
- EXCEPTION: No Provider For ParamDecorator In Angular 2 Beta 1
- Tracking Click Events Outside The Current Component In Angular 2 Beta 1
- Two-Way Data Binding Is Just A "Box Of Bananas" In Angular 2 Beta 1
- FAILURE: Using ngModel With A Custom Component In Angular 2 Beta 1
January 2016
- EXCEPTION: TypeError: Cannot Read property 'subscribe' Of Undefined In AngularJS 2 Beta 1
- Directive Output Bindings Use "$event" For Dependency-Injection In AngularJS 2 Beta 1
- Attribute Directive Selectors And Outputs Cannot Have The Same Name In AngularJS 2 Beta 1
- Attributes Are Not Normalized In AngularJS 2 Beta 1
- Correlating Directive Life-Cycle Events To DOM State In AngularJS 2 Beta 1
- Creating A Pseudo "Link Function" For A Component In AngularJS 2 Beta 1
- Component Inputs Provide Both Property And Attribute Bindings In AngularJS 2 Beta 1
- Pre-Binding Properties To An Object Constructor In JavaScript
- Inputs Are Not Pre-Bound To Component Controllers In AngularJS 2 Beta 1
- Component Life-Cycle Methods Need To Be Defined On The Prototype In AngularJS 2 Beta 1
- AngularJS 2 Beta 1: Hello World With ES5 And RequireJS
- Managing Locally Cached Data With Redux In AngularJS
- On Staying Focused And Productive In The World Of Programming
- Using Regular Expressions (RLIKE) Pattern Matching In MySQL Queries
- Mutating An Array During .forEach() Iteration In JavaScript
- Cross-Site Request Forgery (CSRF / XSRF) Race Condition In AngularJS
- AngularJS $http Interceptors vs. Redux Middleware - Why The Disconnect?
- Logging Redux Dispatch Calls Using Middleware And Decorators In AngularJS
- Synchronizing Magnetic Poetry With Firebase, AngularJS, And Redux
- Testing Foreign And Unicode Character Rendering With The CFDocument Tag In ColdFusion
- Using Multiple Break Statements In A Single Case Block In JavaScript
December 2015
- The invoke() Function Will Accept Three Kinds Of Argument Collection Formats In ColdFusion
- The ColdFusion 10 invoke() Function Works With Most Java Objects
- Breaking Out Of A Promise Chain In AngularJS
- OWASP Encoder.cfc - A Java Encoder Proxy For ColdFusion
- Synchronizing Magnetic Poetry With Firebase And AngularJS (Without Redux)
- Terminating Asynchronous CFThreads In ColdFusion
- The Best Way To Compute The Average Age Of Cat Owners In Functional Programming
- Generating Random Binary Values Using randRange() In ColdFusion
- Exploring The CFCookie encodeValue Attribute In ColdFusion
- Trying To Generate "Cryptographically Strong" Random Tokens In ColdFusion
- ColdFusion 11 Will Not Accept Incoming Empty Cookie Values
- Formatting CSV Data For JIRA Tables Using AngularJS And Plupload
- Use preserveCase Consistently When Setting And Expiring Cookies In ColdFusion
- Using structDelete() With Cookies Does Not Alter Cookie Scope In ColdFusion
- Bane On Task Estimation
- Experimenting With ExtendedInfo To Aggregate Error Information In ColdFusion
- Passing ngModelController Into A Component Directive Controller In AngularJS
- Coordinating Deployments With Firebase, AngularJS, Git, And GitHub
- Managing Connection Pool Resources Using Closures In ColdFusion
- Rendering Image Previews Using Object URLs vs. Base64 Data URIs In AngularJS
- Redis Doesn't Store Empty Sets Or Hashes (And Will Delete Empty Sets And Hashes)
November 2015
- Formatting And Parsing Custom ngModel Bindings In AngularJS
- Sometimes, There Is Unavoidable Coupling To The DOM In AngularJS
- Conditionally Canceling Href Navigation Using Directives In AngularJS
- Consuming Event Properties From Within The View In AngularJS
- The User Experience (UX) Of Yesterday's Slack Outage
- Is Injecting The $element And $event Objects An Anti-Pattern In AngularJS?
- Managing A Shared Global UI Component In AngularJS
- Scattering Letters Based On Mouse Movements In AngularJS
- Project HUGE: Building A Home Gym - Squatting, Benching, And Pulling On My Half-Rack
- Watching And Responding To ngModel Changes In AngularJS
- Project HUGE: Building A Home Gym - CFF Landmine Rowing Attachments
- Cached Closures And User Defined Functions (UDFs) In ColdFusion
- Project HUGE: Building A Home Gym - Dips
- The User Experience (UX) Of Pagination
- Project HUGE: Building A Home Gym - Buying The Steel
- Var For Life - Why Let And Const Don't Interest Me In JavaScript
- Creating A Closure-Based Tunnel Between A Thread And A Function In ColdFusion
- Adding Closure-Based Distributed Lock Management To CFRedlock
- Project HUGE: Building A Home Gym - Proof Of Concept
- CFRedlock - My ColdFusion Implementation Of The Redlock Distributed Locking Algorithm From Redis
- Snooper.cfc - A ColdFusion Component For Finding Live Variable Leaks
October 2015
- Using LaunchDarkly With ColdFusion And JavaLoader
- Adding RSA Support To JSONWebTokens.cfc - My ColdFusion JWT Library
- Experimenting With RSA-Encrypted Signature Generation And Verification In ColdFusion
- Leverage CSS user-select For A Better User Experience (UX)
- Isolating The ngModel Two-Way Data Binding Life-Cycle In AngularJS
- JSONWebTokens.cfc - A Small ColdFusion Module For JSON Web Tokens
- The CFParam Tag Doesn't Care About White-Space In ColdFusion
- Creating An Isolate-Scope Directive With Multiple Transclusion Points In AngularJS
- Enable Animations Explicitly For A Performance Boost In AngularJS
- Handling Window Blur And Focus Events In AngularJS
- The User Experience (UX) Of Ceremony And Self-Priming
- Child Animations Have To Inherit Transition-Property In AngularJS 1.2 And 1.3
- CSS3 Transition Properties Are Not Inherited (In AngularJS)
- Using CMD+Enter To Submit A Form In AngularJS
- Using The This-Binding In Directive Definition Objects In AngularJS
- Thinking In (A Different) Context - A Prototype For User Experience (UX) Designers
- Overriding Core And Custom Services In AngularJS
- Overriding Directive Definitions In AngularJS
- $location.search() Facilitates Independent Sub-Routing In AngularJS
- Image Load And Error Events Bubble Up In ReactJS
September 2015
- Decoupling Component And Layout Responsibilities In ReactJS
- Decoupling Component Directives From Layout In AngularJS
- Components Should Be Reused, Not Repurposed
- Using A Compound Track-By Expression With ngRepeat In AngularJS
- Passing Contextual Classes And Styles Into Child Components In ReactJS
- Thinking In React In AngularJS
- Using Dynamic Element Names With The JSX Transpiler In ReactJS
- Attaching Dynamic Event Handlers To Proxied Child Elements In ReactJS
- Setting The State Based On Rendered DOM Elements In ReactJS
- Don't Alter The DOM (Too Much) During The $destroy Event In AngularJS
- Using The INSERT INTO ... SET Syntax In MySQL
- More Child-Element Animations Using ngAnimate In AngularJS
- The User Experience (UX) Of Container Store Parts Packaging
- Experimenting With ngAnimate And ng-animate-ref In AngularJS 1.4
- Child Animations Have To Take The "Magical" Transition-Delay Into Account In AngularJS
- You Can Use require() To Load JSON (JavaScript Object Notation) Files In Node.js
- Animating Static Child Nodes Using ngAnimate In AngularJS
- Is Using .bind() To Lock-In Arguments A "Code Smell" In ReactJS
- setState(), shouldComponentUpdate(), And render() Timing In ReactJS
- shouldComponentUpdate() Will Short-Circuit An Entire Subtree Of Components In ReactJS
- Why Should I Care About Immutable Data In ReactJS?
- Rendering ReactJS Components In AngularJS Using AngularJS Directives
- Using Scope.$watchCollection() To Watch Functions In AngularJS
- Protecting Context-Dependent Promise Callbacks In AngularJS
- Handling Plupload's Uploader Init Race Condition In AngularJS
August 2015
- Bane On JavaScript
- The User Experience (UX) Of Value In Web Application Design
- Accessing The View-Model Inside The Link Function When Using Controller-As In AngularJS
- Creating A ReactJS-Inspired "Props" Object In AngularJS
- Experimenting With "Query String Zones" In AngularJS
- setState() State Mutation Operation May Be Synchronous In ReactJS
- TypeError: Cannot Read Property "childNodes" Of Undefined In AngularJS
- ngInclude Asynchronous Template Life Cycle Bug In AngularJS
- Creating AngularJS-Inspired "Directive" Components In ReactJS
- Unexpected Scope Precedence When CFIncluding Template Into A ColdFusion Component
- Experimenting With Higher-Order Components In ReactJS
- Initialize Instance Variables In getInitialState() For Consistency In ReactJS
- Experimenting With Russian Doll Error Reporting In Node.js
- Conditional Animations And Transition Timing In AngularJS
- Possible Bug: Empty Animations Are Cached In AngularJS 1.4
- How The $destroy Event Affects The Scope Tree In AngularJS
- Should Flux Change The Way That I Think About ReactJS Components?
- Switch Cases Do Not Have To Be Static In JavaScript
- A Quick Look At Rendering White Space Using JSX In ReactJS
July 2015
- How JSX Renders Different Data Types In ReactJS
- Should The Relationship Between Object Mode And Read Size Be Symmetric In Node.js Streams?
- Object Mode Streams Do Not Decode Strings Into Buffers In Node.js
- You Don't Need To Use .bind( this ) When Using .forEach() Or .map() In ReactJS
- Class Attribute Interpolation Is Safer In AngularJS 1.2 And Newer
- Error Object Properties Are Not Iterable / Enumrable In Node.js
- Thinking About Tracking Requests And Errors Across Micro-Services
- Managing Conditional Links And Route Changes In AngularJS
- Using Bit Values In COALESCE() In MySQL Results In Binary Values
- Using Module.decorator() In AngularJS 1.4
- Using Anchor Tags And URL-Fragment Links In AngularJS
- Fun With Emoticons And Service Providers In AngularJS
- Quick Note: Favor $exceptionHandler() Over $log.error() In AngularJS
- FusionReactor Offers Excellent Insight Into Java And ColdFusion Server Performance
- Performing Online ALTER TABLE SQL Migrations Without Any Downtime
- Rendering Large Datasets With AngularJS And ReactJS
- Breaking Direct Object References At Cache Boundaries In AngularJS
- Sometimes I'm Tempted To Use Try / Finally In The Worst Way
- Encapsulating LocalStorage Access In AngularJS
- An Experiment In What React's JSX Might Feel Like In AngularJS
- Sending AngularJS Errors To New Relic, Raygun, Sentry, etc.
- What If AngularJS Had A setState() Method Like ReactJS
- Hello World: Comparing ReactJS And AngularJS
June 2015
- Consuming The Uniform jQuery Plugin In AngularJS
- Piping Global Errors Into The $exceptionHandler Service In AngularJS
- AngularJS In Firefox: TypeError: Missing Argument 1 When Calling Function b.get()
- ngShow / ngHide Classes Get Applied In The $$postDigest Phase In AngularJS 1.3
- Understanding How To Use $scope.$watch() With Controller-As In AngularJS
- Absolute Grid (ReactJS) Knock-Off In AngularJS
- The Beauty Of Modular Code: Adding Different Transports To StatsDGateway
- StatsDGateway.cfc - A ColdFusion Module For Communicating With StatsD Servers
- Thought Experiment: No Private Methods In Object Oriented Design
- Added Manual String Serialization To JsonSerializer.cfc ColdFusion Project
- Encoding And Decoding Base64url Values In ColdFusion
- The Philosophy Of Extending Lodash In JavaScript
- Structs Can Use The Empty-String As A Valid Key In ColdFusion
- Manually Serializing A String Using JSON-Encoding In ColdFusion
- SerializeJson() And "The Input And Output Encodings Are Not Same" Errors In ColdFusion
May 2015
- The 8th Annual Regular Expression Day - June 1st, 2015
- Trying To Understand Unicode Normalization In ColdFusion And Java
- AngularJS Will Parse JSON Payloads In Non-2xx HTTP Responses
- Reading Environment Variables In ColdFusion
- Parsing Various Units-Of-Measurement As Bytes In Node.js
- Anonymous Functions, Assigned To References, Show Up Well In JavaScript Stack Traces
- Normalizing Untrusted Deferred / Promise Values For The $digest Lifecycle In AngularJS
- Angular Air Episode 15: Architecting Huge Angular Apps With Ben Nadel And Aaron Frost
- Programming JavaScript Applications By Eric Elliott - Revisited
- Exposing Promise / Deferred Functionality On Streams In Node.js
- Rethrowing Errors In JavaScript And Node.js
- Learning Node.js: Building A Simple API Powered By MongoDB
- String Interpolation Using util.format() And util.inspect() In Node.js
- Creating Custom Error Objects In Node.js With Error.captureStackTrace()
- EdgeCast CDN Won't Cache Your First Request And Can't Cache Subsequent 304 Not Modified Responses
April 2015
- ColdFusion Image Resize Stuck At sun.java2d.cmm.kcms.CMM.cmmColorConvert With Massive CPU Usage
- Fixing Grayscale PNG Thumbnail Images That Come Out Too Dark In ImageMagick 6.7.7
- getHttpRequestData() May Break Your Request In ColdFusion But getHttpRequestData(False) May Not
- Does The HTTP Response Stream Need Error Event Handlers In Node.js?
- The User Experience (UX) Of Tipping As Personal Expression
- Adventures In Angular, Episode 38: Performance With Ben Nadel
- Function Hoisting, Prototype Chains, Exports, And process.nextTick() In Node.js
- Consuming The Crypto Hash Algorithms As A Stream In Node.js
- Learning Node.js: Building A Static File Server
- The Affect Of Back-Pressure When Piping Data Into Multiple Writable Streams In Node.js
- Managing User Input Key-Events Across Views In AngularJS
- Directive Controllers Cannot Use The Revealing Module Pattern In AngularJS
- $animate:before, $animate:after, $animate:close And The ngAnimate Enter Workflow In AngularJS
- Animating Elements In From A Mouse-Event Location Using ngAnimate And AngularJS
- CAUTION: Overloading The ng-Controller Directive In AngularJS
- Exposing An Optional Directive Template Using ng-Template And The $templateCachce() In AngularJS
- Directive Architecture, Template URLs, And Linking Order In AngularJS
- Mutating Isolate Scope References In AngularJS
March 2015
- Asking The User To Confirm Location Or Route Changes In AngularJS
- Using $rootScope.$emit() As A Performance Optimization In AngularJS
- Creating A Simple Modal System In AngularJS
- $location Search-Parameter Data Type Depends On Source In AngularJS
- ngRoute Exposes The Original Route Definition Through Prototypal Inheritance In AngularJS
- ng-Template Requests Are Affected By $http Interceptors In AngularJS
- Simulating Network Latency In AngularJS With $http Interceptors And $timeout
- Revisiting Routing, Nested Views, And Caching With ngRoute In AngularJS 1.x
- Forcing $q .notify() To Execute With A No-Op In AngularJS
- Using GREATEST(), LEAST(), And Date/Time Values With COALESCE() In MySQL
- Using Method Chaining With The Revealing Module Pattern In JavaScript
- Creating Objects With A Null Prototype In Node.js
- It Walks Like A Duck, It Quacks Like A Duck, But It's A Donkey - The Problem Of Inappropriately DRY Code
- Thinking About Inversion Of Control (IoC) In Node.js
- When Do You Need To Compile A Directive In AngularJS
- MySQL EXISTS() Operator Returns True Or False
- Shedding The Monolithic Application With AWS Simple Queue Service (SQS) And Node.js
February 2015
- Using The Amazon Web Services (AWS) SDK To Create Pre-Signed S3 URLs With Path-Style Access
- Using Plupload To Upload Files Directly To Amazon S3 Using PUT And Pre-Signed (Query String Authenticated) URLs
- Be Careful With Compound Conditions In AngularJS (And JavaScript In General)
- Creating A Factory Provider For The Configuration Phase In AngularJS
- Consuming Plupload Data URIs In An AngularJS Application
- Is Not A Four-Letter Word
- Volatile Keys Can Expire Mid-MULTI-Transaction In Redis / Jedis
- Animating A Single Item Using ngRepeat And ngAnimate In AngularJS
- Deferring Route Configuration Using Decorators And Route Resolution In AngularJS
- Route Resolution Using Factory Functions vs. Services In AngularJS
- Exploring $route Resolution In AngularJS
- $route redirectTo Will Pass-Through Current Route Params In AngularJS
- $route redirectTo Does Not Break The Back Button In AngularJS
- Exploring $q And Scope $digest Integration In AngularJS
- Monitoring $http Activity With $http Interceptors In AngularJS
- Odd Error Involving CFThread, WriteDump(), Format Text, CFSaveContent And ColdFusion 10
January 2015
- Monkey-Patching The $q Service Using $provide.decorator() In AngularJS
- Monkey-Patching The $q Service With .fcall() In AngularJS
- Handling Top-Level Errors In A Promise Workflow In AngularJS
- Exploring Asynchronous Promise-Based Workflows In AngularJS
- Defining Post-Route-Change Scroll Behavior Using $location in AngularJS
- $route Must Be Injected In Order To Enable The $routeChangeSuccess Event In AngularJS
- Providing State-Transformation Triggers Using $location In AngularJS
- Staggering ngRepeat Animations In AngularJS
- Watching A Collection Of Expressions Using Scope.$watchGroup() In AngularJS
- Stateless Filters Don't Apply To Objects, Arrays, or ngRepeat In AngularJS 1.3
- Preventing Animation During The Initial Render Of ngRepeat In AngularJS
- ColdFusion 11 Accepts All Top-Level Domains (TLD) For IsValid() Email Validation
- Binding Multiple ngSwitchWhen Cases To The Same Value In AngularJS
- ngSwitchWhen Priority Is Higher Than ngRepeat Priority In AngularJS 1.3
- AngularJS Pro-Tip: Be Mindful Of HTML Attribute Ordering
- One-Time Data Bindings For Object Literal Expressions In AngularJS 1.3
- Exploring One-Time Bindings In AngularJS 1.3
- Creating A Pre-Bootstrap Loading Screen In AngularJS
- Creating An HTML-Based Select Menu In AngularJS Using ngModel And ngModelController
- Experimenting With ngModel And ngModelController In AngularJS
- Link Function And $watch() Callback Timing In AngularJS Directives
- Event Delegation Performance vs. Linking Performance In AngularJS
December 2014
- Creating jqLite Plugins In AngularJS
- Using jQuery Instead Of jqLite In AngularJS
- Scope.$applyAsync() vs. Scope.$evalAsync() in AngularJS 1.3
- Injecting Sibling Nodes During The Compilation Phase Of AngularJS Directives
- Passing $q Defer Methods Around As Naked Function References In AngularJS
- Compiling Transcluded Content in AngularJS Directives
- Accidentally Defining A Directive Twice In AngularJS
- The "Post-Link" Function Is The "Link" Function In AngularJS Directives
- Creating Custom Script Tag Directives In AngularJS
- Exposing A Service Directly On The $scope In AngularJS
- Binding A Directive To Multiple Compilation And Linking Functions In AngularJS
- How Often Are Numeric Dates Unique In ColdFusion?
- Creating A Range-Loop Directive In AngularJS
- Replacing ngInclude With Component Directives In AngularJS
- Deferred Module Definition For 3rd-party Libraries In JavaScript
- Using ngRepeat With ngInclude Hurts Performance In AngularJS
- Directive Templates Have A Small Impact On Performance In AngularJS
- The User Experience (UX) Of Fluffy Data
- $q.when() Is The Missing $q.resolve() Method In AngularJS
- Using The Scope Tree As A Publish And Subscribe (Pub/Sub) Mechanism In AngularJS
- Use A GetTempFile() Prefix That Links The File Back To The Code That Created It
- GetTempFile() Creates 0KB Files In ColdFusion
- Canceling A Promise In AngularJS
November 2014
- Counting The Number Of Watchers In AngularJS - Updated For Isolate Scopes
- Don't Blindly Isolate All The Scopes In AngularJS Directives
- Breaking Changes In Isolate-Scope Behavior In AngularJS 1.2
- Isolate-Scope Attribute Expressions Use Dependency-Injection In AngularJS
- Isolate-Scope Two-Way Data Binding Is Eventually Consistent In AngularJS
- How Scope.$broadcast() Interacts With Isolate Scopes In AngularJS
- Scope.$broadcast() Is Surprisingly Efficient In AngularJS
- Unbinding Scope.$on() Event Handlers In AngularJS
- Using Plupload With Amazon S3 And Imgix In AngularJS
- Using ImgIX For On-Demand Image Processing At Web Scale In ColdFusion Applications
- Creating And Extending A Lodash / Underscore Service In AngularJS
- Using Plupload As A Global Uploader In AngularJS
- Preventing FileDrop Memory Leaks In Plupload 2.1.2
- scope.$apply() May Return A Value In AngularJS
- When To Use $scope vs. scope In AngularJS
- Services And Factories Are Instantiated On-Demand In AngularJS
- Using Variables Into XPath Queries In ColdFusion
- Using Multiple Predicates In The Same Part Of An XPath Query In ColdFusion
- Refactoring bnRepeatSwitch To Use A Multi-Priority Directive In AngularJS
- Binding A Single Directive To Multiple Priorities On The Same Element In AngularJS
- Implementing Controller-As Using A Directive In AngularJS 1.0.8
- Directive Controllers Can Use Dependency Injection In AngularJS
October 2014
- Exceptions Are For Exceptional Circumstances Is Not A Value-Add Answer
- Implementing ngRepeat Track-By Using A Directive In AngularJS 1.0.8
- Always Trigger The $destroy Event Before Removing Elements In AngularJS Directives
- A Quick Look At How DOM Structure Affects Text Interpolation Watchers In AngularJS
- Deferring Attribute Interpolation In AngularJS For Better Performance
- You Cannot Link Attribute Interpolation Multiple Times In AngularJS
- Creating An Optimized Switch Directive For Use With ngRepeat In AngularJS
- Mixing Data And Templates Using A Single ngRepeat In AngularJS
- Individual Firebase References Don't Store Unique Event Bindings
- Firebase Won't Sync Reference Data Until Event Handlers Are Bound
- Counting The Number Of Watchers In AngularJS
- Dumping ColdFusion Values Into A String Variable Using WriteDump()
- Overriding Content-Type And Content-Disposition Headers In Amazon S3 Pre-Signed URLs
- Rule Of Thumb: Always Define And Consume An ArgumentCollection Map In A Single Context
- My First Look At Using The Firebase Backend-As-A-Service (BaaS) In AngularJS
- Uploading Files To Amazon S3 Using Pre-Signed (Query String Authentication) URLs
- You Have To Explicitly End Streams After Pipes Break In Node.js
- Making ColdFusion Closures More Flexible With Context Arguments
- Transforming Binary Data At The Bit Level Using ColdFusion And BitBuffer.cfc
- Creating Signed Java Byte Values Using ColdFusion Numbers
September 2014
- Providing Environment Variables When Executing Node.js Program
- Using Base32 Encoding And Decoding In ColdFusion
- Converting A Byte Array Into A Bit Stream Using ColdFusion And BigInteger
- Uploading And Sending MMS (Multimedia Messaging Service) Messages With Twilio And ColdFusion
- You Can Reference Your Derived SELECT Columns In Your ORDER BY Clause In SQL
- EventEmitter Invokes Event Callbacks In The Context Of The EventEmitter Instance In Node.js
- Buffer.slice() Won't Error On Out-Of-Bounds Indices In Node.js
- Turning Buffers Into Readable Streams In Node.js
- Be Careful About Launching Asynchronous Tasks Inside CFTransaction In ColdFusion
- How Error Events Affect Piped Streams In Node.js
- Error Events Don't Inherently Stop Streams In Node.js
August 2014
- Node.js Streams Inherit Error-Handling Behavior From EventEmitter
- Bind Your Error Handler Before Your Readable Handler When Using Node.js Streams
- The User Experience (UX) Of Custom Scrollbars
- Creating A Reusable Timer In AngularJS
- ColdFusion Per-Application Datasources Don't Work In The OnApplicationEnd() Event Handler
- ColdFusion Per-Application Mappings Don't Work In The OnApplicationEnd() Event Handler
- Looking At Nested Event Timing And DOM Structure In AngularJS
- MySQL GROUP_CONCAT() Has Buggy Interaction With UNION Clauses
- MySQL GROUP_CONCAT() Fails Silently When It Hits Its Size Limit
- Normalizing HTTP Header Values Using CFHttp And ColdFusion
- Parsing Http Time Strings With ParseDateTime() In ColdFusion
- Less CSS, Relative Paths, Nested Quotes, Url() Constructs, And Post-Processing
July 2014
- Sticky CDN - A Content Delivery Network (CDN) For Your Local Development Environment
- Cloning RegExp (Regular Expression) Objects In JavaScript
- Node.js Transform Streams vs. Through2 Streams
- My First Look At Streams In Node.js
- CFFinally Tag Will Execute Even After An Abort In ColdFusion
- Clustering Plupload Instances For Parallel File Uploads
- Migrating From ui-if To ng-if In AngularJS
- Using Scope.$watch() To Watch Functions In AngularJS
- Experimenting With Compress() And Uncompress() In MySQL
- Url-Encoding Amazon S3 Resource Keys For Pre-Signed Urls In ColdFusion
- Which ASCII Characters Does urlEncodedFormat() Escape In ColdFusion
- Showing Client-Side Image Previews Using Plupload Before Uploading Images To Amazon S3
- Using BeforeUpload To Generate Per-File Amazon S3 Upload Policies Using Plupload
- Using Plupload To Upload Files In AngularJS
June 2014
- Looking At $compile() And MaxPriority In AngularJS
- Looking At Attribute Interpolation Workflow Changes In AngularJS
- Embedding Images As Base64-Encoded Data URIs Using Less CSS
- Inspecting Attribute-Normalization Within Directives In AngularJS
- Shadowing Isolate Scope Behaviors In AngularJS
- Using Isolate Scope In Directives In AngularJS
- Thinking About Strings, Quotes, Tokens, And Tildes In Less CSS
- AngularJS Code Smell: Defining $scope Methods In Directives
- Cache-Busting CSS Images With Less CSS
- Understanding Variable Scope And Variable Injection In Less CSS
- Normalizing Less CSS Mixin Arguments For Use In JavaScript Variable Interpolation
- Normalizing String Values In Less CSS Mixins
- Passing Rulesets To Mixins In Less CSS
- Executing JavaScript In The LESS CSS Precompiler
- The User Experience (UX) Of Trello Comments
- Spliced - A Version Of Splice() That Returns The Original Array In JavaScript
- Looking At How scope.$evalAsync() Affects Performance In AngularJS Directives
May 2014
- The 7th Annual Regular Expression Day - June 1st, 2014
- Creating Multiline Descriptions With JavaDocs And CFScript In ColdFusion
- Creating Asynchronous Alerts, Prompts, And Confirms In AngularJS
- Workflow Differences Between $scope.$watch() and Attributes.$observe() In AngularJS
- Accessing $document Properties In AngularJS
- Watching Object Literal Expressions In AngularJS
- Creating A Pixel-Based Version Of ngStyle In AngularJS
- CFFinally Will Execute Even If CFCatch Throws An Error In ColdFusion
- The User Experience (UX) Of Having One Computer Monitor
- Triggering $digest Phases In Related Directives In AngularJS
- Aborting An AJAX Request In AngularJS Using httpi
- Exception Types In CFCatch Blocks Do Not Have To Be Quoted
- Throwing And Catching Java Runtime Exceptions In ColdFusion
April 2014
- Anti-Aliasing Has No Effect On Image Resizing / Scaling In ColdFusion
- Catching CFLock Timeout Errors In ColdFusion
- Using Private Data To Reason About Inheritance And Sub-Classing
- Coercing Non-Truthy Values In JavaScript
- Parsing AngularJS Request Data On The Server Using ColdFusion
- Aborting AJAX Requests Using $http And AngularJS
- Posting Form Data With $http In AngularJS
- httpi - A Lightweight $resource-Inspired Module For AngularJS
- Using URL Interpolation With $http In AngularJS
- Using The $http Service In AngularJS To Make AJAX Requests
- Using ORDER BY And LIMIT Clauses In A UNION SQL Statement
- Using JSONP With $resource In AngularJS
- Internet Explorer Aborts Images With The Wrong Mime-Type
- Finding Shallow HTML Comment Nodes In The DOM Using TreeWalker
- Finding HTML Comment Nodes In The DOM Using TreeWalker
- Searching The DOM For Comment Nodes Based On Value And Pseudo-Attributes
- $scope.$evalAsync() vs. $timeout() In AngularJS
- The User Experience (UX) Of Sketching In Prototyping
- Directive Controller And Link Timing In AngularJS
- The User Experience (UX) And Cognitive Dissonance Of Forms
- The User Experience (UX) Of Color Contrast In A Call-To-Action
- Implementing Java's Collections.Shuffle() In JavaScript
March 2014
- The Principles Of Object-Oriented JavaScript By Nicholas Zakas
- Years Later, I Still Love jQuery
- Preloading Images In AngularJS With Promises
- Case Study: Using $scope.$digest() As A Performance Optimization In AngularJS
- Using $scope.$digest() As A Performance Optimization In AngularJS
- Using Transparent Select Menus To Create Styled Menu Roots
- IsValid() Accepts Emails With Leading And Trailing Whitespace In ColdFusion
- Hooking Into The Complete Event Of An ngRepeat Loop In AngularJS
- Embedding Foreign Characters In Your Content-Disposition Filename Header
- Sanity Check: $index vs. DOM In AngularJS Directives
February 2014
- Using The Timeout Attribute With CFHttp In ColdFusion To Limit Blocking
- The Elvis Operator vs. IsNull() In ColdFusion 11 Beta
- Robust CFScript Suport For Tags In ColdFusion 11 Beta
- Chunking Amazon S3 File Uploads With Plupload And ColdFusion
- Chunking File Uploads With Plupload And ColdFusion
- Using ObjectSave() And ObjectLoad() With Non-ColdFusion-Component Data Types
- The User Experience (UX) Of The 2011 Jeep Grand Cherokee Manifesto Commercial
- Using Hosted Graphite With ColdFusion And GraphiteD
January 2014
- Spawning Nested ColdFusion Threads With Synchronous Fallbacks
- ColdFusion Threads Hanging On JDBC Pool CheckIn / CheckOut
- Sending And Receiving UDP (User Datagram Protocol) Messages With ColdFusion
- The User Experience (UX) Of Trending Data
- How To Store Arbitrary And Transient Attributes With Your User Data
- Testing Which ASCII Characters Break JSON (JavaScript Object Notation) Parsing
- Using X-Forwarded-For To Report IP Address In FusionReactor 5
- getHttpRequestData() Throws NullPointerException When Invoked After ColdFusion Request Has Ended
- Keep Overflow Content Scrolling Unresponsive Until Clicked Using jQuery
- Code Golf: 2014 In ColdFusion
- SerializeJson() Escapes Forward-Slashes In ColdFusion
- For Better Security Use HtmlEditFormat() In Conjunction With JSStringFormat() In ColdFusion
- After 2013, I'm Looking Forward To 2014
December 2013
- Preventing Cross-Site Request Forgery (CSRF / XSRF) With AngularJS And ColdFusion
- Separate Asynchronous Thread Logic From Your Business Logic
- Scope $watch() vs. $watchCollection() In AngularJS
- Visualizing A Git Merge Without A Rebase
- Using Multiple Dropzones And File Inputs With A Single Plupload Instance
- Showing Plupload Image Previews Using Base64-Encoded Data Urls
- $.stop() vs. $.finish() In jQuery Animations
- Changes In Transclude() Function Availability In AngularJS 1.2
- Compound Transclusion Prevented In AngularJS 1.2
- Cisco AnyConnect VPN Client May Block CORS AJAX OPTIONS Requests
November 2013
- Using Start/End Directive-Ranges In AngularJS 1.2
- Defer DOM Tree Binding In AngularJS With Delayed Transclusion
- Using Track-By With ngRepeat In AngularJS 1.2
- Preloading Data Before Executing ngInclude In AngularJS
- Loading AngularJS Components With RequireJS After Application Bootstrap
- Loading AngularJS Components After Your Application Has Been Bootstrapped
- Dev Ops Manager Job At InVision
- Creating A RequireJS Service For AngularJS Applications
October 2013
- Very Strange Script-Based Behavior For CFParam In ColdFusion
- Tiny Test JS - An Exploration Of Unit Testing In JavaScript
- Don't Forget To Cancel $timeout Timers In Your $destroy Events In AngularJS
- What Data Should I Push Over Realtime WebSockets?
- Streamlined Object Modeling: Patterns, Rules, And Implementation
- Dumping Out The CGI Scope Does Not List All Available CGI Values In ColdFusion
- Creating Typed Java Arrays In ColdFusion Using JavaCast()
- The User Experience (UX) Of Design Thumbnails
- Logging Client-Side Errors With AngularJS And Stacktrace.js
- Most CSS Floats Can Be Replaced With Relative And Absolute Positioning
- The User Experience (UX) Of User Interface (UI) Transitions
- MongoDB Applied Design Patterns By Rick Copeland
September 2013
- Sending MMS (Multimedia Messaging Service) Messages With Twilio And ColdFusion
- Using Explicit Pattern Matching With ResourceMapper.cfc
- Getting ColdFusion, Helicon Ape, X-SendFile, URL Rewriting, And IIS To Work Together
- ColdFusion Insights For My Online Fusion Reactor Alert Viewer
- Cleaning Up And Sending One-Off Undelivered ColdFusion Emails
- Tracking File-Download Events Using JavaScript And ColdFusion
- The User Experience (UX) Of Manually Sorting Data
- Setting Unscoped Variables Inside CFThread In ColdFusion
- Getting Started With MongoLab And The MongoDB Shell
- MongoDB: The Definitive Guide By Kristina Chodorow
- AsyncTaskQueue.cfc - Running Low-Priority Tasks In A Single CFThread
- Defining Instantiatable Classes In The AngularJS Dependency Injection Framework
- Using Per-Application Mappings With File I/O In ColdFusion
- HTML And JavaScript Viewer For Fusion Reactor Alert Emails
- PatternMatcher.cfc Now On GitHub
- Parsing Fusion Reactor Alert Emails Into A Usable Data Structure
- Providing A Return Value In A JavaScript Constructor
- Using Base Controllers In AngularJS - An Experiment
- Giving My ColdFusion Components And My JavaScript Components The Same Structure
August 2013
- ExpandPath() Works With ColdFusion's Per-Application Mappings
- ClosureCompiler.cfc - A ColdFusion Facade For Google's Closure Compiler
- Looping Over Java Arrays In ColdFusion
- CFLive.net Lets You Run Adobe / Railo ColdFusion Code On-Demand
- Default CFParam Expressions Are Always Executed In ColdFusion
- Default Argument Expressions Are Executed Only As-Needed In ColdFusion
- Publishing Software Libraries With An Optional External Class Loader
- The User Experience (UX) Of Writing Personal Emails For Sales And Marketing
- Calling The Closure Compiler From ColdFusion And Java
- The User Experience (UX) Of Pausing Automatic Investments At The Vanguard Group
- The User Experience (UX) Of Rating Things
- Sending Client-To-Client Realtime Messages With Pusher App And ColdFusion
- Mixing Static Content With ngSwitch And ngSwitchWhen In AngularJS
- Storing Per-File Multipart-Params In The Plupload Queue
- JsonSerializer.cfc - A Data Serialization Utility For ColdFusion
- The Anatomy Of An INNER JOIN Query In SQL
- Amazon S3 Form Post - Invalid Policy: Invalid Simple-Condition: Value Must Be A String
- Uploading Files To Amazon S3 Using Plupload And ColdFusion
July 2013
- Converting ColdFusion Date/Time Values Into ISO 8601 Time Strings
- Uploading Files To Amazon S3 Using A Form Post And ColdFusion
- Generating The Content-MD5 Checksum For The Amazon S3 REST API Using ColdFusion
- Lazy Loading Image With AngularJS
- Cross-Fading Images With AngularJS
- Using CFHTTP GetAsBinary To Normalize HTTP Response File Content Format
- User-Friendly Sort Of Alpha-Numeric Data In JavaScript
- Using Namespaces For One-Off Directives In AngularJS
- Testing IMG Complete With No SRC Attribute
- What A Select $watch() Teaches Me About ngModel And AngularJS
- Conditionally Exiting Out Of A CFThread Tag In ColdFusion
June 2013
- Detecting File Type Using Magic Numbers In ColdFusion
- How Often Do Filters Execute In AngularJS
- Generating Pre-Signed (Query String Authentication) Amazon S3 Urls With User-Specific Data
- Filter vs. ngHide With ngRepeat In AngularJS
- Experimenting With The Amazon Simple Storage Service (S3) API Using ColdFusion
- Working With Inherited Collections In AngularJS
- SOTR 2013 - The Best Conference I Never Went To
- Object Thinking By David West
- Creating Ruby-Inspired Modules In ColdFusion
- A Sub-Class Should Not Access Private Variables In Its Super-Class
- Unbinding $watch() Listeners In AngularJS
- Learning About Test-Driven Development (TDD) Using Tiny Test
May 2013
- Referencing ColdFusion Query Columns In A Loop Using Both Array And Dot Notation
- The 6th Annual Regular Expression Day (And Prizes) - June 1st, 2013
- My Approach To Building AngularJS Directives That Bind To JavaScript Events
- Strange Interaction Between DeserializeJson(), ArrayContains(), And Database Values In ColdFusion
- Using A Dynamic Column Name With ValueList() In ColdFusion
- The UX Of Prototyping: Low-Fidelity Is The New High-Fidelity
- HashKeyCopier - An AngularJS Utility Class For Merging Cached And Live Data
- Delegating Nested Directive Behavior To Parent Directive In AngularJS
April 2013
- What If All User Interface (UI) Data Came In Reports?
- Tiny Test - An Exploration Of Unit Testing In ColdFusion
- Forced Repaints In Directive Can Cause Accidental Scrolling In AngularJS
- Looking At Prototypal Inheritance To Determine Data Types In JavaScript
- Stateless Service Singletons vs. Stateful Service Entities
- ColdFusion Implicit Getter Has Incorrect Type For Being Called As A Function
March 2013
- The Clean Code Video Series By Robert C. Martin, aka Uncle Bob
- CFFile Upload - The Filename, Directory Name, Or Volume Label Syntax Is Incorrect
- Understanding CSS Transitions And Class Timing (Revisited)
- Understanding CSS Transitions And Class Timing
- Matthew McCullough And Tim Berglund On Mastering Git - O'Reilly Video Series
- Removing Inline Opacity Filters After Fade-In / Fade-Out Transitions In IE8
- Reading Images With Fallback Approaches In ColdFusion
- Accessing $scope On The DOM Using AngularJS
February 2013
- Grouping Nested ngRepeat Lists In AngularJS
- POIUtility.cfc Now Hosted On GitHub
- Exploring Sample Software Application Layers And Responsibilities
- Using AtomicInteger To Create Uniquely Named CFThreads In ColdFusion
- Mixing Static And Dynamic Data In An AngularJS Select Menu
- Adding An ngRepeat List Delimiter In AngularJS
- Using ngController With ngRepeat In AngularJS
- Directive Link, $observe, And $watch Functions Execute Inside An AngularJS Context
- Using jQuery Event Delegation In AngularJS
- Exploring Directive Controllers, Compiling, Linking, And Priority In AngularJS
- Using Controllers In Directives In AngularJS
January 2013
- Using CSS Pseudo Elements :before And :after
- Exploring Directives, $scope, DOM Rendering, And Timing In AngularJS
- Rendering DOM Elements With ngRepeat In AngularJS
- Clearing Inline CSS Properties With jQuery
- Nested Views, Routing, And Deep Linking With AngularJS
- Creating A Custom Show / Hide Directive In AngularJS
- My Experience With AngularJS - The Super-heroic JavaScript MVW Framework
December 2012
- Command-Query-Responsibility-Segregation (CQRS) Makes Domain Models Practical
- Software Application Layers And Responsibilities
- What The Heck Is Business Logic Anyway?
October 2012
- Are HTML FORM Tags Required To Display Form Input Controls?
- HTTP Status Codes For Invalid Data: 400 vs. 422
- Using RESTful Controllers In An AngularJS Resource
- Applying A Cached Response To An AngularJS Resource
- Resolving An AngularJS Deferred Object Twice With DeferredWithUpdate.js
- Inlining AngularJS Templates Using ColdFusion
- Using JavaScript to Submit UTC Dates To The ColdFusion Server
- Change In ColdFusion Date::getTime() Method In ColdFusion 10
September 2012
- Using jQuery Deferred.notify() To Provide Locally Cached Data
- Detecting Spam In User-Submitted Content With SpamAnalyzer.cfc
- Decorating Scope Methods In The AngularJS Prototype Chain
- Setting Prototype Properties Using Inherited Scope Methods In AngularJS
- Exposing A Mouse Service For Click Events In AngularJS
- Capturing Document-Click Events With AngularJS
- Creating AngularJS Controllers With Instance Methods
- Mapping AngularJS Routes Onto URL Parameters And Client-Side Events
- Mapping RESTful Resource URIs Onto URL Parameters And Server-Side Events
- Win A Free Copy Of The Regular Expression Cookbook 2nd Edition
August 2012
- Using Plupload For Drag & Drop File Uploads In ColdFusion
- ColdFusion / JavaScript Genius? Join Me, And My Growing Team At InVisionApp.com!
- Converting Between String And Binary Values In ColdFusion
- Converting Data Between String, Binary, Hex, And Base64 Format In ColdFusion
- Pusher.cfc - A ColdFusion Wrapper For Pusher.com v1.12 REST API
- Crypto.cfc For Hmac-SHA1, Hmac-Sha256, and Hmac-MD5 Code Generation In ColdFusion
- Using Underscore.js Templates To Render HTML Partials
- Hex-Encoding A Binary Value / Byte Array In ColdFusion
- Syncing %{REQUEST_URI} Behaviors In Apache mod_rewrite And Helicon Ape mod_rewrite
- Chrome Dev Tools "Live Update" In The JavaScript Console Is Confusing
- JavaScript isNaN() Coerces Values When Testing For Numbers
- Mapping CSS Sprite Image Coordinates With ColdFusion
- Using The Quality Attribute With The CFImage WriteToBrowser Action
- Compiling / Optimizing A Subset Of A RequireJS Application
July 2012
- Creating A Lazy Loading Utility Module For RequireJS
- Lazy Loading RequireJS Modules When They Are First Requested
- Setting ETag Headers Regardless Of File Content In ColdFusion
- Handling Forbidden RESTful Requests: 401 vs. 403 vs. 404
- Getting The MetaData For A File Upload In ColdFusion
- Calling CFFile-Upload Twice On The Same File For Security Purposes
- Relative File Paths Work In A ColdFusion File System
- Quiet: The Power Of Introverts In A World That Can't Stop Talking By Susan Cain
- How Do You Populate Shared Views In A Complex Layout Using MVC?
- Writing My First Unit Tests With MXUnit And ColdFusion
- Writing My First Unit Tests With Jasmine And RequireJS
- Domain Models Expose Behavior, Not State
June 2012
- Clean Code: A Handbook Of Agile Software Craftsmanship By Robert C. Martin
- Tracing Event Binding And Event Triggering In jQuery
- Detecting (And Canceling) Key-Combo Events With jQuery
- Getting GitHub's v3 API To Work With oAuth
- Converting An Image Into Selectable Text Using ColdFusion
- Small Mistake When Simultaneously Binding Multiple Events With jQuery
- Application Services vs. Infrastructure Services vs. Domain Services
- More Thinking About Model-View-Controller (MVC) And Application Architecture
- The 5th Annual Regular Expression Day (And Prizes) - June 1st, 2012
May 2012
- Thinking About Data Gateways, Collections, And Raising Exceptions
- Experimenting With RESTful Error Response Codes And CFThrow's ErrorCode Attribute
- Programming JavaScript Applications (Early Release) By Eric Elliott
- A Better Understanding Of MVC (Model-View-Controller) Thanks To Steven Neiland
- Movies As A Religious Experience
- Creating Service Objects And Value Objects In A Dependency Injection (DI) Framework
- Good APIs Are Transparent In Their Expectations And Dependencies
- Object Calisthenics In JavaScript - My First Attempt
- Object Calisthenics In JavaScript - An Introduction
- Using ImagePunch() And ImageIntersect() With ColdFusion
- Best Of ColdFusion 10 Contest Entry - HTML Email Utility
April 2012
- Maintainable JavaScript By Nicholas C. Zakas
- Overcoming Asynchronous Anxiety By Testing JavaScript's Event Loop
- Mouse vs. Keyboard - Determining Click Initiator Using A jQuery Custom Event
- JavaScript Method Context With Circular Invocation In Conjunction With Call() Or Apply()
- ColdFusion 10 - Looping Over Queries Using A For-In Loop In CFScript
- ColdFusion 10 - Don't Use Dynamic Query Values In CFLoop
- Calculating CSS Selector Specificity Using ColdFusion
- ColdFusion 10 - Looping Over Function Arguments
- Using A Sandbox To Decouple ColdFusion Components In A Modular Application Architecture
- ColdFusion 10 - Selectively Exposing ColdFusion Component Behaviors - Part II
- ColdFusion 10 - Selectively Exposing ColdFusion Component Behaviors With Closures
- ColdFusion 10 - ColdFusion Query Of Queries vs. Functional Programming
- ColdFusion 10 - Using The Group Attribute With CFLoop To Group Query Rows
- Parsing, Traversing, And Mutating HTML With ColdFusion And jSoup
- Hashing Byte Arrays (Binary Data) With ColdFusion Before ColdFusion 10
March 2012
- ColdFusion 10 - Hashing Binary Data And Byte Arrays
- ColdFusion 10 - reEscape() vs. Java Pattern's Quote() Method
- ColdFusion 10 - Script vs. Tags And My Coding Methodology
- ColdFusion 10 - Creating A Simple Expression Evaluator
- ColdFusion 10 - Native WebSocket Filtering And Channel Listeners Are Mutually Exclusive
- ColdFusion 10 - Using WebSockets To Push A Message To A Target User
- ColdFusion 10 - Cross-Linking Standard Session Management To WebSocket Session Management
- ColdFusion 10 - WebSocket Authentication And The onWSAuthenticate() Event Handler
- ColdFusion 10 - Control Flow And Scopes During A WebSocket Request
- ColdFusion 10 - Creating A ColdFusion WebSocket AMD Module For Use With RequireJS
- ColdFusion 10 - Accessing The Call Stack With CallStackGet()
- ColdFusion 10 - An Augmented Virtual File System (VFS)
- ColdFusion 10 - Invoking ColdFusion Closures From Within A Java Context, Part II
- Node For Front-End Developers By Garann Means
- ColdFusion 10 - Invoking ColdFusion Closures From Within A Java Context
February 2012
- ColdFusion 10 - Parsing Dirty HTML Into Valid XML Documents
- ColdFusion 10 - XmlSearch() And XmlTransform() Now Support XPath 2.0
- ColdFusion 10 Beta - Generating Hash-Based Message Authentication Codes With Hmac()
- Hostek.com Offering Free ColdFusion 10 Beta Hosting
- ColdFusion 10 Beta - Miscellaneous Parsing Bugs And Oddities
- Join Me At InVision - We're Looking For Another ColdFusion / JavaScript Developer
- ColdFusion 10 Beta - Closures, Function Expressions, And Functional Programming
- ColdFusion 10 Beta - Closures And Components And The THIS Scope
- ColdFusion 10 Beta - Closures And Function Expressions And Threads
- ColdFusion 10 Beta - Critical Bug In Compiling Function Expressions / Closures
- ColdFusion 10 Beta - Closures And Function Expressions
- ColdFusion 10 Beta, Apache Tomcat, And Symbolic Links On Mac OSX
- Building Executable Scripts For The Mac OSX Command Line With Node.js
- Using jQuery.whenSync() For Asynchronous Form Validation And Processing
- Cross-Origin Resource Sharing (CORS) AJAX Requests Between jQuery And Node.js
- jQuery.whenSync() Plugin For Chaining Asynchronous Callbacks Using Deferred Objects
- ColdFusion Supports HTTP Verbs PUT And DELETE (As Well As GET And POST)
- REST API Design Rulebook By Mark Masse
- Use A Return Statement When Invoking Callbacks, Especially In A Guard Statement
January 2012
- Using jQuery Deferred To Chain Validation Rules In An Asynchronous, Non-Blocking Environment
- How I Got Node.js Running On A Linux Micro Instance Using Amazon EC2
- Extending Classes In A Modular JavaScript Application Architecture Using RequireJS
- Managed Dependencies vs. Dependency Injection In RequireJS
- Creating A Keyboard-Shortcuts Module In A Modular JavaScript Application
- Handling Keyboard Shortcuts Within Modular JavaScript Application Architecture
- Using An IFrame To Override document.write() Inside A DOM (Document Object Model) Sandbox
- A Book Apart: Responsive Web Design By Ethan Marcotte
- Trying To Mimic LET Functionality In JavaScript Using Self-Executing Functions
- Experimenting With GitHub Gist-Based Code Samples For My Blog
- Loading GitHub Gists After The Page Content Has Loaded
- Using jQuery Deferred To Create Compound Objects From Multiple Asynchronous Data Sources
- Using The RequireJS Build / Optimizer To Concatenate Modularized CSS Files
- Building Executable Scripts For The Mac OSX Command Line
- Creating A Fixed-Length Queue In JavaScript Using Arrays
- Disabling Auto-Correct And Auto-Capitalize Features On iPhone Inputs
- What CSS Properties Are Supported When You Drop IE6 Support
- A Book Apart: Mobile First By Luke Wroblewski
December 2011
- Experimenting With A JavaScript Gateway To A Remote ColdFusion Persistence API
- How Client-Side Validation Is Changing The Shape Of Server-Side Validation
- Preventing Links In Standalone iPhone Applications From Opening In Mobile Safari
- InVision - Front-End JavaScript Developer Positions
- Creating A JavaScript Shim For Array Unshift() Method
- For Pay: I Need A Few Hours Consulting On Modular JavaScript Application Architecture
- Be Careful When Using The jQuery Proxy() Method Outside Of A jQuery Context
- EmailYak.cfc - A ColdFusion Wrapper For The Email Yak API
- Scalable And Modular Architecture For CSS (SMACSS) By Jon Snook
- Creating An Image Thumbnail Service Using Email Yak Attachments And ColdFusion
- Using Email Yak To Provide Bidirectional Email Communication In Your Web Applications
- A Book Apart: Designing For Emotion By Aarron Walter
- Extending JavaScript Arrays While Keeping Native Bracket-Notation Functionality
November 2011
- Invoking A Native JavaScript Constructor Using Call() Or Apply()
- XML Posts Without A UTF-8 Encoding May Lead To 400 Bad Request Errors
- Using jQuery's Pipe() Method To Chain Asynchronous Validation Requests
- My First Look At The RequireJS Build Optimizer For Node.js
- Using jQuery As A Named Module In RequireJS
- Accepting PCI-Compliant Payments Without A Merchant Account Using Stripe And ColdFusion
- Writing A RequireJS Plugin To Load Remote jQuery Templates
- Using java.util.Collections To Shuffle A ColdFusion Query Column Corrupts Column Values
- Keeping Modules Decoupled Using Signals And Mediators
- Global Events vs. Entity-Bound Events In JavaScript Application Architecture
- jQuery Appends Multiple Elements Using Efficient Document Fragments
- Using jQuery's $.map() Method To Convert Data Into Detached DOM Node Buffers
October 2011
- The Five Secrets You Must Discover Before You Die By John Izzo
- ColdFusion ORM: A Guide To Developing Applications Using ColdFusion ORM By John Whish
- Using the Text Plugin With RequireJS To Load Remote HTML Templates
- Using One Object Per Event Type With Publish And Subscribe (Pub/Sub)
- Using RequireJS For Asynchronous Script Loading And JavaScript Dependency Management
- jQuery Can Provide Queue-Based Promise Objects
- The School Of Practical Philosophy: Love - Week Five
- Getting Contact, Photos, And Social Media Information Using FullContact.com And An Email Address
- The School Of Practical Philosophy: Love - Week Four
- Creating A Private Scope By Extending The Public THIS Scope In JavaScript
- Appending An Array Of jQuery Objects To The DOM
- Decoding Morse Code With JavaScript
- The School Of Practical Philosophy: Love - Week Three
- Changing The Execution Context Of JavaScript Functions Using Call() And Apply()
- Changing The Execution Context Of Your Self-Executing Function Blocks In JavaScript
September 2011
- Use jQuery's SlideDown() With Fixed-Width Elements To Prevent Jumping
- The School Of Practical Philosophy: Love - Week Two
- Storing And Retrieving Global Dates And Times In The Database
- Converting Dates Across Time Zones Using ColdFusion And Java
- Working With Time Zones And Daylight Savings Time (DST) In ColdFusion And Java
- Using Google's Targeted Site Search Protocol To Search My Site
- The School Of Practical Philosophy: Love - Week One
- Who Controls The Data When Modules Don't Know The Whole Story
- Using jQuery's Pipe() Method To Change Deferred Resolution
- POST Streaming Multi-Part Form Data From ColdFusion Using Java And Formidable.js
- Replacing Text Nodes With jQuery
- Apparently ColdFusion Cannot Handle Chunked Multi-Part Form Data
- POST Streaming Upload Data From ColdFusion Using Java And Node.js
August 2011
- The Most Interesting Man Alive On ColdFusion
- A Billion Wicked Thoughts By Ogi Ogas And Sai Gaddam
- Finding And Plotting Room Requirements For Concurrent Event Sessions
- Win A Copy Of JavaScript Enlightenment By Cody Lindley
- Experimenting With A Stateful Class For Stateful User Interface (UI) Widgets
- Using Four-Sided Positioning In CSS (Cascading Style Sheets)
- Performance Of LEFT OUTER JOIN Insert vs. INNER JOIN Delete Statement
- Treating Complex User Interface (UI) Widgets Like Finite State Machines
- Treating User Interface (UI) Widgets Like Finite State Machines
- Parsing CSV Data With An Input Stream And A Finite State Machine
- Creating Repeated Sequences With The Modulus (MOD) Operator
- Jason Dean Tells Me To Use AES (Advanced Encryption Standard) Encryption
- Sometimes, I Feel Like A Man With No Identity
- Storing Your ColdFusion Scheduled Tasks In The Database
- Empty SRC And URL() Values Can Cause Duplicate Page Requests
- jQuery Plugin: triggerHandlers() - To Trigger Handlers On All Selected Elements
- How I Got Started In ColdFusion
July 2011
- Using State Change To Bind And Unbind Event Handlers vs. Handler Branching
- Understanding The Complex And Circular Relationships Between Objects In JavaScript
- JavaScript Enlightenment By Cody Lindley
- Using The LAB.js Script Loader With jQuery's DOM-Ready Event
- Trying Out LAB.js For Asynchronous JavaScript (Script) Loading
- Some Thoughts On Handling 401 Unauthorized Errors With jQuery
- Using MySQL's TO_DAYS() Function To Group Same-Day Events
- Trying Face.com's Mood And Lips Facial Detection Image API
- An Experiment In Using An Embedded Apache Derby Database To Power ColdFusion Query-Of-Queries
- Performing Query-Of-Queries Using ColdFusion 9's Query.cfc Component
- The Sexiest Thing A Woman Can Say In An Elevator
June 2011
- jQuery Plugin insertAt() For Comparator-Based Insertion
- CFAbort And OnRequestEnd() Behavior In ColdFusion 8 And ColdFusion 9
- Creating A Vector-Based Content Reveal With Paper.js
- Flourish: A Visionary New Understanding Of Happiness And Well-Being By Martin Seligman
- Negotiation: Discovered File(s) Matching Request: None Could Be Negotiated
- Adding Secure Publishing To The PubNub Realtime Messaging Workflow
- ColdFusion Queries Do Not Throw Out-Of-Bounds Errors
- An Experiment In Passing Variables Into A CFThread Tag By Reference
- PubNub.cfc - A ColdFusion Wrapper For The PubNub Realtime Messaging Platform
- Sending Client-To-Client Realtime Messages With The PubNub JavaScript Library
- Using jQuery's Deferred Functionality For Asynchronous Configuration
- ColdFusion Query-Of-Queries vs. The Group Attribute In CFOutput
- My First Year As A Mac User On The Apple MacBook Pro
- Posting JSON Data To The ColdFusion Server Using jQuery
- Ask Ben: When To Provide Default Values In ColdFusion
- Generating ePub Electronic Books With ColdFusion
- JavaScript Delete() Only Affects The Referenced Object Regardless Of Prototype Chain
- Extending Window To Create A Dynamic Scope Chain For Method Execution In JavaScript
May 2011
- Awesome Tips For Using Firebug To Navigate And Augment The DOM
- JavaScript Web Applications By Alex MacCaw
- Using JavaScript's With Keyword To Create A Dynamic Scope Chain For Method Execution
- Ionic ISAPI URL Rewrite Decodes "%26" Into Ampersand (&) By Default
- Special $ References In JavaScript's String.replace() Method
- The 4th Annual Regular Expression Day (And Prizes) - June 1st, 2011
- Javascript: The Good Parts By Douglas Crockford
- Branching Logic vs. Guard Logic When It Comes To Function Control Flow
- Exploring The ColdFusion Component (CFC) Extension Lifecycle
- At cf.Objective() 2012 Jason Dean Is Going Down!
- One Man's Search For Love - My cf.Objective() 2011 Lightning Talk
- My First Look At The XML ENTITY Tag In ColdFusion XML Documents
- Using The XPath String() Function In XmlSearch() To Aggregate Node Text In ColdFusion
- A Big Hole In My Understanding Of ColdFusion Scheduled Tasks
- Aggregating XML Node Text In A ColdFusion XML Document
- Extending EventEmitter To Create An Evented Cache In Node.js
- Programmatically Completing A List Of Movie Showtimes In ColdFusion - Simplified
- Encrypting Node.js Session Cookies In A ColdFusion.js Application
- Porting The ColdFusion Application.cfc Framework Component Over To Node.js
April 2011
- Programmatically Completing A List Of Movie Showtimes In ColdFusion
- Extending EventEmitter In Order To Create A Response Proxy In Node.js
- Node.js Training And Node.js Hosting With Nodejitsu
- Atlas Shrugged, Part I - The Movie
- Tales Of Revolution And A Sense Of Community
- Using Positional URL Arguments When Invoking A ColdFusion Web Service
- Redirecting Static Requests To Amazon S3 Using IIS Mod-Rewrite Or Apache Mod-Rewrite
- Realtime Messaging And Synchronization With NowJS And Node.js
- Streaming Secure Files Efficiently With ColdFusion And MOD XSendFile
- Where Does Node.js And Require() Look For Modules?
- Call For Lightning Talk Speakers At cf.Objective() 2011
- Returning NULL Values In JSON Using SerializeJSON() And ColdFusion
- Man Down: Proof Beyond A Reasonable Doubt That Women Are Better At Everything By Dan Abrams
- Selecting My SOTR Caffeinated Raffle Winner Using ColdFusion And Face.com's Facial Detection API
- Maintaining Key-Case During JSON Serialization In ColdFusion
March 2011
- Adding A Splice() Method To The Javascript String Prototype
- Using Slice(), Substring(), And Substr() In Javascript
- Keeping The Faith And Thoughts On Commitment
- What If ColdFusion Recognized More Truthy / Falsey Values
- My UNCIVILIZED Brand Cherry Wood iPhone Back From JackBacks
- Arguments.length In Javascript Depends On Invocation Arguments, Not Function Signatures
- I Finally Understand The Finally Part Of A Try/Catch Control Statement
- The School Of Practical Philosophy: Philosophy Works - Week Ten
- Eloquent Javascript: A Modern Introduction To Programming By Marijn Haverbeke
- Understanding Transactions And Database Rollbacks That Involve 3rd Party API Integration
- I Find The Conflict Of Truth And Need To Be Deeply Romantic
- The Anti-Spam Technique Used On My ColdFusion Job Board
- Playing An MP3 Over The Phone With ColdFusion And Twilio
- Phone-Based Realtime Authentication With ColdFusion, Twilio, And Pusher
- Understanding The Basic Authentication Request-Response Life Cycle
- The School Of Practical Philosophy: Philosophy Works - Week Nine
- ColdFusion Application-Specific Mappings Work With CFInclude
- Video Presentation: Regular Expressions, Extraordinary Power
- Using "//" And ".//" Expressions In XPath XML Search Directives In ColdFusion
- Using Encrypted JSON Data To Hide Cookie Implementation In ColdFusion
- The School Of Practical Philosophy: Philosophy Works - Week Eight
- The School Of Practical Philosophy: Philosophy Works - Week Seven
February 2011
- Building A Branded Jing Image Viewer Using ColdFusion
- The Science Of Kissing: What Our Lips Are Telling Us By Sheril Kirshenbaum
- The School Of Practical Philosophy: Philosophy Works - Week Six
- Circumventing Private Variables In Javascript Using Method Reassignment
- Using $.ajaxPrefilter() To Configure AJAX Requests In jQuery 1.5
- Using jQuery.ajaxSetup() To Accumulate Global Data Parameters For AJAX Requests
- Back To The Fusion - Part X
- Experimenting With Sub() And Deferred Objects In jQuery 1.5
- The School Of Practical Philosophy: Philosophy Works - Week Five
- Smashing jQuery By Jake Rutter
- Ode To ColdFusion On Valentine's Day
- The Power Of Closures - Deferred Object Bindings In jQuery 1.5
- Using Deferred Objects As An Asynchronous Script Loader In jQuery 1.5
- Using Deferred Objects In jQuery 1.5 To Normalize API Responses
- Selecting The Seven Languages In Seven Weeks Winners
- Epicenter Consulting Is Looking For ColdFusion Developers Again
- Exploring Race Conditions In Javascript With SetInterval(), SetTimeout(), And AJAX
- jQuery Does Not Post Undefined Values In AJAX Requests
- The School Of Practical Philosophy: Philosophy Works - Week Four
- Creating Fuzzy Latitude And Longitude Values With A Given Amount Of Freedom
- Function Hoisting In ColdFusion
- Extending The Application.cfc ColdFusion Framework Component With A Relative-Path Proxy
- Extending The Application.cfc ColdFusion Framework Component With A Relative Path
- The School Of Practical Philosophy: Philosophy Works - Week Three
January 2011
- Troy Valberg, Mario Valero, And Victoria Viola Rock The IPA State Powerlifting Championships
- Seven Languages In Seven Weeks By Bruce Tate - What An Adventure
- Seven Languages In Seven Weeks: Haskell - Day 3
- Seven Languages In Seven Weeks: Haskell - Day 2
- Seven Languages In Seven Weeks: Haskell - Day 1
- The School Of Practical Philosophy: Philosophy Works - Week Two
- I Just Got Badass(er) - UNCIVILIZED Brand Clothing By Mario Valero
- Sunday Hackathon: ThingsIGive.com - A Digital Journal Of Your Awesome Self
- Seven Languages In Seven Weeks: Clojure - Day 3
- Seven Languages In Seven Weeks: Clojure - Day 2
- Seven Languages In Seven Weeks: Clojure - Day 1
- The School Of Practical Philosophy: Philosophy Works - Week One
- PatternMatcher.cfc - A ColdFusion Component Wrapper For The Java Regular Expression Engine
- A Face That Calms Me
- An Exploration In Separating Hash-Change Events From Programmatic Hash Updates
- Turning Modes On And Off Within A Regular Expression
- Using ColdFusion Custom Tags To Help Explore Complex Regular Expressions
- ColdFusion Custom Tags Cannot Act As ColdFusion Component Mixins
- Printing To The Primary Output Stream From Within A ColdFusion CFThread Tag
- Thoughts And Goals For 2011
December 2010
- Project HUGE: The Last Workout Of 2010 Starts With Personal Best
- Exploring Array FoldLeft() Concepts In ColdFusion
- ColdFusion 9's IsNull() Works On Non-Struct Objects
- Using CFML Files To Pre-Process CFM Files In ColdFusion
- Happy Holidays From Ben Nadel And BenNadel.com
- Creating A CFThread-Based Process In ColdFusion In Order To Learn About Concurrency
- Seven Languages In Seven Weeks: Erlang - Day 3
- Seven Languages In Seven Weeks: Erlang - Day 2
- Seven Languages In Seven Weeks: Erlang - Day 1
- Troy Valberg And The Powerlifters Of Equinox
- Seven Languages In Seven Weeks: Scala - Day 3
- Seven Languages In Seven Weeks: Scala - Day 2
- Creating ColdFusion Proxy Components With ColdFusion 9's GetFunctionCalledName()
- Seven Languages In Seven Weeks: Scala - Day 1
- Learning Event-Driven Programming Best Practices From Web Browsers
- Seven Languages In Seven Weeks: Prolog - Day 3
- Creating A Struct From A ColdFusion Array Using The TreeMap And The LinkedHashMap
- ColdFusion 9's ObjectSave() And ObjectLoad() Life Cycle Removes Object Meta Data
- Seven Languages In Seven Weeks: Prolog - Day 2
- Seven Languages In Seven Weeks: Prolog - Day 1
- In The Spirit Of B. Virdot - A Small Gift For A Few Families In Need
November 2010
- Seven Languages In Seven Weeks: Io - Day 2
- Creating Divergent Javascript Class Methods With Self-Executing Functions
- Seven Languages In Seven Weeks: Ruby - Day 2
- Seven Languages In Seven Weeks: Ruby - Day 1
- Seven Languages In Seven Weeks: A Pragmatic Guide To Learning Programming Languages By Bruce Tate
- Appending One Array To Another With ArrayAppendAll() In ColdFusion
- RESplit() - Splitting Strings With Regular Expressions In ColdFusion
- Java For ColdFusion Developers By Eben Hewitt
- XDOM.cfc - A ColdFusion Component For Easier XML Traversal, Manipulation, And Merging
- Using An ArgumentCollection URL Parameter With ColdFusion Web Services
- Creating An ArgumentArray Collection In ColdFusion 9 Using TreeMap
- Changes In CFLocation / OnRequestEnd Behavior In ColdFusion 9's Application.cfc
- I Have More Money Than Time
- Javascript Patterns By Stoyan Stefanov
October 2010
- Platform vs. Template: Branching Logic, Application Architecture, And Request Optimization
- Ask Ben: Converting A Parent-Child Data Table Into A Nested XML Document
- Using ColdFusion's PrecisionEvaluate() Function To Perform Big Integer Math
- ColdFusion Ordered ArgumentCollection Behavior Depends On ColdFusion Version And Invocation Context
- Implementing Javascript Inheritance And Synthesized Accessors With Annotation
- Experimenting With Multiple Class Inheritance In Javascript
- Simple Publication And Subscription Functionality (Pub/Sub) With jQuery
- The Integer Division Operator In ColdFusion
- The User Experience (UX) Of Comments vs. Conversation
- Using HTML5 Offline Application Cache Events In Javascript
- HTML5 Up And Running By Mark Pilgrim
- Reading In File Data Using ColdFusion 8's New File Functions
- jQuery Template Markup Langauge (JTML) vs. jQuery Templates
- Using SetTimeout() To Delay The Closing Of A Related UI Element Based On User Interactions
- The Social Network Starring Jesse Eisenberg, Andrew Garfield, And Justin Timberlake
- Geocoding A User's Location Using Javascript's GeoLocation API
September 2010
- Saturday Hackathon: Integrating Twitter, oAuth, Twilio, And ColdFusion
- Geocoding IP Addresses For Free Using IPInfoDB And ColdFusion
- Communicating With The Client Whilst Inside A ColdFusion Custom Tag
- Using The Regular Expression Boundary Match \G To Find The End Of The Previous Match
- Proof Of Concept: Adding Pusher-Powered Update Support To jQuery AJAX
- Saturday Hackathon: Building A Photo Upload Site For Twitter
- The Power Of A Positive No: How To Say No And Still Get to Yes By William Ury
- Extending The Application.cfc ColdFusion Framework Component With CFInclude
- A Book Apart: HTML5 For Web Designers By Jeremy Keith
- Exploring Javascript's parseInt() And parseFloat() Functions
- Reading In File Data One Line At A Time Using ColdFusion's CFLoop Tag Or Java's LineNumberReader
- An Example Of Overloaded Functions With Very Different Sub-Function Implementations
- Using Self-Executing Function Arguments To Override Core jQuery Methods
- Overloading Javascript Functions Using A Sub-Function Approach
- Using jQuery's animate() Method To Power Easing-Based Iteration
- What ColdFusion Teaches Us About The Ultimate "Roll Your Own" Solution
- Creating Base64-Encoded Data URLs For Images In ColdFusion
August 2010
- Using jQuery's Proxy() Method In Event Binding And Unbinding
- Reflections On My Client-Side MVC View-Rendering Hackathon
- Using jQuery To Bind And Trigger Event Handlers On Detached DOM Nodes
- Saturday Hackathon: Client-Side MVC - The Wrong Way
- jQuery Selectors - The Firebug Plugin Inserts A Hidden DIV Element
- AJAX Requests Get And Set Cookies Like Any Other HTTP Request
- Using THIS.jarPaths To Create An Application-Specific URL Class Loader In ColdFusion
- Using Named Callback Functions In Javascript Methods
- Using Named Functions Within Self-Executing Function Blocks In Javascript
- The Girl Who Broke My Heart, And Made Me A Better Person
- Project HUGE: Deadlifting With WSF's Griptech Rubberized Lifting Straps
- Whom Not To Marry: Time-Tested Advice From A Higher Authority By Pat Connor
- What If ColdFusion's CFThread Tag Had An Interval Attribute?
- Bidirectional Data Exchange With ColdFusion's CFThread Tag
- Strange ColdFusion JRUN Stack Overflow Error
- ToJava() - A ColdFusion User Defined Function For Complex Java Casting
- From Windows To Mac - A Roller-Coaster Of Emotions
- Long Polling Experiment With jQuery And ColdFusion
- Creating A Simple ColdFusion Cache With Java Soft-References
July 2010
- Experimenting With CSS-Based Animations And Transitions
- Authenticating Twilio Requests Using Basic Authentication, SSL, And ColdFusion
- Bodybuilder Americanus By Samuel Fussell
- Authenticating Twilio Request Signatures Using ColdFusion And HMAC-SHA1 Hashing
- Pusher.cfc - ColdFusion Component For Realtime Notification With HTML5 WebSockets
- Post-Instantiation CFC Method References Don't Show Up In CFDump In ColdFusion 9
- The Five Love Languages: How To Express Heartfelt Commitment To Your Mate By Gary Chapman
- Cell Phones, SMS, Twilio, Pusher, ColdFusion, And Google Maps == Fun
- Sending SMS Text Messages From Twilio Using ColdFusion
- Creating A Custom Image Upload Service For Tweetie (Twitter For iPhone) Using ColdFusion
- Sending And Receiving SMS Text Messages With Twilio And ColdFusion
- For Better: The Science Of A Good Marriage By Tara Parker-Pope
- OnApplicationEnd() And OnSessionEnd() Errors Don't Get Logged In ColdFusion
- Holding Hands, The Moment, And The Relationship
- ColdFusion 9's NEW Operator Can Use Dynamic Class Paths
- For Better: The Love Scale Quiz Designed By Dr. Hatkoff
- CreateObject() In ColdFusion 9 No Longer Requires The Type Parameter
June 2010
- Very Simple Pusher And ColdFusion Powered Chat
- Pushing Base64-Encoded Images Over HTML5 WebSockets With Pusher And ColdFusion
- Using ColdFusion With Pusher - A Notification Service Powered By HTML5 WebSockets
- The ColdFusion Application Server Tagline Contest ($50 Amazon Gift Card)
- JRUN Servlet Error: coldfusion.runtime.CfJspPage.bindImportPath
- Project HUGE: Half Way Through 2010
- Detecting iPhone's App Mode (Full Screen Mode) For Web Applications
- The Content Of This Document Process Takes More Than 60000 Milliseconds To Process
- My Company, Epicenter Consulting, Is Looking For ColdFusion Developers
- Pages Cached By The Cache Manifest Do Not Need To Reference The Cache Manifest
- Non-Cached Pages Cannot Access Resources Cached In The Cache Manifest
- Using The Cache Manifest With iPhone's App Mode For "Native" Web Applications
- Experimenting With HTML5's Cache Manifest For Offline Web Applications
- Generic Invocation Wrapper For Core ColdFusion Functions
- The Desire To Change Those We Care About
- Using CFContent's Variable Attribute Stops All Further Processing
- My Sleep Experiment And Schedule Shift
- Typing High Ascii Values On A Standard Keyboard
- JRUN Throwing 404 Errors For PATH_INFO In Multiserver ColdFusion Installation
- Applying Twitter's API "Best Practices" In A ColdFusion Application
- Mastering The ColdFusion Application Framework
May 2010
- Using .NET (dotnet) Regular Expressions In ColdFusion
- Getting Ready For Scotch On The Rocks (SOTR) 2010
- Using The WITH Keyword With Javascript's Function() Constructor
- The Arbor Day Web Development Team Planted Me Some Trees
- Exploring Javascript's eval() Capabilities And Closure Scoping
- When To Use \N And $N As Regular Expression Back-References
- 3rd Annual (Inter)?National Regular Expression Day (And Prizes) - June 1st, 2010
- The Tick On ColdFusion
- ColdFusion Session Timeouts Cannot Be Less Than One Second
- Javascript's hasOwnProperty() Method Is More Consistent Than The IN Operator
- Javascript's IN Operator Does Not Work With Strings
- Javascript Multiline Regular Expressions Don't Include Carriage Returns In IE
- Different Browsers Use Different Non-Matching Captured RegEx Pattern Values
- How Javascript Loading And Blocking Works By Default
- ColdFusion Application.cfc Properties Get Normalized In Interesting Ways
- Setting ColdFusion Cookies With CFCookie vs. Cookie Scope
April 2010
- People-Centric Software Design - cf.Objective() 2010 Pecha Kucha BOF
- Javascript Function() Constructor Does Not Create A Closure
- The jQuery Template Markup Language (JTML) Project
- The Free T-Shirts Of cf.Objective() 2010
- jQuery Event Bindings On Javascript Objects With A Length Property
- FLEX On jQuery: Array Collections For jQuery Data Binding
- Using GMail's Plus-Style Addressing To Track Bounce Back Email Meta Data
- Using Postmark To Track User Data Through Email Bounce Backs
- Sending Mail And Monitoring Bounce Backs With ColdFusion And Postmark
- GMail Seems To Ignore The Return-Path Header Defined By The CFMail FailTo Attribute
- Way Of The Warrior: The Poison Of Sarcasm
- Way Of The Warrior: What Is A Warrior?
- Monitoring ColdFusion Thread Activity And Status After Redirect
- Accessing XML Nodes Having Names That Contain Dashes In ColdFusion
- Monitoring The ColdFusion Mail Server With GMail And A Scheduled Task
- You Cannot Bind The Submit Event To Objects Using jQuery
- SRCHR - A Client-Only YQL-Powered Search Engine With jQuery
- Getting The Image SRC Of ColdFusion's CFImage WriteToBrowser Temporary Image With CFXML
- Let's Make A Deal - The Monty Hall Problem In ColdFusion
March 2010
- Running Asynchronous CFThread Tags In Series Using ColdFusion
- Using jQuery To Pass Arrays To Remote ColdFusion Components
- Ask Ben: Processing Files With CFThread In ColdFusion
- Screen-Scraping Movie Showtimes Off Google.com With ColdFusion
- Using XPath To Select A Node That Does Not Contain Another Node In ColdFusion
- Ask Ben: Blocking WSDL Access In A ColdFusion Application
- Managing ColdFusion Sessions In A ColdFusion Builder Extension
- Your jQuery Selector Context Can Be A jQuery Object
- FLEX On jQuery: Decouple Components With Event Listeners
- Using Base64 Canvas Data In jQuery To Create ColdFusion Images
- Translating Global jQuery Event Coordinates To A Local Context
- The Boondock Saints: Back In The Theaters March 11th
- jQuery Mouse Events: PageX/Y vs. ClientX/Y
- URL Rewriting And ColdFusion's WriteToBrowser Image Functionality (CFFileServlet)
- Drawing On The iPhone Canvas With jQuery And ColdFusion
- FLEX On jQuery: The Relative Power Of Link Elements
- Experimenting With jQuery's Queue() And Dequeue() Methods
- Using A State Machine To Parse Tokenized Data In ColdFusion
February 2010
- Be Careful When Including Images In jQuery Auto-Suggest
- Ask Ben: Replacing A String That Is Not Inside Of Another String
- Using Appropriate Status Codes With Each API Response
- Executing A Recursive CFThread In ColdFusion 9
- ColdFusion CFThread Tag Body Executes As A Function Call
- Project HUGE: Hit A New Years Resolution - Deadlifts At 405lbs
- Using jQuery's Animate() Step Callback Function To Create Custom Animations
- ColdFusion's Application.cfc Session Events Are Not Session-Specific
- Traversal vs. Collection Filtering In jQuery
- Posting XML SOAP Requests With jQuery
- jQuery forEach() Experiment For Branch-Wise Implicit Iteration
- Selecting The Closest Parent On Multiple Nodes With The jQuery Plugin ClosestParents()
- jQuery 1.4 Reference Guide By Karl Swedberg And Jonathan Chaffer
- BenNadel.com Gets Its First Valentine!
- My DZone Interview With Dan Wilson: Creating Software Simulations Using Interface-Driven Architecture
- Explicitly Ending A ColdFusion Session
- Clearing The Session Scope Does Not End Your ColdFusion Session
- Making Sure Your ColdFusion Applications Are Uniquely Named
- Making Sure Scheduled Tasks Don't Overlap In ColdFusion
- What Happens When A ColdFusion CFLock Timeout Is Exceeded Without Error?
- Programmatically Uploading Images To JING At ScreenCast.com Using ColdFusion
- Wrapping The Window Object In A jQuery Wrapper
- Creating Flickr-Style Photo Tagging With jQuery
January 2010
- Is Simulating User-Input Events With jQuery Ever A Good Idea?
- Project HUGE: Deadlifts At 385lbs And Natural Hamstring Raises
- Converting An IP Address To An Integer Using MySQL (Thanks Julian Halliwell)
- Putting Your Geolocation iPhone Photos On A Google Map Using ColdFusion And jQuery
- Delaying ColdFusion Session Persistence Until User Logs In
- Converting IP Addresses To And From Integer Values With ColdFusion
- Script Tags, jQuery, And Html(), Text() And Contents()
- ColdFusion 9 CFScript Comments Handle Name-Spaces... And Just About Anything
- Using jQuery's SlideUp() and SlideDown() Methods With Bottom-Positioned Elements
- Java Matcher's QuoteReplacement() And Java 6 vs. Java 1.4.2
- Project HUGE: Trying Barbell Front Box Squats For The First Time
- Learning jQuery 1.4: Remove() vs. Detach()
- Creating UI Elements With Low-Coupling And Conditional Event Handling
- Project HUGE: Barbell Deadlifts - 365x5 With A Concentration On Form
- jQuery Custom Selector Execution Exploration
- Project HUGE: Barbell Back Squats - Shaky Form, But Getting Stronger
- jQuery 1.4 Released - Hella Sweeeet!
- Invoking A ColdFusion Function With A Closure-Like CALLER-Based Variable Binding
- Ben Nadel Will Make You Code - Thanks Dave Dugdale!
- ColdFusion 9 Script-Based Method Definitions Work Inside CFScript
- Creating A Sometimes-Fixed-Position Element With jQuery
- Making SOAP Web Service Requests With ColdFusion And CFHTTP
- Thoughts About Salaries And Raises As Motivated By Daniel Pink's Book, Drive
- Project HUGE: Waking The Beast And My First Video Of 2010
- Embedding Secret Messages In An Image Using ColdFusion
- jQuery Events: MouseOver / MouseOut vs. MouseEnter / MouseLeave
- Pixelating An Image With ColdFusion
- Creating A Bidirectional Infinite Scroll Page With jQuery And ColdFusion
- Java's AtomicInteger vs. ColdFusion Named-Locking For Incrementing Values
- Creating An Infinite Scroll Effect With jQuery And ColdFusion
- Thoughts And Goals For 2010
December 2009
- Ask Ben: Using jQuery To Act On A Click Event Based On The Target Element
- Do Complex User Interface Modules Necessitate Complex CSS?
- Javascript Array Methods: Unshift(), Shift(), Push(), And Pop()
- Ask Ben: Using ColdFusion Components As Return Types, Argument Types, And Property Types
- Ask Ben: Showing Related Form Fields Based On A Given Selection
- Playing With Finite State Machines And ColdFusion Components
- CorMVC - My jQuery-Powered Model-View-Controller (MVC) Framework
- NYC + Snow + ColdFusion + jQuery = Winter Wonderland
- Sharing Event Handlers Across jQuery Event Bindings To A Single Element
- Building Custom jQuery Event Types: Hesitate Event
- Using Double Not-Operator (!!) For Boolean Type Casting
- The jQuery Cookbook: Solutions And Examples For jQuery Developers
- Odd CFLoop Condition Runtime Compilation Bug
- Using Javascript's Function() Constructor To Deserialize JSON Data
- Love Leadership: The New Way To Lead In A Fear-Based World By John Hope Bryant
- Using $Variable In jQuery Code Is Just Hungarian Notation
- Creating Globally Accessible User Defined Functions In ColdFusion (Safer Version)
- Creating Globally Accessible User Defined Functions In ColdFusion
- IsNull() vs. IsDefined() For ColdFusion 9 Scope Detection
- jQuery 1.4 Live() Form Submit Support
- Enable And Disable jQuery Event Handlers (Rather Than Bind And Unbind)
- ColdFusion Builder Extension: Regular Expression Find And Replace
- Calling ColdFusion Components And Methods From Groovy
- Using jQuery To Detect CSS-Based Table Display Capabilities
November 2009
- Running Javascript In ColdFusion With CFGroovy And Rhino
- Happy Thanksgiving From Ben Nadel
- StructCopy() Duplicates Argument-Collection Functionality Without Deep Copy In ColdFusion
- ColdFusion ArraySplice() Method As An Example Of A Dynamic Method Signature
- CFContent-Variable Response vs. Standard Output Response
- jQuery UI 1.7 By Dan Wellman
- What Request Data Does ColdFusion Builder Post To Extension Handlers?
- My First ColdFusion Builder Extension - Encrypting And Decrypting CFM / CFC Files
- Using CFParam To Define A Variable Number Of Arguments In ColdFusion (And What ColdFusion 9 Teaches Us)
- Track Document-Level Clicks With jQuery MouseDown Events
- Tracking Google AdSense Clicks With jQuery And ColdFusion
- jQuery Live() Method And Event Bubbling
- How To UN-Unformat Your Code (Like A Pro)
- How To Unformat Your Code (Like A Pro)
- Matching Multi-Line Regular Expression Patterns In MULTILINE Mode (?m)
- Tracking Request Volume Based On IP Addresses In ColdFusion
- IIS MOD-Rewrite: R6016 Not Enough Space For Thread Data
- Using IIS URL Rewriting And CGI.PATH_INFO With IIS MOD-Rewrite
- A Moment That Touched Me - The Fountainhead
- Using Regular Expressions In Javascript (A General Overview)
October 2009
- Building A Fixed-Position Bottom Menu Bar (ala FaceBook)
- Using PushStack() In jQuery Plugins To Create New Collections
- jQuery Powered Mine Sweeper Game
- My BFusion / BFLEX Keynote Address
- Using CSS Fixed Position Elements Across Browsers Without Javascript
- Using CSS Fixed Position Elements Across Browsers
- jQuery In Action By Bear Bibeault And Yehuda Katz
- jQuery Plugin: From - Filtering A Collection Based On Ancestors
- Building Single-Page Applications Using jQuery And ColdFusion With Ben Nadel (Video Presentation)
- Passing A Function To jQuery's Attr() Method For Implicit Iteration
- jQuery's Closest() Method Returns Only One Ancestor
- Viewing jQuery DOM Event Bindings With FireBug
- jQuery's is() Method Checks For Any Matching Elements
September 2009
- Thoroughly Document Your Use Of ColdFusion's CFHTMLHead Tag
- Default To The Numeric, Email, And URL Keyboards On The iPhone
- jQuery's Filter() Method Can Take A Callback Function For Advanced Filtering
- jQuery's Passes Itself As An Argument To The "Ready" Event Callback
- Ask Ben: Displaying A Blog Teaser (Showing The First N Words)
- Ask Ben: Parsing Nested Lists With A Single Delimiter In ColdFusion
- Ask Ben: Excluding Script Tag Content From The jQuery .text() Method
- Ask Ben: Creating ColdFusion Templates On The Fly
- Groovy Operator Overloading Does Not Work In The ColdFusion Context
- jQuery Enlightenment By Cody Lindley
- Instantiating Groovy Classes In The ColdFusion Context
- jQuery Plugin: Tracing Your Selector Paths
- String Data Type Gotcha When Using CFGroovy
- Maintaining ColdFusion Sessions Across SMS Text Message Requests Without Cookies
- Using Contextual SMS Short Code Messages With TextMarks And ColdFusion
- Using SMS Short Codes And TextMarks To Send Text Messages With ColdFusion
- Simon Free Launches "Win A CF Dude" Contest - Watch The Video
- How Much Should Our ColdFusion Applications Actually Know About ORM?
- Using IIS URL Rewriting And Application.cfc's OnMissingTemplate() Event Handler
- Ask Ben: Creating A PDF And Attaching It To An Email Using ColdFusion
- RewriteCond Directives Evaluated After RewriteRule Directives In URL Rewriting
- Understanding The IIS Mod-Rewrite Server Variables
- Understanding The IIS Mod-Rewrite Log File And Work Flow
- Exploring IIS Mod-Rewrite For Rewriting URLs In A ColdFusion Application
August 2009
- Ask Ben: Extracting And Resizing A ZIP Archive Full Of Images With Coldfusion
- ColdFusion's OnMissingTemplate() Event Handler Works With CFC Requests
- Ask Ben: Keeping Close Track Of Who Is Currently Online
- Ask Ben: Getting The Domain Name From The Referer URL
- Learning ColdFusion 9: Understand ORM Events (Thanks John Whish!)
- Learning ColdFusion 9: Trying To Understand ORM Event Handling
- Advanced ColdFusion Custom Tags With Ben Nadel (Video Presentation)
- Learning ColdFusion 9: ORM Inheritance Mapping
- Learning ColdFusion 9: EntityNew() vs. The NEW Operator / CreateObject()
- Accessing ColdFusion Application Settings
- Building A Simple ColdFusion Dependency Injection Framework
- Project HUGE: Optimum Nutrition Whey Protein - The Best Tasting, Best Mixing Protein Powder
- ColdFusion vs. XYZ - It Finally Got Physical
- Object Oriented CSS (OOCSS) And Being Generic With Your Base CSS Classes
- Learning ColdFusion 9: From SQL To ORM - A Conceptual Shift In Relationships
July 2009
- Learning ColdFusion 9: When Does An ORM-Enabled Object Get Persisted
- Win A FREE Ticket To CFUNITED 2009
- Learning ColdFusion 9: Refreshing And Rebuilding An ORM Application
- Understanding Application And Session Timeouts In ColdFusion
- Learning ColdFusion 9: Resetting Applications With ApplicationStop()
- Ask Ben: Enforcing An SSL (HTTPS) Connection Based On Request
- The Regular Expression Cookbook By Steven Levithan And Jan Goyvaerts
- Creating Readable SQL Statements In AIR (Adobe Integrated Runtime)
- Learning ColdFusion 9: CFScript Updates For Tag Operators
- Learning ColdFusion 9: A Bug With File-Based Object Caching
- GetMetaData() Is Shared By All Instances Of A Given Class In ColdFusion
- Working With Inconsistent XML Structures In ColdFusion
- Learning ColdFusion 9: Using OnCFCRequest() To Return JSONP (JSON With Padding) API Responses
- Free ColdFusion 9 Beta Hosting On Hostek.com
- Project HUGE: Huge In A Hurry - Get Big - Phase 3 / Week 3
- Ask Ben: Dynamic Web Root And Site URL Calculations In Application.cfc
- Learning ColdFusion 9: IsNull() And Working With NULL Values
- The Performance Cost Of Throwing Exceptions In ColdFusion
- Learning ColdFusion 9: Virtual File System vs. Actual File System
- Learning ColdFusion 9: The Virtual File System (RAM Disk)
- ColdFusion and OOP - Match Made in Heaven, or Long Road to Hell?
- Learning ColdFusion 9: Ternary Operator Works Around Implicit Array Bug
- Learning ColdFusion 9: The Ternary Operator
- Presenting Ideas vs. Teaching Techniques
- Ask Ben: CFImage And Dynamic Image Compression With File Size Limits
- Each: Unified Struct And Array Iteration In ColdFusion
- Object Oriented CSS (OOCSS) By Nicole Sullivan
- Nora Ephron vs. Meg Ryan: What Is That We Love?
- Manipulating Session Cookies In Application.cfc's Pseudo Constructor Triggers New Session Creation
- Project HUGE: Huge In A Hurry - Get Big - Phase 3 / Week 2
- Ask Ben: Building A jQuery And ColdFusion Rating System
- Project HUGE: Huge In A Hurry - Get Big - Phase 3 / Week 1
- Create A Running Average Without Storing Individual Values
- Adobe Announces That HomeSite Is Officially Dead
- ColdFusion 8's OnMissingTemplate() - So Close To Being Good
June 2009
- Ask Ben: Overriding Core jQuery Methods
- Ask Ben: Detecting When DOM Elements Have Been Removed With jQuery
- Thirty Years Of Pain: A History Of The World's Strongest Man DVD
- Ask Ben: Formatting A Date Span In ColdFusion
- Strong: The Movie - A Documentary About Joe DeFranco's Gym
- Caching ColdFusion Pages With Expires Header Value
- Ask Ben: Converting Javascript Variables Into ColdFusion Variables
- Voiding Click Events Implicitly With jQuery Plugin: voidClick()
- Scripts Tags Get Moved Only During Window DOM Node HTML Injection
- ColdFusion CreateTimeSpan() And CFLoop (via Ray Camden)
- Why My Queries Hate Application Service Layers
- ColdFusion Tag Parameters Can Be Included In Separate Files (Thanks Mark Drew!)
- AxisFault: ColdFusion Web Services And XML Data Types
- Preventing Default Actions In A Bubbled Event In jQuery
- A Problem With My Coding Methodology That's Driving Me Crazy
- Ben Forta At The NYCFUG: ColdFusion Centaur, Bolt, And Flash Tour
- ColdFusion 8 Application Specific Mappings Work With The CFComponent Extends Attribute
- Project HUGE: Huge In A Hurry - Get Big - Phase 2 / Week 3
- Ask Ben: Dynamic Form Field Population With jQuery
- jQuery AJAX Strips Script Tags And Inserts Them After Parent-Most Elements
- jQuery And Script Tags As Data Containers
- GetHTTPRequestData() Breaks The SOAP Request / Response Cycle In ColdFusion
- SOAP Web Service Errors Are Handled Externally To The ColdFusion Application Framework
- Project HUGE: Huge In A Hurry - Get Big - Phase 2 / Week 2
- Campaign Monitor API Connection Failure With CFHTTP And GZIP Compression
- June 1st 2009 - 2nd Annual (Inter)?National Regular Expression Day!
May 2009
- Contextual CSS Is Good When You Know Everything About Your Content
- Converting To And From GMT / UTC Time In ColdFusion Using DateConvert()
- Converting To GMT And From GMT In ColdFusion For Use With HTTP Time Stamps
- My Journey Through cf.Objective() 2009 (And My Raffle Winner!)
- Ask Ben: Collecting And Relating Sibling XML Nodes In A ColdFusion XML Document
- Getting IFRAME Window (And Then Document) References With contentWindow
- Ask Ben: Print Part Of A Web Page With jQuery
- Date Addition Using CreateTimeSpan() Creates A Numeric Date
- Do Remote CFC Method Calls Add Any Value In ColdFusion?
- CFM Templates And Remote CFCs - They're All Just ColdFusion Page Requests
- cf.Objective() Photo Raffle With Me (Ben Nadel)
- The New BenNadel.com - Same Content, Fresh New Look
- Preventing Form Caching With Javascript And jQuery
- ColdFusion 8 Per-Application Settings Get Partially Cached (And There's Nothing You Can Do About It)
- Ask Ben: Selecting XML Nodes That Have A Given Parent Node Using XPath
- Data-Driven CSS Style Sheets Using ColdFusion
- Ask Ben: Executing ColdFusion Custom Tag Code If First Run Only
- Thoughts On User / Page Request Security Model (Part II)
April 2009
- Thoughts On User / Page Request Security Model
- Using The OnError() Event Handler Implies A "200 OK" Response Status Code
- Ask Ben: Manually Enforcing Basic HTTP Authorization In ColdFusion
- Changing The Root Node In A ColdFusion XML Document Using XSLT
- Randomly Executing 1..N Nested ColdFusion Custom Tags
- Randomly Executing Only One ColdFusion Custom Tag Child
- Ask Ben: Changing The Root Node In A ColdFusion XML Document
- Using OnMissingMethod() With Remote Access ColdFusion Components
- Handling Remote API Errors With Application.cfc's OnError() Event Method
- Using Super Constructors Is Critical In Prototypal Inheritance In Javascript
- Testing For ColdFusion Component Interface Support
- Ask Ben: Accessing Cached CFCs With AJAX via Remote Proxies
- jQuery Comments() Plug-in To Access HTML Comments For DOM Templating
- What Is The Best Time Of Day To Workout?
- CFHTTPSession.cfc Gets Request / Response Logging
- An Experiment In Non-Data-Type ColdFusion Components
- Step Debugging jQuery Selectors
- ColdFusion Components As Data Types - Help Or Hindrance?
- Object Oriented Form Helpers And Reusing Form Validation On The Client
- Ability To Leverage ColdFusion Bug Will Mean Errors Later
- Form Helpers And Domain Objects As Data Types In Object Oriented Programming
- Project HUGE: Get Big, Phase One (Chat Waterbury - Huge In A Hurry)
- Quick Thought On OOP Data Validation And Why Redundancy Is OK
- Exploring Mixins And Javascript Objects
- Exploring Mixins And ColdFusion Components
- Performing ColdFusion Processing After A CFLocation Tag
March 2009
- Dig Deep Fitness iPhone App Gets A Huge Usability Upgrade
- Learning jQuery 1.3 By Jonathan Chaffer, Karl Swedberg, And PACKT Publishing
- Is It Time For "Practical" Object Oriented Programming (OOP)?
- jQuery UI 1.6 By Dan Wellman And PACKT Publishing
- ColdFusion Bug: Arrays, ArrayLen(), And Implicit Structs
- Binding Components And Methods To Create Validation Behaviors
- What Chinese Food Has Taught Me About Life
- MySQL 3/4 - com.mysql.jdbc.Driver And allowMultiQueries=true
- Creating Tiny URLs Using ColdFusion
- Converting Numbers To A Character-Set Based Radix Using ColdFusion
- OOP Philosophy: Invalid State vs. Invalid Method Call
- Project HUGE: Huge In A Hurry - Get Ready - Week Two
- The Same CFID-CFTOKEN Values Are Used Across ColdFusion Session Timeouts
- ColdFusion Session Management And Asynchronous Page Requests
- ColdFusion SESSION Is Always Created Even If OnSessionStart() Fails
- Note About CFLogin, Application Name, And ApplicationToken
- Project HUGE: Dig Deep Fitness iPhone App And Huge In A Hurry
- Calculating Your Weight Lifting Rep Maximum Using ColdFusion
- Project HUGE: Huge In A Hurry - Get Ready
- Converting CSS Data To XPath Using ColdFusion
- Huge In A Hurry By Chad Waterbury
- Converting A Full CSS Selector To XPath Using ColdFusion
- Converting A Single CSS Element Selector To XPath Using ColdFusion
- jQuery's Event Triggering, Order Of Default Behavior, And triggerHandler()
- Ask Ben: Using jQuery's triggerHandler() To Skip Default Behaviors
- Creating An Abstract Base Class In ColdFusion
- Storing Property Data In Javascript Function Objects
- Applying Flattened CSS To XHTML For Use In Remote Environments
- Binding Events To Non-DOM Objects With jQuery
- jQuery UI 1.7 Released
- jQuery metaData() Plugin Leverages data() Method (jQuery Plugin Example)
- Binding Javascript Method References To Their Parent Classes
- Reconciling Different Types Of APIs And What Data They Return
- Ask Ben: Building An AJAX, jQuery, And ColdFusion Powered Application
- Extending Classes In Object Oriented Javascript
- You Practice Gymnastics, I Practice Everything
- If You Think You Know Nothing, You're Off To A Good Start
February 2009
- Hal Helms - Real World Object Oriented Development, Sarasota - Day Five
- Hal Helms - Real World Object Oriented Development, Sarasota - Day Four
- Hal Helms - Real World Object Oriented Development, Sarasota - Day Three
- Hal Helms - Real World Object Oriented Development, Sarasota - Day Two
- Hal Helms - Real World Object Oriented Development, Sarasota - Day One
- Hal Helms - Real World Object Oriented Development, Sarasota - The Cookout
- Hal Helms - Real World Object Oriented Development, Sarasota - On My Way
- Ask Ben: Parsing CSV Strings With Javascript Exec() Regular Expression Command
- Data Truncation: Truncated Incorrect DOUBLE Value When Updating Timestamp
- Catching Timeout Errors With jQuery Powered AJAX
- Ask Ben: Extending OnSessionStart() In A Sub Directory Application.cfc
- Ask Ben: Cross-Site AJAX Requests Using jQuery And ColdFusion
- Ask Ben: Using Regular Expressions To Parse Data In ColdFusion
- Ask Ben: Parsing String Data Using Javascript's String Replace() Method
- One Week Until The Hal Helms' Real World OO Class!
- Making My ColdFusion Tags More Consistent
- An Intensive Exploration Of jQuery With Ben Nadel (Video Presentation)
- Ask Ben: Finding XML Nodes That Have Children With The Given Case-Insensitive Phrase
- Using A Rough Box Model To Gather Near-By Zip Codes
- Finding The Distance Between Latitude / Longitude Locations In ColdFusion
- ColdFusion Regular Expressions Do Not Support Character Class Intersection Or Subtraction
- Using POSIX Character Classes In Java Regular Expressions With ColdFusion
- Christian Bale Goes Ballistic On Terminator Salvation Set - A Good Sign!
- Project HUGE: Success Strategy For Working Out When You're Tired
- Snurl.com (SnipUrl) API ColdFusion Component Wrapper
- Strange ColdFusion URLDecode() and GetEncoding() Behavior
- A Graphical Explanation Of Javascript Closures In A jQuery Context
- Ask Ben: Selecting Random Values Without Repetition In ColdFusion
- KinkyTwits Update: Filter Groups Based On Include/Exclude Screen Names
- REReplace ColdFusion Custom Tag - Another Regular Expression Experiment
- KinkyTwits - My ColdFusion And jQuery Powered Twitter Client (Beta)
January 2009
- Does Order Of Twitter API Parameters Make A Difference?
- Ask Ben: Displaying The Next Hidden Element Using jQuery (Update)
- Ask Ben: Sending Emails Based On XML Contact Data In ColdFusion
- Ask Ben: Iterating Over An Array In jQuery, One Index Per Click
- Seeding SQL RAND() Method With NEWID() For Per-Row Random Values (Thanks Joshua Cyr)
- Winners Of My 1,000th ColdFusion Post
- My 1,000th ColdFusion Post - What It Means To Me (And Free Prizes)
- Embedding ZIP Files Inside JPG Files Using ColdFusion (Live Demo)
- A Serious CFThread Bug In ColdFusion?
- Project HUGE: The Thinking Emotional Self vs. The Schedule
- Ask Ben: Creating Single Location Logins
- Embedding ZIP Files Inside JPG Files Using ColdFusion
- Free Hotel Stay For Hal Helms' Real-World OOP Class
- Ask Ben: Securely Pinging One ColdFusion Application From Another
- Ask Ben: Removing Duplicate List Items While Maintaining Original List Order
- jQuery v1.3 Released On jQuery's 3rd Birthday!
- Using XSLT And ColdFusion's XMLTransform() To Keep Data And Formatting Separate
- XSLT And XMLTransform() Work Properly With XHTML In ColdFusion
- Way Of The Peaceful Warrior - Living In The Moment, Letting Go Of The Future
- Using jQuery With Custom XHTML Attributes And Namespaces To Store Data
- Ask Ben: Maintaining Case Of XML Attributes In Manually Created ColdFusion XML Documents
- CFInterface For Generic Date Iteration Strategies In ColdFusion
- The Way Of The Warrior And The Chance Not To Be Fired
- Hal Helms Real-World Object Oriented Programming (OOP) February Training And Discount Code
December 2008
- Project HUGE: Dig Deep Fitness Blog Widget For iPhone Fitness Log
- Getting the Nth Occurrence Of A Day Of The Week For A Given Month
- Project HUGE: Active Release Technique (ART) With Dr. Christopher Anselmi In NYC
- Deleting ColdFusion Scheduled Tasks With CFThread And CFSchedule
- Ask Ben: Handling Optional XML Nodes In WhitePages.com API Response
- Project HUGE: The Imaginary Fear Of Scheduling Mundane Tasks Such As Nutritional Intake
- Project HUGE: Adding Caffeine For Health And Performance Benefits
- The Wrestler Starring Mickey Rourke And Marisa Tomei
- ColdFusion Scope Existence During Various Request Types And Events
- Parameter 1 Of Function SetVariable, Which Is Now FORM., Must Be A Syntactically Valid Variable Name
- MySQL Cannot Convert Value '0000-00-00 00:00:00' From Column XX To TIMESTAMP
- MySQL: The Multi-part Identifier "u.id" Could Not Be Bound
- ColdFusion ARGUMENTS Keys Always Exist, Even When Not Required
- ColdFusion REFind() Cannot Find The Empty String
- Ask Ben: Extracting Data With Regular Expressions vs. ColdFusion List Functions
- Getting ColdFusion To Work With MS SQL Server Express 2005 Databases
- Both MySQL and MS SQL Server Use @@Identity To Report Latest Auto-Incrementing Value
- Getting Header Values From A ColdFusion Request
- Exploring The Cardinality And Selectivity Of SQL Conditions
- Rick Osborne On Database Indexing And SQL Best Practices
- Experimenting With Flat-File ColdFusion CFML Caching
- Ask Ben: Creating A Fixed-Field-Width Data File With ColdFusion
- Ask Ben: Posting XML And File Data With ColdFusion And CFHttp
- The Four Agreements By Don Miguel Ruiz (Thanks Jason Kay)
- The Occasional Danger Of ColdFusion's Automatic Data Type Conversion
- Update: Sorting Target XML Node Sets In ColdFusion XML Documents
- Ask Ben: Get Arguments For ColdFusion User Defined Functions
- Interesting Behavior When Swapping Live Nodes In A ColdFusion XML Document
November 2008
- Random Thought: The Database Bottleneck And Elegance
- Have A Happy Thanksgiving From Kinky Solutions
- Ask Ben: Checking Domain Name Availability Using ColdFusion
- Ask Ben: Sorting A Sub-Tree Of An XML Document Using ColdFusion And XSLT
- Ask Ben: Limiting The Number Of Simultaneous Users For A Given IP Address
- Zen, Motorcycle Maintenance, And Producing Software
- EtherPad: Potential For Great Peer Debugging
- Javascript Objects Cannot Have Complex Index Values
- Comprehensive ColdFusion Component OnMissingMethod() Testing
- Using jQuery To Leverage The OnChange Method Of Inputs
- Duckman Is My Sherpa
- Ask Ben: Iterating Over An Array With jQuery
- ColdFusion CFParam Regex Validation Tests Whole Value
- Ask Ben: Hiding Customer-Specific Image Paths
- Ask Ben: Dynamic Table Names In ColdFusion Queries
- Ask Ben: Flagging Threaded Discussions As New Or Unread
- Intrinsic Goodness, Sex, Happiness, And Pleasure
- Handling AJAX Errors With jQuery
- RESwitch / RECase ColdFusion Custom Tags For Regular Expression Switch Statements
- I Wish: ColdFusion Custom Tag Query Looping
- Ask Ben: Getting The Start And End Dates Of The Previous Week In ColdFusion
October 2008
- Ask Ben: Redirecting Users To A Random Page
- Object Oriented Programming And ColdFusion - What's The Point?
- Hal Helms On Object Oriented Programming - The Summary
- Hal Helms On Object Oriented Programming - Day Five
- Hal Helms On Object Oriented Programming - Day Four
- Hal Helms On Object Oriented Programming - Day Three
- Hal Helms On Object Oriented Programming - Day Two
- Hal Helms On Object Oriented Programming - Day One
- Heading To An Object Oriented Programming Seminar
- OOP Getters() And Setters() - A New Programmer's Frustration
- KinkyTwits Update - "Characters Remaining" Understands Message Type And HTML Entities
- Ask Ben: Dynamically Adding File Upload Fields To A Form Using jQuery
- KinkyTwits - My ColdFusion And jQuery Powered Twitter Client
- Listing All Classes In A Jar File Using ColdFusion And CFZip
- Listing All Classes In A Jar File Using ColdFusion
- Project HUGE: Trying Out A 4-Exercise Limit
- Ask Ben: Instantiating Nested Java Classes In ColdFusion
- Ask Ben: What I Look For In A Potential Employee - Passion
September 2008
- OOPhoto: Implementing Security In An Object Oriented Application - Round I
- Simon Free Leads The Way
- Ask Ben: Optimizing Form Inputs For Numeric Keypad Usage
- "Style Bleed" Problem Fixed In POI Utility Tags
- Java Hashtable - An Object-Based-Lookup "Struct" (Thanks Nathan Mische)
- What Happens When I Return The SUPER Scope From Component Constructor?
- Using The Apple iPod Shuffle Without iTunes
- Using StructKeyExists() With CALLER Scope In ColdFusion Custom Tags
- Breaking Out Of A ColdFusion Custom Tag Loop
- Fundamentals Of Object-Oriented Design In UML By Meilir Page-Jones
- XStandard - Unable To Process License File
- OOPhoto: Further Exploration Of The Facade And Controller-Model Interaction
- The Power Of ZOOM - Fixing CSS Issues In Internet Explorer
- Ask Ben: Iterating Over An Unknown Number Of Nested Lists
- Project HUGE: WTF, Waist Line, And Money
- OOPhoto: VARIABLES vs. VARIABLES.Instance - When And Why?
- Ask Ben: Optimizing Tables For Printing
- Got My Sweet-Ass T-Shirts From Steven Levithan's Regular Expression Contest
- OOPhoto: Facade Layer Integrated Between Controller And Service Layers
- OOPhoto: Adding A Facade Layer
- OOPhoto: Been A Bit Stumped Lately With The Next Step
- Ask Ben: Parsing Very Large XML Documents In ColdFusion
- XML Building / Parsing / Traversing Speed In ColdFusion
- Converting A Base64 Value Back Into A String Using ColdFusion
- IMPORTANT UPDATE: XML Parsing Is WAY Faster Than ColdFusion Custom Tags
- ColdFusion Custom Tags Are Significantly Faster Than XML Parsing
- MySQL Does Not Support IF / ELSE Statements In General SQL Work Flow
- Babylon A.D., Vin Diesel, And The Sad State Of Badassery
August 2008
- ColdFusion CFFTP Timeout Value Cannot Be Dynamic
- My First ColdFusion 8 CFFTP Experience - Rocky But Triumphant
- FireFox Never Stops Loading With iFrame Submission
- Apple iPhone 3G Has Been Extremely Frustrating
- OOPhoto - Encapsulating Form Processing In The Service / Facade Layer
- OOPhoto - Unique Coupling Of A Controller To A View
- Web Form Design By Luke Wroblewski
- Adobe ColdFusion 8.0.0 - OMG, Cute Shoes!
- OOPhoto - Creating Idealized Business Objects
- Subversion - Cleanup Failed To Process The Following Paths
- Flex Authority: Issue One - A Truly Polished Publication
- OOPhoto - What Is An Idealized Object?
- Ewwww - Watching Olympics On NBC.com Requires Microsoft Silverlight
- "It Depends" vs. "Fact With Exceptions"
- OOPhoto - If Object.Validate(), Why Not Object.Save()?
- A New Wrist Pain
- Extending Encrypted ColdFusion Application.cfm Functionality
- CentraSoft.com Releases CF8 Exam Buster - ColdFusion 8 Certification Study Software
- ColdFusion CFInvoke Eliminates The Need For Evaluate() When Dynamically Executing User Defined Functions
- OOPhoto - No More Validation In The Controller
- Ask Ben: Displaying And Formatting The Difference Between Two Dates
- OOPhoto - More Thoughts On Data Validation In Object Oriented ColdFusion Programming
- Gert Franz - Railo U.S. Tour At The New York ColdFusion User Group
- OOPhoto - Data Validation Layers And Night Club Bouncers
- Muscle: Confessions Of An Unlikely Bodybuilder By Samuel Wilson Fussell
- POI Utility - Blank Cells And Formulas In ColdFusion 7 Custom Tags
- OOPhoto - Almost An Object Oriented ColdFusion Application
- OOPhoto - Refactoring "With Transaction" Methods To BaseService.cfc
- Ask Ben: Updating An Excel Document More Than Once With The POI Utility
- Ask Ben: Moving Decimal Places And Formatting Numbers
- OOPhoto - Handling Database Transactions With Ease
- POI Utility Now Supports Formulas And Cell Aliasing In Custom Tags
- Creating Excel Files Faster With ColdFusion And POI Custom Tag Updates
July 2008
- OOPhoto - Embrace Failure Or Optimize My Domain?
- OOPhoto - Thoughts On Integrating The New Domain Model
- OOPhoto - Starting With My Base Model Object
- OOPhoto - Returning To The Domain Model (Round V)
- The Business Of Making Love
- Six Months Of Epicenter Consulting
- OOPhoto - A Painful Transition To Object-Based Controllers
- OOPhoto - Thoughts On The Massive Shift To Object-Based Controllers
- Chase Bank - Worst And Seemingly Most Insecure Telephone Interface Ever!
- OOPhoto - Simple Service Objects In Place
- OOPhoto - Moving To OOP - Adding Service Objects
- Ask Ben: Rendering Javascript Line Breaks
- OOPhoto - Starting Off Procedural Then Moving To Object Oriented
- ColdFusion 8.0.1 Bug Coldfusion.Image.ImageWriter $ ImageWritingException
- OOPhoto - Modeling The Domain In Steps (Round IV)
- OOPhoto - Domain Modeling By Persona (Round III)
- OOPhoto - Revisualizing The Application Layers
- OOPhoto - Modeling The Domain In Steps (Round II)
- ColdFusion Functions Declared Inside CFScript Have Output
- OOPhoto - Modeling The Domain In Steps (Round I)
- I Won Steven Levithan's Regular Expression Contest!
- OOPhoto - Annotating The User Interface Before Designing The Domain Model
- Ask Ben: Getting Dynamic References To XML Nodes And Setting Text Values In ColdFusion
- OOPhoto Prototype - Understanding The Interface Before Defining The Domain Model
- More Thoughts On MVC, OOP, And Form Submissions In ColdFusion
- Happy July 4th From Kinky Solutions
- I Helped To Set A World Record
- OOPhoto - Another Attempt At Learning Object Oriented Programming (OOP) In ColdFusion
June 2008
- Setting Form EncType Dynamically To Multipart/Form-Data In IE (Internet Explorer)
- Tracking Delta-Only Data Audits In ColdFusion Using XML
- Tracking Data Audits In ColdFusion
- Be Careful Using "#" In ColdFusion DE() Expressions
- CFUNITED 2008 - So Many Great People
- Katie Maher Rocked My World
- ColdFusion CFQueryParam Varchar-List Puts In Single Quotes For You
- Inconsistent Stack Height 1 != 0 NULL
- Multi-Step Form Demo In ColdFusion
- Partial Entry For Steve Levithan's Regular Expression Contest
- Ask Ben: Create A New XML Document Based On A Child Node Of An Existing XML Document
- ColdFusion CFCatch Tags Catch Exceptions Based On Type Hierarchy
- POI Utility Now Has ColdFusion MX7 Compatible Tags (Thanks Dan Wilson!)
- jQuery UI 1.5 Released, Focus On Consistent API And Effects
- Indiana Jones And The Kingdom Of The Crystal Skull Starring Harrison Ford
- Sex And The City Movie Staring Sarah Jessica Parker
- jQuery 1.2.6 Even Better!
- Not Commenting And The Tipping Point Of Poor Programming
- SQL Join Table vs. SQL Entity Table And When To Switch
- My Interview With Christian Ready - CFUNITED 2007
- You Cannot Delete Application.cfc Methods In The Pseudo Constructor
- Ask Ben: Splitting And Joining Large Binary Files Using Buffers In ColdFusion
- Downloading Email Attachments With CFPop And CFThread
May 2008
- Bigger, Stronger, Faster - The Side Effects Of Being American
- National Regular Expression Day And Reflections On My Own Journey
- Ask Ben: Dynamically Executing ColdFusion Application.cfc Instances
- POIUtility.cfc - "Too Many Fonts / Formats" Issue Fixed
- HotFix For "The ColdFusion Mail Spool Encountered An Invalid Spool File In The Spool Directory"
- ColdFusion, jQuery, And "AJAX" File Upload Demo
- June 1st 2008 - National Regular Expression Day! (Post A Comment, Win A Prize)
- CFHttpSession.cfc Fixed And Added To Projects
- Malcolm Gladwell, Transactive Memory, And Pair Programming
- Array Iteration Is Much Faster That Struct Iteration (Thanks Eric Stevens)
- Updated: Converting A ColdFusion Query To CSV Using QueryToCSV()
- Bug With ARGUMENTS Scope And Implicit Array / Struct Creation
- The ColdFusion Mail Spool Encountered An Invalid Spool File In The Spool Directory
- Converting A ColdFusion Query To CSV Using QueryToCSV()
- The Philosophy Of Undocumented ColdFusion Features
- Ask Ben: Working With Lists In An Object Oriented Programming Application
- Eric Stevens On CFContent And Memory Usage In ColdFusion 8
- HostMySite.com Has The Best ColdFusion Hosting
- More On Data Validation - Translating Error Messages
- CFDirectory Filtering Uses Pipe Character For Multiple Filters (Thanks Steve Withington)
- CFDirectory Filtering Uses Single Character Wild Card
- Work At Edit.com - The Website Maintenance Experts
- cf.Objective() 2008: Walking Among Giants
- Updated CFHttpSession.cfc With Spoofed Referer Can Log Into PayPal
April 2008
- New ColdFusion CFMailParam "Remove" Attribute Makes Deleting Attachments Simple
- Creating A "Remember Me" Login System In ColdFusion
- Image Manipulation ColdFusion Wrapper Component
- ClearCode Standards Project
- Dynamically Evaluating Image Functions In ColdFusion 8
- Turning On Multiple Statements In ColdFusion 8 MySQL 4/5 Datasource
- ColdFusion Image Manipulation Functions Return Nothing
- Getting Excited For cf.Objective() 2008
- Content Is Not Allowed In Prolog - ColdFusion XML And The Byte-Order-Mark (BOM)
- No More New Fonts May Be Applied In This Workbook
- You Cannot Submit Non-Rendered Forms
- Writing AJAX Return Value Logic On The Server
- Rob Gonda Rocks AJAX At The New York City ColdFusion User Group
- Update To MSSQL To MySQL Translation (II)
- Update To MSSQL To MySQL Translation
- A Reminder About Interfaces And The User Experience
- Defaulting To The Numeric Keyboard On The iPhone
- I'm Not Dead Yet - But Blogging Might Be Killing Me?
- Exception-Driven Multi-Step Dependent Algorithms In ColdFusion
- Thoughts On Chained And Dependent Algorithm Steps
- Compiling Several Linked Files Into One File
March 2008
- Thoughts On Storing Duplicate / Calculated Data In The Database
- Ben Nadel's Easy Tips For Writing Better, More Optimized SQL
- Pete Freitag At The New York ColdFusion User Group
- Minor CSSRule.cfc ColdFusion CSS Parser Update
- Been Very Stressed Lately
- Strange URL Hash Problem With CFLocation In IE6
- Name vs. Variable In ColdFusion
- Ask Ben: Extending Application.cfc And OnRequestStart() With SUPER
- Never Be Conflicted About Being Nice
- Custom User Agents For ColdFusion Debugging
- Trouble With My Mail Server
- Negative CSS Margins Are Not Cool
- Kinky Calendar Leap Year Update
- Dig Deep Fitness And Unique Application Usability Testing
- CFHTTPSession.cfc For Multi-CFHttp Requests With Maintained Session
February 2008
- Dig Deep Fitness iPhone Fitness Application Beta
- Odd MySql CFQueryParam Truncation Issue (Help)?
- Trimming An Image Canvas With ImageUtils.cfc ColdFusion Image Component
- CFModule Works With Non-CFM Files
- ColdFusion Image Coordinates Are Zero-Based
- Reflecting Images With ImageUtils.cfc ColdFusion Image Component
- CreateGradient() / DrawGradientRect() Added To ImageUtils.cfc
- Creating Colors Gradients With ImageUtils.cfc ColdFusion Component
- DreamWeaver CS3 Slows Me Down
- CFSaveContent And THISTAG.GeneratedContent Tip
- Getting RGBA Pixel Data From ColdFusion Images Using GetPixels()
- Ray Camden At The New York ColdFusion User Group
- Dig Deep Fitness iPhone Fitness Application Prototype
- Cleaning High Ascii Values For Web Safeness In ColdFusion
- Creating A Tiled Image Background With TileImage()
- What Does It Mean To Be A CSS Class?
- EasyCaptcha() For Multi-Image CAPTCHA Creation
- GetTextDimensions() For Finding ColdFusion Image Text Dimensions
- ColdFusion CFImage Bug - Font Size Data Type Casting
- Dig Deep Fitness iPhone Fitness Application Initial Thoughts
- Me And Ray Camden On ColdFusion 8 Image Goodness
- Datasource Names For All The Database Tags Within CFTRANSACTION Must Be The Same
- Google Mail Search Frustration
- Hank Hill On ColdFusion
- Creating Web Controls With ColdFusion Custom Tags
- Kinky Solutions Valentine's Day Give Away
- CSSRule.cfc Added To Projects
- The Mind Is Just A Reflex Organ
- CFDrinks In Manhattan - Tomorrow
- ColdFusion Implicit Struct Creation Cannot Use Quoted Identifiers
- CSSRule.cfc - Parsing CSS Rules In ColdFusion
- Generic Form Processing / Emailing In ColdFusion
January 2008
- ColdFusion / SQL Error: Invalid Precision Value
- Hal Helms Teaches Me Some Object Oriented Programming
- Ask Ben: Simple Data Caching In ColdFusion
- REMatchGroup() UDF To Return Only Specified Group In RegEx Pattern
- Ask Ben: Ending ColdFusion Session When User Closes Browser
- Ask Ben: Delete Values In A Given List Using ColdFusion
- New York ColdFusion User Group A Success
- Out Of Town On Business
- Thanks Adobe!
- Testing Credit Card Transactions In Payflow Pro (Thanks Dan Vega!)
- CreateObject() Proxy Via ColdFusion Custom Tag
- Testing CALLER.Scope.Value And Caller[ "Scope.Value" ] In ColdFusion Custom Tags
- CFLock And Negative Outcomes - Think It Through
- Ask Ben: Screen Scraping PowerBall Statistics With ColdFusion
- Ask Ben: Querying Groups With Conditional Elements
- Don't Be Lazy, Be Proud
- Site Down Time
- Creating A "Down For Maintenance" Page Using Application.cfc
- Ask Ben: Uploading Multiple Files Using ColdFusion
- The Fresh Face Of The New York ColdFusion User Group (NYCFUG)
- They're All Just Text Files (Adobe ColdFusion IDE Survey)
- Posting File Data Using A Base64 Encoding In ColdFusion
- Incoming Tabular Data Stream Remote Procedure Call Is Incorrect
- Excited For 2008 - CFUNITED
December 2007
- Using Inline List Elements
- Easy Print CSS Integration - NoPrint (Thanks Rick Osborne!)
- Project HUGE: 100 Reps Of Leg Press
- Print CSS vs. Printer Friendly Format
- Ask Ben: Breaking An SMS Text Message Up Into Multiple Parts
- ColdFusion Array Loop Works With ARGUMENTS
- ColdFusion 8 CFloop Array Iteration / XML Bug?
- I Am Legend Starring Will Smith
- Ask Ben: Converting XML Data To ColdFusion Queries
- ColdFusion GetTempDirectory() Stops Working
- Maintaining Line Breaks In An HTML-Excel File
- CFQueryParam Data Conversion Caveat (Thanks Tony Petruzzi)
- Getting One Record Per Group From A One-to-Many Join
- ColdFusion CFQueryParam Binding vs. SQL Execution
- DNA Based Dating Service
- REFind() Sub-Expressions (Thanks Adam Cameron!)
- Project HUGE: Welcome Back To .... Initiation
- The Magic Of Thinking Big By David Schwartz (Thanks Clark Valberg!)
- I Will Never Be Tired Again
- Regular Expressions With Repeated Groups
- Do You Have A Permit For Those Guns?
- ColdFusion Session Management And Spiders / Bots
- ColdFusion CFThread Body Context Exploration
- Expired SESSION Available In ColdFusion CFThread Tag
- Recursive XSLT For Nested XML Nodes In ColdFusion
- Attempting Switch To iTunes From WinAmp
- Ask Ben: Recursive Numeric Pyramid
- Mid-Page ColdFusion Session Expiration Behavior
- No Country for Old Men Starring Tommy Lee Jones, Javier Bardem, And Josh Brolin
- Ray Camden's Friday Puzzler - Compare Directories
- Arc90 Classic Arcade Game Night
- David Stamm On Styling Form Elements
- Bulleting Credit Card Numbers With Regular Expressions
- Exercise List: Where Do I Go From Here?
- Ask Ben: Simple Recursion Example
- 204 Status Codes And ColdFusion CFHttp Calls
- Chazz Michael Michaels On ColdFusion
- CF_XSLT ColdFusion Custom Tag For Xml Transformations
- The Fine Art Of Small Talk By Debra Fine
- Balancing Strength In The Body
November 2007
- Ask Ben: Running ColdFusion Asynchronously - Caveman Style
- Converting Microsoft Project 2007 Tasks To HTML With ColdFusion
- Testing ColdFusion Custom Tag Processing Overhead
- Grouping JOIN Clauses In SQL
- Getting @@RowCount After SQL INSERT INTO Statement
- Using CFPOP And CFMAIL For Bidirectional SMS Text Messaging In ColdFusion
- ColdFusion CFPOP - My First Look
- Final Thoughts On CFParam And Data Type Validation
- Amazon's Kindle eBook And Wireless Reading Device
- FAQu Volume II, Issue II Is Totally Flextasic
- Alf Pedersen On NULL Value Usage In Database Design
- How Many HTML Elements Can You Name in 5 Minutes?
- Data Type Validation vs. Data Value Validation
- Exercise List: Incorporating OOP Style Form Validation
- CFParam And Regex-Pattern Is Quite Awesome
- Creating Transparent Images With ColdFusion 8 And ImageNew()
- Exercise List: Form Data Validation Context In OOP
- How To Handle NULL Values In Object Oriented Programming In ColdFusion
- Exercise List: Multi-Tier Validation Requirements
- Exercise List: Error Collection ColdFusion Component
- REMatchGroups() ColdFusion User Defined Function
- Ask Ben: Iterating Over A ColdFusion XML Document
- Exercise List: More Thoughts On Domain Data Validation
- RELoop ColdFusion Custom Tag Case Study
- John Mason Presents On Unit Testing with CFCUnit
- Charlie Arehart On ColdFusion 8's Hidden Gems
- Exercise List: Thinking About Data Validation - Who, What, And Where?
- Exercise List: Integrating The Domain Model Into The ColdFusion Code
- Colin Moock's ActionScript 3.0 Event (A Review)
- Colin Moock's ActionScript 3.0 Event
- Building Java Arrays In ColdFusion Using Reflection
- The Darjeeling Limited Starring Owen Wilson, Adrien Brody, And Jason Schwartzman
- Getting The URL Of ColdFusion 8's Temporary Images
- Understanding Value Binding Within CFThread
- Ask Ben: Zipping Images With ColdFusion 8's CFZip And CFHttp
- Exercise List: Rethinking The Domain Model / Object Oriented Approach
- ColdFusion Wants You To Access The Underlying Java Methods
- Trailing Slashes In XPath And Multiple Node Sets
- Exercise List: Thinking Out The Domain Model
- Ask Ben: Parsing A Microsoft XML Rowset Into A ColdFusion Query
- CFUNITED 08 - Early Bird Special
- XPath Support Expanded In ColdFusion 8
October 2007
- Splitting And Joining A Binary File In ColdFusion
- Exercise List: Procedural ColdFusion Code Complete (Phase I)
- Javascript Number.toFixed() Method
- Learning jQuery By PACKT Publishing
- Exercise List: ColdFusion Site Skeleton
- Exercise List: Basic Page Template
- jQuery Demo: Creating A Sliding Image Puzzle Plug-In
- jQuery.empty() Kills Event Binding On Persistent Nodes
- jQuery Attr() Function Doesn't Work With IMAGE.complete
- Exercise List: Designing The Database Schema
- jQuery Reference Guide By PACKT Publishing
- Cool jQuery Predicate Selectors
- XMLHttpRequest Object Has An Abort() Method
- POIUtility - Object Instantiation Exception
- My 1,000th Blog Post - Cool Milestone
- Exercise List: The Prototype And Interface Driven Design
- Exercise List: Initial Thoughts Before We Code
- jQuery And The Anticipation Of Greatness
- Kinky File Explorer - ColdFusion And jQuery Based File Explorer
- CSS Background Images Using Percentage Positioning
- Bulletproof Web Design By Dan Cederholm (Thanks Javier Julio!)
- Why Do I Protect People Who Want To Break My Site?
- CSVToArray() ColdFusion UDF For Parsing CSV Data / Files
- Paginating Record Sets In ColdFusion With One SQL Server Call
- CFFlush Does Not Work Inside ColdFusion 8's CFLayout Tag
- ColdFusion, CSS, And Underlying Java Methods (Your Thoughts)
- Kinky Solutions Now Utilizes Google Custom Search As Site Search
- Using NULLIF() To Prevent Divide-By-Zero Errors In SQL
- Target ColdFusion Template Gets Compiled Even If Not Executed
- Ask Ben: Closing XHTML Tags In A Truncated Message
- Antialiased Text Is Not All That
September 2007
- Resident Evil: Extinction Starring Milla Jovovich
- ColdFusion 8 ImageDrawTextArea() (Inspired By Barney Boisvert!)
- Java String Buffer Treated As String In ColdFusion (When Needed)
- I Finally Used CFParam Type = "VariableName"
- Ask Ben: Pulling SQL Records Based On A List Of IDs
- CFCs Are Cached, CFIncludes Are Not
- RELoop ColdFusion Custom Tag To Iterate Over Regular Expression Patterns
- Aoccdrnig To Rscheearch - ColdFusion UDF To Garble Words
- New SPAM Leverages Amazing Brain Functionality
- Are SQL PATINDEX() And The SQL LIKE Clause Doing The Same Thing?
- Project HUGE: A Bad Week In Eating
- Shoot 'Em Up Starring Clive Owen And Paul Giamatti
- SQL User Defined Functions Are Slower Than Inline Logic
- Getting Only The Date Part Of A Date/Time Stamp in SQL Server (Revisited)
- Convert jQuery XML Documentation To HTML / PDF Using ColdFusion And XSLT
- ColdFusion 404 Handling Makes Sub Domain Redirects Hard
- Digital Smiley Face Turns 25
- Code Assertively
- The Brave One Starring Jodie Foster And Terrence Howard
- Project HUGE: Max Squat Is Watching Over Me
- IE Has Correct Box Model In Standards Compliant Mode
- Nylon Technology Presentation: Introduction To XSLT And XmlTransform() In ColdFusion
- jQuery Plugin To Make It Vibrate
- jQuery 1.2 - An Unexpected Surprise
- Converting XML To HTML Using ColdFusion And XSLT
- 3:10 To Yuma Starring Russell Crowe And Christian Bale
- Returning Zero-Length Images Works Just Fine
- Returning NULL Values From A ColdFusion User Defined Function
- If I Don't Get Back To You, It's Not Personal
- Ask Ben: Testing For ColdFusion Session Management
- My First ColdFusion XML / XSLT Example
- SQL EXISTS Exploration (Thanks Christoph Schmitz!)
- SQL Optimization Case Study - JOIN Clause vs. IN Clause
- Using A SQL JOIN In A SQL DELETE Statement (Thanks Pinal Dave!)
- Using A SQL JOIN In A SQL UPDATE Statement (Thanks John Eric!)
- Kinky ColdFusion Calendar System Now Has An Application File
August 2007
- HostMySite.com Customer Care Rocks
- Ask Ben: Handling Redirects With ColdFusion CFHttp
- Using CASE Statements In A SQL UPDATE Query
- Ask Ben: Handling Errors With ColdFusion CFError
- Getting Certified In ColdFusion 8 Scares Me
- Ask Ben: Spoofing Referrer With ColdFusion 8 CFImage Tag
- Preventing Spam Bot Form Submissions With ColdFusion (Revisited)
- Nobody Puts Baby In The Corner!
- Big Girls Like Me
- Tiny Change In ColdFusion Coding Methodology
- Ask Ben: Printing Shipping Labels With ColdFusion
- Advice On Balancing Cohesion, Packaging, And God Objects?
- Strange ColdFusion Component Shell Behavior
- GetPageContext() Is Template Specific, Not Request Specific
- Ask Ben: Forward ColdFusion Requests To Another Domain
- Graceful ColdFusion Timeout Disaster Recovery (Thanks Barney Boisvert)
- Superbad Is Bonafide Badass!
- I Just Can't Understand Object Oriented Programming (OOP) And Join Tables
- ColdFusion 8 ImageResize() / ImageWrite() Bug?
- Does The World Know That You Use ColdFusion?
- Kinky Calendar Is Now An Official Kinky Solutions Project
- ColdFusion NumberFormat() Exploration
- Rescue Dawn Starring Christian Bale And Steve Zahn
- Ask Ben: Environment-Based Application.cfc Settings
- Javascript's Implicit Boolean Conversions
- Passing Referer AS ColdFusion CFHttp CGI Value vs HEADER Value?
- Selecting Contrasting Text Color Based On Background Color
- Exploring ColdFusion InputBaseN() And FormatBaseN() Functions
- Kinky ColdFusion Calendar System Has Delete, Day View, And Color Coding
- Kinky ColdFusion Calendar System Almost There
- Lenny And Bo, ColdFusion Programmers (Vol. 31)
- The Bourne Ultimatum Starring Matt Damon And Julia Stiles
- Kinky ColdFusion Calendar System Taking Shape
- Applying IM Text Abbreviations With ColdFusion
- No Reservations Starring Catherine Zeta-Jones And Aaron Eckhart
- Date Looping Using ColdFusion Custom DateLoop Tag
- Lenny And Bo, ColdFusion Programmers (Vol. 30)
- ColdFusion 8 Release Party Fun (Awesome Cake!)
- Unexpected CF_SQL_BIT Behavior In ColdFusion ValueList() Function
- Learning ColdFusion 8: CFDirectory Improvements
- Favorite Folders In HomeSite (Thanks John Elliott!)
July 2007
- Very Strange Spam Site / Link Farm?
- Ask Ben: Finding The Last Monday Of The Month In ColdFusion
- ColdFusion Calendar Event Scripting - The Theory Of Handling Event Updates And Exceptions
- Lenny And Bo, ColdFusion Programmers (Vol. 29)
- Tim Buntel / ColdFusion 8 Fan Art
- 19.0 Must Be Within Range: ( 1 : 12 )
- ColdFusion Calendar Event Scripting (Inspired By Peter Bell)
- Listen To Sean Corfield When It Comes To OnMissingMethod()
- ColdFusion 8 Release Date Contest Over - Koen Brenner Is Victorious
- Using CAPTCHA In ColdFusion 8
- I Know Who Killed Me Starring Lindsay Lohan
- Poor Interface Design Example
- Learning ColdFusion 8: OnMissingMethod() Event Handler
- Ask Ben: Protecting Database Table Names In ColdFusion CFQuery
- FLV 404 Error On Windows 2003 Server
- Learning ColdFusion 8: CFZip Part V - Deleting Zip File Archives
- Use Content Length When Streaming Binary Variables In ColdFusion
- Maybe Building The View Last IS The Best Way To Go
- jQuery Plugin To Return Delimited Value List Of Stack Element Attributes (Follow Up)
- Lenny And Bo, ColdFusion Programmers (Vol. 28)
- Ask Ben: Parsing Microsoft Word XML Into A Useful ColdFusion XML Document
- Select Any XML Node With A Given Value Using ColdFusion And XPath
- Ask Ben: Keeping Parallel Sessions Alive In ColdFusion
- The CTRL+SHIFT+S Test For Proper Page Architecture
- Learning ColdFusion 8: CFZip Part IV - Extracting Zip File Archives
- Project HUGE: Why I Can't Stop Thinking About Lydia Cheng's Daughter
- Application.cfc OnRequest() Method Affects OnError() Arguments
- Comparing ColdFusion Number Randomization Algorithms
- Fixing DIVs That Cause Content Truncation When Printing
- Ask Ben: Getting the Previous Day In ColdFusion, Excluding Saturday And Sunday
- Boyan Kostadinov's cfSnippetExecutor For ColdFusion Testing
- Styling The ColdFusion 8 WriteToBrowser CFImage Output
- Lenny And Bo, ColdFusion Programmers (Vol. 27)
- Simple Non-ColdFusion Document Security For Shared Hosting Environments
- Randomly Selected vs. Evenly Distributed
- Use It Or Lose It Emails Now Contain Recent Blog Entries
- Learning ColdFusion 8: CFZip Part III - Reading Zip File Entries
- Using CFHeader With File Names Containing Spaces (Thanks Elliott Sprehn!)
- Exploring Path Info And How It Interacts With ColdFusion And The Browser
- Using Path Info To Influence The Browser's Save-As Action
- Google Offering Low Cost Local Search Solutions
- ColdFusion CFQueryParam List / Null Attributes Do Not Require YesNoFormat() (Thanks Elliott Sprehn!)
- Ask Ben: Upload And Email File Using ColdFusion
- Printer Friendly Format Now Available
- ColdFusion Insert() - How Did I Miss This Function?
- Lenny And Bo, ColdFusion Programmers (Vol. 26)
- Don't Let Great Be The Enemy Of Good
- Ignorance Rears Its Ugly Head Again
- Dynamic And Unexpected ColdFusion GetCurrentTemplatePath() Behavior
- Nylon Technology Presentation: Introduction To XPath And XmlSearch() In ColdFusion
- I Just Felt The Awesome Power Of SQL Table Indexing (Thanks Nate Nelson!)
- Hours And Seconds Work In ColdFusion DateFormat()
- jQuery Plugin To Return Delimited Value List Of Stack Element Attributes
- Warning: Don't Stick Your iPhone In The Blender
- Using BODY ID As A Back To Top Page Anchor
- Sandra Clark Rocked My World
- Ask Ben: Displaying A Modified Detroit Calendar Schedule
- Terms Of Service / Privacy Policy Document Generator
- Lenny And Bo, ColdFusion Programmers (Vol. 25)
- Mom! Ben Broke My CFInterface!
- Having Trouble Getting Back On The Coding Horse
- Lenny And Bo, ColdFusion Programmers (Vol. 24)
- ColdFusion RandRange() vs. Java Collections Shuffle()
- XStandard v2.0 Available: The Best WYSIWYG Editor Just Keeps Getting Better
- Converting ISO Date/Time To ColdFusion Date/Time
- Need Help Making A Viable ExpandServerPath() ColdFusion UDF
- Lenny And Bo, ColdFusion Programmers (Vol. 23)
- jQuery v1.1.3 Now 800% Faster (At The Same Size File)!
- CFUNITED Rocks - ColdFusion Rocks - You Guys Rock
- ColdFusion Application.cfc OnRequest() Creates A Component Mixin
- Recursive ColdFusion Custom Tag Example
- Passing ColdFusion Structs Through Form Submissions
- ColdFusion CFParam Can Use Struct And Array Notation
June 2007
- My First jQuery Plugin
- Why Do I Even Get Any Huge Ass Traffic?
- I Got Fever And The Only Prescription Is More Peter Bell
- Lenny And Bo, ColdFusion Programmers (Vol. 22)
- Learning ColdFusion 8: CFZip Part II - Zipping Files And Directories With CFZipParam
- Ask Ben: Passing ColdFusion Structs And Arrays In The URL
- Come Work With Me At Nylon Technology (NYC ColdFusion Job Opportunity)
- Lenny And Bo, ColdFusion Programmers (Vol. 21)
- CFUNITED Just Days Away - Do You Even Know What I Look Like?
- Barney Boisvert Wins The Open Source Code Contest And A Nintendo Wii
- Learning ColdFusion 8: CFZip Part I - Zipping Files And Directories With CFZip
- Regular Expression Quote Makes Finding Literals Easy In ColdFusion Search
- Ask Ben: Hiding / Encrypting ColdFusion CFID And CFTOKEN Values
- ColdFusion ListGetAt() vs. GetToken()
- Google AdSense, Adult Sites, And Huge Ass
- ColdFusion 8 CFImage Write To Browser Bug?
- Using ColdFusion To Capture Form Data And Then Submitting The Form
- The Miracle Fruit (Miraculous Berry) Turns Sour To Sweet
- Parsing HTML Tag Data Into A ColdFusion Structure
- Lenny And Bo, ColdFusion Programmers (Vol. 20)
- Finally Finished Ayn Rand's Atlas Shrugged Audio Book
- The Dip By Seth Godin (Thanks Jack Welde)
- Learning ColdFusion 8: CFImage Part III - Watermarks And Transparency
- Nylon Technology Presentation - Some Of The Forgotten Functions
- Lenny And Bo, ColdFusion Programmers (Vol. 19)
- Learning ColdFusion 8: CFImage Part II - Tag Based Image Manipulation
- ColdFusion Application.cfc Wish - OnCommitStart() Event Method
- Lenny And Bo, ColdFusion Programmers (Vol. 18)
- Michael Dinowitz Application.cfc Presentation At NYCFUG - Past, Present, Future
- New ColdFusion Error: Form Entries Incomplete Or Invalid
- Learning ColdFusion 8: CFImage Part I - Reading And Writing Images
- John Rambo Trailer (Rambo IV) - Old Dog, New Tricks
- Learning ColdFusion 8: Javascript Object Notation (JSON) Part III - AJAX Demo
- Learning ColdFusion 8: Javascript Object Notation (JSON) Part II - Remote Method Calls
- Ray Camden Is ColdFusion Jedi
- Learning ColdFusion 8: Javascript Object Notation (JSON) Part I - Data Conversion
- CFUNITED Nintendo Wii ColdFusion Contest Closing Fast!
- Learning ColdFusion 8: Defining Tags With AttributeCollection
- Creating A "Download Will Start Shortly" Page With ColdFusion
- Lenny And Bo, ColdFusion Programmers (Vol. 16)
- Learning ColdFusion 8: CFThread Part IV - Cross-Page Thread References
- Learning ColdFusion 8: Ping - User Defined Function (Inspired By Ray Camden)
- Learning ColdFusion 8: CFThread Part III - Set It And Forget It
- Learning ColdFusion 8: CFThread Part II - Parallel Threads
- Fusion Authority Quarterly Update Filling In The Gaps
- Learning ColdFusion 8: CFThread's VARIABLES Scope Update (Thanks Dan G. Switzer, II)
- CFUNITED Nintendo Wii Contest Accepting Any Open Source Work
- Lenny And Bo, ColdFusion Programmers (Vol. 15)
- Learning ColdFusion 8: CFThread Part I - Data Exchange
- VIRGO (Aug. 23-Sept. 22): Dead On The Money!
May 2007
- Learning ColdFusion 8: All Hail The New ++ Operator
- Learning ColdFusion 8: Implicit Struct And Array Creation
- Updating In-Memory (Temporary) SQL Tables With UPDATE / DELETE Clauses
- Storing Float Values In An Integer Column Of A ColdFusion Query
- How ColdFusion CreateObject() Really Works With Java Objects
- ColdFusion 8 Beta Released - ColdFusion 8 Release Date Contest Still Open
- ColdFusion ZipUtility Component Can Now Write Directly To An Output Stream
- Inline Code Snippets Can Now Be Downloaded As One Zip File
- Passing Users From One ColdFusion Application To Another
- Using CFApplication Inside Of ColdFusion's Application.cfc
- Always Define Your ColdFusion Query Column Types
- Creating Multiple Instances From The Same Java Class In ColdFusion
- Lenny And Bo, ColdFusion Programmers (Vol. 14)
- ColdFusion Application.cfc Tutorial And Application.cfc Reference
- Maintaining Sessions Across Multiple ColdFusion CFHttp Requests
- CFQuiz 2.13: Selecting N Random Elements From An Array In ColdFusion
- SQL Server Text Matching Is Case INSENSITIVE
- Zipping All Code Snippets With ColdFusion Zip Utility Component
- Code Pop-up And Download Features Working Again
- Ben Forta On The ColdFusion 8 Scorpio Tour
- Ask Ben: Getting The Date Based On The Year And Week In ColdFusion
- When Do You Violate The Law of Demeter In ColdFusion OOP Development?
- ColdFusion DateTimeFormat() Utility Function
- Sending Random SMS Text Messages With ColdFusion To Make Her Feel Loved
- Oh Crap! I Just Realized That Color Coding Killed My Code Download!
- Ask Ben: Grabbing World Of Warcraft Data With ColdFusion And CFHTTP
- ColdFusion 8 Release Date Contest!!!
- ColdFusion CFLocation Only Passes Referrer Of The Referring URL
- It Goes From God To Ben Forta To Us
- Ask Ben: Tracking File Downloads In ColdFusion
- Ben Forta Talking About ColdFusion Scorpio In New York City Tonight
- ColdFusion XML Nodes Are Passed By Value, Not By Reference
- WRONG_DOCUMENT_ERR: A Node Is Used In A Different Document Than The One That Created It
- Sorting Really Big Files (Inspired By Sammy Larbi)
- Javascript Exec() Method For Regular Expression Matching
- Ask Ben: Getting Query String Values In JavaScript
- Lenny And Bo, ColdFusion Programmers (Vol. 12)
- Simple ColdFusion Calendar Month Display With Monday As First Day Of Week
- Sending Text Messages (SMS) With ColdFusion And CFMail
- Ask Ben: Shifting ColdFusion's DayOfWeek() Functionality
- ColdFusion Jobs And Developer Circuit's Distributed Flex Widget
- Using A Name Suffix In ColdFusion's CFMail Tag
- ColdFusion UDF For Retrieving Surrounding Dates
- Ask Ben: Truncating The Event Titles In A Calendar Display
- Finally Bought Ayn Rand's Atlas Shrugged
- Getting Week, Month, And Year Dates Based On A Given Date In ColdFusion
- Looping Over Times In ColdFusion
- Getting The Decimal Part Of A Number In ColdFusion
- Getting A Random Date Between Two Given Dates In ColdFusion
- Defining A CSS Selector That Requires A Multi-Class Union
- ColdFusion Optimizing Case Study: Writing Orders To A CSV File
- Testing String Equality Of Any Length Happens Instantly In ColdFusion
- eCard Layout Using Absolute And Relative CSS Positioning
- Spread The Good Word: Send A Free ColdFusion eCard
- Ask Ben: Adding A Column From Second Query To First Query
- Force ColdFusion Server To Recompile A ColdFusion Template
- Frameworks vs. Object Oriented Programming
- Ask Ben: Limit File Upload Size In ColdFusion
- Lenny And Bo, ColdFusion Programmers (Vol. 11)
April 2007
- Using BitAnd() To Determine Odd / Even Rows (Thanks Tony Petruzzi)
- Using Rand() To Generate Random Times In ColdFusion
- Blogging About One Day Of Blog Silence
- And On The Seventh Row, MOD Created 1, And It Was Good
- Ask Ben: Displaying A Simple Event Calendar Month With ColdFusion
- Lenny And Bo, ColdFusion Programmers (Vol. 10)
- Ray's Friday Puzzler: Listing All Possibilities Of A Set
- Performing Disaster Recovery After A ColdFusion Page Timeout Exception
- Determine How Long Your ColdFusion Page Has Been Running Using GetPageContext()
- Determine The Parent ColdFusion Custom Tag Hierarchy Using GetBaseTagList()
- Lenny And Bo, ColdFusion Programmers (Vol. 9)
- Project HUGE: Physical Therapy For My Knees
- Dirty Dancing 20th Anniversary Engagement In Theaters!
- Feed-Squirrel.com Now Has A Forum
- Lenny And Bo, ColdFusion Programmers (Vol. 8)
- Function Scope Binding Depends On Invoking Custom Tag, Not Defining Custom Tag
- Storing Child ColdFusion Custom Tag Data Within A Parent Using GetBaseTagData()
- Any Idea What's Going On With Full As A Goog?
- ColdFusion CALLER Scope Dependent On Invoking Parent, Not Markup Parent
- Lenny And Bo, ColdFusion Programmers (Vol. 7)
- Images.Google.Com Makes Up 1.59 Per Cent Of My Visitor Source
- Ask Ben: Creating A Simple Wish List / Shopping Cart
- Project HUGE: Leg Day And Knee Pain
- Danish Scientists Showed That Spot Reducing Works!
- Lenny And Bo, ColdFusion Programmers (Vol. 6)
- Am I A Senior Programmer?
- Six Degrees Of Ben Forta
- Thank You New York City Fire Department!
- Project HUGE: Jesus Would Have Wanted Me Squatting!
- Lenny And Bo, ColdFusion Programmers (Vol. 5)
- CFSetting RequestTimeout Updates Timeouts, It Does Not Set Them
- Fireworks CS3 Review Over On FireworksZone
- ColdFusion POIUtility.cfc Updates And Bug Fixes
- jQuery Demo: Mad Libs Word Game
- My First Experience With Model Glue
- Lenny And Bo, ColdFusion Programmers (Vol. 4)
- The Shield Start Tomorrow!
- Throwing And Catching A File Using CFHttp For Both Actions
- Ask Ben: Limiting The Amount Of Time A Block Of Code Can Run (Attempt II)
- Ask Ben: Limiting The Amount Of Time A Block Of Code Can Run
- Project HUGE: Spike'ing My Workout
- Ray Camden's Friday Puzzler Has Bested Me (For The Moment)!
March 2007
- Javascript Will Assign And Test A Variable In The Same Statement
- Should I Buy New CS3 Books? Or Used CS2 Books?
- Using Session Timeout And CreateTimeSpan() - Subtle Caveat
- Nylon Technology Presentation: ColdFusion Query Object Primer
- Lenny And Bo, ColdFusion Programmers (Vol. 3)
- Mastering Adobe Creative Suite 3 (How Do I Do That?)
- Strange Numericly Named CFInvokeArgument Behavior
- Ask Ben: ColdFusion Variable Caching And How To Use It (Simple Demo)
- How My ColdFusion Code Snippet Color Coding Works
- Edit.com Partners With cPanel To Provide Web Maintenance Services
- What If ColdFusion Looked Like jQuery
- My ColdFusion Weekly Podcast CFQuiz Answer
- Project HUGE: My Ass Hurts
- ColdFusion Path Usage And Manipulation Overview
- Guess The Coin Amount, Win Cool Prizes
- How Do You Use The ColdFusion CFParam Tag?
- A Better CFParam Tag With A Catch Attribute (Proof Of Concept)
- ColdFusion, Simply Delicious
- Code Monkey - You Watch Now!
- Regular Expression On-The-Fly Testing For ColdFusion, Java, And JavaScript
- CodeChat Beta 1.0 ColdFusion And AJAX Code Base
- Lenny And Bo, ColdFusion Programmers (Vol. 1)
- I Know Ben Forta Is Not Starring In 300
- Calling ColdFusion Function Literals Like You Do In Javascript
- Ask Ben: Getting CSS Class Names From My CSS Data
- When Does jQuery Consider The DOM Loaded And Can I Use It Beforehand
- ColdFusion Support In jQuery
- Transferring HomeSite Configuration Files (HELP)
- Ask Ben: CFTry / CFCatch Issues
- GreaseMonkey: Helping To Make ColdFusion Developer's Journal NOT Suck
- What Happens When I Cache Application.cfc Within The APPLICATION Scope?
- Creating A VARIABLES-Scoped Function Of The Same Name
- I Love That "Oh Wow!" Moment
- Cannot Invoke Method On An Object Of Type coldfusion.runtime.VariableScope With Named Arguments
- jQuery Demo: Build A ColdFusion Guru
- Insane ColdFusion Query Of Queries Madness (PLEASE HELP!)
- Team Schwarzenegger At CFUnited Express New York City (NYC)
- Did You Know That "000" Equals "00A" In ColdFusion?
- My AJAX / ColdFusion Response Framework (er, um ...Methodology)
- JavaScript encodeURIComponent() Escapes "+" Symbol
- JavaScript Does Not Escape "+" And ColdFusion Does Not Like This One Bit
- Code Chat Beta 1.0 Update - Ping Me Link
- Kinky Solutions Code Chat Beta 1.0
- Google Analytics Actually Works In Alaska!
- Ask Ben: Displaying A Query Vertically Instead Of Horizontally
- Geico On ColdFusion
- JSON: Unterminated String Literal Error
- How Do I Get A Pointer To A Built In ColdFusion Method?
- My Wrists Are Killing Me
- What Has Two Thumbs And Is Attending CFUnited Express NYC... THIS GUY!
- Searching Directories And File Content Using ColdFusion
February 2007
- QueryAddRow(), Date/Times, WDDX, And ORDER BY, OH MY!
- David Leventi Photography Is Now Live - Life Back To Normal
- Ask Ben: Creating An Archive Folder / File List (Part II)
- Referring To The Proper Row Of The Outer CFLoop (With Nested CFLoops)
- Sleeping A Thread Pauses The CFSetting Request Time Out
- Printing The Entire jQuery API As A PDF (Using CFDocument And XML Parsing)
- Creating A Centralized Point Of Entry For ColdFusion Scheduled Tasks
- Josh Adams Of New Atlanta On AJAX And Blue Dragon At NY CFUG
- Reinventing The Wheel As A Reflection Of Skill Level (RE: Mark Mandel)
- Dealing With RequestTimeOut And The OnError Application Event Method (Help Me)
- ColdFusion Method Attribute Output=True Does Not Jive With EnableCFOutputOnly
- ColdFusion Method Definitions Can Come After The Code That References Them
- I Am Strongly Against The Rel=NoFollow Link Attribute
- jQuery And Ext Partner To Deliver Integrated JavaScript And UI Features
- Completely Awesome: Whack Your Boss
- Populating An Existing, Formatted Excel Document Using ColdFusion And POI
- Ask Ben: Form Processing Demo With Anti-Spam Features
- Happy Valentines Day ColdFusion
- How To Easily Format An Excel Document Generating With POI And ColdFusion
- It's Not Spam At This Point, It's Psychological Ware Fare
- Sorry If I Am Delayed In Getting Back To Anyone
- Project HUGE: The Psychological Problem With Losing Weight
- My Non-Working Anti-Spam Solution And How It Works (Or Rather, Doesn't Work)
- Yikes! New Anti-Spam Technique Not Working!
- New ColdFusion Anti-Spamming Technique In Effect
- Boyan's Tremendous Idea For Downloading Code Snippets
- Josh Adams Of New Atlanta Gives An Introduction To AJAX For CFML Developers At NYCFUG
- Is It True That If You Don't Use It, You Lose It?
- Ask Ben: Using POI Utility To Move Excel Data Into A Database
- ColdFusion Arguments Object Can Act As Ghetto Pass-By-Reference Array
- Hey, Where'd That Goofy Bastard Go?
- Shloime Henig Points Out HUGE Error In My Current Anti-Spam Technique
- You Really Shouldn't Be Here jQuery, My Wife Might Begin To Suspect Something
- Napoleon Dynamite On ColdFusion
- Steve Of Flagrant Badassery Schools Me In Regular Expressions
- Punxsutawney Phil Predicts An Early Spring!
- One Of The Best Regular Expression Tutorials I Have Come Across
- Congratulations To Edit.com, Steve Grushcow, And David Ries
- Taxes Done And Filed
January 2007
- Creating An XML Representation Of A Directory (And Sub-Directories) Using ColdFusion
- Replaced My Own iPod Battery With NuPower Battery
- Parsing CSV Values In To A ColdFusion Query
- Internal Query Processor Error: The Query Processor Ran Out Of Stack Space During Query Optimization
- Using XML Style Name Space Attributes In ColdFusion
- Parsing CSV Values In ColdFusion While Handling Embedded Qualifiers And Delimiters
- Could Not Unlock The Names Lock "GOOGLE.TXT" Because No Lock Is Known By That Name
- SQL Pivot Tables Are Rockin' Awesome (Thanks Rick Osborne)
- Project HUGE: Off To A Very Slow But Promising Start
- Stripping XML Name Spaces And Node Prefixes From ColdFusion XML Data (To Simplify XPath)
- Next Generation Pediatrics Office Is Amazing
- Caution: Java String::Split() Does Not Create A ColdFusion Array
- String Tokenizer ColdFusion Component That Can Handle Qualified Fields
- Ask Ben: Cleaning Two Digit Years Using Javascript And Regular Expressions
- Parsing CSV Values Using A Standard File Format
- Generating Random Passwords In ColdFusion Based On Sets Of Valid Characters
- Woohooo! Finally Got My Related Blog Entries Up And Running
- Required Changes To My RSS Feed Format
- Adding Basic CSS Support To My POI Utility ColdFusion Component For Excel Creation
- Parsing CSV Data Using ColdFusion
- Parsing And Keeping A CSS Model Using ColdFusion
- January, The Month From Hell And Slow Blogging
- Is That Ben Nadel In Your Pocket, Or Are You Just Viewing MXNA?
- ColdFusion Community ToolBar For FireFox (and that other browser)
- My Sincerest Apologies To Brian Simmons, CentraSoft.Com, And To The Entire ColdFusion Community
- SQL Server NOLOCK / ROWLOCK Directives To Improve Performance
- Boyan Kostadinov's Totally Sweet CFQuickDocs Bookmarklet
- ColdFusion Component Wrapper For POI To Read And Write Excel Files
- SQL ISZERO() And NULLIF() For Dividing By Zero
- Unfrozen Caveman Lawyer On ColdFusion
- Community-Driven ColdFusion Certification Practice Testing
- Cannot Use ColdFusion CFQueryParam With SQL TOP Directive
- Freezing Row/Column Panes In Excel XML
- Creating Excel Documents With ColdFusion And XML - GOTCHA!
- Boyan Kostadinov Makes An Excellent Suggestion
- ColdFusion CFQuery MaxRows Not A Bad Compromise When TOP Not Available
- I Am Soooo In The Wrong Profession; I Should Have Been A Bad-Ass Ninja!
- Ask Ben: Creating An Archive Folder / File List
- Flex Renamer - Most Awesome Bulk File / Folder Regular Expression Renamer Ever
- Merging ColdFusion SQL Debugging And Query Params With Javascript
- Introduction To Regular Expressions Presentation Notes
- A Case Against ColdFusion Custom Tag Page Wrappers
- RAGE: Controller And Action ColdFusion Components
- Post-Christmas Raffle Winners
- RAGE: Letting The Beast Out (aka An Introduction To Relative Action Group Execution)
- 2007 New Years Resolutions
- Project HUGE In 2007
December 2006
- Post-Christmas Raffle... Any Takers?
- Getting Ready For The ColdFusion Post-Christmas Raffle
- Leveraging FireFox's Restore Session Feature To Control RAM Usage
- The Pragmatic Programmer: From Journeyman to Master
- ColdFusion File Explorer - Round One
- Writing Enormous Files Based On Massive Record Sets In ColdFusion
- Team Nylon : Interface Driven Architecture Proof Of Concept (Design File / Code / Demo Application)
- Team Nylon : Interface Driven Architecture Proof Of Concept (POC)
- How Do You People Deal With Holidays?
- Does Anyone Else Get Confused By A Purposefully Slow RIAs?
- Creating An ASCII Ruler In ColdFusion
- Ask Ben: Looping From 'A' To 'Z' In ColdFusion
- Invoking My First Web Service With ColdFusion (Amazon Web Service)
- Christopher Walken On ColdFusion
- Breaking Enormous CSV Files Into Smaller CSV Files
- Creating And Streaming Simple Microsoft Excel Files With ColdFusion
- Problems With The Organic Model Of Distributed Configuration
- Clark Valberg On Interface Driven Architecture Methodology
- Using ColdFusion Structures To Remove Duplicate List Values
- Import Lesson: Always Codify Change Requests From Clients
- My First ColdFusion Web Service
- A Small Calendar Utility For Reference
- My Requirements For A Proper Page Design / Rendering
- Reading A Microsoft Excel File In ColdFusion Using JExcel API
- Making ColdFusion's QueryNew() More Readable
- ColdFusion CFQueryParam List Attribute Is Sweeet!
- Loading Java Classes With coldfusion.runtime.java.JavaProxy
- Fusion Authority Quarterly - Issue 2 - Most Excellent
November 2006
- XML Config Files And The Heuristic Exception
- Overriding Built-In ColdFusion Methods With Custom ColdFusion Component Methods
- ColdFusion Regular Expressions Match New Line Using "."
- SELECT TOP And ColdFusion Query Of Queries
- I Have Resorted To Checking Comment Content (For Spam)
- Streaming Text Using ColdFusion's CFContent Tag And The Variable Attribute
- Are All Passionate People Selfish?
- Thanksgiving Is The Enemy Of Project HUGE
- Regular Expression Finds vs. String Finds
- Damn Spam Bots! Too Smart!
- Determining Which Function Called This Function (Using ColdFusion)
- Fully Accessible Spam-Form-Submission Blocking Using ColdFusion And (X)HTML (Version III)
- SQL Data Types Returned From GetMetaData() Are Not Available For QueryNew() And Why That Should Scare You
- ColdFusion CFSwitch Tag, CFCase Order, And Performance
- Bravo To FireFox's Restore Session Feature
- ColdFusion QueryNew(), JavaCast(), And Date/Time Values
- Project HUGE : Phase II / Week 7
- Using ColdFusion, HTML, And CSS To Stop Spam Form Submissions (Revisited)
- Amazing JavaScript Port Of ColdFusion's CFDump Tag
- National Do Not Call Registry
- My Coding Methodology - Understanding The Madness And The Man Behind It
- ColdFusion Custom Tags As Page Wrappers
- ColdFusion Custom Tags And High Coupling
- Application.cfc Scoped Functions Are Stored In Page VARIABLES Scope
- Checking To See If CFFlush Has Already Been Executed Part II
- ColdFusion Data Types From Different Sources (And How ColdFusion Sees Them)
- Getting The Requested URL From The Page Request Object (Servlet) Without Using CGI
- Posting Form Values With The ColdFusion CFHttp And CFHttpParam Tags
October 2006
- GetPageContext.Include() DOES Parse Files And More (Thanks Charlie Arehart)
- Ask Ben: Reading In A File Using CFFile And CFInclude
- This Kitty Is Too Cute!
- Project HUGE : Weeks 5 & 6
- CFSilent vs. CFContent Reset = True
- Perhaps The Most Inspirational Speech Ever
- Newspapers Can't Use Liquid Layouts... But Is It Good For The Web?
- Confirmed Availability Of Java String Methods In ColdFusion
- ColdFusion Query of Queries Creates BIGINT Values When Hard Coding Integers
- CGI.hot_n_sexy Does Not Throw A ColdFusion Error
- Does Mentoring Exist Any More?
- The Fountainhead, An Amazing Book
- Programmatically Deleting Scheduled Tasks In ColdFusion
- Strange ColdFusion Application.cfc Error Update - It Works AND It Breaks
- PLEASE HELP! Why Is This Application.cfc Throwing Errors?
- ColdFusion Error Thrown When Application.cfc Has Method Named "Trace"
- ColdFusion Application.cfc OnRequestStart Returns False To Kill Page Load
- ColdFusion CFQuery Tag To Pull From Two Data Sources (a.k.a. Faking It With Bad Programming)
- My First GreaseMonkey Script For Full As A Goog
- Creating ColdFusion Components In Parent Directories (From Sub Directories) Without Mapped Paths
- Project HUGE : Phase II / Week 4
- Skin Spider : Zip ColdFusion Code Files Available For Download
- ColdFusion RE NoCase Functions vs. Case Insensitive RegEx Flag
- Awesome ColdFusion Custom Tag Tip : CFExit Method / Loop
- Pinging Your News Aggregators
- Full As A Goog Aggregation - Fun While It Lasted
- ColdFusion CFQuery BlockFactor Is Not Impressing Me
- Andy Matthews Counters My FireWorks Rant
- How Do I Call Methods On ColdFusion Components In Java
- My Own Hello World Java Class For ColdFusion
- Am I The Only One Who Likes White Space In My ColdFusion Code?
- Project HUGE : Week 3 / First Cycle Completed
- ColdFusion CFDump, Circular References, And 500 null
- ColdFusion CreateObject() vs. Java NewInstance()
- Loading Local Java Class Files Using URLClassLoader
- Nesting CFLoop Tags Of The SAME Query... Hmmmm
- Added Cut-And-Paste Support For Code Snippets
- My ColdFusion Color Coding Solution Explanation
- My Compromise On ColdFusion Code Snippet Color Coding
- I Got Mentioned On The ColdFusion Weekly Pod Cast! (And A Note On Debugging)
- Checking To See If CFFlush Has Already Been Executed
- ColdFusion's Auto-Struct-Generation Caveat
- Creating Stand-Alone ColdFusion Templates With Embedded Images
- Ask Ben: Looping Through The Days In A Month
- Ask Ben: Getting A Random Date From A Date Range In SQL
- Ask Ben: Testing The Existence Of A Query Column In CFScript
- Ask Ben: Iterating Over The Characters In A String
- Project HUGE : Week Two Successfully Completed
September 2006
- Non-Greedy Regular Expression Misunderstanding
- Case Insensitive Java Regular Expressions - How Did I Miss That!?!
- CFSetting Custom Tag Snippet
- Creating A ColdFusion CFSetting Tag With Open / Close Tags
- Careful When Trying To CAST DATETIME AS INT
- Nesting ColdFusion Custom Tag Snippet
- ColdFusion Basics : Nesting Custom Tags
- Restarting Windows Explorer Without Restarting Your Computer
- ColdFusion XmlParse() Error - Content Is Not Allowed In Prolog
- Project HUGE : Week One Complete
- Handling 404 Errors in ColdFusion (via IIS Throwing 404)
- Caution: ColdFusion Zero Date vs. SQL Zero Date
- SQL Optimization And ON Clause vs WHERE Clause
- ColdFusion ExpandPath() And GetCurrentTemplatePath()
- Project HUGE : Physical Therapy Is Over
- Oh Baby, It's So Hot When You Paginate! (aka Paginating Results In ColdFusion)
- Starting A Sample Project With An XML Database
- Arrays By Reference In ColdFusion .... Sort Of
- Project HUGE : Getting A Baseline For Legs
- Java Exploration in ColdFusion: java.io.LineNumberReader
- Project HUGE : 'Cause It's About Time
- Moving Away From VARIABLES And Getters / Setters
- Creating Web Site Thumbnails Using ColdFusion And WebShot v.1
- Bionic Arms - You Have To Check This Out
- Changing The Way I Post Code Snippets
- Structs As Query Indexes, Speed, And Rick Osborne
- Ask Ben: ColdFusion Optimization, A Case Study
- CFDocument Errors And Resolving DNS
- Give Me Email Feed Back
- Formatting Emails And Web 2.0
- Hotmail Blocks Emails Send With Inline Images
- Creating In-Memory Tables In SQL For Joining And Sumarizing
- Trying Eclipse Again And 15 Minutes Later Already Irritated
- My ColdFusion User Defined Function Library Structure
- Issues with Back Slashes (\) And Java's Matcher::AppendReplacement() Method
- Issues with Dollar Signs ($) And Java's Matcher::AppendReplacement() Method
- Creating More ColdFusion Solutions For XStandard Web Services
- Demonstration Of Date Object Formatting Using Date Prototyping
- CFInclude Templates Are Parsed Regardless Of File Type
- Large Mistake In My Session Management Logic
- RSS Feed Code Samples Now Use PRE Tags
- I Don't Understand ColdFusion GetPageContext() And Include()
- Shlomy Gantz Starts New York FLEX 2.0 User's Group
- Client Flattery Gives Me Warm Fuzzies
- XStandard Support Weighs In On The Color Coding Issue
- Neat Trick With ValueList()
- I Finally Beat Frappr Maps In Google
- ColdFusion Query Of Queries Speed And Database Calls
- Certification And Logo Have Arrived :)
- Setting ColdFusion Query Cell Values With JavaCast() Fixes Errors
- ColdFusion String Comparison: Compare() vs. Equals() vs. CompareTo()
- Our Deepest Fear Is Not That We Are Inadequate
- Gotta Come Up With A Better Learning Plan
- Relational Database Management Systems (RDBMS) Are In Vogue
- Mysterious Form Field Truncation That Doesn't Throw Errors
August 2006
- ColdFusion Screen Shots: GIF vs. JPG
- Blog Entry Comment Subscriptions Up And Running
- Quick Note On IsDate() vs. IsNumericDate()
- ColdFusion Date Math Faster Than Date Methods... And Other Date/Math Ramblings
- Color Coding My Code Samples - UGGG!
- Thanks To David Ries For Google AdWords Help
- Ben Forta On Java Methods In ColdFusion
- My New Dell Inspiron E1505 Centrino Duo Arrived!
- Creating A PING-Like Browser Bookmark For Feed-Squirrel
- Tim Cracked The GMail - CFMailPart Puzzle!
- Ask Ben: Counting Spaces In A Given String
- Ask Ben: Grabbing Google Results with CFHttp
- Worth A Mention... Bro Rape
- ColdFusion Cheat Sheet: Ripping HomeSite's Help Directories
- ColdFusion Boolean Evaluation And #( 3 + "Yes" )# = 4
- Spiders Are Tricking My Session Management
- Michael Dinowitz On Type Validation And Going To Hell
- Using ColdFusion Query's Underlying Java Methods For Query Manipulation And Logic
- Tobe Goldfinger With An Excellent Debugging Tip
- Calling Java Class Methods Directly From ColdFusion Objects
- It's The Journey That Makes Us Happy, Not The Destination
- Ask Ben: Creating Large Random Strings In Javascript
- Flex 2.0 And ColdFusion MX 7 Seminar In New York
- How I Stop Spammers On My ColdFusion Blog
- SQL COALESCE() Very Cool, But Slower Than ISNULL()
- SQL COALESCE() Like ISNULL() On Steroids ... With Caveats
- ColdFusion Query Error: Value Can Not Be Converted To Requested Type
- Adding Numbers To Date/Time Values
- SQL Date/Time BETWEEN And Comparison Operators Work With Floats
- ColdFusion JavaCast() Adds No Performance Hit
- GMail Chooses ONLY Non-HTML Mail If Given The Option
- SQL Result Dump Is Formatted
- Shoulder Getting Better... Muscles In Future?
- Anonymous ColdFusion Salary Poll
- Applying Masks Using Regular Expressions In Javascript
- Hot Town, Summer In The City
July 2006
- Client Flattery Is Good For The Soul
- Destroying ColdFusion Variables Using JavaCast()
- Switch Statements Not Case Sensitive
- Javascript Short-Hand IF Within Object Notation
- Lorem Ipsum Donation
- Ask Ben: Averaging Date/Time Stamps In SQL
- SQL IN Directive Much Faster Than Multiple OR Clauses
- Problems With Storing Date And Time Separately In SQL Server
- Ask Ben: Selecting Parts of a Date/Time Stamp In SQL
- XStandard Web Services And Random URL Parameters
- XStandard XHtml Code Templates
- Responsed SOAP Message Doesn't Contain XStandard Namespace
- ColdFusion MX7 Tags For HomeSite 5.5
- CFLoop Attributes Evaluated Only Once
- XStandard And Debugging ColdFusion Web Services
- Happy Birthday Nylon Technology
- XStandard And Browser Caching
- XStandard Web Services And ColdFusion Security
- ColdFusion Session Management Revisited... User vs. Spider III
- The '..' Characters Are Not Allowed In The Path Parameter For The MapPath Method
- Ask Ben: Processing A Query In Java
- Ask Ben: Appending Times To Date/Time Objects
- Happy Freakin' Birthday Si
- Added Custom RSS 2.0 Feeds
- Fixed Posting Comments and Ask Ben
- Ask Ben: Javascript String Replace Method
- ColdFusion Arrays Passed By Value
- Ask Ben: Checking The ColdFusion Version
- ColdFusion 500 Null Error Revisited
- Ben Nadel's RSS Feed In Full Effect
- Client Flattery Is Good
- Using CFLoop To Loop Over ColdFusion Dates
- Invalid token '\n' found on line 452 at column 0
- Ask Ben: CFHttp For Web Mining And Image Hot Linking
- ColdFusion Query of Queries: A Godsend
- Four Heads Is Better Than One
- Getting Back on the Horse
- Ask Ben: Comparing Only Times in SQL
- Google Analytics Testing
- SQL AND / OR Order of Operations
- Javascript Bible Update
- Ask Ben: Converting a Query to an Array
- Desire to Learn, No Time
- Getting Only the Date Part of a Date/Time Stamp in SQL Server
- Creating Random Dates in ColdFusion: RandDateRange( dtFrom, dtTo )
- My Brain Is Wicked Cool
- RSS Feed Almost Up And Running
- Need For A Better Javascript Prototype Library
- Handling NULL Values In ColdFusion
- Finding Template Execution Stack in ColdFusion
- ColdFusion Query Argument Reference Can Be Confusing
- ColdFusion QueryAppend( qOne, qTwo )
June 2006
- Co-Workers Are Awesome
- ColdFusion Query of Queries: Uses NULL Values, Returns Empty Strings
- Encountered "(. Incorrect Select Statement, Expecting a 'FROM', But Encountered '(' Instead, A Select Statement Should Have a 'FROM' Construct.
- AJAX Cool, Interface Hard
- Access Keys For Web Usability
- Using ColdFusion to Handle 404 Errors (Page Not Found) On Development Server
- Good Family Values: Click Is Classic Adam Sandler
- Nacho Libre Disappointing
- Superman Not Super Exciting
- Getting ColdFusion And XStandard Kickin' Into High Gear
- CFERROR ColdFusion Error Template Will Not Catch Its Own Errors
- That Sweet Sweet Feeling
- ColdFusion: Error Occurred While Processing Request 10 >= 10
- (CF)JSON - My Own ColdFusion Version For AJAX
- JSON: Minor But VERY Important Detail Creating Syntax Error: Invalid Label
- Head Rush AJAX by O'Reilly
- Javascript Object Notation (JSON) Kinky-Style
- Javascript Object Notation (JSON) Is What I Meant
- ColdFusion & AJAX: Converting ColdFusion Objects to Javascript Objects
- LOCAL Variables Scope Conflicts With ColdFusion Query of Queries
- ColdFusion Error: The Column Name "3a" Is Invalid
- Updates To the ColdFusion XStandard Web Servicescoldfusion browser wysiwyg xhtml
- Learning AJAX From the Ground Up
- Ooops, Links Not Working
- Maintaining Javascript Pop-Up Window Communication Across Window Opener Page Loads
- Search Engine Optimization... Another Go Round
- Browser Mouse Gestures FireFox Extension/Plugin
- What Search Engine Spiders See
- Why NULL Values Should Not Be Used in a Database Unless Required
- 500 null : Mysterious ColdFusion Error
- Search Engine Optimization... Continued
- Null Pointers Are Another Name For Undefined Values
- SQL LIKE Clause Case Sensitive in ColdFusion MX Query-of-Query
- ColdFusion SQL Error - [Table ....] Is Not Indexable By Name
- XStandard ColdFusion Web Services Solution
- Java.awt.image.BufferedImage and Corrupt Images
- Updated Session Management And Web Spiders & Bots
- CFDump and CFAbort Makes Debugging Inside CFSilent Possible
- Applications That Have Changed My Life
- Meeting Clients Face-to-Face Is A Must!
- CreateDate() Much Faster Than DateFormat() For Date-Only Creation
- The Fountain Head by Ayn Rand
- SQL UNION ALL Does Not Check Duplicates
- SQL Query Order of Operations
- SQL LIKE Directive Faster Than LEN() Method
- Google Homepage Messes Up FireFox (sometimes)
- Short-Circuit Evaluation Is Fast
May 2006
- Super Busy Lately
- Comprehensive ColdFusion Tag/Function List
- Running Multiple Instance of Homesite
- StructAppend() the Forgotten Function
- CFMail: CFMAILPARAM Used to Embed Images in Email
- Sticky Notes For Important Postings
- [Macromedia][SQLServer JDBC Driver]Syntax error at token 0, line 0 offset 0
- The Processing Instruction Target Matching "[xX][mM][lL]" is Not Allowed
- FireFox Fires OnClick Handler for Submit Buttons
- Using Methods in Javascript Replace Method
- Javascript Scopes and Variable Binding
- Not Enought Time to Learn
- Custom Laptop Paint Job by Color Ware PC
- Javascript Regular Expression (RegExp) Multiline Flag Not Universal
- Calling Sub-Function in Javascript Different in Safari
- Google AdSense Up and Running
- Afraid of Our Own Bodies
- Helping Google-Users Find Answers
- Google AdSense Coming Soon
- Membership and First Donation to WNYC Radio
- Solving Your ColdFusion Problems Without Permission
- Going Pro With the XStandard Text Editor
- New Employee Aptitude Test
- Google Maps Not Working in Internet Explorer (IE)
- Hidden Input Ordering in FireFox Form Submission
- Turning Off Session Management for Web Spiders
- What Happened to www.CFTemplate.com?
April 2006
- Meetup.com Groups Are Sweeeeet.
- Great XHtml Editor, Even Better Support Team
- Working Around Hot Linking Restrictions
- Getting Group By Count In Left Outer Join
- Search Engine Optimization (SEO): Revisiting
- Wolf Creek a Total Waste of Time
- Getting Back Into The Gym
- MIT Students Go to Las Vegas
- Blog Updates
- If You Think Flattery Will Get You Anywhere...
- Turning Off and On Identity Column in SQL Server
- ColdFusion Runtime Abort Exception
- 2006-07 Top 250 Law Firms Web Site Awards
- Dereferencing Javascript Variables - Revisiting
- Google Finally Indexed the Site
- Dereferencing Javascript Variables in Dynamic Methods
- Loading Java Classes on the Fly
- Woohoo!
- Search Engine Optimization and Error Catching
- QueryNew() Type Casting Issues With Manually Altered Queries
- Hacking Is Lame
- Data Mining Document Text for Searching
- Thanks to the Texas Web Developers
- Got My Search Up and Running
- The Lessons of Failure
- The Problem with AJAX
- CF_SQL_DATE Issues with MS SQL Server 2005
- Over-Complicating Getting the Rest of List
- FireFox and XStandard CSS File Linkage
- Tips for Building a Better Site
- Did I mention how cool this is??
- Dude! I just posted this!