Curated river of news
Reader
Latest posts from blogs I follow
Logging in Swift(opens in new tab)
An in-depth exploration of Apple's unified logging system and the promising OSLogStore API that Apple removed from iOS 14 at the last minute.
Converting macOS Terminal To zsh in Catalina(opens in new tab)
In macOS Catalina the new default shell is zsh, learn how to change the terminal and set it up to look and feel great.
The WET Codebase(opens in new tab)
Come waste your time with me.
Welcome to My New Blog(opens in new tab)
Welcome to my new site! If you want to see my old writings you can still find them at my Wordpress blog site which is still up. I may at some point attempt to copy the posts over from there, ...
Writing to an Lcd Panel Using Go and a Raspberry Pi(opens in new tab)
In my last post I wrote about how I rigged up a Raspberry Pi to monitor temperature, humidity and air pressure. In this post I will talk about how I added a multiline LCD display into the mix to display ...
Humidity, Temperature and Pressure Sensing on a Raspberry Pi With Go(opens in new tab)
(click for a higher resolution image) Background A few months ago I bought a couple of lemon trees to grow in my conservatory, but most excitingly for me, a Buddha’s hand tree. This tree was fairly expensive, and I wanted ...
Building with Swift Trunk Development Snapshots(opens in new tab)
A troubleshooting guide for building with Swift trunk development snapshots, documenting compilation errors, linker issues, and their solutions.
Waiting in asyncio(opens in new tab)
One of the main appeals of using Python’s asyncio is being able to fire off many coroutines and run them concurrently. How many ways do you know for waiting for their results?
Speed Up Google Fonts(opens in new tab)
Google Fonts is fast. Now it’s faster. Much faster.
Classy Abstractions(opens in new tab)
Let’s talk about abstractions and Pythonic code.
Why You Should Document Your Tests(opens in new tab)
Some projects have the policy that all tests must have an explanatory comment – including all of mine. At first, I found that baffling. If that’s you right now, this article is for you.
Tailwind Tidbit - Vertically Align Icons and Text in Buttons(opens in new tab)
Ever notice icons and text not lining up perfectly when you build buttons? Here's a simple fix to get things aligned juuust right.
Real-World Effectiveness of Brotli(opens in new tab)
How effective is Brotli, really?
Announcing Slash Packaging(opens in new tab)
Python in GitHub Actions(opens in new tab)
GitHub’s own CI called GitHub Actions has been out of closed beta for a while and offers generous free quotas and a seamless integration with the rest of the site. Let’s have a look at how to use it for ...
Python in Production(opens in new tab)
I’m missing a key part from the public Python discourse and I would like to help to change that.
Error installing libv8 on Mac OS Catalina(opens in new tab)
I got an error installing the libv8 gem on Catalina: $ gem install libv8 -v '3.16.14.19' Building native extensions. This could take a while... ERROR: Error installing libv8: ERROR: Failed to build gem native extension. current directory: /Users/will/.rbenv/versions/2.4.5/lib/ruby/gems/2.4.0/gems/libv8-3.16.14.19/ext/libv8 /Users/will/.rbenv/versions/2.4.5/bin/ruby -r ...
Python Packaging Metadata(opens in new tab)
Since this topic keeps coming up, I’d like to briefly share my thoughts on Python package metadata because it’s – as always – more complex than it seems.
Goodbye, Clean Code(opens in new tab)
Let clean code guide you. Then let it go.
How to convert variable TTF font files to WOFF2(opens in new tab)
Impetus I’ve been working on a project lately that requires the loading of many, many webfonts. For the main UI font alone, we needed to download over 980kB of WOFF and WOFF2 files. As it happened, the client eventually developed ...
Quick Tip: Keep a Global Gitignore File(opens in new tab)
Performance Budgets, Pragmatically(opens in new tab)
If you’ve ever struggled to define performance budgets, this off-the-shelf trick is what you’re looking for.
Speed Illustration and Coding of This Site(opens in new tab)
Yesterday it was finally time to give my site some more visual flair, but with an extra twist! I recorded the whole process. Check out the sped-up version to get a glimpse of how it was done.
Three Tips for Becoming a Better Developer in 2020(opens in new tab)
As developers it is crucial to keep learning all the time. Otherwise, you might get caught up in your day-to-day work and stagnate. The cure? Learn something and apply it in your workflow! Here are three tips I wish I ...
My Decade in Review(opens in new tab)
A personal reflection.
Stadium of selves(opens in new tab)
How to add Syntax Highlighting to a Statamic Site(opens in new tab)
We'll cover how to add syntax highlighting to code blocks in Statamic v3 using Prism. With a couple quick steps you'll have your code blocks looking spiffy!
2019: Year in review(opens in new tab)
Introduction This time last year, I Tweeted out some goals for the New Year. 🗣️ Speak about CSS at a conference or school 🎓 Take a class a month 📚 Read a book a month ✈️ Go back to SF, ...
What Are the React Team Principles?(opens in new tab)
UI Before API.
On let vs const(opens in new tab)
So which one should I use?
What Is JavaScript Made Of?(opens in new tab)
Getting a closure on JavaScript.
Site is finally live!(opens in new tab)
Welcome travelers! I’ve been procrastinating putting together a web site/portfolio/blog for the better part of a year and now the first version is finished.
Let’s talk about banning political ads on Twitter(opens in new tab)
Before you get started, fair warning that this post has “takes”, some of which could be considered “hot”. This post is not about web development. So, Twitter recently stopped allowing political advertising. jack 🌍🌏🌎 (@jack) October 30, 2019 We’ve made ...
Books That Changed My Life(opens in new tab)
People always ask for book recommendations, so here’s my list of books that changed my life in one way or another. None of them is related to tech or programming, but all affect how I think and work.
Book Summary: Accelerate: The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations(opens in new tab)
Notes from reading Accelerate by Nicole Forsgren, Jez Humble, and Gene Kim, and the practices that separate high-performing software organizations from the rest.
Lazy Pre-Browsing with Prefetch(opens in new tab)
Using prefetch for fun and profit
Making Cloud.typography Fast(er)(opens in new tab)
What issues does Hoefler&Co’s Cloud.typography introduce, and how can we mitigate them?