Show newer

I've been going through @WhatGotDone and replacing validation functions with parse functions that output explicit types. The process exposed a few places where I forgot to validate untrusted input:

Show thread

tl;dr - Instead of remembering to validate everywhere, use static typing to convert untrusted input into an explicit *type* that ensures the validation occurred.

Show thread

When writing code that processes untrusted input, I've recently struggled with the boundary between "parsing" and "validating." This article by @lexi_lambda was tremendously helpful in unblurring the line between the two.

A look back at May. Sorry, I can't be bothered with a nicer excerpt. ✨️

Day 029 of #100DaysToOffload.

RT @WhatGotDone
You can now list your Mastodon address in your WhatGotDone profile @joinmastodon

Here's what I got done this week:
* Searched desperately for a reliable Raspberry Pi vendor
* Found a schedule coordination tool for TinyPilot
* Hosted @AndrewAskins as special guest speaker at my peer mentorship group to teach about outbound recruiting

The post is well organized, clear, and includes visualizations that complement the text effectively.

Crystallizing your thoughts into concise, cogent writing is mentally taxing and time-consuming, but it creates a huge difference in writing quality.

Show thread

When people ask how I'm able to get to the front page of Hacker News so frequently, my unexciting answer is that I spend 10-30 hours writing and editing each post.

@plainice_ tried investing more time into his latest blog post, and it reached the #2 spot on the HN front page.
RT @plainice_
Shout out to @deliberatecoder's course got me to #2 on HN.

He inspired me to put in the extra effort. I probably s…

I'm hiring a part-time Vue developer to join the @tinypilotkvm team.

If you're interested in working on a popular open source Raspberry Pi project or know someone who would be a good match, reach out!

I'm currently in talks with manufacturers up the chain so that I can order directly rather than strain these downstream vendors. I'll find out if they'll allocate me quota next week, so fingers crossed.

Show thread

One of the odd things about selling a Raspberry Pi-based product is that vendors don't really want to sell me Raspberry Pis.

They sell them as loss-leaders for add-on products, so when I come along and buy *just* Pis, they sometimes get annoyed and tell me to stop ordering.

Even though it got more disinterest than interest, I will stubbornly be using this book as part of my crusade against the passive voice.

Full table of contents is on the book website:

Show thread

After creating a first draft outline for Refactoring English, I reached out for feedback from people who asked for updates about the book. The green circles represent topics people said they were most interested in, the red represent topics people found least compelling.

Finally launched a @WhatGotDone feature I've wanted for a while: profile photos!
RT @WhatGotDone
Profile photos are now live! Give your What Got Done profile some personality by adding a photo.

@plausible The first site I've migrated is the landing page for my blogging course. Give me some clicks so I can see the dashboard do stuff.

Show thread

@plausible I just launched it, but setup was incredibly easy. Took about 5 mins, including creating a custom subdomain for the JS script. Swapping GA for Plausible bumped my lighthouse score by 3 points.

Show thread

The nice thing about Google Analytics v4 being so horrendously bad was that it finally gave me the push I needed to start migrating to @plausible

Plausible: open-source, privacy-sensitive, publish excellent articles, bootstrapped, and they build in public.
Google Analytics: closed source, privacy-hostile, painfully slow, and complicated.

The first site I've migrated is the landing page for my blogging course. Give me some clicks so I can see the dashboard do stuff.

RT @chddaniel
Just launched:

"How I Make $200k/Year By Writing Messages To Strangers"

Written in public, in a way

It's a post I've written before, and it reached #6 on HackerNews

But I adapted it into a completely new post, after listening to feedback

Show older
Michael Lynch's Mastodon

Michael Lynch's personal Mastodon instance