RSSAmplifier

Blog

Software Architect and DevOps Consultant on Kristof Kovacs ✈️

Recent content in Software Architect and DevOps Consultant on Kristof Kovacs ✈️

kkovacs.euRSS feed ↗42 posts

Latest posts

Task like a 19th century Prussian general

Tasking people effectively is very hard to do, as I've learned in my late 20s, my first time being a manager-architect of a developer team. Now in 2026, when every developer (and soon every office worker) have teams of AIs standing at their command, tasking is not a niche skill anymore that only 5% of the population needs to know.
My personal method, honed from years of personal mistakes,…

Instant-legacy code

I admit that I am an open-weight model aficionado. I do 95% of my work on OpenCode Go subscriptions. (Rest is OpenRouter pay-as-you-go.)
Not only because I believe the world views and actions of Dario, Sam, Donald and a few others is the worst thing that happened to technology in the past years; not only because I was part of the Linux jihad against another monopoly (Microsoft) decades…

Using your Opencode Go subscription in Claude Code

TL;DR: #export ANTHROPIC_DEFAULT_OPUS_MODEL=minimax-m3 export ANTHROPIC_DEFAULT_SONNET_MODEL=minimax-m3 export ANTHROPIC_DEFAULT_HAIKU_MODEL=minimax-m3 export CLAUDE_CODE_SUBAGENT_MODEL=minimax-m3 export ANTHROPIC_BASE_URL='https://opencode.ai/zen/go/' export ANTHROPIC_AUTH_TOKEN='' export ANTHROPIC_API_KEY='$OPENCODE_API_KEY' You can use only the Anthropic-compatible models: check on OpenCode…

OpenClaw is just not dangerous enough. I needed something else. 😅

(Originally posted to Reddit)
I'm not saying the world needed another mini-claw, but *I* needed one. A minimalist self-hosted Telegram bot to talk directly to a Pi AI agent harness.
I'm not saying you should use it. But if you're a Unix guy like me, maybe you can get inspired, in a world where personal agents include the kitchen sink and a Minecraft server.
Supports switching Pi…

Yet Another Openclaw vs Hermes experience sharing

(Originally posted to Reddit)
I've switched from OpenClaw three days ago, having been tired of the constant flow of updates that kept making everything worse and worse.
I've switched to Hermes, and spent the past few days on it, so I thought I would share my thoughts. Somewhat incoherent, but all from real experience. (3 days, man, that's like 3 years of experience in pre-AI times!…

Hiring developers post-AI

Hiring devs post-AI, update: we trying a new approach for our preliminary coding test. Our pre-AI approach was that we asked candidates to code up a small URL shortener from scratch, but if you remember me telling about it, the last time we've received 40+ submissions (most clearly AI) compared to the usual 4-6 pre-AI.
Which is kinda okay (we too use AI to boost coding, we are not backward…

The Saboteur's Guide to Software Projects

One of the funniest reads for large orgs is the declassified "Simple Sabotage Field Manual" (1944): the CIA (then OSS) guidelines for the Resistance on underhandedly destroying productivity.
A few years back, I took a sharpie and highlighted for a friendly client which destructive ideas (especially in chapter 11) are deeply ingrained in their corporate policies and culture. 😅
Based on…

Auto-starting things in GNU screen

GNU screen is one of my must-have command-line tools. It protects against disconnects, it multiplexes SSH connections, it gives us shared screens, it highlights our PROD servers, I use it for copy-paste, logging – everything.
1. Auto-starting things in GNU screen at boot time #Sometimes you want something to survive a reboot and keep running, but you need more control over it than running from…

Docker compose update (and rollback)

Of course your critical systems should have either backups/snapshots (for example lxc snapshot), or a full deploy pipeline that allows you to revert to older versions in case of problems.
But sometimes you just don't, because you're running some non-critical thingy temporarily just as a simple docker-compose.yml.
Even in that case there should be some way to rollback/revert to the original…

Push-only git server

Sometimes, working in some restricted environment, you need to push a few commits back to a git repo (for example, a hotfix). The git binary has a relatively obscure http-backend command that can help.
WARNING! This is hack-ish, and should be used only if you have a good reason to. You really should NOT use this over the Internet, since it's unencrypted. But it is safe in that your repo can't…

IPv4 trading by the three big Cloud providers

I wrote this as an assignment for The Economist's Data storytelling and visualisation executive education course, so it's different from my usual writing. :) But some of the data are interesting (suprising even, for me), so I thought I'd republish it here.
The data used in this article comes from Scott Seligman. I downloaded it on 2023-08-04. Thanks!
It's a known fact that IPv4 addresses…

