Django community: RSS
This page, updated regularly, aggregates Community blog posts from the Django community.
-
Python Exercism Exercises / Template Updates - Building SaaS with Python and Django #158
In this episode, I went through a few quick exercises on Exercism in the Python track. Then I returned to the features I’m developing that displays course resources connected to tasks in my homeschool app. -
Python Exercism Exercises / Template Updates - Building SaaS #158
In this episode, I went through a few quick exercises on Exercism in the Python track. Then I returned to the features I’m developing that displays course resources connected to tasks in my homeschool app. -
The insides of my static site generator
The insides of my static site generator Last sunday I wrote that I’m now using a hacky ~200 LOC Python script to generate this blog. The ~200 LOC became a challenge to myself immediately and I started refactoring the code while adding additional features, adding a licensing comment at the top and further reducing the lines of code in there. I don’t intend to stop working on it, but I’m really happy with the result as it is currently. The script is less than 190 lines long and supports: Generating individual HTML files for the front page, the category pages and posts Generating robots.txt and sitemap.xml Generating Atom feeds for all posts and posts of each category Minifying HTML and CSS using minify-html and rcssmin; the CSS is outputted as a single file and includes the content hash in the filename for better cacheability Keeping the link structure of the old Django-based website I used Django’s feedgenerator.py module at first to generate the Atom feed; I have since switched to directly working with the ElementTree API. Yes, it’s probably less efficient since it has to keep the whole XML tree in memory but who cares when the largest file’s file … -
Weeknotes (2023 week 15)
Weeknotes (2023 week 15) Romansh translations for feincms3-cookiecontrol and django-fineforms The feincms3 cookie control banner and django-fineforms have received a small update: Support for the Romansh language. I would be surprised if any readers of this blog even knew about this language at all. Switzerland has four official languages: German, French, Italian and the mentioned Romansh. It’s not a coincidence of course that those two packages have received an update at the same time. Both packages are used for an upcoming campaign site where people may express their support for political action to preserve or protect the biodiversity. It’s at the same time laughable and horrifying that this is even a thing though: Who in their right mind could NOT agree that preserving biodiversity is important? It’s incomprehensible. Maybe I’m just a romantic Gutmensch after all… django-ckeditor I have set up the stale GitHub action for the django-ckeditor repository. So many support requests, so little time and almost no actual collaborators. Also, many support requests actually concern CKEditor itself, not its Django integration. I shouldn’t complain though, CKEditor has served me well and still does, especially when it’s being used with a very minimal configuration which basically makes most pain … -
Static site generation
Static site generation I did what I threatened (myself) to do: I replaced the Django code base for this weblog with a static site generator. My main goal was to preserve as much as possible of the existing structure, including the Atom feeds and the IDs of posts so that the rewrite wouldn’t flood any aggregators. The end result is a hacky ~200 LOC Python script which uses Markdown, Jinja2 and minify-html. Markdown is great for blogging and I have been using it for a long time, basically since I started this website in 2005. I don’t like it that much for documentation, but that’s a story for another day. For now I still deploy the blog to a VPS but there’s nothing stopping me from uploading it somewhere else. I’m thinking about using GitHub actions for the deployment, but I can do that another day. -
Django REST Framework Basics
This article serves as an introduction to Django REST Framework, focusing on serializers, views, and routers. -
Psycopg3 Binary and Django 4.2 Installation Quick Tip
One of [Django 4.2's major features](https://docs.djangoproject.com/en/4.2/releases/4.2/#psycopg-3-support) is support for [Psycopg 3](https://www.psycopg.org/psycopg3/), the new implementation of the popular PostgreSQL adapter for Python. It is a replacement for Psycopg 2 that adds … -
Django News - htmx 1.9.0 released - Apr 14th 2023
News htmx 1.9.0 has been released! htmx 1.9.0 has been released, which includes new features such as support for view transitions and generalized inline event handling via the new hx-on attribute, as well as improvements and bug fixes. htmx.org PSF News: The EU's Proposed CRA Law May Have Unintended Consequences for the Python Ecosystem The PSF has expressed concerns about the proposed Cyber Resilience Act and Product Liability Act, stating that the policies could unintentionally harm users and put the health of the open-source software community at risk. blogspot.com GitHub Accelerator: our first cohort and what's next GitHub Accelerator, a program that fosters sustainable open-source projects, has announced its first cohort of 20 projects and 32 participants worldwide. Among the diverse projects selected are htmx, Strawberry, and Datasette, all of which have ties to the Django community. github.blog Sponsored Link Upgrade Django Upgrade Django is a simple cheat sheet to Django versions and releases with additional observations from REVSYS on the most exciting highlights, gotchas, and other information from their extensive experience upgrading clients' Django applications. upgradedjango.com Articles Building an Intelligent Education Platform with OpenAI, ChatGPT, and Django An article describes leveraging artificial intelligence technology such as GPT-3 and ChatGPT … -
Web Dev Panel Discussion
What is your burning web development question? That was the request for April’s event in 2023! We had a panel of web developers who were there to discuss web development questions and talk through the future of web development. -
Web Dev Panel Discussion
What is your burning web development question? That was the request for April’s event in 2023! We had a panel of web developers who were there to discuss web development questions and talk through the future of web development. -
Being a Productive Developer - Nick Janetakis
Nick Janetakis personal siteDive into DockerLearn to Build Web Applications with Flask and Dockerdjango-docker-example: diff fixing Django template cache patchmailcatcherNick’s YouTube channeldjango-upgrade packageHow to upgrade Django to a newer versiondjango-simple-deployTop 10 Django Third-Party PackagesSupport the ShowThis podcast does not have any ads or sponsors. To support the show, please consider purchasing a book, signing up for Button, or reading the Django News newsletter. -
Django Build To Last
Tim does an amazing job applying "Build to Last" principles to Django. Community and reliability are two of the three most important reasons making me enjoy Django for a very long time (documentation being the third). I think it is healthy for any project to know what its distinguishing attributes are, as well as having a plan for where the project will go the next few years. And while I agree with Tim, I want to add a bit more to the big hairy audacious list of goals to take into consideration. Still, this does not mean deployment is not one of the biggest pain points of any Django or Python project. I would even go as far as claiming that Docker would never have risen in popularity as much as it did if interpreted languages would have had a sane deployment story. Remember Java? Compile a fat jar and drop it on an application server. Done. Or just run the fat jar by bundling your webserver. But this is the old man in me speaking. So let us talk about Golang and Rust - two modern languages, well regarded (I know, I know, we can have a fight about … -
Django News - Django 4.2 released - Apr 7th 2023
News Django 4.2 released The Django team is happy to announce the release of Django 4.2. djangoproject.com Welcome our new Django Fellow - Natalia Bidart The DSF Board and Fellows Committee are pleased to introduce Natalia Bidart as our new Django Fellow. Natalia will be joining Mariusz Felisiak who is continuing his long and excellent tenure as a Fellow. djangoproject.com Django bugfix release: 4.1.8 This update fixes a bug in Django 4.1.7 that causes invalidation of sessions when rotating secret keys. djangoproject.com Python 3.10.11, 3.11.3, and 3.12.0 alpha 7 released Python 3.11.3, 3.10.11, and 3.12 alpha 7 are now available. python.org Wagtail 4.2.2 and 4.1.4 release notes Security and bugfixes in the latest Wagtail release for 4.2.2 and for 4.1.4. wagtail.org Sponsored Link Meet Wagtail, the #1 Django-powered CMS 100% open source. Powered by Python & Django. Built for editors and developers with excellent documentation. Trusted by Google, NASA and hundreds of thousands of organisations around the world. bit.ly Articles Top 10 Django Third-Party Packages An opinionated list of the top 10 third-party packages for any Django project. learndjango.com Django Performance Optimization Tips This article looks at where potential performance issues can occur in a Django application and how to … -
Run less code in production or you’ll end up paying the price later
Run less code in production or you’ll end up paying the price later At work we do have the problem of dependencies which aren’t maintained anymore. That’s actually a great problem to have because it means that the app or website ended up running for a long time, maybe longer than expected initially. I think that websites have a lifetime of 3-5 years1 which is already much longer than the lifetime of major versions of some rapid development frameworks, especially frontend frameworks. We have been using Zurb Foundation in the past. It has served us well and I don’t want to dunk on it – after all it is free, it has great documentation and it works well. It has many features and many components, but as changes happen, not just in the framework itself but also in the tooling it uses upgrades stay hard and things start to break somewhere down the road (for example when Dart Sass 2.0 will be released. And when that happens you have to pick up the parts and maintain them yourself – having grown your codebase by a considerable amount practically overnight. Of course it’s also hard to argue for starting to write … -
Top 10 Django Third-Party Packages
Django is a "batteries-included" web framework, but it really shines with its robust ecosystem of third-party packages that add additional functionality to the framework. There are almost 4,000 available at … -
Weeknotes (2023 week 13 and 14)
Weeknotes (2023 week 13 and 14) My son will be a teenager soon My eldest is now 12 years old and will be a teenager soon. We had a good time and two nice Birthday parties, one with his friends and one with family and our friends. Good times. django-debug-toolbar 4.0 Django 4.2 was released, Hatch gained support for the Django 4.2 Trove classifier and we released django-debug-toolbar 4.0, with support for Django 4.2, psycopg 3 and all the existing goodies. feincms3-cookiecontrol feincms3-cookiecontrol has gained support for consciously embedding stuff via oEmbed. It can now use Noembed (via feincms3‘s external plugin) and only actually embed the third party content if users consented explicitly. I have since learned through the Datenschutz-Plaudereien podcast that laws regarding consent are not that strict in Switzerland compared to the European Union, also not when the DSG is put into effect in September. What’s right and what’s legal are two different things and while I don’t really like the ubiquitous cookie banners (especially not when they aren’t actually doing anything) I like the idea of explicit consent and of not sending data unnecessarily to third party providers. The additional click isn’t that bad. Diving into hatch … -
How to add Typescript to the Django Project
-
Building an Intelligent Education Platform with OpenAI, ChatGPT, and Django
This tutorial shows how to build an intelligent educational platform using OpenAI APIs and Django. -
Django News - Django Behind The Scenes - Mar 31st 2023
Django Software Foundation DSF Board monthly meeting, March 9, 2023 The DSF Board meets monthly and posts its minutes publicly. Worth a quick look to see what's going on in the Django world. djangoproject.com Sponsored Link Looking for a fun new project? Try Wagtail CMS See why Django developers think Wagtail is a “joy to extend.” Trusted by Google, NASA, and many, many others. The #1 Django-powered CMS. Give it a go. bit.ly Articles Django: Avoid database queries in template context processors Advanced tips on using template context processors from Adam Johnson. adamj.eu Denormalization with JSON Fields for a Performance Boost A well-written article on normalization/denormalization with a powerful tip on using JSON Fields to help improve performance. caktusgroup.com Ban 1+N in Django An opinionated take on solving a perennial issue in Django and ORM's in general: the N+1 problem. github.io Sync or Async? Unpacking the Mysteries of Django Signals Signals allow developers to trigger certain actions when specific events occur, such as when a model is saved or deleted. However, there is often confusion about whether Django signals are asynchronous or not. This article explores the question and discusses the tradeoffs associated with using Django signals. mattlayman.com A Chat … -
Follow-ups to "Incompetent but Nice"
I received a ton of replies to my previous piece in “incompetent but nice” people. I’ve collected some of those replies, and some of my own follow-ups. I’ll cover: what managers should do; the theme that this is almost always a management failure; and my advice for people who are worried that they might be the “incompetent but nice” person. -
Ellen's Alien Game / Display Related / Neovim config - Building SaaS with Python and Django #157
In this episode, I did another Exercism problem in Python that focused on Python classes. After the exercise, I deployed my model change from last stream and discussed deployment strategy. Then we worked on some of the display pieces for the new feature. Once the feature was added, I discussed performance testing and showed some performance problems that the new feature created that I then fixed. We ended the stream with some Neovim configuration to correct some LSP formatting problems. -
Ellen's Alien Game / Display Related / Neovim config - Building SaaS #157
In this episode, I did another Exercism problem in Python that focused on Python classes. After the exercise, I deployed my model change from last stream and discussed deployment strategy. Then we worked on some of the display pieces for the new feature. Once the feature was added, I discussed performance testing and showed some performance problems that the new feature created that I then fixed. We ended the stream with some Neovim configuration to correct some LSP formatting problems. -
How Django Really Works - Chaim Kirby
Chaim on GitHubDjango Software FoundationDjangoCon Europe 2022: The Why and How of the Django Software FoundationDjangoCon Europe 2018: A Different Form of Navigationpyslackers.comDjangoCon US 2018 - Your web framework needs you!Support the ShowThis podcast does not have any ads or sponsors. To support the show, please consider purchasing a book, signing up for Button, or reading the Django News newsletter. -
Incompetent but Nice
A question I’ve never been able to answer to my satisfaction: how do you manage people who are nice but can’t do the work? -
Django News - Django 4.2 released candidate 1 released - Mar 24th 2023
News Django 4.2 release candidate 1 released Django 4.2 release candidate 1 is the final opportunity for you to try out the farrago of new features before Django 4.2 is released. djangoproject.com Want to host DjangoCon Europe 2024? Could your town - or your football stadium, circus tent, private island or city hall - host this wonderful community event? djangoproject.com Welcome to the PyPI Blog Announcing the launch of blog.pypi.org pypi.org Sponsored Link Supercharge Your Wagtail CMS Project Implement Wagtail at scale by adding extra capacity and capability to your sprint team with Torchbox's Consultancy and Staff Augmentation services. Utilised by Mozilla Foundation, Nasa JPL, and the NHS. Find out more: https://bit.ly/wagtail-super-boost bit.ly Articles Django: Parameterized tests for all model admin classes An application of "test smarter, not harder" for any project using Django's admin. adamj.eu A 'No JS' Solution for Dynamic Search in Django Take advantage of HTMX requests to do partial rendering for list views in Django. fly.io Django Database Connection Pooling with PgBouncer An example of Django PostgreSQL Database Connection Pooling with PgBouncer. github.io Locking Down Your Users' Secrets: Django Sessions 101 Explore the security of Django sessions and see how they can be made even more …