All Posts

Server-Sent Events With Node

Server-Sent Events (SSEs) allow one-way communication from the server to the client. They can be very useful for things like notifications or activity feeds. I’ve recently used them in a project to display output from a background process in the browser. In the browser, you connect to the server using the EventSource interface and just add event listeners. It is really very easy. const sseSource = new EventSource('/event-stream'); sseSource.addEventListener('message', (e) => { const messageData = e.

Article Roundup - August 10, 2018

How we scaled nginx and saved the world 54 years every day Cloudflare handles a large chunk of internet traffic between DNS and CDN features. Cloudflare makes use of nginx but doesn’t fit nginx’s primary use case. A new feature was in upstream nginx that looked like it could provide a significant performance boost, but instead, it had minimal impact for Cloudflare. When they dug deeper they were able to make small changes that provided a significant boost.

Article Roundup - August 3, 2018

Logging Activity With The Web Beacon API Sometimes your app has an error that keeps happening for the user, but you can’t figure out what is wrong. You know where the problem happens, but not what goes wrong and you can’t get the information you need from your user. Maybe that is the time to use the Web Beacon API, it’s supported by most browsers and lets you fire off a request and not wait for a reply.

Article Roundup - Week of July 22, 2018

Here’s the final nail in the coffin of open plan offices This research may “put the final nail in the coffin” for open office plans, but they’re going to be around for decades to come. Having different spaces for different purposes does help. I have recent experience with that. But without hard and fast rules around phone etiquette and noise buffers those “zones” count for little. A one size fits all database doesn’t fit anyone

Article Roundup - Week of July 15, 2018

VS Code Can Do That? I’m a big fan of VS Code. This site showcases a lot of features and extensions that you may not know about. Using API Gateways to Facilitate Your Transition from Monolith to Microservices Transitioning a monolithic application into a collection of services is quite the challenge. One often overlooked tool to help with that migration is an API Gateway. This article goes through some of the different ways to transition things and how a gateway can help.

Article Roundup - Week of July 8, 2018

The State of Developer Ecosystem 2018 JetBrains has recently released their “State of Developer Ecosystem” report. It’s something interesting to look through. The sample size is only around 6000 people, but it is interesting to see the information spread over multiple programming languages. A minimal guide to ECMAScript Decorators Decorators are still only a draft and have not been finalized, but they are making their way through the standards process. Explaining them isn’t too hard, but explaining how to use them is a little tricky.

Article Roundup - Week of July 1, 2018

Don’t Use The Placeholder Attribute This article makes a strong case as to why the placeholder attribute added to input elements in HTML5 should not be used. Most of the reasons revolve around user experience and accessibility. UI Goodies UI Goodies is a directory of design and frontend resources. I’ve not gone through everything, but I haven’t found any that I wish they had and don’t. xo/usql One tool for MS SQL, another for MySQL, yet another for PostgreSQL.

Article Roundup - Week of June 24, 2018

UTC is Enough for Everyone, Right? Read this, even if you ignore everything else One of the fastest ways to gauge a developer’s experience is to start asking about time and timezones. It’s an absolute mess. This article does an absolutely amazing job going through why time is so complicated, with fun facts along the way, and how you should be handling time in your applications. This is probably the most pleasant US Government website I have ever visited.

Article Roundup - Week of Jun 17, 2018

How Git Changed The History of Software Version Control I remember the days before Git when Subversion was the main VCS. It worked just fine, but Git was so much better. This article goes through the history of version control software. It’s not long, but it provides a nice dose of history. Using JavaScript modules on the web JavaScript modules are now supported in all major browsers, that means you may not need a bundler for some smaller applications.

Article Roundup - Week of Jun 10, 2018

How to display a “new version available” of your Progressive Web App Wouldn’t it be awesome to be able to easily let your users know when a new version of your web app is available? It’s actually not all that hard. This article provides a run through of what it takes to get the basic of this feature going. JavaScript Start-up Optimization Other than downloading, parsing and compiling is one of the slowest steps in getting JavaScript running on a page.