41554 blogs · [ { "id": "01a0d567-c597-705e-88c2-1b41f2cd6ab0", "title": "Debugging Against Your Own Prediction Engine", "url": "https://benhowdle.im/debugging-against-your-own-prediction-engine.html", "published_at": "2026-09-16T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26c9f783c934", "title": "Determining Determinism, Non-Deterministically", "url": "https://benhowdle.im/determining-determinism.html", "published_at": "2026-07-23T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26c9f7d0244c", "title": "Contract-Driven Development: Write the Truth Once", "url": "https://benhowdle.im/contract-driven-development.html", "published_at": "2026-07-15T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26c9f8324023", "title": "Hot Potato: How Projects Actually Get Shipped", "url": "https://benhowdle.im/hot-potato-project-delivery.html", "published_at": "2026-07-10T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26c9f8677eaf", "title": "Meet Somna", "url": "https://benhowdle.im/meet-somna.html", "published_at": "2026-01-22T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26c9f87ba802", "title": "So You're About To Do Your First Conference Talk", "url": "https://benhowdle.im/first-conference-talk.html", "published_at": "2026-01-05T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26c9f956a74e", "title": "Amygdala's Determinism, Good Will Hunting & Gut Feel: A Playbook for Developers Building With Intelligence", "url": "https://benhowdle.im/amygdalas-determinism-gut-feel.html", "published_at": "2025-11-18T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26c9fa4ac057", "title": "Building Devdle: Notes from the Neon Arcade", "url": "https://benhowdle.im/building-devdle.html", "published_at": "2025-10-15T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26c9fae900b4", "title": "fintech_devcon 2025 Talk: Securing a Banking Platform's API + UI", "url": "https://benhowdle.im/fintech_devcon-2025-securing-a-banking-platforms-api-and-ui.html", "published_at": "2025-09-16T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26c9fb34f57d", "title": "AI Struggles To Help You Think", "url": "https://benhowdle.im/ai-struggles-to-help-you-think.html", "published_at": "2025-07-04T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26c9fb5b9cee", "title": "The Problem → Solution → Impact Gap", "url": "https://benhowdle.im/problem-solution-impact-gap.html", "published_at": "2025-04-17T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26c9fbeeaf5d", "title": "Principles & Implementation: Lessons in Surviving the Transient Nature of Software Engineering", "url": "https://benhowdle.im/principles-and-implementation.html", "published_at": "2025-04-02T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26c9fc9d941e", "title": "Solving vs. Augmenting: The Developer's Dilemma in a New Codebase", "url": "https://benhowdle.im/find-vs-figure-out.html", "published_at": "2025-03-13T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26c9fd28b0e2", "title": "How I Led a High-Performing Engineering Team Without Micromanaging", "url": "https://benhowdle.im/leading-an-engineering-team.html", "published_at": "2025-03-05T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26c9fde12472", "title": "The Software Engineer Spectrum: Speed vs. Accuracy", "url": "https://benhowdle.im/software-engineer-spectrum.html", "published_at": "2025-02-25T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26c9fe5af92b", "title": "Migrating 160,000 Lines of Production Banking JavaScript to TypeScript with Zero Downtime", "url": "https://benhowdle.im/migrating-js-to-ts-zero-downtime.html", "published_at": "2025-02-19T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26c9fe5c953b", "title": "Getting Real(about)Time", "url": "https://benhowdle.im/getting-real-about-time.html", "published_at": "2025-02-12T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26c9fe87aed7", "title": "Does it work, how you want it to, most of the time?", "url": "https://benhowdle.im/does-it-work-how-you-want-it-to-most-of-the-time.html", "published_at": "2025-01-29T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26c9ff2ccdef", "title": "Securing a Banking UI & API: Lessons From a Fintech CTO", "url": "https://benhowdle.im/securing-a-banking-system.html", "published_at": "2025-01-28T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26c9ff50bfdd", "title": "10 Ways I Approach Engineering Leadership That Doesn't Leave Me Hating Myself", "url": "https://benhowdle.im/engineering-leadership.html", "published_at": "2025-01-14T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca0017661c", "title": "Entangled Interfaces: A Quantum Leap in UI Engineering with React", "url": "https://benhowdle.im/entangled-interfaces.html", "published_at": "2025-01-10T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca010c0fde", "title": "Understanding Systems: A Journey Through Chaos, Meaning, and Observation", "url": "https://benhowdle.im/understanding-systems.html", "published_at": "2024-12-11T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca01be2110", "title": "Chaos Engineering: Jurassic Park & Distributed Systems", "url": "https://benhowdle.im/chaos-engineering-applied.html", "published_at": "2023-03-28T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca01eaddd4", "title": "The 3-Phase Time-off Schedule for Contractors", "url": "https://benhowdle.im/3-phase-time-off-schedule-for-contractors.html", "published_at": "2020-11-05T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca020da71d", "title": "On Starting", "url": "https://benhowdle.im/on-starting.html", "published_at": "2018-06-15T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca02dac3d4", "title": "Notes on using Vue and React in production", "url": "https://benhowdle.im/notes-on-using-vue-and-react-in-production.html", "published_at": "2018-03-23T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca03cf8f13", "title": "Making Jekyll workflow a bit better", "url": "https://benhowdle.im/making-jekyll-workflow-a-bit-better.html", "published_at": "2017-08-17T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca04907608", "title": "Creating a real-time test automation platform for Cisco with React & WebSockets…and React Native", "url": "https://benhowdle.im/creating-a-real-time-test-automation-platform-for-cisco-with-react-websocketsand-react-native.html", "published_at": "2016-07-28T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca04c7de3a", "title": "Hello Speculo - easy colour palette visualisation", "url": "https://benhowdle.im/hello-speculo-easy-colour-palette-visualisation.html", "published_at": "2016-07-24T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca05a9a58e", "title": "Everything Changes But You", "url": "https://benhowdle.im/everything-changes-but-you.html", "published_at": "2015-03-24T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca06197106", "title": "Creating a dynamic search page for your Jekyll blog using JavaScript", "url": "https://benhowdle.im/creating-a-dynamic-search-page-for-your-jekyll-blog.html", "published_at": "2014-11-11T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca067d8e14", "title": "iOS for Web Developers: Building Permeate", "url": "https://benhowdle.im/ios-for-web-developers-building-permeate.html", "published_at": "2014-04-25T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca06fd54fc", "title": "Building a Backendless Web App in 2 Hours", "url": "https://benhowdle.im/building-a-backendless-web-app-in-two-hours.html", "published_at": "2014-03-02T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca07a535b2", "title": "Easy Peasy Equal Heights", "url": "https://benhowdle.im/easy-peasy-equal-heights.html", "published_at": "2014-01-29T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca07d5415c", "title": "News vs. Information Seeking", "url": "https://benhowdle.im/news-vs-information-seeking.html", "published_at": "2014-01-03T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca087ece0c", "title": "Hosting your Blog or Portfolio on GitHub", "url": "https://benhowdle.im/hosting-your-blog-or-portfolio-on-github.html", "published_at": "2013-11-21T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca08cc19f5", "title": "Rewriting History with Backbone.js", "url": "https://benhowdle.im/rewriting-history-with-backbone-js.html", "published_at": "2013-11-13T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca08da5b96", "title": "Options are the devil", "url": "https://benhowdle.im/options-are-the-devil.html", "published_at": "2013-10-29T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca098bc9fa", "title": "Too Scared To Write A Line Of Code", "url": "https://benhowdle.im/too-scared-to-write-a-line-of-code.html", "published_at": "2013-10-23T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca0a64a058", "title": "The Principle of Least Power", "url": "https://benhowdle.im/the-principal-of-least-power.html", "published_at": "2013-09-26T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca0b31a312", "title": "Make it Personal", "url": "https://benhowdle.im/make-it-personal.html", "published_at": "2013-09-19T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca0b68be8d", "title": "Open Source is kinda weird", "url": "https://benhowdle.im/open-source-is-kinda-weird.html", "published_at": "2013-08-25T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca0c67fc1e", "title": "A Backbone View to a Kill", "url": "https://benhowdle.im/a-backbone-view-to-a-kill.html", "published_at": "2013-06-09T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca0d652ff2", "title": "Jekyll In 15 Minutes", "url": "https://benhowdle.im/jekyll-in-15-minutes.html", "published_at": "2013-06-02T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca0e0022e8", "title": "Patterns for Managing Large Scale Backbone Applications", "url": "https://benhowdle.im/patterns-for-managing-large-scale-backbone-applications.html", "published_at": "2013-03-24T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca0ea92d42", "title": "useCapture demystified", "url": "https://benhowdle.im/useCapture-demystified.html", "published_at": "2013-03-03T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca0f6305ce", "title": "The Unseen Revisions", "url": "https://benhowdle.im/the-unseen-revisions.html", "published_at": "2013-02-15T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca0f6fa315", "title": "setTimeout - a temporary hack", "url": "https://benhowdle.im/settimeout.html", "published_at": "2013-01-29T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca10676bf3", "title": "APIs", "url": "https://benhowdle.im/apis.html", "published_at": "2013-01-24T00:00:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca10929ffa", "title": "On Heisenberg.js", "url": "https://benhowdle.im/on-heisenberg-js.html", "published_at": "2013-01-11T19:12:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca110f572d", "title": "Underlying Passion", "url": "https://benhowdle.im/underlying-passion.html", "published_at": "2013-01-05T14:12:00+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca120bfc78", "title": "Mobile Last", "url": "https://benhowdle.im/mobile-last.html", "published_at": "2012-12-30T20:28:37+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca129a6dc7", "title": "Twitter Bootstrap", "url": "https://benhowdle.im/twitter-bootstrap.html", "published_at": "2012-12-17T20:28:37+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca13832ff0", "title": "Smashing Magazine's The Mobile Book", "url": "https://benhowdle.im/smashing-magazines-the-mobile-book.html", "published_at": "2012-12-11T21:04:15+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca14255488", "title": "Using jQuery custom events in your Object Literal and Observer Pattern applications", "url": "https://benhowdle.im/using-jquery-custom-events-in-your-object-literal-and-observer-pattern-applications.html", "published_at": "2012-12-03T23:36:50+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca14d44b14", "title": "From jQuery to JavaScript and back again", "url": "https://benhowdle.im/from-jquery-to-javascript-and-back-again.html", "published_at": "2012-10-30T20:57:36+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca14d525e6", "title": "Set up your own GitHub page", "url": "https://benhowdle.im/set-up-your-own-github-page.html", "published_at": "2012-10-21T23:48:58+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca158fd026", "title": "The obsession with responsive websites", "url": "https://benhowdle.im/the-obsession-with-responsive-websites.html", "published_at": "2012-09-06T20:31:13+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca15e1573e", "title": "A quick start JavaScript class structure", "url": "https://benhowdle.im/a-quick-start-javascript-class-structure.html", "published_at": "2012-07-22T11:25:37+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca1633ec98", "title": "Hire Yourself, You Won't Look Back", "url": "https://benhowdle.im/hire-yourself-you-wont-look-back.html", "published_at": "2012-07-05T23:02:02+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca165b952a", "title": "Say Yes To Everything", "url": "https://benhowdle.im/say-yes-to-everything.html", "published_at": "2012-07-03T20:29:15+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca16d8421d", "title": "Others Are Better Than You, Get Over it", "url": "https://benhowdle.im/others-are-better-than-you-get-over-it.html", "published_at": "2012-06-24T19:21:02+00:00" }, { "id": "01a08c76-e9ba-735c-8843-26ca17477f3f", "title": "Newcomers to web design, don't be put off", "url": "https://benhowdle.im/newcomers-to-web-design-dont-be-put-off.html", "published_at": "2012-01-05T21:33:14+00:00" } ] posts Claim your blog
Back to benhowdle.im
Blog · corpus.blog/blogs/benhowdle.im/posts

benhowdle.im

benhowdle.im

2026

2025

2024

2023

2020

2018

2017

2016

2015

2014

2013

24 Jan 2013

2012