Hi there!
You've just finished some of the most intensive and hardest weeks of your life. But you've made it! Congratulations, you are now full-stack developers able to build great web projects from scratch.
But Le Wagon is just the beginning of a long journey. Being a developer is an incredibly rewarding position because you get to learn new things every day. But it is also a challenging role. With this repository, I want to share with you some tips and resources to keep on improving your skills as efficiently as possible.
One of the most difficult things after Le Wagon is that you won't have teachers and TA anymore to help you every day. Of course, you have Le Wagon community on Slack but it is not as instantaneous as a ticket. After Le Wagon, you should aim at being really autonomous to solve your code problems as fast as possible. To do this, you need 3 skills:
During the bootcamp, you may have seen teachers solving problems you had been struggling on for dozens of minutes just by reading your error message. It takes some practice but learning how to find your error messages and how to read them will solve 90% of your problems. Sometimes it will give you directly an answer, most of the time it will narrow the scope of the problem. Good developers are (almost) always happy when they see an error message because they know it will help them solve their bug.
When the error message does not directly give you an answer, learn how to debug
with binding.pry
(or debugger
for Javascript). Every time I see a bug I
don't quite understand, the first thing I do is put a binding.pry
in my code
to see what is going on and how do my variables look like at this specific
moment. With good binding.pry
skills, you will rock in the developer world.
P.S: Aaron Patterson, one of the most famous Ruby developer, is a "puts debugger". It is another way to deal with errors. Enjoy this article to learn more.
When you are facing a problem you really don't know, get used to Google it. 99.9% of the times, you will find somebody who had a pretty similar problem on StackOverflow. Google skills are the most important ones for a developer.
Here are my personal advice on how to progress after Le Wagon. I myself did/read half of the resources and heard really good reviews from Le Wagon alumnus about the other ones. You can find free PDF of most of the following books on the web but, if you can, please support the authors ;)
After Le Wagon, a lot of things look like magic because you don't have time to learn the core concepts. I found it super valuable to get back to the roots and learn more about topics not directly related to a language to get this right! If I was doing Le Wagon today, I would read the resources below directly after it.
- Learn the most valuable Computer Science concepts in 1 afternoon with Computer Science Distilled. Best book ever!
- Improve your Git level by reading Ry's Git Tutorial, it is free and amazing!
- Enjoy a funny dive into DevOps with The Phoenix Project
If you know Ruby well, Rails will be so much easier!
- Read Eloquent Ruby
- Read 99 bottles of OOP
- Subscribe to Ruby Tapas
Because of course!
- Read the Rails guides
- Read The Rails 5 Way
- Read Rails Anti-Patterns
- Subscribe to Go Rails
Javascript is primordial but you don't know it well after Le Wagon. Take some time to improve your skills.
- Do the free Javascript30 web course
- Learn the last Javascript syntax with ES6 for everyone
- Read the You don't know JS books
Web development is full of hype. However, I would not recommend you to learn the last Javascript library (I know you want to ;) ) just after Le Wagon. Take the time to master your existing skills before diving into something more advanced alone. Below are some options for when you feel comfortable (no real reading list, I am an expert in none of these technologies).
- It is not too late to learn Computer Science. Here is a program I plan to do one day
- Learn a functional language. Elixir and Phoenix (the most popular framework for Elixir) are great choices for Rubyist as Elixir was written by a former Rails core contributor.
- I am currently following the Data Analyst Nanodegree on Udacity. It have been great so far!
- Improve your CSS skills
- Learn a trendy JS library (React or Vue.js for example). Good resources include Wes Bos stuffs or EggHead tutorial. I personnaly have a EggHead subscription as it allows to quickly get introduced to new topics before going deeper by yourself if it catches your interest.
- Learn React Native (and plug it to a Rails API) to build native applications on mobile
You should know about some resources. They will help you a ton in your code every day. Here is a list of the main ones I can think of.
- CSS and HTML references
- Awesome Ruby
- Ruby and Rails style guides
- Ruby Weekly newsletter
- Exercism to test your skills with great coding challenges
If you are a teacher, TA or experienced alumni of Le Wagon, do not hesitate to fork this repository and send me a pull request to improve this learning path. I am sure it could be much better ;)