5 min read

SOLID life advice - free interpretation of the principles for better work and life

Button with signs "Work" and "Life" (complize / photocase.de)
complize / photocase.de

SOLID is an acronym with each letter standing for a principle in object-oriented software development. In this short talk I held on 27.04.2022 at Resourcify, I wanted to refresh the principles in everyone’s head by freely interpreting them!

S: Single-Responsibility Principle

👉
Every class should only have one responsibility.
Close-up of a human eye (miggmag / photocase.de)
miggmag / photocase.de

Back in November of 2010, Nina, my wife, and I were about to welcome our first child. That in itself was wonderful, but we had also figured that we’d need a larger home and bought a house which had to be renovated. And if that wasn’t enough, I also switched jobs from PPI to Zühlke. All in all, that really was too much!

Similarly, when I made the switch and became a full-time entrepreneur in 2015, I tried many things. First, Resourcify (still Pendula at the time) was in its infancy and we were busy testing some things. I also continued freelancing on a large project. AND I tried my hand at lecturing at the same time. Once again, too much.

Why do we have this tendency to always do too much at the same time? I was really happy a couple of months later when I made the switch to fully focus on Resourcify. I don‘t claim it's realistic that we have literally one single responsibility, but I do advocate for limiting the number of hats you’re wearing and the topics you’re juggling and allow yourself to FOCUS!

O: Open-Closed Principle

👉
Classes or other entities should be open for extension, but closed for modification.
Sliding door with signs "Closed" and "Open" (zettberlin / photocase.de)
zettberlin / photocase.de

That sounds like a contradiction at first.

Recently, a friend told me about a doctor‘s appointment she’d attended. She said: “I told the doctor xyz and this other thing which I think also helps. But the doctor seemed to be in a rush and didn‘t really listen!“. I asked if I could give her feedback and suggested that while it could truly be that the doctor was in a rush and himself not actively listening, it could also be that she, my friend, had projected  her own insecurities onto the doctor. She wasn‘t open to this feedback.

I strongly believe in feedback and that every piece can bring you forward. When someone gives me feedback, I try really hard to understand what‘s behind the words and what it means for me. I can only highly recommend being, in this sense, OPEN.

On the other hand, you should be CLOSED when it‘s about your identity. Know who you are and no one can take that away! I am aware that this is not binary (i.e. that you either know who you are or not). It’s a journey. And I want to encourage you to also use professional help here. Over the last 12 years, I’ve worked with mentors, coaches, and even a therapist at different points. This helps!

L: Liskov Substitution Principle

👉
A sub class shall be able to “stand in” for the super classes; in other words, “fulfill its promises”.
Two fists bumping (Antonio Hugo / photocase.de)
Antonio Hugo / photocase.de

I value „Integrity“, which I would like to define here as „doing what one says they’ll do“.

Take the previous owners of our house. We had an agreement with them that they would  remove a lot of the rubbish from the house - like old mirrors, a bag of cement and many more things. Most of the things were still there when we took possession. As young/ and naive as we were, we didn‘t speak up and dealt with that stuff for ten years.

In a work context, I domy best to only make promises I can also keep. E.g. after a meeting, I wouldn‘t say „I’ll send you the minutes later today“, but rather „in the next few days“. The latter is typically 100% acceptable, but much more realistic.

It‘s also obvious that you shouldn‘t break legal contracts!

I: Interface Integration Principle

👉
No code should be forced to depend on methods it does not use; in other words, “have smaller interfaces tailored to the different callers”.
Father and daugther playing in little kitchen (Edyta Pawlowska / photocase.de)
Edyta Pawlowska / photocase.de

I already said it. None of us wears only one hat. We are employees, yes, but we’re also husbands/wives, fathers/mothers, friends, volunteers. You talk to everyone differently. When I play with my kids, I want to be fun, but sometimes I need to be strict. When I talk to Nina (my wife), we have lots of mundane things we need to discuss, but we also want joy in our lives. When talking to a customer, I try to be understanding, but sometimes I need to be firm! I want to encourage you to adjust your communication according to the other party and be intentional!

E.g. for this talk, I wrote down that I wanted to share my experience in an inspirational, personal, and actionable format. You’ll have to let me know later if I was successful.

D: Dependency Inversion

👉
High-level modules should not depend on low-level ones, but they should both depend on abstractions - i.e. a common understanding.
Couple that had an argument (goenz / photocase.de)
goenz / photocase.de

How could this be applied to work and life?

In a work context, we want an organization where everyone aligns on an outcome and then let the teams autonomously figure out the path.

In a personal context, imagine you are in a fight with your partner. What sometimes helps is to stop focusing on immediate problems, and instead look at those things you share, like love, respect etc. Nina and I have our own tactic for diffusing an argument before it can escalate. Imagine I come home from an intense workday, greeting Nina who herself had a busy day with the kids. One word leads to another and before you know it, we’re fighting. „Cut! The scene is shot“, one of us interrupts. I would then go back outside, close the door, and ring the doorbell again. „Hey darling, before anything weird happens, I had a stressful day…“. It sounds funny, and it is, but it also breaks the ice!

Bonus: KISS – Keep it simple, stupid.

Kissing doves (pepipepper / photocase.de)
pepipepper / photocase.de

I didn’t want to end with the picture of a fighting couple, so I’m dropping this bonus principle here for you, to be written more about in another post.

Discussion

I’m looking forward to hearing your thoughts:

  • Which of the principles resonate the most with you?
  • Which one would you like to see more in your daily life?

Feel free to leave a comment!