• Nighed@feddit.uk
    link
    fedilink
    English
    arrow-up
    1
    ·
    4 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
      • Nighed@feddit.uk
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        4 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
            arrow-up
            2
            ·
            4 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?

              • Oh, I should clarify that. Teaching Python was decided for us by admins. The course material MAY have been designed by a teacher, but then also it may have been designed for Year 9 say. It’s inappropriate to be teaching it to Year 7 as a first proper programming language, but that’s what we had to do (otherwise then we would also have to make all our own resources to do it, and don’t forget at this point that I didn’t know how to program in Python myself yet! So yes, I had to use the already made resources, which had OOP in it).

      • 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
          arrow-up
          1
          ·
          4 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.

            • P.S.

              teach them c# and I guarantee they will be making executables to cause trouble

              No, you’re overestimating the students ability. I taught C# in coding club (they were mostly around Year 8), and it was a struggle just getting them to understand basic programming concepts (imagine having to explain MVVM to them - they’re not good at understanding abstraction) - they wouldn’t have had a clue how to turn it into a malicious exe.