Book review: Computing, a coincise history

New book review — getting tired?

This time I wanted to know a little bit more about the history of computing, but didn’t want to spend too much time on it, thus I decided to give Computing: A Concise History a go.

Read on →

Book review: Release It – Design and Deploy Production-Ready Software

I’ve been reading quite a bit over the past 2/3 months (thanks to — believe it or not — my wife), and today I wanted to share my review of Release It! Design and Deploy Production-Ready Software.

Read on →

What’s up with my gem install? symbol SSLv2_method, version OPENSSL_1.0.0 not defined

Ever met this guy?

ERROR:  Loading command: install (LoadError)
  /usr/lib/x86_64-linux-gnu/ruby/2.1.0/ symbol SSLv2_method, version OPENSSL_1.0.0 not defined in file with link time reference - /usr/lib/x86_64-linux-gnu/ruby/2.1.0/
ERROR:  While executing gem ... (NoMethodError)
    undefined method `invoke_with_build_args' for nil:NilClass
Read on →

Book review: Scalability Rules

I recently finished reading Scalability Rules: 50 principles for scaling websites (2nd edition) and wanted to share a few thoughts on the book.

Read on →

Eval no more: a journey through NodeJS’ VM module, VM2 and Expression Language

How many times have you heard of how evil eval is? Are there safer alternatives in the modern, server-side JavaScript ecosystem?

Read on →

Book review: NodeJS High Performance

It’s been a couple months that I started reading more aggressively compared to the past couple of years, and today I want to give you an honest review of a book I found extremely underwhelming, NodeJS High Performance.

Read on →

Book review: An Introduction to Stock and Options

For $2.99 you surely can’t complain: this book certainly offers what you’re looking for.

Read on →

Better performance: the case for timeouts

Most of the larger-scale services that we design nowadays depend, more or less, on external APIs: you’ve heard it multiple times, as soon as your codebase starts to look like a monolith it’s time to start splitting it into smaller services that can evolve independently and aren’t strongly coupled with the monolith.

Even if you don’t really employ microservices, chances are that you already depend on external services, such as elasticsearch, redis or a payment gateway, and need to integrate with them via some kind of APIs.

What happens when those services are slow or unavailable? Well, you can’t process search queries, or payments, but your app would still be working “fine” — right?

That is not always the case, and I want to run a few benchmarks to show you how a little tweak, timeouts, prove beneficial when dealing with external services.

Read on →

The 2017 blogging pledge

Last year I wrote 12 posts, which makes it a decent average of once a month.

Even though I would have liked to be able to blog more often (and do some more public coding: there are at least ¾ projects I have worked on without getting them far enough to make it to github), I’m still happy with the outcome so far — at the end of the day this blog still attracts a few hundred visitors a day and I’m happy as long as I retain those numbers.

For 2017 I would like, though, to follow a different approach while try to put in the same amount of effort, with – hopefully – better results.

Read on →

2 Web APIs I’m particularly excited about

In the past few months we have seen Google and Apple push in 2 very different directions — as much as Apple has been steady pushing publishers to embrace their app market, Google has been working on a bunch of initiatives to improve the “web platform”, rolling out projects like AMP and giving a lot of coverage to technologies like PWAs.

I’m particularly excited about the work that Google is putting on the web as they’re slowly bridging the gap with the native experience, and there are 2 Web APIs I can’t really wait to use in production to give our users an enhanced experience on the web.

Read on →