question to java profesionals
I have this question.
how many lines of debugged code does java profesional with 3-5 years of experience write a day.
what amount of work you do in one day? what is expected from you at work?
you can post any code that you created today.
i am a student at coumputer science and it takes me long time to create a java program or j2ee.
I am starting to think that my speed would not be enough when i find a job.
now i am thinking of changing a profession. tell me what will be expected from me.
Well, the number varies greatly, of course.
If I'm writing fresh code for an algorithm that has been worked out well, I can crank out thousands of lines a day. Well, maybe 1000-2000. :-).
If I'm making changes to a delicate portion of my code, that needs tedious and careful testing, I'm happy if I make 10 carefully-chosen lines of changes in a day.
So it depends on:
* Fresh code or modifying existing code without breaking it?
* Algorithms and mechanisms well understood or not?
* Lots of other factors (how efficient, unintrusive and helpful your IDE is, if you use one; how good your debugging environment is, if you use one; etc. etc.)
In your case, the second point above may be coming into play..
Hi vital,It depends on you. In my work. If I have to implement one model which involvs 20 to 35 files and 5000 lines of code. A fresh algorithum needs time from 1 to 3 days including Unit testing.
Hehe, I cranked out about 40,000 lines last month...
But I triple space everything.
And I had to rewrite everything like ten times...
So it isn't how much, it is how well. I once had a great day where I wrote about 200 lines that I've never had to change. If I could write one good class per day, I think I would be in nirvana.
Andrew
The other thing to realize is that 90% of everything you do will be repetetive. In the vast majority of applications you are simply pushing bytes between the persistent store and the view. So, while it may take you more time initially to accomplish a given task, each successive time you are asked to do something similar usually takes care less effort.
Most of the time spent coding a full system seems to be spent developing the view (properly responding to user input, creating the UI, handling errors gracefully, etc.) and integrating your persistence tier (database, flat file, etc.) with the domain model. The actual number of classes that make your system unique and custom are a relatively small percentage of all the classes you will deploy.
For this reason, many developers eventually create a common class library that they take with them from project to project or job to job. Date manipulation, form handling, database transactions, deployment descriptor parsers, exception handlers, common view templates, etc. can generally be re-used and do not have to be re-developed from scratch.
Eventually and especially in a team environment, the design and testing phases are probably more time consuming and important than the actual coding, which is rapidly becoming a simple commodity. So, don't fret overmuch. You will get faster. You will be able to re-apply what you have done previously. And if someone is simply going to offer someone else a job because they write 100 lines an hour and you only write 80 lines an hour, you don't want to work there anyway.
- Saish
"My karma ran over your dogma." - Anon
Saish at 2007-7-1 17:21:54 >

New code with new algorithm implementation: 200 to 500 lines of debugged code per day. This seems to be fairly consistant metric within all the languages in my skill set C/C++, VB, C#, Java, or SQL.
To give you an idea of how that fits into a project: 20 days of work per month, 200 lines of code, 12 months = 48,000 or 120,000 for 500 lines per day. This is a totally ficticious number, because you have integration testing and revisions you must preform as you deliver parts of your application, unless you have a seperate test unit. The productivity goes down significantly as you start to integrate and test. I am wildly happy to have around 40 lines of code average from me or any menber of my team over a project period (9600) lines of code a year). With a moderate sized project going about 15,000 lines of code, you are looking about 1.5 years for 1 develoer to do the job.
I once coded a moderate sized job in about 10 months (13,000 lines of code) while working for a leading edge consulting firm. They brough thier clients up to look at it and see the productivity of their employees (IBM, Microsoft, Boeing, etc..) and they were wildly impressed.
All you need to do is to estimate the time by the complexity of the problem...
If you want an interesting metric to look at and consider:
(your salary)/(9600 lines of code per year) comes out to around 5 to 10 dollars per line of code.
Think about that application you coded last month and how much is costs: When I consult and I seem to hit a section where a client waffels a lot, where the client is changing his mind constantly, I just start quoting dollars to them and talking like this:
This query is a 4500 dollar query so far. That section of code is 20,000 dollars and the change will bring it to 30,000 dollars etc. It brings them to an understanding of what it means to not do their home work... coding is expensive and changes just make it more so.