{{< partial "deadly_cuts_head" >}}
Mike Tyson is known for his deadly punches. He was the undisputed heavyweight champion of the world from 1987 to 1990. One might think that heavyweight is good, it'll pack a better punch. However, when it comes to software solutions heavyweight solutions are bullshit.
{{< socialpost src="images/tyson-punch.png" alt="Tyson's Deadly Punch" >}}
## Just Don't
I get it, you know Java with Spring Boot. However, don't use it to render a
single web page.
Did you know you can serve a web page with a single line of code in Python?
```python
python3 -m http.server 9000
```
Add an `index.html` file in the same directory and you can view it in your
browers.
If you don't like Python, you can use Node.js.
```bash
npx serve
```
Hell, you can even use netcat.
```bash
echo -e "HTTP/1.1 200 OK\n\n$(cat index.html)" | nc -l 9000
```
## Moar Dependencies
I love cloning a repository to test what should be a simple solution only to see
something like this:
```bash
(node:5575) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
```
Puny, indeed.
{{< socialpost src="images/heaviest-objects-in-the-universe-nodejs.png" alt="Heaviest Objects in the Universe: Node.js" >}}
## Solutions
1. **Use the right tool for the job.** If you need to solve a simple problem, use a
simple solution.
2. **Don't over-engineer.** You don't need a full-blown framework with fourty-two packages to solve every problem.
3. **Keep it simple.** Simple and readable solutions are easy to maintain.
## Conclusion
Over-engineered solutions are rampant. It's only going to get worse as programmers copy paste code generated by GPTs run by Co-Pilots.
Think before you deploy a heavyweight solution or you'll ++(dystopian digital hellscape) for your kids.
{{< partial "deadly_cuts_footer" >}}