Writing Code Inside Out Using Lambdas

I’ve read in a few places now that the C++ of today isn’t the C++ of yesterday, and I agree with that. It’s come so far. Strangely, I find myself writing sections of my C++ code more like I write Javascript. Before you tar and feather me, let me explain… C++’s later specifications—C++11, C++14, etc.—include […]

Errors From Another Planet–GCC vs. Clang Illegal Instruction

Sometimes when I get difficult-to-read output from GCC, I’ll switch to Clang for a little more human-readable output. In rare instances, Clang will give me different results at runtime. For instance, a function with a non-void return type that doesn’t have a return statement will crash a program built with Clang, but not GCC. If […]

Inconsistency Isn’t Harmless

Few characteristics lead to interfaces that are easy to use correctly as much as consistency, and few characteristics lead to aggravating interfaces as much as inconsistency. . . . Some developers think that integrated development environments (IDEs) render such inconsistencies unimportant, but they are mistaken. Inconsistency imposes mental friction into a developer’s work that no […]

Errors From Another Planet–The One Thing I Hate About C++

There is a lot of C++ hate flying around these days. Seems everyone has a snarky comment to make about my favorite language. I chalk this up to developers being raised on Fisher-Price-toy languages like Javascript and a lack of appreciation for coding closer to the hardware (a.k.a. understanding how computers work, not just how the […]

Highlighting Dates on a WPF Calendar Control

Any time I’m using GUI frameworks, I run into a control that I thought for sure the developers would have put a little more thought into. We’ve all experienced it, that one control that we just can’t customize as much as we would like. In my world, for WinForms, it was the hideous TabControl. For […]