Posts

Showing posts with the label software architecture

What Can We Learn From Ranchers?

Image
Some of my youth was spent around farms and ranches, which has left me with interesting perspectives. I could talk/write about these perspectives for a while.  I will focus on one area in this post: reusing old tools to build new ones. Not Developed Here Many software engineers are keen to borrow others' ideas or snippets of code. They are often on board with using an entire library or program that does everything they need. Getting them to use something they didn't create can often be challenging , as it may not directly meet their needs. Or sometimes, they think they can build a better mouse trap so every other one out there won't suffice. We hear things like, "That's not how it should be done.” “What they did doesn't make sense,” and “I can build what we need faster than integrating that system." These are all forms of saying, I didn't make this, and I know I can do a better job, so I won't use it.  I've personally done this many times. It’s...

Designing Homesteads Instead of Mansions

Image
We usually lean toward terms and methods from other engineering disciplines in software development.  In some ways, this is good, and in others, it isn't.  All engineering disciplines have a strong history of learning from the past and improving on what was done before.  However, there is one aspect where I do not think software development should follow others, and I'm sure many know it well, the construction analogy. The Construction Analogy " We've got to start with a solid foundation and work from there. "  Software development strategy is very frequently related to buildings and construction.  We tend to describe software as a single building with many rooms and interconnected hallways.  When using this analogy, of course, you need a strong foundation.  More importantly, you need a clearly defined plan for everything about the building before you start. It isn't possible to build the proper foundation without knowing everything about how the...