Code Monkey home page Code Monkey logo

after-le-wagon's Introduction

How to progress after Le Wagon ๐ŸšŒ

Hi there!

You've just finished some of the most intensive and challenging weeks of your life. But you've made it! Congratulations, you are now a full-stack developer able to build great web projects from scratch.

However, 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 improving your skills as efficiently as possible.

Solve your problems alone

One of the most difficult things after Le Wagon is that you won't have teachers and TAs anymore to help you every day. Of course, you have the Le Wagon community on Slack, but it is not as instantaneous as a ticket. After Le Wagon, you should aim to be really autonomous in solving your code problems as fast as possible. To do this, you need 3 skills:

Learn to read your error messages

During the bootcamp, you may have seen teachers solving problems you had been struggling with 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 a direct answer, most of the time it will narrow down 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.

Become a debugging god

When the error message does not directly give you an answer, learn how to debug using breakpoints. Every time I see a bug that I don't quite understand, the first thing I do is put a breakpoint in my code to see what is going on and how my variables look like at this specific moment. With good debugging skills, you will rock in the developer world.

For more info, see the debugging Rails doc.

P.S: Aaron Patterson, one of the most famous Ruby developers, is a "puts debugger". It is another way to deal with errors. Enjoy this article to learn more.

Learn to find solutions to your problems online

When you are facing a problem you really don't know, get used to finding the solution online.

  • Google and/or StackOverflow: By googling your problem, you will find 99.9% of the time somebody who had a pretty similar problem on StackOverflow. Learn to be precise in your Google searches to get the best result and always challenge the solutions you find.
  • Large Language Models (LLM): New addition in 2024, Large Language Models are getting really good at helping you debug (and build) your apps. I use GPT-4 and Copilot every day, and it saves me countless time. Just remember that the code they produce still needs to be checked and adapted most of the time ๐Ÿ˜‰
  • The source code: As you get more experienced, you will encounter challenges that are less documented. Build the habit of looking at the source code of the packages you use when needed. Use bundle open gem_x in your terminal to see the code of a Ruby gem. It is often of great value and can even encourage you to contribute to open source.

How to progress after Le Wagon

Here is my personal advice on how to progress after Le Wagon. I myself have read most of the resources and heard really good reviews from Le Wagon alumni about the others. You can find free PDFs of most of the following books on the web, but if you can, please support the authors ๐Ÿ’ธ

Get your basics right

After Le Wagon, a lot of things may seem like magic because you didn't have time to learn the core concepts. I found it super valuable to get back to the basics and learn more about topics not directly related to a specific language to get this right! If I were doing Le Wagon today, I would read the resources below directly after it.

  1. Learn the most valuable Computer Science concepts in 1 afternoon with Computer Science Distilled. Best book ever!
  2. Improve your Git skills by reading Ry's Git Tutorial, it is free and amazing!

Improve your Ruby skills

If you know Ruby well, Rails will be so much easier!

  1. Read Eloquent Ruby (oldie but goodie)
  2. Read 99 Bottles of OOP (or anything written by Sandi Metz)

Master Rails

Because of course!

  1. Read the Rails guides to get the basics right
  2. Subscribe to Go Rails to stay up to date
  3. Read Layered Design and the Extended Rails Way to nail more advanced patterns

To go further

  1. Read The Rails 7 Way
  2. Subscribe to Drifting Ruby

Get fluent in JavaScript

JavaScript is essential, but you may not know it well after Le Wagon. Take some time to improve your skills.

  1. Feel the need to practice? Do the free JavaScript30 course.
  2. Improve your JS in Rails skills by learning Hotwire with Hotrails

To go further

  1. Read the You Don't Know JS books (available for free on GitHub).

After all of this is done

Web development is full of hype. However, I would not recommend learning the latest JavaScript library (I know you want to ๐Ÿ˜‰) just after Le Wagon. Take the time to master your existing skillset before diving into something more advanced alone. Below are some options for when you feel comfortable. Disclaimer: I am not an expert in any of these technologies.

Go back to the roots to become a real software engineer

  1. It is not too late to learn Computer Science. It will be a lot of work, but you can follow the Teach Yourself CS program and get your self-taught degree.
  2. Do the Recurse Center, it seems to be life-changing.

Learn Data Science, the skill of the future

  1. If you learn best "top-down", give Fast.ai a try.
  2. Andrew Ng's Machine Learning course is still a great resource.
  3. Tired of MOOCs? Enroll in Dataquest.

Try something different in back-end

Curious about the different ways you can write code? Declarative, functional, imperative, there is something for every way of thinking. So why not learn a new language?

Exercism is a great platform to give a new language a try!

Focus on front-end... and go into mobile

I am really not a front-end expert! Please forgive my mistakes and my lack of resources ๐Ÿ˜‰

  1. Improve your design skills and learn Tailwind, it is amazing.
  2. Learn a trendy JS library (React or Vue.js, for example).
  3. Switch to mobile and learn to create native apps for Android & iPhone.

Understand your users better and improve your product skills

Product Management is a natural path for new (or old) Le Wagon students.

  1. As a Basecamp fan, I really like the Shape Up methodology.
  2. I heard Transformed, the latest book by Marty Cagan, is even better than Inspired.

Dive deeper and discover DevOps

  1. Enjoy a funny dive into DevOps with The Phoenix Project.

Other important resources

You should know about some resources. They will help you a ton in your everyday code. Here is a list of the main ones I can think of.

  1. CSS and HTML references
  2. Awesome Ruby
  3. Ruby and Rails style guides (or use standard)
  4. Ruby Weekly newsletter

after-le-wagon's People

Contributors

damienlethiec avatar kissu avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.