Category Books

ANTIPATTERN – Cut and Paste Programming

I love reading computer manuals, be they about software architecture, algorithmic, programming, security, cloud storage and operations, big data, machine learning or others. The following text is taken from the book “AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis“ ——————————————————————————– Also Known As: Clipboard Coding, Software Cloning, Software Propagation Root Causes: Sloth BACKGROUND Cut-and-Paste Programming is a […]

AntiPattern – Spaghetti Code

I love reading computer manuals, be they about software architecture, algorithmic, programming, security, cloud storage and operations, big data, machine learning or others. The following text is taken from the book “AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis“ ——————————————————————————– Root Causes: Ignorance, Sloth BACKGROUND The Spaghetti Code AntiPattern is the classic and most famous AntiPattern; it […]

Which Classes Contain the Most Errors?

I love reading the book Code Complete, by Steve McConnell. The following comes from it, in its Chapter 22: Developer Testing. ………. It’s natural to assume that defects are distributed evenly throughout your source code. If you have an average of 10 defects per 1000 lines of code, you might assume that you’ll have one defect […]

Recommended Approach to Developer Testing

I love reading the book Code Complete, by Steve McConnell. The following comes from it. ………. A systematic approach to developer testing maximizes your ability to detect errors of all kinds with a minimum of effort. Be sure to cover this ground: Test for each relevant requirement to make sure that the requirements have been implemented. […]

Defensive Programming in Production Code

I love reading the book Code Complete, by Steve McConnell. The following comes from it. … One of the paradoxes of defensive programming is that during development, you’d like an error to be noticeable-you’d rather have it to be obnoxious than risk overlooking it. But during production, you’d rather have the error to be as […]

Inherit – When Inheritance Simplifies the Design.

I love reading the book Code Complete, by Steve McConnell. The following comes from it. … In designing a software system, you’ll often find objects that are much like other objects, except for a few differences. In a accounting system, for instance, you mights find both full-time and part-time employees. Most of the data associated […]

Principles in Refactoring

I always enjoy reading or listening to Martin Fowler. The following comes from his book, Refactoring. _________________ The word Refactoring has two definitions depending on context. The first definition is the noun form. Refactoring (noun): a change made to the internal structure of software to make it easier to understand and cheapter to modify without […]

Keep Coupling Loose

I love reading the book Code Complete, by Steve McConnell. The following comes from it. … Coupling describes how tightly a class or routine is related to other classes or routines. The goal is to create classes and routines with small, direct, visible, and flexible relations to other classes and routines, which is knowsn as […]

Write Programs for People First, Computers Second

I love reading the book Code Complete, by Steve McConnell. The following comes from it. … Communication with other people is the motivation behind the quest for the Holy Grail of self-documenting code. The computer doesn’t care whether your code is readable. It’s better at reading binary machine instructions than it is at reading high-level-language […]

Be a Lazy Programmer

I love reading the book Code Complete, by Steve McConnell. The following comes from it. … Laziness manifests itself in several ways: – deferring an unpleasant task – doing an unpleasant task quickly to get it out of the way – writing a tool to do the unpleasant task so that you never have to […]