Live data from Hacker News

IKEA-Oriented Development

taylor.town

1–10 of 146 posts

Re: IKEA-Oriented Development

#3

Author here! Thanks for sharing :)

Hey, I like this. More than I thought I would, as there are a lot of cheeky patterns, but this really summed up a lot of the things I value nicely.

Most definitely bookmarking for later. This is good.

“Flimsiness is a feature” or something - I love this

Re: IKEA-Oriented Development

#4

Author here! Thanks for sharing :)

Hey, I like this. More than I thought I would, as there are a lot of cheeky patterns, but this really summed up a lot of the things I value nicely. Most definitely bookmarking for later. This is good. “Flimsiness is a feature” or something - I love this

> Flat-pack furniture is not meant to last. It has taken me too long to understand that flimsiness is part of its appeal.

Haha

Re: IKEA-Oriented Development

#6
Another lesson of Ikea is that often you cannot move them from one home/apartment to another, because if you try to take it apart and then reassemble it, it's never the same.

To extend this via analogy to the software realm, a deep refactoring is problematic whereas OTOH a complete rewrite is a better idea.

Which has not borne borne out by industry experience.

Re: IKEA-Oriented Development

#8

Author here! Thanks for sharing :)

The other aspect of IKEA that is criminally underrepresented in software that I really feel like should be a part of this article is having an incredibly succinct and universal DSL for documentation. Say what you will about the memes about people not being able to build IKEA furniture because they can’t follow the documentation. Once you understand the DSL, you’ll truly understand how incredible their documentation really is. It is incredibly succinct. They can guide you in less than 10 pages on assembling virtually any kind of furniture they sell. Think of how powerful something similar like that could be for software. How often have you dove into terribly written or overly long and dry documentation?

It is universal and approachable. Worldwide, IKEA has one set of documentation for assembly. It spans education, language, and cultural boundaries.

There is a huge value add in building software in a similar way in order to speak a certain way about that software. In some cases this may be untenable but in the vast majority of business cases I would venture that software and documentation inefficiency is born out of ignorance than necessity. I don’t mean that as a sleight, more that from a business perspective there’s generally a push for “new” and “more” instead of investments in refactoring and optimization.

The more that I am working with organizations looking for areas to improve in order to help them scale, the more the points in this article ring true for me. Thank you for writing it. It was a great read.

Re: IKEA-Oriented Development

#9
It's a nicer way of saying efficiency. Which can be good or bad, depending on your perspective.

Regarding the principles mentioned here, containers are the best overall method of delivering them. Containers package dependencies, the container definitely is the product, and they are composeable and disposable. Of course they do this by leveraging operating system primitives, so you don't have to use containers, but containers solve all these problems in one standard rather than having to use many other solutions.

Re: IKEA-Oriented Development

#10
post #6

Another lesson of Ikea is that often you cannot move them from one home/apartment to another, because if you try to take it apart and then reassemble it, it's never the same. To extend this via analogy to the software realm, a deep refactoring is problematic whereas OTOH a complete rewrite is a better idea. Which has not borne borne out by industry experience.

I moved a ikea shelve through 3 flats and two nations. Ultimately I gifted it away because the new space wouldn't fit it and my requirements had changed, but I know people who are in the 5th flat.

As long as you are treating the stuff right it should survive a few assembly-disassembly-cycles. Key is of couese to sort the screws, mark the parts with tape, etc.

Post reply on HN