David Walsh Blog

  • By

    Add CSS and JavaScript Files to Phabricator Extensions

    Every open source framework has its own methods of extending functionality; some make extending incredibly easy and others...not so much.  Most of the time it comes down to how well the framework is documented.  Phabricator did an awesome job of making necessary classes extendable but it's fair to say it...

  • By
    5 Premier Web Hosting Service To Consider Using

    Your website's performance depends in large part on your hosting service's performance. Yet for many, selecting a hosting service involves little more than finding one that advertises speed and reliability for a low price. Many business owners recognize the importance of quality content, responsiveness, and other factors...

  • By
    Create Aliases in Bash

    Every developer likes a shortcut -- they're what make us more efficient in our work.  Of course there are good shortcuts and bad shortcuts (lazy coding, lack of security review, etc.), but let's stick with the positive and talk about a good shortcut:  bash aliases. We all have commands...

  • By
    Two-Factor Authentication with Node.js

    There are a variety of strategies for protecting your important online credentials.  We often hear about password managers and generators, but for me, the more important strategy is using two-factor authentication (2FA).  Passwords can be guessed, phone numbers can be spoofed, but using two-factor authentication essentially requires that user be in...

  • By
    Address Validation API with streetlayer

    There is so much of our web and eCommerce that consumers take for granted: payment types and validation, exchange rates, etc.  One of the aspects of eCommerce that should be a given, from both a developer and consumer perspective, is address handling.  We'd like to think the consumer enters...

  • By
    Create GitHub Pull Request and Issue Templates

    There's nothing more frustrating than getting an incomplete bug report.  I've often seen bug reports containing a useless "{x} feature doesn't work"; no steps to reproduce, no URL, no browser or device information, just a hopelessly vague message.  Similar is receiving a pull request or patch which doesn't...

  • By
    Fetch and Transform Remote Images with Cloudinary

    Many of my dives into Cloudinary's amazing API like Instagram-like Filters, Image Security, Custom eCommerce, have started with uploading media (images, video, audio) to Cloudinary and then manipulating from there.  As social media and user generated content has taken the web by storm, however, we as...

  • By
    Track Empty Directories with git

    There are times when you'd like to track an empty directory within git but there's a problem: git wont allow you to add a directory that doesn't have a file in it.  The easy solution is putting an empty stub file within the directory, and the industry...

  • By
    Interview with Kyle Simpson, Chair for O’Reilly Fluent Conference

    O'Reilly Fluent Conference, taking place in San Jose on June 19-22, is one of the best conferences if you're a front-end developer like myself. Most of the big names I've known over the past decade have graced Fluent's stage, one of them being...

  • By
    14 Top-Of-The-Line Multipurpose WordPress Themes

    A typical multipurpose WordPress theme is versatile, flexible, loaded with popular features. This enables you to create any type of website, portfolio, or blog you have in mind, or are commissioned to build. Specialty themes have their place too, especially when your design activities are confined...

Popular Features

  • By
    Being a Dev Dad

    I get asked loads of questions every day but I'm always surprised that they're rarely questions about code or even tech -- many of the questions I get are more about non-dev stuff like what my office is like, what software I use, and oftentimes...

  • By
    JavaScript Promise API

    While synchronous code is easier to follow and debug, async is generally better for performance and flexibility. Why "hold up the show" when you can trigger numerous requests at once and then handle them when each is ready?  Promises are becoming a big part of the JavaScript world...

  • By
    Chris Coyier’s Favorite CodePen Demos II

    Hey everyone! Before we get started, I just want to say it's damn hard to pick this few favorites on CodePen. Not because, as a co-founder of CodePen, I feel like a dad picking which kid he likes best (RUDE). But because there is just so...

  • By
    7 Essential JavaScript Functions

    I remember the early days of JavaScript where you needed a simple function for just about everything because the browser vendors implemented features differently, and not just edge features, basic features, like addEventListener and attachEvent.  Times have changed but there are still a few functions each developer should...

  • By
    I’m an Impostor

    This is the hardest thing I've ever had to write, much less admit to myself.  I've written resignation letters from jobs I've loved, I've ended relationships, I've failed at a host of tasks, and let myself down in my life.  All of those feelings were very...