Image by Kevin Ku on Unsplash


PostgreSQL is one of the most popular relational database management systems in the world powering some of the biggest businesses. If you download Postgres, you may be annoyed to find that you can only host it on your machine’s localhost server unless you pay a recurring fee to host it on a platform like AWS or Azure. In this guide, I’ll show you how you can deploy your database for free using Heroku and write to it in Python.


Install the latest version of Postgres, install pgadmin4, install python3, and pip3 install sqlalchemy and psycopg2

1: Making Your Heroku Account & Creating Your First App

The first step to deploying…

Image by chuttersnap on Unsplash


Complexity theory is the study of the amount of time taken by an algorithm to run as a function of the input size. It’s very useful for software developers to understand so they can write code efficiently. There are two types of complexities:

Space complexity: How much memory an algorithm needs to run.
Time complexity: How much time an algorithm needs to run.

We usually worry more about time complexity than space complexity because we can reuse the memory an algorithm needs to run, but we can’t reuse the time it takes to run. It’s easier to buy memory than…

Google Images


In a world of misinformation, it has never been more important to recognize common failures of argumentation known as logical fallacies. While there may be no practical way to fact check all of the information you encounter — the ability to identify invalid arguments can help you recognize unsound reasoning when you see it, even if you don’t know all the facts.

How do we define an argument?

An argument is a set of at least three propositions where one is the conclusion and the rest are premises that lead to that conclusion.

A proposition is a declarative statement that is either true or false. For…

Image by Annie Spratt on Unsplash


Congratulations! You’ve finally come up with the perfect new app idea. You and your team of software engineers rush into writing the code that will be your ticket to fame and fortune. But wait. The code Maria wrote for the homepage of the app looks great — but how will that work with the code Steven wrote for accessing the database? And Hector put together a function that calculates the values we are looking for — but how will those values move from one page to another in the app? …


You made it! Thanks to your analytical genius you managed to determine the leading factors for predicting real estate prices over the next ten years in your area, or the lead causes of climate change, or the words you can use in product descriptions that correlate with the highest sales on Amazon. There is only one small problem: You need to share your findings with the world!

In this article I’m going to show you how to deploy your data models as websites for free using the tools: Python, Jupyter Lab/Notebook, Git, and GitHub. …

Photo by Max Duzij on Unsplash


Prod is down! What is it this time? The test cases we wrote covered all the use cases we could imagine — and they all passed after we updated our services yesterday. If only we could go back and investigate all the recent changes to our code to see what went wrong! This is the type of problem Git exists to solve.

In this article, I’m going to show you how to use Git to track the history of files in your project so that you will be able to diagnose bugs whenever they appear in your project.

What is the difference between Git and GitHub?

GitHub is…

Cody Nicholson

Teacher, Software Engineer, Photographer and Writer

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store