Resilient Server-sent Events (SSE)

I'm a big fan of Server-sent Events (SSE), which are similar to Websockets. The main differences are:
SSE works only in one direction: from the server to the client. (AJAX calls can easily provide for the other direction.) SSE is much simpler. You don't need a complex library on the server-side, nor on the client-side (I'm looking at you, Socket.io). You could do SSE in CGI with perl or bash…

Turbo.js goes well with Golang

Recently I had the opportunity to reimplement the web UI of a 10+ years old project. The language is go, in which I don't do web UIs that often (since usually Laravel is much better technology for web UIs), and since I'm a fan of HTML-over-the-wire, I tried Hotwire Turbo from the 37signals team.
UPDATE: While Turbo.js is a great technology, nowadays I'd recommend you to go with HTMX instead,…

Podman finally works with docker-compose

One of the big pains of podman was that while it replaces docker, nobody actually uses docker standalone -- everyone uses (at least) docker-compose.yml, because it's incredibly rare that you don't need at least a DB for any app too.
Since Ubuntu 22.04, podman can now work nicely with docker-compose. On Ubuntu 22.04, where I tested it, the following steps were necessary to set it up…

Poor man's Ansible: lineinfile and blockinfile in bash

Two of my favorite functions in Ansible are lineinfile and blockinfile. They are extraordinarily useful when one needs to ensure that a line or a block is either replaced or put in a config file.
lineinfile #For example, let's say one wants to enable IP forwarding in the sysctl, one can write the following task in Ansible:
- name: Enable IP forwarding lineinfile: dest: /etc/sysctl.conf…

Keystroke injection for comfort

The pendulum of customizing our environment #Probably most people (but certainly me) go through different "phases" in our lifetime regarding the customization of our work environment. Sometimes we over-customize, then we go back to basics.
Normally, when I start something new, I like to use things as they are. No customization, no addons, no plugins, no nothing. To get a feel of how things…

The concurrency crunch

