We live in an buzz-driven, ephemeral experience-saturated, meme-laden, AI-generated, consumer-fueled world that urges us to think little beyond the next phone ping or lulz or online purchase-induced dopamine hit.
But a real world still exists.
And the stakes are so high.
Let's live accordingly.
Posts by Ben Johnson
www.nytimes.com/2025/05/21/n...
‘The mayor of Toms River says the church property presented “a great opportunity for parking, for recreation.”’ 🥴
been playing with Cursor a lot more (yes I know, I'm late to the game) and suddenly it makes a lot more sense to use the integrated terminal.
I'm normally a "skip the IDE terminal and use iTerm instead" type of person, but being able to yeet things into chat is super fluid. #cursor
I'm writing less these days and that's ok. I just didn't have as much gas in the tank, and life seems more complex than it did at the start of my career
benjamminj.dev/writing-less
I remember a past job like 5-6y back had a "Clickable" component. We were supposed to wrap all interactive content in it IIRC
Under the hood it as an <a> with a missing href and `onClick` prop enforced 🤦
"we don't like to write comments, because when the code changes the comment doesn't" 🚩🚩🚩
don't variables, classes, methods, and functions all have the same problem? The computer doesn't care if you name it 'a' or 'userFirstName'
idk, maybe update the comment when you change the code?
Hot take #4: still on "clean code" — comments are good + useful when well-written. Many devs don't write nearly enough comments.
Leaving them out doesn't magically make your code clean, but it DOES make it hard to remember what you were thinking when you wrote it.
#softwareengineering #cleancode
Hot take #3: "clean" and "tidy" are poor metaphors for "good" code. Most times "clean" just means "something I like".
Instead of calling code "messy", say what's bad about the code.
#software #code
This same thought has been bouncing around my head for the past week too.
Imagine starting a component local-first ("use service worker") and moving it server side later. Or vice versa. Or interleave server/worker/client based on your needs. ✨
Ok hot take #2: if you squash commits, it doesn't matter whether you do 56 perfectly named commits or keep force-pushing one that says "fix"
What matters is the commit that lands on main
Started mentally tossing all the tech that could be learned into 3 buckets
1. Stuff that's interesting to me right now
2. Stuff that's professionally helpful, right now
3. Stuff that's professionally helpful, long-term
Helpful to see the intersection bw categories
Have used this approach on my app for $dayjob, and it's super nice
We even do it in lieu of storybook to make dep management easier. Works well if your design system components only need to support one app or are inline with the rest of the codebase
A LinkedIn job listing where the job title says "vibe coder frontend developer"
ugh, now the vibe coding lingo is finding its way into job listings
if your product comparison page only shows where you're better than competitors, I don't trust it — regardless of how much you say you're trying to be fair.
hot take #1: in a lot of cases, global state stores are better than react context.
especially if you only have 1 provider instance at the root of your app.
got a big backlog of software hot takes living in my brain rent-free.
just gonna start a evergreen thread and keep skeeting them here sans nuance.
who knows, might get around to writing fleshed out versions someday™
3yo has been super into WALL-E this last month. banger of a film and feels super relevant for being made 17y ago.
I mean, the billionaires just launched everyone into space bc that was easier than fixing their mess 🫠
4 weeks into a 12 week parental leave, and it's wild how I have completely lost track of what day it is. both day of week and calendar date
that said, so nice to have a bit of time away from work to spend with my family
Congratulations!! 🎉🎉
oooh I might have to try that. has always felt like that valley bw beginner and intermediate/advanced sql is especially tricky to cross.
Oh! One more I used a bunch back last time I was interviewing:
- what does success in this role look like to you in 3mo? In 6mo/1y? What would make you say "wow, what an amazing hire"?
Tells you a lot about what the org actually wants and is a little harder to fake.
Lastly, any questions you have about business model, funding state, and future hiring plans
Good luck! Overall, I'd say bias towards asking things that address your own dealbreakers / concerns about the role. Those will feel the most natural to ask.
A couple that come to mind and that I've used in the past:
- How do you as a company decide what work gets prioritized?
- What problems in your company "keep you up at night"?
- How do your eng org balance technical investment with moving the product forward?
"Also, we don't actually test your CSS or HTML during the interview loop. Yes, you'll be using those a lot more day-to-day, but we really just want someone that can scale our app to Google scale." 🫠
Just crossed the 2y mark at $dayjob. Wild to see out-of-stealth, Series A, and Series B
For me 2y is a huge deal, I usually get an itch to leave much earlier but this gig is pretty dran good. ☺️
Same year, another round of funding. Excited to finally be able to announce our Series B ✨
Excited to be along for the ride, this team kicks butt.
sublime.security/blog/sublime...
feels like we've thrown conventional wisdom out the window, but have been SO PLEASED with our hand-built form, data table, and filtering libraries at `$dayjob`
still trying to find ways to write + share about the approaches taken since they're private.
This is about the time of year I ask myself "...now where did I put that sun lamp?"
I feel like this year is especially darker than usual. Extra clouds during the day, which makes that 4pm sunset even harder