Wednesday, November 21, 2007

Programming

Life is like programming, how's that?

First, you write your program with a particular language, that's your family. You start developing everything from scratch, you are building your life.

As you continue to write more and more code, your program gets larger, more complex, and depends on your programming experience, your understanding in how things work in the platform you are programming, that leads to the quality of your program. Just like your life, as you grow older, the knowledge, the wealth, and everything you hold, both physically and mentally, dictates the quality of your life.

Every now and then, we created bug in our program. If we fixed it earlier, the damage is minor. Some bugs are not discovered immediately, it stays there for a long time, but anyhow, it will haunt you back, when you are least expected. Just like so many unexpected things happen around in our life. Some of the time, the bug is so nasty, it takes us a while to fix it, where in life, sometimes we are so stubborn and doesn't realize and accept our mistakes, until one day, we were knocked on our head, and there we starting to change.

Of course, we can't write everything by ourselves, because there are lots of libraries, frameworks, plugins, that we could use, we don't reinvent the wheel. Just like our friends, we need their help, we count on them, we live with them. But nothing is perfect, all these tools are bound to have bugs, it's either we get a newer bug fixed version or we have to deal with it ourselves. It's either your friends give in or you compromise.

During the development of your program, you might discover the limitations of the programming language you are using, or even bugs. We often have to create something of our own to overcome these limitations, deal with the bugs, or even support the programming language by fixing these bugs, giving feedbacks, suggestions, etc. Because your program dependent on it, it's the root of your program. And family is something you couldn't abandon, like it or not, you have to support it, it's who you are, and it makes what you are. Some people sees it as a burden, but some people sees it as treasure.

It looks like you have all the control over your program, but then again, there's no perfect program.