It's easy to dismiss the GoF Design Patterns

When I first read the gang of four’s Design Patterns I dismissed most of it as a coverup for the unfortunate parts of C++’s object design. That was definitely unfair, since the strongest benefits of Design Patterns come from managing huge code bases, a fact that I missed with all the small examples. But even still, I would love a book on design patterns that is built for modern interpreted languages, with duck-typing and no type checking.
Read more →

font-feature-settings should not be used in code blocks

font-feature-settings is a great CSS feature to play with, but it should probably be turned off in code blocks. With Markdown and hightlight.js, that means adding this little piece of CSS to your stylesheet. pre, code { font-feature-settings: normal; }
Read more →

The problem of learning Object Oriented Design

The greatest problem in learning object oriented design is in the toy problems. The object oriented solution never looks better than the regular solution.
Read more →

How to write a program, the wrong way

Learn the right way to write a program the wrong way
Read more →

David Parnas and the roots of good programming design

This paper is considered seminal in Object Oriented Design, but Parnas never mentions objects, and his example program is described in procedural programming terms. The lessons in this paper are applicable to all programming methodologies. It’s just about smart design decisions.
Read more →