Welcome to my PinkLetter. A short, weekly, technology-agnostic, and pink newsletter where we cultivate timeless skills about web development.
Ciao!
When is the last time you were asked to estimate a feature?
Estimations are a terrible tool, but I'm sure you already know that.
A couple of weeks ago, I was asked for one. I refused to try, and I asked a question instead: how much time would you be willing to spend on this feature?
Dabbling as a product developer in the last few months taught me something important: a feature is a solution, but the critical part is solving the underlying problem.
We can always build a better, more sophisticated feature. But sometimes simpler and sooner makes more sense.
Giving a feature an appetite forces you to think about the problem. Talking about estimates moves the conversation into solution space.
Flexbox Zombies by Dave Geddes
Flexbox is incredibly powerful. But it's also crazy hard to learn well. So we all end up depending on a cheat sheet and some mad guessing in the dev tools.
This is an Educational Game. Each section unravels part of the plot, gives you expertise over a new flexbox concept, and presents zombie survival challenges that force you to solidify your new skills like your life depends on it.
(Riccardo: Watch out, display: flex;
will assume a whole new meaning after playing the game.)
Fuzzy Name Matching in Postgres by Paul Ramsey
A surprisingly common problem in both application development and analysis is: given an input name, find the database record it most likely refers to. It's common because databases of names and people are common, and it's a problem because names are a very irregular identifying token.
(Riccardo: This is an excellent read, regardless of your database of choice.)
Magic Test by Andrew Culver and Adam Pallozzi
Magic Test allows you to write Rails system tests interactively through a combination of trial-and-error in a debugger session and also just simple clicking around in the application being tested, all without the slowness of constantly restarting the testing environment.
(Riccardo: The REPL-driven-development shown in the videos is so cool. Let's steal the idea and bring it to other languages. Thanks, Arek, for the link!)