I myself am a fan of free nights and weekend calling.
The brewery across the street from my place sounds like it has a local singer/karaoke, singing this with the patrons.
What's that word for knowing that feeling from 30+ years ago when this song was on the radio in the car going to school?
www.youtube.com/watch?v=WRUw...
Most of the time, it was writing test bench automation at the GNU/Linux or Windows level, creating data processing tools, or writing user's guides for my apps, with very little time actually dedicated to working on the product my company sells.
Sure, I've been with my department for ~8 years, but aggregate, I'd probably say I had <6 months of actual embedded development.
In that case, I'm 35 years old and have 25+ years experience in embedded systems.
Please hire me.
Manager: "You can't say you don't have 10 years experience in embedded systems development."
Me: "I don't think it would be accurate to call Windows an embedded system ๐ค."
Rust and Go devs, y'all can stop fighting about which language is better.
I have found one that's clearly the best:
www.youtube.com/watch?v=tDex...
The idea that software languages and tools are just born because someone needed something done with something that didn't exist yet and not because they wanted it to become big ๐ค
It's not to say to avoid rapid prototyping. In fact, I'd even say prototyping until I get to the point of knowing as quickly as possible is the point.
But actively avoiding defining what's needed? That's the antithesis of engineering.
Your mind will take the shape of what you frequently hold in thought, for the human spirit is colored by such impressions.
New Two's Complement Episode: How Fast is Fast?
Ben interviews Matt with a deceptively simple question: make my program go fast. 44 minutes later, robot dogs are falling over, Grace Hopper's wire turns up, and Matt still hasn't gotten the job.
Listen at: twoscomplement.org#podcast/how-... :)
My design process is breadth first design, and then fill in the details of each module.
Having the skeleton of the app/document is common knowledge, and taught in school from elementary school through college, so it's just a tad worrying when a professional engineer says to...not do that.
Imagine writing code in a top-down single file, single function 10K C app.
When we start without knowing exactly what you're looking for, how do you know what you're missing?
It's so foreign to me the idea of starting anything new without defining what's needed.
How do folks just start writing a document or start a new code base without having an inkling of an idea of what the structure should be first?
As a fan of words/names and the lock picking lawyer on YouTube, I can say I like the name of his and McNally's tools -- the "Folding McNally Entry" and the "Folding Utility" tools.
Why, you ask? No particular reason...
www.youtube.com/watch?v=4xsT...
It looks like it was just missing a dependency path
I think I just figured out why I'm so burnt out at work.
If you're accountable for outcomes, but have no real decision making power, then you're going to be constantly locked in a state of stress with no real relief.
I took over a C++ application as a junior engineer, having not known C++ before.
The previous 2-3 main devs copy/pasted code absolutely everywhere. After discovering generics, I cut the line count down by tens of thousands of lines into <20 lines.
It made the metrics look bad for some reason ๐
I've had colleagues who figured that generating code (even inefficient code) for the sake of generating code as the end goal, and it always frustrated me.
While we can enjoy the language/style of coding, code itself is supposed to be a means to an end, not the end itself.
Also, I cannot get over how useful regression tests are.
There's a piece of mind knowing that any new feature I add isn't breaking any old feature, while also revealing unnecessary complexity/redundancy using code coverage.
Right now each app is like a different super hero in the MCU/X-Men series with individual abilities, but eventually, I'll try combining them all into a Superman app that's like the everything software with all the features + some interpreted scripting language on top.