• Trends
  • Topics
  • Nodes
Search for keywords, #hashtags, $sites, add a dash to exclude, e.g. -$theonion.com

From loopwerk.io

Loopwerk: Django views versus the Zen of Python

0 0

Django’s generic class-based views often clash with the Zen of Python. Here’s why the base View class feels more Pythonic.

on Mon, 1AM

From loopwerk.io

Loopwerk: One command to run them all

0 0

How I use the just command runner to create a simple, unified interface for running, testing, linting, and formatting all my projects, regardless of the tech stack.

on Sep 9

From loopwerk.io

Loopwerk: A quarter century of chasing simplicity

0 0

A reflection on 25 years of web development, from simplicity to complexity and back.

on Sep 9

From loopwerk.io

Loopwerk: How I write Django views

0 0

Why I only use Django's base View class instead of generic class-based views or function-based views.

on Aug 29

From loopwerk.io

Loopwerk: Announcing django-generic-notifications 1.0.0

0 0

A modern, flexible rewrite of django-generic-notifications is here. Easily send website and email notifications, create digests, group similar messages, and much more.

on Aug 3

From loopwerk.io

Loopwerk: Automate Python package releases

0 0

I maintain a handful of Python packages. Here’s how I automate creating new releases, both on PyPI and GitHub.

on Jul 30

From loopwerk.io

Loopwerk: Why Django's DATETIME_FORMAT ignores you (and how to fix it)

0 0

A dive into why Django's DATETIME_FORMAT setting seems to do nothing, and how to actually force the 24-hour clock in the admin, even when your locale says otherwise.

on Jul 18

From loopwerk.io

Loopwerk: Django at 20: a personal journey through 16 years

0 0

Celebrating Django's 20th birthday by looking back at 16 years of personal Django usage, how it evolved, favorite packages, and what I'd love to see in the future.

on Jul 17

From loopwerk.io

Loopwerk: Handling static and media files in your Django app running on Coolify

0 0

Let’s solve the challenge of managing persistent static and media files on your self-hosted Coolify server.

on Jul 8

From loopwerk.io

Loopwerk: I code in my dreams

0 0

I often get my best coding inspiration late at night, and when I go to bed with an unsolved problem, I literally write lines of code in my dreams - it's exhausting but I usually wake up with the solution.

on Jul 5

From loopwerk.io

Loopwerk: Hosting your Django sites with Coolify

0 0

How I moved my Django projects from a manual server setup to Coolify for easier, zero-downtime deployments.

on Jul 3

From loopwerk.io

Loopwerk: Production-ready cache-busting for Django and Tailwind CSS

0 0

I'm a big fan of the django-tailwind-cli package, but I ran into problems deploying it to production. Here’s to make sure you cache-bust tailwind.css.

on Jun 27

From loopwerk.io

Loopwerk: Book review: Head First iPhone Development

0 0

In a previous article I wrote about some great online resources I found to get started with iPhone development. I read the C and Objective-C introductions, watched the first 12 or so episodes of the Stanford courses and did the assignments that went along with it. Well, at least I tried to do...

on Jun 26

From loopwerk.io

Loopwerk: Liquid Disappointment

0 0

Yesterday I installed the iOS 26 beta on my iPhone and today, for the first time ever, I’ve downgraded my iPhone back to the stable release.

on Jun 26

From loopwerk.io

Loopwerk: A tale of three type systems: Python, TypeScript, and Swift

0 0

I recently ported my static site generator Saga from Swift to both Python and TypeScript. It was a fascinating exercise in cognitive dissonance, especially when it came to their type systems. This is a tale of that experience.

on Jun 19

From loopwerk.io

Loopwerk: Garbage in, garbage out: why good developers are still necessary in the age of LLMs

0 0

Luckily for us, good developers are still necessary in the age of LLMs. You can't just say "make an app", you still need to know how to build a good app.

on Jun 18

From loopwerk.io

Loopwerk: Make Django show dates and times in the visitor’s local timezone

0 0

A robust, two-part solution for showing dates and times in your visitor’s local timezone, handling the tricky first-visit problem.

on Jun 13

From loopwerk.io

Loopwerk: Beyond htmx: building modern Django apps with Alpine AJAX

0 0

Ditch the complex SPA. Learn how to build modern, server-rendered Django apps using Alpine AJAX and the power of hypermedia.

on Jun 12

From loopwerk.io

Loopwerk: Thoughts on Apple, and why I left iOS development behind

0 0

With WWDC around the corner, I'm reflecting on why I've fallen out of love with Apple. After more than a decade of iOS development, the company's anti-developer stance, Swift's growing complexity, and the eroding software quality led me back to the open web.

on Jun 9

From loopwerk.io

Loopwerk: An easy way to use different serializers for different actions and request methods in Django REST Framework

0 0

Introducing ActionSerializerModelViewSet, a ViewSet that allows you to choose a serializer for each action and method combination.

on Jun 4

From loopwerk.io

Loopwerk: Blocking PHP requests using CloudFlare’s WAF rules

0 0

Webservers get hit by hundreds of thousands of requests to random (non-existing) PHP files. Previously I dealt with this on the server level, now I’m doing it directly within CloudFlare.

on Apr 28

From loopwerk.io

Loopwerk: You probably don’t need a CMS

0 0

Many people quickly reach for a big CMS package for Django, when often this is overkill. Here’s how to use a simple Django model with a CKEditor 5 WYSIWYG field, including embedded media like YouTube.

on Apr 16

From loopwerk.io

Loopwerk: Announcing RSSfilter.com: a Trump filter for RSS feeds, built with Django

0 0

I love RSS feeds, but it’s not ideal that you’re stuck with all the articles that are in the feed. So I built RSSfilter.com, offering a way to filter the feed based on keywords and categories.

