Hacker News new | ask | show | jobs
by andrewl-hn 3544 days ago
No one has mentioned Heroku yet. Starting at $7 they are a bit more expensive than DigitalOcean, but with that extra $2 you'll get their platform, their tooling for deploying the app, their database backups. Adding other services later on is also easy with their addons. By choosing Heroku you can save hundreds or thousands of dollars in ops costs over a course of a few months.

The hosting cost may go up quickly, but if your business is successful you can either absorb it, or spend time and money to migrate away. They run on AWS, so picking the same location means you can run mixed infrastructure (part on Heroku, and part on AWS) without a latency hit. Thus, a hybrid configuration is very viable.

2 comments

My tech startup was just a processing server for Stripe payments, of which the static website had a single thing to buy. If its not clear all the money was made from people buying the product itself.

Heroku worked perfect for that. The $7/mo was fine.

Only reason I write this is because I wish there was a book of tech architecture case studies. What problem or business venture they were trying, what architecture they chose, how much it cost, how it worked out for them and what they wish they did.

What kind of DB did you have? As I recall, the 7$ offer only supported 10000 rows of PostgreSQL?
Stripe was the DB
I see, and if you were to use your own DB to keep track of users, transactions and sold items. Would you still recommend that same solution?
Unlikely, but Stripe has those features in its Customer object. If you want to make some sort of pre-cognitive recommendations engine, then do what you need to do that. These are premature optimizations I would never need.
I would immediately buy that book.
Using Heroku puts two levels of bloat between you and the hardware, and locks you into a hosting environment that becomes very expensive quickly. Eschew.
I disagree with this wholeheartedly and just posted why above but wanted to reiterate it here. This might just have been a throw-away comment but "bloat", lock-in & cost are red-herrings.

"Bloat" here is a virtue. Heroku removes two levels of drudgery and administration between you and the hardware. Who wants to be racking hardware? Who wants to be patching the OS? Who wants to be dealing with package vulnerabilities? None of this helps actually build the business

Lock-in is minimal, particularly if it's a self contained app and you're not using a lot of services. There are countless examples of companies who've moved off of Heroku when they've gotten big. Plus there's also lock-in using EC2, S3, AWS. There's lock-in of some level regardless where you run your stuff.

Future cost is also really, very very low because P(success) is, sadly, super low.

Built in to your comment is the assumption that you're trying to grow your business big or die.

If you're working in a niche market, costs are important and keeping them low can be the difference between having an independent livelihood and failure.

No it's not, it's really not. In fact I think in a niche market then it's often even more true.

If you're building in a niche then (almost by definition) you're not going to need a lot of infrastructure. There won't be millions of customers and they (usually) won't need tons of infrastructure.

I think the only case is where you're building a business like Pinboard :) Where the CLTV is relatively low but the the bandwidth, storage & compute is relatively high.

Regardless of the market you're in though, if you want to build an independent livelihood or a lifestyle business typically infrastructure costs still shouldn't be a factor.

A good livelihood might be $50k/yr say or $4k/mo roughly. The difference between $5/mo and $500/mo in hosting costs isn't what determines success or failure. It's whether or not you've built, marketed and sold an app to 5 or 500 customers.

I agree with your overall sentiment I think, but there are many side gigs where $5 vs $500 a month is the difference between viable and not viable. Sometimes it's the difference between sticking with an idea long enough to turn it into something viable; something that's bleeding you $500/mo won't have as long a life as something that's only $5 or $25/mo while you're figuring out if there's something worthwhile or not.

A niche market cuts both ways. Sometimes you don't need to worry about scale, but you also can't bet on large numbers of customers coming to cover up inefficient choices.

> Who wants to be patching the OS? Who wants to be dealing with package vulnerabilities?

Choose OpenBSD (and don't install stupid stuff like bash) and you won't have to deal with any of that.

No system is immune. Everything needs to be patched. https://www.openbsd.org/errata60.html
I wouldn't say it locks you. All the configuration is done via env variables, so your app code will have no Heroku-specific parts at all. Since it's a very known and popular platform there are many resources online about how to migrate away. If I were given a task to migrate between hosting providers I would rather deal with Heroku apps than anything custom and bespoke on top of DO, Linode, or AWS: heroku apps are just so predictable.

Besides, not every app needs big computing power, and many businesses can thrive on Heroku for a long time. An employee of ProductHunt mentioned on a podcast that they ran their website on 3 Performance L dynos at in 2015. That's $1500 plus some extra for the database and other services they may be using (say $3k in total). That's one of the popular websites out there, and that's a pretty good indication of an upper bound of the infrastructure cost on Heroku for a popular product. Most will never exceed the $200-300 a month.

Is $3k a big sum? Yes, it's noticeable. Will you end up spending more on hosting plus the ops work that needs to be done over time for a similar app to run and grow? Likely.

EDIT: spelling

How does it lock you into their hosting environment? The apps I've made I've been able to transfer to and from Heroku without any modifications.
I was referring to cloud-style hosting. I suspect many services are over-engineered by an order of magnitude in order to be cloudy.
Mostly just AWS apps.
How can you talk about lock-in without more argumentation when the person just above your response gave good reasons why Heroku is not a lock-in?