sudip wrote:
<...>
A good example is our HMG.

I am not sure why
<...>
Roberto created this excellent software tool. May be he is working like a genius painter, who is creating his/her master piece with the joy of creation. Or may be he wants to share his concept with others who are "willing" to take it.
The short answer is: "Because I like it"
The long answer, is a little more complicated...
I guess that I have some innate obsession for build things.
Being a child, I've was obsessed with various Lego like construction kits. I've spent years constructing (and deconstructing) hundreds of things.
Later I've started constructing buildings with styrofoam and carton. Then added battery powered self-made lightning systems...
Later I've changed to cars and made various car bodies with tin, specially designed for car race games (electric-battery powered cars)...
At about 12 years old I've changed again, now for electronics...
I had my own ham radio station and I've began to help my father to build antennas...
By that time, I had a lot of little electronics projects too, mostly transmitters...
Later (at 20) I've received my first computer and... well... I guess that you can imagine how the story continues...
Now I'm a freelancer. I do web pages, desktop applications, etc.
so, I use HMG for my own jobs, then enhancing it, serves to two purposes: work and
joy
Programing for me is like to play with a dumb robot
The game consist of teach the robot about how to do a complex task.
When the robot do such task pretending 'smartness' and do it right, the game is over...
so... you must go to the next level...
The game (of course) has infinite levels
