The worst is when you start to have conversations in your head in multiple voices. It gets crowded sometimes.
The worst is when you start to have conversations in your head in multiple voices. It gets crowded sometimes.
Why, can’t you ask yourself? 😁
You aren’t wrong… But everything with extended use needs to be maintainable. Making a change in 5 places sucks.
Plus, that’s what open-closed principle is all about. Instead of adding additional functionality to current working code, you extend and modify.
My 4 host machines run debian (proxmox). I have a lot of different guest flavors running though, debian, fedora, rocky, one old guest still running Ubuntu and even a mint sandbox machine.
I probably have a bit more complicated self host than others because I am using it both for my useful internal services (jellyfin, git, pihole, etc.) I also run a whole lot of services for learning, such as kubernetes and dns. Plus a whole lot of other mostly useless stuff that I only use to test different architectures or automations that come in handy as an SRE.
The thing to think about is reusability. Are you copying and pasting code into multiple places? That’s a great candidate to become a class. If you have long lived projects (i.e. something you will use multiple times over a lot of years) maintainability is important. Huge functions and monolithic applications are very hard to maintain over time.
Break your functionality out into small chunks (methods and classes). Keep it simple. It may take a while to get used to this, but your time for adding additional functionality will be greatly improved in the long run.
A lot of great programmers were terrible at one time. Don’t let your current lack of knowledge of principles stop you from learning. One of the biggest breakthroughs I had as a programmer is changing how I looked at architecting applications. Following SOLID principles will assist a lot in that. Don’t try to understand and use these principles all at once, take your time. Programming isn’t what you make your living with, it’s a tool to help you be more efficient in your current role.
Realize that becoming a more effective programmer is different for everyone. Like you, I was self taught. I was a systems and network engineer that decided to move into software development. I’ve since moved into a role that takes advantage of all the skills I’ve learned through the years in SRE. like you, a lot of what I write now is about automation and analysis.
The NFL is a non profit, the teams are not. It still doesn’t make it right, though.
You’re lucky. I left FOSS dev because I got tired of my free time being abused by people like the one in your post
I call it d-bag for short.
think we’re dead (we’re not!)
Speak for yourself.
Why would I need that?
Gen-X, and have been working in technology for 27 years. I run windows as a daily driver but also am running a few host machines in my house with multiple Linux VMs. It’s a mix of RockyOS, Ubuntu and arch VMs. Not a single GUI on any of them.
The company that maintains the machines has a contractually enforced monopoly over the franchisee’s. This means it’s impossible to get parts or fix the machines outside of them doing it.
And add to the voices? Nuh uh.