• @lugal@lemmy.world
      link
      fedilink
      97 months ago

      Jokes on you, I’m in the bourgeois class and let kids from the working class and professional mangerial class do that kind of homework for me

    • @Ragnarok314159@sopuli.xyz
      link
      fedilink
      47 months ago

      Nah. I was labeled a dumb kid in high school because I had to work 40 hours a week. I went back to college as an adult and now have a masters in mech Eng.

      Went to my high school reunion and the smart kids were largely abject failures. They never really struggled until college, then mostly failed out. I felt bad for them, but not too bad since most of them bullied me.

    • @JDubbleu@programming.dev
      link
      fedilink
      37 months ago

      As one of the resident smart kids who went into CompSci and now works as a software engineer, I haven’t touched any of this for a hot minute. I mainly use it for 3D print designs once in a blue moon.

      • @jol@discuss.tchncs.de
        link
        fedilink
        17 months ago

        Of course it depends, but for example, it CSS esing functions are based on polinomial or sin waves. If you ever want to understand or perhaps implement and easing function, trigonometry has your back.

      • HubertManne
        link
        fedilink
        47 months ago

        I was thinking this myself. sin, cos, tan. Have not used. I have use euler coordinates so thats something but really solve for x is the most advanced thing I have used outside of school. mmmm actually I guess some statistics like stadard deviation.

        • I recently had to do a two variable equation because I was using a recipe that called for a specific milk fat percentage by mixing cream and milk, and my cream was heavier than what it needed. That was really stretching the limits of what math I remember.

      • @refalo@programming.dev
        link
        fedilink
        27 months ago

        Programmer for 25 years. Only time I have ever used math more complicated than simple multiply/divide was… actually never.

        That one time when I copy/pasted a formula for linear interpolation, was still just multiplication and division. And I still have no idea how it works.

        I’ve even done OpenGL and graphics programming and still haven’t needed any algebra/trig/etc, although I don’t do complex 3D rendering or physics or anything like that.

        I wish I knew how to do cool programming stuff like draw circles and waves and stuff though, but I’ve never seen a tutorial that didn’t go WAY over my head immediately.

        • @FooBarrington@lemmy.world
          link
          fedilink
          7
          edit-2
          7 months ago

          Drawing a circle is actually pretty simple! Say we want to draw one with:

          • radius r=5
          • center C=(0,0)
          • 1000 points

          The logic would be:

          for (let i = 0; i < 1000; i++) {
              // full circle is made up of 2 * PI angles -> calculate current loop angle
              const angle = (2 * Math.PI) * (i / 1000)
              const x = r * Math.cos(angle)
              const y = r * Math.sin(angle)
              drawPixel(x, y)
          }
          

          The circle starts being drawn at (5, 0). As y approaches -5, x gets smaller until it hits 0. Then x approaches -5 and y approaches 0, and so on.

          • @Valmond@lemmy.world
            link
            fedilink
            17 months ago

            That won’t work well ;-) it will draw 1000 pixels whatever the circumference!

            A good start though, for sure.

            • @FooBarrington@lemmy.world
              link
              fedilink
              17 months ago

              It’s just meant to be a simple example. If someone says other tutorials quickly go over their head, it’s not a good idea to introduce unnecessary concepts to start with.

  • @halvar@lemm.ee
    link
    fedilink
    327 months ago

    Sin, Cos and Tan were gifted to us by the gods, and it’s solely your fault, if you don’t use them daily in your freetime.

  • lemmyng
    link
    fedilink
    English
    317 months ago

    But you do use them everyday, because the Internet would not work without them.

    • Norgur
      link
      fedilink
      107 months ago

      Doesn’t it? Have we ever tried to rid humanity of this triangle of evil? Un-tan the internet I say! Grab your pitchforks and cos this sin-er to hell!

  • Lemminary
    link
    fedilink
    26
    edit-2
    7 months ago

    The non-programmer folks upvote this post. I mean, not that I use it for every app, but I have used it in recent memory. SOH-CAH-TOA, bitches!

    • @Tomato666
      link
      57 months ago

      Back in my day we had to use sentences to remember it

      Sill Old Harry Caught A Herring Trawling Off America

      Firmly lodged in place forever

      • Lemminary
        link
        fedilink
        2
        edit-2
        7 months ago

        Alright, alright, you can sit with us cool nerds. 🤓 But on Wednesdays we wear pink fanny packs.

  • @lightnegative@lemmy.world
    link
    fedilink
    15
    edit-2
    7 months ago

    This was me for years.

    And then I had to write some software that needed to visualise a rotary milking platform which is a circle, divided into segments, with different parts of each segment showing different things at different times.

    Oh, and since it’s rotary, the circle had to be animated and rotate in sync with the actual milking platform.

    Oh and different clients had different numbers of bays in their platforms so I couldn’t hardcode anything, it had to dynamically draw the platform, animate it and respond to events like window size change.

    Suffice to say I had to drag highschool geometry out from the graveyard of my brain

    • @refalo@programming.dev
      link
      fedilink
      17 months ago

      Any code you can share? I’m interested in finally learning how to apply some simple geometry maths to my programming, but I failed math in school.

      • @Buddahriffic@lemmy.world
        link
        fedilink
        37 months ago

        Check out 3d graphics related stuff, there’s a ton of geometry used there, whether you’re ray tracing or using 2d projection.

        A ray tracer is basically made up of:

        • ray caster algorithm to map pixels to rays and puts them into an image
        • data structures to contain scene data (like geometry, lighting, materials)
        • algorithm that represents a ray as a line and determines which parts of the scene geometry that line intersects with, selecting the one nearest and in front of the eye (or wherever the front is culled)
        • same algorithm used to determine if a ray from that intersection point to each light has anything between the point and light
        • also need to get the angle to the light for each ray that isn’t blocked
        • a shading algorithm that uses the lights, materials, and angles (and maybe more info) to determine the colour of that ray
        • some code that does something with the resulting image, like display it or save to a file

        And that’s basically it. It will be slow without optimizations but it’s cool af seeing your renders. And you can improve on it from there if you want. Though a warning: you might get obsessed with analysing different visual phenomena and thinking about how to render something like that for a while after doing this, which might also lead to gaining a critical eye for where 3d engines fail to be accurate.

  • @HootinNHollerin@lemmy.world
    link
    fedilink
    14
    edit-2
    7 months ago

    I do almost everyday as a mechanical engineer. I even do the common angles in my head, which came in handy several times in situations where I’m sailing and something breaks underway etc