{{< 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" >}}