RevEng
Joined 3 years ago
Joined 3 years ago
> The second common variant is, instead of centralizing a service so that everyone in the company uses it, every department does it on their own. Department managers like it because it’s one less party not reporting to them to depend on (and nothing scares managers more than needing things from people not reporting to them.) And the people managing the department managers like it because they don’t need to deal with the centralized service department allegedly failing — and having to figure out if that’s really true and how to fix it, or if it’s an excuse made up by the other departments for failing at their own job. Here, too, if outcomes are what concerns you rather than what's easiest for senior leadership, standardizing on something across the company vs having everyone roll their own variant is a hard decision to make.
The argument is that centralization is the better outcome, even if it's less appealing to leadership. My counter argument is that centralization has downsides that need to be considered; it isn't inherently better.
The problem with one is the same with any other single source: you are stuck with whatever they offer on whatever timelines they provide. You are sharing this with a hundred thousand other people, so it's not tailored to your use case, but either made as generic as possible, or full of irrelevant features. Both of these cases make it worse for you.
I have often made in house libraries either based on or completely replacing a free equivalent because the free one doesn't meet our needs and has extra complications we don't need. Yes, it comes with its costs, but sometimes it's worth it for something that genuinely meets your needs.
By forcing everybody to use the same common platform, you are either forcing them to work around the mismatch between the platform and their needs, or your are forcing the platform to provide for everyone's needs. Neither is efficient and it harms every other user.
If you are going to make your own, you had better have a good reason for it, but you shouldn't be forced into a single solution for everything - it can end up being more expensive than making a few special purpose applications.
The cost of online services is also largely a result of the cost of training (though hard to say exactly what that number is). Assuming you are using open weight models at home, you aren't paying for the training - someone else is.