Fog Creek Software
Discussion Board

Java programmers over 35?

I had an interesting conversation yesterday.

My boss was looking over my Java stuff and made the comment that he did not like the deep directories structures.  I said that it was the way Java packages are done (com/company/packagename/etc).  He then asked if I have talked to another Java programmer and I said no (we're a small company and do Windows/C).

His reply?  He won't believe that the directories are done correctly unless I go and talk to an enterprise Java programmer over 35.

My reply?  When I turn 35, I'll tell him that I'm correct.  Then he laughed.

My boss's pretty UNIX old school and I guess he would be suspicious of stuff that I do.

Tuesday, May 13, 2003

This falls under the danger! danger! danger! category. 

I don't know how old or experienced you are, but you may want to take the request seriously.  Never ignore a comment like this as being funny.  He may have the perception (true or not) that you need to have your work reviewed. 

It will not kill you to talk to someone else and if your boss was being "too subtle" you will at least show you were paying attention. 

BTW- I think EVERYONE needs to have their work reviewed by someone, but that's another thread.

Mike Gamerland
Tuesday, May 13, 2003

Except that his boss *was* wrong - that is how packages are done in Java.

If his boss really wanted a code review for some reason, he should have directly asked for one.

Chris Tavares
Tuesday, May 13, 2003

I'm a mere Java "hack".  But I'm 41, and I know by the description that you've got your directories organized properly.  I'm also pretty old-school.

Nat Ersoz
Tuesday, May 13, 2003

I was not concerned with whether his boss was correct.  The point is he asked him to have a review done.  Maybe it was off-hand.  Maybe it was small-talk.  Maybe he was making a point. 

Unfortunately, he won't know if it was the last one, until it is too late.  Better to be safe than sorry.  What does it hurt?  Then when he runs into his boss in the hallway...
"Hey Boss, I did talk with "Bob" about that code and we are good.  Thanks."

--- Positive feedback all around...

Mike Gamerland
Tuesday, May 13, 2003

The company that you work for must be doing pretty well, if your boss only has to worry about possibly deep folder structures... :-)

Frederik Slijkerman
Tuesday, May 13, 2003

Mike, excellent point with the review stuff.  For our regular development, the C style and organization is well understood and has enough precedent to establish when something is following the style or when something is off.  And oh yes, I've had my stuff reviewed before.

Java, on the other hand, is not something that we do everyday at our company.  Otherwise, my boss would point me to another programmer for a review.  And usually he would do exactly that.

Tuesday, May 13, 2003


Failing an experience programmer over 35, the printed page tends to carry good authority.

If he's still worried about all those directories, then just tell him that you'll use a jar file.

Try to avoid the cocky kid syndrome.

Ged Byrne
Tuesday, May 13, 2003

Yes you are right, yes you should have your code reviewed

Daniel Shchyokin
Tuesday, May 13, 2003

You could also reference Thinking in Java.  Bruce Eckel looks > 35 and he's got a section on it in his book.

I think the free copy is avaliable at or

Tuesday, May 13, 2003

I think your boss did a reasonable thing, maybe not diplomatically. He saw something that didn't look right, so he asked you to check it.  Get a book or outside authority to show that you're right in this particular case.

In future it stuff like this comes up, you get the chance to educate your boss (if nothing is wrong), or to perhaps spot something that is wrong (he made an educated guess about something looking suspicious, and sometimes he just might spot a real problem in future)

S Tanna
Tuesday, May 13, 2003

Code and peer reviews: *Good*.

Insinuating that someone doesn't know what they are doing for the simple fact that they are under 35: *Bad*.

I don't think the boss was trying to suggest the need for a code review. It seemed that he was suggesting the poster didn't know what he was doing because he was under 35. And that's just stupid.

FWIW, I'm 33 so I guess I'm almost ancient enough to have a little bit of programming knowledge, at least according to his boss's requirements.

Mark Hoffman
Tuesday, May 13, 2003

Wasn't there, am under 35 myself (just), and I agree he totally blew it when he introduced age into the discussion, but I still don't see anything wrong with the general principle of raising an alert about something looking suspicious.

I prefer, say C++, and am weak on say Java or VB, but doesn't mean I wouldn't be able to spot bugs or flaws or stuff-to-raise-an-eyebrow in other people's Java or VB code.

S Tanna
Tuesday, May 13, 2003

I'm (just) over 35, and while I'm not a Java programmer I have no problems with deep directory structures and implicitly mistrust people who do simply because they're deep. We had someone at Camel that wanted to undo two weeks of work on the requirements because she felt they were nested too deeply and difficult to understand.

Also - "Old school Unix"? Is Unix *that* different from Linux? Because Linux has some of the deepest directory trees I've ever seen...


Tuesday, May 13, 2003

Then again, I believe Java's specification for package structure was yet another thing they got wrong, and that they are too deep. So I have not followed that specification.

The Java specification would have made sense if Java was a single platform, and all packages had to co-exist in a single space. However instead it was a giant free-for-all, and applications install into their own space.

I would tell the original poster to forget the spec and use a structure that's more suited to our needs.

Wednesday, May 14, 2003

Since I'm a 35-year old Java programmer, I need to put in my two cents.

Personally, I don't care for the deep directory structures in Java. However, since that's the standard, and many Java tools assume that you do so, it's worth using deep directories.

Regarding your boss's comment, it's fine for a coworker to ask why you're doing something in a particular way. Then you can either reconsider what you're doing or provide a good reason. A discussion between a Java person a C++ person can be mutually beneficial and educational.

Wednesday, May 14, 2003

I agreee about the deep directory structure being a mistake.

I rather like the way eclipse organises packages, with a single folder taking the full package name.  eg.  c:\org.eclipse.core\main.class rather than c:\org\eclipse\core\main.class.

When your typing its just a different character, but it saves so much time in windows explorer.

Ged Byrne
Wednesday, May 14, 2003

[[ When your typing its just a different character, but it saves so much time in windows explorer ]]

That's the reason why I'm not using windows explorer  :) Total Commander has a Ctrl+D shortcut for the set of predefined directories so that jumping from place to place on disk takes only half a second ..

Evgeny Goldin
Wednesday, May 14, 2003

I am merely 28, so consider this a newbie's advice.

Move all subdirectories from com/company/project down to the "root" and create links to them there instead using either ln (on Unix systems) or junction (on NT systems). (You can download the utility from: ).

That way, you have effectively cut two or three levels of the directory depth, while still able to satisfy the compiler.

Roland Kaufmann
Wednesday, May 14, 2003

I'm over 35, and yes of course your Java directories are correct.
I thought there was some practical reason for it, not just a convention.

The Real PC
Wednesday, May 14, 2003

Maybe the "over 35" bit was just  a way of saying "not just out of college". With Java now being a staple on the  curiculum of most of the CS courses, the amount of bad/immature Java coders is staggering.

Just me (Sir to you)
Wednesday, May 14, 2003

Just to add a +1 that it's right. However, I far prefer systems that detach class names from file names, so you don't have artificial on-disk conventions just because of your namespace.

Brad Wilson (
Wednesday, May 14, 2003

*  Recent Topics

*  Fog Creek Home