When people do proje

[2021-12-11 01:01:54 PM] : When people do project-based programming courses (like "I'll show you how to build an app that does X"), how do they usually do them? I can imagine at least 3 possible ways people could do a project-based course: 1. just read the project's code and see how it works, don't run any of it on your computer 2. follow along step by step and run all the code as given 3. take the project as a general prompt and write your own code, and then use the examples as a way to check your work and fix bugs as you run into them 4. ?? something else ??
3 Replies
alex
alexOP4mo ago
[2021-12-11 01:11:52 PM] : Two different cases: 1. When it is my first time with the development environment/computer language, I would set up the environment and run the project's code. The goal is to verify that the development environment and build toolchain work. 2. When it is not my first time with the environment, I take the project as a general prompt and integrate into my own project the relevant takeaways from the course. [2021-12-11 01:32:19 PM] : I offer courses like this, and the advice I give students is to use the course twice: 1. Follow the book/video/whatever and ideally code along. Makes sure tooling is working, and they don't miss small things. 2. Use the course as a guide. Eg if the course builds a Twitter clone, try to use it to guide you in building a Reddit clone or something else different enough to push you to apply what you are learning. A third category I've seen from students is people who take the course and expand upon it. Eg I taught how to do server side rendering in one course, and students worked together in Slack (and asked me questions, etc) as they learned how to replace that with a React frontend. I have found the people who do something beyond the course itself are the ones who walk away understanding things really well. The course itself is valuable, but people just don't seem to retain everything from a big project in one pass. I know Mattan (created https://onemonth.com/) told me he first learned Ruby on Rails by following 3 different courses that all taught how to build a web app. He found that taking 3 different courses helped him because the first pass taught more of an overall picture even if he didn't get every little detail, then subsequent courses helped fill in those gaps once he had the whole picture in his head a bit better. I view the second pass of the same course (but building a different app) as a similar way of achieving similar results. I also prefer it becuase it is what worked for me when I first learned web dev. [2021-12-11 01:33:18 PM] : I think this is why courses like this have a lot of value. Anytime you build a new project you can use the course as a guide, often just reading chapter titles to see what you should do next and then reading the actual contents of any chapter when you get stuck on that step.
alex
alexOP4mo ago
[2021-12-11 01:34:55 PM] : I do know people who use gophercises.com and don't code anything. The ones most successful there tend to be experienced developers who just want to quickly get familiar with a new language. They aren't really learning everything from scratch like others may be.
Gophercises
Gophercises
Coding exercises for budding gophers
alex
alexOP4mo ago
[2021-12-11 01:35:49 PM] : That course is also 20 smaller projects, which I think allows the follow but don't code approach to work better. [2021-12-11 01:38:18 PM] : > Anytime you build a new project you can use the course as a guide, often just reading chapter titles to see what you should do next and then reading the actual contents of any chapter when you get stuck on that step. thanks, I wasn't thinking of it this way at all -- that makes a lot of sense [2021-12-11 01:42:28 PM] : it's funny, i feel like i've never seen courses explained like "you can use this course as a guide in your future projects". I never buy project-based course because I'm always like "well I don't want to do YOUR project, I want to do MY project". [2021-12-11 01:51:20 PM] : but of course it makes total sense and now I remember that I used a "write a kernel in C" course to write a kernel in Rust and it was incredibly helpful. thanks again for explaining. [2021-12-11 01:59:09 PM] : Happy to help.

Did you find this page helpful?