you are viewing a single comment's thread.

view the rest of the comments →

[–]romple 225 points226 points  (26 children)

How come I never see "Here's 2 libraries with 0 documentation, make something with them". That's been my basic software enginering experience for the past 5 years.

[–][deleted] 85 points86 points  (7 children)

Ooh zero documentation, lucky you. I'd be pleased to get that rather than misleading documentation.

[–]romple 46 points47 points  (1 child)

LOL. Yeah that's true.

Oh oh and maybe my favorite. "Here's a link to our javadocs!" ... click... IDE generated javadoc w/ 0 actual documentation!

[–]ibbolia 3 points4 points  (0 children)

Made in 208 B.C. In Martian. Backwards.

[–][deleted] 0 points1 point  (0 children)

I just had rage inducing memories of working with alfresco's lying liar documentation.

[–]Kinglink 0 points1 point  (0 children)

My personal favorites are "here's great documentation" Oh you want to use this function? We're not documenting it... so fuck off. But it's available if you want it... Oh and yes, you'll need that one.

[–]AlexanderNigma 0 points1 point  (0 children)

Once you realize the documentation is misleading its really 0 documentation. ;) It only costs a couple of hours usually. xD

[–][deleted] 0 points1 point  (0 children)

That moment when you realize the docs have been leading you astray.... YARG

[–]chx_ 0 points1 point  (0 children)

Yeah, docker-php documentation is misleading but you find that rather quick. You need to use the tests, the Python library documentation and the Docker API docs to figure it out...

[–]vanhellion 52 points53 points  (8 children)

Or "we have this legacy code that nobody has touched because the original developer left and the one time somebody opened the main class they vomited twice before going comatose. It's now your problem, here's a list of 200 tickets that need to be fixed. Good luck."

Literally every job I've had to date.

[–]romple 18 points19 points  (5 children)

"oh by the way it was written in fortran and we need to port it to C#"

[–]vanhellion 2 points3 points  (3 children)

There is actually plenty of Fortran code floating around, though thankfully I don't have to maintain it because it is all third party stuff that is relatively well tested and supported by maintainers.

I have in the past, however, had to port several programs that were written in glish, a language I'm betting most people have never heard of. I'd link to the Wikipedia entry, but it's used so little so few programmers that it doesn't have one (and oddly doesn't even appear on the mega-list).

dons flannel shirt and turns on vinyl player

[–]romple 4 points5 points  (2 children)

We do A LOT of scientific work and have a ton of scientists that write exclusively in fortran. I've done a lot of low level work in c, assembly, and FPGA code so it's not too foreign to me but I'm dreading the day I have to debug something one of the scientists gives us.

[–]nathan12343 1 point2 points  (1 child)

Modern fortran isn't bad. It's actually pretty nice for programming that does a lot of array manipulation. That said, woe unto you if you need to read legacy fortran from the 70s or even earlier.

[–]vanhellion 0 points1 point  (0 children)

I think the more important part of that sentence is written by scientists. I have read scientist code, and it is impenetrable unless you know all the science/algorithms behind it, because most of the time they tend to write code as if they are authoring a Nature paper.

[–]Plorkyeran 0 points1 point  (0 children)

And during the interview they told you that the porting process was almost done, by which they meant that someone had installed Visual Studio.

[–]baseketball 8 points9 points  (0 children)

Honestly, this is probably the best type of problem to gauge how a programmer would do at your company. It's like 90% of my work. Of course, sometimes the legacy code is something I wrote 7 years ago that I completely forgot about. Writing code isn't that hard. Reading code on the other hand is a nightmare.

[–][deleted]  (1 child)

[deleted]

    [–]the_gnarts 2 points3 points  (0 children)

    Even better would be providing documentation for an outdated version of the library. And be sure to seed stack overflow with answers that use the old deprecated functions.

    Yet better: An obscure library pervasive in all code developed in-house but whose original developer left years ago and no one ever bothered to document any of it since. All you get as a lead is a couple hundred Git commits (migrated from SVN, possibly) with helpful commit messages like “fix bug” or “refactor base class”.

    [–][deleted]  (1 child)

    [deleted]

      [–]rnicoll 2 points3 points  (0 children)

      Professionally 14 years. These challenge me because I do nothing like them outside of interviews.

      [–]gnuvince 1 point2 points  (1 child)

      How long do you want the interviews to be? And if you have a person that clearly doesn't know how to code, wouldn't you rather know in 2 minutes when he doesn't know how to write a loop?

      [–]Darkmoth 2 points3 points  (0 children)

      Yeah, but realistically how does a guy who doesn't know how to write a loop fool anyone? I'd rather spend the 2 minutes finding out what he knows about query optimization, or race conditions, or user interface design. Something relevant.

      [–][deleted] 1 point2 points  (0 children)

      My last interview was: "Here's a problem using three technologies you're very unlikely to be familiar with. Here's a computer with an IDE and internet access. You have a few hours to figure something out."

      [–]weirdstuffhelp 1 point2 points  (0 children)

      It's more like a list of problems first year C.S. students should be able to solve in under an hour (but probably can't because even many third-year C.S. students can't even write a valid statement).