ponyfoo.com

  1. Let’s use const! Here’s why.

    When reading a piece of code, others can take cues from these signals in order to better understand what we did. ES6 offers let and const as new flavors of variable declaration, are they better signals than var?

    10m 21
  2. How Terrible Code Gets Written by Perfectly Sane People

    Help your team avoid some bad habits that can drive good teams to write terrible code.

    8m 5
  3. Fourth Year in Review

    Another year, another review of how Pony Foo did in its latest twelve months online!

    6m 1
  4. Thousands of Color-coded Visualizations in React

    For the past few days I’ve been working on a data visualization that displays Elasticsearch node distribution across different cloud instances and zones.

    19m 2
  5. Making Time for Side Projects: A Daily Habit

    With so many other commitments to deal with, it can be hard to find time to work on side projects. In this article, I discuss the need for carving out a chunk of time to …

    2m 5
  6. Announcing Practical Modern JavaScript 📚
    — and the Modular JavaScript Book Series!

    Practical Modern JavaScript is the first book in a 📚 series I’m dubbing Modular JavaScript, which aims to be a comprehensive, freely available, and open set of books with the mission of improving our collective understanding of modular JavaScript.

    19m 2
  7. Modular JavaScript launches in a week! 🚀

    Modular JavaScript is an open effort to improve our collective understanding of writing robust, well-tested & modular applications. It is launching very soon.

    6m 0
  8. Fixing an XSS vulnerability in marked

    Earlier this year my team at Snyk added an interesting Cross-Site Scripting (XSS) vulnerability to our database, in the popular marked package. The vulnerability is …

    8m 4
  9. JavaScript Asynchronous Iteration Proposal

    There’s a proposal in the works to simplify asynchronous iteration even further.

    The Asynchronous Iteration proposal is already in stage 2 and being heavily worked …

    4m 9
  10. How I Got Into Programming

    Roughly half of this story first appeared on the preface to my first book, JavaScript Application Design, but I’ve always felt that the story also belonged on …

    11m 16
  11. Template Literals are Strictly Better Strings

    This article explores how template literals are strictly better than strings, and how they too should become the new default of a post-ES6 era – over single and double quoted strings.

    14m 34
  12. What Does a Sound Look Like? Web Audio Art!

    The Web Audio API is a very powerful feature available in modern browsers today, boasting a rich set of functionality. In this exploration, we’ll be looking at …

    14m 2
  13. Binding Methods to Class Instance Objects

    There’s a number of different ways we can ensure class methods have access to this. After some controversy on Twitter last week, we quickly go over the most …

    5m 11
  14. JSON Web Tokens vs. Session Cookies: In Practice

    Quite a few challenges have been found with using server-side sessions in modern-day applications. In this post, we’ll identify those challenges and explain how JWT and sessions work in practice.

    9m 14
  15. Two-way Synchronization for a Web App and Git

    This article explains the challenges I went through and how I ended up implementing a two-way synchronization between the web application and a git repository for the articles.

    12m 2
  16. The Art of a Pull Request

    Writing a great Pull Request takes time. It can be a scary proposition going in. Did I implement something relevant? Will they like my changes? Will the PR meet their expectations? How much scrutiny can I expect?

    12m 4
  17. ServiceWorker: A Basic Guide to BackgroundSync

    A simple guide to getting up and running using Background Sync and Service Workers. Background Sync is a new web API that lets you defer actions until the user has stable connectivity. This makes it great for ensuring that whatever the user wants to send, is actually sent.

    10m 5
  18. How Pony Foo is ridiculously over-engineered
    — and why that is awesome

    With almost 3000 commits on record, I’m pretty sure that Pony Foo is one of the most, if not the most, over-engineered blogs ever. This article goes over how it all began as a learning experience…

    34m 7
  19. The Double-Edged Sword of the Web

    A couple of weeks ago I had some time in my hands and decided to fix cross-browser rendering issues for Pony Foo. The ensuing bug hunt was a good reminder of just how obnoxious web development can get.

    16m 13
  20. An Elastic Stack Primer

    This article describes my adventures while getting initiated into the Elastic Stack. We’ll be building upon the elasticsearch index I’ve set up for search in an earlier post.

    24m 0
  21. A Promise-Based Worldview

    Once the Node.js developer’s victim of choice, Promise now enjoys healthy adoption on both sides of the stack, with prominent open-source contributors like @sindresorhus visibly leveraging them.
    What’s changed?

    2m 0
  22. Setting Up Elasticsearch for a Blog

    I’ve been experimenting with elasticsearch – and working at the company behind it for a while – so it only made sense to incorporate it as Pony Foo’s search provider.

    26m 7
  23. Just Married! 🎉

    I got married last friday, and then we threw a party on saturday.

    I wanted to extend the celebration a little bit longer by sharing a few pictures on my blog.

    9m 46
  24. NodeConf hits the ground running in Latin America

    NodeConf Argentina is one of the first international Node.js conferences taking place in Latin American territory, and a not-for-profit community effort to push Node.js …

    2m 0
  25. GitHub for Human Beings 🕵

    GitHub – and GitHub users – can be kind of annoying sometimes. Here are a few tips to improve your day-to-day experience.

    3m 4
  26. ECMAScript Proposal for JavaScript Decorators
    (and protocols)

    There’s a JavaScript decorators proposal in the works.
    We take a look at how it works and why it’s useful.

    12m 4
  27. The npm Meltdown Uncovers Serious Security Risks

    Earlier this week, as almost everyone reading this article knows, npm experienced a brief service interruption where npm install would fail for heaps of popular packages …

    8m 16
  28. JavaScript Proposal for weak references: WeakRef

    A proposal to implement weak references in JavaScript – which would expose weak references made possible by WeakMap and WeakSet is currently sitting at stage 0.

    6m 0
  29. Making a Simple Site Work Offline with ServiceWorker

    I’ve been playing around with ServiceWorker a lot recently, so when Chris asked me to write an article about it I couldn’t have been more thrilled. …

    15m 5
  30. All Aboard the ES6 JavaScript Train

    The sixth ECMAScript specification has been finalized last june, and there’s a flurry of JavaScript features coming our way.

    I’ll be covering the most exciting new features.

    12m 5
  31. Proposal: “Statements as Expressions” using do

    A proposal for do statements has been classified as Stage 0 for a while, and it might be an interesting solution for some problems we can find in JavaScript.

    5m 6
  32. Proposal Draft for .flatten and .flatMap

    Array prototype may be getting .flatten and .flatMap methods may be coming to ECMAScript in a distant future. This article describes what the proposal holds in store.

    8m 10
  33. ECMAScript String Padding

    A first look into .padStart and .padEnd string methods drafted as proposals for implementation in ECMAScript.

    8m 6
  34. Understanding JavaScript’s async await

    Earlier this week we took a look at new features coming in ES2016. Today we’ll learn about async / await.

    The async / await feature didn’t make the cut for …

    16m 21
  35. ES2016 Features & ECMAScript as a Living Standard

    As it turns out, ES2016 – also known colloquially as ES7 – will be comprised of a very small feature set. This article explains the new features in ES2016.

    5m 6
  36. The Controversial State of JavaScript Tooling

    There have been many different blog posts on the “State of the Web”, problems people face around tooling, and similar-style musings of late. This article …

    11m 23
  37. Asynchronous I/O with Generators & Promises

    The article covers designing a JavaScript API to deal with asynchronous data inputs and outputs using generators to succinctly describe a set of operations. Promises can …

    8m 3