EuroPython 2016 remarks

Last week, Eu­roPy­thon 2016 fin­ished, and it was an amaz­ing con­fer­ence I had the plea­sure to at­tend. Here is my re­view of those days.

The conference

I ar­rived on Sat­ur­day noon at Bil­bao, Spain, the day be­fore the con­fer­ence, so I had some time to know the city, see the venues, etc. The next day, on Sun­day, was for two sep­a­rate work­shop­s: Djan­go girls and Be­gin­ner’s day. I at­tend­ed the be­gin­ner’s day as a coach, and helped a group of in­ter­me­di­ate de­vel­op­ers with­ ­sev­er­al ex­er­cis­es aimed at ex­plain­ing some Python con­cept­s, such as: con­text man­ager­s, dec­o­ra­tors, ­mag­ic meth­od­s, gen­er­a­tors, etc. It was re­al­ly cu­ri­ous that some of these top­ics were those I was go­ing to cov­er on my talk on Wednes­day, so I felt re­al­ly glad about that. I took an oath (very fun­ny BTW) for be­com­ing a be­gin­ner’s men­tor, and so I did (it was re­al­ly good ac­tu­al­ly). I had a great time help­ing oth­er de­vel­op­er­s, ex­chang­ing ideas and ex­pe­ri­ences dur­ing lunch, ­solv­ing prob­lem­s, and get­ting a first glimpse on what the con­fer­ence was go­ing to be like.

../ep2016-beginners-mentor-oath.png

The mo­ment of the oath for be­com­ing a men­tor, and earn­ing the badge.

Af­ter the work­shop fin­ished, I walked to the main venue, and gave a hand pack­ing the bags of the con­fer­ence. Af­ter that, time to see around Bil­bao.

From Mon­day to Fri­day was the con­fer­ence it­self, with all the talk­s, and train­ings.

Mon­day start­ed with the in­tro­duc­tion to the con­fer­ence, and short­ly there­after, the very first key­note by Rachel Willmer, who gave a great pre­sen­ta­tion, shar­ing a lot of ex­pe­ri­ence, and in­ter­est­ing ideas.

At around noon there was a key­note by N. Toller­vey about Mi­croPy­thon. The pre­sen­ta­tion was ex­cel­lent (one of the ones I liked the most), and the idea of the project is awe­some. On top of that, it was an­nounced that the BBC was ­giv­ing away mi­cro:bits for the at­ten­dees of the con­fer­ence, so it was a great sur­prise to pick up mine at the con­fer­ence desk. I even start­ed play­ing around a bit with it (more in a fu­ture post).

The rest of the af­ter­noon, I at­tend­ed sev­er­al talk­s. At the end, there were, of course the light­ning talk­s, which were amaz­ing.

Tues­day start­ed with the key­note by P. Hilde­bran­t, pre­sent­ing how Dis­ney us­es sev­er­al tech­nolo­gies, in­clud­ing Python, as sup­port for movies and pro­duc­tion­s. It was very good and en­light­en­ing to see an en­deav­our of such ex­tent with Python. After that, dur­ing morn­ing I at­tend­ed a work­shop about Async web de­vel­op­men­t, with sev­er­al Python tech­nolo­gies ­for do­ing asyn­chro­nous com­pu­ta­tion.

Dur­ing the af­ter­noon, I watched sev­er­al great talk­s, in­clud­ing “Pro­tect you users with Cir­cuit Break­er­s”, and ­sev­er­al oth­er good ones, clos­ing with the light­ning talk­s.

Wednes­day was the day of my talk, so I at­tend­ed some talks dur­ing morn­ing and then, at the af­ter­noon, I pre­sent­ed mine. I re­al­ly liked how it de­vel­ope­d. More­over, it was re­al­ly good to re­ceive good feed­back from some at­ten­dees, say­ing they ­liked it, and that it was use­ful for them. Short­ly there­after, I pub­lished the slides and the source code.

On Thurs­day, there were some talks about async/await and asyn­chro­nous pro­gram­ming in Python 3, mock­s, and high­-avail­abil­i­ty ar­chi­tec­ture.

On Fri­day, the key­note was about how Python is used by the sci­en­tif­ic com­mu­ni­ty. It was very en­light­en­ing, and in­ter­est­ing ­to see an­oth­er use case of Python, and how is be­com­ing the main tech­nol­o­gy on this area.

The talks dur­ing morn­ing in this case, were di­vid­ed among sev­er­al top­ic­s, be­ing the main ones: in­stru­men­ta­tion for per­for­mance ­met­ric­s, “How to mi­grate form Post­greSQL to HD­F5 and live hap­pi­ly ev­er af­ter”, “S­plit Up! Fight­ing the mono­lith”. Dur­ing the af­ter­noon, I joined a work­shop about Dock­er, on which we built an ap­pli­ca­tion us­ing Dock­er-­com­bine, and fol­lowed good prac­tices.

