Is D programming friendly for beginners?

Mike Shah mshah.475 at gmail.com
Tue Mar 12 22:27:11 UTC 2024


On Tuesday, 12 March 2024 at 20:40:49 UTC, Meta wrote:
> 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 think it really depends on the person. My first language was 
> C++, which was absolute hell to learn as a complete beginner to 
> programming, but I really wanted to learn a language with 
> low-level capabilities that could also do gamedev. Learning C++ 
> as my first language was incredibly difficult, but it also made 
> the programming parts of my CS degree a breeze - especially 
> courses like machine level programming. Nobody else in the 
> class even understood what a pointer was for the first couple 
> weeks.

I've been at institutions where C++ is the first language and for 
most folks who were sure they wanted to do programming it was a 
fine enough language (when taught with care) to teach. In fact, 
it benefited me (and other instructors) quite a bit when I saw 
those students later and taught them computer graphics (usually 
taught in C++ to prepare them for job market).

For folks who were not sure if they wanted to study computer 
science, unfortunately they were scared away as they thought this 
was the only path for programming (i.e. C++, assembly, etc.). For 
this reason, a language that is gentler (e.g. Python, JavaScript, 
or I also suspect a large subset of D) would all have been better 
choices. More universities these days are offering courses with 
gentler options (e.g. Programming for non-majors) which usually 
take this approach to more slowly ramp students up -- which I 
think is a good thing to have these offerings. And then later on 
in the program, these students can learn the good stuff (i.e. 
systems, compilers, graphics, etc. :) )


More information about the Digitalmars-d-announce mailing list