ponyfoo.com

  1. Pragmatic Semantic Versioning

    These are short-form “thoughts”, in addition to the usual longer-form articles in the blog. The goal is to publish one of these every weekday. I’d …

    3m 7
  2. Fixing Performance in the Web Stack

    There’s plenty of performance optimization techniques in web development. Particularly, if you look into each portion of the web stack in detail. In the …

    28m 4
  3. Let’s talk about Web Performance

    For the past few months I’ve been speaking at conferences about web performance. Unfortunately, none of those awesome conferences have published their talk videos

    21m 1
  4. Leveraging Constraints

    These are short-form “thoughts”, in addition to the usual longer-form articles in the blog. The goal is to publish one of these every weekday. I’d …

    4m 0
  5. Blogging and OSS — Food for Thought

    I’ve been toying with the idea of releasing short-form “thoughts”, in addition to the usual longer-form articles in the blog. The goal is to publish …

    4m 0
  6. Fast-forwarding the Web Platform

    Peter-Paul Koch – or @ppk – has once again published a rupturing article titled “Stop pushing the web forward” that is surely going to set …

    8m 1
  7. Composable UI

    Most often, web UI libraries fall under one of two categories. They may be part of a “framework”, or a grouping of UI components that share an appearance, …

    22m 7
  8. Testing JavaScript Modules with Tape

    I held a survey last monday where I asked for feedback about the kinds of things you want me to write about. It was quite useful, and one of the topics that seem to …

    19m 21
  9. The Progressive Web

    I’ve blogged very little about Taunus since I first released it, roughly a year ago. Back then, it only powered ponyfoo.com, but now there’s a few cases in …

    22m 4
  10. Priorities

    Peter-Paul Koch (@ppk) recently wrote an article that generated noticeable turmoil. One of the best responses was Jeremy Keith (@adactio)'s article,

    6m 2
  11. Designing Front-End Components

    Last monday I published an open-source library to easily take control of drag & drop in the front-end, dragula, and it has amassed over 2000 stars on GitHub in under …

    16m 9
  12. The Great Web Module Compendium

    For the past few months I’ve developed quite the number of front-end modules. These range from UI components to utility libraries, silly games, and everything in …

    8m 3
  13. Leveraging Immutable Deployments

    Last time around, we discussed how to create an AMI for every deployment: a crucial step in enabling you to leverage deployment immutability. This time around …

    31m 2
  14. Immutable Deployments and Packer

    A correcter title for this series would be something along the lines of “Automating autoscaled zero-downtime immutable deployments using plain old bash, Packer, …

    26m 3
  15. Server-First Apps are a Good Idea

    Earlier today, Tom Dale published an article sharing his views on the whole “server-side vs client-side rendered apps” debacle. I was tempted to call this …

    9m 16
  16. Baking Modularity into Tag Editing

    For quite some time I’ve been wanting some sort of input that dealt with user-submitted tags in a reasonable way. I wanted this input to still be half-decent when …

    7m 7
  17. Cross-tab Communication

    The upcoming SharedWorker API allows to transmit data across iframes and even browser tabs or windows. It landed in Chrome years ago, and not so long ago in Firefox, but …

    6m 22
  18. Second Year in Review

    I started this blog two years ago, at a time when nobody seemed to care about blogging anymore. It turned out to be one of the best decisions I took back then, and it …

    9m 1
  19. I’m Building Stompflow!

    Hey there! Today I have exciting news to share. We’ve recently started developing a prototype for a project management service called Stompflow, and it has a …

    a minute 1
  20. Are Regular Expressions Stateful?

    I seem to have stumbled across a bug regarding regular expressions using the g modifier, where they seem to preserve internal state across calls to RegExp.prototype.test

    a minute 2
  21. Measure, Optimize, Automate

    We’ve already covered the different techniques you could use to vastly improve the performance of your front-end applications, their page load time, and the …

    11m 0
  22. My CampJS Experience

    I was never really the camping kind of guy. Sounds like the perfect opportunity to collect kindling, start a bonfire, set up a tent, sleep in a bedroll, not have …

    6m 0
  23. Stop Breaking the Web

    The year is 2014, a ninja rockstar band goes up against the now long-forgotten progressive enhancement technique, forsaking the origins of the web and everything they …

    12m 48
  24. Adjusting UX for human visitors

    In this article I’ll analyze the past and present of UX in Pony Foo. In doing so, we’ll go over the features that were introduced to improve the lives of …

    13m 4
  25. Free sample: JavaScript Application Design

    My first book, JavaScript Application Design is in the final stretch and due to come out very soon! The code samples are finalized and publicly available on GitHub. …

    2m 0
  26. Critical Path Performance Optimization at Pony Foo

    This article aims to cover the performance gains I’ve attained in the redesign of Pony Foo, deployed last week to production. I’ll be covering a few …

    29m 20
  27. The Conventional Front-End

    Conventions are a great thing. Frameworks such as Ruby on Rails and ASP.NET MVC are good examples of conventional MVC implementations. Conventions are essentially …

    4m 0
  28. A Gentle Browserify Walkthrough

    Building modules for the front-end has become an increasingly easy problem to solve. Back in the nineties we had our Java applets, our <MARQUEE> and <BLINK>

    23m 3
  29. JavaScript Quality Guide

    I’ve recently created a JavaScript Quality Guide, and I wanted to share it on Pony Foo as well. The latest version can be found on GitHub. As

    26m 5
  30. A BrowserSync Primer

    BrowserSync is a browser testing tool, similar to LiveReload. It also synchronizes across browsers and is going to provide HTML injection in the very near future, …

    5m 6
  31. Building High-Quality Front-End Modules

    Lately I’ve been developing front-end modules solely based on Browserify, the latest being rome. Rome is a calendar component that has an extensive feature-set. …

    17m 2
  32. Choose: Grunt, Gulp, or npm?

    Deciding on a technology is always hard. You don’t want to make commitments you won’t be able to back out of, but eventually you’ll have to make a …

    17m 16
  33. How To Avoid Object.prototype Pollution

    Some times you just need to extend Array objects. Think of the possibilities. Dream of how much more awesome jQuery would’ve been if it provided all of the Array

    4m 4
  34. Taunus: Micro Isomorphic MVC Framework

    I’ve mentioned Taunus in one of my latest articles. I believe Taunus is interesting, not because it introduces innovative paradigm shifts or the like, but rather, …

    12m 7
  35. CSS: The Good Parts

    I’ve decided to pour my thoughts of how the CSS of an application should be modelled into a formal style guide. I’ve been using this approach for over a …

    18m 14
  36. Modularizing Your Front-End

    In the past I’ve wrote about a small alternative to async, named contra, which is barely over 2kb, and has the browser at its heart. It comes with the usual …

    15m 2
  37. Shared Rendering with Rendr

    Rendr boosts the perceived performance of Backbone applications by rendering them in the server-side. This allows us to display the rendered page before JavaScript code …

    24m 0
  38. Head First Public Speaking

    I’m thrilled to announce that next month I’ll make my public speaking debut, at JSConf US no less! I have also been invited to QCon NY, which is happening …

    5m 0
  39. A Less Convoluted Event Emitter Implementation

    I believe that the event emitter implementation in Node could be made way better by providing a way to access the functionality directly without using prototypes. This …

    5m 9
  40. Angle Brackets, Synergistic Directives

    In the previous part of this article, I discussed scope events and the behavior of the digest cycle. This time around, I’ll talk about directives. Just as …

    33m 4