3 ms·
The conclusion is partially correct in my experience. At the end of the day is has to do with making more money and it just happens that more features allows bi
by proc0 2y ago
The conclusion is partially correct in my experience. At the end of the day is has to do with making more money and it just happens that more features allows big companies to keep selling more of it, or at least that's the claim.
I disagree with the technical assessment though. There's nothing stopping large companies from properly engineering their systems so that they can be iterated on faster.
> So why do big tech companies find it so much harder to build? It’s the scale of the app itself: not the number of traffic or users, but the number of features. As that number grows, it becomes more and more difficult to build and ship new features.
This isn't necessarily true. Software can be designed so that new features are trivial to add, mostly because features are added within a domain, which means that features usually have things in common and can be abstracted. This is where the real problem occurs. In order to properly abstract features, you need engineers that are completely focused on engineering the systems because it is very, very hard.
So the actual reason is that companies do not want to invest in properly engineering their systems because they don't want to pay engineers to focus no the over-arching system abstracting from a high level across all features... instead they allocate engineers to individual features which is a small slice of the technical work, and then the rest of their effort is spent doing non-technical work like coordinating, manual testing, scheduling and planning, and presenting their tiny features. If you build a large codebase like this, then maybe you can ship faster at the beginning, but sooner or later the progress grinds to a halt.
This is called Conway's Law - https://en.wikipedia.org/wiki/Conway%27s_law https://en.wikipedia.org/wiki/Conway%27s_law
Big companies just don't care about good engineering and I think it's also because the average consumer does not care about it (even though everyone does notice it when it is present), not to mention that hardware does a lot of heavy lifting because memory and CPUs are so good that it allows bad code to exist.