The idea of converting an Open Source project into a company is something that excites many of us, but very often this is something that will not succeed. Often times it’s because many Open Source projects fill a void that exists largely because in that space no money can be made. This is especially true […]
Author: Armin Ronacher
A Fresh Look at Rust
I have been programming with Rust for quite a long time now but that does not mean much. Rust has been changing for years now in such dramatic ways that coming back after two months feels almost like working in a different language. One thing however never changed: the trajectory. With every update, with every […]
Beautiful Native Libraries
I’m obsessed with nice APIs. Not just APIs however, also in making the overall experience of using a library as good as possible. For Python there are quite a few best practices around by now but it feels like there is not really a lot of information available about how to properly structure a native […]
About the Lack of Updates
If you look over my contributions to my own open source projects over the last six months you will have noticed that I became less active. Why is that? There is no big conspiracy ongoing and I also don’t plan on keeping it this way, but there are two reasons for this. The first one […]
Codec Confusion in Python
Alright, I admit Alex Gaynor is a pretty clever guy but I was very close to strangling him today for this tweet: @alex_gaynor: WTF does str.encode or unicode.decode even do on Python2? And that’s because on the way to Python 3 these functions were removed because they cause confusion with people, but this broke a […]
Battlelog: Modern Web Applications are Here
It’s the shooter season of the year and this fall was all about Modern Warfare 3 versus Battlefield 3. And being the kind of game they are they also try to keep their audience playing by introducing some additional level of engagement. Both Call of Duty and Battlefield introduced their own online community websites and […]
Dealing with the Python Import Blackbox
Turns out, this does not work reliably, in fact it will only work when packages are involved. I originally wrote the core for Flask extensions and it appeared to work, but I never verified that it works without extensions being involved. And in fact the module cleanup breaks it. Apparently Python does clean it up […]
Be careful with exec and eval in Python
One of the perceived features of a dynamic programming language like Python is the ability to execute code from a string. In fact many people are under the impression that this is the main difference between something like Python and C#. That might have been true when the people compared Python to things like C. […]
Common Mistakes as Python Web Developer
A few weeks ago I had a heated discussion with a bunch of Python and Open Source people at a local meet-up about the way Python’s path joining works. I was always pretty sure that people are aware of how the path joining works and why it works that way. However a bit of searching […]
April 1st Post Mortem
This year I decided to finally do what I planned for quite some time: an April’s fool joke. (I did contribute a bit to PEP 3117, but that does not count). This year I decided to make a little joke about Python microframeworks (micro-web-frameworks?) and wrote a little thing, and created a website and screencast […]