I’ve faced a number of challenges when it comes to software development since I started school at Seneca 3 years ago, and started work at CDOT one year ago. Syntax, APIs, style, communication, research, to name a few, all had one thing in common. They all had clear and final answers, I just had to find them. I am sure one could make the argument that they only had clear answers AFTER they were solved, but, while solving them, I still knew there was an ultimate, logical, correct destination. Once found, the answer worked for almost every case after that.
The challenge I find myself facing now, is that of my own opinion. No one opinion can be used for every problem, for every person.
I spend a lot of time, going through an iteration, or a solution to a problem, that I may not agree with, but I do anyway simply because I lack an opinion. I’m shown something, I don’t know what I think of it, so I do it, and figure I can make a better opinion of it after it’s done, which I never get a chance to, Because in order to find my opinion I will have to solve every problem once, for every solution, then, and only then, can I say what I truly think. A good example is I not-so-long-ago helped port browser mouse events in processing.js, to safari touch events on the iP(od/ad/hone). I lost the argument (I don’t think anyone was on my side) do I still think I was right? No. Do I think the solution that was used was right? No. There probably isn’t a right solution, just opinions.
The proposed solution is:
Make an opinion, then throw it away, and let logic determine what’s best. Logic must have, or is real proof, so I would need to “solve every problem once, for every solution”, only difference is, I’m able to throw it away for the next problem, because I know it won’t be viable for every problem.
My solution doesn’t really solve anything regarding opinions, I just changed my opinion of the problem.
There is an opinion for every problem, for every person. That is a lot of opinions… let’s move on.