Showing posts with label ivory tower architect. Show all posts
Showing posts with label ivory tower architect. Show all posts

Tuesday, December 30, 2014

The Last Alive Architect!

Have you ever met an Software Architect (or even worked with such a person) who thinks, he/she is the last alive Software Architect on the planet?
  • If your answer is Yes, then you will easily relate to this post :)
  • If its No, then I would have to say its definitely worth an experience - After all, life is not only about happiness :P
This rare species is facing extinction, but some of them have managed to survive.  Because they are so rare, finding them is almost like finding a needle in a hay stack!

Since they are so rare, how do you know when you have found one such person?

Here are some of the symptoms that people from this species exhibit:
  • They stopped reading about the latest in software development since 1981
  • They think all open source frameworks are crappy
  • They think the code written by them is the best possible in the world.
    • But in reality their code is a lot crappier than anything that you have seen before.
  • They would build everything from scratch.  Its their habit to reinvent the wheel.
    • For e.g. building a buggy ORM all by themselves (and of course being proud of it :P)
  • They think all code they write is bug free.  Since all their code is bug free, Unit Testing is such a big waste of time.
  • They can "talk static methods, they can walk static methods and the can laugh static methods, because static methods are the way to go!"
    • If you don't know the context around the dialog do see this clip
  • If given an opportunity, they would like to build a new programming language which runs on an Operating System built all by themselves.
As you can see, its definitely worth an experience meeting a person from this species.  My question to my readers is, whether you have ever met someone like this before?  If yes, do share any other symptoms that people of this species exhibit!

As a closing remark, here is an important disclaimer:

Disclaimer: The views expressed in this post are strictly personal and any resemblance to any real person is purely incidental and not intentional.

Monday, January 10, 2011

The Ivory Tower Architect

In one of my recent project, client was afraid of doing some architectural changes.  The changes proposed were necessary and were for the betterment of the application.  We were proposing the use of some of the industry standard libraries, frameworks and tools.  Use of these new frameworks would make the code more maintainable.

In spite of the benefits of the proposed architectural changes, client was not really keen on doing those changes.

Why?

This question kept bothering me for sometime.  Digging a little deeper into the past, found that client had a bad experience with one of the architects.  They had hired an architect, worked with him for a year, but nothing fruitful came out of this engagement.  Sounds familiar?

Time and again I have faced this sort of a situation.  One of my previous post was on similar lines.  Be a Developer not an architect!

Googling a little I found a commonly used term for such architects.  Its called Ivory Tower Architect


What are the symptoms of Ivory Tower Architects:

Notice the usage of the word "symptoms".

According to wikitonary The meaning of "symptom" is 
"Anything that indicates, or is characteristic of, the presence of something else, especially of something undesirable."
Based on the above definition, you must have understood that Ivory Tower Architect is almost like a decease.  If it gets hold of someone, it does not leave them very easily.

Back to the original question.  The symptoms of Ivory Tower Architects:

  • Loves attending meetings all the time.  He thinks, their job is to attend meetings.  If there is nothing to discuss, He will invent new reasons to organize a meeting.  Usually these meetings are very long, in fact He believes in "longer the better"
  • Loves talking down to the developers.  He thinks developers are some inferior species.
  • Loves to show off his mastery of software design.  When I say, "the mastery of software design", it means mastery in drawing pretty pictures.  Whether the design actually works in practice, is not relevant to him (Usually, the design won't work)
  • Loves to churn out documents.  This person is like the printing press, continuously creates/updates documents.  He thinks, his productivity is measured by number of mail, xls and doc files created/updated in a day.  Not to mentioned the number of Minutes of Meetings he (or someone on his behalf) publishes every day.
  • Forces the development team to implement the architecture he has designed
  • Pretends that he is listening to your suggestions, but actually he is thinking about ways to reject your suggestions.  No matter how relevant your suggestion is, he will never accept it.  To do so undermines his very existence
  • He will never ever work directly on the code himself.  He thinks that coding should only be done by mortal developers!
  • Does not believe in the KISS (Keep It Simple, Stupid!) principle.
If you know someone who has these symptoms, please do not forget to send them a get well soon card (this is the best you can do)!  In case you can gather enough courage, tell them to stop goofing around and start doing real work!
Have some Fun!