DEV Community

loading...

Discussion on: Complexity in software engineering or web development

Collapse
tomazfernandes profile image
Tomaz Lemos • Edited

That’s a very interesting topic. The way I see it, complexity and simplicity are two sides of the same coin. What is simple for you today might have been very complex yesterday.

My goal is to always make the code look really simple to me. If there’s any part of it I can’t understand in a glimpse, it’s too complex and I’ll try to break it down to something I can understand better. Code reading should be as effortless as reading an fine article.

The upside of that is, paradoxically, that keeping code really simple enables me to do very complex applications... It’s really hard o build on top of something complex, but very easy to build on top of simple things. And when the new feature adds complexity to the code, I’m going to break it down again until it’s simple enough.

Every complexity in my code comes from something I didn’t quite understand, be it the requisite, the framework, the language, the modeling... And if I’m writing code about something I don’t really understand, it has a great chance of failing...

So I guess the bottom line is that I pursue simplicity so I can better manage the underlying complexity.

Guess I went a bit off topic, but thanks for the opportunity to think about that!

Collapse
olimpioadolfo profile image
Olimpio Author • Edited

Wow. I never thought about that in the same way. Makes a lot of sense... Complexity as a way to get your code clear enough so that you can still work on it. Actually I'm quite opposite 😂😂 I'm Machiavellic [Side projects only], it doesn't matter the way I take, what really matters is the final result... But sometimes I tend to love to write clean code that is very easy to grasp... Thanks