jueves, 23 de mayo de 2024

29 aniversario Java & TDD: en serio ¡Pruébalo!

¡Únete a nosotros para celebrar el 29 aniversario Java en Madrid! Desde su creación hace casi tres décadas, Java ha sido un pilar fundamental en el mundo del desarrollo de software, impulsando la innovación y la creación de aplicaciones que han transformado nuestra forma de interactuar con la tecnología. En este evento especial, conmemoraremos el éxito de Java, tendremos a un ponente de excepción compartiendo su sabiduría. ¡No te pierdas esta oportunidad de conectar con la comunidad de usuarios y celebrar juntos este hito histórico!

¿Alguna vez te has preguntado por cómo es eso de Desarrollar guiaDo por los Tests (TDD)? Pues, developer curioso, ¡esta sesión es para ti!
Prepárate para sumergirte en TDD (Test Driven Development) y explorar sus beneficios. Veremos los "secretos" que hay detrás de esta técnica, sus orígenes y las reglas que hay que seguir. Además compartiremos algunos consejos y trucos, y todo con una sesión de live coding en Java. Prepárate para mejorar tus habilidades de desarrollo con TDD: ¡más conocimiento, más ventajas y más confianza en tus aventuras al desarrollar!
PD: Hacer las pruebas antes del código de Producción puede parecer más divertido de lo que parece.

Ponente: Nacho Cougil
Nacho es un ingeniero de software de Barcelona, fan de las prácticas TDD y XP y ha estado trabajando con Java y otras tecnologías web desde antes del efecto 2000. Ha tenido experiencia en diferentes roles en el mundo IT ("chico-para-todo", desarrollador, líder de equipo, jefe de proyecto y CTO), ahora trabaja como Principal Software Engineer en Dynatrace haciendo software para monitorizar aplicaciones. Puede que lo hayas conocido antes como uno de los Java Champions, fundador del Barcelona Java Users Group ( https://www.meetup.com/BarcelonaJUG ) y co-fundador de la Barcelona Developers Conference, DevBcn ( https://www.devbcn.com ) la antigua Java and JVM Barcelona Conference (JBCNConf).

Video




 

miércoles, 8 de mayo de 2024

Tómate la PastiLLIA Ante la fiebre de la IA y los LLM's

Si llevas ya unos cuantos años en la industria del software, habrás vivido varias olas de hype. La que tenemos encima es la de la IA. Pero ¿Cuantó de hype y cuánto de cambio de paradigma?
Desde hace unos meses, me puse a investigar a fondo todo lo que tiene que ver con procesamiento de lenguaje natural en el contexto de los modelos del lenguaje y los RAG's, y tengo que decir que es un campo fascinante y decepcionante a partes iguales.
En esta charla pretendo contaros todos los aprendizajes que he tenido colaborando con el proyecto Justicio. Tratar de separar un el polvo de la paja, y hablaros de ciertos retos de ingeniería que no se suelen comentar.
Hablaremos del rol que tiene clave el hardware, las bases de datos de vectores, la importancia y descuidada tarea de la tokenización, y propondré algún dilema que otro sobre la industria ;-)

Jorge Barrachina
Jorge es ingeniero de sistemas por la UPM, los últimos 4 años dedicado a DevRel en distintas empresas. Lleva involucrado en comunidades desde 2012 (HTML5-Spain y otras).
Cuenta con varios cursos publicados en OpenWebinars y participa en varios podcast (NoSoloTech y Aguacates Mutantes, este último junto a varios DevRels). Últimamente más interesado en comunicación, psicología, ética y filosofía. Se declara escéptico y "escapista del main-stream".
Autor del Libro: DevRel Puzzle: Esos detalles que no te cuentan: https://www.amazon.es/dp/B0BW2KJMTQ

Video




 

lunes, 29 de abril de 2024

From Monolith to (µ)Services. What happens with my Data?

Rewriting systems from a monolithic architecture to a services architecture is a common task nowadays to make applications more accessible to maintain, deploy, and release. This migration should not be a big-bang rewrite where you directly switch from the old application to the new one. Instead, it is an incremental process during which functionalities are extracted one at a time into separate services.

The Strangler Fig Pattern describes a method whereby a new system slowly and incrementally grows over the top of an old system. Along the way, the whole system is continuously monitored so that old parts can be removed after the new services show correct behavior. The theory is pretty clear, and in services where no persistence is needed, it's considerably easier, but things become way more complex as soon as data is involved.

