• Naich@lemmings.world
    link
    fedilink
    arrow-up
    0
    ·
    1 year ago

    Want to print out all odd numbers from 1 to 100? Easy:

    for(_=[];_<+!![]+""+[]*[]+[]*[];_++)(_%+(!![]+!![])?console.log(_):[]);

    • Naich@lemmings.world
      link
      fedilink
      arrow-up
      0
      ·
      1 year ago

      Actually, I prefer this one: for(_=[];_<+!![]+""+[]*[]+[]*[];_++%+(!![]+!![])?[]:console.log(_));

      • Naich@lemmings.world
        link
        fedilink
        arrow-up
        0
        ·
        1 year ago

        Or this one without the “undefined” when run in a browser console:

        for(_=[];_<+!![]+""+[]*[]+[]*[]-!![]-!![];_++%+(!![]+!![])?[]:console.log(_));_+!![]

          • Naich@lemmings.world
            link
            fedilink
            arrow-up
            0
            ·
            1 year ago

            _ is a variable name, [] becomes 0 when converted to an integer, !![] becomes 1. The + “” + means that the integers 1, 0, 0 get converted to a string - “100”, which gets converted back to an integer because it’s in the for loop. And there’s various other horrible conversions going on to make it all work.

  • Socsa@sh.itjust.works
    link
    fedilink
    arrow-up
    0
    ·
    1 year ago

    You can tell this is fake because the code interview actually tests basic knowledge instead of giving you 13 minutes to create a templated polymorphic class which accepts arbitrary flatbuffer arguments and implements factory pattern constructors written in Haskell, with the end goal of recursively sorting nanoparticles by bond strength. Intro level position, $8/hr, must supply your own MacBook.

    • Pandantic [they/them]@midwest.social
      link
      fedilink
      English
      arrow-up
      0
      ·
      edit-2
      1 year ago

      I was thinking the same thing. I mean, I just did a coding test for a potential job, and I know I did at least as good as, and likely better than this.

      edit: just to prove to myself, I went ahead and wrote the program without looking things up. I’m self-taught so I feel pretty proud. It took about 25 mins, and it works!

  • PolarisFx@lemmy.dbzer0.com
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    1 year ago

    Oh geez, I’m one of those people who can’t code on paper. I was applying for something ages ago and I went in for a programming test and they handed me a paper test and my mind completely shut down. Put me in front a computer and I have no issues at all… It was embarrassing.

    • mipadaitu@lemmy.world
      link
      fedilink
      English
      arrow-up
      0
      ·
      1 year ago

      I would just write down the steps I would take, just some psudocode. It doesn’t have to work, it just has to make sense in the style of the language you’re talking about.

      import random library  
      import any GUI/display libraries required for the outcome desired
      
      build array of integers [1..52] (or 0..51 if you're being fancy)
      for loop 1..1000
             select random number A 1..52 (or 0..51 if you used that above)
             select random number B 1..52 (or 0..51 if you used that above)
             swap elements in the array A and B
      pop first two elements from array
      decode at display time what the two numbers represent in terms of playing cards
      

      If the test requires more than that, then they’re crazy. The syntax doesn’t matter, just that you can logic yourself through the problem.
      You can use the IDE, google, or whatever to fill in the specifics. If you wanted me to do that in literally any programming language, once the psudocode is done, you just spend an hour or so looking up the details.

  • onlinepersona@programming.dev
    link
    fedilink
    English
    arrow-up
    0
    ·
    1 year ago

    I knew a dude who got a job for a programming language he never wrote. Not only that, the guy was hired to be the experienced / lead programmer to give guidance on how to use the language. In fact, I knew multiple people like this. Some were actual programmers and good at other programming languages, but some had decided it was time to switch from another field (geology, marketing, database engineer, …).

    It’s still puzzling how they got their jobs.

    Anti Commercial-AI license

    • letsgo@lemm.ee
      link
      fedilink
      arrow-up
      0
      ·
      1 year ago

      The previous candidate to me at a job a few years ago left the room in tears after not being able to write Fizzbuzz. On a laptop with Visual Studio installed, on their own in a an empty room with nobody looking over their shoulders. The same company said they’d had so many candidate, including university graduates, who simply couldn’t code, that they were almost giving up on it.

      • I Cast Fist@programming.dev
        link
        fedilink
        arrow-up
        0
        ·
        1 year ago

        Suddenly I feel like a fucking accomplished programmer, despite only doing some questionable stuff on Godot lately, but never messing up my loops… Not too badly anymore, anyway.

        A fizzbuzz type of question I know I would mess up on the modulo operator. I know the logic is if the division of the current_number by 3 has a remainder of zero, write fizz, but I always look up the operator

        • letsgo@lemm.ee
          link
          fedilink
          arrow-up
          0
          ·
          1 year ago

          Yeah it always feels like “negative logic” to me. If it’s not this and not that then don’t do the other… Does my head in. Next time I’m going to use a lookup table “x…f.bf…fb.f…” then mod15 the index. f=Fizz, b=Buzz, x=both. Nice thing about this is that it’s easier to change with the requirements. Want to shift the second fizz right one? No problem “x…f.b.f.fb.f…”. Good luck doing that with the standard approach. Add Gronk which collides with Fizz, Buzz or both at various times? Also no problem - just extend and modify the LUT accordingly and change the mod.

          I can already hear people asking why x is at the start. Arrays are indexed from 0. FizzBuzz starts at 1. 15 mod 15 is zero. Loop N from 1-100, switch on lookup[N%15], case ‘f’ print Fizz, case ‘g’ print Gronk, case ‘p’ print FizzGronk and so on. The only “nice” original feature you lose is when both %3 and %5 fire at the same time and it prints FizzBuzz without any extra code.

  • themusicman@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    1 year ago

    “Introductions and a bit of smalltalk” - I would shit myself if an interviewer started asking about smalltalk… /s

  • Tartas1995@discuss.tchncs.de
    link
    fedilink
    arrow-up
    0
    ·
    1 year ago

    I hope these aren’t real. I, and most people here, could probably write these codes top to bottom on paper without an eraser or strikethrough parts because we have it fully solved before the interviewer finished the sentence.

    • sntx@lemm.ee
      link
      fedilink
      arrow-up
      0
      ·
      1 year ago

      I mean, it’s a hard problem to solve if you never worked with moduli before.

      • jkrtn@lemmy.ml
        link
        fedilink
        arrow-up
        0
        ·
        1 year ago

        Shouldn’t people familiar with integer arithmetic should be able to struggle to something like x == 2 * (x/2) to test if it is odd or even? Or just bitwise x & 1?

      • themusicman@lemmy.world
        link
        fedilink
        arrow-up
        0
        ·
        1 year ago

        Sure, programming is hard if you’ve never worked with programming language features before… Modulus isn’t some obscure esoteric operator, it’s literally CS 101

        • drphungky@lemmy.world
          link
          fedilink
          English
          arrow-up
          0
          ·
          edit-2
          1 year ago

          I fell backwards into programming and did it for years before ever needing or encountering a mod operator. It never really came up in statistical programming (SAS) and since I wasn’t a CS major I don’t think I even learned about it until taking online programming classes for fun. But I know I was a pretty damn good SAS programmer. I never had any issues solving any problems in my field programmatically, but I took a few leet code tests and was completely puzzled before taking said CS classes. The algorithms and common problems just never remotely came up. I never found fizzbuzz particularly relevant in statistics and data CRUD.

          Now maybe since SAS is procedural and not OO you’d say it doesn’t have typical “programming language features”, but I could easily see that experience being common in all kinda of business side programming like R, VBA, maybe JavaScript or Python, etc.

          …but anyway obviously I’m not saying its not a good thing for a dev shop to interview on, and if they want someone classically trained then it’s probably a perfect question. My quibble is just that you might need to widen your definition of who programs.

    • Veraxus@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      1 year ago

      Any sufficiently skilled developer has a bunch of things they hate about the language they use the most, and are happy to tell you about it.

      This is a characteristic I unironically keep an eye out for when hiring.

  • Björn Tantau@swg-empire.de
    link
    fedilink
    arrow-up
    0
    ·
    1 year ago

    I used to work at a company that used XSLT. They know that it’s an obscure language that probably none of the potential candidates have ever worked with. But it’s easy enough to learn the basics in an hour or two.

    So the entry test was to strip some tags from an XML file. You had a day or two (maybe more) to do it. My solution wasn’t ideal, I didn’t use several of the shortcuts available in the language. But at least it did what it was supposed to.

    A few weeks after I had started working there my boss came up to me, visibly frustrated and asked me whether the test was too hard. Thinking back on my problems I replied that maybe having the desired output ready so that you could test your own solution against it might be nice. But my boss’s problem was that none of the last 5 candidates could even send in a solution that would run.

    You had so much time, and running an XSLT script is really easy and takes no time at all. And for some inane reason these people couldn’t even manage to test their code and still decided to send it in.

    And I thought I was an idiot when I didn’t know if it was spelled grey or gray in CSS during the in-person interview.

      • Björn Tantau@swg-empire.de
        link
        fedilink
        arrow-up
        0
        ·
        1 year ago

        I wanted to answer “grey”, full of confidence. Then I decided to look it up to be sure and found out that it’s “gray”.

        The test was to spot mistakes in a simple html file. So I couldn’t substitute anything. And my favourite gray color is #666.

    • oldfart@lemm.ee
      link
      fedilink
      arrow-up
      0
      ·
      1 year ago

      It is very good test for the ability to research, I think. The amount of people who painstakingly went through some video tutorial on PHP and are now developers is insane. I’m sure there’s place in the market for them (writing Wordpress themes/plugins, for example), but it’s hard to find a programmer with ability to think these days. Not because people are more stupid, but because every other person is a programmer now.