We, programmers, had hit a wall.
For the past half of a century, we were writing programs in basically the same way, and we could trust accelerating hardware performance to keep accommodating our ever-more-complex abstractions (I'm looking at you, object orientation, functional programming, and lazy evaluation) and the comfort features that made our lives so much easier (garbage collection,…

The Death Star Design Pattern

Experienced people in our industry will be familiar with the following popular anti-pattern:
The system is built in secret, from unbelievable money. Only few are allowed to use it; others can only watch, if at all. Its power might be demonstrated once on a low-value target; but right after, a few punx0rs arrive in crappy crafts and frack it up. A less dramatic outcome is that the money runs…

MIL-STD-498: A forgotten military standard that saves me weeks of work

A forgotten military standard that saves weeks of work (by providing free project management templates)
Nobody loves to write documentation, but with age and experience, IT project managers usually come to accept that it can be useful sometimes, even necessary. In healthy doses.
Now, if you're doing small to medium software projects, the US military might not be your usual place to turn to…

Teamwork ground rules

When you're in a team that I lead, there are three minor things that I'd like to ask you. I believe these ground rules are the lubricant of an effective team, and it's not only others I want to adhere to them, I do them myself, too.
There's only three things:
ASK: If a task is not clear, or more information is needed, please ask as soon as possible. Asking is always ok.

The big NoSQL databases comparison

The big Cassandra vs Mongodb vs CouchDB vs Redis, vs Riak vs HBase vs Couchbase (ex-Membase) vs OrientDB vs Aerospike vs Neo4j vs Hypertable vs ElasticSearch vs Accumulo vs VoltDB vs Scalaris vs RethinkDB vs Kyoto Tycoon comparison. While SQL databases are insanely useful tools, their monopoly in the last decades is coming to an end. And it's just time: I can't even count the things that were…

Zabbix vs Nagios comparison

For years, I was using Nagios for server monitoring, but now I'm in the process of switching to Zabbix. I also use a third, much simpler system to monitor the main monitoring system.
Here is a practical comparison of Nagios vs Zabbix:
Zabbix #Pros: # Zabbix monitors all main protocols (HTTP, FTP, SSH, POP3, SMTP, SNMP, MySQL, etc) Alerts in e-mail and/or SMS Very good web interface Native…

Business travel checklist

This checklist was honed through 20+ years of business travel and saves me regularly; I hope that it will be useful for you too. – Kristof
Packing checklist #Clothing # Shirts (one / day + 1, more if hot climate) Undershirts (one / day + 1, more if hot climate) Boxer briefs (one / day + 1) Nightwear (or just add +1 undershirt & boxers) Socks (one pair / day + 1) Warm clothing (if cold climate)…

Cool, but obscure unix tools

A little collection of cool unix terminal/console/curses tools
Just a list of 20 (now 28) tools for the command line. Some are little-known, some are just too useful to miss, some are pure obscure -- I hope you find something useful that you weren't aware of yet! Use your operating system's package manager to install most of them. (Thanks for the tips, everybody!)
dstat & sar #iostat,…

Software project best practices checklists

Please keep in mind that every environment, company, and situation is different. These checklists should always be read with "...if applicable" implicitly added.
Checklists for the preparation of the project #Specifications / Requirements / RFP # Was thought given to the system administration functionality? Was thought given to error handling? Does the specification clearly segregate the…

What is Erlang and when to use it?

Erlang: What's it good and not good for?
Erlang is much more than a programming language. You can't compare it to other languages based only on it's syntax or idioms. It's actually a mini operating system, running on top of another operating system, with lots of interesting and useful features (of which I'll talk later).
Erlang was born in Sweden, at Ericsson, to be the language of their…

The reasons behind my four-project limit

By now, we all know that multitasking (in humans, not in computers) hurts performance. Still, most of us can’t afford to let our work be about only one thing. The best we can strive for is serial monotasking.
Allowing one half day and one hour every day for a project, an ideal week would look like this:
But we all know that this isn’t happening. Instead, we end up with something more like…

The businessmen's guide to open source licenses

is it OK to take program code under the ______ license, add our own functionality, and then ______?
The "TLDR" answer is: # License name ...sell / license as a product? ...provide it as SaaS? BSD / MIT License OK OK Apache License OK OK MPL (Mozilla Public License) If done right * OK LGPL (Lesser GNU Public License) As a larger work ** OK GPL (GNU Public License) Your code must be given away…

The tao of programming

A few days ago I found this "ancient" (in Internet-time, at least) text on my harddrive, along with other texts. I thought you might want to read it, too: It contains many valuable gems of wisdom even for this day!
The text was clearly written in an era when mainframes was just being replaced by personal computers. But from the sayings of "the master programmer", it's clear that the human side…

About me

Well, since you asked... :-)
First of all, I'm a software architect. I've been programming computers since I was 7 years old – and I still find joy in it!
Some say you can learn all about a person from his environment; if that's so, you can look at all my personal dotfiles here. 😀
I've been practicing Iaido, the japanese art of samurai sword handling since 2014. The closest thing to…

Business Analysis

Business analysis is the art of turning ideas into working software.
When you're starting a new project or a start-up, you typically have concerns about:
On one hand, stability. # You want stable foundations, so you don't suffer from an-hour-a-day downtimes. You want it to be scalable, so you don't have to redo it just when you start growing. You want it to be easy and intuitive to your…

