jueves, 22 de febrero de 2024

The Emperor Has No Docs

Software, like board games, needs instructions. Should I draw a card or play my card first? Will the connection be reused, or should I use a connection pool? In heroic tales, a protagonist needs directions from elder scrolls to user magical artifacts and complete their mission.In this talk, Ignasi will explain his journey from neglecting docs to considering them an important step on the software delivery cycle.

Ignasi will share tips ant tricks he’s been collecting over the years and focus on which habits he adopted to make sure he doesn’t forget docs. Ignasi will also share the types of audience and cases where documentation can save time and money to your organization.

After discussing the importance of documentation within several teams, Ignasi will try to counter the usual arguments and excuses those who don’t document often use. No, the code is not the documentation, the code doesn’t tell the whole story. You can have a strong type system restricting how to call an API and still be an unusable API: “Hmm, I need a Token here, where do I get it?”.

Join Ignasi for a talk about board games, child tales, and embarrassing PRs. This talk targets beginner/daily user/experts alike.

Video



jueves, 8 de febrero de 2024

Clean Code, ¿de verdad vale la pena?

Como developers participamos cada día en la evolución de software, ya sea añadiendo nuevas e interesantes funcionalidades, así como adaptando las actuales o incluso integrando con sistemas o plataformas externos.
Pero, ponemos el mismo esfuerzo en hacer que nuestro código sea robusto, mantenible, consistente, seguro, claro y bien probado? Realmente vale la pena invertir tiempo en ello ?
En esta charla seguiremos la historia de nuestro héroe y su lucha contra el monstruo del bad code y veremos la importancia del "clean code" así como las ventajas que aporta (y las penas que evita) introduciendo conceptos como el Clean As You Code y herramientas free y opensource.
Prepárate para una historia de aventuras, monstruos, luchas, técnicas y victorias al estilo de Juego de Tronos ;)
Clean Code va mas allá del software que se produce y de su lenguaje de programación.
Es parte fundamental y de crecimiento en la figura de un developer, algo que nos representa sin importar donde o con que lenguaje trabajemos. No perdamos el hilo.

About Jonathan Vila

Java Champion, Organiser at BarcelonaJUG and cofounder of JBCNConf and DevBcn conferences in Barcelona.
Currently working as Developer Advocate in Java for Sonarsource (SonarLint, SonarQube), focused on Clean Code & Security.
Former SE at Tetrate, SSE at Red Hat in Keycloak team, SSE at Ocado Technology, SSE at Netcentric.
I have worked as a (paid) developer since the first release of The Secret of Monkey Island, about 30 years ago using Go on Kubernetes for a Service Mesh layer on top of Istio | Java on Kubernetes for K8s Operator, Rest API, using Quarkus, GraalVM, Apache Camel | PHP | VB | Python | Pascal | C
Very interested in simulated reality, psychology and Java.

Video


martes, 28 de noviembre de 2023

Couchbase through Examples with Spring Boot

You might not yet be familiar with Couchbase. It's a distributed JSON database with an integrated caching layer. It features a variety of services allowing developers to choose, to make their own trade-off, for different use cases like Key/Value, Cache, Document, SQL, Fulltext search, Analytics, Eventing, Data synchronization and more. All in one box. It's more of a Data Platform than a Database. In this presentation, we will offer a tour of Couchbase’s features by building an application using Spring, Liquibase and testcontainer.

About Laurent Doguin

Laurent is a nerdy metalhead who lives in Paris. He mostly writes code in Java and structured text in AsciiDoc, and often talks about data, reactive programming and other buzzwordy stuff. He is also a former Developer Advocate for Clever Cloud and Nuxeo where he devoted his time and expertise to helping those communities grow bigger and stronger. He now runs Developer Relations at Couchbase.

Video


martes, 14 de noviembre de 2023

Primeros pasos con Kotlin

En esta sesión, de la mano de Juan José Aguililla, vamos a poner la vista en uno de esos lenguajes de la JVM que lleva un tiempo subiendo en popularidad gracias a su potencia, su mayor concisión en la sintáxis y su facilidad de aprendizaje.
Y esperamos que esta sea la primera de una nueva serie de charlas sobre Kotlin.

Video


martes, 24 de octubre de 2023

Tipos Algebraicos en Java 21

Java poco a poco ha ido adoptando patrones funcionales en sus diferentes versiones. En el caso de los tipos algebraicos (ADT) lo ha hecho poco a poco, casi en silencio, sin darlo ningún tipo de bombo. Primero fueron los los records, después los sealed class /interface para dar finalmente un soporte completo en Java 21 añadiendo Pattern Matching y el Record Pattern. En la charla explicaremos de manera breve que son los tipos algebraicos, como Java los soporta y los posibles usos, como la creación de DSLs (Domain Specific Language), estructuras de datos inmutables como listas, o codificación de efectos de lado como Optionals, o Try.

Sobre Miguel Rafael Esteban

Miguel Rafael Esteban Lleva más de 20 años trabajando como desarrollador y arquitecto de software en diferentes empresas, lenguajes de programación y plataformas. Una de esas personas que es habitual asistente en los meetups de MadridJUG, con un particular interés y experiencia en la programación funcional.

Video


martes, 3 de octubre de 2023

Let Groovy operate your k8s cluster

Did you know you can create an operator for your cluster using Groovy? seriously, you can use it.
Like many of you, I’m a software developer who deploys into a cluster my applications, create services, configmaps, etc.... but I always thought that creating an operator to automatize my tasks was reserved for Go people.
When I realized that you can also use Groovy, I created SwaggerOperator, a Kubernetes operator in Groovy to maintain the OpenApi definitions of my services.
In this talk, I'll show you step-by-step how to create and deploy an operator from scratch using a real use case ... all using our favorite language, Groovy.

About Jorge Aguilera

Software developer in Groovy and Java for a long time in different environments, such as cash machines, bioinformatics environments or Fintech applications
As I am passionate about Open Source, I like to share my knowledge by giving talks, mainly in the Madrid Groovy User Group, and publishing tech posts on my blog.

Video


martes, 19 de septiembre de 2023

Novedades Java 21

¡Java 21 ya está aquí! y vamos a celebrarlo y revisar lo que trae esta nueva versión de nuestro lenguaje y plataforma favoritos. Y lo haremos coincidiendo con la misma fecha de la release.
En esta ocasión, como ya anunciamos antes del verano, tendremos una charla un poco distinta, algo un poco más coral en la que varios de nosotros podremos explicar las distintas funcionalidades que trae esta nueva versión.
No solo la charla, después de la sesión, durante el networking, podremos compartir experiencias, comentar qué esperamos que nos aporte esta nueva versión o cuál es la funcionalidad que crees que supondrá un verdadero cambio en tu forma de programar.
¡Vente! ¡Te esperamos!

Video