Advice I would have given myself before starting a remote coding bootcamp (coding edition)

I am approaching week 14 out of 15 for Flatiron School Denver’s Full Stack immersive Web Development program. Due to COVID-19, what was once an on-campus program is now done entirely remotely and using video communication tools like Zoom. This program has been full of highs and lows as well a lot of personal growth. As I reflect on the last couple of months, I gathered a bit of advice that I think would have helped me prepare for this experience and helped ease some fears diving into the program! Whether you are starting a coding bootcamp tomorrow or in the early stages of researching bootcamps, I hope this advice is helpful to the start of your journey! This article highlights my advice for coding and learning during a bootcamp. I also have an article for embracing bootcamp culture and making the most of it. Check it out here

While attending lessons, I would code along with the instructors and write notes with my code by commenting them out. When studying, I would rewrite everything down in a notebook. Code and all. It seems like a lot of extra work (and it is) but I think its worth it, especially for those lessons where you walk out asking yourself what just happened. Writing notes by hand requires more in-depth processing of information and I feel like it helped me retain and understand the information better than just reading through it again on VS code. I would also recommend getting some colored pens to write notes. I used these for my program! This is a general note-taking tip I’ve used since college, but I swear by it. I would write code in one color and my notes about my code (usually what each part of the code does, other ways to write that piece of code, etc.) in another color. Color-coding your notes helps for recalling the information later. This method helped me in OChem and its helping me years later with coding!

Build and burns are, in my opinion, one of the most effective ways of learning to code. Build and burns are essentially creating a new file, building something from the ground up and then deleting it and doing it all over again. That repetition really helps you learn! I did countless build and burns when learning to use Rails as an API and rendering the data on the frontend with HTML/CSS and Vanilla Javascript. I made it fun and used my Animal Crossing villagers as data. I started by creating a new Rails file and created the necessary models, seeds, routes, and controllers. Then I rendered the names and images for each villager on my frontend. Once that was done, I would delete the whole thing and start over!

In Agile software development, this is a key habit. Working on thin vertical slices means that you are working on a feature at a time: a little bit of work on your backend and frontend to produce a full feature. A major downside to working in horizontal slices is that the project can’t be used until all the horizontal slices are finished. By working in thin vertical slices and feature by feature, you can see how each part of the app looks as the project progresses. Oh yeah, also don’t wait to style at the very end of your project.

Thin vertical slices vs. horizontal slices. Image from https://agileforall.com/vertical-slices-and-scale/

This one is pretty self-explanatory but, when doing labs or code challenges, if I came across any questions, I would write them down either commented out in my code or in my notebook. That way when it came time for a study hall or a code challenge review, I had those questions ready to go and in the exact place in my code where I was stuck.

That wraps up the advice I would give to my pre-bootcamp self on tips for coding and learning in a bootcamp. Thank you for reading and I hope this advice was useful!