Erlang 17.0: Supporting Deprecated Types Without Removing warnings_as_errors

Erlang 17.0 deprecated some pre-defined types like dict() and gb_tree() in favor of dict:dict() and gb_tree:tree(). The workaround they suggest (nowarn_deprecated_type) works in 17.0, but would break once the deprecated types are removed.
Not using nowarn_deprecated_type means that you can’t use warnings_as_errors, because it would make deprecation warnings an error.

Installing Erlang 17.0 On Mac OS X

It’s been a few days since Erlang/OTP 17.0 has been released. Installing 64 Bit Erlang (with Observer support) on Mac OS X has always been a bit tricky, but with 17.0 it has gotten significantly easier.

Property-based Testing with PropEr

PropEr is a QuickCheck-inspired property-based testing tool for Erlang. In contrast to traditional testing methodologies, the tester only has to provide the generic structure of valid inputs and some properties, which specify the relation between input and output. The testing tool will then produce progressively more complex valid inputs and compare the results it gets to what it expected (based on the defined properties).
PropEr is one such testing tool for Erlang. It is open-source and supports Erlang R15B01+.

OCSP Stapling with nginx

Setting up OCSP stapling with nginx is more or less straightforward, but depending on what’s in your ssl_certificate you might run into some issues with it silently failing. So I’ve decided to write about how I set up OCSP stapling with certificates from StartSSL and CAcert.

Some DEF CON Videos

Over the weekend I watched some DEF CON videos on YouTube and thought I should share some of the interesting ones on here. The two talks on Bitsquatting (by Stucke and Schultz) are especially entertaining and scary.