• bleistift2@feddit.de
    link
    fedilink
    English
    arrow-up
    181
    ·
    edit-2
    9 months ago

    There are really few problems that are “impossible.” That is, if you count those customers/managers are interested in. All the rest is just “I’ll need 10 years, 230 million Dollars and a research team”

    XKCD 1425 by Randall Munroe. License: CC BY-NC 2.5

    • xigoi@lemmy.sdf.org
      link
      fedilink
      arrow-up
      95
      ·
      9 months ago

      “The other programmers keep accidentally writing code that ends up in an infinite loop. I’d like you to make a program that can reliably detect that.”

      • elvith@feddit.de
        link
        fedilink
        arrow-up
        32
        ·
        9 months ago

        You may joke, but if I had a penny for every time someone asked me to solve a problem, that basically boils down to the halting problem, I’d be rich.

      • jeff 👨‍💻@programming.dev
        link
        fedilink
        English
        arrow-up
        10
        ·
        9 months ago

        A full solution to the halting problem can’t exist. But you can definitely write a program that will “reliably” detect them to a certain percentage.

        And many applications do exactly that. Firefox asked me today if I wanted to stop a tab because it was processing for too long.

        • bleistift2@feddit.de
          link
          fedilink
          English
          arrow-up
          22
          ·
          9 months ago

          That’s not even close to solving the halting problem. FF doesn’t check if the program has been in its current state before. It literally just checks if 10 seconds have passed without JS emptying its event loop.

          • jeff 👨‍💻@programming.dev
            link
            fedilink
            English
            arrow-up
            10
            ·
            9 months ago

            Right. There is no solution to the halting problem, that’s been proven. But you just showed you can very easily create a way of practically solving it. Just waiting for 10 seconds does it. That will catch every infinite loop while also having some false positives. And that will be fine in most applications.

            My point is that even if a solution to the halting problem is impossible, there is often a very possible solution that will get you close enough for a real world scenario. And there are definitely more sophisticated methods of catching non-halting programs with fewer false positives.

            • xigoi@lemmy.sdf.org
              link
              fedilink
              arrow-up
              4
              ·
              9 months ago

              And that will be fine in most applications.

              Have you never written a useful program that took more than 10 seconds to complete?

              • bleistift2@feddit.de
                link
                fedilink
                English
                arrow-up
                5
                ·
                9 months ago

                I fully agree with your sentiment. But just in case: If you’re blocking the main thread of a browser for seconds at a time, you should look into that.

        • xigoi@lemmy.sdf.org
          link
          fedilink
          arrow-up
          8
          ·
          9 months ago

          For JavaScript apps, stopping them when they consume too much resources is definitely a good idea. But if you work on some project where it’s common to run computionally intensive tasks, it can be harder to detect non-halting.

      • float@feddit.de
        link
        fedilink
        arrow-up
        5
        ·
        edit-2
        9 months ago

        Just because it’s not possible on a Turing Machine doesn’t mean it’s impossible on a PC with finite memory. You just have to track all the memory that is available to the algorithm and once you detect a state you’ve seen already, you know it’s not halting ever. The detection algorithm will need an insane amount of memory though.

        Edit: think about the amount of memory that would need. It’s crazy but theoretically possible. In real world use cases only if the algorithm you’re watching has access to a tiny amount of memory.

      • mindbleach@sh.itjust.works
        link
        fedilink
        arrow-up
        1
        ·
        9 months ago

        There have been genuine efforts to do that. Obviously (well, for a very niche use of “obviously”) it’s not always possible, but detecting infinite loops isn’t like the uncertainty principle.

        It’s called The Terminator.

    • notabot@lemm.ee
      link
      fedilink
      arrow-up
      47
      ·
      9 months ago

      This. Very few problems are truly impossible to solve, they arem in fact, just wildly impractical to solve. So don’t try to tell the PM/client/coworker-with-a-‘brilliant’-idea it can’t be done, tell them what it’ll take to work out what it’ll take to do it. Either they go away, or you end up in charge of a project with an astronomical budget and no clearly defined deliverables.

    • randon31415@lemmy.world
      link
      fedilink
      arrow-up
      28
      ·
      9 months ago

      I mean, now a days, I can upload the image into stable diffusion automatic1111 and click interrogate CLIP and then see if it outputs “bird” as a reverse promopt, but this comic WAS from 4 and a half years ago, so the programmer was right on the time-frame.

      • float@feddit.de
        link
        fedilink
        arrow-up
        8
        ·
        edit-2
        9 months ago

        It always depends on which existing tools you have access to. Go back some more years and there is no GPS. Detecting the bird will be the easier problem then.

  • sudo@lemmy.today
    link
    fedilink
    arrow-up
    122
    ·
    9 months ago

    Customer: Why is there so much latency over my tunnel from us-east to us-west?

    Me: checks latency seems pretty normal, what’s the issue?

    Customer: The latency is too much. Why is it not as fast as us-east-1 to us-east-2?

    Me: They are near each other. Us-West is across the entire United States

    Customer: Make faster

    Me: This is the speed of light. And over copper it’s about 2/3 that

    Customer: hmm are you sure that’s as fast as it can go?

    Me: Well, unless we change the laws of physics your not going to get any better latency

      • orbitz@lemmy.ca
        link
        fedilink
        arrow-up
        11
        ·
        9 months ago

        That’s cause they always have money in the lobbying budget to fix things.

    • stratoscaster@lemmy.zip
      link
      fedilink
      English
      arrow-up
      34
      ·
      9 months ago

      Then you find out the real reason they need faster latency is because they’re pinging the server for new data every 1ms

    • xantoxis@lemmy.world
      link
      fedilink
      arrow-up
      11
      ·
      edit-2
      9 months ago

      Eh, sometimes they’re right about this one though. It’s true that a request traveling near light speed is as fast as it can possibly be, but what if it’s 17 requests? Sometimes you can fix latency by doing fewer transactions.

      edit: love a downvote with no reply. Just “No!” [stomps feet]

  • affiliate@lemmy.world
    link
    fedilink
    arrow-up
    95
    ·
    9 months ago

    what if we made a new type of blockchain? one that was powered by generative AI and the metaverse? oh! and could we make it so that it Empowers Business Solutions?

    • WolfhoundRO@lemmy.world
      link
      fedilink
      arrow-up
      18
      ·
      edit-2
      9 months ago

      It’s because of big pay, highly mobile employees, hiding the real role of the HR and this false sense of security compared to the rest of the workplaces despite all these lay-offs from the big companies. Also, whenever a unionizing attempt happens, the companies go into crackdown mode and have their multitude of ways to either fire you with a bogus reason, remove your post citing “restructuring” or pulling you on a dead career track and demonize you in front of your colleagues with the usual “we care about our employees and everything can already be resolved through HR” speech. And moreover, many of these issues have a direct cause the Work Laws of the respective countries

    • Double_A@discuss.tchncs.de
      link
      fedilink
      arrow-up
      7
      ·
      9 months ago

      Unions only make sense when you are easily replaceable as a worker so you don’t have any barganing power on your own. As an individual IT worker you can usually tell your boss to fuck off if things get bad and just look for a new better job…

    • CosmicTurtle@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      edit-2
      9 months ago

      There has been chatter on Blind for the devs and engineering at my company unionizing. It’s a long shot. But I’m all for it.

    • cikano@lemmy.world
      link
      fedilink
      arrow-up
      2
      ·
      9 months ago

      While I completely agree, the meme would not really be different with a unionised workplace

  • Samsy@lemmy.ml
    link
    fedilink
    arrow-up
    14
    ·
    9 months ago

    Hah, yes, I was a few times between these two sides. My role was to understand both and doing something you could call “translating.”

    • brygphilomena@lemmy.world
      link
      fedilink
      arrow-up
      10
      ·
      9 months ago

      Well–well look. I already told you: I deal with the god damn customers so the engineers don’t have to. I have people skills; I am good at dealing with people. Can’t you understand that? What the hell is wrong with you people?

  • nogooduser@lemmy.world
    link
    fedilink
    English
    arrow-up
    13
    ·
    9 months ago

    And if you convince the project manager that it won’t work by telling them all the reasons why they come back a few days or weeks later asking why it won’t work.

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

    Why do you have a project manager discussing technical solutions? That’s kind of… very wrong. Most PMs nowadays have a just a slightly better technical background than a secretary…

    • stevecrox@kbin.social
      link
      fedilink
      arrow-up
      6
      ·
      9 months ago

      A project manager has responsibility for delivery of a project but they typically lack domain specific knowledge. As a result they can’t directly deliver something, merely ask subject matter experts for advice and facilitate a team to deliver.

      Most PM’s cope with the stress of this position poorly.

      This cartoon is an example of micro management (a common coping mechanisim), the manager has involved themselves in the low level decisions because that gives a sense of control. If a technical team then tell them its a bad decison the team are effectively attacking their coping mechanisim.

      The solution isn’t to tell them their technical idea is terrible, when you’ve fallen down this rabbit hole you have to treat the PM as a stakeholder. They are someone you have to manage, so a common solution is to give them confidence there is a path to delivery, a way to track and understand it.

      • Zeth0s@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        9 months ago

        Best practice is to clearly state that PM here is not competent for its job, either he finds a solution himself (e.g. he manages expectations of clients without admitting he fucked up) or he has to be replaced.

        This kind of situation is very dangerous. PM shouldn’t take similar decisions, nor promising anything

        • stevecrox@kbin.social
          link
          fedilink
          arrow-up
          4
          ·
          edit-2
          9 months ago

          This advice isn’t grounded in reality.

          Management normally defines ways to track and judge itself, these are typically called Key Performance Indicators.

          KPI’s are normally things like contract value growth, new contracts signed, profit margin, etc…

          So if the project manager is meeting or exceeding their KPI’s and you walk up to their boss telling them the PM is failing as basic job functions, the boss won’t care.

          This is because the boss might have set the KPI’s or the boss might also be judged on them. In either situation its to the bosses advantage to ignore you.

          The boss will only care if there is a KPI you can demonstrate the PM failing to meet.

          Every person/group will have various incentives and motivations. To affect change you have to understand what they are.

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

            Not even a pure mckinsey type of company value kpis over stakeholders’ feedbacks. If a company is purely kpi driven, it is a bad company, as kpi cannot catch everything, but have limited and specific scope. Your managers should go back to their MBAs, and revise their stakeholder management skills. If a manager get a feedback that one of their team members is jeopardizing a project and the relationship with clients due to taking responsibilities and tasks for which they have no competency, it is extremely bad. In this case is even proved by the fact that the company must spend resources lowering the clients expectations. Managers should absolutely act. If this doesn’t happen, the managerial side of your company is pretty broken

            • SittingWave@programming.dev
              link
              fedilink
              arrow-up
              2
              ·
              9 months ago

              Yes the problem is that they are management. You can say they are shitty managers all you want, but the only result you’ll get is that they will fire you.