Justin Duke Profile Banner
Justin Duke Profile
Justin Duke

@jmduke

Followers
5,405
Following
689
Media
2,414
Statuses
12,438

Founder @buttondown . Partner @thirdsouthcap .

richmond, virginia · he/him
Joined February 2009
Don't wanna be here? Send us removal request.
Explore trending content on Musk Viewer
Pinned Tweet
@jmduke
Justin Duke
6 months
Notes on two years of being an independent technologist. (LMK if I missed anything!)
Tweet media one
13
5
107
@jmduke
Justin Duke
7 years
hmm.
Tweet media one
Tweet media two
Tweet media three
Tweet media four
53
2K
7K
@jmduke
Justin Duke
3 years
congratulations to this google docs PM who is singlehandedly responsible for engendering more developer goodwill than any other individual at Alphabet in the past five years
Tweet media one
36
454
4K
@jmduke
Justin Duke
6 months
A fairly paradigmatic example of: 1. the system working as intended 2. why you should never, ever, ever buy email addresses
Tweet media one
11
101
2K
@jmduke
Justin Duke
6 months
I think I've told this story before, but: my first month at Stripe, a senior eng on my team (thanks Patrick!) noticed me print-debugging, pulled up a chair and said "we are going to spend the next hour getting you comfortable actually using a debugger." Probably the single
27
69
1K
@jmduke
Justin Duke
5 years
a technology company that doesn't get discussed enough as admirable and inspiring is JetBrains, which makes high-quality software under a sustainable revenue model
30
176
1K
@jmduke
Justin Duke
3 months
Had to get a little piece of history; here in Dulles during the largest IT outage in human history.
Tweet media one
20
53
1K
@jmduke
Justin Duke
7 years
this isn't even nitpicking, this is just bad analysis. almost every tech company's long-term ploy is to leverage their platform lock-in and replace one side of the marketplace with their own supply.
23
101
823
@jmduke
Justin Duke
2 months
@patio11 I'm reminded of this old blog post about someone leaving Microsoft in 2010:
Tweet media one
16
32
781
@jmduke
Justin Duke
4 months
Tweet media one
21
12
757
@jmduke
Justin Duke
1 year
Got married yesterday. 🥰
Tweet media one
118
4
612
@jmduke
Justin Duke
8 months
@keccers if i was a college student interested in startups i would get really good at [THE THING I CURRENTLY NEED SOMEONE TO DO WHICH I DONT FIND VALUABLE ENOUGH TO PAY SOMEONE FOR]
1
4
564
@jmduke
Justin Duke
6 months
I reserve a special level of animosity towards industries like cold email whose ability to generate "value" comes largely from their ability to snooker well-intentioned but naive business owners (like the person quoted above)
2
7
508
@jmduke
Justin Duke
8 months
this UI feels viscerally like three separate PMs are vying for my clicks
Tweet media one
19
6
481
@jmduke
Justin Duke
4 months
I've witnessed two attempts to do carte blanche style "whole codebase" rewrites in my career: both failed, even though the people involved were uniformly brilliant and well-intentioned. Don't do it. Don't even think about doing it. If you're really confident that it's the right
57
36
487
@jmduke
Justin Duke
1 year
this is why hacker news, despite its many foibles, owns
Tweet media one
9
11
477
@jmduke
Justin Duke
7 years
I love how much Makoto Shinkai loves trains.
Tweet media one
Tweet media two
Tweet media three
Tweet media four
3
95
437
@jmduke
Justin Duke
5 months
@andrew__rea i believe it was @gbrl_dick who informed me that in australia they call these a "bachelor's handbag", in case you needed more reason to buy them
9
8
404
@jmduke
Justin Duke
5 months
if you squint, 90% of every codebase is just state machines, bulk actions, (de)serialization, and access control
@peterldowns
Peter Downs
5 months
My friend (not an engineer) is starting to R e a l i z e
Tweet media one
8
18
722
13
12
386
@jmduke
Justin Duke
2 years
would throw so much money at a tool that made typescript errors look like this (sane, legible, pleasant) not forbidden arcana
Tweet media one
18
30
366
@jmduke
Justin Duke
3 months
@CodingGarden The obvious answer is B, right, because `onChange` and `value` are part of the HTML spec?
7
1
353
@jmduke
Justin Duke
2 years
There are a couple days left, so: I urge you, deeply urge you, to write a few hundred words reflecting on the year you've had and the year you hope to have. I've been doing this for almost a decade and let me tell you, the solipsism is very rewarding.
5
13
342
@jmduke
Justin Duke
1 year
my mood board for running a software business.
Tweet media one
Tweet media two
Tweet media three
Tweet media four
6
24
330
@jmduke
Justin Duke
2 months
Looking at Langchain's source and discovering it is largely just duct tape has made me permanently suspicious of every single non-baremetal AI company; if a startup starts talking about "agentic workflows" I immediately assume the buzzwords are meant as sleight-of-hand.
26
27
328
@jmduke
Justin Duke
1 month
An essay that I've sent many people and re-read many times over the past four years: Work on what matters, by @Lethain .
Tweet media one
@aboodman
Aaron Boodman
1 month
Waited too long in my career to do meaningful work, but making up for lost time now. Don't repeat my mistake. Life is short and the universe only gets one chance to know you.
5
14
199
2
26
324
@jmduke
Justin Duke
5 months
I am a little confused by the growing prominence of "drawers" as an interface pattern — it seems like a novelty/gimmick (not that there's anything wrong with that!) that's strictly worse than centrally-positioned dialogs. What am I missing? (I ask this sincerely, since the
Tweet media one
68
6
280
@jmduke
Justin Duke
2 years
(A work in progress.)
Tweet media one
21
19
277
@jmduke
Justin Duke
3 years
@shepwalker gotta save code blocks for the 2023 perf cycle
1
6
275
@jmduke
Justin Duke
9 days
We welcomed Lucy into the world yesterday 🥰.
Tweet media one
Tweet media two
Tweet media three
54
0
266
@jmduke
Justin Duke
2 years
stripe soft-launched pay-what-you-want payment links, which means i get to delete a whole slew of code
Tweet media one
8
5
254
@jmduke
Justin Duke
7 years
@jhford seems like they got themselves into something of a sticky situation
1
4
232
@jmduke
Justin Duke
1 year
Pretty remarkable (in a good way) how little GitHub's core design system has evolved in a decade. First screenshot taken in 2013; second one in 2023!
Tweet media one
Tweet media two
14
11
240
@jmduke
Justin Duke
2 years
My condolences to the Dropbox Paper PM.
well... that's something new. Google Docs supports code blocks now.
184
2K
17K
8
5
224
@jmduke
Justin Duke
7 years
@stevekovach this is me in fourth grade when i discovered that i could run "thesaurus" in Microsoft Word on every word in my essay
1
7
209
@jmduke
Justin Duke
2 years
Uh-oh: they're letting me write marketing copy again.
Tweet media one
9
10
216
@jmduke
Justin Duke
5 months
Life update: having a kid in October. 🥰 (Let the record reflect that including Telemachus in this photo was not my idea, but he's quite excited too.)
Tweet media one
44
0
216
@jmduke
Justin Duke
2 months
No such thing as a free lunch, but even if you have a team size of one I recommend starting a decision log — not just to capture decisions you've made but as a repository of decisions you need to make.
Tweet media one
6
4
210
@jmduke
Justin Duke
2 years
i am an absolute sucker for every single "markdown-ish DSL for pernsickety layouts" tool out there, and this is no exception
Tweet media one
1
13
200
@jmduke
Justin Duke
2 months
Okay, all the data people I've been following have been yapping about DuckDB for a while and I kind of assumed it was Not For Me. On a lark, I just tried exporting my entire OLAP events table (~100M rows, 20g) and throwing it at it and uh. I get the hype now.
Tweet media one
15
8
199
@jmduke
Justin Duke
3 months
A (Southern-coded, I guess?) thing about me: I find CEOs loudly complaining about high serverless bills, bad freelancers, getting hit by platform risk, etc. distasteful — not because that stuff doesn't suck (it does!) but because it belies a fundamental unseriousness
18
4
195
@jmduke
Justin Duke
6 months
Tweet media one
1
9
189
@jmduke
Justin Duke
5 years
idea: a todo list whose UI presents as the diablo II inventory system, forcing you to tetris-ify your priorities
Tweet media one
7
34
189
@jmduke
Justin Duke
16 days
Making a tiny little project during my lunch break. Any PDFs I'm missing?
Tweet media one
14
19
178
@jmduke
Justin Duke
10 months
Not sure if anything changed my approach to work and engineering in the past five years more than this passage from @Lethain , written in the context of staff engineering but much more broadly applicable.
Tweet media one
4
11
170
@jmduke
Justin Duke
7 years
This is like @erowidrecruiter made flesh:
Tweet media one
1
46
163
@jmduke
Justin Duke
4 years
my personal version of this trick is starting every document with “Okay, so, the thing is” to kick my brain into writing with my voice and not that of a disembodied author
@b0rk
🔎Julia Evans🔍
4 years
writing trick: sometimes when I write down an explanation of a technical concept, I accidentally use a lot of confusing jargon But if I try to explain it out loud to an actual person, often the explanation that comes out is MUCH more clear, and then I can just write that down
19
81
694
2
31
163
@jmduke
Justin Duke
10 months
not to be too schmaltzy, but Buttondown is in many ways a years-long thesis that a different type of software company — a neighborhood café rather than an industrial kitchen — can work, and is good for everyone and to that extent, this week has been incredibly rewarding.
14
3
160
@jmduke
Justin Duke
5 months
Something that has been on my mind lately: things take time.
Tweet media one
10
20
154
@jmduke
Justin Duke
6 months
@SynchroM > The net result is this; across-the board reduction in quality and performance for everyone. Hit the nail on the head there.
0
1
146
@jmduke
Justin Duke
2 years
Embarrassing confession: I'm one of those "retroactively mark up your google calendar to track time spent" people.
Tweet media one
19
2
147
@jmduke
Justin Duke
3 years
officially reached the age at which i am not just enthused but _thrilled_ at the discovery of Google Sheets' support for embedded visualizations
Tweet media one
8
5
147
@jmduke
Justin Duke
2 months
I can't believe it's taken me this long to do this.
Tweet media one
@dannypostmaa
Danny Postma
3 months
This saved us so many support queries
Tweet media one
122
239
6K
4
3
146
@jmduke
Justin Duke
5 months
everyone should keep a list of their favorite essays. mine is here:
@vboykis
vicki
5 months
I've lost track of the number of people I sent the B-lane essay to. It's one of my foundational texts, along with these
13
34
486
7
7
143
@jmduke
Justin Duke
2 months
Here is a good sign that PagerDuty is ripe for disruption: its empty state in a core onboarding workflow references HipChat despite HipChat shutting down in 2019.
Tweet media one
12
5
143
@jmduke
Justin Duke
4 years
Tweet media one
Tweet media two
Tweet media three
Tweet media four
16
2
135
@jmduke
Justin Duke
4 years
@ikasliwal i think not wanting to change your primary branch from “master” is actually a very useful shibboleth because it identifies those who object to improvements purely on ideological grounds, even and especially if it requires no actual labor or difficulty whatsoever
7
12
133
@jmduke
Justin Duke
1 year
Feel like all of these are uncontroversial, obviously true statements: · The product surface area of Twitter has not meaningfully improved in the past nine months · Stability is worse · Ad inventory quality is worse · Content quality (what the 'algorithm' favors, bots) is worse
8
17
130
@jmduke
Justin Duke
1 year
i don't know how you don't love this
Tweet media one
0
0
127
@jmduke
Justin Duke
2 years
One of the things that I cannot emphasize enough: you really, really do not need to keep on top of bleeding-edge front-end trends unless your goal is to monetize (through consulting, devrel, or infoproducts) your understanding of bleeding-edge front-end trends.
7
5
126
@jmduke
Justin Duke
9 months
Tweet media one
6
0
124
@jmduke
Justin Duke
2 years
the only complaint i have this about exceptional essay is that it purports to be about iOS. it’s probably the best design writing i’ve read in the last few years
2
5
124
@jmduke
Justin Duke
1 year
I think we're at the point where there's sufficient room + appetite for an aggressively editorialized version of Product Hunt. Feels like it's shifted a little too far towards being a marketing channel as opposed to being an actual to learn about new products
14
2
117
@jmduke
Justin Duke
28 days
It takes a tremendous amount of either industry inexperience or bad faith to contort a point about "traditional architectures will scale you really far" into "this is a number comparable to techempower benchmarks"
Tweet media one
Tweet media two
10
6
118
@jmduke
Justin Duke
6 months
this is also particularly good advice for software engineering.
@AuthorTOBurnett
T. O. Burnett
6 months
This is great advice. I definitely do it.
Tweet media one
87
320
2K
1
2
112
@jmduke
Justin Duke
2 years
@simonsarris "Sometimes magic is just someone spending more time on something than anyone else might reasonably expect." — Raymond Joseph Teller
3
10
111
@jmduke
Justin Duke
1 year
The best manager I've ever had was essentially absent from all technical discussions; the worst manager I've had was one of the best engineers I've ever worked with. Management is a deeply distinct praxis from craft.
@isamlambert
Sam Lambert
1 year
People mock PMs all the time but engineering management is just as broken. We've allowed people who can't even code to politic themselves into positions of power, driving down quality and creativity across the industry. Talented engineers are suffering under non-technical
84
144
1K
2
8
105
@jmduke
Justin Duke
10 months
Tweet media one
Tweet media two
Tweet media three
Tweet media four
@AliPlumb
Ali Plumb
10 months
What's the best individual TV episode you watched this year?
785
53
981
15
9
105
@jmduke
Justin Duke
6 days
Not to sound anodyne but have you ever felt your entire worldview and sense of self completely transform in real time?
Tweet media one
7
0
113
@jmduke
Justin Duke
1 year
*Merges PR* What a night *Phone buzzes* And a text? Killing it *checks phone* ok that was the deploy notification but still cruising
2
5
104
@jmduke
Justin Duke
16 days
i think this is true; i think it's also true that living close to family is spiritually nourishing, that commutes waste time and wither the soul, and that the easiest way to destroy 99% of your candidate pool is to mandate they live in a given location
@rauchg
Guillermo Rauch
16 days
Offices lead to greater connection, inspiration, community, productivity, and even wellbeing.
2K
89
2K
2
15
104
@jmduke
Justin Duke
2 years
I swear there's a tool that lets me do: localhost:8000 → application.local localhost:3000 → marketing.local localhost:3002 → docs.local But I can't for the life of me remember the name of it. Does anyone know what I'm talking about?
19
2
100
@jmduke
Justin Duke
1 year
After six years, Spoonbill — my first SaaS — is no more. I wrote a eulogy, including: · How I essentially upcycled an existing product · Stumbling my way into my first enterprise contract · Learning the hard way about platform risk I hope you enjoy it.
5
11
102
@jmduke
Justin Duke
2 years
Reposting a comment I made on HN yesterday. I think the proliferation of success porn on Indie Hackers, podcasts, et al have warped folks expectations on traction a little bit.
Tweet media one
5
6
100
@jmduke
Justin Duke
2 months
The two kinds of engineering:
Tweet media one
1
4
100
@jmduke
Justin Duke
3 years
prefixing your search term with "reddit" is a 2021 googling superpower in much the same way using exact quotes was a 2011 googling superpower
@Papapishu
chris person
3 years
Wirecutter moving behind a paywall is very funny because Gearlab has been kicking one part of that site’s ass for a decent while now and because I can just google “Reddit OLED 2021” and get a much more up-to-date result.
8
4
157
5
5
98
@jmduke
Justin Duke
6 months
one thing that has been pretty cool about the past twenty years is that you can find blog posts from the founders of billion-dollar startups about learning to code. i think it's very important to the industry that this remains true.
Tweet media one
5
2
97
@jmduke
Justin Duke
1 year
general call: if you're a super-early-career engineer interested in doing some part-time (~10-15 hrs/wk) full-stack dev work (python, vue, react), please slide into my DMs. i can offer you: · boring (but real) problems · helpful PR comments · cheer & bonhomie
7
15
96
@jmduke
Justin Duke
6 months
Tweet media one
Tweet media two
3
5
96
@jmduke
Justin Duke
3 years
my brain when someone sends me a nice email about my silly newsletter tool that i built because i was sick of using tinyletter
Tweet media one
1
2
94
@jmduke
Justin Duke
2 months
@kwharrison13 couldn't agree more
Tweet media one
0
0
95
@jmduke
Justin Duke
5 months
I was curious as to how @shadcn generated the live TSX previews for shadcn/ui, and wrote up some notes on the clever approach:
Tweet media one
3
4
94
@jmduke
Justin Duke
1 month
Counterpoint.
Tweet media one
Tweet media two
Tweet media three
Tweet media four
@amix3k
Amir Salihefendić
1 month
It’s better to ship nothing than ship something that's mediocre.
43
10
140
8
4
93
@jmduke
Justin Duke
4 years
i think for every tweet you do about tech journalism and/or venture capital you should immediately read one poem as penance
5
5
94
@jmduke
Justin Duke
5 years
Mondays at 22: This weekend was great; I started a new side project, learned a new framework, and went out to three new cocktail bars Mondays at 27: This weekend was great; I went for a walk and ate a a very nice apple
5
4
92
@jmduke
Justin Duke
4 months
This is — I don't think I'm exaggerating — the best SaaS advertisement I've seen in the past decade. A work of art in conversation with its ancestors!
@isidoremiller
Izzy Miller
4 months
Introduction to Hex 1̶9̶9̶0̶ 2024
18
20
323
1
6
93
@jmduke
Justin Duke
2 years
day one of unemployment and i'm already baking scones. at this rate i'm going to rebuild my blog twice by the end of the month
11
0
91
@jmduke
Justin Duke
1 year
if you’ll permit me a tiny bit of schmaltz: this past week, two things happened 1. Pulitzer Prize winner @edyong209 started writing on Buttondown 2. 79-year old sent in the attached feedback building software feels really, really good
Tweet media one
3
3
90
@jmduke
Justin Duke
2 years
Friends: the only thing that made me better at interviewing for jobs was interviewing for jobs. To that end, I've blocked off 5pm—6pm EST M-F for the rest of the year for mock interviews. Happy to give either a technical or non-technical interview:
6
17
87
@jmduke
Justin Duke
2 months
Buttondown's outgoing intern (who was behind every single good thing that happened to the editor in the past few months — footnotes, LaTeX, Fancy mode, Unsplash, emojis, and a few more surprises) stayed ten minutes late on their final day to add a unit test.
Tweet media one
2
0
87
@jmduke
Justin Duke
7 years
@nslater the direct quote + context is even worse.
Tweet media one
7
36
79
@jmduke
Justin Duke
2 years
😌
Tweet media one
@ikoichi
Luca Restagno 🐢 shipped.club
2 years
What's your #1 achievement of 2022 for your startup?
38
2
61
2
0
84
@jmduke
Justin Duke
2 years
I am extremely curious about the efficacy of LogRocket's content marketing strategy, which afaict is "just have a passably high-quality tutorial for every single possible technical topic that a developer might search."
12
0
82
@jmduke
Justin Duke
2 years
@WillManidis the average tech employee is a 35-year old parent of two writing J2EE and has no idea what y combinator is
2
0
81
@jmduke
Justin Duke
2 years
@charliermarsh for me personally, it's that i need to expand to third or perhaps even fourth-order thinking. second-order is just not cutting it these days
1
1
79
@jmduke
Justin Duke
10 months
Pretty much the perfect price-hike email, IMO: · what the change is · when it kicks in · why it's happening · sympathetic without being smarmy
Tweet media one
9
0
77
@jmduke
Justin Duke
5 months
The entire MKBHD discourse is a nothingburger (his critics are a tiny, unserious minority) but it does serve as a good example of a broader issue: the industry largely considers tech journalism to be a marketing channel, and sponsorship disclosure laws are woefully behind
3
5
79
@jmduke
Justin Duke
4 months
Tweet media one
@bobsredmilf
darth penis
4 months
what are posts that aren’t load-bearing anywhere but your personal lexicon. like the ones that weren’t really popular but are so enshrined in your mind that you just assume they got hundreds of thousands of likes
526
416
11K
0
11
78
@jmduke
Justin Duke
7 years
@NifMuhammad I, Paddingtonya
0
5
73
@jmduke
Justin Duke
3 years
just became the recipient of the worst email signoff of all time
Tweet media one
8
1
75
@jmduke
Justin Duke
4 years
i promise this will be the first and last time this month i wade into discourse
Tweet media one
2
4
76