Programmers’ 10 most controversial opinions

Marc Prensky wrote an interesting piece a few years ago in which he contrasted two types of people, which he referred to as “digital natives” and “digital immigrants.” His premise was that people who grew up in the digital world (digital natives) think about things differently than people who grew up before the internet age (digital immigrants). Let’s take a look at 10 divisive programming viewpoints.

Programmers’ 10 most controversial opinions

  1. “Programmers who don’t code in their spare time for fun will never become as good as those that do.”
    Even the smartest and most gifted people, I believe, can never be truly good programmers unless they approach it as a career. In other words, they do side projects or experiment with a variety of languages and concepts in their leisure time. ~ rustyshelf
  2. “Unit testing will not assist you in writing good code.”
    The sole purpose of unit tests is to ensure that code that is already functional does not break. It’s insane to write tests first or code the tests. You won’t even know what the edge cases are if you develop the tests before the code. You could have code that passes all of the tests yet fails in unexpected situations. Furthermore, good developers will keep cohesiveness low, making it less likely that new code will cause problems with existing code. ~ Chad Okere
  3. “Use Your Brain” is the sole “best practise” you should follow at all times.”
    There are simply too many people jumping on too many bandwagons and seeking to impose techniques, patterns, frameworks, and other similar concepts on things that do not require them. Just because something is new or someone with authority has an opinion doesn’t mean it applies to everyone. ~ Steven Robbins
  4. “Most comments in code are in fact a pernicious form of code duplication.”
    We spend the majority of our time maintaining code created by others (or ourselves), and poor, wrong, outdated, and misleading comments must rank towards the top of the most vexing code artefacts. Many individuals, especially those flowerbox monstrosities, we believe will eventually forget about them. It’s far preferable to focus on making the code legible, refactoring as needed, and reducing idioms and oddities. Many classes, on the other hand, teach that comments are almost as vital as the code itself, leading to the next line adding one to invoice total commenting style.~ Ed Guniness
  5. “Googling it” is okay!”
    Yes, I understand that years of intensive memorization and/or wonderful shelves of programming books are beginning to fall by the wayside in favour of a resource that anyone can access in seconds, but you shouldn’t hold that against individuals who use it. Too often, I hear people googling solutions to problems that have arisen as a result of criticism, which makes no sense. First and foremost, it must be acknowledged that everyone requires reference materials. You’re not an expert in everything, so you’ll have to search stuff up. Does it really matter where you acquired the knowledge, given that? ~ PhoenixRedeemer
  6. “Not all programmers are created equal.”
    Managers frequently believe that Developer A == Developer B just because they have similar levels of experience. In reality, one developer’s performance can be 10x or even 100x that of another. It’s politically dangerous to bring it up. ~ Dmitri Nesteruk
  7. “I fail to understand why people think that Java is absolutely the best “first” programming language to be taught in universities.”
    For one thing, I feel that the first programming language should emphasise the importance of learning control flow and variables rather than objects and grammar. For another, I believe that folks who have never debugged memory leaks in C/C++ will be unable to truly understand what Java has to offer. Also, rather than the other way around, the natural path should be from “how can I accomplish this” to “how can I discover the library that does that.” ~ Learning
  8. “You won’t be a brilliant programmer if you only know one language, no matter how well you know it.”
    There appears to be a belief that once you’ve mastered C#, Java, or whatever other language you began learning, that’s all you need. I don’t believe it; every language I’ve learnt has taught me something new about programming that I’ve been able to apply to the rest of my work. ~ Glenatron
  9. “It’s fine to write rubbish code now and then.”
    Sometimes all that is required to complete a task is a fast and nasty bit of garbage code. Patterns, ORMs, SRPs, and so on… Create a console application or a website, write some inline SQL (it feels good), and send out the demand. ~ Jfar
  10. “Debugging code with print statements is a viable option.”
    I feel it is entirely OK to use System.out.println to debug your code (or whatever print statement works for your language). This is often faster than debugging, and you can compare printed outputs to previous software runs. When you go to production, make sure to delete the print statements (or better, turn them into logging statements). ~ David

Visit TechGig: https://bit.ly/3ijY5Gt

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store