What we can learn from Marie Kondos’s principles for software development

Dennis Eichardt
Axel Springer Tech
Published in
3 min readJun 10, 2020
A giant mess comparable to most of software.— Photo by Ashim D’Silva on Unsplash

Watching Marie Kondos’s latest show on Netflix and reading her books a thought sparked my mind: “Is it possible to transfer the rules of order she applies to physical items from the actual world to software development in a world we can’t touch?”

So let’s take a look from my perspective as a software developer!

Physical World Principle #1: “Tempo and Consequence”

She basically says that cleaning up is no permanent process. It’s a process you willingly start and should get through with as fast as possible. I think this is the only pattern we can’t apply for software development as working on software also means permanent refactoring. In an optimal world you are able to refactor source code around the task you are currently assigned to, permanently.

Physical World Principle #2: “Sort By Category, Not Location”

If you sort just by location, you won’t bring any order to your belongings. I think same is true for software. If you e.g. just move files freely, that won’t help much. But if you e.g. move all classes to a class folder, all templates to a template-folder, that will definitely help.

Physical World Principle #3: “Touch”

In the physical world you are supposed to touch an object, to connect to it, to get some kind of relation to it.

This compares best to browsing source code and finding lines of code that make you angry, lines of code you can’t remember what they were there for and lines of code that don’t fulfill any purpose anymore. See your mouse cursor as “touching” those areas. And get rid of things that don’t feel good.

Physical World Principle #4: “Does it spark joy?”

Well you remember the last time you saw crumbly old source code? Functions that were commented out and were no longer necessary? TODO annotations from 2010? Did they spark joy? No, they didn’t, of course! So simply get rid of them. Press the DEL-Key for a new, cleaner life free from former sins! There’s only a very low chance that the former developer of 2010 will reappear and take responsibility for that lines of code!

Physical World Principle #5: “Every thing has its space”

This is true for physical objects, but also for objects we can’t touch. Nobody would put their socks into a fridge. Except it’s a hot summer day, maybe! But what is comparable to this physical world principle?

Classes, methods and type declarations! Modules!

See them as labels for things you want to keep together. The more you use them, the more you can pull out just the right box with the things you need.

Physical World Principle #6: “An altar for souvenirs”

In the physical world an object did an excellent job accompanying you over time. So you are supposed to say “thank you” and maybe exhibit belongings of a high meta-value. We can’t do that for software. It’s cool that it ran on PHP 4 some time ago, but it’s useless now. Maybe take over the old author credits into a new contributors file, but that should be it.

Software origami time! — Photo by Alex on Unsplash

Bonus Chapter: Folding techniques for software

Following Marie Kondo you’ve got those famous folding techniques of her. For example how to fold a shirt the right way so you can store it in your wardrobe.

Well, I’d say this is most comparable to shrinking data for your users. Nobody wants their data rate going down by getting transferred unnecessary network data. So minify, shrink and compress if you can. Not everybody is on a 50 MBit line! Plus, you get some higher site speed too.

--

--

Dennis Eichardt
Axel Springer Tech

From Hamburg, Germany. Technology has to serve the people but for that, technology has to become a part of people. Articial intelligence, VR, robotics.