• @thingsiplay@beehaw.org
    link
    fedilink
    610 months ago

    Somewhere before 2010, when I was still on Windows on my laptop and using AutoHotkey, I learned a dialect of Basic. To write an application starter on my USB stick, when going to internet cafes. The starters job was just to run my AutoHotkey script with AutoHotkey interpreter. I never used the Basic language again. I actually forgot which dialect, maybe FreeBasic.

  • @BehindTheBarrier@programming.dev
    link
    fedilink
    21
    edit-2
    10 months ago

    It’s hyperbole, but I learned my first language because I wanted to be a god.

    I saw these magic windows that popped up, that had buttons, and I was jealous of these godly creators holding the power to make them do as they wanted. So, I learned it myself. I peeked at another program I was using, it was using python and PyQt so that’s what I set out with to become my own god of the desktop.

    My first program was a GUI wrapper around the YouTube-dl CLI, and I still use it frequently.

    • @Oka@sopuli.xyz
      link
      fedilink
      510 months ago

      I became a Game Programmer. Job market sucks right now, so I’m cleaning toilets and taking out trash at a grocery store.

      But hey, on my days off I sometimes have time to work on games.

      • @breadsmasher@lemmy.world
        link
        fedilink
        English
        3
        edit-2
        9 months ago

        I wanted to get into creating video games.

        I ended up in software engineering for financial companies. It killed my hobby love of programming but the salary is worth it. Exceptionally lucrative, and I have never struggled for work, with great pay, bonus, benefits, equity

    • Ephera
      link
      fedilink
      610 months ago

      No idea, if this was the case for you, but learning how the magic works can definitely make it less magical…

  • Admiral Patrick
    link
    fedilink
    English
    1910 months ago

    Lemmy UI constantly pissed me off, Photon didn’t quite do what I wanted, so I forked it and learned Svelte. lol

  • chameleon
    link
    fedilink
    610 months ago

    Needed to write a syntax highlighter for VB.Net but I couldn’t find any weirdly written edge cases online, so I had to make some myself.

  • @Starb3an@sh.itjust.works
    link
    fedilink
    1310 months ago

    Arduino and Python to create a sexy machine that syncs up to videos. Oh I also made the sex machine part, like machining metal parts and soldering electronics.

  • @Kacarott@aussie.zone
    link
    fedilink
    1210 months ago

    I was trying to rank up in Codewars, and there was a 1kyu (hardest and worth the most points) kata only available in OCaml, so I learned it in order to solve.

  • I, as a teacher, have had to learn several languages, but that’s not the dumb reason bit. The dumb reason bit was WHY I had to teach Python, which once I learnt it (so I cold teach it) I could see right away was NOT a suitable language for teaching to Year 7 (who up to now have only used Scratch). I was teaching the U.K. curriculum, and I found out that teaching C# was also allowed - still not ideal, but better than Python for learners -but pretty much all schools were teaching Python. When I dug into it I found I was far from alone in not wanting to use Python… and I also found out the reason schools were teaching Python. It was because from an ADMINISTRATIVE point of view it was much easier for the schools to have us teaching Python. In other words, the office-workers who didn’t have to teach it, only had to admin it, were forcing everyone to teach Python because they wanted the lower overhead that came with installing/maintaining that vs. C#. ARGH! All the teachers who wanted to teach C# were running into exactly the same road-block.

    • JackbyDev
      link
      fedilink
      English
      1610 months ago

      I’ve always seriously questioned why python has become the defacto beginner language. Sure, a simple print hello world is short, but I feel like static languages are easier to see what’s going on.

    • @0xDREADBEEF@programming.dev
      link
      fedilink
      English
      2
      edit-2
      10 months ago

      Honestly, I taught myself JS in like 2009 as my first programming language. My high school taught Java, but I didn’t get OOP. I understand functional programming though, so after JS I taught myself Elixir, then OCaml and Haskell. I really wish I was just taught Clojure or another lisp-like in school though. Python is… okay… I need expressions in my language, though, and Python is not that.

        • object-oriented (this is their FIRST proper programming language - they don’t even know how to write loops yet and you want us to teach them OOP at the same time?! And as it turns out, I had one student who literally could NOT work out how to use a loop - kept writing 20 variables for 20 iterations. i.e. her variables never varied!)
        • variables are weakly-typed (use it for anything, whether it’s what you first used it for or not, Python doesn’t care)
        • indentation has to be exact (i.e. no brackets, just exact indentation). I had one student whose program wasn’t working, and it even took ME a while to find what was wrong with it (a missing space).

        I think there was more, but that’s what I remember off the top of my head. If it was up to me then I would’ve used Pascal - that’s what it’s designed for! But at least C# has strongly-typed variables, and doesn’t care about your indentation (and unfortunately there was no non-OOP language choice available - I’m not sure how this got in the curriculum when every teacher knows you only teach one concept at a time). As I said, many other teachers felt the same way, but couldn’t get it past their school admin’s.

        • @Nighed@feddit.uk
          link
          fedilink
          English
          010 months ago

          I learnt to program in python (in year 12). It was pretty good:

          • less intimidating than the languages full of braces/brackets.
          • as it’s also a scripting language, you can ignore OOP and just write code.
          • has lots of kid friendly drawing libraries (tortoise.py anyone?) so they can make things they can see on screen etc
          • I learnt to program in python (in year 12)

            Yes, it’s fine for Year 12 - you’ve already learnt all that stuff by then - it’s NOT fine for Year 7 as a first proper programming language, when they haven’t learnt ANY of that stuff yet.

            • @Nighed@feddit.uk
              link
              fedilink
              English
              1
              edit-2
              10 months ago

              I leant from scratch as my first programming language in year 12.

              They tried to teach OOP in year 13, but I didn’t really get it until university.

              This was years ago at this point, I think they introduced the programming GCSE the year after I did my A-Levels.

              A scripting language like python is the ideal language to start with because you can JUST learn the programming bit without worrying about OOP, project structures, compiling etc.

              • I think they introduced the programming GCSE the year after I did my A-Levels

                I was teaching the IGCSE, to students all over the globe.

                you can JUST learn the programming bit

                But NONE of the resources which have been provided to schools do it that way - they ALL use OOP. If that’s what your faculty has chosen to use, then that’s what you have to use. It comes back to what I’ve been saying all along - the schools are dictating to the teachers what they are to teach, and it’s NOT based on what’s best for the students educationally, but what has the least admin overhead for them. That’s the stupid reason that I had to learn Python - admin concerns!

                • @Nighed@feddit.uk
                  link
                  fedilink
                  English
                  210 months ago

                  Oh, ok, that’s annoying then. One of those cases where it feels like the person putting the course together has never actually interacted with children?

            • P.S. the students aren’t going to have any tests where it matters until Year 10, and the curriculum even says that at least 2 languages must be taught (in my case we chose HTML as the second language, because…), and so even though many teachers would like to teach their students C#, the schools simply aren’t LETTING them do that. They don’t want the admin overhead that comes with teaching C#, so it’s Python and… nope, it’s just Python (and so then you have teachers opting for a second language like HTML, cos they can’t get their school/faculty to buy-in on teaching C#, simply because they don’t want the admin that comes with it. The fact that it’s a better language to learn isn’t even considered).

              • @Nighed@feddit.uk
                link
                fedilink
                English
                110 months ago

                Is the fact that C# produced executables also a problem? With python you can ‘protect’ non lab computers at the school by just not installing the python runtime on them. Teach them c# and I guarantee they will be making executables to cause trouble.

                Generally agree with you that teachers should be able to choose at least one of the languages to teach. basic web dev stuff is probably pretty useful to them though if it includes JavaScript?

                • Is the fact that C# produced executables also a problem?

                  Trust me, the conversation never even gets that far.

                  just not installing the python runtime on them

                  We weren’t! We were using repl.it (or something very similar). I don’t know what the story was at other schools, other than many other teachers also wanted C# but had to do Python (it was when I came across this that I finally accepted defeat in trying to get another language in instead of Python. I wanted to start with Pascal and then do C#. In the end I had to do HTML and Python. i.e. the status quo).

                  Generally agree with you that teachers should be able to choose at least one of the languages to teach.

                  We’re supposed to be able to choose both languages, but school admins are taking away one of our choices.

                  if it includes JavaScript?

                  I wouldn’t do that at the same time as HTML - maybe later, separately. As I’ve said, as teachers we only teach one concept at a time.

        • @jjjalljs@ttrpg.network
          link
          fedilink
          310 months ago

          You can use types in Python and your tools will generate warnings

          def something(a: int) -> int: return “potato”

          will turn yellow in an IDE more advanced that notepad.

          Most editors will also show a red line where the indentation is wrong.

            • @jjjalljs@ttrpg.network
              link
              fedilink
              310 months ago

              If you’re writing any language in like notepad, you’re going to have a bad time. I accept your point that school administration may be making questionable choices about what software is installed, but that’s not a problem unique to python.

              • that’s not a problem unique to python

                No, but it’s a bigger problem for C# than is is for Python (though this is changing now), so all the U.K.-based schools were teaching Python, rather than the more-appropriate C#. That was my original point - that’s the dumb reason I had to learn Python, school admin’s wanted the lower overhead of the worse language.

        • @uthredii@programming.dev
          link
          fedilink
          3
          edit-2
          10 months ago

          object oriented

          Python does have OOP but you are not at all forced to use it. You can write code in a functional or even procedural style.

          typing

          I do hate that python doesent have proper support for typing but I think weakly typed variables will actually help beginners as it is less to think about to start off with.

          indentation

          I think there are pros and cons here. In other languages it is considered good style to use indentation anyway.

          I’m sure it is difficult to teach a large class like that though. It was hard enough for me to learn with a much more favourable teacher to student ratio than you probably have. Sorry but honestly I do sympathise with admin as well.

          • Python does have OOP but you are not at all forced to use it.

            Not as an individual, but I’m talking about a situation precisely where the individual choices of teachers are ignored, in some cases by school admins, in some cases by faculty choices. Fortunately I also ran a computing club, in which I was autonomous with how I ran it, and I taught my computing club students C#/MAUI… but even then still saw some of the issues you run into with teaching students. e.g. I told them to install Visual Studio ready for next week, showed them where it was, what workloads to install, and then the next week one of the students had installed Blend for Visual Studio, not Visual Studio. “Look, it has Visual Studio in the name!”. (sigh)

            I think weakly typed variables will actually help beginners as it is less to think about to start off with

            No, that’s exactly the problem to start with. Another rule of teaching (see below for the full list I’m quoting these from) is “never let the first impression be a wrong one”. If you let students think they can use variables for anything, then you run into problems when they can’t. This is why teaching them with strong types first is better - they learn you need to be careful with how to use them, THEN maybe you can let them have some more freedom like Python allows.

            In other languages it is considered good style to use indentation anyway

            Yes, but in those languages it’s optional. In Python it’s mandatory, and if someone’s code isn’t working it’s far easier to spot a missing bracket than a missing space.

          • JackbyDev
            link
            fedilink
            English
            510 months ago

            It’s odd to me that you’re disagreeing with their actual experience teaching.

            • @Nighed@feddit.uk
              link
              fedilink
              English
              -110 months ago

              Lots of us have the experience of being the kid in that situation though. I learnt python in secondary school.

              • JackbyDev
                link
                fedilink
                English
                410 months ago

                They’ve been through the other side of this experience multiple times though.

              • have the experience of being the kid in that situation

                Which kid? The gifted one, the one who didn’t understand loops and used 20 variables for 20 iterations, the one who didn’t understand how to write pseudo code, the one who was dyslexic,…?

                I learnt python in secondary school

                Which Year? I didn’t say it wasn’t appropriate for high school, I said it wasn’t appropriate for Year 7 as a first programming language.

                • Lots of us

                  Also, who do you mean by “us”? Programmers? Not all the kids in class want to be programmers, and this isn’t a programming class - it’s Computer Science. We cover topics like hardware, the Internet, Cybersecurity, the history of computers, data analytics, etc. Not only do not all of them want to be programmers, not even all of them want to be in I.T. - they’re just, you know, interested in computers (or in some cases they’re in the course because their parents think they should be in it - I’ve had a couple of those students). We only spend 6 weeks on programming (we spend 6 weeks on each topic), or sometimes we might do it twice and spend 12 weeks on it, and that’s it for the year! You can’t teach Year 7 kids algorithms, pseudo code, basic programming concepts (variables, branches, and loops) and OOP as well in one year. Especially when not even all of them are interested in programming. It’s just one topic we cover. OOP is something that shouldn’t be covered until at least Year 8, preferably Year 9 (by which stage students have decided if they want to continue on this path or not, and the ones we still have left we start getting more hard-core… which is where the “us” I presume you’re referring to come in).

        • @onlinepersona@programming.dev
          link
          fedilink
          English
          110 months ago

          Why do you even have to mention OOP? C# is object oriented too. Would you start explaining OOP too when teaching C#?

          Python is comparatively easier as it’s nearly literally pseudo-code. There’s no need to even write a main function or functions at all. It uses less characters too e.g no need for semi-colon, brackets in for loops and if statements

          As for indentation being exact, IMO that’s on you. Beginners should be given a proper development environment to work in that helps them as much as possible. Modern editors and IDEs point out syntax errors and indentation errors are incredibly basic. If they are working in an environment that doesn’t even point that out to them, they have been setup incorrectly.

          Anti Commercial-AI license

          • Why do you even have to mention OOP?

            Because I was saying why it’s a bad choice to teach to Year 7. I already said if it was up to me I’d teach them Pascal.

            C# is object oriented too

            Yes, I know, but in this case it’s the lesser of 2 evils, for the other reasons I gave.

            Python is comparatively easier as it’s nearly literally pseudo-code

            And as I just said to someone else, students even struggle with pseudo code.

            e.g no need for semi-colon, brackets

            And I already said that’s one of the drawbacks - indenting has to be EXACT or your program doesn’t work anymore.

            As for indentation being exact, IMO that’s on you

            It’s not on me - it’s in the language itself to begin with. I have no control over it.

            Beginners should be given a proper development environment to work in that helps them as much as possible. Modern editors and IDEs point out syntax errors and indentation errors are incredibly basic

            Now see if you can get the school admin’s to install those ones. As I said, that’s the root issue to begin with - the school admin’s.

            If they are working in an environment that doesn’t even point that out to them, they have been setup incorrectly

            Now see if you can get the school admin’s to fix it. Welcome to the struggle the teachers face in teaching what WE want to teach them.

            • @Eezyville@sh.itjust.works
              link
              fedilink
              English
              510 months ago

              It seems you did the best you could with what you had to work with. It’s a shame the other users don’t understand that you didn’t get to choose the tools your students could use and instead went with what they, in their freedom to choose and install what they want, would have used to teach. I can imagine you only had notepad and Idle to use.

              • Thanks. From memory we were using repl.it, or something very similar. This made it easy for me to look at their code when they had problems (and even then, as I said to someone else, it was quite a while before I realised one of them simply had the wrong indentation on one line - I kept looking at the code and thinking I couldn’t see anything wrong with it, then eventually I realised there was a wrong indentation. If it took me that long to realise, then of course that’s something students are going to struggle with).

    • @kureta@lemmy.ml
      link
      fedilink
      4110 months ago

      I’m really surprised to hear that teaching C# to 7th graders is easer than teaching them python. Python was invented to teach. It looks like pseudo code. I have almost zero experience in teaching so I trust your experience. But can you elaborate a little? What makes teaching C# easier?

      • JackbyDev
        link
        fedilink
        English
        610 months ago

        it looks like pseudo code

        Does it though? I imagine most pseudocode looks like the language the writer is most familiar with. My pseudocode definitely doesn’t look like python.

        • As it is, when we had to teach them HTML, the resources we were given were using PHP at the same time, so I scrapped that and just taught them HTML myself. We never teach more than one concept at a time, so I don’t know how these other things found their way into the curriculum/resources.

          • It looks like pseudo code

            P.S. as a teacher, I can tell you I have seen students who even struggle to write pseudo code. It’s like trying to teach them Greek (not all students, but some, and we need to cater to the lowest common denominator).

            • @apolo399@lemmy.world
              link
              fedilink
              5
              edit-2
              10 months ago

              I hate having to cater to the lowest common denominator, I had to struggle with un-engaging classes all throughout elementary and middle school. I’ve seriously thought about becoming a teacher so I’d like to ask, in your experience, what happens to the children that are able to process more advanced information? Can something be done to keep them engaged and nurture their development too?

              Edited an unfortunate typo

              • Oh definitely! Different students have different learning styles - some learn by memorising rules (ROTE), some learn by understanding the rules (Constructivist), some are visual learners, some are better at learning in group activities, etc. - and we have to cater to them ALL, to keep them all engaged (here’s WHY we have this rule, here’s a video about it, here’s a group activity about it, here’s a worksheet to practise it). But I was referring to the TOOLS that we use with class. We can’t use a tool that the advanced students have no trouble with but the less adept students struggle with - we have to use a tool that the whole class can use, and that’s what I meant about catering to the lowest common denominator.

                Also some (not all) schools have special classes for gifted and talented (G&T) students. And in fact one class I’ve had in my time is a class which was comprised of half the students had various learning difficulties (such as being dyslexic), though they weren’t told that (these days it’s all about trying to keep them in the mainstream as much as possible. So in this class the dyslexic student had a regular student sitting next to him for immediate help with reading anything, which left me free to only need to help him with actual educational issues).

  • @1hitsong@lemmy.ml
    link
    fedilink
    46
    edit-2
    10 months ago

    Because I wanted to listen to music while doing the dishes.

    The Jellyfin Roku client didn’t support audio playback, so I wrote it myself… while learning Roku’s proprietary language 🙄

    • @Flatfire@lemmy.ca
      link
      fedilink
      410 months ago

      It occurs to me I’ve literally never tried to play my music library through Roku. I usually just cast to a speaker with my phone. Is it part of the main branch?

  • Noo
    link
    fedilink
    610 months ago

    Because I couldn’t find any dev to help me make the game I wanted to make.

    • @thingsiplay@beehaw.org
      link
      fedilink
      410 months ago

      This is actually reasonable. You didn’t know what work is needed to make a game, but your reason to learn a programming language because you couldn’t get help is absolutely not dumb in my opinion.

      • Noo
        link
        fedilink
        510 months ago

        Actually I did know the amount and kind of work it required, as I have being working on game projects before (I’m sound designer, music composer and game designer).

        It’s not really dumb yes, but a bit sad when you think about it.

        • @thingsiplay@beehaw.org
          link
          fedilink
          3
          edit-2
          10 months ago

          Ok, it makes it juuuust a little bit dumb, I give you that! :D (just joking). I like that you was determined to do it, even if it meant to go through all of this.

          Once Miyamoto said (I have a book with interviews of Game Designers) that a Game Designer should understand programmers, in order to be efficient. Or something with those lines. So don’t think it is sad, make it a positive power you would have missed, if that would not happen. Sorry if I’m a bit too optimistic in my views.

          • Noo
            link
            fedilink
            410 months ago

            You’re right, but it wasn’t how I took it a the time.

            The underlying message I receive was that if you don’t pay enough or you don’t make people dream Steve jobs style, you won’t get anyone to work with you.

            I’m lucky, I do have the drive and I can take the time to learn news things and I get to meet some wonderful people along the way. But that’s just me being lucky.

            Sorry for venting, but I do think curiosity should be on both side.

  • @PortugalSpaceMoon@infosec.pub
    link
    fedilink
    17
    edit-2
    10 months ago

    I wanted to see what the COBOL job market looked like. So I learned the superficial basics of COBOL in a day or two, just so I wouldn’t be a complete fraud when I put it into my linkedin profile as a skill to see what happens.

      • @PortugalSpaceMoon@infosec.pub
        link
        fedilink
        1210 months ago

        Didn’t get a single reqeust, so this had less impact than expected. Thought there was more old rusty companies looking for a non-retired engineer.

        • @FizzyOrange@programming.dev
          link
          fedilink
          12
          edit-2
          10 months ago

          Yeah I think that’s mostly a myth. When I looked up salaries they were definitely good (for programming; amazing for the average person), but not “I would write COBOL for that” good.

          There aren’t really that many old COBOL systems around. I think it’s mostly just over-reported because you can write an article about how some government department still uses COBOL but you can’t write about one that switched to Java.