How many lines-of-code does a developer write (life time)?
-
Reacher said nothing.
Reacher said nothing. He could tell from the grease stain on the safety-catch that the Glock XP3-15 had been fired three times, yet he had only heard two shots. The smell from the muzzle indicated that the first shot had been fired 42 minutes and 17 seconds prior to the first. Given that the truck had been heading east at an average of 45 MPH, he knew for sure that this was the weapon that had killed Jackson in the warehouse in Topeka, the gun being held at an angle of about 15.6 degrees so that the shell would have severed Jackson's cerebral cortex instantly. The FBI forensic team duly resigned as they felt so crushingly unnecessary ... (I actually really liked the couple of Reacher books I read, but how many do we actually need?)
Whenever you find yourself on the side of the majority, it is time to pause and reflect. - Mark Twain
-
My boss says a good programmer is the one who uses the least lines of code... so I have made a personal rule of never using line breaks. So that means, one line per application. And I am sure we all know that an application is never really complete. (Customer never happy, customer want more and more.) So that means, in 10 years, I am still yet to finish my first line of code... hmmm... how many decimal places would you like the answer to?
The goal of every APL programmer is to write the program on a single line. With APL, it is somewhat more realistic than in most other languages, like "The game of life" (from the Wikipedia article on APL): life←{↑1 ⍵∨.∧3 4=+/,¯1 0 1∘.⊖¯1 0 1∘.⌽⊂⍵} Thirty years ago, I did a little APL programming - but please don't ask me to explain this program. Give me at least three months to decipher it!
-
I know, i know,... "define, how to count: comments yes/no? blank lines yes/no? what counts as line?" Just a rough estimate, plain counting the lines of text in a source file, inlucing comments, blanks, multi-line-statements and all... Did you ever think about your life-time lines output? Can you roughly count back, from the beginning? Are you over 1 million? 10 million? how many per year? I am asking this, because we have a funny discussion running here in the office about the size of the first Wolfenstein 3D, MS-DOS and Windows 3.11 --- their source lines and the sizes of todays apps and OS'es, as everybody can check out Android source code if he likes to and lots of software is open nowadays.
|| You know nothing, Jon Snow. || My Android Label (mbar Software) || My Android Apps in Play Store
I'm finding that as the years go by, I'm writing less and less new code. That is to say, I encounter fewer situations that I haven't already dealt with. Being lazy, this leads to either copy/pasta and probably some customization, or better the creation of a reusable utility function. Also, the IDEs, particularly intellisense are so much better these days than when I started...this code was generated by a tool. :laugh: That said, a rough estimate would be around 1.8M in 20 years, around 90K/year average, but as stated, the majority would have been written in the first half of that time frame.
"Go forth into the source" - Neal Morse
-
My boss says a good programmer is the one who uses the least lines of code... so I have made a personal rule of never using line breaks. So that means, one line per application. And I am sure we all know that an application is never really complete. (Customer never happy, customer want more and more.) So that means, in 10 years, I am still yet to finish my first line of code... hmmm... how many decimal places would you like the answer to?
-
I know, i know,... "define, how to count: comments yes/no? blank lines yes/no? what counts as line?" Just a rough estimate, plain counting the lines of text in a source file, inlucing comments, blanks, multi-line-statements and all... Did you ever think about your life-time lines output? Can you roughly count back, from the beginning? Are you over 1 million? 10 million? how many per year? I am asking this, because we have a funny discussion running here in the office about the size of the first Wolfenstein 3D, MS-DOS and Windows 3.11 --- their source lines and the sizes of todays apps and OS'es, as everybody can check out Android source code if he likes to and lots of software is open nowadays.
|| You know nothing, Jon Snow. || My Android Label (mbar Software) || My Android Apps in Play Store
When the VAX supermini was every programmer's dream, DEC published statistics showing that the average production volume for those developers writing the microcode for the 780 (the firs one in the VAX series) was 250 (micro)instructions a year. Everybody knows that you do not leave microcode writing to the novices - those programmers were among the very best that DEC had. Yet it took them, on the average, a full day's work to figure out a single instruction. Since the 780 was the first crop, I guess lots of the effort went into competence building, learning the tools etc. Maybe it even included some tool development. I don't know how DEC did the counting, only that the total number of microcode instructions produced divided by the number of microcode programmers returned about 250 instructions/year per programmer.
-
this
-
I know, i know,... "define, how to count: comments yes/no? blank lines yes/no? what counts as line?" Just a rough estimate, plain counting the lines of text in a source file, inlucing comments, blanks, multi-line-statements and all... Did you ever think about your life-time lines output? Can you roughly count back, from the beginning? Are you over 1 million? 10 million? how many per year? I am asking this, because we have a funny discussion running here in the office about the size of the first Wolfenstein 3D, MS-DOS and Windows 3.11 --- their source lines and the sizes of todays apps and OS'es, as everybody can check out Android source code if he likes to and lots of software is open nowadays.
|| You know nothing, Jon Snow. || My Android Label (mbar Software) || My Android Apps in Play Store
Approximately 1,243,867, but only 12 without bugs.
Technician 1. A person that fixes stuff you can't. 2. One who does precision guesswork based on unreliable data provided by those of questionable knowledge. JaxCoder.com
-
I know, i know,... "define, how to count: comments yes/no? blank lines yes/no? what counts as line?" Just a rough estimate, plain counting the lines of text in a source file, inlucing comments, blanks, multi-line-statements and all... Did you ever think about your life-time lines output? Can you roughly count back, from the beginning? Are you over 1 million? 10 million? how many per year? I am asking this, because we have a funny discussion running here in the office about the size of the first Wolfenstein 3D, MS-DOS and Windows 3.11 --- their source lines and the sizes of todays apps and OS'es, as everybody can check out Android source code if he likes to and lots of software is open nowadays.
|| You know nothing, Jon Snow. || My Android Label (mbar Software) || My Android Apps in Play Store
-
Are we talking "lines of code" or "original lines of code"? Because I'm pretty sure most of the modern stuff is just copy'n'patse from SO, QA, the back of a cereal packet ...
Sent from my Amstrad PC 1640 Never throw anything away, Griff Bad command or file name. Bad, bad command! Sit! Stay! Staaaay... AntiTwitter: @DalekDave is now a follower!
Now there's a feat, cut and pasting from a cereal packet. I understand the quality may reflect that as a source but getting the cardboard into into the computer via the screen would be a real trick.
Never underestimate the power of human stupidity - RAH I'm old. I know stuff - JSOP
-
Now there's a feat, cut and pasting from a cereal packet. I understand the quality may reflect that as a source but getting the cardboard into into the computer via the screen would be a real trick.
Never underestimate the power of human stupidity - RAH I'm old. I know stuff - JSOP
Nah, all you have to do is glue it to the scroll bar so it moves up and down with the rest of the code. Pritt Stick will do it if you smear it on the pixels carefully and use a big enough monitor. Boeing use this all the time for their flight control software.
Sent from my Amstrad PC 1640 Never throw anything away, Griff Bad command or file name. Bad, bad command! Sit! Stay! Staaaay... AntiTwitter: @DalekDave is now a follower!
-
I know, i know,... "define, how to count: comments yes/no? blank lines yes/no? what counts as line?" Just a rough estimate, plain counting the lines of text in a source file, inlucing comments, blanks, multi-line-statements and all... Did you ever think about your life-time lines output? Can you roughly count back, from the beginning? Are you over 1 million? 10 million? how many per year? I am asking this, because we have a funny discussion running here in the office about the size of the first Wolfenstein 3D, MS-DOS and Windows 3.11 --- their source lines and the sizes of todays apps and OS'es, as everybody can check out Android source code if he likes to and lots of software is open nowadays.
|| You know nothing, Jon Snow. || My Android Label (mbar Software) || My Android Apps in Play Store
Wouldn't it be more interesting how many keystrokes you typed? if (i==1) vs var result = MyWonderfullData.Where(x => x.FullNameWithoutSpaces).Select().OrderBy().Etc().Etc() makes quite a difference :)
-
I know, i know,... "define, how to count: comments yes/no? blank lines yes/no? what counts as line?" Just a rough estimate, plain counting the lines of text in a source file, inlucing comments, blanks, multi-line-statements and all... Did you ever think about your life-time lines output? Can you roughly count back, from the beginning? Are you over 1 million? 10 million? how many per year? I am asking this, because we have a funny discussion running here in the office about the size of the first Wolfenstein 3D, MS-DOS and Windows 3.11 --- their source lines and the sizes of todays apps and OS'es, as everybody can check out Android source code if he likes to and lots of software is open nowadays.
|| You know nothing, Jon Snow. || My Android Label (mbar Software) || My Android Apps in Play Store
My whole career was spent programming. My first full-time job after university was in 1972, aged 21. I retired in 2017, aged 66. So I worked for around 45 years. I used to count lines of code at various points and my estimate was that I created around 30,000 lines of debugged production code per year. In the early days it was assembly code. Later it was Pascal, C, C++, Java, VB, C#, Objective C, etc. I think the line count remained the same. I was just more productive in the more recent technologies. So whereas my 30000 lines of assembler code for a PDP11 might have occupied 64KB and was the only code running in the machine (no operating system), my final applications occupied tens or hundreds of megabytes, especially with all of the libraries they brought in. So if I did 30,000 LOC per year for 45 years I must have produced well over one million LOC in my career. And thinking back on the last 2 decades I would say that at least 300,000 of those lines are still in production: 1 desktop app, several Android apps, 1 IOS app and a good proportion of a SAAS webserver-based app. I do not think I ever wrote 10000 lines in a day, even on my most productive day. I guess I often did 1000 or more, especially when it involves a lot of copy/paste/edit. But that was balanced by other days where the emphasis was on meetings, planning, testing, debugging etc. I find it hard to believe that anyone personally (i.e without machine aid) created 10 million or more LOC in a career. E.g. 45 years of 40 hour weeks and ignoring holidays is only 336 million seconds so 10 million LOC would mean creating one line every 33.6 seconds.
-
I know, i know,... "define, how to count: comments yes/no? blank lines yes/no? what counts as line?" Just a rough estimate, plain counting the lines of text in a source file, inlucing comments, blanks, multi-line-statements and all... Did you ever think about your life-time lines output? Can you roughly count back, from the beginning? Are you over 1 million? 10 million? how many per year? I am asking this, because we have a funny discussion running here in the office about the size of the first Wolfenstein 3D, MS-DOS and Windows 3.11 --- their source lines and the sizes of todays apps and OS'es, as everybody can check out Android source code if he likes to and lots of software is open nowadays.
|| You know nothing, Jon Snow. || My Android Label (mbar Software) || My Android Apps in Play Store
All of these different methods are simply a volume metric and are roughly correlated. But, consider that for a blank link you have to hit the enter key. For a comment, you actually have to type it. For code you also have to type it. For both code and comments you have to think about it and since the comments are about the code, that is relevant. Documentation outside of code also counts in the same way, but probably stripping off the formatting is reasonable. So, simply take the size in bytes of all of the source files. Perhaps it would be worth while to compress each one and then total the size. That would tend to reduce the effect of spaces / tabs and repeated variable names and the length of variable names. Compressing everything together would result in too much reduction in size due to similarities across programs that don't really reflect much. I have found that, in practice, a simple volume metric is a very good predictor of performance and and time required to complete a project.
-
I know, i know,... "define, how to count: comments yes/no? blank lines yes/no? what counts as line?" Just a rough estimate, plain counting the lines of text in a source file, inlucing comments, blanks, multi-line-statements and all... Did you ever think about your life-time lines output? Can you roughly count back, from the beginning? Are you over 1 million? 10 million? how many per year? I am asking this, because we have a funny discussion running here in the office about the size of the first Wolfenstein 3D, MS-DOS and Windows 3.11 --- their source lines and the sizes of todays apps and OS'es, as everybody can check out Android source code if he likes to and lots of software is open nowadays.
|| You know nothing, Jon Snow. || My Android Label (mbar Software) || My Android Apps in Play Store
A parallel: Technical writers produce 1 page per working day. At least when I was working with documentation, that was commonly accepted, both by writers themselves and management. It matched our writing department quite well. 30+ years ago, documentation was 98% text, produced with rather primitive tools. Later, modern tools made it much easier to add graphics and other illustraion, typographical effetcts etc. which made the documentation look more "professional" quality. But in spite of more automated and fancy tools, production as measured in pages per day didn't increase: Making a figure to illustrate a point takes as much time as describing it in text. I haven't been in documentation for years, and nowadays, I guess most software documentation is written by the programmers themselves (so it makes no sense to the users...), and counting number of pages for online documentation is not as easy. I guess that you will see much of the same as programming languages evolve: The line count produced by an assembly programmer, a K&R C programmer, a Cobol programmer, or a C# programmer would be roughly the same, even though the functionality provided by those "x" code lines vary greatly. There are some obvious exceptions, such as microcoding or APL, but for the algorithmic class of languages, it seems like the variation in line count is not that great.
-
I know, i know,... "define, how to count: comments yes/no? blank lines yes/no? what counts as line?" Just a rough estimate, plain counting the lines of text in a source file, inlucing comments, blanks, multi-line-statements and all... Did you ever think about your life-time lines output? Can you roughly count back, from the beginning? Are you over 1 million? 10 million? how many per year? I am asking this, because we have a funny discussion running here in the office about the size of the first Wolfenstein 3D, MS-DOS and Windows 3.11 --- their source lines and the sizes of todays apps and OS'es, as everybody can check out Android source code if he likes to and lots of software is open nowadays.
|| You know nothing, Jon Snow. || My Android Label (mbar Software) || My Android Apps in Play Store
To paraphrase Bob Dylan: "How many lines must a programmer lay down, Before his lifetime is done? The answer my friend is blowing in the wind...." :laugh: :laugh:
-
To paraphrase Bob Dylan: "How many lines must a programmer lay down, Before his lifetime is done? The answer my friend is blowing in the wind...." :laugh: :laugh:
I'd like to add the most wonderful blues for developers, from Simon and Garfunkel: Hello Source code, my old friend... I've come to talk to you again... Because a vision softly creeping Left its seeds while I was sleeping And the vision that was planted in my brain Still remains Within the code... on servers...
|| You know nothing, Jon Snow. || My Android Label (mbar Software) || My Android Apps in Play Store
-
I'd like to add the most wonderful blues for developers, from Simon and Garfunkel: Hello Source code, my old friend... I've come to talk to you again... Because a vision softly creeping Left its seeds while I was sleeping And the vision that was planted in my brain Still remains Within the code... on servers...
|| You know nothing, Jon Snow. || My Android Label (mbar Software) || My Android Apps in Play Store
I saw Paul Simon on his farewell tour and he's terrific! A little John Kay and Steppenwolf back at you "Code me baby, code me baby All Lifelong"
-
I saw Paul Simon on his farewell tour and he's terrific! A little John Kay and Steppenwolf back at you "Code me baby, code me baby All Lifelong"
I'm writing poor code, nobody loves me "HE'S WRITING POOR CODE FOR A POOR LIBRARY SPARE HIM HIS FAILS AND HIS DEPENDENCY!"
|| You know nothing, Jon Snow. || My Android Label (mbar Software) || My Android Apps in Play Store
-
I'm writing poor code, nobody loves me "HE'S WRITING POOR CODE FOR A POOR LIBRARY SPARE HIM HIS FAILS AND HIS DEPENDENCY!"
|| You know nothing, Jon Snow. || My Android Label (mbar Software) || My Android Apps in Play Store
You Win! that is the best!:thumbsup::thumbsup: "Scaramouche! Scaramouche! can you code a little better? Spare him his life from this framework that you see!"
I played R&R R&B for 30+ years. Got tired of the drama and gave up.
-
Are we talking "lines of code" or "original lines of code"? Because I'm pretty sure most of the modern stuff is just copy'n'patse from SO, QA, the back of a cereal packet ...
Sent from my Amstrad PC 1640 Never throw anything away, Griff Bad command or file name. Bad, bad command! Sit! Stay! Staaaay... AntiTwitter: @DalekDave is now a follower!
As an embedded developer (30+ years) I can happily say that the vast majority of my copy/paste is from my own library of routines I've developed over the years. Not to say that I came up with the original idea's for a lot of them. I doubt I'd ever have come up with something like the Goertzel algorithm (let alone the sliding Goertzel).