I have a super noob question: why does everyone seem to use a Heroku (or similar) server service for MVPs or side projects? Are the vanilla hosting services like SiteGround, BlueHost or HostGator insufficient or just not interesting? Assume PHP project (although I think Ruby and Node are supported by most).
The vanilla hosting pricing appears much better for projects and learning.
It's free for small projects (if you won't exceed the monthly quota, which is more than enough for first months of every startup).
It's your devops.
It's scalable.
Hope that helps!
Thanks!
Heroku trains you to build stateless apps, making it relatively straightforward to scale your app.
Heroku's list of integrations is unmatched. You can easily provision rabbitmq and redis servers in a few clicks, and it'll automagically connect to your app.
Heroku supports a wide range of languages and environments, and you can further customize them with buildpacks. I've never used docker, but I imagine buildpacks are Heroku's implementation of a similar idea: predictably get the machine to a specific state before starting the app. All that control add all you need to know is json.
Heroku is decades of dev ops knowledge condensed into a platform that does the heavy lifting in the back. I've barely scratched the surface in my usage but I feel like a goddamn warlock.
If anything can beat all that, and hear their entry tier price of free ... well ... I'd really like to see it.
Thanks! Like many new IHs I spend more time worrying about unimportant stuff than building. Heroku it is.
Focus on getting customers in your first few years. Not devops.
It's easy to use and, if you are on a budget, you can use free accounts (otherwise the 7$ account will save you the sleep time). It will help you focus on building your ideas instead of doing devops.
Personal (and recent) experience, I moved to Heroku for a single page application since the routing just works (unlike some providers/servers where you need to do additional logic for routing) and I deploy updates to live in seconds.
I agree with all the reasons others are invoking. That said I don't use heroku's free plan because their dynos sleep way too fast and are ridiculously too slow to wake up. And you need to pay for new dyno for every project...
So I use a regular $5 digital ocean droplet and I add nginx and various databases. I'm kind of putting all my eggs in one basket but I never had issues so far. Regarding CI, gitlab's CI is nearly free (2000 build minutes per month).
For landing pages I have also used gitlab's pages sometimes.
Check out theses threads, it's very interesting all the solutions the indie hackers have been coming up with to host their stuff
https://www.indiehackers.com/forum/hackers-where-do-you-host-your-projects-fdcdf9b296
https://www.indiehackers.com/forum/hey-indie-hackers-where-do-you-host-your-saas-applications-114545ff71
Use a free service like New Relic that pings your app every 30 seconds (or whatever it is) and you shouldn't have to deal with the sleep issue.
I think free dynos still have to sleep 8 hours per day though
Yes and no.
You get 550 hours/account/month.
If you verify a credit card, you get +450 hours.
Most months = 30*24 = 720 hours.
So you can have 1000-720 hours and still be ok.
That said, if you have multiple dynos, or don't verify a card, you would likely run out of hours.
Source: https://devcenter.heroku.com/articles/free-dyno-hours
Yes, that’s true. Heroku changed it to require 8 hours of sleep. (Sounds kind of funny)
Very dumb question but what's a Dyno and what is this sleep/wake up issue?
Read those forums. Common default to Heroku with so DO sprinkled in. Why I'm asking is I'd like to host a WP domain and a 2nd project on PHP in the same droplet/hosting account. Looking for the best bang for buck.
Heroku is the love of my life😀😚
Heroku is easy to use
Heroku is fantastic and it just for side projects and mvps.
The point of it is that it scales with you. So it’s equally viable for a side project or a large high growth product.
Also... setting up of platforms is hard, time consuming work. Have you ever tried setting servers and databases in AWS or similar? The skill level involved is very high and the learning curve is steep.
Heroku builds all that for you - it recognises the codebase you deploy to it and builds everything required automatically.
It’s almost like magic.
Thanks!