I recently completed a tutorial of a mock web and mobile application that allows users to post products for sale. It seems pretty straight forward, but it was a longform tutorial that was quite intricate, and I learned a lot in the process.
They say the best way to learn is to just jump right in and start building projects on your own. While this is a fantastic approach that teaches you a lot (one that is the foundation of many coding bootcamps such as the one I graduated from) there are other ways of learning that can be highly beneficial.
I love the jump-in and give-it-a-go approach, but what I found to be most helpful to my learning process was to first go step-by-step through tutorials. When I was going a bootcamp program I would watch old lecture builds from past cohorts or find easy projects online. I felt that watching someone who really knows what their doing, and seeing their process, would help me avoid common mistakes or bad habits. If I can avoid these pitfalls upfront then, when I do jump into my personal projects, my code is cleaner and the process is a bit smoother than just “figuring it out”.
I was speaking to a friend recently and discussing what I’ve learned most since graduating a bootcamp. Besides becoming familiar with new languages and coding concepts in general, one of the things that I can say I’m significantly better at is solving problems. When I first started my coding journey a small bug would result in a full-blown panic, even ending my practice sessions early. Now, I can recognize patterns and find solutions in minutes rather than hours.
The other benefit I found is when you do encounter bugs you have an opportunity to go through your project. When your 20 or 30 files deep into a project a small bug can force you to go back and review each file, and what specifically each file is doing. From there you really start to see how each component is built and how it affects everything else.
In conclusion, use any learning process that helps you learn the most effectively, but if you haven’t tried a large project tutorial, try it!