Monday, May 2, 2016

4th Annual Mini PyCon

One thing I love about attending these Python meetups and events is that they always give me a new perspective on something I don't normally have to think about on a daily basis. Today I attended the 4th Annual Mini PyCon hosted at Lyft HQ in the Mission (right behind Southern Pacific, who knew?), and to say that I thought I would be completely out of my element would be an understatement. I didn't think I would really be able to learn much given my extremely novice skill level at Python, but I was surprisingly able to absorb a good amount of knowledge at all the presentations I attended.

Granted, two of the three presentations I attended weren't focused on actual code (but nevertheless still very helpful, one about user research the other about design), but still. New knowledge and perspectives. So when I first got my food, me being my usual loner self in these meetups, decided to sit down at a table next to two nice ladies, and turns out one of them, Chloe Mawer, was one of the presenters! At first I thought her presentation title "Trainspotting, real-time detection of a train’s passing from video" was a metaphor for something really deep (which it could be, I wouldn't rule it out completely), but as it turns out it really was about train-spotting. As in, "Look, a train is passing by my window!" Her presentation was amazing, and given how she told me she had just finished her presentation mere hours ago, I was even more impressed.

The whole thing was so simple, yet revealing about the way computer scientists, or scientists in general maybe, have to think. You are presented with a problem/objective. It's easy to think it's easy to get a solution, until you start considering all the different parts to solve that problem/reach that objective. How do you tell a train is passing by your window? A normal person would just look out the window and be able to see one coming, but how do you tell a computer to look?

It's all about change; change in the environment before and after a train has entered the scene. Once you've found a way to detect a change, how do you know it's a train? You eliminate distractions. How do you know what direction it's going towards? You compare what would be telling of a left-moving train from a right-moving train.

Really, it's all about picking things apart and addressing them one by one to make them work together to do what you want. Eliminating the distractions, asking the right questions, and finding the solution to each component in the simplest way possible. This is something I need to continue working on. Sometimes I tend to over think things when I'm doing Python exercises, like adding in extra for loops and variables because I get scared my code would otherwise not work, and then later realizing that their existence was not necessary at all.

I was so glad that I attended this Mini PyCon. Eye-opening, and the perfect Motivational Monday reminder to keep going!