From OOP to FP by Joaquin Azcarate – backend developer at Apiumhub in Software Crafters Barcelona
Tags: agilewebandappdevelo
Published: 2021-12-03 12:40:39

---
title: From OOP to FP by Joaquin Azcarate – backend developer at Apiumhub in Software Crafters Barcelona
published: true
date: 2021-10-07 14:12:30 UTC
tags: Agilewebandappdevelo
canonical_url: https://apiumhub.com/tech-blog-barcelona/from-object-oriented-programming-to-functional-programming/
---

## Software Crafters Barcelona

For those of you who don’t know anything about the event, let us briefly explain the main idea behind it. 

Software Crafters Barcelona is a two day event which aims to attract and connect software development professionals. It aspires to be a meeting place that facilitates learning, teaching and collaboration, where participants create enriching experiences.

In addition to technical contents, it will be fun. There will be beers and interesting conversations. Software Crafters Barcelona is an opportunity to meet new friends and further improve your skills. 

**Join us and save the date:** October 23-24, 2021

**Location:** BAU Barcelona

## Talks

There will be a good balance between theory and practice, accompanied by open spaces sessions. 

- **5 tips about using functional programming patterns by Erik Torres Serrano – Tech Lead at LIFULL Connect**  
  
There are great teams out there who are obsessed with the idea of breaking down complex problems into smaller, easier to solve problems. Many of them are choosing a combination of agile and domain-driven design, where this idea is predominant. Local reasoning is a good way to tackle a problem, as long as teams don’t lose sight of the bigger picture: the purpose for which they write a program. Achieving this global vision is challenging and requires some strategy. It forces teams to learn new ways to give more weight to the purpose than to the details of implementation. This talk will challenge some best practices that are generally accepted, and will present others that in some cases could be superior in outcome. This story is part of Erik’s own journey transitioning from object-oriented to functional programming. A journey that took him to scrutinise some of the habits that he learned in the past and understand them in depth. He will foster an open-minded discussion that will give everyone more options for their future decisions. Also, he will present code examples, mostly in Java and Scala.

- **Understand your systems with OpenTelemetry by Carolina Zhou Lin – Software Engineer at Voxel Group and Xavier Belloso – Senior Software Engineer en baVel – Voxel Group**

Systems can become increasingly complex. Given this reality, observability is an essential component to understand the behavior of these systems and guarantee their reliability. In this talk, Carolina and Xavier will discuss the evolution of observability in a real environment and see how they have evolved to understand their systems. They hope that after this session, everyone will be encouraged to take advantage of the flexibility of OpenTelemetry to test in their respective projects, and start or continue their observability journey with a level up in the skill tree.

- **Data Engineering: Building your BI infrastructure from scratch by Estefania Rabadan Martinez – Data Engineer Lead at Hotjar**

In every startup life-cycle, there is a moment where having information about your customers is the only way to keep growing. At this point, you need a BI team that can give you the insights to understand your customers better. So, in this talk Estefania will talk about data ingestion, data lakes, data warehouses, ETLs… and much more.

- **From OOP (Object Oriented Programming) to FP (Functional Programing) by Joaquin Azcarate – backend developer at Apiumhub**

Joaquin started our software development with structured, imperative, and object-oriented programming. He learned OOP design patterns, composition, encapsulation, and a myriad of other words/concepts that now make total sense. But at some point, he stumbled upon words like “monad”, “composition”, “arrow” or “semigroup”. In this talk he’ll try to make sense of those intriguing words, what \*is\* Functional Programming, when it is useful and clear up a few myths along the way. Join Joaquin in this beautiful journey of learning a whole new way of thinking about solving problems.

- **Surviving Continuous Deployment in Distributed Systems by Valentina Servile – Lead Software Developer at ThoughtWorks**

Most of us have heard of Trunk Based Development, Continuous Deployment and Microservices. Maybe even convinced our stakeholders it was time to put them into practice. But what will the life of developers look like at the end of the journey? As each change we make goes immediately to production and has the potential to affect a complex web of services, it is time to evolve the day to day way we release our software. At ThoughtWorks they have been facing these challenges with many of their enterprise scale clients. In this talk he wants to share his approach of incremental, safe releases.

- **Accidentally complex and complexly bumpy developments by Modesto San Juan – Head of Engineering at FounderNest**

Although we always try to do the best we can, there are situations that can make it difficult for us to maintain and evolve our developments. Either by introducing accidental complexity, by not exploring the scope of the problem sufficiently or due to the use of patterns and technologies for pleasure or habit, this generates long-term suffering in the teams. In this talk you will see representative examples of these scenarios and you will explore possible alternatives that can help you in each case. We will talk about Microservices, CQRS, resilience patterns, message streams and other series of buzzwords, and you will do it both from the perspective of abuse and that of “good” use.

