Reading List
The most recent articles from a list of feeds I subscribe to.
Migrating a ZFS pool from RAIDZ1 to RAIDZ2
I recently upgraded my home TrueNAS server and migrated 18 TB of data from a 4-disk RAIDZ1 ZFS pool to a new RAIDZ2 pool.
The neat part is that I did it with only three additional 8 TB disks and never transferred my data to external storage.
Upgrading from RAIDZ1 to RAIDZ2 without moving data to external storage is tricky because:
Educational Products: Month 9
Highlights
- I look for ways to limit the number of half-complete tasks I’m juggling.
- I brainstorm ways to talk with more of my early readers.
- I have trouble accepting a design decision in the Gleam language.
Goal grades
At the start of each month, I declare what I’d like to accomplish. Here’s how I did against those goals:
Offer a lower-friction way for users to pre-order my book
- Result: Switched from Kickstarter pre-orders to Stripe payment links.
- Grade: A
I ran the initial pre-sale through Kickstarter, so I decided to just stick with it for subsequent pre-orders. After a couple of months, I realized Kickstarter requires customers to create an account to buy the book, which adds a lot of friction and discourages people from buying.
goHardDrive Leaked Personal Data for Thousands of Customers
I recently returned a product to goHardDrive, a merchant that specializes in selling used hard drives. During the return process, I discovered that they were accidentally publishing details about thousands of their customers, including their full names, mailing addresses, email addresses, and order details.
The leak
When I requested a return from goHardDrive, they assigned me a return merchandise authorization (RMA) number ending in five numeric digits. I’m not publishing my actual RMA number, but you can imagine that it was a number like this:
My First Impressions of Gleam
I’m looking for a new programming language to learn this year, and Gleam looks like the most fun. It’s an Elixir-like language that supports static typing.
I read the language tour, and it made sense to me, but I need to build something before I can judge a programming language well.
I’m sharing some notes on my first few hours using Gleam in case they’re helpful to others learning Gleam or to the team developing the language.
A Simple Example of Calling an Elixir Library from Gleam
I’ve been experimenting a bit with Gleam and Elixir lately as part of my search for a new programming language.
One of Gleam’s flagship features is that it can call Elixir code and libraries, but I couldn’t find any examples of how to do that. I wrote a simple example of calling an Elixir library from a Gleam project, based on my beginner’s understanding of the Gleam/Elixir/Erlang ecosystem.
Install dependencies
For this example, I’m using