Optimize where it matters
Ranjith Tharayil
Co-Founder , CertifyMe - The world's most trusted digital credential platform
What do software development teams do most of the time during work? What takes up the maximum chunk of your time as a software developer? Writing code ? Ok let’s assume that , in that case, what is the average lines of code a team clocks over a year? Let’s be specific, for java the industry standard the average (year to year) is around ~45-60 lines* of production code. There is a lot of industry studies and research that backs this figure. Yes, it’s a fact we spend on an average less than an hour writing code. In fact, if you’re an expert programmer you won’t even take 20 min to craft that 45 lines. Let’s be clear I never asked how many lines you can craft a day, the answer to that in case you’re an expert would be 1K to 3K or even more based on appetite and expertise. To reach that maturity, one needs to attain supreme clarity and details on what we need to develop. So, from 45 lines to 1000 lines, are we missing out something? Coming back to our question.
What do software development teams do most of the time during work?
We spend a lot of time thinking, I have spent days thinking analyzing where I need to put that one line of code to fix an issue. In the complex world of enterprise software development, a team spends a hell lot of time on “thinking”**, what we need to develop? and how we need to develop? We spend more than 80% of time thinking and just less than 20 % programming. Today in this world we have so much technology and tools in just focusing on optimizing that 20 % and very less focus on optimizing the most important 80% of “thinking”. This is exactly the problem agile engineering practices like BDD, TDD addresses, they help optimize the thinking. BDD helps you define what you need to develop and TDD helps you in the how.
Optimize where it matters.
*I am not a fan of measuring LOC, but for the sake of simplicity let use it
** in this context "thinking" is the process of defining what and how via discussions , grooming ,collaborations etc