This week, I’ll continue on the same theme of my previous “Django Friday Tips” post. Essentially, we will keep addressing small annoyances that can surface while developing your multilingual project. The challenge for this article shows up when a given string from a package that is a dependency of your project is either: As we […]
Category: Technology and Internet
Everything related to technology and the Internet. Tutorials, projects, news…
Security.txt in the wild: 2025 edition
One year ago, I checked the top 1 million “websites” for a security.txt file and then posted the results in this blog. As it was described at the time, I used a tool written by someone else who had already run this “experiment” in 2022. You can look at the post, if you are keen […]
Status of old PyPI projects: archived
Since late January, the python package index (PyPI) supports archiving projects/packages. This is, in fact, a very welcome feature, since it clearly tells without any doubt when a package is no longer maintained and will not receive any further updates. It makes it easier for the person looking for packages, to know which ones deserve […]
Why isn’t my translation showing up?
Here we go again for another post of this blog’s irregular column, entitled Django’s Friday Tips. Today let’s address a silent issue, that any of you that have formerly worked with internationalization (i18n) almost certainly already faced. You add a string that must be translated: You then execute the manage.py makemessages –locale pt command, go […]
Spam is everywhere. If you have an email account, a mailbox, a website with comments, a cellphone, a social media account, a public form, etc. We all know it, it is a plague. Over the years, there have been multiple attempts to fight spam, with various degrees of success, some more effective than others, some […]
Is it “/.well-known/”?
Ironically, according to my experience, the .well-known directory doesn’t do justice to its name. Even in use cases that would fit nicely in its original purpose. But I’m getting a bit ahead of myself. Let’s first start with what it is, then move to discuss where it’s used. But we’ll do this rapidly, otherwise this […]
PyCon US happened in May, this month, the 154 videos gradually started being published on YouTube. Between now and then many other interesting conferences took place. That’s a lot of talks, presentations, and content to be digested. The truth is, I and most people, won’t watch it all since our time is limited. One option, […]
Ways to have an atomic counter in Django
This week, I’m back at my tremendously irregular Django tips series, where I share small pieces of code and approaches to common themes that developers face when working on their web applications. The topic of today’s post is how to implement a counter that isn’t vulnerable to race conditions. Counting is everywhere, when handling money, […]
Are Redis ACL password protections weak?
Earlier this year, I decided to explore Redis functionality a bit more deeply than my typical use-cases would require. Mostly due to curiosity, but also to have better knowledge of this tool in my “tool belt”. Curiously, a few months later, the whole ecosystem started boiling. Now we have Redis, Valkey, Redict, Garnet, and perhaps […]
Local AI to the rescue
The last couple of years have been dominated by the advancements in the Artificial Intelligence (AI) field. Many of us witnessed and are currently experiencing some sort of renaissance of AI. It started with generated images from prompts, then it was all types of written content, and in the last few weeks we’ve seen astonishing […]