All articles by Yann Malet

Thumbnail image for Cracking Django Password Hashes

Cracking Django Password Hashes

Most of the Django projects I work with take advantage of django.contrib.auth. It manages users and groups and is tightly coupled with django.contrib.admin. In this post, we are going to explore how it resists a potential attacker. The study below …
Thumbnail image for Debugging Go Code

Debugging Go Code

Four years ago, I wrote a blog post called Introduction to Go Debugging with GDB. At the time, the only option was the GNU debugger. Even the official Go documentation page on GDB doesn't set the bar very high: GDB …
Thumbnail image for Sharing Media Files Without S3

Sharing Media Files Without S3

Nowadays, it's common to deploy multiple application servers, but it poses a very common problem; How are these application servers going to share the media files contributed by the users? Cloud providers like Google, Rackspace or Amazon Web Services solve …
Thumbnail image for Let's Encrypt DNS Challenge

Let's Encrypt DNS Challenge

Let's Encrypt is a new certificate authority. It is a huge improvement over the manual complex process of acquiring and deploying an HTTPS server. The process is now: Free Automatic (no more login to sites, filling forms, concatenating certificates) This …
Thumbnail image for Concurrency in Python vs GO

Concurrency in Python vs GO

At Pycon in Montreal few weeks ago I attended a talk that blew my mind away and got me thinking: Python concurrency from the Ground Up: LIVE! by David Beazley. The video is available on YouTube. The gist of the …
Thumbnail image for Server Migration for BotBot.me

Server Migration for BotBot.me

Last week Vitaly and I migrated BotBot.me to new servers and also launched a redesign of the user account section. You can now support us by becoming a subscriber for $3/month and even log personal channels for $2/month. If you …