Amazing how much easier it is to motivate yourself when you have the ability to make significant decisions on the fly, based on the immediate feedback you receive from the system, instead of spending half your time hitting your head against a wall attempting to sus out self-contradictory instructions given by people who don't actually understand how any of it really works.
The problem is that every living entity in a 10 kilometer radius around me, seems to be hellbent on getting me to do anything but coding. Refining work estimates, fixing badge access rights, fixing a driver issue, telling people that you cannot do 1000 things at the same time, teaching the new developer how shit (doesn't) works, mangling Jenkins into a functional state again, explaning that thing I did a year ago but is only now used (it was very high prio a year ago), writing documentation that noboby ever reads, progress meetings, specialty group meetings, knowledge sharing meetings, company wide meetings, etc.
Just say no. Decline meeting requests. Set your own priorities. It’s not like they can fire the guy who operates the CI and apparently the physical security systems as well while still writing code for high priority projects.
Agreed on all of that. As I understand it, periods of better worker markets make for less of that nonsense people are willing endure. I've seen a recent trend of corporations turning up the BS because the job market has been tightening up and people are less willing to take risks.
I had a team of contractors working on some code. They had learnt in their previous jobs to document everything in the work wiki (aside from the design documents which have their own repository)
And it was good they did, since the project was put on hold due to too much mismatch between backend and front, and all the contractors were fired (a day before Xmas) leaving the useless doco as the best reference for whoever needs to resurrect our code
Yep, programming is fun but working as a programmer not so much. For me writing software is a creative activity. It's fun to come up with problems and find solutions for them. In my personal projects I decide what problem I want to solve, choose the technology I think will be fun to solve it in and then come up with a solution I like.
At work you are usually handed a problem you don't care about (we're decommissioning X, you don't have to know why, just change everything to use Y), the solution is described in detail by someone else and you just have to turn it into some code using 5-10 years old stack.
Fortunately at my current job I mostly do projects without much technical oversight (proof-of-concept type project) so I can choose how I want to do then. I dislike the company culture but I know that moving somewhere else would mean going back to boring coding agian.
Where I work there is a hardware test, where the voltage needs to be changed on the power supply like 8 times. Currently it's done by hand.
I gave that to a student with the description that I want that automated, let production show you how the test is done. If you have other ideas how to improve it, just do it.
This was 8 working days ago for the student. She still hasn't started, because she wants an exact description what needs to be done. If you want me to write down how exactly everything needs to be done, I might just write it myself in python and be done with it.
Manually optimizing the code I wrote in C, so that it runs noticeably slower and has all sorts of stupid bugs that weren't there before. All in a good night's work.
If you know that you do. What you probably do not. A proper C/C++ compiler (gcc) will almost always produce better/more optimized ASM than a human ever could.
My first job right out of college I was writing assembly for some epically old industrial equipment. That shit runs on its own language that was only ever used on that piece of equipment. Usually x86 but with some wacky modifications. There's no compiler for that, just a manual the size of a textbook and a million chicken scratch notes in it that's half covered in grease. I'm so glad I don't do that anymore.
I like my coding job as long as I have the space to do what I need to do. Without that I just get stressed out and way less productive. The older I get the better I am at setting boundaries and finding the right kind of jobs.
I've been working without a degree (missing a few credits from graduating) in the industry for a bit less than a decade. I took an online class which gives college credits and it's just an endless barrage of fizzbuzz level stuff. Every time I've spent a few hours on them I've felt that I could've used that time better by masturbating / doing drugs / playing fall guys.