Live data from Hacker News

Teaching D from Scratch: Is it a viable first language? (2021)

dlang.org

41–50 of 91 posts

Re: Teaching D from Scratch: Is it a viable first language? (2021)

#41

But why? Why use esoteric languages no one knows?? Why teach someone a language they can’t use at work? Just teach Go it’s so simple and teaches you actually good practices unlike Python. Senior devs hate it and junior devs love it for the same reason.

I think “esoteric” is meant for brainfuck, maldbrot and similar. D, nim and co, are quite traditional in language design languages, just not popular (yet).

> esoteric

> 1. understood by or meant for only the select few who have special knowledge or interest; recondite

> 2. belonging to the select few

Just because some people give special meaning to the phrase "esoteric programming language," doesn't mean that people who don't know about it should be chastised for not knowing the... esoteric meaning of the phrase. This reeks of "my club uses this adjective only for this occasion, you're not using it right, you don't belong to the club, go away".

Re: Teaching D from Scratch: Is it a viable first language? (2021)

#42
post #23

Earlier quoted context omitted.

It really does matter at least according to this paper [1]. However I think the paper missed one major sin of not having a GC for introductory programming language. D actually avoids most of these sins and it is GC by default. [1] Seven Deadly Sins of Introductory Programming Language Design: https://users.monash.edu/~damian/papers/PDF/SevenDeadlySins....

Not sure I agree. GC is essential in industry (well, I'd argue that! Ignoring embedded anyway) but I think the programmer has to understand the real cost, and that means allocating and de-allocating, and if that is hidden by the GC then they're not learning that.

True, but you don't need to get them to write C (or similar) in order for them to get to that point later on, once they can write basic stuff. In that regard, D is excellent because it does allow you to write code without the GC once you've mastered the basics, so it may be a (very) advanced part of a course to optimize some algorithm by manually managing memory, and seeing how much difference it makes.

Re: Teaching D from Scratch: Is it a viable first language? (2021)

#43

But why? Why use esoteric languages no one knows?? Why teach someone a language they can’t use at work? Just teach Go it’s so simple and teaches you actually good practices unlike Python. Senior devs hate it and junior devs love it for the same reason.

> Why teach someone a language they can’t use at work? Not everything is about work, especially for children.

If you don’t teach children to succeed at work and get ahead you are knowingly putting them at a disadvantage. If I knew programming when I was much much younger I would be in an even better position than I am now, and I’m in a great position.

Re: Teaching D from Scratch: Is it a viable first language? (2021)

#44
> After half a year we moved on to our second language: Lua, specifically in the video game system Roblox. I almost wish we had skipped this one because it was a bit too advanced for these students, and I was not familiar with the language and the system to begin with.

Teaching something, like a programming language, that you don't know is really hard. But in this case there are 100's of Lua tutorials around Roblox. I would think that they could have done that.

While it's $15 per learner, an alternate could be Pico-8 https://www.lexaloffle.com/pico-8.php Lots of tutorials and lots of demos to look at.

Re: Teaching D from Scratch: Is it a viable first language? (2021)

#45
post #18

Earlier quoted context omitted.

Sure they do. You can tell anyone to "just install IntelliJ" or "just install Xcode" and they'll have a working environment with zero effort. All the popular languages don't require handholding

I would attribute that to the language/company putting in the effort for an easy install. I am sure it is easy to install Swift on Mac but I was trying to guide my friend through it on Windows and he gave up because it was too complex and the installer didn't work immediately (some library path error).

SwiftUI and all the other Apple frameworks that allow you to do more than read and write text to a console don't work on Windows. Beginners should just use an IDE. If one isn't available for their language/platform, that's a sign of things to come

Re: Teaching D from Scratch: Is it a viable first language? (2021)

#48

Earlier quoted context omitted.

> Why teach someone a language they can’t use at work? Not everything is about work, especially for children.

If you don’t teach children to succeed at work and get ahead you are knowingly putting them at a disadvantage. If I knew programming when I was much much younger I would be in an even better position than I am now, and I’m in a great position.

You can't teach children how to succeed at work by having them learn whatever language is trending in the industry, if only because things will have changed and they will be remembering very little of it by the time they will be adult and joining the workforce.

You can teach children programming by using any language. You can do so even more effectively by teaching them many languages, to make them learn how to program rather than how to write code in language X.

Re: Teaching D from Scratch: Is it a viable first language? (2021)

#49

Earlier quoted context omitted.

One of my favorite professors was using Processing, which was confusing for some, but it really helped that the students got to visually see results. I have to wonder if we allowed people to learn programming significantly better when RAD IDE languages were more common like VB6 and Delphi. Something about visually seeing what you're building vs just seeing text on a screen. I guess it would only affect SOME people le…

> Something about visually seeing what you're building vs just seeing text on a screen. When i learned programming as a child, the programs i wrote just produced text on a screen -- but text on a screen was an actually encountered everyday UX on the Apple IIe or Commodore 64 too. I think it does make a difference how quickly you see yourself as making something that could actually be useful, and it's maybe harder to…

I think everyone learns different, so maybe the biggest key is seeing something familiar to what you're used to seeing right before your eyes?

Re: Teaching D from Scratch: Is it a viable first language? (2021)

#50

Earlier quoted context omitted.

> Why teach someone a language they can’t use at work? Not everything is about work, especially for children.

If you don’t teach children to succeed at work and get ahead you are knowingly putting them at a disadvantage. If I knew programming when I was much much younger I would be in an even better position than I am now, and I’m in a great position.

Then they probably should have taught them rust.
Post reply on HN