Show your support for Zikula! Sign up at Github account and watch the Core project!
Open Source blessings and curses
One of the huge advantages of Open Source is that rather than re-design the egg every time, we can take advantage of code that's already been written and use it in our own project. In theory we can just drop it in and forget about it.
So OSS is really great, being able to re-used another's code, or in general improve on existing ideas. That is the foundation of many OSS projects. But maybe things are not quite as simple as that. Well, they really aren't. To be honest, it rarely works like that.
Code designed for one context may not fit another, and more often than not, it takes more time to re-work the original code than to implement it from scratch. I personally have also found copying ideas can be more trouble than it's worth because it can pollute one's own creativity. It's far better to really understand a problem and plan a solution. With that approach, code design is a new experience. Looking at similar examples can help one understand the issues at hand, but before designing our own approach, we need to really forget it all and start fresh.
This same principal comes into play with one's own code. Sometimes we find our original design just isn't working, and maybe we forgot something important. We can spent hours hacking to make it work, but what we as humans often forget is that starting again with the experience you just learned can be faster and more efficient. We are curious creatures, we get attached to our ideas and the products of our effort, even if that effort is leading no-where. Sometimes we really need to take a step back.
Have you ever considered the one thing money really can't buy? They say you can't buy happiness, but if you look closely that might just be some Holywood concept - certainly life below the poverty line makes life very difficult. Money certainly might not buy happiness, but it's sure a lot easier when you have enough.
But there really is one thing money can't buy you, well, it can't get it back... and that is time. So whatever we do in life we should always be aware of the time we spend wasting that we can't get back. If we went down the wrong path, better to backtrack now, than keep on going stubbornly because we already invested time we don't want to waste. In the end, it's less suffering.
So next time you realise your code just isn't working, stop for a moment and ask yourself: "should I stop this and start again"?
Share This | Print