From helping bookaholics to converting your life into prime-time, what happened behind the scenes at a 9-week coding bootcamp.
Magic is great. Kids and adults are seduced by it alike. There is something about getting a result you want by whispering some non-sensical words or gesturing with a wand. Pre-historical societies performed rituals to unleash its powers and even the modern human cannot avoid attributing some of the events in her life to magic.
The people that you meet, the activities that you do, the places you visit, the things you create that were not entirely nor exclusively the effort of your rational and planning-prone being, are in a way a fruit of magic, serendipity, destiny, randomness, whatever you prefer to call it. And life is full of them.
Rather than feeling out of control, we are most of the times enchanted by and grateful for a little bit of magic in our lives. The mobile phone that was lost in a crowded subway, and you were able to find some days later, the ladybug that wants to share your beach towel, apparently coming out of nowhere.
Much less romantic, but not lacking in some form of magic, was doing a coding bootcamp. In fact forget the Oxford-like walls of Harry Potter classrooms, if you are looking for some magic, the renovated wharehouse walls of a hipster-wannabe open space, may be the place where you will see most invisible wands being raised.
For people like me that find utmost pleasure in creating something from scratch, the bootcamp offered the opportunity and tools for not having to wait for someone else to implement your vision(s). You are now able to make a working prototype of your idea. Or of as many as you like after the bootcamp ends. Rinse and repeat.
During the bootcamp, my team of 3 people developed a working prototype of a web app to facilitate meeting and renting books from bookaholics nearby — BookaBook — and a mobile-first web app to improve the way people use their spare time — primetime. Both issues are important to me, deserving plenty of attempts at being solved. Now we had the tools to take a stab at them.
We started from zero, discussing the concepts, sketching the screens, designing and validating the database schema — please allow time this step or face a lifetime of migrations afterwards — generating and coding the models, the views and the controllers and seeing our new-born child being (literally) pushed to the web for the first time.
There is also magic in seeing what was once magical — the way the internet works, the way a button appears on a landing page, the way search delivers results — as something now more understandable. Moving on from being the naive and beguiled sorcerer’s apprentice to a bit more like the sorcerer herself.
Now we can x-ray web apps, inspect their appearance (also, because we might like it so much that we want to use it as inspiration for our own creations 😁), and imagine the model-view-controller skeleton that allows them to move and live.
Much like Dr. Frankenstein we are also now able, to patch our own code with the one coming from codepen (or the other place where you found that cool javascript animation), and hope for a living creature afterwards.
Now we can always decide to devote a warm summer evening to giving birth to a new creation, confident that a button doesn’t take two weeks to be created.
Granted, there are still things that will remain a bit magical, but that seems to be the case in every stage of learning, even for seasoned practitioners of a topic — some things become non-magical to give place to other more complex magical things on your horizon. Learners in fact are akin to magic hunters, that seek to find and destroy it to discover yet more magic. Over and over again.
What the world sometimes sees as conflicting or opposites, the creative and the analytical, the right side and left side of the brain, here work together come up with the most innovative and functional products. And I am not talking about different people, but both sides of the same person, being summoned to collaborate.
In fact, no good products are made only of good back-end nor good front-end, the best are exceptional at integrating good design with good back end performance, so divorcing the quantitative from the creative is not only dangerous, but most likely prone to produce a sub-par service. Not to mentioned that the idea of the product itself needs to drink plenty of creative juices to stand out in the noise.
That said, and despite having learned full stack (both front-end and back-end), in the projects there were some groups that divided task using the back / front rule — I always had most fun doing a bit of both.
There is this myth that developers are isolated creatures that rely on their noise-cancelling headphones to shield themselves from the world and dwell in their own little bubble. And while that image can be appealing for people that enjoy long hours of deep and focused work, the truth is that they collaborate and much more often than you think.
Proof of this is the much-loved collaboration tool, under the spotligth for having been recently acquired by Microsoft — GitHub, aimed at allowing people to build things together in a smoother way.
Our teams had between 3–4 people, and we all had to learn the ropes of GitHub, going through the initial shivers-down-the-spine moment of merging code and pushing it to master.
To add some complexity, heroku, the web host service was introduced (a third repository…). And you could rest assured that, no matter the warnings, someone would still push to heroku before pushing to GitHub. For all their merits, these tools are not people-proof. LOL.
We developed the two prototypes in the last three weeks of the bootcamp. In the first 6 weeks, we would have brief lectures in the morning and then spend the rest of the day practicing the topics we had just learned.
Every day we were assigned to a new “buddy”, another student, so that we could go through the exercises together. This is different from college, where we tend to stick to a group of people we already know, and also from work, were teams don’t usually change that often. Challenging you to learn from and teach to a new person every day.
We were also assisted by TAs, themselves young people, alumni from LeWagon bootcamp, that could relate to our struggles and aspirations, and that came from different places around the globe.
To newbies, some TAs displayed such amount of badassery, to fit the sorcerers’s analogy perfectly. I will not forget the poise with which Joanna, a TA, addressed our most pressing issues, looking at our half-baked code to extract the most sense of it, and serenely lead us to a less-broken one.
While there is plenty of online content to learn to code, we would have a platform with assignments prepared to keep track of our progress with embedded tests that proofed our code while as we wrote it, considering things like the style of the code, e.g. if you wrote 100 lines of code when only one was needed, you would get “poor style” and had to refactor code to be able to move on.
And while black magic tends to be sexier — you know, sorcerers in dark garments — the way for good things with good consequences was paved the same. One of the prototypes — Stay Safe — allowed people to communicate in emergency situations related to spreading fires, a situation that has haunted our country over and over again, proving that so much can be done using technology for good.
Helping bookaholics meet their peers, common people to make best use of their spare time, and other more mundane yet useful tasks like getting your food from a next door neighbor were all ideas protyped here using some white magic and good ends in view, and they looked pretty sexy in their white gowns.
I cannot say this is what happens in every bootcamp — each one has its own structure, curriculum, teachers, students, location, etc, and any slight variation in any of these can make all the difference, even within the same organisation — nor what will happen after one.
And there is always space to improve — some people are more gifted for teaching than others, collaborating with different people every day is not always devoided of friction, and you could argue some topics could take a longer percentage of the lecture time vs. others.
But while this one lasted these were the magical elements that I have noticed and they seem some pretty sparkly ones.
Ever attended a coding bootcamp? Feel free to share your experience!