Hi, everyone

TL;DR - post below your suggestion for a good programming language for an almost-rookie teacher/educator/writer to start using.

More info: I am trying to decide on which programming language to learn. I know my way around HTML and CSS from being active online, but haven’t done much programming apart from this. I write, teach, and work with digital teaching/learning products a lot. In 2021, I think there will be plenty of time for me to start working with programming. I don’t mean just “learn to code” - I mean using the language(s) as an educator/writer/publisher. Libre / open source context preferred. Which languages look like they fit the bill, Lemmy?

poVoq
link
16
edit-2
10M

Python without doubt. Maybe also Lua if you want to teach game development.

@Reaton
link
410M

Clearly the two best choices for this situation

IngrownMink4
link
1310M

I think Python is the best suited to your needs.

@Openmastering
link
510M

Great article in order to get an overview of the Rust language

@zksmk
link
6
edit-2
10M

Python, Javascript, Rust

Python - probably the easiest language to learn, big in the science community

Javascript - probably the easiest language to learn if you’re either impatient or a visual learner, easy to start as a beginner and set up and get visual feedback, if you make stuff with it to teach it’s the most likely to reach a large audience

Rust - cool and efficient language

@copacetic
link
510M

As an educator/writer/publisher, you might be interested in interactive fiction, so maybe take a look at Inform 7.

To learn a general purpose language, Python would be my first suggestion.

@yogthos
link
510M

My pitch for Clojure and some beginner resources. :)

acidwash jeans
link
310M

LISP

@yogthos
link
210M

Can’t go wrong with Lisp for interactive workflow alone in my opinion. I don’t think I could use a non-Lisp based language at this point. :)

acidwash jeans
link
210M

Right?! I’ve been using Emacs Lisp for … less than a year, and I’m already like, Boo, I don’t wanna use Bash!

@yogthos
link
210M

Janetsh might be of interest, and I’ve been using Babashka for all my scripting needs. :)

Cadey A. Ratio
link
410M

Rust

acidwash jeans
link
310M

LISP

It’s easier to get into than you’d think – and SICP (Structure and Interpretation of Computer Programs, a seminal text) is written in Scheme, a Lisp. LISP

@Echedenyan
link
2
edit-2
10M
(((((((((((((((((((((((((((((((
     ((((((((((((((((((((((((((((((((((
          ((((((((((((((((((((((((((((
)))))))))))))))))))))))))))))))))))))
))))))))))))))))))))))
))))))))))))

If I can use the parenthesis in the way that keys or tags in XML are used (as true trees) then I will accept it.

However, this is not common nor the standard way which make examples harder to help with learning.

acidwash jeans
link
110M

AFAIK, you /can/ use the parentheses as tags in XML, … but it’s okay if it’s not for you!

@Echedenyan
link
210M

I think you mean SXML which is a variation of XML with S-Expressions.

But what I mean is writting Lisp like a XML tree which would be pretty similar to SXML for readability.

acidwash jeans
link
110M

I actually haven’t heard of SXML, so I meant regular lisp. For me, I just mean that this is pretty tree-based, so far as I can tell (I’m not an actual programmer, though, which might be the issue with my understanding):

(defun foo (bar baz)
  (if (predicate)
      (do if true)
    (do if false)))
@Echedenyan
link
1
edit-2
10M

This is an XML tree:

This is an SXML tree compared with an XHTML (XML based HTML) tree:

SXML uses the standard S-Expressions syntax but what I expect is being able to use more this:

(*TOP* 
  (@ 
    (*NAMESPACES* 
      (x "http://www.w3.org/1999/xhtml")
    )
  )
  (x:html 
    (@ 
      (xml:lang "en") 
      (lang "en")
    )
    (x:head
       (x:title "An example page")
    )
    (x:body
      (x:h1 
        (@ 
          (id "greeting")
        ) 
        "Hi, there"
      )
      (x:p  "This is just an >>example<< to show XHTML & SXML.")
    )
  )
)

I think that most people liking Lisp don’t want to change the current formatting standard and maybe most of them have eagle view or a good “mind parser” but it is more readable for me writing like this. I can identify errors easily and I don’t have to count the parenthesis as I have been doing for reading Scheme and Lisp basic programs well.

I also combine this with tabulation of 4 characters instead of soft-tabs (real white spaces) of 2 characters like some people do due to the JS influence.

acidwash jeans
link
210M

Oh, well if you just mean a formatting thing – you can format a source file however you want :) But yeah, that’s not really the popular way to do it. For me, just the opening tags + indentation work well enough to delimit everything, but to each their own.

@Echedenyan
link
210M

:3

@sia
link
2
edit-2
10M

deleted by creator

acidwash jeans
link
210M

LOLOL I’m definitely a convert! I’m not even mad, though; it’s a meme for a reason

@Openmastering
link
210M

It depends if you want to learn it just for yourself or for your students. They will expect to work with a language that is broadly used.

@iortega@lemmy.eus
link
110M

You could also try Nim

@glennsl
link
6
edit-2
9M

deleted by creator

@sia
link
4
edit-2
10M

deleted by creator

A loosely moderated place to ask open ended questions

If your post is

  1. Open ended
  2. Not offensive
  3. Not regarding lemmy support (c/lemmy_support)
  4. not ad nauseam inducing (please make sure its a question that would be new to most members)

it’s welcome here!

  • 0 users online
  • 16 users / day
  • 56 users / week
  • 153 users / month
  • 521 users / 6 months
  • 2.14K subscribers
  • 675 Posts
  • 8.67K Comments
  • Modlog