Recently I needed to look over drools and I will go over what I learned in a series of posts. This is the first one. Its aim is focused on practicality rather than theoretical learnings. Drools is a business rule engine. This means when you need rules in your application your mind should at least… Continue reading Drools – Workbench and KIE Server
Java 15
Welcome to another release review. As one of my colleague pointed out, keeping up with releases takes time that we don't have (since we are still on 11) but nevertheless we need to invest the time to make the transition easier to the next LTS which is gonna be Java 17. As you already noticed… Continue reading Java 15
A look at the Camel Kafka Consumer
In this post let's look at the Kafka Camel Component. Apache Camel is an implementation of the enterprise integration patterns. The class we want is KafkaConsumer @Override protected void doStart() throws Exception { //... executor = endpoint.createExecutor(); //... for (int i = 0; i < endpoint.getConfiguration().getConsumersCount(); i++) { KafkaFetchRecords task = new KafkaFetchRecords(topic, pattern, i… Continue reading A look at the Camel Kafka Consumer
Kafka Consumer Rebalance
A consumer is a process that reads from a kafka topic and process a message. A topic may contain multiple partitions. A partition is owned by a broker (in a clustered environment). A consumer group may contain multiple consumers. The consumers in a group cannot consume the same message. If the same message must be… Continue reading Kafka Consumer Rebalance
Maven parent version
It most cases when we need maven, we need a parent child like structure. I personally like to start my projects with a parent bom file where I manage all my dependencies and plugins. https://unsplash.com/@vikceo <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <artifactId>commons</artifactId> <packaging>pom</packaging> <version>1.0-SNAPSHOT</version> <parent> <groupId>com.sergiuoltean.test</groupId> <artifactId>bom</artifactId> <version>1.0-SNAPSHOT</version> <relativePath/> </parent> </project> Now… Continue reading Maven parent version
Open Policy Agent
Security is one, if not the most important architecture characteristic. When we talk about security we usually talk in terms of authentication and authorization. Authentication refers to the ability of a user(or service) to access functionalities provided by other services. What are those functionalities are controlled by the authorization process. Two of the most used… Continue reading Open Policy Agent
A change of seasons
Fundamental techniques of handling people Principle 1 - Don't criticize, condemn or complain Criticism is futile because it puts a person on the defensive and usually makes them strive to justify themselves. Criticism is dangerous, because it wounds a person's precious pride, hurts their sense of importance, and arouses resentment. There you are; human nature… Continue reading A change of seasons
Introduction to Architecture characteristics
Also known as *ilities(scalability, deployability), NFRs(non-functional requirements), quality attributes. There is no fixed list of these. We do however have a standard for these. It's ISO25010 and it looks like https://iso25000.com/images/figures/en/iso25010.png We extract these from business requirements(business characteristics), from the way we expect to operate the system(operational characteristics) and they are implicit, cross-cutting characteristics which… Continue reading Introduction to Architecture characteristics
Architectural Decisions
These are regularly taken by architects to solve a particular problem. There is a thin line between architectural decision and design decision. Should the architect also take a design decision? Ideally not, but as we know it all depends. Design decisions should be taken by the architect in collaboration with the tech leads and senior… Continue reading Architectural Decisions
Football Manager
You read it right. Today I'm gonna talk about my strategy that I used when I was playing this game. https://s2.dmcdn.net/v/AdDAh1LfLIUPbwg4i/x1080 I started with a mediocre team in 2nd tier. I was their manager. My goal was to promote it to 1st tier. I knew my chances are not that good, so the first thing… Continue reading Football Manager