Finding the Right Fit
Hosting projects for other people to see is one of the most fulfilling aspects of learning to code and can act as a neat way of building a portfolio of work to show off to potential employers. The eagerness for developers to share their work with the computer science community has always been something that drew me into the field. Once I started creating my own apps, I started looking for cheap ways to show off my work. If you need cheap virtual resources, I’ve found these three options to be easy to use and reliable:
If you’re interested in coding dashboard in python, check out my intro articles to Dash!
Dashboards in Python for Beginners and Everyone Else using Dash
Build a basic and advanced dashboard with this beginner tutorial on Dash in Python
Digital Ocean has reasonable prices, several configuration options, and plenty of bells and whistles that make deploying your apps easy. Through their Droplet, a linux-based virtual machines, you have the option of scaling into the amount of resources you need as your project expands. You can spin up a Droplet for as little as $5 US dollars a month with 1 vcpu and 1GB ram.
Their features and pricing are great, however, what I like best about Digital Ocean is their fantastic community in which you can find tons of tutorials to help you set up your virtual server. Using the tutorials I found in Digital Ocean’s community, I was able to host a Python Flask app up and share it with the world. If you’re new to setting up web servers, I highly recommend checking out these tutorials on New Server Setup
Although I like their product options and their community, I am not currently using Digital Ocean to host any of my projects. I have switched to Hetzner for my VPS needs…
Although Digital Ocean has a solid reputation, great community and affordable prices, Hetzner gives you more bang for your buck and is a less-cluttered user experience. I personally use Hetzner to host my Wine Recommendation App. Beyond the cheap prices, Hetzner makes it super easy to rescale your machine if you need more cpu or memory. When I was doing some feature engineering for my tensorflow-based project, I rescaled my VM to 8 vcpu, 32GB ram, and 40GB ssd for around 35 USD a month. Digital Ocean doesn’t even come close to those prices for that much power. Once I was done, I was able to rescale my machine back down to 2 vcpu and 4GB or ram in about a minute of time. They make it as simple as possible!
Hetzner VMs are also super easy to backup or snapshot so you can protect your work or restore to previous builds with little effort. I’ve used their Snapshot feature several times while working on new features and optimizations. Although I’ve only been using Hetzner for a few months, I have have zero complaints about their services or features.
Heroku allows you to host apps for free! Although my experience with Heroku is limited since I’ve only hosted one app through them, it seemed easy to use and links up to your GitHub for a seamless deployment experience. Although the setup was fairly straight-foward, I did have some initial trouble reorganizing my file structure on GitHub to match Heroku’s requirements. Beyond that, I got my app up and running on their platform pretty quickly. Heroku has a fantastic community and tons of resources if you’re not familiar with using their tools and platform. One of the downsides to their free platform is that it can take a noticeable amount of time for your app to load sometimes. You can check out my heroku app that visualizes bellybutton biodiversity here.
I plan on writing an article on how to get started using Hetzner since I’ve been using it to host my data science projects. Keep your eyes peeled for more content on the topic! Thanks for reading!
Check out my articles if you’re interested in programming and data science!