Hacker News new | ask | show | jobs
by hamandcheese 945 days ago
If you can maintain a stable service API, why can't you maintain a stable library API?

I don't see any inherent reason why it should be easier to change the behavior of a service rather than a library.

1 comments

Because if you ship code to users (library), you lose control. You may want to change something, but your users will just tell you to go pound sand. Conversely, if you keep the implementation on your side (service), you get to control how things work and when things change, and your users don't have a say in this.

It's an ownership and control issue.

I don't see the issue here. If I release my_fancy_lib 2.0.0, and I have users who only ever want to stay on the last 1.x release, that's fine. It's no skin off my nose if users choose to stay on an old version forever.
Yeah, exactly. However, if you were to make it a service, those users would have to switch to 2.0.0 or stop using it, as 1.x no longer exists.
Some people don't think like that when they write software. They view it as a knife, not a noose.

I prefer those people.

I'm writing from the perspective of the user (which may be a developer using your product in their product). I don't really care if you view software as a knife or as a noose, I don't want to be coerced by the threat of either.
Ah, I thought you were encouraging service based development, I see you're on the 'library' side. My bad.