Why Django?
2 min read

Why Django?

Might be my new passion
Why Django?

What is Django?

Django is a web application framework written in Python that follows MVT (Model-View-Template) concept used for rapid development of secure, clean and pragmatic websites. Django was initially released 15 years ago in 2005 and is developed and maintained by the Django Foundation.

Disqus, Instagram, Prezi, Bitbucket, Mozilla and many other well known applications and website use Django for their development needs.

Why?

As a beginner to web applications, Django is a good place to start. It implements the basics of web application development, object oriented programming and concepts such as MVT. So Django can help you learn a lot of the ideal practices and best practices.

Django follows DRY (Don't Repeat Yourself) principle. Existing code can be reused and you don't have to rewrite things such as validation for each route but implement it in the Model itself. Hence, fast and rapid development.

Since Django is a Python framework, it is quite easy to use. Python syntax is convenient, simple and easy to understand even for beginners. Even with steep learning curve, Django is quite easy to use.

Django comes with an admin panel out of the box.  Not just admin panel but the whole authentication, roles and permission module. Django Admin panel is easy to customize or can be used as is in projects.

ORM! A fully functional Object-Relational-Mapper comes with Django. Django ORM is one of the best built ORMs even when compared to the likes of Eloquent and Yii AR. The ORM also helps you to just switch out to another database by changing just a few lines of code.

Django by default enables several security features to protect your application against attacks such as cross-site scripting and SQL injection. The developers don't need to write more code to implement these security features.

As all other major frameworks, Django also come with libraries that help implement things such as social logins, API, CMS and many other. Django is also pluggable with thousands of packages built specifically for Django to implement tools and reusable apps. You can check some of them here.

With all these awesome features and components in Django, there is no reason not to choose Django for your web applications. The Django community is huge and very helpful. Django is growing rapidly in terms of users and the code base itself with improvements everyday.

Starting with Django?

The prerequisites to learning Django are basic knowledge in Python and Object Oriented Programming (OOP). So it is pretty easy to start coding in Django if you have dabbled in OOP before.

Listed below are some resources that can be utilized for your adventure with Django.

  1. Corey Schafer's Django Tutorial Series on Youtube.
  2. Django Girls Tutorial.
  3. The Django Book.
  4. Coding Entrepreneurs' TweetMe2 Series on Youtube (Highly recommended).
  5. Jose Portilla's Python and Django Full Stack Web Developer Bootcamp Course on Udemy.
  6. Traversy Media's Python Django Crash Course on Youtube.

You can find a lot of free courses related to Django on Udemy.

Start your adventure on Django now! The learning curve is a bit steep for Django due to the implementation of  MVT concept and having a custom ORM unlike frameworks such as Flask.