Ways of Seeing – Software Architecture lessons from my Home

Happy, our happy cat, chasing flies on the wall in our courtyard

To an enlightened software developer, there is little difference between his home and the software he creates. I happen to have one of the most beautiful homes in the Cyprus, and it projects the exact same traits as the software I create do.

First of all, a home needs to have a solid foundation. My home was built 220 years ago, and its walls are 1 meter solid rock. Literally, it feels like I am living inside of a mountain. The same is true for my software. Everything I code, needs to be secure. For instance, when I store passwords in my database, I am using BlowFish hashing, to avoid Rainbow Dictionary attacks to be able to brute force the passwords. If somebody somehow are able to get a hold of my password database, they still won’t get to the actual passwords. This is contrary to the way Facebook stores your password in plain text, implying that if you use the same password at Facebook as you use other places, any employee at Facebook might gain access to everything in your online life. Even though I have access to the database where you store your password, I still doon’t have any idea what your actual password is, and even with a supercomputer, I would still not be able to retrieve your password.

This becomes the equivalent of the size of my walls in my house. In the village where I live, which is Pissouri, just some few hundred meters away from where I live, hundreds of houses are literally sliding into the sea, due to not having a solid foundation, and having been built literally on mud. My home has stood exactly where it stands for 220 years. It’s a testimonial to the brilliance of Nicolas’ ancestors, who built it more than 220 years ago.

Notice how the door captures the light

The height of the ceiling also gives room for great thoughts. Some decades ago, a scientist researched the effect houses had on people’s thought processes, and he came to the conclusion that if you were in a room with lots of room between the floor and the ceiling, you’d be more capable of seeing the “big picture.” Literally, air above your head, will inspire your mind, and give you room to think great ideas.

The “extra yard”

Just like software, your home should go the “extra yard”, to implement details, that sets it apart from the crowd. In our home, there are so many of the details, you feel like you’re walking into a museum as you enter it. Below is from one of our 4 bedrooms, a detail created 220 years ago, probably intended to display saints to protect the home from danger.

One of the 4 large bedrooms the house holds

In addition to this, the living room is divided into two separate places, one for our very large kitchen, and another for the living room. Nicolas did a great job when he renovated the house, to create two distinctly different “rooms”, without walls between them, yet still giving the feeling of that one enters a different room as you go from the kitchen to the living room. Take a look at the next photo to understand what I mean.

Combined living room and kitchen. The photo was taken before we got to decorate it with our furniture

Notice how the “old” merges with the “new” in this single room, divided by the arch, giving a feeling of spirituality and holiness. Just above our sink, is even a hole. It looks like a bird’s nest, but its purpose was to provide a place to but candles 220 years ago, to lighten up things. And just where the red garbage bin is, during the war between UK and Cyprus some 60 years ago, there used to be a food storage room, where Nicolas’ family used to hide soldiers fighting for Cyprus independence.

If you’re a software developer, you should treat your home as your software, and your software as your home. Because they both reflect truths about you, and how you think. And in the end, the creation of software is not the creation of code, it is the act of thinking. And to think beautiful thoughts, you need a beautiful home. A man’s home is his castle, and his castle reflects his mind. If you have a dirty or messy home, this will reflect on your work, regardless of what your work is. Below are some more pictures to hopefully inspire you to “think better.”

The hallway between the bedrooms and the living room. You have to bend your head as you walk between the living room and the bathroom/bedrooms. I think this is a reminder of being humble as you walk through the cathedral your software, and your home, really should be treated as

Notice the arch, and the vine rank, that’s been turned into a light. You can also see the old “light hole” on the wall behind the vine rank

Ways of Seeing, is that which separates the apes from humans …

And of course: Location, location, location! This is what we see if we leave our home. Less than 50 meters from our home, the most beautiful village in the world; Pissouri!

Advertisements