I recently completed the core curriculum at Launch School. Launch School is an online school that teaches full stack web development for beginners, with a real focus on learning fundamentals. You can learn more about their pedagogical approach here. I strongly recommend the programme.
At the end of the programme, I decided to review the whole curriculum to cement my understanding of it.
I’ve written three blog posts covering the different sections of the curriculum, two on the backend courses, and one on the frontend. This initial post will cover my overall journey through the programme, and my conclusions on what I learnt and how I would do it differently if I had my time again.
- Launch School in Review: Backend Courses Part 1 (RB101, RB120, RB130)
- Launch School in Review: Backend Courses Part 2 (RB170, RB180 )
- Launch School in Review: Frontend Courses (LS202, JS210, JS225, JS230) — coming soon
I’m hoping this process will be helpful for students earlier in the programme to hear what someone at the end of the process took away from each of the courses, and provide an overview of the road ahead.
Overview of the My Journey Through Launch School
It took me a while to complete the whole programme — just over two years. In my defence, I was studying part-time and my wife and I had a baby at some point. But as a result, it’s been a very long time since I went over some of the material.
How much time did I dedicate each week?
I probably averaged around 10–15 hours a week on Launch School, which I think is at the very bottom end of the time that you can spend on Launch School. This was probably 3–4 sessions of around 3–4 hours each week (I was working a busy job throughout, and my wife and I have young kids). As I’ll go on to explain, this meant it took me a long time to get through all the material, and I had forgotten a fair amount of it by the time I’d got to the end!
Coding experience before Launch School
Before starting Launch School, I had completed some Python courses on Udacity, and done some data analysis using R as part of an Economics MSc. I wasn’t a complete beginner to coding, but had never studied web development.
Since leaving Launch School
It’s also worth saying that having finished core curriculum, I let out an enormous sigh of relief, and took a bit of a break from Launch School. So, by the time I’d started reviewing the course a few weeks later, I’d spent some time developing a front-end focused project for my portfolio (I’ve written a blog post on what I did after finishing the core curriculum, which you can find here). This meant I was even further entrenched in the world of front-end development when I came back to circle through the backend courses.
What I would do differently
Practice more circular learning
As I had such little time to dedicate to the programme each week, I was always very keen to be working towards the next assessment. As a result I didn’t find the time to go back and review the material from earlier courses. Launch School has some great resources for circling back, in particular the 40 Ruby coding Challenges. Each of these challenges is accompanied by hour long videos talking through how to approach these problems.
I stopped working through the Ruby challenges after RB170, but with hindsight I wish I’d scheduled these to make sure they remained a priority. I’d suggest that you should aim to do 6–8 challenges per course (1–2 a week, depending on how fast you are moving through the programme). This ensure you finish them all by the end of the programme, and provide a great opportunity to keep up your Ruby skills as you work through the front end.
Build some side projects
I also don’t think I gave enough thought to what I would do when I finished the core curriculum. To start applying for jobs, you really need some working projects that you have built yourself and can talk through at interview. Rather than starting to do this after the core curriculum, I think it is probably a better to do this as you work through it. This will allow you to independently put into practice the different technologies as you learn them.
I think a good place to start this would be after course LS175, when you have learnt how to use Sinatra (a Ruby web framework), and gained as a basic understanding of HTML/CSS. At this point you have the knowledge to to build a basic web application.
Creating a few small web apps along the way is a great way to keep up your Ruby and SQL knowledge as you work through the front end courses. It will also allow you to get practice with Git, package managers and testing tools that you learn about in RB130.
Focus less on assessments?
This is a controversial one. With hindsight, I think I would focus less on the assessments, and more on my own sense of mastery of the material. I think the assessments are a fantastic part of LS. It’s the only programme I’m aware of that rigorously tests students before allowing them to move on. However, as so often with education, it’s easy to allow your learning to become too assessment focused.
After RB101 where I scored a B- for the written assessment, I never scored less than an A on any of the LS assessments. With hindsight, if I’d played it a little bit faster and looser with the assessments (and perhaps even took the risk of failing one?) I would have had more time to circle back over the curriculum and cement the knowledge of the courses that I had already completed. Failing an assessment isn’t a bad thing, it’s just a sign that you’re not yet ready to progress. If you don’t allow some risk of failure, you’ll almost certainly be over-preparing for each assessment.
This is not to say that I think the Launch School material is too in depth, just that if you’re cautious, you might be ready to move on to the next course sooner than you think. In some cases, getting top marks on all the assessments might actually be evidence of “a vast and irresponsible overspend” (to paraphrase from comedians Mitchell and Webb) of time on the course you are currently studying, at the expense of a better understanding of the overall course. This is going to be more of an issue with students who are going at a slower pace, where there is a risk of forgetting material you have already learned.
Find other students
Things start feeling a little bit lonely as you get further along in the course. As people drop out along the way, there are always going to be fewer students in the later courses than the earlier ones. This is why I think it becomes more important to proactively seek out fellow students and hold study session together. These study sessions allow you to share how you’re feeling about the course. Talking through difficult concepts and problems with other learners is also a great way to cement the ideas in your brain.
I made a few connections along the way, and had a few joint study sessions. I always found these extremely worthwhile, and wish I had managed to do more.
So those are my conclusions on the Launch School programme, hopefully, some of these will be helpful to you. It’s been an incredible and life changing journey, which I heartily recommend to others.