top | item 10866400

(no title)

bpatrianakos | 10 years ago

I'd argue the barrier is just as high. I taught a ten week course in back end development and I think the students would have done equally well deploying on a VPS or Heroku.

The curriculum called for using Heroku but I regret following it now. Heroku bills itself as being easy for a beginner but go ahead and try to deploy any simple Rails or Node project using their guides. Half the time something goes wrong. Either you need extra dependencies or you have to do extra configuration that the setup instructions didn't mention. In the end you have to look up how to check the logs and even if you get that far a beginner has no clue what those logs are really saying. Even as an experienced senior developer, I couldn't get the demo project I was showing them deployed without a ton of hassle and 4 attempts.

So while it may seem like a VPS has a lot more moving parts, it's a better deal overall. Same level of confusion and complexity for students but in the end they at least know a bit about how a server works (which Heroku hides) and it's way cheaper even with SSL. I could have run that same project for $30 up front and $10 monthly.

discuss

order

skorecky|10 years ago

Many pet projects you can run for Free on Heroku. Their docs are pretty straight forward, not sure what your hiccups were but I've deployed quite a few sites to Heroku without much if any issues.

The asset pipeline in rails use to cause some issues but I think that has all been resolved with the 12 factor gem.

Also setting up a VPS is in no way easier than Heroku. You have to install nginx, ruby, mysql etc. Then you have to setup routing. Then you have to learn all sorts of sysadmin stuff so you don't get hacked. Setting firewall permissions, mysql permissions. Then you want to deploy that app. So you have to setup capistrano or whatever. Next thing you know day wasted.

Heroku?

    git push heroku master

AngeloR|10 years ago

Instead of spending money on a vps for my last side project, I went the heroku route and it was even easier. I spent 7$ on a private github repo.. which synced to heroku. And a free CircleCI account that also synced up with everything. Then just pushing my branch meant, automated testing and with heroku pipelines, a PR meant automatic test env.

onion2k|10 years ago

Using AWS Elastic Beanstalk you can deploy by zipping a folder of your code and uploading it using a webpage form. The barrier for entry on cloud infrastructure is really low.

That's not the "right way" but arguably nor is using a Heroku box with no idea what's actually running on it.