David Walsh Blog

  • By

    Are You a Developer?

    “You’re not really a developer. Sooner or later people are going to realize you don’t know what you’re talking about. You’re just not good enough.”You’ve probably had thoughts like these at one point or another. You’ve never heard someone else tell you that you’re not a...

  • By
    Devising the Cloak of Invisibility in JavaScript

    Steganography. The art of hiding something right under your nose. For as long as humans have been alive, we’ve been trying to hide things — whether it’s our last slice of pizza or the location of a buried treasure. Do you remember the cool invisible lemon...

  • By
    Offscreen Text for Copy & Paste

    The relationship between HTML and CSS is special: mixing content via HTML with presentation from CSS to make an awesome presentation. Sometimes, however, you need to employ CSS tricks solely to enhance functionality. This could be one of those cases.When browsing through the Firefox...

  • By
    Unlock Your Mac with Apple Watch

    I convinced myself six months ago that I needed to give the Apple Watch a try. While I wear it every day and enjoy a few features, I've felt a bit let down by the experience. I do, however, believe that the Apple Watch...

  • By
    Free SSL Certificates with ZeroSSL

    During my early years in web development, one of the most costly and annoying tasks was securing and installing security certificates on client websites. Most providers charged hundreds of dollars for SSL certs and getting them configured properly was a huge source of stress. Securing...

  • By
    How to Fix ESLint Errors Upon Save in VS Code

    Two of the most prominent utilities in web development today are ESLint and Microsoft's Visual Studio Code. I enjoy using both, and I love the integration between both tools, but warnings from ESLint inside Visual Studio Code aren't fulfilling -- I'd rather lint errors be...

  • By
    How to Display Mode-Specific Images

    Now that we have most of the basics of HTML and CSS in the browser, we've begun implementing new features that I would consider "quality of life" improvements, many of which have been inspired by mobile. One great example is the CSS prefers-color-scheme media...

  • By
    Track Your Keyword Placement with Ranktrackify

    I don't need to tell you how important search engine placement is. You either earn it with quality content, loads of SEO work, paying for placement, or all of the above. And even we you achieve best placement, you need to be wary of...

  • By
    How to Play Retro Game ROMs on Windows

    Video games are always a fun time, something we desperately need during our COVID lockdown. A few years back I shared how to play retro games on Mac, as well as how to patch games to play popular ROM hacks like Grand Poo World...

  • By
    How to Add Native Keyword Aliases to Babel

    Those of you who follow this blog know that not every blog post is an endorsement of a technique but simply a tutorial how to accomplish something. Sometimes the technique described is probably not something you should do. This is one of those blog...

Popular Features

  • By
    Interview with a Pornhub Web Developer

    Regardless of your stance on pornography, it would be impossible to deny the massive impact the adult website industry has had on pushing the web forward. From pushing the browser's video limits to pushing ads through WebSocket so ad blockers don't detect them, you have...

  • By
    Welcome to My New Office

    My first professional web development was at a small print shop where I sat in a windowless cubical all day. I suffered that boxed in environment for almost five years before I was able to find a remote job where I worked from home. The first...

  • By
    How to Create a RetroPie on Raspberry Pi – Graphical Guide

    Today we get to play amazing games on our super powered game consoles, PCs, VR headsets, and even mobile devices.  While I enjoy playing new games these days, I do long for the retro gaming systems I had when I was a kid: the original Nintendo...

  • By
    Conquering Impostor Syndrome

    Two years ago I documented my struggles with Imposter Syndrome and the response was immense.  I received messages of support and commiseration from new web developers, veteran engineers, and even persons of all experience levels in other professions.  I've even caught myself reading the post...

  • 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
    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...