Learning to code? Then code!
This week in Craft Academy — Week2 July 2017
Back in “business unusual” after the summer break. Here at Craft Academy, this week has been all about getting our students out of their comfort zones, leave the tutorial-like challenges of the first weeks of the camp, and start to build web based systems.
With this weeks challenge we started to lay the foundation for a system that allows users to order food online. We introduce Sinatra, a framework for web based applications, and gave our learners their first insight into various agile practices, focusing on Behavior Driven Development. At the end of the week, we are ready to go live with the Slow Food Online application and we deploy it using Heroku — a platform as a service that enables developers to build, run, and operate applications entirely in the cloud.
For most of our students this is the first encounter with building web based applications. It’s of most importance that they get to work on as many parts of the project as possible — trying to do as much as possible themselves. Even if the coaches are there to introduce various techniques and give support if the shit hits the fan — the students are required to work autonomously for most part.
That makes them nervous as hell — quite understandable, a few short weeks ago the’ve newer written any code at all!
It’s difficult to learn to code, and if you don’t have a guide, it’s hard to know how to teach yourself. We provide a challenge based curriculum based on real-life projects and create a simulated setting where we our students can learn in a structured way as well as practice their skills.
“Practice“ is the keyword here.
If you want to succeed in learning how to code means that you have to actually code. It’s as simple as that — The more you code, the better you’ll get at it.
And never code alone. Work in a pair, a team, and on projects that allow you to use your newly acquired skills in a real life context. To be able to do that you have to be open minded and have courage. What the hell has courage to do with coding, you think? Well, try submitting a pull request to a projects GitHub repo and your code to peer code reviews and you’ll see that you should not be afraid of criticism if you want to succeed as a developer.
Is it okay to write bad code? We argue that the answer to that question is yes. In our opinion, bad code is way better than no code. If you write bad code today, there’s a chance that you will be writing good code in the future. If you build an app that solves a problem for a handful of real users today, there’s a chance you can take part in building an application that can help thousands or more users in the future. If you DON’T write code today, theres a great chance you won’t be writing code tomorrow either.
In Q&A session we held at Craft Academy and Agile Ventures with DHH recently, he said: “This is a journey. Everyone starts out being a shitty programmer writing shitty code. There’s no way to jump over that. The wonderful thing though, is you don’t have to stop there right? You can keep walking and as you go along and get better and you’ll write only marginally crappy code and then they’ll write passable code and then, at some point, you’ll write code where you go like: — Wow this is really nice, I really like this! It never stops which is wonderful right? Otherwise we’d get bored as hell if you could learn everything there is to learn about this whole profession in three months in a coding school, I mean how shallow would the whole thing be?”
That quote pretty much sums up what we try to do here at the camp. Quite often, when we coach junior developers taking our classes, our objective is to make them understand that everything they do leads them forward on their journey to become junior developers.
Writing code together and solving real life problems — even if its just in a simulated setting like a bootcamp, is how you progress.
Keep on coding! Peace out!
Craft Academy is a Tech Education Provider that aims to bring new talent to the market and help to solve the shortage of tech workers. We are founded on the belief that modern development standards, agile methodologies and business skills are fundamental for ITC professionals. Our primary service is a 12-week coding bootcamp designed to provide individuals with a foundation of skills that allows them to enter the industry as junior developers.
With that foundation, our learners find employment in various industries or start their own businesses that bring new innovations to the market.