Gnuplot is a feature rich command-line graphing utility available for Windows, Linux and Mac OSX. Though capable of generating much more advanced formula-based plots its also very handy at producing quick, ad-hoc time series graphs. [Continue reading...] Simple Time Series Graphs With Gnuplot
Automated bots creating fake accounts are a persistent problem targeting any user self-registration systems and django-allauth is no exception. The most common approach to discourage these bots is to incorporate a captcha on your signup page that adds a layer of validation, with Google's ReCaptcha being the industry-standard implementation. Integrating recaptcha into django-allauth can be tricky so in this post I'll cover the steps to add a captcha to the django-auth signup page. [Continue reading...] Integrating ReCaptcha With Django-AllAuth
Traditionally mirrored disk sets in Linux and other operating systems have been limited to two devices. While mirroring has the benefit over other raid levels in that each mirrored device contains a complete copy of the data, the two device limit became inadequate as disk sizes ballooned. In the age of multi-TB drives, simply rebuilding a degraded mirrored array could actually cause the surviving device to fail, eliminating the very redundancy one was expecting.
ZFS addresses this particular problem in several ways through data checksums, self-healing and smart resilvering instead of blindly rebuilding full array members even if only 1% of disk space is being used. [Continue reading...] 3-way Disk Mirrors With ZFSOnLinux
SQL upserts are a combination of an INSERT and/or UPDATE into a single database operation which allows rows to to be added or modified in an atomic, concurrent-safe way. [Continue reading...] PostgreSQL Upserts - INSERT or UPDATE Made Easy