In the last article, I have covered the basics of setting up a Django project. In this article, we are going to create a simple contact application that will help our users to contact us.

The first thing to do is to create the application itself. That pretty easy thing to do and Django provides a tool for it. Do not forget to activate your virtual environment before application creation.

$ python startapp contact

When you create a Django application you get a folder similar to this one.

total 44 ./ ../…

This is the first in a series of articles in which we are going to build a portfolio application where you can showcase yourself and your work. We are going to cover important topics and I will try to explain each of them in a separate article. This series of articles will mainly focus on the Django development side of things. If you are interested in the front-end, I may write a couple of articles explaining that part of the application. …

In this article we are going to take a closer look at Twitter API (Application Programming Interface) and how can we use it to retrieve tweets based on certain criteria. This article assumes that you have a basic knowledge of Python and APIs. For those who are new to the world of software development here is a quick reminder.

Photo by Alexander Shatov on Unsplash


In computing, an application programming interface (API) is an interface that defines interactions between multiple software applications or mixed hardware-software intermediaries. It defines the kinds of calls or requests that can be made, how to make them, the data…

Recently, I have been working on a side project that required a web scraping of the Twitter platform. The main objective of the project was to extract the Twitter handlers for a list of particular accounts. Everything seems reasonable if there were 10–20 accounts but I was presented with a list of more than 12K records. The first thing that came to my mind was to use of course the Twitter API but I couldn’t find a way to retrieve the username based on the information I was given. Even if it was possible it would still take quite some…

In layman terms a generators are functions that produce sequence of results similar to regular functions. The difference between both lays in the method of returning actual results.

Photo by David Carboni on Unsplash

In regular functions, you would use something as return result to return a result to the caller, while generators use the yield keyword, which stop the generator from further execution and yields (returns if you like to) the current value. A simple example illustrates the behavior much better than words.

# regular-function.pyimport randomdef list_func(n):

m = 0
arr = []

while m < n:
m += 1

return arr

Recently, I’ve been working on several projects that required some kind of asynchronous behavior to speed up time execution. Most of you probably know that Python has a multi processing/threading modules that could help building such applications.

After a little bit of refactoring of my initial code, which by the way was synchronous, I was able to do a multiprocessing version of it that had quite an improvement. What I wasn’t sure about was by how much exactly improved my time execution. …

In previous part of these tutorial series I have made an introduction to regular expression and we’ve compiled some very basic search patterns to match numbers and names. In this tutorial we are going to cover more advance topics and compile search patters for emails, domain names, etc.

Photo by Nathan Dumlao on Unsplash

The first task in our list would be to build a regex that would match a email address. Email addresses as probably most of you know consist of two principal parts — a username and domain name. Lets start with a simple example

There are various ways to start building a…

Part 1

Recently, I have been working on a project of mine and I was stuck at login system’s logic for a while. It was working just fine but I only could authenticate with a username and password. You may be well aware by now that most web applications allows you to authenticate with an email and password and that is what I wanted to do. However, doing authentication by yourself is not that I would recommend. If you are just starting with web development just stick to your framework’s login system and you will be fine. But since I wanted some…

When I started my journey as a software engineer I was fascinated by the syntax of programming languages and most of the time I was asking what in the world that function do and how does it do it. The one that really grab my attention was python decorators. It looks elegant, simple and yet does so much for you — kind of like magic. You’ve got your function you want to decorate, you throw a @ sign before it and it works! Indeed magic!

Photo by Artem Maltsev on Unsplash

“Programming is the closest thing we have to magic”, Jenni Luckett

If you are reading…

In our previous article I have started and shown you the server side of our messaging app. As I previous state in this article we will go over the client side of the app and will make several tests to better understand how all works together. Let’s got started right away.

The client side, as you probably have guessed it is build in a similar fashion to server side — each process works in a separate thread. That is because we have two separate processes that we have to handle for that receives messages and one that sends messaging.


Jordan P. Raychev

Network, system and software engineer with true passion about technology. Love to read and spend time in nature.

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