Heartbeat Thread in Kafka Consumer

Kafka Consumer 0.10.1 has introduced a background thread for sending heartbeat instead of relying on user application thread to keep polling regularly like in the earlier versions. The normal pattern of Kafka consumer looks like the code below Before 0.10.1, heart beat is sent as part of polling for new message. This is by-design mechanism to… Continue reading

Instance Confinement

Ialmost forgot that I have this story in my to-be-blogged list. I was assigned to perform performance tuning on a system in my previous project. I found a concurrency bottleneck and rearrange the synchronization pattern to gain noticeably throughput. I later had a chance to read about the Instance Confinement technique which could be applied… Continue reading

Cut it out and run

One of the big gaps between seasoned developers and the less experienced ones is the troubleshooting skill. Unlike any other knowledge, this kind of skill is difficult to teach and learn. Developers invest tons of hours to develop his or her own techniques in gathering information and seeing through details to find the root cause… Continue reading

Agile Tour Bangkok 2012

The Agile Tour Bangkok 2012 initiated by the Agile66 community could be count as the biggest public agile event (that I know of) ever held in Thailand. It is quite an interesting time of agile movement here. Most of the big companies still stick to the traditional way of building software but the agile practices are… Continue reading

That is twelve months feedback loop

I was reading Linkedin Questions weeks ago when I found a question asking about how to do annual performance review for agile team. I read through some answers and found a really short and interesting one. It said “annual review? That’s twelve months feedback loop”. Imagine a decent competent programmer; Alex, in a performance review… Continue reading

Skill To Duck And Weave

I was quite nervous yesterday. It was the last day that code could be committed for this sprint and I just found out there was a several defects in my code. I was able to solve them all in the afternoon and the struggling of finding workarounds got me thinking about task estimation from developers’… Continue reading