Somebody actually finished my HashCache capture the flag challenge! Congratulations to Pierre Rosenzweig! I can’t help but notice that none of the rest of you finished the CTF. I don’t want to say Pierre’s better than all the rest of you combined, so I’ll just end this paragraph here.
What’s in a name?
Here’s some thought-provoking dialog from season 9 episode 2 of The Simpsons (video):
LISA: A rose by any other name would smell as sweet.
BART: Not if you called ’em stench blossoms.
HOMER: Or crapweeds.
MARGE: I’d sure hate to get a dozen crapweeds for Valentine’s Day. I’d rather have candy.
HOMER: Not if they were called scumdrops.
Mastodon is a lot like Twitter, except for two key differences:
Instead of being centralized, it’s federated, which is awesome.
Its version of tweets are called “toots”, which is decidedly less awesome.
LISA: A tweet by any other name would reach as many people.
BART: Not if you called ’em toots.
So, what’s in a name? Would Marge really hate to get a dozen crapweeds for Valentine’s Day? Or would she be able to enjoy them no matter what they were called? Could we ever say something like “I live in constant fear of the president’s toots?”
I think that given enough exposure, we can get used to almost anything, but a bad name can keep us from getting that far in the first place.
Bringing this back to some semblance of relevancy, dynamic programming is a mysterious sounding name for a straightforward programming pattern. A lot of developers, especially new ones, are worried that they won’t be able to handle dynamic programming if it comes up in a job interview. But it’s just a bad name. I hope to write something next week to demystify dynamic programming.
Wow, I’ve written six blog posts since the last newsletter. Here they are in chronological order:
Privacy and the Google/Apple Exposure Notification System – I mentioned in my last newsletter that this post was coming. If you’ve been curious (or worried!) about this technology, please give this post a read. I explain why the system works the way it does and how it preserves your privacy.
Shove It Up Your Bot: an Intro to Slack Bots – This is a fun one, but it will genuinely help you if you want to build a Slack bot.
Building Custom Twitch Commands With Glitch – This is a collaboration with my stepson. You might be surprised by how easy it is to integrate with Twitch chat.
Delta Encoding – This time around, the foster kittens tackle time-series data compression.
Schrödinger's Dollar – Probabilistic payments are a way to make micropayments practical. The post explains the concept and touches on how it can be implemented with a smart contract.
SSRF to Redis CTF Solution – This is my write-up for that CTF challenge I mention in every newsletter. It is, of course, full of spoilers, so avoid this one if you still want to try the CTF yourself.
If you’ve read this far, thank you! Did you know that you can reply to this email? Tell me what you’ve been working on, what you’re reading and writing, and whether I should join Mastodon.