Asmeninė patirtis/Vieta
Šįkart Europython konferencija vyko Edinburge, saulėtoje Škotijoje. Aš Škotijoje gyvenime buvau tik 3 dienas ir per jas visas nuolat švietė saulė. Tai aš savo empiriniais bandymais įrodžiau, kad Škotija yra saulėta.
Konferencija po nežinau kiek metų pertraukos grįžo prie 3-jų pranešimų dienų formato. Man labiau patiko 5-ių dienų formatas. Tada konferencija jausdavosi daugiau kaip kita dimensija. Nei tai atostogos. Nu gal biški ir atostogos. Bet tikrai ne darbas ir ne biznis. Dabar jaučiasi labiau biznis.
Taigi tomis biznio dienomis klausiausi pranešimų, o vakarais ragaudavau šiaudais ir dūmu dvokiantį Škotišką viskį. Nes nu konferencijos esmė vyksta po konferencijos. Ir jeigu per konferencija jautiesi gerai išsimiegojęs, tai turbūt praleidinėji rytinius pranešimus.
Čia bus mano konferencijos apžvalga, palydėta piešinukais iš mano konspektų.
Keturi aspektai
Mypy ir tipų anotacijos
Jeigu praeitų metų konferencijoje pajutau, kad Async IO ir Python 3 ateina su visam. Tai šioje supratau kad tipų anotacijos gyvuos pitono pasaulyje. Net nežinau, kaip jaustis šiuo klausimu. Mano nuomone, jeigu nori stiprių tipų, tai Python yra blogas kalbos pasirinkimas. Bet industrija juda, kur jinai juda.
Technologijų evangelikų invazija
Kai kurie pranešimai yra per gerai paruošti. Bet biški apie nieką. Ir labai rišlūs (jokio įprastinio mikčiojimo). Bet paviršutiniški. Bet gražios skaidrės. Nors programuotojų spalvų suvokimas neturėtų to prileisti.
Ir tada pranešėjai prisistato, kas jie tokie ir kurioje kompanijoje jie dirba. Ir kokiose pareigose jie dirba. Tada paaiškėja, kad jie turi keistas pareigas. Dažniausiai žinomas ir įvardijamas kaip "technologijų evangelikų".
Tada supranti, kad jie yra profesionalūs konferencijų draugeliai. Tai yra, jiems mokami pinigai, kad jie būtų draugiški per konferencijas. Kad užmezginėtų pokalbius su tikrais programuotojais. Būtų jiems malonūs ir taip įtikintų tuos tikrus programuotojus pradėti dirbti toje kompanijoje arba naudotis jų kompanijos tikrų programuotojų kuriamomis technologijomis. Visą laiką. Jų toks darbas yra visam laikui.
Aš esu lopas programuotojas. Aš noriu bendrauti su kitais lopais programuotojais. Autentiškais. Nu bet pranešimai tikrai gražiai išlaižyti.
Nulis Blockchain
Šitas apie tai ko nebuvo. O gi nebuvo blockchain'ų. Praeitais metais pranešimų ta tema nebuvo daug. Bet visa konferencija visur pakampėse ūžė nuo tų visų bitcoin'ų. Šįkart nieko. Nulis. Niekas nieko niekur net neužsiminė.
Aij, tiesa vakare prie šiaudinio viskio vieną sutikau, kuris dirba su blockchain. Kai paklausiau, ar tiki technologija. Pasakė, kad ne, bet gerai moka šiuo metu (nepaklausiau, bet įtariu moka tai tikrais pinigais).
Taigi, praeitais metais turbūt buvo galima prognozuoti blockchain technologijų bumą (bet neprognozavau). O šiemet galima prognozuoti lėto merdėjimo pradžią.
Mikro servisai yra šešėlyje
Ne. Aš nesakau, kad mikro servisai miršta. Tikrai ne. Bet nebesijaučia to užsivedimo, kuris buvo prieš metus ar dvejus.
Daug panašiau, kad ta ekosistema stabilizavosi. Ir dingo tas prieš tai buvęs elitizmas. "Tavo architektūra ne mikro servisai?!!! O tu iš vis programuoti moki?!!!".
Dabar tarsi kas naudoja mikro servisus, o kas nenaudoja. Bet niekas jau nebesididžiuoja tuo. Mikro servisai įgavo fidget sukučių statusą. Namie kažkur stalčiuje vis dar yra. Bet savininkai nežino tiksliai kuriame. Ir jeigu žinotų, tai turbūt išmestų.
Perklausytos kalbos
Die Threads
https://www.youtube.com/watch?v=FsvmT2Ir7B8&t=25m56sDavid Beazley (pats geriausias Python pranešėjas pasaulyje) pristatė būdą kaip gijinis programavimas galėtų būti daug patogesnis ir paprastesnis, jeigu prasukti jį per Async IO.
Realiai tai jis pristatė tą darančią biblioteką. Tik viena bėdelė. Ta biblioteka dar nebaigta ir neaišku, ar bus baigta.
https://github.com/dabeaz/thredo
Labai rekomenduoju šitą pranešimą.
Asyncio in Python 3.7 and 3.8
https://www.youtube.com/watch?v=w-XECcIWnlQ&t=15m21sPagrindinis Async IO programuotojas pristatė Async IO istoriją ir dabarties (3.7) bei ateities (>3.8) naujoves.
Ir kažkodėl nuolat minėjo trio biblioteką. O tas "import trio" turi šansų tapti "import asyncio" pakaitalu. Panašiai kaip "import requests" daug dažniau sutinkamas vietoje "import urllib".
https://github.com/python-trio/trio
Postgres at any scale
https://www.youtube.com/watch?v=qRqDgJLM568&t=50m39sĮdomus pranešimas. Su daug praktinių patarimų. Vienintelė bėda, kad a nei kaip nesusijęs su Python. Totaliai PostgreSQL.
Let’s Build a Python Profiler in 25 LOC
https://www.youtube.com/watch?v=qRqDgJLM568&t=1h33m32sĮdomus pranešimas. Kaip pasirašyti kokį tik nori Python profiliavimo įrankį naudojantis pačio Python įrankiais. https://docs.python.org/3/library/sys.html#sys.setprofile
https://docs.python.org/3/library/sys.html#sys.settrace
https://docs.python.org/3/library/atexit.html#module-atexit
Paskutinė nuoroda nelabai susijusi. Bet čia toks kietas Python modulis, kuris leidžia priregistruoti funkciją, kuri visada išsikviečia prieš programai baigiant darbą.
import atexit atexit.register(my_callback)
Fuzzy Matching - Smart Way of Finding Similar Names Using Fuzzywuzzy
https://www.youtube.com/watch?v=XRKPOtbU6UE&t=3h27m12sNieko gero.
What's new in Python 3.7
https://www.youtube.com/watch?v=FsvmT2Ir7B8&t=5h25m19sĮdomi tema. Neįdomus pranešimas.
Geriau jau perskaityti šitą https://docs.python.org/3/whatsnew/3.7.html.
Quantum Computing: a Very Gentle Glimpse into a Possible Future
https://www.youtube.com/watch?v=FsvmT2Ir7B8&t=6h20m21sĮdomus pranešimas. Neturintis nieko bendra su Python. Bet įdomus.
Python, Docker, Kubernetes, and beyond?
https://www.youtube.com/watch?v=w-XECcIWnlQ&t=5h40m44sKam o kam aš nuėjau į šitą pranešimą. Žiauriai nuobodi tema.
White Mars: living far away from any form of life
https://www.youtube.com/watch?v=FsvmT2Ir7B8&t=8h35m10sRealiai tai apie Antarktiką, o ne apie marsą. Čia buvo teletiltas su Antarktika. Ir jie ten naudoja Python kai kam.
Lightning talks
https://www.youtube.com/watch?v=FsvmT2Ir7B8&t=8h35m10sNieko įdomaus nebuvo paminėta.
PyPI: Past, Present and Future
https://www.youtube.com/watch?v=Rps9lHflkCg&t=31m35sNežinau, ar pastebėjote, bet PyPi dabar yra nebe https://pypi.python.org/ adresu, o https://pypi.org/. Tai va apie tai buvo šitas pranešimas.
When to use Machine Learning: Tips, Tricks and Warnings
https://www.youtube.com/watch?v=nDY82RGU2Xk&t=16m22sTokia reklaminė ML kalba. Nieko nematyto, bet parodymas, kaip paprastas žmogus gali taip iš niekur ką nors gražaus sugeneruoti naudojant ML.
EuroPython 2018 Hello to the World in 8 Web Frameworks (micro, batteries included & async)
https://www.youtube.com/watch?v=8E0VDH_UKuA&t=1h2m39sTadam. Evangeliko kalba. 8-i "hello world" pavyzdžiai.
Code Review Skills for Pythonistas
https://www.youtube.com/watch?v=8E0VDH_UKuA&t=1h51m33sEvangelikė papasakojo pranešimą. Šitas visai geras net nepaisant, kad evangelikės.
Ir kažkodėl užrodė gerą įrankį rasti nebenaudojamą kodą: https://pypi.org/project/vulture/.
Debugging Your Code with Data Visualization
https://www.youtube.com/watch?v=nDY82RGU2Xk&t=3h45m12sParodė, kad ieškant klaidų ar šiaip aiškinantis kodo veikimo įpatumus galima naudoti įdomesnius įrankius, o ne tik "print" funkciją.
More Than You Ever Wanted To Know About Python Functions
https://www.youtube.com/watch?v=Rps9lHflkCg&t=5h48m39sTurėjau į šitą nueiti, nes aprašymas skambėjo beveik tapačiai mano PyCon LT darytam pranešimui (https://www.youtube.com/watch?v=rpSwuaniIT0&%3Ft=1h36m54s). Šitas paprastutis ir nieko nei sunkiai virškinamo neparodantis. Nu nes evangeliko.
Type annotations with larger codebases
https://www.youtube.com/watch?v=QNUjpdpAOac&t=5h13m22sYelp naudoja tipų anotacijas. Šiaip pranešimas nėra bazinis, kaip galima buvo tikėtis, o vietoje to ganėtinai įdomus. Papasakoja daugiau apkasų istorijų, o ne "va kaip rašyti anotacijas. Ir va skaičius plius raidės, o nuostabusis statinis tikrintojas pagauna klaidą. Vai, vai, vai.".
https://pyre-check.org/
http://mypy-lang.org/
Succinct data structures for python
https://www.youtube.com/watch?v=nDY82RGU2Xk&t=5h46m16sTotaliai geek'o pranešimas apie kažkokią nišinę kietą biblioteką, kurią jis parašė. Šiaip turbūt gera ir naudinga biblioteka. Bet nuobodi sritis. Šiaip kaip kokį unrar pristatinėti.
https://github.com/ah-/pysdsl
How to Ignore Most Startup Advice and Build a Decent Software Business
https://www.youtube.com/watch?v=Rps9lHflkCg&t=8hTruputį prasčiau papasakota tai, ką DHH jau kuris laikas pasakoja reklamuodamas savo naują knygą.
https://medium.com/@dhh
https://basecamp.com/books/calm
Why Python is at the heart of Smarkets
https://www.youtube.com/watch?v=Rps9lHflkCg&t=8h44m1sRėmėjai papasakojo, kodėl jie kieti. Kadangi davė konferencijai daug pinigų, tai tegul pasakoja.
Lightning talks
https://www.youtube.com/watch?v=Rps9lHflkCg&t=9h1m3sYra toks modulis "decorator", kuris padeda išsaugoti dekoruojamos funkcijos parašą.
https://pypi.org/project/decorator/
Citizen Science with Python
https://www.youtube.com/watch?v=7uSjCp1wOrw&t=27m13sĮdomu. Nelabai daug Python.
EduBlocks - Making the transition to Python easier!
https://www.youtube.com/watch?v=7uSjCp1wOrw&t=1h41m35sČia buvo geras. Kažkoks 12-tis pristatinėjo savo aplikaciją, kurią pats sukūrė ir kurią realiai naudoja Britanijos mokyklos mokinant informatikos. Ir pristatymas nebuvo "o aš čia toks mažas vaikeliukas. Čia kažką biški parašiau. He, he. Kaip drovu man čia ant scenos kalbėti.".
Ne. Kalbėjo kaip koks kilmingas britas, kai dar Britanija buvo imperija. Užtikrintai, tiksliai ir svarbiausia įdomiai.
https://edublocks.org/
Get Productive with Python in Visual Studio Code
https://www.youtube.com/watch?v=7uSjCp1wOrw&t=2h31m17sPristatė Visual Studio Code galimybes dirbant su Python. Šiaip panašu, kad geras įrankis. Turbūt menkai nusileidžiantis PyCharm. Jeigu nusileidžiantis. Iš kur man žinoti -- aš tai Vim naudoju. He, he. Kaip drovu čia man viešai rašyti.
Exploring the Python AST Ecosystem
https://www.youtube.com/watch?v=4Wr31kp6Hgg&t=1h41m58sGerai paruoštas ir technitškai gilus pranešimas. Apie tai kaip naudoti pitono abstrakčius kodo medžius, kad gauti sau naudos (pvz.: statiškai validuojant kažkokią specialią biznio logiką).
Vienas geresnių konferencijos pranešimų. Rekomenduoju.
Trust me, I'm a Data Scientist - ethics for builders of data-based applications
https://www.youtube.com/watch?v=x5tcYO-SVnc&t=3h32m45sKažkokia pieva.
Lies, damned lies, and statistics
https://www.youtube.com/watch?v=x5tcYO-SVnc&t=4h6m51sGeras pranešimas apie statistikos netinkamą naudojimą. Nelabai susijęs su Python. Bet geras.
Domain-Driven Design Patterns in Python
https://www.youtube.com/watch?v=SnlIqq-7XKU&t=4h59m41sLyg ir įdomus buvo. Lyg ir naudingas. Bet dabar nieko nebeatsimenu. Gal dėl to, kad paskutinis konferencijos pranešimas ir jau po biški trūkinėjo ryšys galvoje.
Lightning Talks
https://www.youtube.com/watch?v=7uSjCp1wOrw&t=8h28m43shttps://github.com/ambv/black