PyCon 2017 Highlights

written by Eric J. Ma on 2017-05-22

Last post was about thoughts on past PyCons, having attended PyCon 2017. This post is on PyCon 2017's highlights for me.

(1) Serving as part of the organizing committee. I had the privilege of serving on the FinAid committee this year, and spent a large fraction of time in the staff room preparing to disburse FinAid cheques. I have very vivid memories of how slow the line was when I was receiving my cheques back in the day, and so I wanted to make sure FinAid recipients could receive their reimbursements as fast as possible, without wasting time in line (when they could instead be listening on talks).

(2) Teaching two tutorials. This year, I submitted two tutorial proposals, and both were accepted. In the three years that I've been teaching it, Network Analysis Made Simple has always been popular, and I think it's because it gives participants a different way of thinking about data, thus making it an intellectually stimulating topic. I also developed a new material on Best Testing Practices for Data Science. This one, in retrospect, was much fresher, and thus in need of more battle-testing and polish compared to Network Analysis. I have some ideas, including modifications to the workshop format, narrowing the target audience and more, to make it more useful for future iterations.

(3) First talk at PyCon! I also gave a talk at PyCon on doing Bayesian Statistical Analysis with PyMC3! This was my first PyCon talk ever. It was so nice to have a tweet-commendation by PyMC3's creator Chris Fonnesbeck too:

It was also nice to have Thomas Wiecki's tweet-commendation too:

Beyond that, the attendees seemed to like the talk too on the Twitterverse!

It's very heartening to see how many people want to move into Bayes-land! The talk also happened to be the last in the session and last of the day, so I think many people were tired by that point and wanted to go to the final keynote. Thus, the only question came from my friend Hugo, with whom I also worked on a course at DataCamp, who asked about "how we might communicate these ideas to, say, a manager." My thoughts on that were to report not a single number (e.g. the mean), but also the range, and communicate how the lower and upper bound of the range would affect bottomline decisions, or open up new opportunities (though I probably could have expressed this sentiment better).

(4) Feeding Guido van Rossum. Python's BDFL, Guido van Rossum, wandered into the staff office asking to see whether the speaker ready room was open, because he was hungry and was looking for some snacks. We initially suggested the main conference hall, but later I ran out and called him back, because we had some English biscuits in the staff room, and we engaged in a short chat. That's when I had my star-awed moment! Was tempted to get a photo, but I figured he'd probably be fed up with people asking for photo ops, so I decided against it, hoping to be considerate for him. When he finished the biscuit, he said goodbye, and left the staff office. Amazing how everybody else just went about their own business while he was in the room; speaks to the lack of ego that PyCon celebrities have, and that sets a great example for the rest of the community!

Once I'm back in Boston, I'm definitely going to catch up on the rest of PyCon. I heard that there were a lot of good talks that I missed while staffing the conference as FinAid co-chair, will have to make sure that YouTube playlist is set up!

Post-PyCon 2017 Thoughts

written by Eric J. Ma on 2017-05-21

This year's PyCon 2017 is over! Well, for me at least, as I head back to Boston, a place I've had to call home for the past 6 years.

I've noticed my Portland PyCons have felt different from my Montreal PyCons.

In Montreal, I felt more like a taker, a newcomer, a beginner. In Portland, I felt more like someone who could finally give back to the community. If anything, I hope I've been able to encourage others to also give back to the community.

In Montreal, with respect to the community, I felt like I had to slowly navigate a new landscape of networks with people. There, I met a bunch of people who first became my PyCon community mentors: Stuart Williams and Reuben Orduz, whose years of experience in the community and in life are way beyond mine, became long-distance friends with whom I would look forward to meeting with again at the next PyCon. Carol Willing, a fellow MIT alum whom I met at a SciPy conference, also likewise became a community mentor for me. They didn't have to do much: words of encouragement, encouraging us to contribute back while themselves leading the charge, and connecting people together.

These two years in Portland, I've instead started to get involved with the internal organization of PyCon, volunteering a bit of my time on the Financial Aid committee. That's where I got to meet even more people in the community, and in person too! LVH and Ewa, a husband-and-wife team who have made many community contributions. Karan Goel, a software engineer at Google who led FinAid this year and whom I shadowed for taking on next year's FinAid chair role (I think we'll just share the duties again like this year). Kurt, PSF's treasurer who's been doing this for decades, and even at his age, still loves programming, and who loves black decaf coffee. Brandon Rhodes, who is a Python community celebrity for his eccentricity and entertaining talks, who gave me many words of encouragement as I rehearsed my PyCon talk. Ned Jackson Lovely, for whom no words other than "positive energy radiating through everything he does" can best describe him.

I think the PyCon community has done the "community building" portion of coding really well, and I'm thankful to be able to be part of this community of people. At the end of the day, good code is about bringing a benefit to people. So at the end of the day, while programming is an act of making routine things efficient, it's ultimately still about people, not code in and of itself. Thank you, PyCon community, it's been really fun being a part of the community this far, and I'm looking forward to many more years too!

Thesis Defence Video!

written by Eric J. Ma on 2017-05-15

About two weeks after being done, my thesis defence video is up on YouTube! It can be found here:

My favourite parts are recollecting the thought of being scooped by someone else 4 years ago, saying that some people like doing sampling, and stating how the lessons from my first committee meeting have been passed on. Ahh, so many good memories!

Why I Teach Coding Tutorials

written by Eric J. Ma on 2017-05-13

I'm very excited to be at PyCon! It's a bit of a personal challenge this year, as I'll be leading two tutorials, one on Network Analysis and one on Data Testing.

With a bit of time on hand, I've done a bit of introspection as to why I love doing these tutorials. I think I can boil it down to a few broad themes.

Reason 1: Learning. When it comes to learning material, nothing beats having to teach it to someone else. This means I have to master the material in order to teach it responsibly to someone else.

Reason 2: Reputation. Grounded on the foundation of having mastered the material I'm going to teach, getting out there helps me build a reputation for having both technical mastery and the ability to communicate the material out.

Reason 3: Networking. By going to conferences where my tutorials are accepted, it's a great way to meet people and learn about the latest and greatest out there.

My hope is wherever I end up working, I can continue this craftsmanship!

PyCon 2017: Tutorials and Talk Preview!

written by Eric J. Ma on 2017-05-04

This year, I'll be at PyCon 2017 presenting two tutorials and one talk! I'm very excited to be attending!

The first tutorial I will deliver is on network analysis. The GitHub repository is online, and is the most mature of the three. This will be my 3rd year teaching the tutorial; I first developed the material in 2015, and have been refining it ever since. This year, I have great help from Mridul Seth, a student from India who has also been doing network analysis.

The second tutorial I will be leading is on testing practices for data science. The GitHub repository is online, and will cover the use of automated tests for checking code and data integrity, as well as the use of visualization methods in EDA to sanity-check the data. The material is still in development right now, and I'm hoping to get good feedback from the Boston Python community when I dry-run it locally in the Boston area.

My talk will be on Bayesian statistical analysis using PyMC3. As usual, the materials are available online on GitHub. In it, I will cover the two most common types of statistical analysis problems - parameter estimation and comparison of treatment with controls, and demonstrate the process of reasoning through model building, implementing it in PyMC3, and interpreting the data.

Really excited to be making three contributions back to the Python community. I've benefited much from the use of Python tools, and every PyCon I learn something new, so this is my little way of giving back!