What Can I Learn From A Programming Bootcamp?
Not sure what will you get out of coding bootcamps? Here are 27 things you could expect to gain from a programming bootcamp.
Clueless about what’s in store for you in a programming bootcamp?
This might help.
After seeing so many of your friends quit their high paying jobs to join a programming bootcamp to pursue their dreams, non-technical founders who’ve been struggling to find a good technical co-founder for years finally deciding to give coding a try, or simply seeing all your classmates enrol in a programming bootcamp while figuring out what to do next; you’ll naturally be wondering, what’s all this hype about?
The Exodus Of Talent
Well, the exodus is real. More and more bankers, management consultants and professionals from all walks of life are leaving their high paying jobs to take a shot at that idea that they’ve had marinating in their minds for some time. They’ve all figured that if they were ever going to do it, the time is now. As you might have heard, the most logical first-step for anyone who wishes to do so would be to join a programming bootcamp to learn the skills required to build out a prototype so you could validate your idea. But naturally, you’ll have doubts.
What exactly will you get out of a 10-week bootcamp? Would you be able to build out your idea? Can you join without any coding experience? Would you be good enough to be hired as a programmer at the end of it? How would the experience be like and what would you learn?
We totally understand these concerns. We feel you.
Hence, we’ve prepared a list of things that you can expect to learn during your 10-weeks at a programming bootcamp like NEXT Academy that’ll hopefully give you a better idea of what it is like to join one.
Generally, a programming bootcamp will commence for around 8 - 12 weeks. In our case, you’ll learn how to build a fully-functioning app in 10 weeks.Throughout your course, you’ll be building apps of different levels of technical difficulty starting with simple terminal-based apps (an app that runs in your computer’s command line terminal, without any graphical interface) like a to-do list, an address book to more sophisticated apps like a bit.ly url shortener, a Quora clone, to a fully functioning and presentable (complete with styling and css and the full user experience) listing app like Airbnb.You can check out some of the apps built by students over the course of a programming bootcamp here.
Usually, you’ll already be diving straight into the fundamentals of programming in the first few weeks of the bootcamp itself. You’ll learn how to operate your computer from the command line, basic programming language syntaxes, how to define values and objects, simple if/else logic as well as the application of various loops.
Most of the power in programming comes from algorithms. Algorithms are sets of instructions that a computer can perform repeatedly and quickly to solve complex problems.They are used to power search engines, curate your Facebook newsfeed, match students to their desired university courses, find the 5 closest Uber drivers to you and much much more!Of course, you won’t be learning how to build such powerful algorithms just yet during the bootcamp (those would require knowledge from a computer science degree); but you will be learning to write simple algorithms such as a binary search algorithm, which would give you a taste of what it's like to write one.
Any app would require a database to store all the data that passes through it. Hence, you’ll be learning to design database structures (schemas) for various apps that you might be building. In the process, you’ll learn things like how to create join tables, define relationships between models, add validations (check that an email must be an email), index your tables (make the querying process faster), migrate databases and making changes to it. Granted, most bootcamps would not be teaching you the full spectrum of things that you can know about databases (which includes relational, object/document oriented, graph etc), but they would teach you enough (often the most commonly used ones) that would allow you to build a prototype of almost any simple app.
In NEXT Academy’s case, they’ll teach you how to use postgresql, a pretty powerful relational sql database that has the ability to be indexed, searched and store json data (allowing for arrays in a column).
As an established programming language with an established community around it, Python has provided access to web development, scripting, data science, machine learning and artificial intelligence (A.I.). During the bootcamp you will learn Python's web framework called Flask. You will learn to use packages to create special features for your apps as well as learning how to use Python libraries so that you will be able to venture into the likes of data science and all.
During the bootcamp, you’ll learn how to discover the right packages to use, read and understand their accompanying documentation and most importantly, learn how to configure them for your app.
Ultimately, apps are all about features. They are tools that help a user perform a certain set of tasks. For example, Instagram allows users to upload a photo, like a post, sign up/sign in, follow users, and view a thread of posts in the form of a newsfeed. Each of these functions is considered a feature that a programmer would have to design and build out one by one and integrate them with each other seamlessly to create an app.
In bootcamps, you will have to learn how to design and build out each feature for your apps, either with or without the help of gems, libraries or plugins.
No matter how good a programmer you are, you will still encounter bugs and errors in your code. Sometimes, it’s just a missing comma in your code; other times, it could be something you’ve forgotten to configure or add in some other part of your app that is preventing the full app from running properly. It’s all part and parcel of programming. During the bootcamp, you’ll learn how to stay calm when you encounter a bug and logically troubleshoot your app step by step until you finally find and resolve the error in your code.
One of the best things about joining a programming bootcamp is the availability of mentors and course mates whom you could ask and seek help from should you ever get stuck. However, no amount of mentors and helpful course mates could save you if you do not know how to ask the right questions. You would waste a lot of precious time in the bootcamp (which you’ve paid a good amount for) just trying to get someone to understand you. But don’t worry, this is a skill you would master once you have a better understanding of programming and more experience in troubleshooting. After a while, you’d be able to instinctively guess which areas could be the cause to the problems that you’re facing and seek help in that specific area directly.
A programmer friend of ours once told us that this is basically what programming is all about:
“Google, Try, Repeat.
Google, Try, Repeat”
The more you program, the more you’ll find that the above is true. Most of the problems you will encounter in programming are probably already solved by someone else. All you need to know is to be resourceful enough to seek out the answers on google, github or stack overflow.
If you’re just a normal human being like us, chances are you won’t get things right the first time. In fact, not even the second or third time. But you’ll learn that that is perfectly normal. Being in a programming bootcamp, you will realise that everyone around you will be going through the same failed attempts as you. At the very least, you won’t be alone wondering whether you aren’t good enough or just simply not cut out to be a programmer. The truth is, most people don’t get things right the first time!
All experienced programmers would have gone through this phase. Even today, they would still require multiple attempts at something to get things right if they were working on something that they have never done before.
Eventually, with the help of mentors and your course mates, you’ll get there.
Knowing that everyone around you in the bootcamp is failing as much as you and trying as hard as you will motivate you to keep trying. When you finally manage to solve a problem after multiple attempts, and repeatedly do so, you’ll slowly gain the confidence to keep trying no matter what happens. This is because you know that you’ll arrive at the solution at some point. All you need is time.
“Commit early, commit often”
That’s one of the mottos that good programmers live by (read more here). In most bootcamps, you’ll also learn about version management through git. Git is a tool that programmers use to keep track of the changes in their code so they can revert to a previous version if they’d made a mistake that they couldn’t resolve some time in the future, and committing is the act that sets the checkpoint for the program to revert to should anything go wrong in the future. Hence, since it is normal for all programmers to make mistakes every once in a while. It is advisable for programmers to commit as often as possible and whenever they start work on a new feature. This is so that they could always revert to a previous good version of their code should anything go wrong and not have to start from scratch.
If you work in a development house or a tech start-up, you will most likely be working in teams, and working in teams presents a unique set of challenges that is different from you working on your own.
This is because different programmers would have different styles of writing code that might cause problems when the code is combined. As a result, a good programming bootcamp would also teach you how to work in a team to prepare you for the workforce or working with your co-founders.
NEXT Academy’s syllabus has that covered by our final project week where you will be working closely with your teammates to build a fully functioning app that you will be presenting and showcasing to a crowd on the final day. You’ll learn how to code different parts of the app separately on separate branches (on git) and then merging them (into master) and resolving any conflicts that might arise.
In the fast moving tech world that we live in today, speed of execution is crucial. The ability to code allows us to prototype and iterate on various ideas quickly to know which works and which doesn’t, and how we could improve our apps. At NEXT Academy, you’ll be introduced to rapid wire-framing and prototyping tools such as Balsamic and Invision to test out your ideas before you build them.
After this, you will start to appreciate little things like how easy an app is to use and how little steps it takes to get something done.
If you’re joining a full-stack development bootcamp like NEXT Academy, you will be able to understand the full spectrum of key components that are required to make an app work. That includes an understanding of what’s a back-end (where most of the processing is done), a database (where data is stored) and a front-end (that determines how the app looks and operates).
It’s rare to find a programmer that is exceptionally good at everything. Most would have a basic understanding of most things but are only truly good at one or two specific things. This is because there is just too much to learn!Like doctors and lawyers, programmers tend to specialise at what they’re naturally good at or are passionate about. Generally, they can be separated into front-end developers and back-end developers.
Since you will have to do both during the course of your bootcamp, you will eventually discover which one you’re naturally better at and develop a preference for them.
As you will discover on the first week itself as you dive into building simple apps and algorithms right away, programming is hard. There are times when you will get stuck for hours on end, especially at the beginning.
However, with time and effort, you will slowly realise that as long as you put in the required effort and hard work, you too can be good at programming.
The feeling of being stuck sucks. We know. But as you go through the weeks in a programming bootcamp, you will start to realise that it actually gets easier with time. Looking back, you will realise that it wasn’t that hard after all. As long as you put your mind to overcoming something, you’ll be able to do it.
Of the many times that you felt like giving up while being stuck at a line of code, you will be grateful for your mentors and course mates who’ve helped you out. Sometimes, all you need is a little nudge in the right direction and you’ll realise where the problem was. Often times, the mutual support you get from your course mates is what keeps you going and makes the journey enjoyable.
The comfort of knowing that a mentor will be able to help you if you’re stuck or screwed things up also gives you the confidence to try things. That’s why learning how to program in a bootcamp like NEXT Academy is a much more enjoyable experience than learning to do so alone.
As we’ve mentioned, the exodus is real. People from all walks of life are flocking to programming bootcamps in hopes of acquiring the skill that would give them the power to build anything they wanted.
As more and more things get computerised, the ability to code would soon be an essential skill. There is a reason why President Obama and so many other influential figures like Bill Gates, Mark Zuckerberg and Karlie Kloss are championing for a world where every single person knows how to code.Coding is simply the future. Hence, you’ll get the opportunity to meet amazing people from all backgrounds at a programming bootcamp. You will meet all sorts of people from aspiring tech founders with world-changing ideas, experienced bankers, management consultants, musicians, europeans who have travelled half way round the globe because fees are more affordable in South East Asia, to young and hungry child prodigies.
These amazing people you’ll meet at the bootcamp will also go on and continue to be your support network as all of you embark on your respective journeys as a programmer.
You’ll be mind-blown to see how far some alumni have gone on to achieve in a matter of a year. Some would have started their own thriving startups, some would be working in one, some would start their own dev houses while others will go on to work on cutting edge technologies that would change the world.
By joining a bootcamp, you will be plugged into and have access to the continuous support provided by a strong alumni network to whom you can always turn to for help.
Now of course, you won’t be able to learn everything about programming in the short span of 8 - 12 weeks. However, you’ll learn enough from the bootcamp to be resourceful enough to find the answers to any difficulty you might encounter in the future.Together with a strong alumni support network that you can always go to for help, you’re all set to embark on your lifelong journey as a programmer.
No matter what app you intend on building, the process will be the same. With what you’ve learnt during the 10 weeks, you will have an idea of how to go about building anything in the world if you wanted to. It’s all just a matter of spending time finding the solutions to your problems and actually building it out with code. With all the skills you’ve learnt throughout the bootcamp on being resourceful and an amazing support network to turn to, you can be fairly confident that you would be able to figure almost anything out.
A bootcamp like NEXT Academy with a mission to build a thriving and supportive community of programmers also provides graduates with a co-working space at their premises where alumni can hang out, exchange ideas and get together to build prototypes of apps that might one day leave a significant impact on the world.
Upon graduation, you’ll finally understand the power the ability to code gives you. Once you know how to code, you can build anything! Any idea that you might have will no longer just be an idea, simply because you now have what it takes to make that idea a reality with code. That is why so much money is being poured into technology, because that is the sector that would build and define the future. That is why, as a coder, you will be well-positioned to take advantage of this and make the world a better place in the process.
Johnson attended the NEXT Academy web development programming bootcamp and graduated in June 2016