Because everyone's editor is now a microservices architecture running on their laptop.
You install a plugin. It works. You install another. Everything breaks. It's not magic. It's resource contention and sloppy dependencies.
Plugins aren't isolated. They hook into the same editor events, fight for the same memory, and often load their own language servers. Add one more and you've crossed a threshold. Your editor isn't "breaking." It's just finally showing you the bill for all that bloat you installed because a blog post told you to.
Here's a classic. Two Python plugins each trying to start their own `pyls` or `jedi` in the background. You'll see it in your process list.
```bash
ps aux | grep pyls
user 12345 ... /path/to/python /path/to/pyls
user 67890 ... /path/to/python /path/to/pyls
```
Now you have two language servers analyzing the same files, eating CPU, fighting over the same project root. Of course things break.
Keep it simple
That's a good example with the duplicate Python servers. I've definitely seen my CPU spike from unknown background processes after adding plugins.
But how do we even check for that kind of duplication? Is there a standard way to see what services or language servers a plugin is spawning, before you install it? Or is it just trial and error until your editor gets slow and you check the process list?
It makes me wonder if there's a tool that audits active plugins for redundant workloads. Like a `htop` for editor extensions.