- **Your feedback generates bugs in production by  Eli Maruenda Joya – Engineering Manager at Holaluz.com, Inma Navas Peña – Software Engineer at MANGO**

Communication in organizations is vital. Feedback is a very powerful tool to grow collectively and individually. But with great power comes great responsibility, right? Misuse can be trivial or even toxic. Where is the “seniority” in giving feedback? Why do teams forget about soft skills? Feedback is directly related to bugs in production: long feedback loops, confidence in the teams, confidence in ourselves, … In this talk Inma and Eli want to give a return to the feedback culture: see its importance, see how it makes developers grow and how it makes organizations, projects and the product grow, but also toxicity and feedback cycles. Giving and / or receiving feedback is easy, but knowing how to do it is not so easy.

- **Developing with legacy is cool! by Ramon Balaguer – Legacy software developer at Voxel Group , Vicenç García – VP of Engineering at Voxel Group**

How to manage 20 years of legacy? What changes does an organization need to change the mindset? Is this the first time you hear the concept “” clean code “”, where do we start? In this talk, Ramon Balaguer and Vicenç García will explain to us how Voxel, a company with 23 years of software behind it, is trying to improve the technical agility of its equipment and services to offer the best possible service to its customers.

- **Vertical Slicing – unlearn what you know about user stories and start delivering in an iterative and incremental way. (Workshop) by  Abraham Vallez Martín – Team Coach at Voxel Group**

Let’s split user stories, let’s make smaller user stories. We have all heard this over and over again, but in Abraham’s experience, it is one of the most complex practices to carry out. It is probably because we have heard a thousand versions and seen many theoretical exercises, but we do not focus on the origin and final intention, the iterative and incremental delivery. Abraham will try to explain how to unlearn what we know about splitting user stories and focus on delivering iteratively and incrementally. You will try to see how to divide your work forgetting about epics, user stories, tasks… just looking for what can be the smallest increments that give you feedback to deliver more, better and faster.

- **Implement search for your application using Elasticsearch. (Workshop) by Janko Strassburg – Sr. Support Engineer chez Elastic**

Janko is proposing a workshop of about 2h time, adaptable if needed. The idea is to setup a simple search application that uses text search, grouping, date filtering and ordering. Assistants will only need a laptop with Docker installed as you will create an environment using docker-compose in which Elasticsearch and Elastic App Search will run. This workshop is relying on Elastic Search UI to create a React based search interface that supports a great user search interface both for web or mobile usage.

All features of the Elastic stack that are presented here are available for free.

- **Minotaurs, Unicorns, and the Electric Bill. (Workshop) by  Ignasi Marimon-Clos – software engineer at Lightbend**

The Spanish Electric market is a complete maze and the end customer electric bill a hieroglyph. In this workshop you’ll do a quick overview of the bill and write some code to help us understand how each attendee’s household consumes electric energy.

## COVID – 19 measures and CoC

One of the most important things in the event is safety, so let’s see what COVID policy has Software Crafters Barcelona this year:

- Face-mask
- Physical distancing
- Sanitation points
- Disinfection and cleaning
- Ventilation

Software Crafters Barcelona is dedicated to providing a harassment-free conference experience for everyone, regardless of gender, gender identity and expression, age, sexual orientation, disability, physical appearance, body size, race, ethnicity, religion (or lack thereof), or technology choices. Sexual language and imagery is not appropriate for any conference venue, including talks, workshops, parties, Twitter and other online media. Conference participants violating these rules may be sanctioned or expelled from the conference without a refund at the discretion of the conference organisers.

## Organization

This event would be impossible without the help of all its volunteers. More diverse environment creates a better event for all the community: 

- Imma Valls – Sr. Support Engineer at Elastic
- Joaquin Azcarate – Backend developer at Apiumhub
- Jose E Rodriguez – Managing Director at Codurance Spain
- Raúl Araya – Software Engineer at Splash
- Carlos Baez – Software Engineer at ALBORA
- Cristina Cirera – Software Developer at LIFULL Connect
- Juan Antonio Pulido – PHP Developer at PracticaVial
- Eduard Maura i Puig – Graduate Software Consultant at ThoughtWorks
- And others

Reminder! 

Add it to your calendars: 24th of October at 10:00, our Joaquin Azcarate will give a talk about Object Oriented Programming and Functional Programing  ( Track 2 ). 

See you there!