Okay i know i am intelligent, i use intelligence to get around problems in a nifty way. I hate cook book recipes. This also implies that i am not more intelligent myself. That is if i use my max intelligence to screw something then there is no possible way I myself can correct it (without heavy doses of caffiene :). Cook book comes to the rescue, u do something in the most boring way and if something screws up, u can almost always rectify the errors.
The above rant is with respect to software design/analysis/specs blah...
So if you follow a train of thought, your process almost always works and the chances of errors are minimized. I had written an entry early on about me being a monkey coder. I almost never read the specs (ok i read it ... but in the end made something more wonderful... but out of spec). The problem is I always rely on intutive stuff which is WRONG. I can design a nifty little algorithm and make great applications which I have done in the past, just because I have a brain... But thats the wrong thing to do for an engineer. An engineer almost never uses intution and always does things empirically. I took the SMA(software modelling and Analysis) course to just help me with that. And mind you it has helped me a great deal in that.
It is surely having catastrophic effect on my ego though. Earlier in class in bangalore "no one was above me" ...now "no one's below me". My design sucks, my specification are crappy, and the fun part is I always get mature enough to understand about a subtle part in a concept document or a software after it has been evaluated. So thats the only thing that is keeping me going in that class. I seem to be the only fresher there and most of my colleagues have loads of experience in Software Engg. People from Infosys like company are doing great cuz they are good at cook book methods.
As i mentioned before I was working as a system administrator for the psychology dept at my college. I have started a teeny weeny bit of research on Computational Neuroscience, although am not going great in it cuz it requires a lot of DSP based stuff but am catching on. But ya am awesome on the software they work on and that keeps me in business. I am working under Dr. Marc Howard, he told me a scientist just explores a subject and an engineer makes it useful for the mankind. I am starting to feel that I am more of a scientist than an engineer. I cannot work on the same thing at a stretch.... I worked on java... did a pretty good job at it but kindda got bored, then i shifted to inserting DProbes on some application on solaris... did well but the thirst to do something new was always there. I though cracking stuffs will be kewl, but ah so boring once u know it.
So here is my profile, give me any strange technology and I'll make the first great application that ever existed on it (I wrote small applications on matlab and vhdl without even seeing the docs, just once... i mean how difficult is it to write something which is srtuctured)... and dont bother to gimme the same thing again cuz i will do a really crummy job later on. I would love code in something which give crazy errors and has a lot of pointers hanging on, but if you gimme a language that has error handling and all those "oh so coool" features, i'll probably get bored.
Specs are great, without them there is no possible way to build an application. The applications am talking about needs atleast 400 programmers coding relentlessly for a period of 2 years... a minor design fault can have terrible consequences. Am a budding system analyst so I wont like to think what would happen if all 400 of them think intutively...CHAOS...Godamn we need 400 machines to fit everythink into its place. I HEERBY RESOLVE TO DESIGN BEFORE I CODE...