General programming

Introduction to libuv

Posted on   Abstracting away event-driven loops with libuv In part 3, we’ve seen how similar select-based and epoll-based servers are, and I mentioned it’s very tempting to abstract away the minor differences between them. Numerous libraries are already doing this, however, so in this part I’m going to pick one and use it. The library I’m picking […]


Unix monitoring and audit

Posted on Lynis is an open source security auditing tool. Used by system administrators, security professionals, and auditors, to evaluate the security defenses of their Linux and Unix-based systems. It runs on the host itself, so it performs more extensive security scans than vulnerability scanners. It is also the client in our Lynis Enterprise offering.  

General programming

General computer science articles

Posted on The course aims to introduce software engineers to the practical basics of distributed systems, through lecture and discussion. Participants will gain an intuitive understanding of key distributed systems terms, an overview of the algorithmic landscape, and explore production concerns.  

General programming

Anasysis of databases (Jepsen)

Posted on Over the past four years, Jepsen has analyzed over two dozen databases, coordination services, and queues—and we’ve found replica divergence, data loss, stale reads, lock conflicts, and much more. Here’s every analysis we’ve published.


Full-stack Java frameworks

Posted on Apache Isis™ is a framework for rapidly developing domain-driven apps in Java. Write your business logic in entities, domain services or view models, and the framework dynamically generates a representation of that domain model as a webapp or a rich hypermedia REST API. ActiveWeb is a Java web framework inspired by Ruby on […]


A Simple Guide To Tomcat Logging

Posted on Some additional info: An Overview of Tomcat Logging As of Tomcat 5.5, Apache’s Java Commons Logging (JCL) technology is used throughout Tomcat.  JCL is a lightweight API for Java applications that allows hierarchical logging to be supported across all log levels, independent of logging implementation.  This means that rather being limited to a […]


Default log4j initialization procedure

Posted on

  The default initialization algorithm is invoked when the LogManager class is loaded into memory. This class is guaranteed to be loaded before any logger can be used. The exact initialization algorithm is defined as follows: If the log4j.defaultInitOverride system property is set to any other value then “false”, the default initialization procedure (this procedure) […]


Docker container networking modes

Posted on Note on docker container networking modes Docker offers different networking modes when running containers. Depending on the mode you choose you would connect to your MySQL database running on the docker host differently. docker run –net=”bridge” (default) Docker creates a bridge named docker0 by default. Both the docker host and the docker containers have an IP address on […]