Expertise

My expertise covers... #Nowadays I use Golang, JavaScript and PHP to craft scalable, high-performance web applications and backends, although I used to code a lot in C/C++, Assembly, Java, TCL and even Erlang.
Unix #I'm using FreeBSD and Linux (most often Ubuntu server) for servers, with some OS X Server on the side. For firewalls and security, it's always OpenBSD.
PHP #Most of the…

Hi there, fellow programmer!

Project owners and contacts from different firms often come to me asking, "Kristof, I want to hire a few full-time employees for a project; I know you don't go full-time, but don't you happen to know programmers who are looking for a job change?"
I can often recommend a developer with the right skill-set, and I'm happy to help out both the project and the programmer I happen to know.

Kristof Kovacs, Software Architect and DevOps Consultant

Some companies I've already worked with # Career timeline # gantt dateFormat YYYY-MM-DD axisFormat %Y todayMarker off Senior Consultant & Partner - Priority Queue Consulting:	2015-01-01,2023-04-30 Head of Software Development - MAG:	done, 2013-01-01,2014-12-31 Software Architect & CTO - Online Projects:	2005-08-01,2012-12-31 Senior Consultant - Qualysoft:	done,…

Open source contributions

Giving back to the community #We get so much out of open source that it always feels good to give back to the community.
As a programmer, I regularly dive into codebases of open-source software to fix what ails me, and submit patches to the projects for integration. When I develop something for myself (not for a client), I often release it as open source, hoping that it might be useful for…

PHP/MySQL tuning

Most programs can gain huge speed-ups (sometimes 1000% or more) from a little performance tuning. Methods include:
Analyzing program behaviour Looking for inefficient resource usage Monitoring MySQL traffic and optimizing both the database and the queries Implementing heavy caching where reasonable Profiling the code to find bottlenecks, then fixing them Maybe some data is better put in a…

Project management

A project manager is recommended when you need to have the efforts of several people (programmers, designers, testers, seo experts, system administrators, etc) orchestrated towards a specific outcome; especially if you only wish to be involved with the project at the executive level, and let somebody else deal with the details.
Projects usually consist of a “planning” and a “development”…

Rapid prototyping

Sometimes you have an idea, and want to have a pilot or proof-of-concept built, either to prove the viability of the idea, to show it to investors, or to estimate the development costs of the "full" project.
Besides being a programmer, I'm also a businessman, so I grasp business ideas quickly, and turn them into working software fast.
I offer advice on which technologies to use and which…

Software Architect

Let's say you need custom software developed. A sophisticated web application, an interface between two systems, a high performance backend, or something similar.
Which computer language is the best fit? Go, PHP, Java or something else? What architecture?
What database to use, MySQL, Oracle or PostgreSQL?
Or should it use one of the shiny new NoSQL databases? But which one, Cassandra,…

Software Development

When you're looking for programmers, you're looking for experienced and reliable ones.
My name is Kristof, and I'm leading an independent DevOps team based in Europe. I'm personally a software architect and here you can see my resume.
Our team develops and operates sophisticated web applications. We love challenges regarding high performance, large scale or global deployment!
Our main…

Some favorite quotes

"Computers are useless. They can only give you answers." (Pablo Picasso, Spanish Cubist painter, 1881 - 1973)
"If you know yourself as well as your enemy, then you do not need to fear the result of 100 battles." (Sun Tzu, Military strategist, ~544-496 BC)
"When the people are being beaten with a stick, they are not much happier if it is called 'the People's Stick.'" (Bakunin, Russian…

Testimonials

A few kind words from people
Saying thank you can really brighten someone's day. Here are some kind compliments I've received:
"Thank you for all your work and all the communication, not only have you managed to work really fast, yet deliver exactly what I asked for, but also communicate very clearly on a regular basis, which I appreciate very much. In my experience, it's rare to find…