One of the project of my team in former company was building a new system using event-sourcing pattern. Nobody is an expert in this topic and we were learning it along the way by trial and error. One design decision that turned out to be quite a big headache for us later is the dual… Continue reading
ReadLock is not just for read.
I was confused when I first learned about Java ReadWriteLock. I thought read operation here is strictly for just reading data.
Continue readingMy mistakes as junior developers
We all committed a lot of mistakes when we were young. Here are my notable mistakes that helped me learned valuable things later in life. I thought I had unique abilities. A fresh graduated engineer 17 years ago in Thailand with determination to practice the art of programming , in my stupid mind, should be… Continue reading
Kafka slow consuming and messages duplication
Kafka is super fast. One design tradeoff to achieve very high through put is to put more responsibilities on client side. The underlying concept of messages fetching in Kafka client API is simple enough. But there are many behavior of the API that could be well understood only by spending some time studying how it… Continue reading
Declarative Style in Reactive Programming – Take 3.2
This is the second part of my story about a bug I have created due to the lack of understanding on Spring reactor operators. I have described the basic of the operators in part1. This post will just show the simplified version of the real code. I have preserved all important components in the code… Continue reading
That code jumps too much
“That code jumps too much” my colleague said to me once while reading my code. I just acknowledge his observation and didn’t say anything. I knew his style was more about putting logics closely together. The style tends to result in longer code in minimal number of methods. I prefer breaking logic to small methods… Continue reading
Declarative Style in Reactive Programming – Take 3.1
Just experienced a bug in my code that related to how I composed reactive publisher. The underlying issue is not that complicated but the way it manifest itself in reactive style is quite interesting. I will share the details in 2 blog posts. This post is the first part explaining basic of the building block… Continue reading
It is not the whole picture
I was joining a development team some many years ago. One of the tasks assigned to be in my main responsibilities was building product deployment module. The thing about deployment related activity is that it is not that fun comparing to coding. One of my colleague even expressed her thankfulness for me taking care the… Continue reading
Declarative Style in Reactive Programming – Take 2
Reactive programming is tricky. I have written about it before here. It is not just learning a library and choose methods to use. It require changing the logic flow to be declarative and that need some time to practice. I have been using reactive programming for almost a year and still find myself creating bugs… Continue reading
Deadlock in Real Case Example
Many years ago ( 2010 ), I have blogged about a time I experienced a deadlock issue in my project. I have revisited the blog again when I was moving content to new hosting. I felt like the post was too long and not focus. I decided to re-write in here to make it more… Continue reading