I spent Saturday on rewriting a Flask app in Django. The app in question was Nikola Users, which is a very simple CRUD app. And yet, the Flask code was a mess, full of bugs and vulnerabilities. Eight hours later, I had a fully functional Django app that did more and fixed all problems.
I tested the speed of four static site generators: Nikola, Pelican, Hexo and Octopress, in a clean environment. Spoiler alert: Nikola won.
Disclaimer: author is a developer and user of Nikola. The test environments used were the same for all four generators.
- Nikola v7.6.1, by Roberto Alsina, Chris Warrick and contributors; Python; MIT license
- Pelican v3.6.0, by Alexis Metaireau and contributors; Python; GNU AGPL license
- Hexo v3.1.1, by Tommy Chen and contributors; Node.js; MIT license
- Octopress v2.0, by Brandon Mathis and contributors; Ruby; MIT license (based on Jekyll)
pass is the standard Unix password manager. And I just wrote a slightly friendlier, clickier interface with urwid and Python.
Are you executing a process that takes a long time? Do you want to know that it’s still working while you are in another terminal/making coffee? Do you have a favorite game show tune to play while doing something?
If yes: think is just for you. For more details, read on or hop onto the GitHub page.
I recently switched distros on my server, from Debian to Fedora, to use systemd and keep it in line with my home Arch Linux system (which was not reinstalled since 2010, by the way!) Why is systemd so awesome? Read on to find out.
This post is stating the obvious. Facebook just scared me with some data points it has about me. Full story, right after the break.
A week ago, I was inspired to produce a new projects page for myself. The previous one was a trainwreck with a lot of hacks. Also hosted on GitHub Pages for some reason.
There are multiple ways to write an app in Python. However, not all of them provide your users with the best experience.
One of the problems some people encounter is writing launch scripts. The best way to handle this is the Entry Points mechanism of Setuptools, and a __main__.py file. It’s quite easy to implement. If you’re interested, read on to learn more!