What's inside
- But first, what is Django?
- Key benefits of Django
- Top startups that use Django
- So, when should you use Django?
- Conclusion
- Read more
Initially published: 31st of July 2019 Updated: 24th of February 2022
Django is one of the most popular frameworks for web application development today. This handy open-source framework allows for rapid growth, offers support from a large and active community of developers, and simplifies the development process to help teams focus on more unique product features.
One of the factors behind its success is the growing popularity of the Python language. According to the TIOBE index, Python is one of the most popular programming languages. Its use is becoming even more widespread as organizations embrace Python for projects in demanding areas such as data science.
Are you wondering about where Django can be used to bring the highest benefits? Here are three examples of successful startups that bet on this framework right from the start.
But first, what is Django?
Django is an open-source web framework written in the Python programming language. It offers excellent value to any web development project because it comes with a set of ready-made components that help to accelerate and simplify the process of building web apps.
The Django framework features handy components that realize the most common functionalities we find in web apps - * user authentication, management dashboard, form processing, and more.*
Using this technology, web developers don’t have to reinvent the wheel and build these components from scratch every time. The framework helps them save time, speed up the software development process, and focus on aspects that make a web app unique.
Do you need more information? Read this What is Django and how to get started?
Key benefits of Django
The framework has become an essential web development technology for several reasons.
- The Python language
Python is one of the world's most popular software development technologies. The language is gaining popularity thanks to being commonly taught at universities and of use to academic and scientific communities.
A large ecosystem of tools, libraries, frameworks, and plugins surrounds Python. Developers can take advantage of massive numbers of libraries and packages for Python/Django to build features quickly.
Here’s what Python says about itself:
“Program development using Python is 5-10 times faster than using C/C++ and 3-5 times faster than using Java. In many cases, a prototype of an application can be written in Python without writing any C/C++/Java code. Often, the prototype is sufficiently functional and performs well enough to be delivered as the final product, saving considerable development time.”
- Structure
Another key benefit of the Django framework is that it suggests the correct structure of a project. That structure, in turn, helps developers figure out how and where to implement any new feature.
Startups say that the framework is so great precisely because it allows skipping the step of developing the structure and all of the issues related to custom structures. In the beginning, startups can only worry about the actual code and not the potential structural issues that may crop up later.
Also, having a project structure similar to many projects around helps when you need to ask the community for help. The chances are high that somebody out there solved the issue and showed you how to do that in your project. Or you might encounter helpful developers to whom you can easily explain the problem.
- The “batteries included” philosophy
You can count on all of the essential web-related functions already included. Software development teams building web applications can take advantage of free authentication, admin panel, ORM, semi-automatic DB migrations from Python code, lightweight development web servers, and many more.
That aspect speeds up the work of developers - they simply don’t need to implement this basic stuff. Furthermore, if any feature you need is missing, you can be sure that the active community has already developed a package that delivers it.
Information about the packages is available on the web - including our blog!
Check out 10 Django packages you should know
- The fantastic community
I’ve already mentioned these advantages in the two points above. The framework is surrounded by a vibrant community of passionate developers who will help you solve any issue you may encounter. They’re also behind the many valuable packages that extend its possibilities.
Thanks to all these benefits, the framework has become a critical technology for anyone looking to launch a successful web application. No wonder startups worldwide started to use Django in their products right after its inception.
Top startups that use Django
There’s no better way to evaluate a framework than asking ancient startups that used it. Here are three good examples.
Note: an ancient startup is a company that began as a startup more than 8y ago.
- Disqus
Disqus is a worldwide blog comment-hosting service for sites and online communities that use a networked platform. Starting on October 30, 2007, Disqus has been using Django.
Disqus is doing well, with 17 billion monthly page views. Developers have had a good experience with the Django framework and aren’t planning to change it in the future. It just works for them. The Disqus team has even developed Sentry that enables catching all kinds of errors in the framework.
“Slow database queries and network latency generally outweigh the performance overhead of a robust framework such as Django” - that is what Matt Robenolt from Disqus said a few years back, and it seems that his opinion hasn’t changed since.
Instagram is a photo- and video-sharing social networking service. Instagram was launched in 2010, about two weeks after its co-founders, Kevin Systrom and Mike Krieger Kevin started to build its first version. They admitted that thanks to Django, “it was a super easy set-up with one way of doing things”.
The company was set up in the dark times of Django v1.3 and prior. At that time, the Django ORM suffered from an optimization problem. These ORM issues weren’t noticeable until June 2011, when the company hit 5 million users. Everything works fine now, but to secure the app for the future, Instagram’s developers started fixing Django v1.3 and rewriting Django’s ORM.
Until now, Instagram has been using Django with no issues. What’s more, Instagram is one of the two Platinum Corporate Members supporting Django (the other one is JetBrains). All employees at Instagram (and Facebook, which owns the platform) can contribute code directly to Django. That’s the highest supporting achievement, showing the strong relationship between Instagram and Django.
Pinterest is a social media platform that relies on curating images with the help of complex algorithms. Its development began in December 2009, and the closed beta version was launched in March 2010.
All the startups on my list have been using Django since the beginning of the development stage. Unfortunately, as Pinterest rose to prominence, it began to suffer from Django ORM issues like Instagram. Its ORM was simply not fast enough - for example, making double and triple calls to a database ( during [one of the PyCons](Instagram’s developers confirmed that these issues were fixed in Django 1.6).
Video can be found here: https://www.youtube.com/watch?v%3DWO7oNzpQeAY
As Pinterest grew, it first moved most of the logic to the database and then changed its framework from Django to Flask. Since late 2011, Pinterest has been using Flask. In January 2012, comScore reported that the site had 11.7 million unique US visitors, making it the fastest site to break through the 10 million unique visitor mark.
So, when should you use Django?
The point about using Django is being able to develop your product quickly. A product that doesn’t have a chance to become significant. All three of these fantastic startups were built using this technology. Thanks to Django, they could quickly prepare and deploy their products.
Disqus quickly grew with no issues and got millions of users due to the fast development process with Django that allowed quickly adding new features and keeping users interested.
Instagram is thankful to the framework's community that now supports it by contributing to it. If not for that community that worked so hard to make Django faster, Instagram might have fallen apart. Instagram’s developers once spent ten months updating from Python 2.7, Django 1.3 to Python 3.5, and Django 1.8. That shows the value of new updates coming from the Django community.
And lastly, Pinterest got its chance thanks to Django as well. If not for the quick development process praised by developers, Pinterest would require more time to launch on the market. And what if Pinterest started with Flask? Django has everything a web startup needs thanks to its “batteries-included” approach. That makes building web applications from scratch simply way faster.
Check this out, too, Where to put business logic in Django (tech talk)
Conclusion
By now, you should know why Django is such a popular framework organizations use for building web applications quickly and smoothly. These three examples display the key strengths Django brings to the table: accelerating the development process with a rich selection of ready-made components and the incredible dedication of its community.
There are more usage examples in the piece Companies and apps that use Python/Django.
Read more
- How to use Elasticsearch with Django
- 6 best Django tutorials and books for advanced Python developers
- 6 expert tips for building better Django models
- Elasticsearch with Python: 7 tips and best practices.
Would you like to learn more about Django for web development? Check our Ultimate Tutorial for the Django REST Framework:
- Django REST Framework Tutorial – CRUD
- Django REST Framework Tutorial - Login and Authentication
- Django REST Framework Tutorial - Custom Fields
- Django REST Framework Tutorial - Pagination
- Django REST Framework Tutorial - Filters and Filtering
- Django REST Framework Tutorial - Functional Endpoints and API Nesting
- Django REST Framework Tutorial - Selective Fields and Related Objects
Download the Sunscrapers Guide to the Django REST Framework here.
Articles mentioned in post