Live data from Hacker News

Ask HN: Why do tutorial writers combine 10 technologies when 1 or 2 would do?

news.ycombinator.com

1–10 of 80 posts

Ask HN: Why do tutorial writers combine 10 technologies when 1 or 2 would do?

#1
Suppose I want to learn graphQL - most of the tutorials are a combination of express, react and 20 other things, when most of these aren't going to help me learn what I originally came to learn. I saw a course on blockchain which explicitly stated it is for beginners ("no coding experience necessary") and they picked JS along with 5 other JS frameworks to build a simple toy blockchain when Python would have been a much simpler choice (most of the students were struggling to understand JS Promises and unable to complete the exercises).

Isn't this crazy? I can understand paid courses doing this - maybe they think they're providing more value for the money by tacking as many tech as possible, but free resources? Even they do the same!

Re: Ask HN: Why do tutorial writers combine 10 technologies when 1 or 2 would do?

#2
I've noticed this too. My best guess is that they're written the way the author learned the concepts, without taking the time to find "the simplicity after complexity". (https://en.wikipedia.org/wiki/Shuhari) Makes the writer's job a little easier, but the students' job infinitely harder.

Re: Ask HN: Why do tutorial writers combine 10 technologies when 1 or 2 would do?

#4
Most tutorial writers are terrible at what they are trying to teach. They may have a vague grasp of a concept, but that's about as far as it goes. If they were more capable they wouldn't be writing tutorials.

There are of course exceptions to this, but it covers at least 90% of the people who create courses for sites like Udemy.

Comes back to the old saying, "Those who can, do. Those who can't, teach."

Re: Ask HN: Why do tutorial writers combine 10 technologies when 1 or 2 would do?

#6
post #5

Yes not to mention git and docker are now assumed.

The ability to use a VCS is a fairly reasonable assumption for a programming tutorial unless it is for complete beginners.

Agreed, but in many cases it's still an unnecessary detail.

Re: Ask HN: Why do tutorial writers combine 10 technologies when 1 or 2 would do?

#7
post #5

Yes not to mention git and docker are now assumed.

The ability to use a VCS is a fairly reasonable assumption for a programming tutorial unless it is for complete beginners.

Hrm, agree, but the OP said some of these were written for complete newbies. A newbie at software development is not going to know what VCS stands for.

Re: Ask HN: Why do tutorial writers combine 10 technologies when 1 or 2 would do?

#8
I think there are two types of tutorials which exist: one which provides a high-level overview and the other which thoroughly examines a subject using a practical example. The former is usually the territory of novices who want to demonstrate what they've learned using technologies they've recently encountered. The latter is quality content written by professionals who truly understand and are passionate about the subject they're discussing.

Both types of resources serve a function, but when a certain field has a low expert-to-novice ratio then it is understandable why it might be more difficult to find one instead of the other.

Re: Ask HN: Why do tutorial writers combine 10 technologies when 1 or 2 would do?

#9
I have my own personal examples directory for each piece of tech I use. And where possible, each starts with just main() and zero libraries.

I do have examples hooking it up to other tech, because that's important to know too sometimes. But if you can't use something without a bunch of other libraries you might not actually understand it.

Re: Ask HN: Why do tutorial writers combine 10 technologies when 1 or 2 would do?

#10
A huge fraction of the people who are trying to learn to use GraphQL (to use your example) are trying to learn to use it in the context of React and Express because they have a front end problem they need to solve with it. The blogs they write aren't really about understanding GraphQL in totality or on its own, they are tutorials on using GraphQL in a context with which they the authors (and a great many of the readers) are familiar, namely Node.js apps running Express and React.

The huge number of posts like you refer to is one of the things that draws developers into an ecosystem like React and Express. There is simply far more written about how to use shiny-new-thing in the context of solving a problem in a big existing ecosystem than in the context of pure discussion of some hot new but still largely unused tech, largely because there are so many more potential readers in that large existing ecosystem, and those readers want to read how to solve the problems they face in their ecosystem. Long ago Microsoft's Developer Division talked about this as the difference between three different developer personas. The fanciest persona was "Einstein" who wanted to understand everything about how the tech worked. The lowest was "Mort" who was a dentist who just wanted to learn to write a little bit of script to print a report he needed for his business. And in the middle was "Elvis" who wanted to learn enough to understand what he was doing and to do his work but was ok not understanding everything. Most front end devs are not in the "Einstein" category of how they learn technologies. They are much more motivated by the need to solve an immediate business problem, and they tend to do a lot of blogging because there are so many of them.

Post reply on HN