You often hear about how important it is to write “readable code.” Developers have pretty strong opinions about what makes code more readable. The more senior the developer, the stronger the opinion. But, have you ever stopped to think about what really makes code readable? The standard answer You would probably agree that the following things, regardless of programming language, contribute to the readability of code: What Makes Code Readable: Not What You Think
We Recommend These Resources Writing good code is all about making it fit for human consumption. Any idiot can write code a computer can understand, it takes care to write code another human can understand. But what does it mean to make code easy to understand? Programming is a literate task – writing well requires experience of reading code and in particular reading well written code. But how do we read code? Reading Code
Hey, let’s be careful out there.--Sergeant Esterhaus, daily briefing to the force of Hill Street Blues When developers run into an unexpected bug and can’t fix it, they’ll “add some defensive code” to make the code safer and to make it easier to find the problem. Sometimes just doing this will make the problem go away. Defensive Programming vs. Batshit Crazy Paranoid Programming
Autogenerated Comments Rant We Recommend These Resources Let me clear up potential confusion right at the start. My rant is not auto-generated. Auto-generation of comments is its object. What I have to say about this abomination can be summed up in six words: why, why, why, why, and why?
CheckThread.org What is CheckThread? CheckThread is a static analysis tool for catching Java concurrency bugs at compile time Java Threading is Difficult
We Recommend These Resources It's incredible how unknown a tool like Sonar is yet. I guess Gradle suffers the same destiny. After all, they're both similar in their intent, improve the quality of your software. It seems lots of people know about unit testing (not so many about code coverage), less know about tools like Checkstyle or FindBugs (static analysis of code) and just a minority are aware of other esoteric metrics like cyclomatic complexity. Quality Assurance With Sonar
Checkstyle - Checkstyle 5.0 Overview Checkstyle is a development tool to help programmers write Java code that adheres to a coding standard. It automates the process of checking Java code to spare humans of this boring (but important) task.
This is the web page for FindBugs, a program which uses static analysis to look for bugs in Java code. It is free software, distributed under the terms of the Lesser GNU Public License. The name FindBugs™ and the FindBugs logo are trademarked by The University of Maryland. FindBugs has been downloaded more than a million times.
Today, Replay Solutions announced its success in obtaining a US patent around their software's ability to reproduce and fix race conditions. Race conditions are a big problem for developers working on multi-threaded applications. Voke Inc. analyst firm founder Theresa Lanowitz says that the software gaming industry and embedded systems vendors have addressed race conditions, but now enterprise developers have a growing need to address them as well. New Patent Around Race Condition Fixing