One of the best ways to learn and network is to throw yourself into it and that's exactly what Data Engineer, Rodrigo Santos did when we sent him along to LambdAle for the first time!
As you know, Signify love to be part of the functional programming and Scala community so to be able to give engineers the opportunity to further their knowledge is so important to us. This is Rodrigo's experience of LambdAle...
I am really thankful to Signify Technology and Scala in the City of London meetup group for providing me with an opportunity to attend LambdAle 2019 - a Functional Programming (FP) conference organised in a pub! I used to be one of those people that didn’t attend meetups/conferences as I felt that I needed to be more experienced to make the most of them. Attending these events has proven me wrong. I was pleasantly surprised to find people of all experience levels from novices to contributors of an FP language. So, if you think like I used to, start attending without concerns. Attending these events where there is sharing of knowledge and connecting with other people in the industry is in fact a rewarding experience.
Introduction
On a nice and sunny Saturday, many FP enthusiasts joined together at the George IV pub near Turnham Green tube station. There were organisers guiding us to the conference room and every one of them was really helpful. The conference room was quite spacious and it was not overly crowded. We were given a bag with LambdAle stickers, a book from one of the sponsors, a LambdAle pint glass, a bottle opener and another bottle opener that would also serve as a cup base as well. Last, but not least, two free drinks. Special kudos to the organisers by warning people to drink consciously and to not insist for others to drink. Similarly, it was suggested the we offer our drink tokens to others to encourage networking.
The Talks
In general, I felt that all talks had interesting content. However, in this article, I am going to write about the ones that I enjoyed the most. I considered the following spectrum of programming languages discussed really good:
In my opinion, the conference opened with one of the most interesting and challenging talks (given by
Simon Peyton Jones). He guided us through the internals of how the
Glasgow Haskell Compiler performs type inference. A not so easy to follow process where he explains that the compiler firstly elaborates the source code, by generating the same program with information with regards to types explicitly. Concurrently, the compiler generates a set of constraints, which basically represent the relationships between both the known and the unknown types. Afterwards, the compiler solves the constraints, which can be depicted as a big system of constraint equations. Simon showed which constraints are modelled and how they are solved, so that they enhance the elaborated code substituting the previously unknown types. Should the constraints solver not solve all the constraints, it will report those as errors.
The most applicable talk in my opinion was given by
Tamer Abdulradi who addressed a current problem in the industry. He discussed his approach to create a distributed logging in distributed systems. In order to achieve that, a correlation ID is passed from service to service. With the aid of FP techniques, he solves that problem without the need of too much boilerplate. A real example that may be checked in the following GitHub repositories:
On a very different spectrum, I really liked the "Adventures in Teaching Haskell to Kids", given by
Peter Berger. It was a great talk explaining the outcomes of teaching students Python and Haskell. It is stated in some sources that Functional Programming is as easy to understand and teach if it is taught early on. However, what he got from his teaching classes is that every of his students preferred Python and found Haskell harder to get, since "it would not be the way that they would speak to a friend". It is important to understand that the difficulty of FP does exist and that nobody should assume that the concepts are easy to learn. However, it is a paradigm that comes with many advantages and that I'd obviously encourage people to learn at the very least the basic concepts.
I have to finish with the last talk, especially the end of it!
Jiu Liu created a web application that parses and returns the lyrics of songs with chords. He ended his presentation in a genius way by playing an original song, "Always Look on the Bright Side of Types”, on the ukulele inspired by "Always Look on the Bright Side of Life" song. Amazing! I feel like everybody had lots fun listening and singing with him!
Hallway Track
This experiment was a really good idea. Over the day, it would be possible to write on a post-it themes that we would like to discuss with others. Then, those post-its were filtered and aggregated in order to get unique themes. All the interested people on each theme would assemble in a table and discuss it. There were topics for many tastes and experiences. Definitely a good way to get to know more people whose interest is similar to yours.
Pub Quiz
This was the last event in the whole day and it was a nice opportunity to learn general culture facts. Out of around 40 questions, the best team got 27 right, so you can imagine how challenging it was.
Conclusion
After finishing the conference, many people stayed there talking to each other. Probably the best time to be with the speakers and give them some kudos on their talks. Certainly a great time to get to know other people to chat with them about FP - normally about their work or about the talks. I always like to learn more on these environments and to get to know the advancements/current practices in the industry. I believe that by doing so I could discover new concepts and add new tools to my engineering skill set.
This article was written exclusively for Signify Technology by Rodrigo Santos.