Django Blog

djangoproject.com · Company blog · on HN since 2007

The official Django project blog, with release announcements, security fixes, roadmap updates and fellowship news for the Python web framework.

What HN saysCommenters praise Django's documentation as among the best around and pair the framework with Wagtail CMS; HN also links its security release notices.
312HN people shared it
175linked it in comments
291stories submitted
13Kstory points
3 months agolast shared
2007people per year2026

Most-shared posts

  1. 1
  2. 2
    Django 1.6 released
    12 people · 355 points · first shared 2012 · 102 comments on HN
  3. 3
    Support the Django Fellowship Program
    12 people · 5 points · first shared 2015 · discussion on HN
  4. 4
    Django Security Release - 1.5.4
    9 people · 125 points · first shared 2013 · 24 comments on HN
  5. 5
    Django's Roadmap
    9 people · 14 points · first shared 2015 · discussion on HN
  6. 6
    Django Awarded MOSS Grant from Mozilla
    8 people · 302 points · first shared 2015 · 101 comments on HN
  7. 7
    Django's future, and Python 3
    7 people · 243 points · first shared 2012 · 75 comments on HN
  8. 8
    Django Enhancement Proposal 14: Background Workers
    6 people · 45 points · first shared 2024 · 3 comments on HN
  9. 9
    Experimental Python 3 support in Django
    5 people · 110 points · first shared 2012 · 4 comments on HN
  10. 10
    Community
    5 people · first shared 2008
  11. 11
    Testing Django applications
    4 people · 1 points · first shared 2007 · discussion on HN
  12. 12
    Conduct
    4 people · first shared 2013
  13. 13
    Start
    4 people · first shared 2017
  14. 14
    Channels adopted as an official Django project
    3 people · 159 points · first shared 2016 · 22 comments on HN
  15. 15
    Django Security Releases Issued
    3 people · 61 points · first shared 2011 · 19 comments on HN

What HN people wrote when they linked it

