Reading from and writing to the user's clipboard can be both a very useful and dangerous capability. Used correctly and it's a huge convenience to the | Continue reading
From the very beginning of our adventure with GraphQL, we were impressed by how great its community is. The amount of content, libraries and great tools | Continue reading
Working with arrays is an essential skill in any programming language, especially JavaScript, as we continue to rely on external data APIs. JavaScript has | Continue reading
In the world of marketing and content targeting, having accurate geolocation data can be the difference between a thriving enterprise and a floundering | Continue reading
One of the first commands you learn when experimenting with command line is rm, the utility for deleting files and directories. Deletion is a core | Continue reading
Once a week I have to deal with a zombie process or try to start a process that's already running on its designated port. In most cases I use macOS's | Continue reading
The accent-color CSS property allows us to change the accent of input, input[type=radio], and input[type=checkbox] elements! | Continue reading
The UUID identifier has been used in programming since the days a baby-faced David Walsh became a professional software engineer. My first exposure to | Continue reading
One of the big themes of the web these days is concurrency, which leads to accomplishing tasks asynchronously. In doing so, the possibility of multiple | Continue reading
I old enough to remember when we thought XML was going to change the programming world...then JSON saved us from that hell. Parsing and querying JSON data | Continue reading
Hooks are essential for the functional component pattern in React. One frequent logic comparison with class components was comparing a previous prop value | Continue reading
As I've shown you in the past, nvm an excellent utility for switching between Node.js versions. Whether your host machine or CI, building and testing your | Continue reading
Coding HTML forms has been painful my entire career. Form controls look different between operating systems and browsers, coding client side and server | Continue reading
Though it's not a true "dark mode", you can use CSS' filter to create dark mode of your own. | Continue reading
The early days of the web felt like the wild west when it came to coding practices -- just make it work. Then we became enlightened to better practices, | Continue reading
scp ~/Downloads/NestedT.png root@64.207.144.103:/var/www/vhosts/davidwalsh.name/httpdocs/demo My preference for daily work is usually GUI applications, | Continue reading
While I enjoy small details that make user interfaces more elegant, I also believe that less is more, especially when it comes to native behavior. One | Continue reading
Most websites and mobile apps collect all sorts of data to try to gain insights into what users are doing, not doing, and to gain insight into what users | Continue reading
The JavaScript language lets engineers separator numbers by underscores to make the code more readable and maintainable. | Continue reading
I recently wrote a .bat script on Windows to mine Ethereum when I'm not using my gaming PC to frag noobs. I have a friend who also tries to mine | Continue reading
There are scores of developers who hate CSS; don't get it, don't want to get it, etc. Most of that is either down to inefficiencies within the language or | Continue reading
I have a few processes on my Windows gaming PC that are critical but sometimes get impacted over night as Windows tells my beloved machine to tone it | Continue reading
From the time we're children, we're trusting people. We rely on those close and older than us to point us toward success and "the right way". One of the | Continue reading
Authentication is one of those things that just always seems to take a lot more effort than we want it to. To set up auth, you have to re-research topics you haven’t thought about since the last time you did authentication, and the fast-paced nature of the space means things have … | Continue reading
We all know the stats. Slower website performance is strongly linked to higher abandon rates and lower conversions. What you may not know is that the main | Continue reading
Regular expressions are incredibly powerful but can be difficult to maintain. They're a skill you learn on the job and, when the suits walk by, make you | Continue reading
Navigating and managing data structures is a really important skill for every level of engineer to have and improve upon. Over the years, the JavaScript | Continue reading
The landscape of security is changing quite a bit. We’ve gone from basic username and password to 2FA, facial recognition, fingerprint recognition, and so on. Hell, my Mac unlocks simply when I have my Apple Watch near by. In the end, I probably use the Mac fingerprint key the mo … | Continue reading
The navigator.clipboard API provides async read and write methods for managing clipboard data. | Continue reading
We can determine if an element has become sticky thanks to the IntersectionObserver API! | Continue reading
Earlier this month, David’s heartfelt posting about leaving Mozilla made the front page of Hacker News. Traffic increased by 800% to his already-busy website, which slowed and eventually failed under the pressure. Request Metrics monitors performance and uptime for David’s blog, … | Continue reading
In 2001 I had just graduated from a small town high school and headed off to a small town college. I found myself in the quaint computer lab where the substandard computers featured two browsers: Internet Explorer and Mozilla. It was this lab where I fell in love with Mozilla — a … | Continue reading
Getify expands efforts to empower developers and help improve coding with AI-powered autocomplete suggestions from Codota / TabNine. | Continue reading
“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 develope … | Continue reading
One awesome web functionality we take for granted is geolocation. Based on geolocation data, we can get someone to their destination, provide them suggestions based on their location, and so on. One downside of native geolocation, especially in the browser, is that it’s limited i … | Continue reading
The content security policy spec has been an amazing front-end security tool to help prevent XSS and other types of attacks. I’d go as far to say that every site should implement as specific CSP as possible. If you aren’t familiar with CSPs, here’s a quick example: Content-Securi … | Continue reading
An IP address is a simple, numeric piece of information that gets passed to a server, but that IP address can provide a wealth of information with ipdata. With ipdata you can learn user location, language, currency, and much more! Quick Hits ipdata is an IP Geolocation and Threat … | Continue reading
JavaScript is notorious for being “loose”, something that some developers love but other developers loathe. I hear most of those complaints from server side developers, who want string typing and syntax. While I like strict coding standards, I also like that JavaScript lets me … | Continue reading
One of the unspoken rules of the internet is that most content is “free”… at the cost of webpage being littered with advertisements and trackers. This was’t a big problem in the early internet days but trackers and advertisements have become so intrusive and unapologetically aggr … | Continue reading
Open source is a dream and a gateway to an amazing career — I’m a testament to that. One of the most amazing open source projects to ever exist, Mozilla Firefox, is a project I’m proud to work on as an employee of Mozilla. It’s rewarding, challenging, and a unique experience…and … | Continue reading
In this 15 minute tutorial we’re going to build a simple decentralized chat application which runs entirely in a web browser. All you will need is a text editor, a web browser, and a basic knowledge of how to save HTML files and open them in the browser. We’re going to use Bugout … | Continue reading
In this 15 minute tutorial we’re going to build a simple decentralized chat application which runs entirely in a web browser. All you will need is a text editor, a web browser, and a basic knowledge of how to save HTML files and open them in the browser. We’re going to use Bugout … | Continue reading
Discussing why linters and opinions on code are important, and introducing a configurable ESLint plugin for => arrow functions. | Continue reading
Joining the Firefox DevTools team was a dream come true for me. I shared why in the first episode of the Script & Style show but the quick summary is that I grew up loving Firefox (even before it was called “Firefox”) because Mozilla cared about developers via their early develo … | Continue reading
Faster font loading and lazy loading font loading techniques! | Continue reading
Twitter's new Twitter Cards API allows developers to add META tags to their website, and Twitter will build card content from links to a given site. | Continue reading