Philip O'Toole

Philip O'Toole

Monitoring: it’s not just for production

Monitoring — the measurement of your system, the gathering of telemetry, and alerting when it behaves anomalously — is key to running large-scale, modern computer systems.  But what many developers today don’t realise is that monitoring can be a key part of…

rqlite and Hashicorp Raft 1.0

Hashicorp recently released version 1.0 of their Raft consensus package.  The Hashicorp implementation, along with SQLite, forms the core of rqlite. rqlite has now been ported to release 1.0 and will be a key change in the upcoming release of…

rqlite 4.3.0 released

rqlite is a lightweight, open-source distributed relational database, with SQLite as its storage engine. v4.3.0 is now out and includes some new security functionality. You can download the release from GitHub.

Moving East

After almost 20 years in the San Francisco Bay Area, I am moving to Pittsburgh, PA, to accept a management role with Google. I am very much looking forward to working at a world-class software company. It was a great…

Happy New Year

2018 sees the ninth year of this blog. Happy New Year to one and all. I am planning major work on rqlite, as well as more client libraries. I also hope to continue to write on software engineering leadership and…

rqlite 4.2.2 released

rqlite is a lightweight, open-source distributed relational database, with SQLite as its storage engine. v4.2.2 is now out. This release include some minor bug fixes. You can download the release from GitHub.

One search to rule them all

This is the third in a series about core data structures and algorithms. The outstanding characteristic of binary search is that it’s intuitive. Many algorithms are not, but binary search is what people — anyone, not just programmers — naturally…

Ekanite 1.3.0 released

A new version of Ekanite, the syslog server with built-in search, has been released. v1.3.0 includes some bug fixes, including to shard management. It also moves Ekanite to Go 1.9. You can download v1.3.0 from the GitHub releases page.

The power of sorting

This is the second in a series about core data structures and algorithms. Considering how important sorting is to computer science and programming, it’s actually a mystery why more programmers don’t appreciate it.

rqlite 4.2.1 released

rqlite is a lightweight, open-source distributed relational database, with SQLite as its storage engine. v4.2.1 is now out. This release include some minor fixes to the CLI, as well as a simple benchmarking tool. You can download the release from…

Hash tables distilled

This is the first in a series about core data structures and algorithms. Many explanations of data structures focus on the implementation — and that is very important — but I’ve always found some context makes it so much easier…

rqlite 4.2.0 released

rqlite is a lightweight, open-source distributed relational database, with SQLite as its storage engine. v4.2.0 is now out. This release moves the build to Go 1.9. You can download the release from GitHub.

rqlite 4.1.0 released

rqlite is a lightweight, open-source distributed relational database, with SQLite as its storage engine. v4.1.0 is now out. This release includes some minor enhancements and bug fixes. You can download the release from GitHub.

Java client for rqlite

I’ve started a new Java client for rqlite, the lightweight distributed relational database, build on SQLite. I’m using Eclipse as my IDE and it’s working well so far. You can check out the source on Github here.

rqlite v4.0.1 released

rqlite is a lightweight, open-source distributed relational database, with SQLite as its storage engine. v4.0.1 is now out. This release includes some minor bug fixes. You can download the release from GitHub.

New JavaScript client library for rqlite

Thanks to Justin Morant there is now a new JavaScript client library for rqlite, the lightweight, distributed, relational database. This library allows you to build both in-browser and node.js applications, that access rqlite. You can check it out on GitHub.

Ekanite 1.2.3 released

A new version of Ekanite, the syslog server with built-in search, has been released. v1.2.3 includes a fix to the diagnostic output. You can download v1.2.3 from the GitHub releases page.

Go, gRPC, and PostgreSQL

I’ve started experimenting with Go and gRPC. To that end I’ve written a simple service that accepts connections from gRPC clients, allowing those clients to send queries to PostgreSQL. So far it’s been pretty straightforward. You can check out the…

Ekanite 1.2.1 released

A new version of Ekanite, the syslog server with built-in search, has been released. v1.2.1 includes a very important bug fix, for an issue that affected TCP operation. You can download v1.2.1 from the GitHub releases page.

Why Slack isn’t working

Slack: Where work happens Something is happening at companies that use Slack. Slack, the company, may claim it’s work, but it’s less and less productive work, and it’s having a destructive affect upon my own field of software development. I…