Welcome to our world of building digital products
Essays about software development, technology, and building digital products
Essays about software development, technology, and building digital products
our team is eager to share their insights and stories. Whether you seek inspiration or hands-on advice, we offer a mix of technical knowledge and personal experiences. Dive into our blog for practical tips on product development, design, and software engineering, all from our team behind digital products reaching millions.

Adis Nezirović•Aug 18, 2022•Software Architecture & Engineering
Belgian OLAP Cube Clickhouse is a very interesting open source columnar database, mostly used for online analytical processing (OLAP). It speaks custom native TCP protocol, but also supports HTTP, so you don’t really need any special client or “driver” to talk to it. There are many great features, too many to mention here, but I’ll mention a few killer ones I’ve used: * Replicated and Distributed tables (sharding) * Materialized Views (continuous aggregation) * Zstandard compression suppor
Read More
Adis Nezirović•Aug 18, 2022•Software Architecture & Engineering
Service Discovery Ice cream We want to show you how to use HAProxy and Hashicorp Consul for fun and profit. You can even sprinkle a lightweight orchestrator on top of it, for better taste (for this we will use Nomad, a lightweight alternative to Kubernetes). The starting point are two blog posts on the HAProxy and Hashicorp website: * DNS service discovery * Consul service discovery Our scenario covers running machine(s) with services such as httpd (apache, nginx), database services, or an
Read More
Adis Nezirović•Aug 18, 2022•Software Architecture & Engineering
Docker Cake This one is very easy on the eyes (and stomach), and rather useful. You can have your cake and eat it too! Just launch HAProxy inside docker container, where HAProxy will proxy the trafic and log to stdout. In addition to that, HAProxy can start and monitor additional processes, so you don’t have to play stupid tricks to start multiple processes in the container. global log stdout format raw local0 debug defaults log global mode http option httplog clf option do
Read More
Adis Nezirović•Aug 18, 2022•Software Architecture & Engineering
TLS Calzone For some services, securing and logging access is paramount. For HTTPS traffic you can often get by with Basic HTTP Auth. Managing such solution can become slightly complicated (e.g. you need to implement account and secret management), so you try to find next best thing. Aside from the crazy modern stuff, there is a simple and very effective solution in the form TLS clients certificates. It is very effective, you can secure TCP or HTTP services, and user management can be pushed o
Read More
Adis Nezirović•Aug 18, 2022•Software Architecture & Engineering
Club Sandwich Starting usage pattern is a “sandwich” like structure, where our application is between the two HAProxy layers. All incoming traffic is going through HAProxy, which provides protection, SSL termination, and logging, while my app is not exposed to the outside world (it usually listens only on localhost/loopback). In addition to that, all outgoing (server-initiated) traffic is also going through HAProxy (database stuff, Redis/Memcached, connection to other HTTP services, logging).
Read More