Python Django complete roadmap

Faris Mohamed
Tinkerhub MES Marampally
5 min readApr 24, 2020
Python django complete road map
don’t bother the ‘e’ in ‘from’ 😋

Long story short…

This guide will help absolute beginners to get started with programming and build applications with Python and the Python Django framework, Also gets a slight knowledge about Version control systems like git and GitHub. There is a dedicated YouTube playlist which explains every step of this guide in Malayalam. By following this guide and sparing just 2 hours every day, every beginner can start their journey as a full-stack web developer.

Contents

  1. Python basics (5–10 days)
  2. Web development basics (3–5 days)
  3. Python Django basics (5–10 days)

The course will help you to build your first project (a personal blog) in Django along with deployment in PythonAnywhere. As a bonus, you will get an introduction to Git and GitHub as well.

So let’s get started……

#1 Python basics

Python is an interpreted, high-level, general-purpose programming language. Created by Guido van Rossum and first released in 1991, Python’s design philosophy emphasizes code readability with its notable use of significant white-space — Wikipedia

Python is one of the easiest languages to get started with programming, also it is a powerful language. if you are really new to the world of programming, it is recommended to watch the video below to know the basic concepts of programming in Python.

introduction to Python

So to get started with Python we are using an online coding platform called Snakify. Create an account in Snakify and start solving the problems by following the steps provided in it. Snakify is a good platform to understand the basic concepts in programming and also to improve your problem-solving skills. So try to complete all the problems. We’ve created another video explaining how to solve the harder problems in Snakify, with some hints.

continuation of introduction and hints to solve Snakify problems

After completing the Snakify problems you’ll be having a good understanding of Python and the basic programming concepts. To dig deeper on to Python, some links are provided below for reference.

References

  1. http://wiki.python.org/moin/BeginnersGuide/NonProgrammers
  2. https://www.w3schools.com/python/

#2 Web Development basics

Before knowing Django and how to use it, it is important to have a basic knowledge of Web Development. Creating a website is easier than it really sounds. Using the basic HTML, CSS, and some Bootstrap elements we can make a decent good-looking website.

a tour of HTML and CSS elements

The previous session will help you create a website, it’s content, and styling it at its primitive level. A website is where a beginner can show off his abilities. For that, we can use the Bootstrap elements, and don’t hesitate to try out your creative skills with CSS and HTML. W3SCHOOLS will be your best partner to help you get momentum with web development.

Bootstrap is a free and open-source CSS framework directed at responsive, mobile-first front-end web development. It contains CSS- and (optionally) JavaScript-based design templates for typography, forms, buttons, navigation, and other interface components. — Wikipedia

let’s start the project!!

With the knowledge from the above section and some workouts in the W3SCHOOLS’ code editor, you’ll be ready to get your hands dirty with your first project, believe me, that little knowledge is more than enough knowledge to start your first project!!

Get set code …!

Web site Front-end Design Part-1

code till now: https://github.com/tinkerhub-mesm/python_learn_from_home_2020/tree/HTML_part_1

Web site Front-end Design Part-2

code till now: https://github.com/tinkerhub-mesm/python_learn_from_home_2020/tree/HTML_part_2

References

  1. https://www.w3schools.com/html/
  2. https://youtu.be/PORRrz3Y8Vc
  3. https://www.w3schools.com/css/
  4. https://youtu.be/Y02yI1OfZjI
  5. http://websitesetup.org/bootstrap-tutorial-for-beginners/
  6. http://tutorialrepublic.com/twitter-bootstrap-tutorial/
  7. http://javatpoint.com/bootstrap-tutorial
  8. http://geeksforgeeks.org/top-10-projects-for-beginners-to-practice-html-and-css-skills/

# Time for the bonus part*

As I told you earlier, we’re gonna learn the Version control system. Specifically, we’ll be learning Git and GitHub for now.

Git is a distributed version-control system for tracking changes in source code during software development. It is designed for coordinating work among programmers, but it can be used to track changes in any set of files. Its goals include speed, data integrity, and support for distributed, non-linear workflows — Wikipedia

GitHub is a Git repository hosting service, but it adds many of its own features. While Git is a command line tool, GitHub provides a Web-based graphical interface. It also provides access control and several collaboration features, such as a wikis and basic task management tools for every project. — techcrunch

We were lucky to host Athul Cyriac Ajay — GitHub campus expert. Hear from him about Github, its uses and why is it important.

Introduction to git and Github by Athul Cyriac Ajay

Let’s make our own GitHub repo and upload the code that we’ve done so far…

getting started with git and GitHub

#3 Python Django basics

A great website needs a perfect back-end to provide its data. Django’s primary goal is to ease the creation of complex, database-driven websites.

Django is a Python-based free and open-source web framework, which follows the model-template-view architectural pattern. It is maintained by the Django Software Foundation, an independent organization established as a 501 non-profit. — Wikipedia

Why, when, and how Django is used, hear it from Ejas Muhammed. Ejas has good experience in using Django for various projects.

introduction to Django by Ejas Muhammed

The first sessions of Django continues from previous Web Development sessions. The video will help you to install and give you a tour of what all components are preloaded in this framework. It then will guide you to the basic terminologies and how to work with the framework.

Basics in Django

Next, we will build a backend for the blog using Django. How to create the index, description pages, and databases in Django. The video also introduces you to the admin dashboard features in Django.

code till now : https://github.com/tinkerhub-mesm/python_learn_from_home_2020/tree/django_part_1

Blog creation first step in Django

A website needs excessive data manipulating and managing facilities also. In Django create, read, update, and delete (CRUD) operations are easy to implement with data.

code till now : https://github.com/tinkerhub-mesm/python_learn_from_home_2020/tree/django_part_2

Managing data in webpages using Django

code till now : https://github.com/tinkerhub-mesm/python_learn_from_home_2020/tree/django_part_3

By now you have completed your blog using Django framework. But it must be hosted in a platform which is reliable and trustworthy to make sure that everyone can access your blog with ease.

References

  1. https://docs.djangoproject.com/en/3.0/intro/tutorial01/
  2. https://www.geeksforgeeks.org/django-tutorial/
  3. https://www.youtube.com/playlist?list=PLsyeobzWxl7r2ukVgTqIQcl-1T0C2mzau

hosting a django application

Using PythonAnywhere we can easily host our blog. It will not face any issues since it is supported by Python and provides in-browser access to server-based Python and Bash command-line interfaces, along with a code editor with syntax highlighting.

hosting your first Django powered blog

Hello Django Developer !!!

full code: https://github.com/tinkerhub-mesm/python_learn_from_home_2020

guide/steps to follow: https://github.com/tinkerhub-mesm/python_learn_from_home_2020/blob/master/Guide.pdf

complete playlist

never stop learning…!!

--

--