RSS

Category Archives: Design

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

 

Don’t Write Insulting Error Messages

Error messages are incredibly important in communicating to the user when something happened that the program was not designed to handle.  Programmers usually write these messages, and there are common pitfalls to avoid. Read the rest of this entry »

 
Leave a comment

Posted by on July 14, 2017 in Coding, Design, practice

 

Tags: , , , ,

Extreme Precision Programming

What is “Extreme Precision Programming”?  It is a style of programming that aims to perform the intended function, while being very noisy about anything that deviates from the intended mode of behavior.  It is nothing like a complete methodology, but rather a philosophical leaning to guide choices at the implementation level. Read the rest of this entry »

 
Leave a comment

Posted by on July 12, 2017 in Coding, Design, practice

 

Tags: , ,

It’s OK to Ship Tests with Product

A product is a product, and testing is testing, and they should be kept separate, right?  The thinking goes that consumers would never want to test the product.  Of course they don’t, but they are not the only people in the field. Read the rest of this entry »

 
Leave a comment

Posted by on July 10, 2017 in Coding, Design, practice

 

Tags:

When are “best practices” less than best?

A “best practice” is a heuristic which is used to guide early stages of a project, in order to set some patterns.  When should you use them?  More important: when are you justified in ignoring a best practice? Read the rest of this entry »

 
Leave a comment

Posted by on July 3, 2017 in Coding, Design

 

Tags: , , , ,

Jungles and Ski Gloves

Programming is an act of design, and in order for a programmer to do the job, they need to have a thorough understanding of the actual customer and actual situation.  An abstraction will not do, otherwise, it is like asking someone who lives in a jungle to design a pair of ski gloves. Read the rest of this entry »

 
Leave a comment

Posted by on March 4, 2017 in Design, Uncategorized

 

Prefer JSON over XML for Data Structures

If you are going to exchange data structures between programs you have many choices.  Of these, JSON is the best choice in general, and specifically a better choice than XML, and this post explains why. Read the rest of this entry »

 
Leave a comment

Posted by on June 1, 2016 in Design

 

Tags: , ,