What is Django?

12/09/2024

I regularly get asked "what is Django?" by family, friends and people that I know from outside of our working environment.

Most people then follow up to ask if it is anything to do with the film…

Actually, the popularity of the Quentin Tarantino film "Django Unchained" and this famous meme has helped people to pronounce the name correctly… JAN-GO (the D is silent)

d silent

In this post, I want to share some of the history of Django and hopefully answer the big question. What is Django?

The official definition from the Django Project website introduces the Django framework like this:


“Django is a high-level Python web framework that encourages rapid development and clean, pragmatic design. Built by experienced developers, it takes care of much of the hassle of web development, so you can focus on writing your app without needing to reinvent the wheel. It’s free and open source.”


Personally, I like the headline: "The web framework for perfectionists with deadlines." It’s simple, says what Django is used for and who uses it.

I was first introduced to Python and Django in August of 2008. This was when Django was on version 0.96 or 0.97 and although people had heard of it, very few had opportunities to use it professionally.

People were working professionally with Python but using things like Plone or using PHP and Wordpress for website development. Those early adopters of Django were either hobbyists or had convinced their employer that this framework was worth trying on their work projects.

I remember at this time that people would jump at the opportunity to use their Python knowledge and take contracts to work with Django. Some travelled up to 10 hours each way to an office and stayed in accommodation during the week before the 10 hour drive back home on a Friday. Others were relocating for these opportunities!

That was when I knew I had stumbled into a world where it wasn’t just about the money, it was about the technology and what that could do for someone’s enjoyment at work.

Just over 13 years later, I started Foxley Talent in October 2021.

In 2008, Django had only been released publicly 3 years earlier as explained by this Wikipedia summary of the history of Django and the origin of the name:


“Django was created in the autumn of 2003, when the web programmers at the Lawrence Journal-World newspaper, Adrian Holovaty and Simon Willison, began using Python to build applications. Jacob Kaplan-Moss was hired early in Django's development shortly before Simon Willison's internship ended.

It was released publicly under a BSD licence in July 2005. The framework was named after guitarist Django Reinhardt. Adrian Holovaty is a Romani jazz guitar player inspired in part by Reinhardt's music.

In June 2008, it was announced that a newly formed Django Software Foundation (DSF) would maintain Django in the future.”

Django_Reinhardt

(Django Reinhardt - photo credit: United States Library of Congress's Music Division)


This mentions the Django Software Foundation (DSF) which you may have heard of by this point. For reference and by official definition; The DSF is an independent foundation established as a 501(c)(3) non-profit. Like most open-source foundations, the goal of the Django Software Foundation is to promote, support, and advance its open-source project: in this case, the Django Web framework.

The foundation's goals are to:

  • Support development of Django by sponsoring sprints, meetups, gatherings and community events.
  • Promote the use of Django among the World Wide Web development community.
  • Protect the intellectual property and the framework's long-term viability.
  • Advance the state of the art in Web development.

The Django Software Foundation relies on financial support, donations and sponsorship from the community to fund the ongoing development of Django. The annual budget goal is to raise $200,000 per year. At the time of writing (September 2024) the fundraising is at 47.4% of the goal for this year.

heart47%

If you want to donate towards Django, you can do this via a number of channels, the easiest is to go to this page of the Django website or through github

I also wrote a post last year about why Foxley Talent donates. Which you can read here.

So to summarise and in my own words, what is Django?

Django is web development framework, for Python developers. Widely used in modern technology and supported by a charitable foundation. Supported by a community of programmers and enthusiasts who constantly strive to make it better for others.

If you still have a thirst to find out more, you can read via the FAQ’s on the Django project website here

But we also wanted to ask some of our friends from around the community what Django means to them. This is what they've said...

We've spoken to:

  • Paolo Melchiorre, the winner of the Malcolm Tredinnick Memorial Prize in 2022, Django Contributor and Conference Speaker amongst other things.
  • Mariusz Felisiak, Django 3.1, 4.0, and 4.2 release manager, and a former Django Fellow (2019-2024)

1) What is Django to you?
Paolo: To me, Django is a community of people gathered around a web framework and a programming language that have the advantage of being community driven.

Mariusz: Django is a Community and my 2nd family. It makes me grow as a developer and as a person. Django creates new opportunities every day, makes you a better person, and can easily blossom your professional career. Give it a spin.

2) What is it like to work with the Django Web Framework?
Paolo: Working with Django is refreshing, because it allows you to have the level of perfection you want, but also to meet your deadlines, thanks to its built-in batteries (e.g. ORM, admin).

Mariusz: Thanks to the great documentation and cohorts of helpful folks who are willing to share they knowledge, working with Django is truly enjoyable.

3) What did working with Django do for your career?
Paolo: In my career, I made huge strides when I started using Django, as I did in the past with other web frameworks, and started contributing to the project because I understood its internals, I met the developers of the functions I was using, and I had the opportunity to improve the features I needed the most.

Mariusz: Basically everything, Django introduced me to the open-source world and is responsible for most of my recent and current positions. Thanks to Django, I'm not an anonymous programmer.

4) How would you advise a Python developer to start working with Django?
Paolo: The advice is to get in touch with the Django community right away, using the forum, or the chat server and then start with the documentation tutorial. Other great ways to progress could be to participate in a Django Girls+ workshop. If you are already a bit into programming, a great opportunity is the Djangonauts space project.

Mariusz: The official Django and Django Girls tutorials are the best starting points. I also highly recommend Will Vincent's books.

Jon Presenting

Jon Gould

Founder of Foxley Talent, 15 years+ experience as a Recruiter in the Django world and community organiser.