dont be a loco programmer

Don’t be a LOCO programmer

We should give programmers who measure worthiness by Lines-Of-Code (so LOC-Oriented) the name "LOCO Programmers" because that is simply an insane thing to do.

These people don’t understand or appreciate algorithms. They just enjoy giving computers instructions and seeing them obey. They think the power is in writing more code. It isn’t. The power is in providing stable, efficient, and simple solutions for problems that matter. It takes a lot more than lines of code to accomplish that.

Measuring programming progress by lines of code is like measuring aircraft building progress by weight.
—  Bill Gates

Last year, my most popular article was about the mistakes beginner programmers usually make. Here is a summary list of the mistakes and red flags that are specific to the LOCO programming mentality:

  • Jumping into writing code without researching problems or questioning/analyzing WHY features are needed in the first place

  • Using copy/paste often without understanding what’s being replicated

  • Refactoring code that has no tests by just relying on partial understanding of its purpose

  • Not putting enough attention to picking the right data structure for the job

  • Planning for the unknown and coding the potentially-needed features

  • Not using configuration files for values that are needed in different environments or at different times

  • Using unnecessary conditional statements and temporary variables

  • Writing comments about the obvious things

  • Not reviewing "git diff" before committing changes or thinking that green in a diff is better than red

  • Not measuring the effects of programs

  • Not liking to read or write documentation

  • Preferring to work solo or hating having code reviewed by others and looking at code reviews as attacks and fighting them

  • Holding onto problematic code because of the time investment spent on it

  • Giving way too much attention to activity/contribution graphs

For more wrong things you should avoid as a professional programmer read my mistakes article (30 min read):