How does Dependency Hell happen?

540 views

How exactly does Dependency Hell occur? What do I need to *not* do in order to avoid it?

In: Technology

Anonymous 0 Comments

Let’s say I’m a developer. I’m making a program to automatically Tweet and Instagram something.

I could directly use the Twitter and Instagram APIs, or I could use some libraries that already exist for this so I don’t have to redo all the coding for everything.

I work on the Twitter part, it works great. I work on the Instagram part, and it works great. But I slap them together and they break. This could happen if they were using the same common library for handling HTTP, but different versions. The programming language can’t really handle having two dependencies that are addressed the same, so it has to pick one, and this could break the other one.

In this scenario, even though everything works fine on their own, they don’t work well together, and there is no quick fix. This can be really frustrating if you’re trying to add two features to a product simultaneously for a release and both teams add a dependency like this. You end up with one going back and redoing a lot of work because of a dependency mismatch.