• (nodebb)

    TRWTF is that the production infrastructure and day-to-day office IT are apparently in the same budget. The old CTO probably has similar qualifications to the new (future) one and I would not really bet on competent CFO either.

  • Allie C (unregistered)

    Honestly doesn't seem that bad? He was willing to provide context, and did it without sugar-coating (i.e., "I didn't know what I was doing").

    But this guy definitely shouldn't be handling budgetary decisions....

  • my name is missing (unregistered)

    Peter Principle is a mighty powerful process. Promoting an incompetent person might get them out of your hair, but cause higher levels of havoc elsewhere.

  • aalien (unregistered)

    Are you really going to just leave as hanging, and not tell us how can a bunch of shell calls start segfaulting after a kernel upgrade?

  • Prime Mover (unregistered) in reply to aalien

    I do declare that it reads as though OP has the attention span of a goldfish, and can't finish one story before starting on another, and can't even focus on that.

    I do hope she's better at concentrating on her proj, oh hang on I've just noticed, something's confusing me about the status of the server racks, so I sure do hope that gets resolved.

  • Sole Purpose Of Visit (unregistered)

    I always think (and sincerely believe) that if you write something, you own it. This even applies when I move jobs, to some extent -- if a previous cow-orker phones me about a problem, I'll at least try to offer advice.

    It's fair to assume that slithery reptiles halfway up the greasy pole do not think the same way.

  • (nodebb) in reply to aalien

    Dunno, this part of the article might be a clue:

    and the C++ code didn't contain any logic to handle error, exceptions, or even verify that the return buffers contained valid data

  • ZZartin (unregistered)

    How expensive were those laptops.....

  • Alex Vincent (google)

    "When all you have is a hammer..." meets "C++ footgun".

  • tbo (unregistered) in reply to Prime Mover

    I'm not sure if you're aware, but they edit and embellish the stories submitted before they're posted on the site. It does make them a bit more entertaining to read.

  • Prime Mover (unregistered) in reply to tbo

    And yet here we are.

  • Sole Purpose Of Visit (unregistered) in reply to Alex Vincent

    It also helps to read the OP.

    Not a C++ problem. A shell script problem.

    Although, I would agree: 90% at least of "C++ programmers" should never be let near the language.

    Much as 90% of Americans should never be let near a firearm.

  • (nodebb) in reply to my name is missing

    That doesn't really sound like Peter principle which is more about continually promoting a compentant employee until they find themself in a job they have no aptitude for.

  • Quirkafleeg (unregistered)

    To paraphrase Scott Adams (Dilbert): "Would you let a manager of a hospital perform brain surgery on anyone, or just let them sit in an office making pointless pie charts?" Unfortunately, businesses are too often unwilling to admit that they hired the wrong person in the first place, preferring to move them to a new position where they can do less harm, instead of just getting rid of them in "restructuring" process. TRWTF is that this company kept giving the guy positions where he could do more harm.

  • SG (unregistered)

    Sounds familiar... I remember using C++ for all sorts of inappropriate things when I was first starting out as a professional developer. Some kind of file transform process, which would have been far better written in something like Perl, had I known it at the time... but back then, I knew Basic and C, and C++ was the newest tool in the arsenal, so that's what was used.

  • Prime Mover (unregistered) in reply to Quirkafleeg

    So you know when to polish your CV when someone comes to you and says:

    "We need you to generate some pie charts, top priority, nothing more important, you're 100% on this. See you next Tuesday."

  • (nodebb) in reply to Steve_The_Cynic

    The intriguing bit is not why the C++ program segfaulted but why it started doing it after a kernel upgrade. Pretty much the only hard and fast rule that Linus Torvalds employs is that you don't break user space. Well here we seem to have broken user space.

    system has a pretty simple API. You pass it a char* (nul terminated of course) and it returns a small integer. When you call it, it forks a new shell and passes the string to it to execute. It blocks until the shell exits and returns the shell's exit status to the caller. I can't think of any changes to the kernel that could affect that. Possibly the C library was upgraded at the same time (system is in the C library: it's not a system call) and something went wrong there, but again, the API is so simple I can't think of anything that would cause a segfault that didn't cause a segfault before.

    I suspect the problem lay elsewhere, but given that they rewrote the code as a shell script, they probably never identified it.

  • I dunno LOL ¯\(°_o)/¯ (unregistered)

    I still get people asking me about a circuit board I designed over 15 years ago, and it was made in a hobbyist context.

  • David Mårtensson (unregistered) in reply to Prime Mover

    Or, they would just think as Wally, "finally they assign me something useless enough that nobody will notice I did not bother doing it" :P

  • ZZartin (unregistered) in reply to Jeremy Pereira

    The intriguing bit is not why the C++ program segfaulted but why it started doing it after a kernel upgrade. Pretty much the only hard and fast rule that Linus Torvalds employs is that you don't break user space. Well here we seem to have broken user space.

    The upgrade likely changed the format of some of the returns from the commands in ways the C++ program couldn't handle and so it crashed.

  • jay (unregistered) in reply to Prime Mover

    I did a Google search looking for treatments for my ADHD, and I learned a lot about the economy of Poland.

  • Lőrinczy, Zsigmond (github)

    My guess: it was a case of uninitialized variable. Its (accidental) content had been zero before the upgrade, but wasn't zero afterward. (Valgrind could be the first try to check this.)

  • (nodebb) in reply to Jeremy Pereira

    The intriguing bit is not why the C++ program segfaulted but why it started doing it after a kernel upgrade. Pretty much the only hard and fast rule that Linus Torvalds employs is that you don't break user space. Well here we seem to have broken user space.

    For sure, although I'd lean toward a simultaneous libc or libc++ upgrade, just like you did. And it might fall into the category of "undefined behaviour is undefined" as well.

  • (nodebb) in reply to tbo

    "they edit and embellish the stories submitted before they're posted" and from time to time they f... it doesn't come out right.

  • Denly Scott (unregistered)
    Comment held for moderation.
  • Mithyla Maria (unregistered)
    Comment held for moderation.
  • Myhinditracks (unregistered)
    Comment held for moderation.

Leave a comment on “Promotional Development”

Log In or post as a guest

Replying to comment #:

« Return to Article