Category Archives: design

Why all the hating on OO?

I think I finally figured out why there is so much disdain if not outright hate for Object-Oriented techniques these days. TLDR; OO is not well-suited to the prevailing need for client-server (i.e. web) applications. OO is essentially an extension … Continue reading

Posted in design, software engineering | Tagged | Leave a comment

Stop the Madness!

I just watched an interesting talk about using data values as natural program boundaries. Some valuable ideas, but the main thing that it made me think about was unrelated to the talk itself. I learned about this talk when I was at … Continue reading

Posted in design, Programming languages, software engineering, Uncategorized | Tagged , | Leave a comment

The Limits of Specifications

Most descriptions of software development processes begin with the idea that you have some notion of what you want to build. The degree of specificity varies. At the least precise is the very loose, one-sentence story point or “product idea”, and at the … Continue reading

Posted in design, Process, requirements, Software | Tagged | Leave a comment

Complexity and Third-party Tools

Great article here from Alan Holub. The only thing I would add is that I don’t think his experiences with Jersey are, in any way, an exception. I think they are the rule. Which is why it is vitally important … Continue reading

Posted in design, Software | Leave a comment

“Friend” classes, C#, and encapsulation

Ran into an interesting situation today: Client-server application A class representing domain data that is used by both client and server assemblies — so that’s three assemblies: One for the data class One for the server class (uses the data … Continue reading

Posted in Coding, design, Software | Tagged , | Leave a comment

Design Damage and Mocks

Two recent articles that are well worth reading. First, from David Hansson: Test-induced design damage And a rebuttal from Bob Martin Test-Induced Design Damage? I think both articles make some good points. On this issue I tend to agree more … Continue reading

Posted in design, Software, Testing | Leave a comment

Coding is Not Engineering

As you may have gleaned by perusing some of my other posts, I’m kind of a stickler when it comes to words. Words are the basic tools we use to understand things and shape the way we think about them. … Continue reading

Posted in Coding, design, Software | Tagged | Leave a comment