on Apr 9

From loopwerk.io

Loopwerk: Announcing RSSfilter.com: a Trump filter for RSS feeds, built with Django

0 0

I love RSS feeds, but it’s not ideal that you’re stuck with all the articles that are in the feed. So I built RSSfilter.com, offering a way to filter the feed based on keywords and categories.

on Apr 7

From loopwerk.io

Loopwerk: Django Admin’s handling of dates and times is very confusing

0 0

When you have admin users in multiple time zones, the way Django handles the input and display of dates and times is causing confusion. Here’s how you can improve things.

on Feb 27

From loopwerk.io

Loopwerk: uv just keeps on getting better

0 0

It’s been three months since I migrated all my Python projects over to uv. And it’s only gotten better! Let’s look at two recent major improvements.

on Feb 25

From loopwerk.io

Loopwerk: DocC and SPM need some love and attention from Apple

0 0

Apple’s DocC project and the Swift Package Manager have been missing pretty crucial features for years now. It’s time that Apple gave them some love and attention.

on Feb 20

From loopwerk.io

Loopwerk: Saga... but in Python? Or TypeScript?

0 0

What would Saga look like if it were written in Python or TypeScript, rather than in Swift? Is it worth the effort to port Saga to another language?

on Feb 7

From loopwerk.io

Loopwerk: Looking back at four years of Saga

0 1

I started building Saga, my own static site generator written in Swift, four years ago. Let’s look at the state of the project.

on Jan 26

From loopwerk.io

Loopwerk: Looking at Django task runners and queues

0 0

I use django-apscheduler to run a queue of scheduled tasks. Now I also need the ability to run one-off tasks and that turned out to not be so simple.

on Jan 24

From loopwerk.io

Loopwerk: Refactoring Svelte stores to $state runes

0 1

One pattern that I love to use in my SvelteKit projects is returning writable stores from the layout’s load function. Can we migrate this to the new $state rune?

on Jan 18

From loopwerk.io

Loopwerk: First thoughts on Svelte 5’s runes

0 0

I'm very busy migrating a big SvelteKit project to Svelte 5's new runes syntax and I have to be honest... not a big fan of the increased number of lines, especially when it comes to the props.

on Jan 2

From loopwerk.io

Loopwerk: Why I still choose Django over Flask or FastAPI

0 0

I started using Django in 2009, and fifteen years later I am still a happy user. Why do I prefer it over Flask or FastAPI?

on Dec 24

From loopwerk.io

Loopwerk: How to migrate your Poetry project to uv

0 0

So, like me you’ve decided to switch from Poetry to uv, and now you’re wondering how to actually migrate your pyproject.toml file? You’ve come to the right place!

on Nov 18

From loopwerk.io

Loopwerk: Setting up a Debian 11 server for SvelteKit and Django

0 0

I recently had to set up a brand new server for a website running on SvelteKit and its API running on Django. I am a software developer and setting up servers and hosting isn't something I normally do, so I followed a bunch of different tutorials. In this article I want to combine all these...

on Nov 17

From loopwerk.io

Loopwerk: Revisiting uv

0 0

Almost two months ago I compared Poetry with uv, and for me uv had some pretty significant drawbacks that kept me from switching over. The situation has changed quite a bit since then!

on Nov 11

From loopwerk.io

Loopwerk: How to change MEDIA_URL for one FileField

0 0

I wanted to use a different MEDIA_URL for one of our FileField instances. It was very easy to do!

on Oct 31

From loopwerk.io

Loopwerk: Django REST Framework versus Django Ninja

0 1

Let’s compare Django REST Framework with new kid on the block, Ninja.

on Oct 25

From loopwerk.io

Loopwerk: Automatically deploy your site when you push the main branch

0 0

The best feature of Heroku is the ability to just push a branch, and it gets deployed. How do we replicate a workflow like that on our own server?

on Oct 24

From loopwerk.io

Loopwerk: Trying out PDM (and comparing it with Poetry and uv)

0 0

After comparing uv to Poetry, I am trying out PDM. On paper it combines all the best things of Poetry and uv, without their downsides. How does it hold up?

on Oct 5

From loopwerk.io

Loopwerk: Articles now with comments

0 1

I’ve added a comment section to the articles, powered by GitHub Discussions.

on Oct 2

From loopwerk.io

Loopwerk: How I configure my Django projects

0 1

There are many ways to configure Django, like multiple settings files or .env files. Here’s how I do it.

on Oct 2

From loopwerk.io

Loopwerk: Validate PayPal webhooks using Python

0 0

Paypal’s documentation only shows a JavaScript example. How do you validate the webhooks in Python though?

on Oct 1

From loopwerk.io

Loopwerk: Poetry versus uv

0 0

Comparing two Python package managers: Poetry and new kid on the block uv.

on Sep 18, 2024

From loopwerk.io

Loopwerk: Changing the way Django 5.1 generates admin list labels

0 1

Django 5.1 adds related field lookup to the model admin’s list_display, but with an annoying quirk. Let’s fix that!

on Sep 17, 2024

From loopwerk.io

Loopwerk: Extend Django’s autocomplete widget actions

0 0

Extending Django’s autocomplete widget with a new action which copies the linked user’s email address to the clipboard.

on Jul 22, 2024

From loopwerk.io

Loopwerk: SvelteKit architecture tip: return a writable store from your load function

0 0

How do you update content in real time when that content was fetched from the layout’s load function?

on Jul 20, 2024

From loopwerk.io

Loopwerk: Hardening a web server against script kiddies

0 0

Webservers get hit by hundreds of thousands of requests to random (non-existing) PHP files. What can we do about this?

on Jun 23, 2024