On Tuesday, 12 March 2024 at 16:20:29 UTC, matheus. wrote:
On Tuesday, 12 March 2024 at 14:52:32 UTC, Mike Shah wrote:
...
I really think D would be a wonderful first language. 🙂 Fast
feedback, no need to manage memory, and easy to use built-in
data structures would make for a nice intro course.
If you say that D would be a good language to learn in lieu
C++/Rust I'd agree, but as a First Language neither one would
be my choice.
Most here already program and know things, but as a first
language forget, at least where and when I did college (Already
knowing how to program), most people were lost with all the
concepts of C++ for example.
Bitwise shifts like << >> and the same operators being used in
cin/cout may be OK for most people already in programming and
using shell, but for those learning was a hell.
Matheus.
I agree (and I've made my case from my DConf talk with some data)
D is much more productive than C++ for students (especially in
the scope of a quarter or semester long course).
I probably would recommend in the general case that someone who
wants to try programming to start with Python or JavaScript --
purely because the start up cost is smaller, and the vast amount
of packages let beginners do something interesting quickly.
That said, in a university curriculum (where students have
multiple semesters), D could prove nice as an intro language as
it has the ability to scale up in difficulty over time. I think D
is friendly enough that it would not immediately turn away
beginners from computer science programs (But ultimately Python
probably wins for now in this category).
As a note, the 'which language is best for CS 1' debate has long
been debated -- but at least in a school setting, I've found the
quality/enthusiasm/encouragement of the teacher to be the most
important aspect regardless of language choice.