• (cs)

    String comment = "<whatnumber>"; comment.replace("<whatnumber>","frist");

    HR is the reason for all the resume stupidity. There is an equally asinine resume requirement for practically every job out there. I would not be shocked if HR even required new HR hires to have 5 years ACA (obamacare for the rightwingers) experience.

  • (cs)

    I have 15 years of experience writing comments on this site.

  • ANON (unregistered)

    Is this site very slow today or is it just me?

  • ANON (unregistered)
    Obviously, since this “senior” developer had been using C# since before it was invented, he was using it before they had added methods like string.Format(), or any sort of elegant date-formatting.

    Maybe he was already using it when Word was still the IDE.

  • (cs) in reply to ANON
    ANON:
    Is this site very slow today or is it just me?
    Indeed, you are very slow today.
  • (cs) in reply to ANON
    ANON:
    Is this site very slow today or is it just me?
    For a while today dailyWTF was TRWTF..
  • Smug Unix User (unregistered)

    String.Format({0} is {1} and he shouldn't {2}, "His code","great", "change it.")

  • Thomas Magle Brodersen (unregistered) in reply to ANON
    ANON:
    Is this site very slow today or is it just me?

    Both.

  • (cs)

    TRWTF is that someone thought this was a front page WTF. Or am I missing something?

  • (cs) in reply to ANON
    ANON:
    Is this site very slow today or is it just me?
    FRIST
  • (cs)

    I love how he replaces <client> twice. Just in case the client name contains <client> so they can replace it again.

  • (cs) in reply to devjoe
    devjoe:
    I love how he replaces <client> twice. Just in case the client name contains <client> so they can replace it again.
    Beware of the meme...
  • Mickey (unregistered)

    Of course this is a front page WTF. This developer has 15 years of experience! This is excusable for a new developer, somebody in college, or in their first couple of years in the industry. Even so, TRWTF is that this wasn't caught in a code review.

  • emaN ruoY (unregistered) in reply to darkmattar
    darkmattar:
    String comment = "<whatnumber>"; comment.replace("<whatnumber>","frist");

    HR is the reason for all the resume stupidity. There is an equally asinine resume requirement for practically every job out there. I would not be shocked if HR even required new HR hires to have 5 years ACA (obamacare for the rightwingers) experience.

    Not to get too off subject, but I thought it was ObamaCare for the LeftWingers. I just call it the PPACA.

  • Ryan V (unregistered)

    TRWTF is how he had 15 years of experience in a language that's only 13 years old...

  • I like to repeat the point aswell (unregistered) in reply to Ryan V
    Ryan V:
    TRWTF is how he had 15 years of experience in a language that's only 13 years old...

    No... TRWTF is how he had 15 years of experience in a language that's only 13 years old...

  • Jasper (unregistered)

    Ok, this is not the most elegant way of formatting strings, but this is a bit... meh. Not a spectacular failure because of some spectacularly bad code.

  • nitePhyyre (unregistered) in reply to darkmattar
    darkmattar:
    HR is the reason for all the resume stupidity. There is an equally asinine resume requirement for practically every job out there.
    Indeed. Senior IT positions require at least 5 years experience administrating Windows 8 machines. At least, that's according to HR.
  • faoileag (unregistered) in reply to devjoe
    devjoe:
    I love how he replaces <client> twice. Just in case the client name contains <client> so they can replace it again.
    Bah, can be improved. Recursion will be your friend here :-)
  • Valued Service (unregistered) in reply to Steve The Cynic
    Steve The Cynic:
    devjoe:
    I love how he replaces <client> twice. Just in case the client name contains <client> so they can replace it again.
    Beware of the meme...

    I heard you like replacing stuff in the stuff you replaced, so I put <client> in the client's name so you could replace <client> from your <client>.

  • drake (unregistered) in reply to faoileag
    faoileag:
    devjoe:
    I love how he replaces <client> twice. Just in case the client name contains <client> so they can replace it again.
    Bah, can be improved. Recursion will be your friend here :-)

    agreed - he should have used functional programming. It's always better because Google uses it and reasons.

  • Anonymous Paranoiac (unregistered) in reply to Mickey
    Mickey:
    Of course this is a front page WTF. This developer has 15 years of experience! This is excusable for a new developer, somebody in college, or in their first couple of years in the industry. Even so, TRWTF is that this wasn't caught in a code review.

    Code reviews? What are those?

  • Valued Service (unregistered) in reply to Jasper
    Jasper:
    Ok, this is not the most elegant way of formatting strings, but this is a bit... meh. Not a spectacular failure because of some spectacularly bad code.

    curious.... perversions.... in information technology....

    four dots.... four... dots....

  • faoileag (unregistered)
    the article said:
    This “senior” developer’s resume proudly proclaimed that he had 15 years of experience developing in C#
    There is a common misconception here: "15 years of experience" do not equal "15 years of understanding C#".

    You can easily have X years of experience without understanding the underlying paradigma of a language or even its more obvious wtfs.

    As a (junior) developer, probably the biggest problem is getting beyond the Dunning-Kruger-Threshold of knowledge. For this, a lot rests on the shop you work at - if your coworkers also don't know or just don't care about the code you write, it is pretty hard to overcome that first hurdle.

    And of course you need to have the mentality - the basic syntax of OO and procedural languages is usually more or less the same (for, if etc) so you can get things to work in a new language pretty fast. However, to do things in a way that not only works but also is the right way in that language takes an active interest, learning and, of course, tasks beyond the merely trivial. And usually a bit more time, at least in the beginning.

  • ¯\(°_o)/¯ I DUNNO LOL (unregistered) in reply to ANON
    ANON:
    Obviously, since this “senior” developer had been using C# since before it was invented, he was using it before they had added methods like string.Format(), or any sort of elegant date-formatting.

    Maybe he was already using it when Word was still the IDE.

    And of course he was saving the files in the ".doc#" format. She pounds C Pound by the C Shore.

  • Herwig (unregistered)

    2002 I applied for a job at a company that created web solutions with PHP and MySQL. They proclaimed they're having more than 25 years experience in this. Unfortunately their website (auerwebsolutions.at) is not available any more... (it really looked like designed in 1977)

  • MrBester (unregistered) in reply to Herwig
    Herwig:
    2002 I applied for a job at a company that created web solutions with PHP and MySQL. They proclaimed they're having more than 25 years experience in this. Unfortunately their website (auerwebsolutions.at) is not available any more... (it really looked like designed in 1977)

    That's combined experience from all the developers. So, if there are 10 developers, for the most part they only need 1 year of PHP and MySQL apiece.

  • void* (unregistered) in reply to Herwig
    Herwig:
    2002 I applied for a job at a company that created web solutions with PHP and MySQL. They proclaimed they're having more than 25 years experience in this. Unfortunately their website (auerwebsolutions.at) is not available any more... (it really looked like designed in 1977)
    That's not unusual for a company that employs 25 people, each with 1 year's experience.
  • Herwig (unregistered) in reply to void*
    void*:
    Herwig:
    2002 I applied for a job at a company that created web solutions with PHP and MySQL. They proclaimed they're having more than 25 years experience in this. Unfortunately their website (auerwebsolutions.at) is not available any more... (it really looked like designed in 1977)
    That's not unusual for a company that employs 25 people, each with 1 year's experience.
    you nailed it. So it wasn't too wrong that I felt like a senior guru during the interview with my 36 months experience?

    CAPTCHA: tristique

  • faoileag (unregistered) in reply to Herwig
    Herwig:
    void*:
    Herwig:
    2002 I applied for a job at a company that created web solutions with PHP and MySQL. They proclaimed they're having more than 25 years experience in this. Unfortunately their website (auerwebsolutions.at) is not available any more... (it really looked like designed in 1977)
    That's not unusual for a company that employs 25 people, each with 1 year's experience.
    you nailed it. So it wasn't too wrong that I felt like a senior guru during the interview with my 36 months experience?
    Looking at http://marc.info/?l=imp&m=100107234014608&w=2 you probably would have been, yes :-)
  • (cs)

    It's not that uncommon for an experienced developer to stick to the feature subset of an old version of a language, since that is what he originally learned and where he got his experience, and it "works for him".

    For that reason, it's often that newbies who have just learned with the latest version are used to a lot of new features that the experienced programmer never touches, and everyone wonders why the rookie knows more than the senior.

  • Herwig (unregistered) in reply to faoileag
    faoileag:
    Herwig:
    void*:
    Herwig:
    2002 I applied for a job at a company that created web solutions with PHP and MySQL. They proclaimed they're having more than 25 years experience in this. Unfortunately their website (auerwebsolutions.at) is not available any more... (it really looked like designed in 1977)
    That's not unusual for a company that employs 25 people, each with 1 year's experience.
    you nailed it. So it wasn't too wrong that I felt like a senior guru during the interview with my 36 months experience?
    Looking at http://marc.info/?l=imp&m=100107234014608&w=2 you probably would have been, yes :-)
    The cruelty of internet: it never forgets...
  • (cs)

    I must say I find interesting the idea of building a complex string like this by replacement, assuming this isn't in some performance critical inner loop.

    It is self-documenting. The first line of the code nicely lays out what the rest of the code is building. Other solutions using more fancy formatting functions or string building can tend to obscure the intended string format under piles of implementation details. One could relegate this documentation function to a comment, but it would quickly become out-of-date.

    The code isn't great, of course. The replacements should be done in the order the placeholders appear in the string (and not be duplicated, of course) and the date formatting should use best practices.

  • kartoffel (unregistered) in reply to faoileag
    faoileag:
    As a (junior) developer, probably the biggest problem is getting beyond the Dunning-Kruger-Threshold of knowledge. For this, a lot rests on the shop you work at - if your coworkers also don't know or just don't care about the code you write, it is pretty hard to overcome that first hurdle.

    Had to look this up. Knew there was a reason all those terrible drivers think they are good ones. I, of course, really am a good driver.

  • merb (unregistered)

    Besides that C# appeared in 2000 and someone therefore cannot have "15 years of experience developing in C#", XLSX extensions weren't born before 2007. This code is at max a little over 6.5 years old. Something tells me this story is made up...

  • F (unregistered) in reply to merb
    merb:
    Besides that C# appeared in 2000 and someone therefore cannot have "15 years of experience developing in C#", XLSX extensions weren't born before 2007. This code is at max a little over 6.5 years old. Something tells me this story is made up...

    You wicked cynic. Every word on this site is true. Go away and don't come back until you have repented your evil ways.

  • Gul Madred (unregistered) in reply to Valued Service

    There are five dots!

  • (cs)

    Y'know, this is such a sad realization, but code injection attacks will be with us for the remainder of the information age. In this example, with user supplied strings, that whole cascading replace thing could let a malicious user do whatever they wanted to the resultant data. Without getting too pedantic about the exact semantics of an attack, it's this kind of thoughtless design that creates these attack vectors, and it'll never stop. Parametrized queries are a good solution to SQL injection, yet the PHP / MySQL people are still persisting with this MySQLReallyGoodEscapeStringV2ThisOneReallyWorksIPromise() bullshit. There are a few strategies to mitigate CSS attacks, but they need to be followed meticulously and to the letter in order to work comprehensively.

    Honestly, this guy may have invented a new malware vector without even thinking about it. But how many devs are there in the world doing exactly that, every day. Damn it, I'm gonna resign and move to Russia, drink vodka and steal all your internetz, easier than trying to stop it.

    At least we've finally gotten close to the funeral of the buffer overflow exploit. Kids don't even know how to code C any more.

  • faoileag (unregistered) in reply to F
    F:
    merb:
    Something tells me this story is made up...

    You wicked cynic. Every word on this site is true. Go away and don't come back until you have repented your evil ways.

    Well, this is a Remy-Porter-Story so it's cornified but probably true.

    See this Monday's story for a more "embellished" but devoid-of-unicorns one.

  • anonymous (unregistered) in reply to caffiend

    They tried to hold a funeral for the buffer overflow exploit once. -2147483648 people attended.

  • RandomGuy (unregistered)

    The article does not say that he has 15 years of C# experience, only that his resume proclaims it. However, I assume the code dates back to before the year 1000, otherwise I find no logical explanation for this:

    time.Year.ToString().PadLeft(4, '0'))
  • (cs) in reply to darkmattar
    darkmattar:
    String comment = "<whatnumber>"; comment.replace("<whatnumber>","frist");

    HR is the reason for all the resume stupidity. There is an equally asinine resume requirement for practically every job out there. I would not be shocked if HR even required new HR hires to have 5 years ACA (obamacare for the rightwingers) experience.

    Just because someone opposes a law doesn't mean they don't know what it's called. Settle down, partisan.

  • faoileag (unregistered) in reply to Herwig
    Herwig:
    faoileag:
    Looking at http://marc.info/?l=imp&m=100107234014608&w=2 you probably would have been, yes :-)
    The cruelty of internet: it never forgets...
    I was actually a bit in doubt whether to post the link. I don't like to make fun out of someone who asks, even if the question is very basic or looks stupid. After all, he or she is willing to learn. But this post seemed to shed some light on the workings of the company, so I thought oh well, it why not.
  • (cs) in reply to anonymous
    anonymous:
    They tried to hold a funeral for the buffer overflow exploit once. -2147483648 people attended.

    That's almost half the world's population if you're platform doesn't have signed types. So it really is dead </Delusion>

  • faoileag (unregistered) in reply to RandomGuy
    RandomGuy:
    However, I assume the code dates back to before the year 1000, otherwise I find no logical explanation for this:
    time.Year.ToString().PadLeft(4, '0'))
    Well, Japan is currently in Heisei 25, which, assuming the cultural setting of the machine is on a japanese calendar, would get you "0025" from time.Year.ToString().PadLeft(4, '0').
  • Ozz (unregistered) in reply to darkmattar
    darkmattar:
    String comment = "<whatnumber>"; comment.replace("<whatnumber>","frist");

    HR is the reason for all the resume stupidity. There is an equally asinine resume requirement for practically every job out there. I would not be shocked if HR even required new HR hires to have 5 years ACA (obamacare for the rightwingers) experience.

    As someone who lived in the U.K. and suffered the British National Health Service (which Obama has stated he admires and wants ObamaCare to emulate) for over 30 years, I think I qualify.
    You do not want it. Trust me on this.

  • distineo (unregistered) in reply to merb
    merb:
    Besides that C# appeared in 2000 and someone therefore cannot have "15 years of experience developing in C#"
    Yes, that would be why the article says
    since this “senior” developer had been using C# since before it was invented
    merb:
    XLSX extensions weren't born before 2007. This code is at max a little over 6.5 years old.
    So? There's nothing in the article that suggests otherwise.
  • sunnyboy (unregistered)

    Regarding stated experience, I have found the following to be true more times than it is untrue:

    X years experience usually really means...

    ONE year experience, repeated X times.

  • Bananas (unregistered) in reply to faoileag
    faoileag:
    the article said:
    This “senior” developer’s resume proudly proclaimed that he had 15 years of experience developing in C#
    There is a common misconception here: "15 years of experience" do not equal "15 years of understanding C#".
    Whoosh!
  • Specific (unregistered) in reply to RandomGuy

    I've had 8 years of professional work and 7 years of freelance, 15 years total experience...that just happened at the same time....

Leave a comment on “The Senior Format”

Log In or post as a guest

Replying to comment #:

« Return to Article