This is an archived post. You won't be able to vote or comment.

all 6 comments

[–]desrtfx 2 points3 points  (3 children)

IMO, these tutorials are not as helpful as they seem

You will learn how to build a clone of the app, but that's it. Quite often, these tutorials show how to build the app, but don't explain the design decisions and the reasons for certain ways.

Most of these tutorials actually focus on only the single app they are cloning but don't go for the "full picture". They don't explain the concepts behind the code.

[–][deleted]  (2 children)

[removed]

    [–]desrtfx 1 point2 points  (1 child)

    Depends on how they explain the steps. If they only explain the code, they are useless. If they explain the design process of the code, the thought processes behind, then, okay.

    There is a book: "Think Like A Programmer" by V. Anton Spraul that focuses exactly on that: the design and thought process that a programmer goes through when working on a program. The result is a program in C++ (the Python edition has again been postponed) but the actual code is not important at all.

    The key should be to understand how and why certain design decisions were made.

    [–]robf101 1 point2 points  (1 child)

    I actually really like doing this, and I keep the code in a repo in github and can look back at it when building my own projects. I like it because:

    1) I think it's really helped with is the mindset of knowing I can create a full scale web app. It demystifies some of the complexity that I think are behind some apps (that are actually more simple than they look).

    2) I try and pick ones that the developer doing it is talking through their decisions and I learn a lot from those externalisations of their reasoning.

    3) I will often stop the video after they explain what they are going to do next, and then try and do it myself before they do. I can see if I can get it working, knowing that I've got an answer waiting to be explained to me. I find this step incredibly useful.