perl Unit Testing Asynchronous Code How writing asynchronous code using Futures can help simplify unit testing Well-tested code is always prefered over something that has no tests, as with more tests we can be more confident that the
KVM Virtualisation in Debian 9 (Stretch) Install KVM in Debian 9 Installing the KVM packages sudo apt install -y qemu-kvm libvirt0 virt-manager bridge-utils Reboot system sudo reboot Add user to libvirt group so user can run commands sudo gpasswd
perl Future Caching Tricks Caching the results of Future-returning functions Often when making read requests or queries to some external service, it is helpful to cache the results of these queries so that other requests for the
perl One Thing At A Time Limiting Concurrency in Future-based Programming Sometimes a Future-based program needs to actively avoid concurrency in one specific way or area, and ensure that only one instance of a given operation is outstanding at
Parallel query without parallel query One of the key improvements in Postgres 9.6 has been the ability to distribute a query to multiple worker processes. Yet, with a few tricks this has been feasible almost forever at
cryptocurrency How and why we implemented our own crypto cashier? Architecture overview and reasoning behind implementation of Binary.com crypto cashier.
An ERC20 securities token Binary.com will be performing an ICO from 15 November to 25 December 2017, offering up to 10 million tokens which offer two exclusive rights: (1) the right to receive dividend-linked payments, and
perl A Sense of Closure A discussion came up the other day on the subject of how best to structure a certain piece of code, involving an IO::Async timer. The code in question was a watchdog, whose
Lock contention in Postgres At binary.com, our clients can trade in binary options. We keep all the related information in a PostgreSQL database. The life cycle of such an option begins when it is bought by
PostgreSQL: How to use EXPLAIN output in SQL? Sometimes you want to process the EXPLAIN output in SQL. Unfortunately, EXPLAIN itself does not offer that option. However, there are tricks... Wrapping EXPLAIN in a function This is probably the simpler version.
Devel::MAT Tracing Perl memory leaks with Devel::MAT, part 2 In the previous article we took a first look at how to use Devel::MAT to help find the reason why a perl process kept using more and more memory. The cause last
Devel::MAT Tracing Perl memory leaks with Devel::MAT, part 1 The `Devel::MAT` ecosystem allows developers of perl programs to inspect and analyse memory-related problems such as memory leaks, unexpected memory consumption, or odd state.
Using Google Adwords ROAS bidding At Binary.com we like Adwords' ROAS (Return on Ad Spend) bidding method as we believe it provides the best way to obtain the highest return on investment on Adwords spend. Here is