FOSDEM19 it’s just over, and here are my main highlights!
It was a great year, let’s take a look at the main highlights.
Early in January, I presented a talk at a local meetup, which had a good reception amongst the audience. The fist part of the year was a great period for learning more about distributed systems, event sourcing, and event-driven architectures. The peak of which was attending the Kafka summit in London.
By late August/early September I finished my book Clean code in Python which was a quite challenging experience.
It was a great pleasure to attend the Python San Sebastián conference. I’ve heard about this conference in a lightning talk in EuroPython, and I was curious about it. It was good to meet a group of friendly new people, and having the opportunity to present there (an enhanced version of the talk presented at the meetup in January). Besides, the city is amazing, so it’s certainly something to repeat!
Besides some improvements in my configuration files (vim and dot files), and to some of my other public repositories, there wasn’t that much room for open source contributions. On the other hand, there was a good deal of learning: I’ve read some fantastic books about software engineering (such as Facts and fallacies of software engineering, Object-oriented software construction, and more), which unfortunately I wasn’t able to cover in blog posts (but maybe in the future I will), and I successfully completed the machine learning course offered by Coursera, which was amazing. Again, maybe in a future post I will be able to properly review it, but for now I can just tell you that is highly recommendable, if you’re looking forward to learn a ton and at the same time have fun solving programming assignments.
All in all, it was a year with a lot of positive notes. Looking forward to an amazing 2019 for everyone!
In our profession, attention to detail is of utmost importance. Any good software engineer understands that details matter a lot, as they make the difference between a working unit or a disaster .
This is why clean code is not just about formatting or arranging the code. It’s neither a foible. It is instead, paying attention exactly to those details that will make a big difference in production.
Let’s see some examples of this in Python.
Last weekend an amazing edition of Python San Sebastián took place. Here are the main highlights of what the conference looked like to me.
These are some notes and takeaways on the recently celebrated Kafka Summit 2018 in London.
The conference was organized in three parallel tracks for sessions that were covering stream processing, pipelines, and internals. To get a good experience, I attended talks of the three types, but with a little preference towards internals and streams.
It was a two-day conference with lots of valuable technical content, awesome talks, speakers, and a lot more. Here are the highlights.
Let’s revisit the idea of generators in Python, in order to understand how the support for coroutines was achieved in latest versions of Python (3.6, at the time of this writing).
By reviewing the milestones on generators, chronologically, we can get a better idea of the evolution that lead to asynchronous programming in Python.
We will review the main changes in Python that relate to generators and asynchronous programming, starting with PEP-255 (Simple Generators), PEP-342 (Coroutines via Enhanced Generators), PEP-380 (Syntax for delegating to a Sub-Generator), and finishing with PEP-525 (Asynchronous Generators).
A recap of the main events and posts throughout the year that is ending.
This year I attended some conferences overseas, where I presented talks. First, in June, I went to the beautiful city of Prague for PyCon CZ 2017. At first, I got only one talk approved, Discovering Descriptors, which was a new topic I was presenting. A few days before the conference started, another speaker had to step down, so I was asked to fill in the slot, to which I agreed by proposing my talk of clean code in Python. That meant I presented one the first two days of the conference, and then attended the workshop on the last day (Saturday).
The conference was nice, and as always, a great opportunity for networking and learning.
July was the month for EuroPython, a conference that is always awesome. This year, I did not have a talk scheduled beforehand, as I did last year, but surprisingly enough, on the lightning talk sessions of Monday they announced a free slot for the Tuesday, to which I volunteer by submitting my new talk, “Discovering Descriptors”. So, once again, another unexpected (but glad), opportunity that I had to present a talk at a good conference.
On other topics, I attended several meetups of Python and Go, and became more involved in distributed systems.
It was also a good year to work more with Docker, and started to learn more about Kubernetes.
Regarding contributions to open source, I released new versions of most of the projects I have on GitHub, but there is more. I sent the first successful patch to CPython in GitHub (important note: at the beginning of this year, the CPython project moved to GitHub). It was a simple change on the documentation, about descriptors, that got quickly merged, but a good head start.
Another nice contribution is that, during the sprints at EuroPython, I worked along the pypy team, and sent some commits fixing changes for Python 3.6. It was an amazing experience to learn more about the project, and about CPython itself. Certainly something I look forward to continue doing.
For the new year, I expect more contributions to open source, mainly on the same projects (CPython and pypy), and release more open source libraries. Also more conferences, and as always, room for the best which is usually the unexpected.
This is an opinion I sometimes remember when seeing some code. Don’t take it as a strong advice, or a rule, but instead as a general guideline that might help you to improve the code slightly.
On this post I will share a tiny and opinionated argument about why there are usually better things to do in the code instead of just pass.
A summary of the first days (from day 0 —Sunday to day 3 —Wednesday), of EuroPython 2017.