Cut it out and run

By on Mar 10, 2013 in eng | 3 comments

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 of the problem. Sometimes the problem is new or you don’t have enough knowledge in the tool or system that you are working on. This may lead to the dead end that you have run out of all the ideas. I have one simple technique I often use when I cannot think of anything else I can do.

Spring WebApplicationContextUtils

By on Feb 17, 2013 in eng | 3 comments

Last week I tried to find a way to access a spring bean from ServletContextListener. There are some interesting details that I want to log in here for later reference.

Agile Tour Bangkok 2012

By on Dec 16, 2012 in eng | 2 comments

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.

Simple little tools in JDK

By on Oct 28, 2012 in eng |

Software development needs more than just coding. There are a lot of things to do to move software functionality from running on developers’ laptop to going live on production. Developers need more skills other than coding to make their life less miserable through the whole software life cycle. One of the critical skills is about troubleshooting. This post I will talk about some little tool in JDK that has been helping me saving a lot of problem investigation time.

Wrong level of abstraction

By on Oct 23, 2012 in eng |

I was refactoring a module in my project and found an interesting case that implementation detail has been exposed through interface. The code before refactoring was actually did its job fine but it just looked strange in the view of abstraction design.

NodeList iteration performance problem

By on Oct 21, 2012 in eng |

I am having a performance problem with a module of my project. The code actually does something really easy. It just iterates over a NodeList and overwrites an attribute of each element. At first, I thought this slowness was related to the size of my XML document. I found out later that it has more to do with the underlying NodeList implementation.