PyCon2016 (Portland, USA) Highlights
Please find below a little audio podcast summary of PyCon2016 (10min), also transcribed below.
Hello, this is David Flanders. This is my little audio report on PyCon 2016 in Portland, Oregon: which went from Saturday, May 28th to today, which is Wednesday, June 1st. Overall, the conference had about 3,000 people this year. It continues to maintain the idealism of an academic conference, and more importantly, an academic conference very focused on being able to onboard people who are just learning the programming language in a professional capacity (the new postgraduate degree for CS students?). All of the track I went to were very accessible, allowing people to understand how to use Python in different professional scenarios.
Overall, perhaps one of the most interesting things to see was the number of women speakers in this year’s program, up well near 50%, which is a great initiative as more women are empowered to lead the commtunity. Of course, the conference still is predominantly men and definitely white men in their twenty-somethings, plenty of inclusions still to achieve.
Perhaps one of the best talks that I saw was by Kate Heddleston and Joyce Jang, who are consultants and are talking about usability of DevOpps, which, of course, applies to the community I work with, the OpenStack community. As productivity (usability) consultants, Kate and Joyce, go into big companies and actually look at how rapidly expanding companies are onboarding new developers … Of course, in the startup space as companies experience rapid growth, the problem is that each developer a startup adds doesn’t necessarily result in more productivity. Kate and Joyce are often hired in to look at how developers are onboarded into companies as they’re quickly growing from 30 to 300 people, and what DevOpps procedures they can help optimise.
Both made solid points around why usability is about functionality, some really practical lessons to think about. Things like APIs and the tools which developer use to do tests; alongside, the common methods and techniques which a team commonly uses is really important. Increasingly the industry is moving away from a single brilliant developer and balancing genius across a team dynamic.
Another interesting theme was the rise and rise of bots! Of course, everyone in the community is using Slack now. Every session I walked into had a different slack going on half of the screens. Slack has really taken over the space, and of course, everybody’s writing these bots to participate in the community channels. Perhaps the coolest bot I saw was in a talk by Alex Gaynor, entitled “The Cobbler’s Children Have No Shoes or Building Better Tools for Ourselves”. He was talking about a very cool bot they’re using at Facebook, which analyses branches of code with previous branches to suggest likely evaluators. This bot pings people in their slack channels and lets them know that their is some code they might enjoy reviewing.
Another, perhaps more subtle theme of the conference, was around the psychology of developer communities. Interestingly enough, Guido van Rossum, the inventor of the Python language, gave a really interesting keynote about what makes him happy and how that looks from his PoV with someone who is on the autism spectrum. The enjoyment for him was in knowledge of this thriving community and that it wasn’t necessarily about isolation, even though he seemed to be very isolated over the years sometimes because of his intellect. Community enabled him to help other people which brought him happiness.
There were also several other developers who touched on the importance of psychology and being able to better participate in developer community via “positive play”. Almost all open communities will have a ‘code of conduct’. These documents might not be the best wording for what the community should be aiming to uphold? Maybe there needs to be more positive patterns. Some people talked about anti-patterns in community. On the whole -in these all male developer communities- there does tend to be an emotional trend towards a bit of anger sometimes, or perhaps some other negative emotions, especially when it comes to new people coming into the community. More than anything else there was a real drive for talking about how communities be better behaved and help bring people in who want to participate, learn and share.
Again, another thing which Guido actually touched on was that there are still no core reviewers for Python. Further efforts are being made to enable the best developers to take on mentor roles so more inclusion opportunities will result in a better diversity profile.
On a technical note, one of the cool little things that I did like other than the bots, even though the bots were related, was talking about new API’s and the way API’s can be used with apps. Google has put out something called “Progressive Apps”, which is all about being able to do a lot more caching on devices like mobile phones or smaller chipsets, so that you can actually build HTML apps for the web browser on your phone instead of having to build for iPhone and iOS and all the other iOS’s. That’s coming about because of HTTP/2 and the new API’s becoming available. Maybe we’re finally starting to see some trends which are pushing towards native apps for the phone that can work in the browser, instead of having to write for the operating system itself on each one of the phones.
There continues to be a lot of conversation around both Microservices as well as containerization of applications though perhaps not as dominant here inside of this application developer centric community. I was very aware, in talking with many dev, that there was less concern about containers or the way that people want to build apps for the cloud. One of the simple reasons is is because for them, application developers, if it isn’t broke don’t fix it. The idea of containers and Microservices is not yet a high priority. There’s a lot of other things that they’re concerned with in the stack layers above (usability, testing, customer engagement, etc.)
AppDev are not looking down in the stack towards the SysAdmin and DevOps layers. Application developers are looking up the stack. They’re looking at usability or the next thing that’s coming in browser app features. It was an eye opening experience realising that they are not necessarily concerned about containers and Microservices the way that we think they should from a DevOpps PoV.
Plenty of conversation around deep learning and, of course, machine learning. On the small scale as well, and how this can actually help the DevOps and application developers to be able to just have a little bit more logic in the way that we are doing things. Humans are bad and remembering so why not let the machines help you?
API’s seem to still be difficult for application developers in some senses. There were a couple of nice talks on the way you can build API’s for your application from the ground up, but again API’s are perhaps a second thought for a lot of application developers when they’re trying to build an application. Nonetheless, there are some great new frameworks in the form of Flask and OpenAPI, which OpenStack is starting to use. Those are good signs that people are starting to care about the abstraction of their applications so that they can connect better and work across Microservices or even across cloud apps.
Finally, was the closing keynote by K. Lars Lohn who is a biker and a hippie that works for Mozilla Science. He gave a very sprawling conversation around what I would call “a book report for Godel, Escher, Bach, aka GEB” which is all about coming to peace with complexity. I must admit it is really interesting to come back to a PyCon conference, which I’ve missed the past three years. The old is new and new is old, as per usual 😉
For the PyCon foundation there’s a recognition that to grow the community there needs to be more support. Now saying that, of course, PyCon wasn’t looking to expand. They actually said that 3,000 developers at the conference was about right for them. What they were really pushing for was a story more about the community spreading around the world and having different events in different locations run by the community so that it could spread locally. Especially in terms of cost, local is more effective for a broader community.
In summary I continue to ponder the relationship between community and how it can unpick (or move around) complexity so others can join the conversation and help bring in their PoV to untangle the complexity? Our tendency, especially as developers, is to talk about the complex as we love the feeling of our synapses sparking up to discuss new more complex ideas. Yet, maybe it’s not always the best thing to do when it comes to trying to grow the number of users and the people we actually want to benefit from all of this technology.
Any who, that’s me, David Flanders, signing off. Hope this was helpful. Please do ping me on Twitter @DFFlanders. Please make sure to check PyCon via their YouTube channel where most of the above is available.