Article Publication History
I first started developing the blogging engine for Pony Foo around mid-2012. I had just read The Pragmatic Programmer and I was looking for a challenge. I built the engine using Node.js and that’s how I got into server-side JavaScript. I really enjoyed publishing articles on a blog, even though — for a long time — nobody read what I published. Eventually people started reading the blog, and nowadays some people even go as far as to read minutiae about how the blog came to be. I find that immensely rewarding. Not long after I started blogging I decided to write a book about JavaScript Application Design, which was published in February, 2015.
Reading every English article ever published on Pony Foo — there’s 218 of them — would take you approximately 2 days. Better get to it!
- Bootstrapping a UI component library — published
- React Data Survival Kit — published
- Discovering patterns with React hooks — published
- Disguise Driven Testing: Jest Mocks In Depth — Part 2 — published
- Conflict Resolution and Code Reviews — published
- Disguise-Driven Testing: Jest Mocks in Depth — published
- The Action Pattern: Clean, Obvious, Testable Code — published
- React State: Choose Wisely — published
- GraphQL in Depth: What, Why, and How — published
- JavaScript Performance Pitfalls in V8 — published
- Unhappy Path Driven Development — published
- Module Design — published
- Okta, Auth0, & the Goblet of Identity — published
- A Guide to Modular Design Thinking — published
- An Introduction to Speculative Optimization in V8 — published
- Mastering Modular JavaScript — published
- A Brief History of Modularity — published
- A Tiny Story about Systems Complexity — published
- Make All Images on Your Website Responsive in 3 Easy Steps — published
- Investigating Performance of Object#toString in ES2015 — published
- Interviewed at Tencent Frontend Conference — published
- Null Propagation Operator in JavaScript — published
- Pattern Matching in ECMAScript — published
- Setting up 2FA for Node.js Applications — published
- TC39, ECMAScript, and the Future of JavaScript — published
- Regular Expressions in a post-ES6 world — published
- Mixing Generators Into Iterators — published
- Observables Proposal for ECMAScript! — published
- Variables declared using
const
are not immutable — published Content-Security-Policy
in Express apps — published- Setting up an Angular 2 Development Environment — published
- The JavaScript Standard — published
- Let’s use
const
! Here’s why. — published - How Terrible Code Gets Written by Perfectly Sane People — published
- Fourth Year in Review — published
- Thousands of Color-coded Visualizations in React — published
- Making Time for Side Projects: A Daily Habit — published
- Announcing Practical Modern JavaScript
— and the Modular JavaScript Book Series! — published - Modular JavaScript launches in a week! — published
- Fixing an XSS vulnerability in
marked
— published - JavaScript Asynchronous Iteration Proposal — published
- How I Got Into Programming — published
- Template Literals are Strictly Better Strings — published
- What Does a Sound Look Like? Web Audio Art! — published
- Binding Methods to Class Instance Objects — published
- JSON Web Tokens vs. Session Cookies: In Practice — published
- Two-way Synchronization for a Web App and Git — published
- The Art of a Pull Request — published
- ServiceWorker: A Basic Guide to BackgroundSync — published
- How Pony Foo is ridiculously over-engineered
— and why that is awesome — published - The Double-Edged Sword of the Web — published
- An Elastic Stack Primer — published
- A Promise-Based Worldview — published
- Setting Up Elasticsearch for a Blog — published
- Just Married! — published
- NodeConf hits the ground running in Latin America — published
- GitHub for Human Beings — published
- ECMAScript Proposal for JavaScript Decorators
(and protocols) — published - The
npm
Meltdown Uncovers Serious Security Risks — published - JavaScript Proposal for weak references:
WeakRef
— published - Making a Simple Site Work Offline with ServiceWorker — published
- All Aboard the ES6 JavaScript Train — published
- Proposal: “Statements as Expressions” using
do
— published - Proposal Draft for
.flatten
and.flatMap
— published - ECMAScript String Padding — published
- Understanding JavaScript’s async await — published
- ES2016 Features & ECMAScript as a Living Standard — published
- The Controversial State of JavaScript Tooling — published
- Asynchronous I/O with Generators & Promises — published
- Third Year in Review — published
- JavaScript Developer Survey Results — published
- JavaScript Developer Survey — published
- Making a Progressive App with ServiceWorker — published
- ServiceWorker, MessageChannel, & postMessage — published
- ServiceWorker and Progressive Networking — published
- Subscribing to Pony Foo — published
- ServiceWorker: Revolution of the Web Platform — published
- ES6 Overview in 350 Bullet Points — published
- Securing Your Web App in 3 Easy Steps — published
- Keeping Your npm Dependencies Immutable — published
- Inlining Critical CSS for Dynamic Web Apps — published
- Using the JavaScript Charting Library — published
- SVG and the DOM, or “The Weirdest Bug I’ve Ever Encountered” — published
- Pony Foo Gets a Face Lift — published
- ES6 Promises in Depth — published
- ES6 Modules in Depth — published
- ES6 Strings (and Unicode, ) in Depth — published
- ES6 Object Changes in Depth — published
- ES6 Array Extensions in Depth — published
- ES6 Math Additions in Depth — published
- ES6 Number Improvements in Depth — published
- ES6 Reflection in Depth — published
- More ES6 Proxy Traps in Depth — published
- ES6 Proxy Traps in Depth — published
- ES6 Proxies in Depth — published
- ES6 WeakMaps, Sets, and WeakSets in Depth — published
- ES6 Maps in Depth — published
- ES6 Symbols in Depth — published
- ES6 Generators in Depth — published
- ES6 Iterators in Depth — published
- ES6 Let, Const and the “Temporal Dead Zone” (TDZ) in Depth — published
- ES6 Classes in Depth — published
- ES6 Object Literal Features in Depth — published
- ES6 Spread and Butter in Depth — published
- ES6 Arrow Functions in Depth — published
- ES6 Template Literals in Depth — published
- ES6 JavaScript Destructuring in Depth — published
- A Brief History of ES6 Tooling — published
- React, JSX and ES6: The Weird Parts — published
- Server-side React Layout & Side Effects — published
- Universal Routing in React with ES6 — published
- Universal React with Babel, Browserify — published
- Polyfills or Ponyfills? — published
- Things you can do with native DOM — published
- Git and GitHub Hacks — published
- Why I Write Plain JavaScript Modules — published
- Dream of Browser Test Automation? — published
- README Driven Development — published
- Low-Budget Hosting Tips — published
- Maintaining Open-Source Software — published
- Pragmatic Semantic Versioning — published
- Fixing Performance in the Web Stack — published
- Let’s talk about Web Performance — published
- Leveraging Constraints — published
- Blogging and OSS — Food for Thought — published
- Fast-forwarding the Web Platform — published
- Composable UI — published
- Testing JavaScript Modules with Tape — published
- The Progressive Web — published
- Priorities — published
- Designing Front-End Components — published
- The Great Web Module Compendium — published
- Leveraging Immutable Deployments — published
- Immutable Deployments and Packer — published
- Server-First Apps are a Good Idea — published
- Baking Modularity into Tag Editing — published
- Cross-tab Communication — published
- Second Year in Review — published
- I’m Building Stompflow! — published
- Are Regular Expressions Stateful? — published
- Measure, Optimize, Automate — published
- My CampJS Experience — published
- Stop Breaking the Web — published
- Adjusting UX for human visitors — published
- Free sample: JavaScript Application Design — published
- Critical Path Performance Optimization at Pony Foo — published
- The Conventional Front-End — published
- A Gentle Browserify Walkthrough — published
- JavaScript Quality Guide — published
- A BrowserSync Primer — published
- Building High-Quality Front-End Modules — published
- Choose: Grunt, Gulp, or npm? — published
- How To Avoid Object.prototype Pollution — published
- Taunus: Micro Isomorphic MVC Framework — published
- CSS: The Good Parts — published
- Modularizing Your Front-End — published
- Shared Rendering with Rendr — published
- Head First Public Speaking — published
- A Less Convoluted Event Emitter Implementation — published
- Angle Brackets, Synergistic Directives — published
- Angle Brackets, Rifle Scopes — published
- You don’t need a TODO app — published
- My First Gulp Adventure — published
- How to Design Great Programs — published
- Gulp, Grunt, Whatever — published
- Email Sending Done Right — published
- A Year In Review — published
- Rehearsal: Record program output — published
- Architecture of ECMAScript 6 Modules — published
- Is WebDriver as good as it gets? — published
- 9 Quick Tips About npm — published
- JavaScript Variable Hoisting — published
- Where does
this
keyword come from? — published - Get Between the Covers of Build First — published
- Package Authoring with Paqui — published
- Fun with Native Arrays — published
- Grunt Tips and Tricks — published
- Angular WYSIWYG — published
- Event Emitter: Obey and Report — published
- Your Tab Views Suck — published
- Spritesheets, Grunt, and You — published
- Ditch Windows, Become a Polyglot — published
- We don’t want your Coffee — published
- Continuous Development in Node.js — published
- Deploying Node apps to AWS using Grunt — published
- The Angular Way — published
- Lean Development Principles — published
- Upgraded Asset Management — published
- Teach Yourself Node.js in 10 Steps — published
- Modularizing Node Applications with Express — published
- Getting Over jQuery — published
- Tech News Reading Hints — published
- Monitoring Production Grade Node Applications — published
- Organizing your CSS with Bootstrap — published
- CSS For Dummies — published
- Uncovering the Native DOM API — published
- The Micro Library Phenomenon — published
- Learn Regular Expressions — published
- Understanding Build Processes — published
- Recommended Reading — published
- The Web Wars — published
- Taming Asynchronous JavaScript — published
- The Architecture of Productivity — published
- A Note on Everyday Usability — published
- Pragmatic Unit Testing in JavaScript — published
- Managing Code Quality in NodeJS — published
- Introduction to SEO and Content Indexing — published
- Defensive Design — published
- Information Hiding in JavaScript — published
- JavaScript Is Awesome — published
- Implementing OpenSearch — published
- Paging in the Wilderness — published
- Publishing Node.js Packages with npm — published
- Continuous Integration, and Automated Deployments — published
- Asset Management in Node — published
- JavaScript JavaScript JavaScript — published
- Single Page Design Madness — published
- Pony Foo begins — published
If you’d like to learn more about my work you should visit the about page.