RSS

Category Archives: practice

Return Null or Exception?

I am writing a getter function, and the requested object can not be found.  Do I return null?   Or do I throw an exception?  The answer is “it depends.”  Sometimes both options are needed, but how to decide? Read the rest of this entry »

Advertisements
 
Leave a comment

Posted by on May 11, 2019 in Coding, Example Code, practice

 

Tags: , , ,

Write Bug Reports to Last

Encountered a bug report that cited a problem in “the new build.”   That is not good enough, because every week will bring a new “new build.”

Read the rest of this entry »

 
Leave a comment

Posted by on February 20, 2019 in practice

 

Tags: , ,

Constants and Errors

Still reviewing that code base and finding more bad patterns for use of constants, this time for error messages.   This is another “don’t do this” post. Read the rest of this entry »

 
Leave a comment

Posted by on November 27, 2018 in Coding, practice, Uncategorized

 

Tags: , , ,

Git Branching

I found a lot of the documentation is incomplete and only useful to those who already know how to do it.  Plus, they usually are based on unrealistic scenarios.  Here are the notes that are useful to me to make and control branches. Read the rest of this entry »

 
Leave a comment

Posted by on February 1, 2018 in Coding, practice

 

Tags: , , ,

Excessive Branch Use Causes Technical Debt and Increases Risk of Bugs

Agile practitioners already know that technical debt is that accumulation of unfinished work can cause projects to be late late late.  Building up a lot of technical debt is a problem because the debt needs to be payed before you can ship.  One way that debt can be accumulated is by profligate use of branches.  Avoid that at all costs! Read the rest of this entry »

 
1 Comment

Posted by on December 16, 2017 in Coding, Design, practice

 

Tags: , , , , ,

The Urge to Merge

Concurrent development of software in a team relies on being able to merge the changes from each person successfully.  Experienced developers will already know this, but there are theoretical limits on how effective merging can be. Read the rest of this entry »

 
1 Comment

Posted by on December 16, 2017 in Coding, practice

 

Tags: , , , ,

Grounding Design for the Real World

One common rabbit hole that programmers often fall into is creating designs for abstract capabilities that then prove to be useless in real life. To avoid this, we must focus on concrete real-world examples when designing capabilities. Read the rest of this entry »

 
Leave a comment

Posted by on July 17, 2017 in Design, practice