inquirer39243 · 2023-01-27
Love your tools! I think you should consider changing "library" to "documentation" - for whatever reason I also struggled to discover "library" actually meant docs - but only after I also clicked on a specific version. I think the best UI/UX for this is something like django's [0], where "documentation" brings you straight to the latest version's documentation. [0] https://www.djangoproject.com/
raylus · 2022-02-02
Django [https://www.djangoproject.com/] + Wagtail CMS [https://wagtail.org/] have been great alternatives for our team.
jray · 2012-06-19
Great theme ! Please add support to django framework. http://www.djangoproject.com
klaut · 2012-04-03
for me, Django has the best documentation out there. You can actually learn a lot about django by just reading the documentation. which is not always the case for other projects :) https://www.djangoproject.com/
karlclement · 2011-01-21
Hello there, http://www.djangoproject.com/ The Django project is one of the best frameworks for Python Programming. If you would like to contribute to the visit this link: http://docs.djangoproject.com/en/dev/internals/contributing/?from=oldd… This page explains how you can contribute to the project. You can also contribute to few popular desktop Python programs such as Miro and Blender. Good luck! Karl
omarish · 2010-10-24
I wrote the site using Django [1]. Here's a great tutorial I used to learn the ins and outs of django a few years ago [2]. Feel free to ping me if you have any questions if you decide to give python/django a try. I'm omarish on freenode. I also keep this page updated with the technologies we're using: [3] (see the section on technologies). [1] http://www.djangoproject.com/ [2] http://docs.djangoproject.com/en/dev/intro/tutorial01/ [3] https://mrgoal.net/about/
gridspy · 2009-11-08
I personally love Django (http://www.djangoproject.com/) the python equivalent of RoR. I love the way it encourages me to architect my code well, rather than being encouraged to hack up every page (all too easy in PHP). It was easy to set up, has great documentation and an active community, and lots of encouraging case studies.
icey · 2008-06-02
You're kind of asking what's better between vi and emacs. I would recommend spending some time checking out either Django (http://djangoproject.com/) or Pylons (http://pylonshq.com/) on the Python side and I think Rails is probably going to be the best place to start on the Ruby side of the equation. Any of those should be a good place to start, it's really a matter of personal preference between the three at this point.
zbentley · 2022-11-12
> trying to build a lifeboat for Twitter, Python works, but then modules require builds that break. > Alternatively, any good resources for the above? There are many, unbelievably many writeups and tools for Python building and packaging. Some of them are really neat! But paralysis of choice is real. So is the reality that many of the new/all-in-one/cutting edge tools, however superior they may be, just won't get long term support needed to catch on and stay relevant. When getting started with Python, I very personally like to choose from a few simple options (others are likely to pipe up with their own, and that's great; mine aren't The One Right Way, just some fairly cold/mainstream takes). 1. First pick what stack you'll be using to develop and test software. In Python this is sadly often going to be different from the stack you'll use to deploy/run it in production, but here we are. There are two sub-choices to be made here: 1.a. How will you be running the Python interpreter itself in dev/test (in other words, what Python language version you will use)? "I just want to use the Python that came with my laptop" is fine to a point, but breaks down a lot sooner than folks expect (again, the reasons for this are variously reasonable and stupid, but here we are). Personally, I like pyenv (https://github.com/pyenv/pyenv) here. It's a simple tool that builds interpreters on your system and provides shell aliases to adjust pathing so they can optionally be used. At the…
deltasevennine · 2022-11-06
> I don't understand why you're talking about statistical sampling. Aside from random functions, functions are deterministic, unit testing isn't about random sampling. That's not the problem here. Completely and utterly incorrect. You are not understanding. Your preconceived notion that unit testing has nothing to do with random sampling is WRONG. Unit Testing IS Random sampling. If you want 100% coverage on your unit tests you need to test EVERY POSSIBILITY. You don't. Because every possibility is too much. Instead you test a few possibilities. How you select those few possibilities is "random." You sample a few random possibilities OUT OF a domain. Unit Testing IS random sampling. They are one in the same. That random sample says something about the entire population of possible inputs. >Next month some code elsewhere changes and that function ends up getting called with a string containing json instead, so now it blows up in production, you have an outage until someone fixed it. Not great. You might think maybe you were so careful that you actually earlier had unit tests passing a string instead, so maybe it could've been caught before causing an outage. But unlikely. Rare. In theory what you write is true. In practice people are careful not to do this; and unit tests mostly prevent this. I can prove it to you. Entire web stacks are written in python without types. That means most of those unit tests were successful. Random Sampling statistically covers most of what…
nelsonic · 2020-08-02
Hi @muonic, this is a great question many people tech founders face. The short answers to your questions are: a) Don't hire someone else to build the "core" of your App; only you know exactly what you want/need. If you have Python skills, build it yourself using the tools you already know (e.g. https://www.djangoproject.com ) Deploy it to Google App Engine https://cloud.google.com/appengine and side-step the DevOps learning curve. b) Decide which Platform as a Service (PaaS) is right for you given the type of App you are building and learn that after you have a working demo of your App. Longer explanation: If you hire someone inexperienced (i.e. "cheap") to build your App, you can almost guarantee that you will need to scrap and rebuild it much sooner. Inexperienced developers will skip fundamental software engineering principals like automated testing, following security best practices or documentation and code-reuse. Build the MVP yourself and then bring someone onto your team once you have a good setup in place and need to add features. When you are building an "MVP" of an App, you really don't want to be thinking about infrastructure; it's a distraction. Use Heroku, Google App Engine or Firebase to handle everything for you and focus on the features of your App that users will want (and ideally pay for). As @de6u99er noted, DevOps is not something you can learn in a hurry. There isn't one single book you can read to learn everything you need to know. There are too…
santa_boy · 2019-11-10
It is very easy to build a CRUD app with reasonable security using [Meteor](https://www.meteor.com/) and its [autoform](https://github.com/aldeed/meteor-autoform) package. The best part is you retain complete freedom and control to manage any part of the process both on the client and server side and "hook" in practically anything else on top of it. Even in Meteor there are new ways but require more learning. [Django](https://www.djangoproject.com/) is also very good if you like Python. IMHO, the best part of both is that you don't need to worry about a TON of standard functionalities like authentication, logging, messaging, security (to a good extent), user management, etc. I program on the side and focus more on the business, and just find comfort in JS although I do analytical work in Python (and integrate them using hacks and bridges .... works fine for most part ... little slow and clunky but works and saves a lot of dev time)
stuntkite · 2019-03-09
I completely agree with this advice! Find a task that you repeat all the time and automate it. A pretty good place to start is just python, git, and bash. When I start a new job it's actually what I do to get my bearings. I keep a written journal of tasks, I make a notes README, and document repetition. I make bash scripts for shortcuts and to prove things, then I start working them into fabric[0] a (python lib) script. I keep all of this in a private git repository. My older brother taught himself to program at 36. He was a 3D artist before, he had four kids and a wife and a full time job. He spent evenings and weekends building things for his wife's interest in photography and started blogging about his experience learning. He now runs a very successful company and completely changed his life inside of 3 years. He's not the best programmer, but he focused on the work and the assets that he had that were different from people who might be the "best" programmers, that edge is a huge asset. I've been programming since I was 12 so it's hard for me to fully relate to starting new. Now at 35, I think the thing that people thinking programming is hard later comes from thinking of it like learning to paint or something. One unique aspect about programming is that it's a force multiplier. Once you grasp something, you don't need to reproduce it, you have it and you use it to prop up the next thing. I'm biased towards python, but experience tells me it's one of the best starter…
git-pull · 2018-01-27
Python is the best. I converted from PHP -> Python a long long time ago. But it was my first programming language. PHP and Laravel is excellent. In particular, Laravel developers come across as very intelligent to me. In the end though, Python has multi-spectrum dominance. Post about Python's tools: https://news.ycombinator.com/item?id=15957273 Python has Django (https://www.djangoproject.com/). It's 90% as good as Laravel. Which means it's very, very good. But the thing with Python is it owns PHP when you're doing non-website stuff. If you can be convinced to give up Laravel (it may be hard), Python is easily the best choice. Python has PEP standards PEP8 (code style) and PEP257 (code docs) long before PHP PSR's became a thing. Scraping. Normalizing data. Python can handle big data sets. Machine Learning/AI. Has documentation via Sphinx. Here's an example of one of my projects: https://cihai.git-pull.com. Here's an example of generated API docs: https://cihai.git-pull.com/en/latest/api.html. The nature of being "Pythonic" spreads into open source code, and later into teams, so the libraries you pull in have a familiar style. OOP is implemented better in python. That rubs off onto the quality of the libraries and how enjoyable they are to implement. In my opinion, once you get a hang of Python, it's much easier to read than PHP.
colonelxc · 2012-01-21
I'm not a web developer, but hopefully I can point you in the right direction. If you're comfortable with Python, then I can point you to the popular Django[1] web framework. Though really, if you've barely used Python, then it would probably be equally easy to get started with Ruby and Ruby on Rails[2] instead. Like I said, I'm not a web developer, but I know both frameworks have lots of support and information out there, including tutorials. I highly recommend following through with some tutorials first, just to get yourself accustomed to how the platform works. As far as your actual idea goes, I saw the keyword "privately". Now when you first start out and it is just you and your girlfriend, then privacy is easy if you two are the only ones who can access the site. Presumably other people would also want to make sure that not even you, the site administrator would be able to view their uploaded videos. That is probably going to mean encryption, and the mess that comes with it. Colin Percival has a recent blog post[3] about designing apps and services so that the users don't have to trust the developers. In the meantime, a quick and dirty solution would be to have a Dropbox account that the two of you share, so when you place a file in the proper directory, it automatically gets synced to the other person. You could even encrypt the videos locally before putting them in the Dropbox folder. (You'll probably have to move them from the Dropbox folder to elsewhere…
mnazim · 2011-07-24
Python is another language not very different from Ruby. Check it out and if you like what you see, below are the python specific answers(IMO and far from complete) to your question. > What are the options out there that are a solid alternative to RoR? First three frameworks that pop up in my head without thinking too much are: Flask - http://flask.pocoo.org/ Flask is a nice micro-framework for quickly getting up and running with simple web applications. It is easy to understand. But do not get mislead by the word "micro"; it is an amazing piece of software and can be used to build real web applications. Great for building APIs. Why Flask: Strong architecture design, easy to use, actively developed by amazingly smart people. Django - http://djangoproject.com/ Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design. Development with Django is a breeze. Most common backend stuff in web development can be done with a few lines of code. Django is a full stack framework which comes bundled with its own ORM, template language, URL dispatching and lot of middlewares, libraries and utilities. Why Django: Actually usable autogenerated admin interface, genric views(create stuff with zero code(sorta)) active development, insanely fast development cycles, good design, huge community of very smart and well respected people in python community. Pyramid - http://pylonsproject.org/projects/pyramid/about Pyramid is a very…
manfre · 2026-03-17
There is a clear correlation between the rise in LLM use and the volume of PRs and bug reports. Unfortunately, this has predominately increased the volume of submissions and not the overall quality. My view of the security issues reported, many are clearly LLM generated and at face value don't seem completely invalid, so they must be investigated. There was a recent Django blog post about this [1]. The fellows and other volunteers are spending a much greater amount of time handling the increased volume. [1] https://www.djangoproject.com/weblog/2026/feb/04/recent-trends-securit…
btilly · 2024-12-30
Django is a Python-based ORM that works really well and has a large community. See https://www.djangoproject.com/. If I have to do anything CRUD like, I'll use Django. For reporting apps, I prefer native SQL.
sarahboyce · 2024-01-03
30% of Django developers upgrade every LTS release[1]. As Django 3.2 runs out of support in April this year[2], it's worth celebrating Adam Johnson's package django-upgrade (https://github.com/adamchainz/django-upgrade) which has a set of fixers to automatically update your Django code to the version of your choice. Curious if anyone has used 2to3 (https://docs.python.org/3/library/2to3.html) for upgrading Python code and can share their experience with it? Would you recommend? 1. https://lp.jetbrains.com/django-developer-survey-2022/ 2. https://www.djangoproject.com/download/#supported-versions
pandler · 2022-09-10
I will always have a soft spot in my heart for Django, the python web framework, even though I don’t use it anymore. https://www.djangoproject.com/ When I was still learning to code, I spent hours and hours and hours poking around the Django source code. In particular I was fascinated by the metaprogramming used in the Model and Query objects, and I ended up learning a ton about how Python works under the hood.
trboyden · 2020-04-29
HTML/CSS is the web, so if you want to develop web apps, you have to learn it/use it. To enable any meaningful front-end interactivity, JavaScript is required as well. But with Microsoft Blazor (https://dotnet.microsoft.com/apps/aspnet/web-apps/blazor) there are starting to be alternative approaches via WebAssembly that allow you to use C# or other languages in lieu of JavaScript. If you don't like the flexibility of Flask, there is always Django (https://www.djangoproject.com).
thekyle · 2019-07-06
It's Django running on AWS Lambda. The frontend is done in Bootstrap MD. No other JS besides the Bootstrap stuff and some handwritten. Django: https://www.djangoproject.com/ Bootstrap MD: https://mdbootstrap.com/
hitekker · 2018-04-19
Did they hire a designer to do... this? Before people say "OSS must look bad" or "It's a minimal style", I encourage looking at https://www.djangoproject.com/. Aesthetically pleasing without sacrificing clarity, this website sets the standard for a technical project's homepage redesign. Boring and half-hearted UI's should be relegated to the likes of https://www.oracle.com/database/index.html than to a lauded and respected database like Postgres.
collinmanderson · 2017-04-04
Django almost went with X.0 as the LTS. Here's where X.2 was originally proposed: https://groups.google.com/d/msg/django-developers/MTvOPDNQXLI/lBLWrhKJ… Here's the final summary: https://www.djangoproject.com/weblog/2015/jun/25/roadmap/ The most breaking part of the the LTS cycle is right _after_ the LTS, so that's the best time to change the major version number.
tobltobs · 2016-09-08
I am always astonished how the Django project accomplishes to create such a great documentation with their limited resources. Have a look at their fundraising page: https://www.djangoproject.com/fundraising/ .
piquadrat · 2016-06-29
It's called the Django Fellowship Program and you can help fund it here: https://www.djangoproject.com/fundraising/ Tim is doing an absolutely marvellous job managing releases, reviewing pull requests, and a plethora of other work. Any Django user who can afford it (and especially companies that profit from Django) should think about donating to keep the Fellowship going. It's a great investment.
rspeer · 2016-05-20
Interestingly, Django is one of the big projects that has already announced they're dropping Python 2 support before 2020. Django 1.11, to be released in April 2017, is scheduled to be the last version to support Python 2. [1] They've prudently made their last Py2 release a long-term support release, but if you want new Django features after December 2017, you're going to be using Python 3. Django works great on Python 3, BTW, and if you've got plugins that haven't updated, I would recommend being a bit suspicious of their code quality. [1] https://www.djangoproject.com/weblog/2015/jun/25/roadmap/
jsmeaton · 2015-12-02
The Django Software Foundation has just hired a part time person to organise fundraising [0]. There is also discussion happening around the community about trying to find a sustainable way of funding open source projects and Django in particular. Part of the problem is that it's hard to get companies to "donate" money. If they can purchase something like "support" or something else tangible, or "sponsorship" out of their advertising budgets, there may be more opportunities of gaining funding. Thank you for donating though! Django gets a lot of their money from regular developers' pockets. I, personally, feel that bigger companies using Django to generate lots of revenue should be contributing a greater portion to support the stack that supports them. [0] https://www.djangoproject.com/weblog/2015/nov/23/introducing-dsfs-dire…
andybak · 2015-02-25
I linked to the release notes as they contained the actual feature list. Official release announcement here: https://www.djangoproject.com/weblog/2015/feb/25/releases/ The most exciting parts for me are all db related: https://docs.djangoproject.com/en/dev/ref/contrib/postgres/ https://docs.djangoproject.com/en/dev/ref/models/expressions/ https://docs.djangoproject.com/en/dev/ref/models/conditional-expressio… The last two particularly leave the number of times you need to drop down to SQL (or consider switching SQL Alchemy) are greatly reduced.
tragic · 2014-04-22
I might remember it now that I know KDF = key derivation function. Since the GP mentions Django, it's worth remembering in this connection that there are extra security concerns with expensive KDF algorithms. There was a vuln in Django where people could submit 'passwords' of arbitrary size - a 20 character password isn't a problem, but 1MB worth of text being expensively hashed a few times at once could be used as a nice DoS vector.[0] So there's more to the problem than just bunging in PBKDF2/bcrypt and forgetting about it. [0] https://www.djangoproject.com/weblog/2013/sep/15/security/

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close