• go $fsck yourself@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    2 years ago

    This is fucking dumb. People learning how to code don’t know how to start. They don’t know what to start writing or where to start on it. This is akin to telling a depressed person “just don’t be sad”.

    • AggressivelyPassive@feddit.de
      link
      fedilink
      arrow-up
      1
      ·
      2 years ago

      Exactly. If you know nothing about a topic, you don’t even know, what exactly to google, except “how to make computer do stuff”.

      The initial hurdle of incompetence can be extremely frustrating and almost impossible to climb, if you don’t have guidance.

      • Appoxo@lemmy.dbzer0.com
        link
        fedilink
        arrow-up
        0
        ·
        2 years ago

        My best motivator is having an issue and a need to solve it (e.g. room is cold after work but I’d like it warm -> automation or “I hate how netflix is taking away my movies” -> Media library). This resulted in me getting a smart home thermostat and jellyfin.

      • KombatWombat@lemmy.world
        link
        fedilink
        arrow-up
        0
        ·
        2 years ago

        If you want to learn how to code, can’t you just google “coding tutorial for beginners” or something similar? Probably you would need to pick a language, but that would similarly be solved with “recommended coding language for beginners”. Then it’s very easy to find a resource that starts with hello world and gradually introduces new things. And I’m sure if it moved beyond a browser toolbox, a guide for setting up whatever IDE would be included.

        Learning to code is by no means easy, but it’s possibly the best type of thing to learn when it comes to having a wealth of free, easily discoverable guides. The main obstacle is choosing to put in the time, and this comic removes that obstacle by forcing them to not put it off.

        • EuroNutellaMan@lemmy.world
          link
          fedilink
          arrow-up
          0
          ·
          edit-2
          2 years ago

          No because most tutorials will start from “write print(“Hello World”)” and the like without mentioning compiling or where to write it or with what…

          I didn’t really get into coding until someone guided me through the basics of python, which is an easy language that doesn’t even require compiling. One of the reasons was precisely not knowing where to start.

          • buzziebee@lemmy.world
            link
            fedilink
            arrow-up
            0
            ·
            2 years ago

            It’s gotten a lot better in recent years tbf in terms of those kinds of resources. Beginner recommended languages like Python are still a pain because it’s super easy for a beginner to bork how they set it up, but on the whole there’s plenty of online code sandboxes and other ways to get started.

            Your point is definitely valid though. Why on earth would we want someone who’s just showing an interest in programming to write their own compiler??? Wtf? If someone wants to get into baking you don’t send them out into the fields for 6 months to grow some wheat.

            When I was a kid I mucked around with html and css to make some GeoCities sites. I decided I wanted to learn how to code so I got a book from the library called “how to code games for beginners” or something. The thing never told you how to set up an IDE or compile the game. So I was just frustratingly typing out the code examples into notepad without a clue as to what to do. I think this was during the dialup era so it wasn’t like there was a wealth of info online.

            I ended up abandoning programming for quite a few years. It just seemed like nonsense because writing graphics libs for C in notepad does feel like nonsense to a child. I wonder what life would be like if I had some better resources at that moment in time and decided you continue pursuing it.

        • AggressivelyPassive@feddit.de
          link
          fedilink
          arrow-up
          0
          ·
          2 years ago

          Well, put yourself in the shoes of someone who knows nothing about programming and googles what you described. They’ll be flooded with information that they can’t really make sense of. What language do I choose? I want to make games! So is C++ the right one? Can I learn another one?

          Look at the questions in beginner forums. The naive, seemingly stupid questions. Many beginners struggle to understand what a language is, and how languages are related. To many a programming language is a series of magic incantations that make the computer do stuff. They treat it like spells.

          Then, if you do manage to get over that hurdle, you’ll have to put in quite some time to get anything useful out of your code. You’ll have to bang your head at many hard surfaces, read tons of unrelated crap because, once again, you don’t even know what to google.

          I don’t know, if you ever worked with complete novices. People who want to learn, but know next to nothing. Where I live, you can do apprenticeships for software development, and I had to guide a few of our apprentices. At that point I had been programming since 14, had programming classes in school, master’s degree in CS and several years of work experience. So I was very much removed from being unknowing. Being confronted with the utter incompetence and lack of any context of these guys was extremely eye opening to me. Those were bright, motivated younglings, but everything that seemed obvious to me, was completely beyond their capabilities.

          In short: you may underestimate the difficulties to learn without guidance.

        • blind3rdeye@lemm.ee
          link
          fedilink
          arrow-up
          0
          ·
          2 years ago

          I’m sure its different now from when I started - because coding is very popular, and the internet is a thing… But I can tell you, that it took a long time before I knew what a programming language was, or ‘coding’… these words were just not familiar to me.

          I learnt stuff by just opening random executable files in notepad to see what they look like… mostly it was just garbage that no one can understand - but some of them were readable, and I replicated and learnt from them. (they were .bat files.) I became a bit of an expert in making very fancy batch files. I made customisable menus, and a little adventure game. Then my parents helped me out by buying me a programming book. It was about programming in Visual C++. I was pretty excited - until I quickly worked out that Visual C++ was something you had to buy before you could use it.

          Anyway, my point is that it is easy to see what you need from the point of view of an expert; but from the point of view of a novice, you don’t know what you don’t know. You don’t know which words are important, or what anything is called. The first steps are not hard except that you don’t know which direction you are meant to be stepping in, or where the starting point should be.

    • UnderpantsWeevil@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      edit-2
      2 years ago

      Rolling up and getting started is a great way to find some really sloppy ways to do some initially very fascinating tricks. Like, its not a terrible idea on its face.

      But there’s a huge difference between learning some javascript tricks or python commands to macro with and professionally designing a full stack. Really depends on what you’re trying to accomplish.

      Best thing in the world is a fresh faced young developer who is eager to learn everything you put in front of them. Worst thing in the world is someone who only half-knows how to code but thinks they can do a proper mobile app from first principles. Every time I see a mile of copypasta spaghetti code sitting inside a single oversized Main() function, I die inside.

    • JoYo@lemmy.ml
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 years ago

      Ironically that is how to fight depression, changing your mind. Any technique that has proven effective has been exactly: stop being sad.

      I’ve tutored at least a few people that have needed me to put their hand on a mouse and show them how to navigate an IDE.

      • Doc Avid Mornington@midwest.social
        link
        fedilink
        English
        arrow-up
        0
        ·
        2 years ago

        Medication helps a lot of people, and CBT is very effective for others. I’ve never heard of a “technique” that’s effective against depression that can be reasonably described like that, but I’m not an expert. Would love some concrete examples.

        • JoYo@lemmy.ml
          link
          fedilink
          English
          arrow-up
          0
          ·
          edit-2
          2 years ago

          it takes daily practice but it can be “just”.

          of course, any recommendations given to people can be abstracted absurdly in order to dismiss them if they’re motivated to do so.

    • johannesvanderwhales@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      2 years ago

      I think some people view it as “if you’re meant to be a coder your natural curiosity towards how things work will probably lead you to writing code naturally.” But it’s a pretty gatekeepy point of view.

      • UnderpantsWeevil@lemmy.world
        link
        fedilink
        arrow-up
        0
        ·
        2 years ago

        Its a good litmus test for people who are genuinely interested versus people who just heard “Lern 2 Kode” from a hustler on YouTube and thought they could bullshit their way through it.

        But also, you’ll notice the cartoon character getting handed a nice looking laptop and keyboard. How cool is that? A cartoonist handing you a few hundred dollars worth of hardware plus presumably an always-on internet connection. Imagine if everyone had those kinds of resources just tossed to them at the asking.

        • EuroNutellaMan@lemmy.world
          link
          fedilink
          arrow-up
          0
          ·
          2 years ago

          But they aren’t asking for tools they’re asking for guidance. What’s the point of all that expensive hardware if they have no clue what to do with it and where to start learning?

      • EuroNutellaMan@lemmy.world
        link
        fedilink
        arrow-up
        0
        ·
        2 years ago

        Not everyone learns in the same way. If someone learns better by asking others for guidance and you tell them to just read a book I hope they spank your arse with that brick of paper smh.

    • Zombie-Mantis@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      2 years ago

      It’s like trying to make a person learn how to play the flute by just handing them a flute. If they don’t know how to assemble it, clean it, hold it, press the keys, and proper embouchure, they’re never going to learn how to play the instrument.

    • Simmy@lemmygrad.ml
      link
      fedilink
      arrow-up
      0
      ·
      2 years ago

      So right. I did start a self-taught course in Python years ago, I got stuck on OOP, and couldn’t wrap my head around it, so I go demotivated. I want to start over and learn now that I have more free time.

    • Kindness@lemmy.ml
      link
      fedilink
      arrow-up
      0
      ·
      2 years ago

      When I’ve spoken with people who says they ‘want to code, but don’t know how to start,’ dollars to doughnuts it’s the same problem as wanting to learn hacking, artistry, or science. (I think the original comic was drawing.)

      There isn’t a solid reason for why they want to learn X, the wanters just think it would be cool to *be an X-er", and want anyone to hand it to them.

      The people who want Y, and need to learn X to accomplish it will take the first step. Though many won’t follow through if goal Y is too high. I’ve pointed people to the resources to learn X countless times. It’s only the people who want Y, and are willing to learn X to achieve it, that succeed. Hacker, Coder, Engineer, Artist-er, and on and on. You can lead a horse to water, but not teach it how to drink.

    • exu@feditown.com
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 years ago

      At least for me the most learning to program happened because I had something specific in mind I wanted to achieve and just go for it.

      Yes, the code sucks (And I rewrote it 3 times originally, it still sucks), but it’s not really something I particularly care about now as it mostly works as designed.

      • fsxylo@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        0
        ·
        edit-2
        2 years ago

        I’m physically incapable of doing code “for the sake of it” something has to piss me off enough to want it automated. It’s stifled my theoretical knowledge but I can do a thing if I need to.

        It’s a good thing I have a big project to occupy my time. No shortage of problems to solve there.

  • barsoap@lemm.ee
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    2 years ago

    Obligatory link to the wizard book, aka learn programming the proper way. Never mind the language this is about principles and fundamental concepts. Yes by the end of it you’ll have written a compiler, that’s the equivalent of a smith forging a hammer and tongs. Flank with HTDP if you need a bit hand-holding putting programs together, SICP is rather pinpoint-focussed on the concepts so doesn’t contain much in terms of design. If you want a stand-alone implementation of the language (with the first link you can run all the code boxes in the browser, fancy newfangled stuff I approve of) racket is the way to go, just add #lang sicp in front of your files and you’ll have the exact dialect the wizard book uses.

    The wizard book has been the standard recommendation for like 20 years now, the only reason other tutorials exist is because newbs insist on “how to move cube in unity without programming” type of hand-holding. It’s not actually helping them, on the contrary I see much learned helplessness in the young’uns.

    From those basics you can dive into whatever concrete you need for whatever you want to do, you’ll have the necessary background to not be lost at sea. To further build that background knowledge it’s a good idea to have acquaintance with a broad selection of standard data structures, algorithms, and their properties. No need to go in real depth but you should have an at least intuitive understanding of why they have the properties they have, like, don’t be surprised if your game stutters if you’re using hashmaps. O(1) and amortised O(1) are not the same thing.

    Last, but not least, never write your own datetime or unicode handling code.

    • More like :

      1. Open github
      2. Search cool project that you wanna tried
      3. git clone
      4. Open your downloaded project in your favorite text editor
      5. Install required dependencies
      6. Compile
      7. ???
      8. Run
      9. Profit
      10. Repeat to step 1
    • Heydo@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      2 years ago

      For me it’s:

      Step 1: Google

      Step 2: Open stackoverflow link

      Step 3: Read a bunch of people yelling at OP about why their question/issue is dumb and that they need to Google more.

      Step 4: Find what might possibly be an answer to the question but it is written in a way that leaves out half the knowledge I would need to correctly interpret the answer because this person just assumes I know everything there is to know about programming already. Meaning I would never have need to ask the question in the first place, duh.

      Step 5: Leave computer in disgust and maybe try rubbing two sticks together to make a fire that I can use to burn everything down…

  • Napain@lemmy.ml
    link
    fedilink
    arrow-up
    0
    ·
    2 years ago

    sometimes i wish i could start over learning to code again. it used to feel so mysterious and badass.

    • zerofk@lemm.ee
      link
      fedilink
      arrow-up
      0
      ·
      2 years ago

      Arch? You’re way too nica. A bare Debian netinstall and a link to linuxfromscratch. They have wget, so they can get started.

      • ikidd@lemmy.world
        link
        fedilink
        English
        arrow-up
        0
        ·
        2 years ago

        It’s slightly less painful than having a beautiful woman walk on your testicles with high heels.

    • Lucidlethargy@sh.itjust.works
      link
      fedilink
      arrow-up
      0
      ·
      2 years ago

      I just use homemade integrated circuits on a huge self-built circuit board, myself. I guess some of you need a lot of hand holding.

    • IdiosyncraticIdiot@sh.itjust.works
      link
      fedilink
      arrow-up
      0
      ·
      2 years ago

      I recently sat in a call with someone ~50 y/o helping someone ~25 y/o…

      “Open vim and change xyz” met with “What’s vim…?”

      I don’t think I’ve ever laughed so hard while feeling overwhelming sadness at the same time 😖

      • Hugucinogens@lemmy.blahaj.zone
        link
        fedilink
        arrow-up
        0
        ·
        2 years ago

        I mean… Young people don’t know things yet… Isn’t that normal?

        I get feeling existential about the passage of time, but… Sad? Laughing? Maybe I’m imagining it wrong, but I dunno. Maybe I’m just the young person in this occasion.

        • DefederateLemmyMl@feddit.nl
          link
          fedilink
          English
          arrow-up
          0
          ·
          edit-2
          2 years ago

          I mean… Young people don’t know things yet… Isn’t that normal?

          Depends on the context I guess. If this is a professional IT context in which the 25yo is expected to be proficient enough on a Linux system to edit a text file, not knowing that vim exists is kinda sad.

          • Hugucinogens@lemmy.blahaj.zone
            link
            fedilink
            arrow-up
            0
            ·
            2 years ago

            … I don’t know if I’d call it sad, as much as kinda baffling. Vim was on every package manager list I’ve seen, under text editors… Big stylised letters, how does one miss that?

            I feel like it’s someone who only uses Linux specifically for (and because of) their work, and has probably never tinkered and casually browsed around in it.

            Yeah, I can see how that can be sad, like a person who doesn’t actually share your culture/hobby after all.

  • Schal330@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    2 years ago

    If anyone genuinely feels this way and wants to get started in coding, I highly recommend doing one of the mooc.fi courses. Codecademy is fine as a taster/refresh but don’t waste money on the premium when something like mooc is available for free.

  • tias@discuss.tchncs.de
    link
    fedilink
    arrow-up
    0
    ·
    2 years ago

    I’m not sure I get it. Is there a significance to him holding the mouse in front of him like that, instead of having it on the table like normal people? It seems to me that if you want to learn to code you should have your hands on the keyboard more.