Welcome to the first edition of my newsletter and thanks for reading! This will be a mostly-weekly email where I share interesting things about programming I’ve read on the web, some occasional nature photos, and any other thoughts that come up.
Recommended Reading and Videos
Better Color Manipulation with CSS
Calculating Color - Dynamic Theming with CSS Variables is a great talk by Una Kravetz about creating an entire color theme from a single primary color with just CSS. Some great techniques here with simple use of modern CSS, and a look at what’s coming in the future of CSS Color too.
Rust Web Servers
I love the Rust programming language for writing command-line utilities, but am finally going to take the plunge into the async/server world. Here are a couple of (long but good) articles covering the most popular Rust server frameworks.
Image Decay as a Service by Amos implements a small web service in the newer Tide and Warp frameworks.
Choosing a Rust web framework, 2020 editiion by Luca Palmieri covers the topic from a pragmatic angle of ecosystem support and settles on actix-web as the right choice for now.
Understanding Machine Learning
StatQuest is a Youtube channel by Josh Starmer that covers Statistics and Machine Learning concepts. It goes into great detail and involves some math, but Josh takes care to explain everything in an understandable way.
What I’m Working On
I’ve been playing with svelte-query, a spinoff of the well-known react-query library, and I quite like it. Its caching model is flexible and powerful, and it makes it easy to coordinate multiple queries for the same data from disparate parts of the application.
One other nice thing about svelte-query is its mutation hook system, and I wrote an article about using it to implement Optimistic Updates.
Inspired by a short Twitter exchange, I had an idea to make a Git workflow that works similarly to a videogame quick save feature. This will let you save your changes more often, an especially valuable habit while refactoring code, and make it easy to “quick restore” to the previous quick save or squash all the quick saves together into a real commit. I should have something ready next week so watch here for that.
While writing the svelte-query article above, I had to reexamine and explain all the design that I put into the first version of the code, and I ended up making significant changes to the way it worked. The new version is much improved. Even if an article doesn’t get much traction, it feels worth it just for the process of examining what I’ve already written more closely.
If you enjoyed this, I’d love if you share it with a friend (sign up here) or just reply to this email with your thoughts. Thanks for reading!
Bryce Canyon, December 2015