Another option, which isn't 100% free but still manages to avoid the Google Play Services layer, which is what the article focuses on, is running an alternative ROM such as Cyanogenmod, skip flashing the Google apps package, and install an alternate package repository such as f-droid.org which features only FOSS apps.
Most alternative ROMs have binary drivers pulled from the official ROMs, but it should be no worse than running a Linux distro with, say, non-free binary firmware images which are loaded on demand for wireless cards, and you strike a better balance between a fairly open system and the latest hardware.