SQLite Session Extension provides a convenient way to create “diffs” between two versions of a table. These “diffs” are binary and are usually much more compact than their SQL counterparts. This article shows how to create and apply such “diffs” to tables.
Yoast SEO: How to Use a Custom Stylesheet for Sitemaps

The article describes a way to use custom XML stylesheets for sitemaps generated by Yoast SEO plugin. Custom stylesheets can be good if you want to get rid of spammy links back to Yoast website in every generated sitemap file.
Newer Is Not Necessarily Better: Updated Yoast SEO to 8.3

Yesterday I made a terrible mistake by updating Yoast SEO plugin to its latest version (8.3) without prior testing. This resulted in significant server load. Luckily, the fix was easy.
Mapping OpenSSL Cipher Suite Names to RFC Names
Correspondence between OpenSSL cipher suite names and RFC names taken from http://testssl.sh/openssl-rfc.mapping.html.
Signal Desktop and Failed to Map Segment from Shared Object Error

Signal is a great encrypted communications application built upon Electron framework. Couple of months ago I faced the issue that Signal had failed to start showing a message like this: “Uncaught Exception: Error: /tmp/.org.chromium.Chromium.j4ITUv: failed to map segment from shared object”.
Here is the solution.
How Slow Are C++ Exceptions?

In Systematic Error Handling in C++ Andrei Alexandrescu claims that C++ exceptions are very slow. And though I have no doubts because I know the internals of exception handling, it is interesting to see some proofs yourself by benchmarking how fast or slow exceptions are.
How to Get the Source of an Uncaught Exception in C++

Sometimes, unexpected things happen. Your program throws an unexpected exception, which is caught by the framework, which loudly complains but provides no hints as to where this happened. You need to find the source of the exception, and this article will explain one of the possible ways to do that.
PHP Extensions: How to Make make Rebuild Dependencies Correctly

One of the things I hate in the PHP Build System is that Makefile‘s it generates cannot handle the cases when a header file changes. In a perfect world, any change to a header file would cause all files depending
PHP Extensions and C++

This article describes some gotchas you may face if you need to use C++ in your extension.
PHP: call_user_func_array vs Dynamic Call

PHP 5.6 introduced the splat operator, which unpacks arrays or objects implementing Traversable interfaces into argument lists. Its most evident application is to call functions without having to resort to call_user_func_array(). So, which method is faster?