<< Sun Endorse(?)s Apache Harmony, Will Participate | Home | Java Regular Expressions At St. Louis JUG >>

There Is No Such Thing As A "Java Architect"...

...Unless you are talking about the architect who designed the Java platform, like James Gosling, or the other six guys who designed the thing with him way back when.

An architect is an architect whatever the implementation platform. Anyone who claims to be an "Java Architect" is no architect at all.

An architect can specialize in Java based systems, just as an architect can specialize in Windows based systems or Unix based systems. But an architect who knows only Java run the risk of proposing inferior systems.


That's why the pragmatic programmers suggested to learn a new language every year.

But what language do you learn? And to what extent? I'm tired of people saying "Ruby is so OO," and following up with "Everything is an object, even blocks." I'm sorry, when "everything is" something, nothing is. And blocks are not objects no matter what the syntax.

Likewise for all the talks about closures, lambdas, and continuations. These are cool concepts but no OO. Just learn Lisp and be done with it already.


Another reason we learn new things is out of fear: the fear of obsolescence. New things come out every year. They all claim to be the ultimate solution to every problem. But you can't possibly learn all of them or you don't have time to work and live.

The trick is learn the essentials of the art and science of the programming trade, and distinguish the new new thing from the new old thing. The technical press is no help at all for their constant hypes of one thing after another. Big commercial vendors are even worse.

I did not witness this but Dale said yesterday that Cobol was to be the ultimate solution back when it was introduced. The press hyped it just like they are hyping SOA today and (the next big thing) tomorrow. The same thing happened for SQL—the SQL that we all want to wrap, hide, map, and otherwise remove from view today.

I salute the person who took one look at the SOAP spec, said "This will never work," and moved on to other things.


By and large, the problems we want to solve in our daily works are solvable and have been solved many times. Recognizing what the problem is and provide a road map to an efficient solution, both in terms of man-months and in terms of CPU-seconds, is the job of the architect.

If that road map says "Cobol!" so be it.


Truly revolutionary things have the habit of quietly sneak up on you. They are usually done by a teenager or a college kid. They never present themselves initially with a bang.

How do you find them out? I don't know.


Now back to work. Boring, tedious work where error handling cannot be omitted to "limit the length of this article" or "left as an exercise for the reader!"



Re: There Is No Such Thing As A "Java Architect"...

There are no Electrical Engineers or Mechanical Engineers either....
oh wait...

Re: There Is No Such Thing As A "Java Architect"...

We've always had hype, the difference is in velocity and magnitude. Today's hype comes much faster and is more intense. Look how fast the hype built around AJAX for the ultimate example. Ruby is another example. As an example of negative hype, notice how Java suddenly sucks and is everybody's favorite thing to criticize. I think we see this reflected in all forms of media, not just the high-tech blogosphere. We are so overwhelmed by the firehose of information that it's hard to know what to stay current on. Ruby? SOA? AJAX? SOAP?

Re: There Is No Such Thing As A "Java Architect"...

What do you call an architect who have found that for most of his problems, Java platform offers the best solution :) Yes, architecture is language and platform neutral. However in real world some architects may have increased understanding of a particular platform, without compromising their borad-based knowledge and understanding of the rest.

Re: There Is No Such Thing As A "Java Architect"...

There definitely is such a thing as a Java Architect.

Imagine a building architect who draws up great plans without a parallel plan to guide and measure progress during construction. He has to have a firm footing on the various materials avialable, strategies and styles.

So too an software architect must have a firm footing on what basic building blocks are avialable for him to execute plans and how he plans to reconcile missing elements. This essentially mandates a strong expertise in a programming language(s).

RPG observed that it takes almost 10 years for a programmer to master a language. So what do you mean when you expect Architects to be master of many or should I read 'jack of many'.

Remember you dont have to be a java architect but that does not mean that there is no such thing as a Java Architect.

Re: There Is No Such Thing As A "Java Architect"...

An Architect is not the one who creates 'EARTH', but uses 'EARTH' (mud, cement, bricks) to design buildings, keep them in mind, standing on the 'EARTH'.

JAVA is the 'EARTH' and people who use it as a base and it's API as material, and design applications are called as "Java Architects". Man you need to learn some definitions. Try using "define:architects" at http://www.google.com, might give you some insight on it.

Re: There Is No Such Thing As A "Java Architect"...

If all you have is a hammer ...

Re: There Is No Such Thing As A "Java Architect"...

Java Architect ?= Manager Preference

Add a comment Send a TrackBack