Curated river of news
Reader
Latest posts from blogs I follow
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?
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.
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)
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.
How Does the Development Mode Work?(opens in new tab)
Dead code elimination by convention.
Algebraic Effects for the Rest of Us(opens in new tab)
They’re not burritos.
Preparing for a Tech Talk, Part 3: Content(opens in new tab)
Turning an idea into a talk.
How to make an animated interactive vue.js slider(opens in new tab)
So, I was looking for a fun example of UI interactivity to prototype on Codepen, and I stumbled upon this really cool shot that Alexsander Barhon shared. It’s a simple enough animation, with a really nice loading effect and staggered ...
Python in Azure Pipelines, Step by Step(opens in new tab)
Since the acquisition of Travis CI, the future of their free offering is unclear. Azure Pipelines has a generous free tier, but the examples I found are discouragingly complex and take advantage of features like templating that most projects don’t ...
The Price of the Hallway Track(opens in new tab)
There are many good reasons not to go to every talk possible when attending conferences. However, increasingly, it became hip to boast about avoiding going to talks – encouraging others to follow suit. That rubs me the wrong way as ...
Maintaining a Python Project When It’s Not Your Job(opens in new tab)
PyPI is a gold mine of great packages but those packages have to be written first. More often than not, projects that millions of people depend on are written and maintained by only one person. If you’re unlucky, that person ...
Fixing the ruby 'CoreFoundation/CFString.h' file not found install error(opens in new tab)
I hit this error installing the latest Ruby using rbenv: $ rbenv install 2.6.3 ruby-build: use openssl from homebrew Downloading ruby-2.6.3.tar.bz2... -> https://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.3.tar.bz2 Installing ruby-2.6.3... ruby-build: use readline from homebrew BUILD FAILED (OS X 10.14.4 using ruby-build 20190423) Inspect or ...
Uses(opens in new tab)
This is a non-exhaustive list of the tools I use in my day-to-day operation for design, development, and life as a human. If I’m missing something, let me know! Hardware Main Computer — 2023 MacBook Pro, 14-inch, 16GB M2 Webcam ...