What Sets Nanica.io’s Arduino Bootcamp Apart

Nanica.io
Arduino Boot Camp
Published in
2 min readDec 3, 2015

--

These are the key differences which set this bootcamp apart from most basic Arduino workshops.

See also: Arduino Boot Camp Pitch Slides

1. Ditching the delay(), Be “Multi-tasking Ready”!

– Most who program with Arduino use delay() to control timing because it is simple and straightforward. But during a delay call you can’t do anything else, it monopolizes the processor.This becomes a problem if you move on bigger projects with more functionalities. Because Arduino is a very simple processor with no operating system, it can only run one program at a time. This doesn’t mean you won’t be able to manage multiple tasks with it. We just need a different approach to control timing.

2. A Taste of Basic Object-Oriented Programming

– Most who program with Arduino think in functions and procedures which is intuitive because you just tell the Arduino what to do step-by-step. But what if we use another programming paradigm that allows for more complex behavior with less code? With an object-oriented approach you can, and it also makes it easier to reuse and recycle code you have written before in other projects. We have a lot of projects that use buttons (leds, potentiometers, and relays etcetera), why do we have to write pinMode(pin, INPUT_PULLUP), anddigitalWrite(pin, HIGH) each time? What if a button.New(pin), led.On()would suffice? As early as the very first session, participants write their own library of reusable objects.

3. Emphasis on Clean Readable Code

– Have you ever looked at code you have written a few months ago and realized you don’t understand it anymore, let alone what it is supposed to do? Poorly-written messy code can function but, as your code gets bigger, it becomes it become really hard expand and also to fix when something goes wrong. Poorly-written messy code almost always go hand-in-hand with lower productivity, lower motivation and higher number of bugs in your project.

4. Copy-Pasting Sample Code is Discouraged

– Learners are encouraged to type each of the exercises manually. Copy-pasting reduces effectiveness of the lessons. By copying the sample code exactly the participants train their brains to focus on the details of what they are doing.

5. Open-Source

– We want everyone start learning Arduno this way even if they can’t afford to pay us(or even if they live far far away from me) so I publish all of our code online. If you like what you see, please consider sponsoring a student to attend this workshop so that we can keep making free content for everyone. We accept bitcoins! :)

Important Note: This boot camp does not include basic code optimization. That discussion is reserved for a second workshop.

--

--

Nanica.io
Arduino Boot Camp

The best and most fun way to learn and test your programming skills is with robots!