• Gormadt@lemmy.blahaj.zone
      link
      fedilink
      arrow-up
      33
      ·
      7 months ago

      Why do people feel this way?

      I’m genuinely curious as I’d think having a wider swathe of coding experience would be a good thing wouldn’t it?

      I don’t work in fields that use coding expertise, I drive a forklift so I’m out of my wheel house when it comes to coding.

        • Gormadt@lemmy.blahaj.zone
          link
          fedilink
          arrow-up
          17
          ·
          edit-2
          7 months ago

          NGL if I saw a job listing that said, “Don’t have experience in a specific field,” I wouldn’t apply even if I didn’t have experience in the field specified because my assumptions for why they’d say that basically are the reasons you said.

          Or that they would want someone they could under pay for the position, but that’s more specific for what the job is and what they don’t want you to know beforehand.

          Edit: Fixed wrong wording

      • gornius@lemmy.world
        link
        fedilink
        arrow-up
        31
        ·
        7 months ago

        Java used to lack many features to make the stuff you wanted it to do, so most Java programmers adapted design patterns to solve these problems.

        Honestly, older versions of Java are utter garbage DX. The only reason it got so popular was because of aggressive enterprise marketing and it worked. How can a language lack such an essential feature as default parameters?

        So, anyway after the great hype Java lost its marketshare, and developers were forced to learn another technologies. And of course, instead of looking for language-native way of solving problems, they just used same design patterns.

        And thus MoveAdapterStrategyFactoryFactories were in places where simple lambda function would do the same thing, just not abstracted away three layers above. Obviously used once in the entire codebase.

        Imo the only really good thing about Java was JVM, while it was not perfect, it actually delivered what it promised.

        • 31337@sh.itjust.works
          link
          fedilink
          arrow-up
          1
          ·
          7 months ago

          I think most of those design patterns originated from C++ (Gang of Four). Java was designed to be a simpler, opinionated C++, and inherited many of the nuances of OOP-style C++. I actually kinda like Java. I think its restrictiveness is nice for large projects, so everyone uses the same programming paradigm and style (no mixing of template, procedural, and OOP programming). Code execution is relatively quick (compared to things like the Python interpreter). Don’t need to write header files or manually manage memory. Has fairly advanced features built in for multi-threading, concurrency, remote objects, etc.

          I haven’t programmed in Java in many years, but I’ve been programming in C# lately, and it just seems like Microsoft’s version of Java.

      • PaperTowel@lemm.ee
        link
        fedilink
        arrow-up
        15
        ·
        7 months ago

        Java in a large way has been eclipsed by most other languages, and developers kind of have a way of making fun of old technologies, like a lot of the same jokes are made about PHP which is still very popular but outdated. In reality Java is also still incredibly popular and knowing it is certainly a benefit. It’s just a collective joke.

        • ChickenLadyLovesLife@lemmy.world
          link
          fedilink
          English
          arrow-up
          5
          ·
          7 months ago

          I wish people would make fun of Visual Basic more but nowadays it’s like it never even existed. As somebody that started in VB I feel left out.

      • amtwon@lemmy.world
        link
        fedilink
        English
        arrow-up
        10
        ·
        edit-2
        7 months ago

        If it’s a job that requires high-performance/low-level code (which seems to be the case from the other qualifications), this is probably their way of filtering out people who have primarily worked at a higher level where you don’t need to worry about the nitty-gritty details

        • nxdefiant@startrek.website
          link
          fedilink
          arrow-up
          13
          ·
          edit-2
          7 months ago

          I can almost guarantee that job post was written by a recruiter who had some engineers in a call. The recruiter probably said something like “What about Java? I hear Java is important” to which the engineer(s) likely jokingly responded “Oh, no, please no. MINIMUM POSSIBLE JAVA. Yeesh. Ideally none.” … and the recruiter took that literally.

  • Troy@lemmy.ca
    link
    fedilink
    arrow-up
    52
    ·
    7 months ago

    Maybe they want to avoid java coding patterns. FactoryFactoryGenerator kind of stuff. Maybe they want to teach their own java coding patterns and want someone coming in with a blank slate so they don’t have to unlearn habits. Maybe they’re tired of diploma mill programmers applying and are using this as a resume filter tripwire.

    • Pennomi@lemmy.world
      link
      fedilink
      English
      arrow-up
      38
      ·
      edit-2
      7 months ago

      Definitely. Horror story time.

      We had an outside contractor bring us some code once that was thousands of lines of Python to do a very simple job. I was perplexed. I dove in to figure out what the problem was, and somehow I was looking at the most Java-esque Python code I could imagine. What’s worse is that he implemented his own “Java style” property getters and setters for all the Python classes, which obviously aren’t needed because you can simply access properties directly. In the end I took an 80 line snippet of his code (which actually did the work we needed), swapped out all the getters and setters, and deleted all the rest.

      • Potatos_are_not_friends@lemmy.world
        link
        fedilink
        arrow-up
        19
        ·
        7 months ago

        This is pretty common with outside contractors.

        We just come in, say we’ll pay them x dollars and they give us code that passes the test. But that code will not at all align with any prior patterns.

        I absolutely know I’m guilty of it when I do freelancing. Sorry.

      • Troy@lemmy.ca
        link
        fedilink
        arrow-up
        6
        ·
        7 months ago

        That’s not to say that python coding habits are the best either – certainly they’re terrible when translating outside of python (most of the time). And even within python, someone who is used to with only the base modules will write it differently than writing PyQt and still completely different than someone doing numpy code… because the styles of coding of the underlying system change your coding mode. Like, my variables are all CamelCase when doing user interfaces with Qt because it makes sense there, stylistically.

      • BaskinRobbins@sh.itjust.works
        link
        fedilink
        arrow-up
        1
        ·
        7 months ago

        You can always tell when someone’s been a career contractor because they never adhere to any of the established patterns/styles in the codebase.

        • gribodyr@lemmy.ml
          link
          fedilink
          arrow-up
          1
          ·
          7 months ago

          I disagree. Good career contractors should learn to write in the code style of the project. And the real pros do.

    • Zeth0s@lemmy.world
      link
      fedilink
      arrow-up
      7
      ·
      edit-2
      7 months ago

      Definitely the first. I work in ML, and I find for instance people with background mainly in c# to be the least fit for my field, particularly if they have long experience. So I understand this kind of requests

  • frobeniusnorm@lemmy.world
    link
    fedilink
    arrow-up
    41
    ·
    edit-2
    7 months ago

    Ruling Javascript and Python programmers out would be more sane imho. Java sucks, but at least its typed and doesn’t implement weird semantics.

    • anton@lemmy.blahaj.zone
      link
      fedilink
      arrow-up
      20
      ·
      7 months ago

      Had to work with a python programer on a small java project (in uni). I passed some (handcrafted) strings in an Optional to be explicit an first thing he does is check whether they are empty (sending on empty strings would not have been problematic). Also he had compilation errors on his branch that lasted over a week. What python does to someone.

      • grue@lemmy.world
        link
        fedilink
        English
        arrow-up
        15
        ·
        7 months ago

        That guy was shitty at Python, then. Python is all about EAFP instead of LBYL.

          • grue@lemmy.world
            link
            fedilink
            English
            arrow-up
            13
            ·
            7 months ago

            “Easier to Ask Forgiveness than Permission” vs. “Look Before You Leap.”

            In other words, in Python you should just write the code to do the thing and then put an exception handler at the bottom instead of cluttering up your function with guard code everywhere.

      • evranch@lemmy.ca
        link
        fedilink
        arrow-up
        2
        ·
        7 months ago

        I wouldn’t call this a “python thing”.

        I grew up with C and C/++ is still my main language, checking for empty strings is instinctive to me. It’s cheap insurance and what does it cost, a couple cycles?

        Though you won’t find me using bare cstrings these days unless there is a damn good reason for it. So much extra work to handle them. Even in embedded work, String classes have superceded them.

      • Elderos@sh.itjust.works
        link
        fedilink
        arrow-up
        1
        ·
        7 months ago

        I worked under a self-proclamed Python/JavaScript programmer, and part of the job involved doing rather advanced stuff in various other typed languages like c# and c++. It was hell. The code review were hell. For every little tiny weenie little things we had to go through “why coding c++ like it is python” is a very bad idea.

        What is crazy about developers who exclusively work with scripting languages is that they have no conception of why general good practices exist, and they often will make up their own rules based on their own quirks. In my previous example, the developer in question was the author of a codebase that was in literal development hell, but he was adamant on not changing his ways. I’d definitely be wary of hiring someone who exclusively worked with scripting language, and sometime it is less work to train someone who is a blank slate rather than try to deprogram years of bad habits.

    • seth@lemmy.world
      link
      fedilink
      arrow-up
      5
      ·
      7 months ago

      JS -> Typescript, let the transpiler do its job

      Python -> mypy + from typing import blahblah

      ez pz

          • deaf_fish@lemm.ee
            link
            fedilink
            arrow-up
            11
            ·
            7 months ago

            I don’t know what’s worse being told to go f*** yourself or to be told you’re a grandpa based on your language preference.

            On one hand the go f*** yourself is crude but at least it’s direct. Being called a grandpa is kind of insidious but it’s more pleasant.

            To anyone passing by this comment. Which insult directed it you would you prefer?

            I must be feeling introspective today.

            • drislands@lemmy.world
              link
              fedilink
              arrow-up
              9
              ·
              7 months ago

              I’d rather be told to go fuck myself in response to me saying something rude, because I’d deserve it.

              • hydrospanner@lemmy.world
                link
                fedilink
                arrow-up
                2
                ·
                7 months ago

                Depends who’s saying it.

                I remember many moons ago I was on a hike with my scout troop and one night we camped in this group campground with a lot of…well…super rednecks, most of which appeared to just live there.

                Anyway, one of these little redneck kids (maybe 6 or 7 years old) for whatever reason picks one of our scouts (who was maybe 15?) and just basically starts following him around the campsite calling him “Daddy”.

                It was hilarious…to everyone except him.

                I wish I could say that was the weirdest thing that’s ever happened on one of those hikes.

        • bradv@lemmy.ca
          link
          fedilink
          arrow-up
          8
          ·
          7 months ago

          This is a perfectly rational response to being called Grandpa. Especially if you’re a grandpa who likes Java.

  • riwo@lemmy.blahaj.zone
    cake
    link
    fedilink
    arrow-up
    12
    ·
    edit-2
    7 months ago

    reading this just gives me the biggest imposted syndrom and reminds me of how underqualified for any job i feel, even after my software development apprenticeship

  • _NoName_@lemmy.ml
    link
    fedilink
    arrow-up
    10
    ·
    7 months ago

    Git hygiene is important for avoiding Git-Transmitted Infections (GTIs) such as Vim

  • edinbruh@feddit.it
    link
    fedilink
    arrow-up
    8
    ·
    7 months ago

    Once I asked a professor to participate in a project. So he interviewed me and asked me about my skills, as they do, and one of the questions was “do you know oop? Java?”, me: “just the basics”, him: “even better”.