Archive for May, 2019

!!con Trip Report: Day One

Posted in Technology on May 12th, 2019 at 08:13:55

Yesterday, I spent the day at !!con (“bangbangcon”), a conference which focuses on “The joy, excitement, and surprise of computing”. The experience was everything I hoped it would be and more!

As someone who is enthused and energized by the excitement and joy of others, !!con is a mecca. The 10-minute talks have one key requirement: The talk title must include an exclamation point! (The must also be “related to computing” and “be about something you think is interesting and cool!” — all of which play a role in what talks are selected.) These requirements are core to the premise of the con: that talks should be about excitement, and it shows in every aspect of the program that is selected. From body modification to unusual game development experiences, from beginners learning about brand new technology to long-time experts exploring and sharing esoteric knowledge about how something works, the talks were all formed around the joy of discovery.

In the past, I’ve experienced !!con from a distance via the tweets of Liz Fong-Jones. Liz has done an excellent job at pulling the high points from various conferences for years, and I have seen !!con tweets go by and been saddened that I wasn’t aware of it early enough to find a way to attend. Thankfully, this year — due to a timely reminder from a coworker — I was able to get to the event. Being here in person is even more valuable because the excitement over these things is contagious, and is energizing for me all on its own.

Compared to the traditional tech conference, !!con has clearly seriously invested in and succeeded in creating a more welcoming and supportive environment where all kinds of folks feel invited and included. It’s visible from almost the first moment you walk in that this is not the audience of your typical tech conference. It’s eye opening what an attempt to create an inclusive environment can achieve. Elements like anonymized review process, a focus on first time speakers, and encouraging anyone that “finds that people like you are underrepresented at programming conferences” to apply have clearly paid off. (Of course, this is only successful because the organizing committee of the conference has clearly done work all over to make this happen, and has a demonstrated history of getting it right, as far as I can tell.) Both speakers and attendees feature a much more diverse mix, both in racial and gender diversity, than I have experienced at any tech event before this.

Another element that is a joy is the level of accessibility to the conference. This is my first event with live captioning, and as someone who has recently come to realize the extent to which I require captions to process information well, it is a joy. While I am not hard of hearing, I suffer a lot from difficulty processing accents and certain vocal ranges, as well as suffering to a certain extent from symptoms of ADHD that make some forms of processing more difficult. The captions are simply an incredible tool towards making the content more accessible, and I’m definitely committed to demanding this level of accessibility from future events I participate in.

For my own participation, yesterday I was happy to act as a facilitator of one of the breakout/”unconference” sessions: “Unions: Why You Should Have One.” I didn’t have an explicit goal, but with the broader worker solidarity movement afoot in tech, I felt like providing a space for people to chat about it was worthwhile. To my pleasant surprise, we packed the room: we had more than 30 people who came in and participated, in every stage of the process from “This seems interesting” to folks who are well down the path towards building solidarity among their workforce and building on it. Also, since I’m in a town far from home, I came into this conference without recognizing a lot of faces, and now I’ve made some new friends!

If I were to try to highlight all the talks I loved yesterday, I would just have to list every single one: Every talk had some aspect I enjoyed. That said, I can make a few special call-outs to ones that really stick out to me:

Kate Beard‘s “Let’s build a live chat! 👍from the 1800s (?!) 🤔using modern web technology!!! 😮” combined an amazing history of the telegraph — how it changed communications worldwide — with a desire to learn how to use the Web Audio API. The result is Morse Chat: An application that you can use to chat with your friends in Morse Code. Kate has just recently finished a 4-month coding boot camp, and is now working at the Financial Times, and was clearly excited to put those skills to work in a fun personal project to learn more about how to use web audio and websockets — and created a fun and nifty app in the process. Kate’s excitement over the app was contagious, and I absolutely loved it.

Each section of the con had a theme running through the three to four talks that were grouped together, and the game development section was definitely a big draw to me. The practical exploration of Game Feel from Ayla provided some awesome demos of what you can do (and can’t do) to make games feel better, and Sophie’s use of a hardware build to cheat at Pokemon was terrific as well — but what I really loved was Em‘s terrific story of creating a game that’s fun to play using a stationary bike.

Em has a history of creating games with unusual interactive surfaces, and recognizes that how you interact with something changes how you experience it. When they bought a bluetooth enabled stationary bike setup, they found that the existing game UI that came with it was insufficiently motivating, and decided to see what they could do to build a better game. They created a prototype application that envisions you as an UberEats style bike messenger: someone who picks up meals and delivers them to clients. Initially, with only a single input — pedal or not pedal — creating a compelling game experience turned out to be hard. The part of this talk that was most interesting to me was the process — during prototyping — where an attempt to add an additional input led them. The plan was to use turning the handlebars as a way of indicating turns. When stymied by the difficulty of combining this notion with triggering re-routing in commercial mapping UIs like Google Maps, Em found it was a development experience that wasn’t “going with the grain”, and took a step back.

After taking a step back, they realized there was a different approach to take: instead of fighting mapping APIs to implement turning down different streets, instead, they could simply give the player a different set of choices: set up multiple food pick ups and drop offs, and turn the game into a more traditional resource conservation/collection game. Now, the choices were around “Which orders am I going to pick up and drop off, and in what order” — creating a game out of solving a modified version of the travelling salesman problem. With that in mind, you create a game that has a compelling loop, without needing to fight against the development style encouraged by your tools. This step into the perspective of someone prototyping a game was absolutely one of my favorite points of the con.

In the health-related track, I loved Sarah‘s talk, “I Built an Artificial Pancreas!” While I’m not personally a health hacker/body mod type person, I have a lot of respect for those like Sarah who are. But the most interesting part of the whole thing to me was how much more effective her insulin pump is at regulating her blood sugar now: With open source software and open hardware, she was able to pull her actual values directly in line with her target 90% of the time, when before that was almost never the case. Open source software for healthier living? That’s a tagline I can get behind.

All in all, this conference is lovely. The community, the technology, the information and the sense of pure joy from the participants and the speakers are hard to describe, and I’m happy I got the chance to make it here.

Onward, to day two!