Come to this session to learn how Kafka and Debezium, through Change Data Capture and the Strangler Fig pattern, can help you confidently migrate from monoliths to a (micro)services architecture, even though databases are involved.

Ponente: Alex Soto

Video




 

martes, 16 de abril de 2024

Apostando por Quarkus en un proyecto real

Hace 4 años elegimos Quarkus como framework de desarrollo en Java. Pero también valoramos antes distintas opciones con compilación a nativo como Helidon o Micronaut y nos decantamos por Quarkus. (Spring se quedaba fuera porque no tenía compilación a nativo.)
¿Nos equivocamos hace 4 años?
En esta sesión compartiremos nuestro experiencia práctica y las razones por las que hoy, después de cuatro años de desarrollo, creemos que tomamos la decisión correcta. Algunas de esas razones de las que hablaremos son:
- Quarkus está centrado en el rendimiento
- Ya sabes Quarkus porque está basado en estándares
- Resulta muy gratificante desarrollar con Quarkus Todo basado en nuestra experiencia real utilizando Quarkus en un proyecto grande. Si estás valorando alternativas, quizá nuestra experiencia te puede servir.


Juan Antonio Jiménez
Arquitecto de Software en Autentia —adquirida por Izertis— desempeña su labor en uno de nuestros principales clientes internacionales. Tiene más de 25 años de experiencia y nunca se ha alejado demasiado del código. Disfruta mucho enfrentándose a mejoras de rendimiento y ayudando a los desarrolladores como uno más. En los últimos años ha estado trabajando con Quarkus en una arquitectura de microservicios compilados a nativo.

Video




martes, 9 de abril de 2024

Kotlin como si fuese Python

¿Te gustaría ejecutar código Kotlin desde la shell sin tener que compilar? ¡Ahora puedes! Y además usando cualquier librería de la JVM.
Para pequeños scripts y herramientas, tradicionalmente se ha usado Python por ser interpretado y fácil de usar en la shell. Ahora Kotlin puede ejecutarse igual que Python desde la línea de comandos.
En esta charla encontrarás información y ejemplos para:

- Hacer testing con scripts de Kotlin
- Crear pequeñas herramientas locales
- Implementar Backoffice sencillos

¡Ven y pasa tus scripts a Kotlin!


Ponente: Juan José Aguililla

Video




miércoles, 20 de marzo de 2024

Introducción a Parquet en Java

Parquet es un formato de ficheros columnar muy utilizado en el mundo del Data Engineering, pero poco conocido en el mundo Java tradicional.
El formato tiene muchas características que lo hacen muy útil en aplicaciones que no son BigData o incluso sin ser intensivas en datos.
En esta charla, se explicará cómo funciona Parquet internamente, beneficios y ventajas, herramientas existentes para procesarlos, y te ahorrará el trabajo de tener que entender el ecosistema de librerías y lenguajes, y cómo encajan a la hora de procesar ficheros Parquet.
Se mostrará cómo trabajar con ellos en Java sin necesidad de usar herramientas o frameworks complejos, presentándolo como algo asequible a cualquiera que no esté metido en el mundo Big Data y necesite intercambiar y procesar ficheros de forma rápida y segura.

Jerónimo López
Jerónimo López es Backend Staff Engineer en Clarity AI, con 20 años de experiencia laboral. La mayor parte de su carrera ha sido en el ecosistema Java, y es co-coordinador de MadridJUG. Pasando por la consultoría, fundó su propia startup: Otogami, el mejor buscador y comparador de ofertas de videojuegos del mundo.

Video




jueves, 7 de marzo de 2024

Kotlin for Java Programmers

Volvemos con otra sesión introductoria para acercarnos al mundo de Kotlin. En esta ocasión Jose Ramón Alonso, nos ofrecerá en esta sesión un curso rápido de Kotlin para programadores de Java empezando casi desde cero y hasta alcanzar un nivel intermedio si el tiempo lo permite. Se analiza la comparación entre los dos lenguajes y la intercomunicación entre código Java y código kotlin.
La sesión está dirigida a los programadores de nivel intermedio o avanzado de Java o de lenguajes similares.
Se aconseja echar un vistazo al código del repositorio https://github.com/josealonso/Kotlin-for-Java-programmers/ antes de asistir a la conferencia.
 

José Ramón Alonso
José Ramón Alonso Tapia es un profesional que empezó como programador de sistemas. En los últimos años se ha enfocado en Java y en su ecosistema. Hace pocos meses tuvo su primer contacto con Kotlin y le gustó mucho el lenguaje.

Video




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