I can't tell if this is an honest call to keep things simple, or if it's meant to ridicule that idea. Because I strongly, deeply agree with some of these points, and am absolutely horrified by some of the others.
Skeptical of the person who is "not smart enough to figure out docker", yet is smart enough to know about building a "web application into a self contained statically linked binary executable file". I think they are smart enough, they just don't want to, or don't see the value in it (even if they've made an uninformed decision)
The Stupid Programmer Manifesto
21–30 of 239 posts
Re: The Stupid Programmer Manifesto
#22by the way, I'd say:
I'm too stupid to keep my configuration in order, so I use Docker.
Re: The Stupid Programmer Manifesto
#23Good luck getting that to run in different environments because static or not, nearly every executable has dependencies.
> I’m not smart enough to figure out cloud services and auto scaling groups, so I just upload my static binary file using scp to a linux server I rent from a VPS provider.
Which of course you'll need to setup, patch, figure out how to restart apps when they go down and on and on. There's no easy out.
> I’m not smart enough to figure out how to setup all the databases and firewalls and load balancers, so I just embed the http server and data storage engine as libraries in my static binary.
And how do you back that up?
I get the gist of the article, but some things are not always replaceable with an easy alternative. Most alternatives also have disadvantages as well as their own learning curves.
Postgres, Docker, Infra as Code and Kubernetes are pretty much best practices on any development.
Don't kid yourself that the learning curve is not worth it.
Re: The Stupid Programmer Manifesto
#24Re: The Stupid Programmer Manifesto
#25Related: The Grug Brained Developer https://grugbrain.dev/
Re: The Stupid Programmer Manifesto
#26I can't tell if this is an honest call to keep things simple, or if it's meant to ridicule that idea. Because I strongly, deeply agree with some of these points, and am absolutely horrified by some of the others.
> I’m not smart enough to figure out how to transform data between different layers of the system, so I just don’t. I use the same represetnation in the UI layer and the storage layer.
OK, well then you might need to gather a little more work experience and meet the repercussions of decisions like this one.
Or maybe the OP is a contractor and never has to deal with the repercussions of their actions.
Re: The Stupid Programmer Manifesto
#27This post is the programmer equivalent of teenage girls posting photos of themselves captioned with "I'm so ugly" to farm praise from their friends. I have come to dislike this growing trend that celebrates mediocrity and failure. Posting proudly that you are stupid, terrible and incompetent seems to result in applause and high praise. Why? Why is that a good thing? I hope this was intended to be a parody.
You may be experienced, but a large part of people in our industry are just out of school and don't have the experience to sort through it.
Re: The Stupid Programmer Manifesto
#28How can you store program state on disk like that? You'd need serialization and deserialization. A DB might be easier.
Re: The Stupid Programmer Manifesto
#29This reminds me of a bit of advice from Austin Kleon that I've used frequently -- "Make bad art, too"[^1]:
> “Good” can be a stifling word, a word that makes you hesitate and stare at a blank page and second-guess yourself and throw stuff in the trash. What’s important is to get your hands moving and let the images come. Whether it’s good or bad is beside the point. Just make something.
This is a perspective I have to come back to, as an engineer building enterprise-scale things, when I'm working on small-scale projects. I don't need to use the same tools I use at work, I can pick "bad"[^2] architecture, I just need to build _something_.
[^1] https://austinkleon.com/2020/04/15/make-bad-art-too/ [^2] "Bad" in that I know precisely how and when and what would bite me in the ass when I try to scale it.
Re: The Stupid Programmer Manifesto
#30How can you store program state on disk like that? You'd need serialization and deserialization. A DB might be easier.
> How can you store program state on disk like that? You'd need serialization and deserialization. You need serialization and deserialization when interacting with a DB, too. You're trusting a library to do most of that for you. This is the difference between a junior engineer and a senior engineer. As a junior engineer, you don't trust your own judgement and use a library. As a senior engineer, you don't trust the l…
What? No. As a senior engineer you realize that loading data from a database is a solved problem, has nothing to do with the core use cases you're addressing, and would be a massive waste of time to build yourself.