What is the usual size of a commercial project?

In another topic (Should I quit programming?) someone said that his project he was working on has over 16000 classes. Is it the average size of a commercial project? And how does it works, I guess the project is split in many sub-projects and people are working on one of the sub-projects. Or do you have to know all the classes? (Hope not)

There are usually public APIs and ‘private’ APIs.

You code against the public API (like a database abstraction layer) which might have hundreds or even thousands of classes. The public API might only have a dozen or so.

Further, I don’t think there is a ‘usual size of a commercial project’, just like there isn’t a usual size of a tree. It depends on the kind of project / tree.

Where I’m working we have a main product which is basically a JSP/Servlet framework. This framework has around 2200 classes. Personally I think this is really bloated and we should extract common things into smaller libraries but its not that easy since everything is linked together so to speak.

Other than that we have loads of minor projects not worth mentioning the size of. They’re usually one man jobs.

// Json

As with most things, you only need to focus everything within the scope(or context) that your working.

[quote]Don’t center on your anxieties, Obi-Wan. Keep your concentration here and now, where it belongs.

  • Qui-Gon Jinn spreaking to Obi-Wan Kenobi
    [/quote]
    If there is too much to focus on - narrow your scope :-*

We humans can only handle few inter-triangulations, so KISS it!

So much for one liners
It shouldn’t matter how many classes there are you should care about how many classes matter, which with good code should be very little. And since we generally write crap code when we start off - it will only get easier. And since when we start, we usually start off with small projects. Over time you will take on bigger projects but also over time you will write better code - it’s more likely going to be easier then it is going to be more difficult.

The problem with big projects is that you work on it more then one person. And that’s a problem because it’s impossible to know if an other person knows what your trying to tell them.

Ahhh yes, that’s my project.

The project is split across 20 different modules. Areas like Batch/Gui/Server/Web etc etc
Our team started off around 35 developers with about another 10 or so “support” staff.

Nowdays it’s more like 20-25 java developers and a 100 supporting staff! :-X

We have a few grads in every now and then and we simply give them one piece of the jigsaw to work on and then after a while another piece. If they stay long enough they soon get to see the bigger picture.