Teaching D from Scratch: Is it a viable first language?
To be frank, why would one choose a language with a small community over any of the major languages? Beginners have to learn -how- to program on top of the language&#x27;s syntax and toolchain itself, so it helps tremendously to be able to search online when they get stuck. And boy do they get stuck a lot, in my experience.<p>If you pick something like python, any common beginner problem should have questions answered on stackoverflow, blog posts, etc. With a more boutique language that&#x27;s not the case. Not to mention the ecosystems are much larger so chances are a library already exists to do something instead of making the beginner do it themselves and overloading them. There will be more tutorials, so people can get unstuck. More documentation around the tooling and just documentation in general exists, and so forth.<p>---<p>Of course, you should teach &quot;what you know best&quot;, but how hard is it to learn e.g. python (even just for the scope of the course) and just teach that? My favorite languages are Rust and Go, but I&#x27;m not going to foist those upon newbies just because I&#x27;m more familiar with those than javascript, python, ruby, etc.<p>The secondary lesson here is that teaching (well) is actually quite difficult. Coming up with a curriculum is hard. Keeping students engaged and unstuck is hard. Knowing how to program doesn&#x27;t prepare you for any of that.