It is worth men­tion­ing, that on Fri­day there was an spe­cial edi­tion for light­ning talk­s, which was not in the orig­i­nal sched­ule. Af­ter ­mak­ing some ar­range­ments, and due to some on-the-fly changes, it was pos­si­ble to have an­oth­er ses­sion for light­ning talk­s, right be­fore the sprints ori­en­ta­tion and the clos­ing ses­sion.

Sat­ur­day and Sun­day were for sprints (hackathon­s). On Sat­ur­day I joined to sprint on aio­http, and ac­tu­al­ly ­sub­mit­ted a pull re­quest, that was merged, where­as on Sun­day I want­ed to check on a pytest is­sue.

My talk

It was great to have the op­por­tu­ni­ty to present at Eu­roPy­thon. What was even bet­ter, was the pos­i­tive feed­back I got from oth­er at­ten­dees, and the fact that it was use­ful and in­ter­est­ing for them (which was, in the end, what I cared most about). I found the ex­pe­ri­ence very ­pos­i­tive.

From the com­ments, I gath­ered some­thing I have not no­ticed when I first en­vi­sioned the talk, which is how use­ful these con­cepts might be for peo­ple us­ing Python for sci­en­tif­ic ap­pli­ca­tion­s. It seem­s, sci­en­tists us­ing Python for da­ta pro­cess­ing or com­pu­ta­tion, do not usu­al­ly have the back­ground of a de­vel­op­er, so con­cepts like code read­abil­i­ty, tech­ni­cal debt, and main­tain­abil­i­ty, are help­ful in or­der ­to im­prove the code base. This gave me the idea of adapt­ing the ex­am­ples, per­haps adding one re­lat­ed to these ar­eas.

Python use cases

There were peo­ple from many coun­tries, in­dus­tries, and com­pa­nies with dif­fer­ent back­ground­s. The trend seems to be now on ­da­ta sci­ence, but Python is wide­ly used in many ar­eas.

I be­lieve the main ar­eas of fo­cus for Python are: soft­ware de­vel­op­men­t, sys­tem ad­min­is­tra­tion / Dev Op­s, and sci­ence.

There were talk­s, track­s, ses­sion­s, and train­ings for all of them, with very tech­ni­cal de­tail.

Highlights

There were so many great talks and re­sources that I can­not name each sin­gle one of them, so I will point the main ­topics and some of the talks that grabbed my at­ten­tion the most, but please keep in mind that all were great.

Among the many things pend­ing to test and re­search, are al­so book­s. I learned about PY­RO4, for man­ag­ing Python re­mote ob­ject­s, which seems like a promis­ing tech­nol­o­gy. I will dive in­to more de­tail on con­da and the build­ing sys­tem­s, con­da chan­nel­s, etc. The talk “Ex­plor­ing your Python in­ter­preter” was re­al­ly in­ter­est­ing, and it was a good in­tro­duc­tion, in or­der ­to be­come in­volved with CPython de­vel­op­men­t.

I at­tend­ed many talks about the lat­est fea­tures of Python 3.5, such as asyn­cIO, corou­ti­nes, and all the new func­tion­al­i­ties for asyn­chronous pro­gram­ming, and they all were re­al­ly in­ter­est­ing. In par­tic­u­lar “The re­port of Twist­ed’s Death” was very in­ter­est­ing, and (spoil­er alert), it looks like still has an in­ter­est­ing fu­ture com­pet­ing with the new li­braries and stan­dard­s.

On the light­ning talk­s, it was pre­sent­ed a re­verse de­bug­ger (revd­b), and its de­mo was amaz­ing.

Conclusion

Af­ter at­tend­ing many talk­s, and train­ings, talk­ing to many oth­er ex­pe­ri­ence de­vel­op­er­s, sys­tem ad­min­is­tra­tors, and da­ta sci­en­tist­s, I can state that the con­fer­ence has an amaz­ing learn­ing en­vi­ron­men­t, and the out­come was com­plete­ly pos­i­tive. It was use­ful ­for catch­ing up with tech­nol­o­gy, check­ing the en­vi­ron­ment and see how Python is be­ing used or de­ployed in the wild, learn from use cas­es, ex­pe­ri­ences, and ex­change ideas.

The con­tent was re­al­ly in­spir­ing and open-­mind­ing. I have lots of items to check, as points for re­search, which I will cov­er in fol­low­ing en­tries.

Python 3 is much more wide­ly used than one would ex­pec­t. It is ac­tu­al­ly the stan­dard now, and many talks (in­clud­ing mine), were us­ing Python 3 ­code, but most im­por­tant­ly, most projects are now in this ver­sion, where­as Python 2 looks like the lega­cy op­tion. Good news :-)

All in al­l, this edi­tion of Eu­roPy­thon was awe­some, and I am look­ing for­ward to pre­sent­ing again next year!