Blindly go where all men has gone before

I ran into this post today.

It mainly talks about the extremes a great deal of developers “ping-pong” between during their life times. Catching the buzz words as they fly and instead of reviewing them and taking a few pointers that can enhance their current development procedure and cycle they just completely and utterly soak themselvs inside of it and forget anything else that existed before it.

I had the dubious luxury of assisting a project that it was simply frightening to send a few of the developers there to any software related conference (even a one day review). They would immediately get enlightened by whatever it is they heard in that conference and start changing every piece of code or procedure they know to accomodate the new “Torah” they were given in their imaginary “Mt. Sinai”.

For example, I worked with one developer that after returning from a design patterns course started to change every bit of code to accomodate some design pattern from the book. Sometimes she used the wrong design pattern just to use a design pattern no matter what.

The funny thing is, that most of these people are not that absolutist in their personal life, so what makes them to go to such extremes in their developer life?

I think that coding style, architecture style, understanding requirements and everything else related to the software industry is mostly gained by experience and experimentation.
Learn all you can and integrate with what you know and already have. That is the right path.

I personally think that before starting any big project, one must understand the requirements. After doing so it is usually best to evaluate various technologies and see if they can be used to accomodate the needs of the project.

Most infrastrucutres are tuned in the 80/20 way. They are tuned for 80% of the types of applications but are less tuned for 20% of the rest of the applications.
That is why, if your project has some special needs there is a true need in writing sample code that tests some issues that might be problematic in the project.

These are just my 2 cents on the matter. Read the link I gave. Its REALLY REALLY funny and educational.