6

what do you guys think is a good language to use when teaching the basics of coding? i've been thinking about it and i think something strongly typed would be the best, but i don't want to choose something too restrictive with errors, since i will be teaching for people that are not interested to working in the field

Comments
  • 1
    Perhaps scala? Or typescript
  • 1
    @alexbrooklyn typescript is not strongly typed tho... I've never used scala so i wouldn't know
  • 3
    Python or JS.
  • 2
    Depends on what you want to teach:

    OOP: Java
    Functional: Haskell
    Web Stuff: PHP
    Desktop: C#
    Mobile: Dart (Flutter)
    Lowlevel: C (or maybe Rust)
  • 1
    I would say Python.
  • 1
    Python is weak typed and throws errors that mean something. It also helps to type clean code.
  • 2
    @darksideofyay "teaching people who are not interested in working in the field" -> Python. Any day. I've taught it to economics, architecture, and biology folks, and they're all using it productively and with minimal hassle because they just want to use programming to get their work done with minimum effort, and Python simply destroys everything else at that.

    If they intended to become programmers I would start with C/Scheme/Haskell/C#/Python depending on what kind of thing they wanted to do.
  • 1
    PHP, you can start with dynamic typing, then gradually introduce strict typing. PHP itself is not too difficult to learn and allows you to use various paradigms (e.g. OOP, procedural, functional, yadayada).
  • 1
    Python is probably the best if they aren't actually interested in becoming a programmer and just want to script useful things quickly. I'd toss Go in as a contender if you really want strong, static typing. It's a super simple language, sometimes to a fault, and would probably be even easier to pick up if you didn't have a bunch existing knowledge to "unlearn"
  • 0
    In my opinion, Lua is the best language to teach beginners as it’s the closest to plain English.
    if foo == “bar” then
    baz();
    end
  • 0
    Python or javascript. But from completely 0 maybe html with a notepad. :)
Add Comment