Yeah. I’m starting to think the misspelling is not deliberate, but ironic - it’s one thing to have guns and a written warning saying you will use them. It’s another to loudly convey that you’re this dumb and also have guns.
Yeah. I’m starting to think the misspelling is not deliberate, but ironic - it’s one thing to have guns and a written warning saying you will use them. It’s another to loudly convey that you’re this dumb and also have guns.
It’s worse than that. They think that toeing the line and refusing to deviate is the strong position to take here. Always has been.
Thank you!
I firmly believe this is how we wound up with tabs as a feature in the first place.
Thank you! I want to ::sniff:: thank my coach, the whole team ::sniff::, and especially my mom for helping make this happen! ::sniff:: Love you mom!
Here’s a version for my fellow gluten-free peeps:
I just want to echo your sentiment with something I’ve been saying here for a while now:
Do not confuse information technology use for computer literacy.
Honestly, this is why I tell developers that work with/for me to build in logging, day one. Not only will you always have clarity in every environment, but you won’t run into cases where adding logging later makes races/deadlocks “go away mysteriously.” A lot of the time, attaching a debugger to stuff in production isn’t going to fly, so truly “printf debugging” like this is truly your best bet.
To truly do this right, look into logging modules/libraries that support filtering, lazy evaluation, contexts, and JSON output for perfect SEIM compatibility (enterprise stuff like Splunk or ELK).
Heisenbugs are the worst. My condolences for being tasked with diagnosing one.
Last time I did anything on the job with C++ was about 8 years ago. Here’s what I learned. It may still be relevant.
const
, constexpr
, inline
, volatile
, are all about steering the compiler to generate the code you want. As a consequence, you spend a lot more of your time troubleshooting code generation and compilation errors than with other languages.valgrind
or at least a really good IDE that’s dialed in for your process and target platform. Letting the rest of the team get away without these tools will negatively impact the team’s ability to fix serious problems.1 - I borrowed this idea from working on J2EE apps, of all places, where stack traces get so huge/deep that there are plugins designed to filter out method calls (sometimes, entire libraries) that are just noise. The idea of post-processing errors just kind of stuck after that - it’s just more data, after all.
Yup. Nobody else gets those cookies.
“this is as far as you can go if you don’t want to get involved in management”
Yes. That exactly. This typically comes with a nice perk: Principals are supposed to have the same clout as lower-level managers. Which is to say they usually report to Directors or even the CTO in some organizations.
Another one is “Independent Contributor” which is similar but, as the name would suggest, is very self sufficient and does not work on (or for) a team. They’re basically one-man engineering shops and are expected to perform well everywhere in the company’s tech and talent stacks. As a result, ICs are very rare.
The other pivot point is The Pragmatic Programmer, which is totally understandable.
That book does a good job of grounding the reader through examples and parables from everywhere else but IT. By the end, you realize that good software engineering makes the best of general problem-solving skills, rather than some magical skillset peculiar to computing. You wind up reaching a place where you can begin to solve nearly any problem through use of the same principles. So @codex here, perhaps effortlessly, went on to management instead.
Same. Let’s rock.
Printed on the bomb:
| In case of accidental detonation: have a nice day. Thanks for reading.
I’ve tried to enjoy IPAs, really. I’m not discounting the role of interesting terpenes and flavonoids here, but the raw in-your-face excessive bitterness of IPA-level hops pushes all that great stuff so far from the stage of my experience, that it’s all left waiting in the lobby to get seated. For me, it’s like someone mixed LaCroix, light beer, and a drop of dish soap in a glass. Every time.
Thanks, I hate it.
But seriously, I just held a credit card for a solid minute. This is sobering. Bio-accumulation is a bitch.
Yup. This goes back to the Southern strategy which was brought to the fore by the Nixon campaign (although it was in play since before then). From that era we also get this chilling warning from Barry Goldwater:
Mark my word, if and when these preachers get control of the [Republican] party, and they’re sure trying to do so, it’s going to be a terrible damn problem. Frankly, these people frighten me. Politics and governing demand compromise. But these Christians believe they are acting in the name of God, so they can’t and won’t compromise. I know, I’ve tried to deal with them.
Common language used to dismiss bad decisions like this:
1 - Oh, did you turn off cookies or clear your cache? Sorry about that.
While I think Orwell’s “newspeak” was contrived, it did illustrate the point in strong relief as something unfamiliar… at least at first. But I don’t think he was predicting the future. Instead, I think he was warning the reader of what dangers are already with us.
Honestly, I think this has always been a thing. The spoken word is often inexact as a form of communication efficiency; if the other party has the same ideas in their head as you, pronouns, idioms, recalling past events, are all powerful ways to compress dialogue. However, that same inexactness leaves the door open for doublespeak, dogwhistles, and suggestion in place of fact. Language as a means of control is just in how you use it; the underlying mechanisms were always there.