HNHacker News
TopNewBestAskShowJobs

jmduke

19,865 karma · joined December 31, 2011

I run Buttondown (https://buttondown.com).

ex-Stripe, ex-Amazon.

---

https://twitter.com/jmduke https://jmduke.com justin@buttondown.email

submissionscomments
jmduke··on Ask HN: What API's do people wanna buy/pay for?
I am curious as to your phrasing of "besides by doing market research" — market research is the whole point!

Most successful API products in the sense that you're describing share two common characteristics:

1. They are a thin wrapper around some dynamic dataset.

2. The cost to an organization maintaining that dataset is prohibitively large and/or difficult relative to the value they receive from it.

If I were in your shoes, I'd find a niche that I was relatively well-positioned to address (say, Shopify stores, or programmatic SEO — something small enough to have a uniform opinion but large enough such that there are multiple cohorts of individuals willing to pay) and spend time in their forums looking for people complaining about datasets or information they wish they had. The API part is an implementation detail.

jmduke··on Ask HN: Disabled and out of work for years, but need some side income
Have you considered technical writing? I've talked to a number of folks who are in a similar position, and writing (as opposed to generalist development) has a number of advantages:

- It rewards experience though, except for niche-specific writing, does not require understanding of specific frameworks or programming languages - It is often 'important-but-not-urgent' work, so intermittent availability is less of a deal-breaker - Clear writing is very much an orthogonal skill from programming aptitude writ large, and you don't need to compete with new grads

jmduke··on Boring Python: Code quality
I love this template as well, and wholeheartedly recommend it. There are a couple things you probably don't need (click and nox, for instance, seem only useful if you're really building a couple specific things) but the gestalt of it is really strong. The [article series](https://medium.com/@cjolowicz/hypermodern-python-d44485d9d76...) that spawned the template is worth reading in full.

I would go so far as to say that the hypermodern template, nomenclature aside, is strictly better than the recommendations that the OP put forward both here and in the previous essay on dependency management. Poetry and ruff, for instance, are both very good tools — and I can understand _not_ recommending them for one reason or another but to not even mention them strikes me as worrisome.

jmduke··on Ask HN: Those with money-making side projects,how did you come up with the idea?
(Also 100% this.)
jmduke··on Ask HN: Those with money-making side projects,how did you come up with the idea?
This may be an unsatisfying answer: slowly.

I tweeted and wrote a fair deal about the process, and had good-but-not-great launches on HN and Product Hunt. There was definitely no 'big bang' where one day I did not have product-market fit and/or traction and then the next day I did; it was a slow drip of new users and new customers who helped refine the product & its position.

This is a strong _advantage_ of having something be a side project; your runway is drastically longer than other business models. (For example, from 2017—2018 MRR slowly grew from around $500 to around $1500. This slow growth felt painful, but also it was incredibly sustainable since I wasn't drawing a salary from it; churn was extremely low, and the only real problem was a small top-of-funnel since I wasn't going viral or spending money on ads.

jmduke··on Ask HN: Those with money-making side projects,how did you come up with the idea?
I run Buttondown (http://buttondown.email/) full-time now, but did so as a side project from 2017 to earlier this year.

My strategy was fairly simple: I wanted to create a better version of a tool (in this case, Tinyletter) that:

1. I already used whose quality I thought was extremely poor,

2. I did not think the creators were incentivized to make improvements;

3. I could think of a sub-niche that I was well-equipped to build because it reflected my own experience (support for Markdown, a REST API — basically developer-adjacent functionality.) [^1]

I think we are in general pretty awash in bad products; it is not particularly difficult to pay attention to what you use over the course of a week and see what could use some obvious improvements.

[^1]: People often think of 'niching down' as adding features, but I would argue it is often just as much about removing features. As companies grow, they must add more and more surface area to satisfy certain use cases. Side projects do not have this problem; they can be laser focused on one or two such use cases, and as such remove all the surface area that many users find to be detritus.

jmduke··on Buttondown is a small, elegant tool for producing newsletters
Agreed: this is probably the one feature I'm currently most embarrassed of not having, FWIW! (You can accomplish it with Zapier at the moment, but I'm tired of having to give that as a halfway answer.)
jmduke··on Buttondown is a small, elegant tool for producing newsletters
(I run Buttondown.)

It is certainly trickier than I expected at the onset of starting the project (which is true of pretty much everything related to the email space), but not overly onerous. Most of my risk lies less in content and more in recipient, and I pour most of my efforts into subscriber validation during onboarding & activation.

jmduke··on I stopped setting a financial goal for my SaaS
Yup, precisely. I use Postmark for transactional emails and a very small subset of bulk emails; Mailgun handles everything else.
jmduke··on I stopped setting a financial goal for my SaaS
This is a really good idea, and I'm going to start doing it; thanks.
jmduke··on I stopped setting a financial goal for my SaaS
Oooh, interesting. That's good to keep in mind — thanks.
jmduke··on I stopped setting a financial goal for my SaaS
Yeah, I think you did a better job of describing my dichotomy than I did. The galaxy brain corollary, though, is that if I get _too_ many folks who are asking for free-tier support, it means I can't support everyone at the level I'd like to; sort of a microscopic version of the OSS labor crisis.
jmduke··on I stopped setting a financial goal for my SaaS
I'm using a combination of Mailgun and Postmark to send emails, and heartily recommend them both.
jmduke··on I stopped setting a financial goal for my SaaS
I think this is one of things where my Business Brain 100% agrees with you (the majority of my customer support burden comes from free plans, though it's worth pointing out something like two-thirds of my paid cohort converted from free) but my Hacker Brain things this project _should_ have a free plan, because free plans are nice and good and neat.
jmduke··on I stopped setting a financial goal for my SaaS
This post resonates a lot with me!

I've got a side project that's current bringing in around ~2-3K MRR (https://buttondown.email).

I spent a long time daydreaming about having it hit four-digits in recurring revenue — it felt like such an accomplishment that if I were able to crack it, it'd be a dream come true. It's certainly not enough to live off of (especially living in Seattle), but it's a non-trivial amount of money and gives me a great source of pride.

The idea of doubling that amount, though, seems — well, if not _exhausting_, certainly unappealing. I can't think of a way in which my life would be improved by additional revenue, but I can think of a lot of ways it would be hampered by having twice the customer base:

1. More customer support and time spent writing emails

2. More time working on features that aren't what I care about

3. Less freedom to experiment with other projects or ideas

One of the joys of having a project that is truly _yours_ is that you alone get to dictate your terms of success.

jmduke··on Mailchimp to Sendy: Cutting Email Costs
Hope you don't mind the plug, but my project is roughly "Tinyletter/Mailchimp for small startups/SaaSes" — https://buttondown.email
jmduke··on ‘I Don’t Really Want to Work for Facebook.’ Say Some Computer Science Students
The headline is actually So Say Some Computer Science Students, which I think is a non-trivial difference.
jmduke··on Goodbye iPod, and Thanks for All the Tunes
For all its flaws, I can't remember a more intimate relationship I had with a technology product than the one I had with my first iPod.
jmduke··on Ask HN: What's your way of saving/recollecting important career notes?
Personally, I keep a digital commonplace book —

https://en.wikipedia.org/wiki/Commonplace_book

In practice, this ends up being a huge markdown file (so I can store readable code) with entries prefixed by tags to make for easier searching.

jmduke··on An MBA is still a great boost for salaries
This is a nitpick, I know, but its pretty disingenuous to just compare "pre-MBA salaries" with "three years after a two-year MBA salaries". That's a gap of five years: I'd be interested in a comparison of salaries between a cohort three years out of a two-year MBA and a similar cohort that just worked for five years.

(I think that the MBA cohort is still making more overall, but I suspect the value prop is less impressive.)

jmduke··on Don't Buy Anyone an Echo
I thought it was amusing that a mere two weeks ago, this exact same author wrote a review of an Echo-enabled speaker entitled The Best Bluetooth Speaker Now Works With Alexa and It's Amazing.

https://gizmodo.com/the-best-bluetooth-speaker-now-works-wit...

jmduke··on “Make It Biblical” – How Vagrant Story Changed Video Game Localization
I like Vagrant Story, and most of the games in its setting (Ivalice) are my favorite in the Final Fantasy series.

For a more emblematic example of the script quirks these games employ, The Final Fantasy Tactics remake (War of the Lions) goes much more Shakespearean, for good and ill (you lose some of the most classic lines in the original, like Don't blame us. Blame yourself or God., but the entire thing is more cohesive and vivid)

Here's a good side-by-side: https://dekaja.dreamwidth.org/1675.html

jmduke··on Why I Was Fired by Google
To clarify: you are aware that, prior to the memo, Google already a lawsuit on their hands from the Department of Labor with regards to alleged gender discrimination?
jmduke··on Ask HN: How did you find your great side project idea?
Would you mind sending me a screenshot at justin [at] buttondown [dot] email? All the icons are emoji, so I'm guessing there's some weird unicode issue.
jmduke··on Ask HN: How did you find your great side project idea?
This is a cliché but honest answer — I was using a similar tool and thought to myself “man, I could make something better than this.” I have this impulse a lot, and usually I stop myself from actually following through (there is always so much complication hiding below the surface!) but I kept coming back to it.

Eventually, I set a deadline for myself; I said if, six months later, I couldn’t scratch the itch to make something better (or at least find something better) than what I was using, then I’d start working on it.

The six months passed, and so it was born:

https://buttondown.email

jmduke··on Ask HN: What high level language for writing a command line utility?
Python has click (http://click.pocoo.org/5/), which is pretty great.
jmduke··on App sizes are out of control
Worth pointing out: The author of this article works at Kayak, which has an iOS app of 176MB.

https://itunes.apple.com/us/app/kayak-flights-hotels-cars/id...

(As far as I can tell, the answer to "why is LinkedIn.app so large?" is not "because LinkedIn's iOS team sucks", but "because LinkedIn's iOS team works under a number of constraints, including app size, and app size is not a particularly powerful constraint to optimize for.")

jmduke··on Ask HN: What are some big Vue.js projects in production right now?
At an accessory level, tooling and ecosystem richness — which I don't really hold against Vue, because it'll definitely get there in time.

At a slightly more existential level, I miss how lightweight React components are: they're literally just functions, which makes breaking them out really frictionless. If I've got a FooWidget and I want to break out the header of the widget out into a new component, it's incredibly trivial to do — as opposed to Vue, which forces you to create a new file for it, register that component in the namespace, etc.

(I wrote about this a little more in depth here: http://jmduke.com/posts/what-vue-needs-next/)

jmduke··on Ask HN: What are some big Vue.js projects in production right now?
https://buttondown.email

My newsletter app's frontend is entirely in Vue 2. It's been very pleasant to work in, coming from both a React and Angular background, though there are definitely some things of React I miss.

(I feel like the only important question is "if I were to go back in time and restart the project, would I still use Vue?" — to which the answer is an emphatic yes.)

jmduke··on Under the Spell of James Baldwin
I too thought the movie was compelling, and well worth the watch -- perhaps its most powerful segment, at least to me, was the contrast of clips of police brutality, riots, and demonstrations alongside traditional/nuclear family advertisements.

Here's the entirety of the roundtable between Baldwin, Poitier, and others (shown briefly in the film), which I found fascinating and, in many ways, as relevant as ever:

https://www.youtube.com/watch?v=2H7Cr0HtiJI

← PreviousPage 3 of 34Next →