Across this vast Fediverse, I have encountered a trend of people answering questions with esoteric programming language speaking in tongues that I don’t understand, including under my own posts. I am a Boomer when it comes to coding and I am only 27. I don’t even know where I would start to learn it because programming is so diverse. I want to feel like I know what’s going on but I don’t. Coding is the future and the future is now and I am lagging severely behind. I guess I’m asking where a bumbling novice like me can learn more about where to start when it comes to programming.

  • @nednobbins
    link
    English
    2
    edit-2
    1 year ago

    I’m not talking about any particular language.

    Modern programming languages are as complex as natural languages. They have sophisticated and flexible grammars. They have huge vocabularies. They’re rich enough that individual projects will have a particular “style”. Programming languages tend to emphasize the imperative and the interrogative over the indicative but they’re all there.

    Most programming languages have a few common elements:
    Some way to remember things
    Some way to repeat sets of instructions
    Some way to tell the user what it’s done
    Some way to make decisions (ie if X then do Y)

    Programmers mix and match those and, depending on the skill of the people involved, end up with Shakespear, Bulwer-Lytton, or something in between.

    The essence of programming is to arrange those elements into a configuration that does something useful for you. It’s going to be hard to know what kinds of useful things you can do if you’re completely fresh to the field.

    Python and Javascript are great. The main reasons I wouldn’t recommend them for an absolute beginner is that it takes some time to set up and, even after that, there’s a bit of a curve before you can do something interesting.
    If they go and change configuration settings in an app, they’re learning to manipulate variables.
    If they click a “do this N times” they’ve learned to create a loop.
    etc.