PyOhio 2013 concluded this Sunday evening. Here is my recap of the weekend.
Keynote Deserved Keynote Title
PyOhio didn’t spend much time bragging about the keynote. In fact, that webpage is pretty much just the presenter, Brandon Rhodes, and the word keynote over and over. Looking back, they should have bragged this up; it was the most engaging and educational presentation that I saw.
Here’s what I picked up in the keynote:
- A Python dict runs at the same speed no matter how big it gets.
- Try not to implement problems. This is of course obvious but stood out because of the crowd chuckle.
- Much like I talked about Ben re-factoring code in my post before PyOhio, Brandon showed multiple ways of solving problems and how python let’s you find both the fastest and least complex way to accomplish a task.
- Sys.exit() is violence. It kills the whole application. A much better way is to use exceptions properly and kill only what you need to kill.
- If a voice inside says, “Go read the documentation” — listen. The voice could be coming from a higher power. In any case, reading the documentation should lead to you writing better code.
Other Talks and Presentations
Python 101: I learned a valuable lesson here. Much like reading the documentation, you need to read the description of the class you plan to attend. I committed to the whole class and found out that it only covered basic Python concepts. More or less it only covered concepts like those found in all programming languages. That is exactly what it said in the description.
I didn’t go away completely empty handed, though. I did pick up that you should use env in the sha bang to make your code more portable.
The most exciting part was when he pulled up a Fibonacci sequence function in Python. (I know you are thinking I must be an uber geek if I get excited about Fibonacci. I haven’t seen that thing since college.) Coincidentally, I was at another college when I saw it again. The Pythonic takeaway here is it used double assignment to eliminate the need for a temporary variable.
Shiny. Let’s Be Bad Guys: In lieu of Porting Half a Million Lines to Python 3, I went to this Shiny class (hashtag peerPressure). It was a really neat interactive class but wasn’t really for me. I’ve worked in Software Quality before and I know how to break apps with injection, XSS, etc.
In fact, I thought the class could have used a little more background on each issue. One example is SQL injection. They simply gave you the query you were trying to break. In a real attack, you wouldn’t know the query. So to add to that, you would inject quotes, apostrophes, or other strange characters and try to get an error message to show you the query.
I assume they left that part out because they only want you to use this on your own website where you would know the query. In talking with Ben about this, he added that there are many break downs in security that lead to a successful attack.
Atypes, Btype, and Ctypes: I listened to Ben’s presentation before the conference during his practice session. (Hey, somebody had to give it a once over!) When sitting through his talk for the second time at PyOhio, I used this time to try my hand at live tweeting on the Twitters. Take away: live tweeting is hard. It is especially difficult if you try to do it from a cell phone. My next attempt at live tweeting will definitely include a laptop and some tools with multiple streams. It was nice that I heard the presentation beforehand because the internal team discussion helped me add to the twitter discussion at the actual event.
Did I learn what I set out to learn?
I set out to learn new python structures that would make me a better python programmer. I did not learn any new structures. This is good because it means that Ben and Sean have taught me a ton in my year at SmartFile. Thanks, guys! This is bad because it looks like I’m back to needing to finish the Python book.
Did I meet people?
I saw a few people that I’ve already met. Of course I know Leah, Sean, and Ben. I probably spent way too much time with them.
Ani Tran, who won the SmartFile Bake-Off, was there. I spoke with her only briefly. Good to see her again.
Travis Cunningham, who was also a part of the SmartFile Bake-Off, was there, too. He probably thought I was stalking him because we kept ending up in the same place! We even ended up at the same Subway for lunch on Saturday. Travis is awesome, though; he’s known for sharing thoughts over in our Developers Forum.
At that same Subway, we ate lunch with a couple of new friends. One of the best topics from that lunch? “How did each of you get into programming?” The answers were varied and interesting.
Share your thoughts on PyOhio 2013 and/or how you got into programming in the comments below.