PyCon 2014 PiDoorbell tutorial - A LABOR of love and sheer hard work....
This is probably the first and only hardware/software tutorial offered at any PyCon. It has been a labor of love for me. A colleague of mine at work mentioned that he didn't understand how it could be THAT much work, so I figured I'd document some of the things I had to do to pull this off (so far).
- building PiDoorbell,
- finding a co-presenter
- preparing the tutorial proposal including detailed steps of what would be taught including timing
- to spec'ing out a hardware kit that I wanted to give attendees as part of the tutorial,
- researching and determining prices,
- negotiating with PyCon to help with the finances as much as possible,
- re-researching prices to bring it down as much as possible,
- finally getting PyCon's support for some of the hardware (only for registered attendees),
- not know how many units to order because I didn't know how many students we had
- making a call on a final number so I could order parts from around the world and get them on time
- ordering all the hardware,
- paying for all of it (will get reimbursed depending on registered attendees),
- testing the sensors which I had to order from Hong Kong,
- seeking out and confirming teaching assistants from the bay area to fly to PyCon to help with the tutorial,
- finding finances to offset some of the Akkana's and Deepa's costs to attend,
- donating all of my ABI and IEEE awards to CodeChix so that I could pay for TA's attendance at PyCon
- setting up a series of hacking sessions and coordinating to ramp up all TA's,
- dusting off PiDoorbell and powering it on so that I could remember all the details (haven't touched this in several months because of crazy escalation-ready bug I've been working on at work) as well as organizing CodeChix events, partnerships, fiscal sponsorship stuff, campaign etc.
- receiving all the ordered hardware and checking to see if anything was missing
- getting really sick with some damn flu-throat-virus-like-thing that knocked me out of commission for a good 1.5 weeks in March so I couldn't make any progress on anything
- not being able to get serial tty console working on some of the SD cards that I had ordered
- ditching serial console, ordered a mini LCD monitor with HDMI input and did a dance when it arrived
- spent way too much time debugging why the mini LCD wasn't working - nothing was showing up. Turns out the SD card was corrupted - needed a reformat. It worked on a different SD card. Yaay.
- going through first boot setup for 20 SD cards and configuring each one with static IP since I expect the conference wifi to be non-existent and don't want to rely on it. Thanks to Serpil who did this tedious task - she is awesome!
- getting the RPI GPIO interface up and running with the new sensors, Akkana's code changes, finding & fixing bugs in the code as well as my circuit (need stronger glasses). Thanks to Deepa for all her help and support through this at our last hacking session.
- incorporating RPI GPIO into PiDoorbell "recognizer" code and getting that to work
- discovering that the dropbox code to retrieve the url of the uploaded file no longer works because of the change in the dropbox api
- finding a different solution for this problem and finally getting hold of the url of the video file from dropbox and getting notifications out
And that's just a few of the things. So much more left to do including shipping all the hardware (fingers crossed), TA ramp-up, figuring out logistics for each TA (everyone arriving/departing at different days/times), setup/teardown for office hours, setup/teardown at tutorial, slides, handouts, agenda and flow etc. etc. etc.
But, it's all good. It's going to be a great tutorial and people will love it.