How to set up a new Django project

This post is a continuation of the django multi-tenancy series. In this part, we’ll begin to implement the backend of the multitenant Django app. We’ll be setting up a Django project from scratch.

The project source code up until this point is available on the github setup branch.

The project’s final outcome can be explored using this live demo.

Installing project dependencies

For this project, we’ll need to have python 3+ installed. You can find the necessary steps in this digital ocean post. Next, we’ll need to make virtual environments for installing project dependencies.

Install virtualenv

pip…


Photo by Faisal M on Unsplash

Handy resources and tools for python and Django developers

I’ve been developing software using Django for a while now and over the years, there’s a couple of resources and Libraries that I’ve come to depend on. They’re tried and tested and can be easily extended to suit my needs.

I did another post highlighting resources for junior devs. You can check it out if you’re interested.

I’ll start the list with some technical content creators who have been invaluable to the success I’ve had in Django development.

Content Creators

Simple is better than complex

This is a blog run by Vitor Freitas that provides Django technical knowledge…


I’m really excited to finally launch my new website 🥳. It’s been a labor of love and in terms of growth, I must say I really enjoyed working on it. For the tech stack, I went out of my comfort zone as I am majorly a backend developer. So I used the opportunity to polish on my frontend skills. I utilized my favorite javascript framework, vue.js. I used their static site generator, gridsome. Bulma was used for CSS. In this article, I’ll explain how this decision came to be, what I was using before, and my thoughts on gridsome.

What I was using before

As…


When developing django projects, there comes a need to write one-off scripts that automate a particular task. Here are some use cases I’ve found myself applying before we continue with the implementation.

  1. Cleaning up faulty data columns en masse.
  2. Migrating multiple schemas in a multitenant application

There are two ways we can go about running these types of commands in django. Write a normal python script which you can then call by running, and the other is by utilizing django-admin commands. These are run by calling python manage.py command_name.

For this post, I’ll demonstrate with a blog app having just…


In the first and second part of this series, we’ve introduced ourselves to web scraping and the techniques one can apply to achieve this task. We did so with BeautifulSoup and selenium python libraries. Check them out if you haven’t yet.

In this final part of the web scraping series, we’ll be exploring the scrapy library, the scraper API and gain an understanding of the need for using these tools.

For this walkthrough, we’ll scrape data from the moviedb website. This is just an example as they provide an API if you want any of their data. …


“Experience is the best teacher.”

I started making my portfolio site as a means of getting out of tutorial purgatory that had plagued me for a long time. True to the statement above and as it has been widely preached, getting your hands dirty by building a real-world project is a sure way to get your foot in the door in software development.
I chose my starter project as a portfolio site and the experience left a tremendous impact on me. Here are just a few of the insights gained.

Discovering my passion.

When I started making the site, the initial goal was…


Hey there I was inspired to write this post based on my experience trying to move my deployments to use docker, particularly for django applications and couldn’t get a comprehensive place/article that covered what I needed.Hopefully this article will help anyone out there who is feeling as stuck as I was.

A lot of you might have already heard this phrase being thrown around almost everywhere you turn. You probably googled the term docker up and even tried experimenting with it but might have given up along the way. Heck, to be honest I did hold up on it one…


the story was originally posted on my personal website.

This post has been a long time coming and it’s very ironic I made a decision to writing more this year, but oh well, better late than never they say.

I started programming well over two years ago. It all began as a casual look at some C language tutorial one afternoon. At the time it all seemed so foreign to me and to be honest kinda challenging. Nonetheless I continued putting in the hours whenever i had free time and eventually managed to build a couple of projects along the…


Photo by MI PHAM on Unsplash

I recently put down the book A man of the people by the great Chinua Achebe, and one of the characters that stood out for me was one Max Kulamo. A vibrant young lawyer in the fictional city of Biro. For context, the events of the book happen in post independent Africa where their country, seven years after independence from British colonial rule, is suffering from run away corruption and the government is haemorrhaging cash faster than anyone can understand. The masses, blindly led to believe that everything is OK, follow their leaders’ word like a fish takes to water.


It’s no secret that reading a good book can be a life changing moment .

“I do believe something very magical can happen when you read a good book”

-J.K Rowling

However as with most things with life, too much of it has its own undesirables.Here’s a list of why.(unpopular opinion).Don’t crucify me😁

1.You don’t take away any lessons if you read too much.

“In the case of good books, the point is not to see how many of them you can get through, but rather how many can get through to you.” -Mortimer J. Adler

the end goal is not too read so many books but rather to take away…

Lewis Kori

¶ software engineer||°love magic.°|| Reach out: lewiskori.com

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