Category Archives: Craftsmanship

Anders Hejlsberg Is Right: You Cannot Maintain Large Programs In JavaScript

There’s a quote over on a Channel 9 video of Anders Hejlsberg: Erik Meijer: Are you saying you cannot write large programs in JavaScript? Anders Hejlsberg: No, you can write large programs in JavaScript. You just can’t maintain them. With … Continue reading 

Also posted in AntiPatterns, Composite Apps, CQRS, Javascript, Philosophy of Software, Pragmatism, Principles and Patterns, Risk Management | 29 Comments

The difficult definition of professional software development

Here are some of the contradictory phrases (and a few paraphrases) I’ve overheard used to define what is “good” and “bad” code. Code should always be well commented Maintainable code has unit tests and well named methods therefore needs little … Continue reading 

Also posted in .NET, Continuous Integration, Education, Rake, Ruby | 10 Comments

Intuition And Complexity

I just ran into a situation where I had to describe an easy, but not intuitive process to a coworker. The net result of the conversation is that I realized I would much rather have software or process that it … Continue reading 

Also posted in Analysis and Design, User Experience | 6 Comments

The Dangers Of AutoMocking Containers

Louis Salin commented on my original post about the Ninject.RhinoMocks automocking container, and brought up a very good point. Here is his comment, reproduced in full: I’ve heard (or read…) that automocking is equivalent to taking weight loss pills while … Continue reading 

Also posted in .NET, Analysis and Design, AntiPatterns, AutoMocking, C#, Quality | 5 Comments

Expressive Code: Good Variable Names Instead Of Magic Values And Calculations

I like to remind myself of these little principles that I take for granted, now and then. It’s good habit to get back to basics and really understand why you hold principles so that you can judge whether or not … Continue reading 

Also posted in .NET, Analysis and Design, AntiPatterns, C#, Principles and Patterns | 9 Comments

Help! I’m Terrible At Migrating/Restructuring Code In A Test-First Manner

I’ve spent the last day or so restructuring some code – specifically converting a WinForms form into a user control so that I can host the control in several different forms that need it. This involves changing the presenter for … Continue reading 

Also posted in AntiPatterns, Continuous Improvement, Model-View-Presenter, Philosophy of Software, Pragmatism, Unit Testing | 11 Comments

Why I Write Automated Tests For My Code

I started my journey of unit testing my code about 4 years ago… I had played with nunit prior to that, but I never understood the point and would delete my tests after I got them to pass… that was … Continue reading 

Also posted in Agile, Behavior Driven Development, Pragmatism, Quality, Unit Testing | 3 Comments

LosTechies Welcomes Derek Greer!

A former coworker and good friend of mine, Derek Greer, has joined up with the LosTechies crew. He previously lived and worked in the Austin, TX area where I had the good fortune to meet him and hire him on … Continue reading 

Also posted in Community | Leave a comment

A Response Concerning Semantics And Intention Revealing Code

My previous post talked about some code that was using a null value to cause certain behavior. The general idea behind the post was questioning how I should go about remodeling that part of my code so that it would … Continue reading 

Also posted in .NET, C#, Design Patterns, Principles and Patterns, Quality | 8 Comments

Application Events: Modeling Selection vs De-Selection as Separate Events?

I’m using my Event Aggregator in my current project to manage communication between a custom control and it’s parent form. This is the same control I talked about in my CQRS Performance Engineering post. It has several drop down lists … Continue reading 

Also posted in Analysis and Design, AppController, Messaging, Model-View-Presenter | 10 Comments