Python, and dynamically typed languages in general, are known as being great for beginners. However, I feel that while they’re fun for beginners, they should only be used if you really know what you’re doing, as the code can get messy real fast without some guard rails in place (static typing being a big one).
Code never lies. Comments sometimes do.
I’ve found Docker helpful when I want to use it to build binaries or use CLI tools that may not be available directly on the CICD platform. Also, Docker makes it easier to run the same code on MacOS that I ended up running on a Linux CICD server.
What would you consider to be overuse of containers?
Damn, this meme slaps so hard. I didn't chase any friends down there, but I thought it sounded like a secret nerd club that I wanted to be a part of. Using Linux is a part of my daily life now, professionally and personally, 10 years later.
First thing: Ubuntu is the right choice. As far as I’m aware, having run Linux as my main desktop OS for almost a decade and playing with several flavors (…which includes Arch btw 😎), it’s the most polished out of the box desktop experience for someone completely new. It will also likely be the OS with the most Q&A existing on the web for problems you won’t be the first to have encountered.
Secondly, and maybe this should be first, and it sounds like you’ve already got this part down: you have to want to do this. Linux is just not mainstream for the majority of desktop computer users. If you’re not really wanting to do this, you’ll be frustrated when this isn’t the same experience as Windows. (but it sounds like you’re sick of the Windows experience. That’s what started me into Linux years ago.)
Lastly, as far as my quick Lemmy comment goes: Embrace the terminal! You can get around for a while as a Linux n00b on Ubuntu without opening that terminal, but at the end of the day, the *nix shell commands are what make working with Linux great.
The switch will take time. You’ll occasionally need to look up how to do stuff that may have felt simple in Windows… and that will usually be installing and running software that targets Windows only. However, the support for that sort of stuff gets better and better with time. Wine🍷 has come a long way.
It’s worth the journey IMO. For me, I was a PC gamer and I jumped straight into Linux with 0 experience. I learned a lot, spending a lot of time trying to make my Windows games run on Linux. Friends at LAN parties would joke about how I’d spend half the LAN party trying to get my games to run right.
The jokes were a good laugh, but my career shifted since then and my Linux experience carried right over into software development. Everything I deploy is on Linux servers or in Docker containers. All those years fooling around and tinkering with Linux as a PC gamer were loading me with experience that people would pay me for one day.
Good luck! 🐧
Go programmer here: What does Go’s simplicity have to do with dependency injection? What does a language itself have to do with dependency injection?
Reading your post and not being personally familiar with your work, I do wonder, perhaps your “extremely complex projects” wouldn’t be so extremely complex if you practiced dependency injection?
How do you unit test your extremely complex projects if your business logic carries the additional responsibility of creating objects?
Question: does anyone here expect a giant billion(s) dollar company to not embrace, extend, extinguish regarding this protocol which these federated services are built upon?
You need to understand very soon that you can no longer have projects assigned to you. Everything your management asks you to do is actually something that they want you to ensure gets finished- you are not supposed to do it yourself. Delegate, follow up, and guide someone else to do it.
The moment you take a project on by yourself, you’ve become a huge bottleneck for your entire team’s productivity. Your team needs your guidance and help, and you can’t offer that if you’re designing, coding, and debugging a project on your own.
98% of coding for you should be paired programming from here on out, where you are not the developer at the keyboard. You are providing suggestions and guidance so that experience can transfer to your junior team members.
Edit: You are not just a “tech lead,” you are a manager if you have direct reports.
In my experience, 9/10 times a stored procedure is code that should just be SQL executed from your application (as in, your application sends the query text to the db, rather than that text being stored in the database and executed via calling a stored procedure).
If it’s necessary for performance, sure, go for it. Satisfy your requirements. If it’s not necessary for performance, ask yourself why it needs to be a stored procedure deployed to the database.
We should all be using Signal, all of the time. It’s accessible to those not technically inclined, and I feel like that’s a requirement now if a personal-use technology wants to get off the ground.
Edit: this is not to detract from matrix, which seems like a great technology for privacy
….I’ve been using :wq for years…
I was so relieved to never need VM’s again after discovering Docker.