Half a year of Papers We Love @ Porto

July 02, 2018
on papers, tech, and events

How it all started

Back to September 2017. Porto’s tech scene was booming, still, it was lacking
tech events backed by theoretical computer science.

At that time, I was
following @papers_we_love and started slowly
moving from reading toxic blog posts and threads on
/r/programming to read computer science
papers and watching PWL talks on Youtube.
It was hard to start, papers are hard to read and digest. But after a while, I was
able to read papers, extract some cool content, and explain it to others.

After an amazing edition of Pixels Camp, I was waiting for
a connection flight from Lisbon to Porto and started talking about Papers We Love.
I was looking at the list of chapters and thought out loud: “We should start
something like this in Porto”.

After a few months, Papers We Love @ Porto was a real thing… :)

Hello #Porto! We are the latest chapter of @papers_we_love. We're interested in reading and sharing ideas from computer science papers. Joins us!

Carlos introduced me to Alvaro Videla and
after a few emails, we managed to schedule the very first session of @pwlporto. We had dinner on the night before and talked about the gap
between industry and academia and how this group could help with that. It was really
nice to meet and chat with Carlos and Alvaro!

Great news! Alvaro Videla (@old_sound) will be presenting Harmful GOTOs, Premature Optimizations and Programming Myths are The Root of All Evil on February 22nd at the very first @papers_we_love#Porto - we're excited, you should be too!

Alvaro introduced some of the myths in our industry with the objective of promoting a culture of reading more books, academic papers and related material
that refers to the history of our field and programming in general. It was the
best start that we could have, thanks to Alvaro Videla and Carlos Baquero!

We had 15 attendees at the very first edition of Papers We Love. I remember that we
were making bets on how many people would attend. Only one person sharing and
spreading the word, 99% of tech people were only interested in hot topics, papers what?
Numbers ranged from 5 to 15. I was the optimist, and we had very nice folks attending!

Why do we need this kind of events in the tech community?

Nowadays, developers only care about trends: languages, frameworks, databases,
and methodologies. That’s the sad thing about the current state of our tech
industry. We need to promote developers to read good literature, instead of
random blog posts that eventually will lead to another internet flame war.

My goal for this chapter of Papers We Love is to have more and more people
reading computer science books/papers and giving talks about it. You don’t
really need to be an expert to give a talk. If you like a specific computer
science topic or even a small algorithm, step up and give a talk!

Topics presented so far…

Five sessions and seven talks, that’s our record so far! I truly want to
express my gratitude to these folks for stepping up and sharing their
knowledge. This wouldn’t be possible without them!

All Aboard the Natural Language Processing Train

From the depts of intuition to practice, José Marcelino guided us through the valley
of Natural Language Processing field. Sequence labeling tasks, such as
Part-of-Speech Tagging or Named Entity Recognition, represents a crucial
step to understand language.

Performance testing of open-source HTTP web frameworks

Michael Domingues presented
his study on performance testing against three web frameworks written in Go.
The results have shown that Gin contributed to the fastest response times for a set
of requests that vary on processing and retrieved data complexity.

Causality is simple

Carlos Baquero brought back the intuition on
causality and showed that keeping in mind some simple concepts, allows
us to understand how version vectors and vector clocks work, and where they
differ, and how to use more sophisticated mechanisms to handle millions of
concurrent clients in modern distributed data stores.

Things you should know about Database Storage and Retrieval

It was a hard month. Everyone I’ve invited was busy, so I had to step up
and give a talk :) We discussed and examined some core data structures such as Hash Indexes, SSTables, LSM-Trees, and B-Trees, that are used in the traditional relational databases and NoSQL databases.

Knee Deep Into P2P

Fernando Mendes introduced some simple P2P
topologies such as gossip and trees. Then he moved to more complex ones
such as Gnutella2, HyParView, and Plumtrees and analyzed their problems and
took a look at what CRDTs are and how awesome they can be for shared data.

Ethereum: A secure decentralised generalised transaction ledger

Hugo Peixoto presented the
Ethereum original paper, by introducing the core concepts of blockchain
and how it relates to Bitcoin.

Visualising graphs with millions of edges using edge bundling

Daniel Moura explained us the
rationale of graph bundling based on kernel density estimation, proposed
simplifications that make the algorithm more efficient and easier to
implement, and showed how the base algorithm can be extended to handle
different clustering criteria and to produce videos of evolving graphs.

A very big thanks to these companies!

People like hot topics. Companies too. So far, our meetups were hosted
by Farfetch, XING, Subvisual, and Veniam. Kudos to them! I’m running this
meetup without any sort of sponsor and it’s great to have support from local
companies to help this group to grow!

Looking forward…

As I’m writing this post, we are 171 members on
meetup.com spread between
Porto and Braga! I really want to keep these two cities as close as possible.

We’re growing, slowly, but growing!

Please, feel free to ping me at @ordepdev to comment and discuss the topic.