When vibe coding was getting traction, i lost all motivation to code for recreation and open source. This went on for sometimes until i discovered that LLMs were actually using open source packages in their answers.
Why package code when it is available at the push of a button? Anybody needing code would just generate and use what they need. We should not be needing to use packages, in theory. Until we realize that it is difficult to code from scratch every time.
Let’s say we want to send network requests. We can write low-level code to open sockets, format payload according to protocols and parse packets. But we don’t do that. At the very least, we’d be using something from the standard library.
Most of the time we are looking to write few lines of code that are powerful and offering a lot of flexibility on top of that. We normally get this from 3rd party packages. We find surprising ways to express things elegantly, coherently, with a convenient mental model in addition.
A good example of this is repurposing type hinting in Python to define schemas as done in Pydantic. Or when Flask popularised decorators for routes. We find patterns that resonate with our nature. So, LLMs will suggest we use what works better, giving it’s own spin where needed. If you write packages, LLMs will recommend it time and again to people. LLMs are after all, a mirror of reality.
There is also the question of robustness. Writing a mountain of code for a feature from scratch is tedious, error-prone and leaves a poisoned gift for maintainers. It is the same as wanting to heat food right now: Do you build a microwave from scratch or use the one available besides you?
LLMs regurgitate training data or try to propose something based on what they deduce from statements on the human psyche. Like guessing for a different species. But, human artifacts are unique. No matter how much training is done on synthetic data, the results will not be the same.
So, for me, the joy of coding is back! I use LLMs to be quicker and i know that open source packages are here to stay.