3 ms·
> The accidental complexity to integrate w/ a 3rd party solution can sometimes surpass that of building your own solution. This is one of the most common and d
by jonahx 6y ago
> The accidental complexity to integrate w/ a 3rd party solution can sometimes surpass that of building your own solution.
This is one of the most common and damaging mistakes I see. Here are some other hidden costs that are often invisible to people:
1. The cost of understanding the 3rd party solution, which increases with the generality of the tool. That is, you are using a tool which solves A, B, C, and D to solve A. Using a well-documented tool helps here, but doesn't eliminate the problem.
2. The cost of upgrades, especially when forced by a security issue.
3. Framework vs library costs. It usually much less costly to import pure functions (think: an assertion library) versus importing a framework which forces a bespoke way of doing things (think: rspec).
- javajosh 6y agoI can't agree with you and the GP enough. 3rd party software is hell to integrate! We can at least hope that in a science fiction future there will be a standardized container abstraction for delivering working software, with well-defined conventions regarding an admin interface for setup, an operator interface to investigate issues, and a user interface, which we make as reliable, comprehensive, trustworthy, and buttery smooth as we can make it.
- fbr 6y agoI agree that integrating a 3rd party solution has multiple hidden cost. > This is one of the most common and damaging mistakes I see Interestingly, the most common mistake I see is people neglecting the cost of developing a solution themselves: 1. opportunity cost 2.long term maintenance 3. documentation & training new people ...
- jonahx 6y agoAgreed rolling your own has hidden costs too and is often not the right choice. Ime, though, this lesson has almost achieved meme status. So while both types of mistakes are made, the "hidden costs of 3rd party tools" is often not a consideration at all. The node "left pad string" debacle is the archetypal example here.