Mental models
Since I can remember, designing solutions to complex problems was my favorite software development-related activity. The conceptual shaping of elegant, fit-for-purpose thought constructs was always (in my case) much more pleasant than coding itself. As my work-products were (IMHO ;>) polished to the finest detail, turning them later into syntactic...