January 8th, 2021
Hello everyone, after I release a post about Netlify earlier this week I thought why don't I talk about Heroku also. I mean I'm not using it as often and I honestly think that there is no real need to use Heroku for most cases compare to Netlify, yet Heroku still has its own perks and that makes it a solid PaaS option for some cases ( for my personal uses actually ).
"Heroku is a container-based cloud Platform as a Service (PaaS). Developers use Heroku to deploy, manage, and scale modern apps. Our platform is elegant, flexible, and easy to use, offering developers the simplest path to getting their apps to market."
The definition above comes directly from Heroku's own website and I think that's enough for a rough explanation of what Heroku really is.
I also have a post here that explains "Cloud Computing Basics" here. You can also check what types are applications are eligible to run on
I'll talk about my switches between Heroku and Netlify since they are my 2 main choices when it comes to deploying something, especially for free :).
I actually have a pretty basic distinction between those 2 and this is like
" Do I have my own server code that needs to run somewhere " -----> Heroku
"Else" -----> Netlify.
I mean as I explained on Netlify's own post there are many reasons to choose it over most competitors, just like it when it comes to running your full-stack application, prototype with a legitimate back and frontend I don't really look for another provider then Heroku, and I can easily downgrade the reasons behing that into a few sentences:
Heroku and Heroku CLI is really quite easy to use when it comes to creating projects, user auth, pushing a project, and so on and so forth...
Code storage options are quite allright and I usually using Heroku as a remote checkpoint for most of my projects along with Github.
Builds are quite fast and mostly non problematic, for same language code bases build settings are usually identical and that makes it truly easy to launch.
Developer dashboards are useful and can help you through to track your application and build processes.
Language support is quite extended, I'm currently using it for only NodeJS apps yet I'll use it for Python and Go projects in the future. Other supported languages; Java, Ruby, PHP, Scala, Clojure
Awesome free tier. Heroku allows you to host up to 5 applications for free, and nearly with no real limitations. I mean cold start sometimes can be a little anoying for most developers but I don't see it as a problem since the real ( You also can solve that problem by creating an endpoint for fake pings to keep an app warm all the time, but if your app is not receiving such trafic that is enough for being warm maybe you don't need such thing to begin with.)
All these things above are the reasons why I choose Heroku for some use cases, but I should also quickly mention that for production using something from AWS is probably better for 2 reasons. AWS will cost less overall, and AWS offers bunch of other services other than just PaaS services you having all your production related work on one platform is probably for the better.
That was it for today, I hope to see you all in the next one. :)