<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Open-Source on Luiyología</title><link>https://luiyo.net/en/tags/open-source/</link><description>Recent content in Open-Source on Luiyología</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><lastBuildDate>Sun, 07 Feb 2021 00:00:00 +0000</lastBuildDate><atom:link href="https://luiyo.net/en/tags/open-source/index.xml" rel="self" type="application/rss+xml"/><item><title>FOSDEM 2021, the first virtual FOSDEM</title><link>https://luiyo.net/en/blog/2021/02/fosdem-2021/</link><pubDate>Sun, 07 Feb 2021 00:00:00 +0000</pubDate><guid>https://luiyo.net/en/blog/2021/02/fosdem-2021/</guid><description>&lt;img src="https://luiyo.net/img/2021/02/fosdem-2021.webp" alt="Featured image of post FOSDEM 2021, the first virtual FOSDEM" /&gt;&lt;p&gt;Due to the pandemic this year I could not make my yearly pilgrimage to Brussels, but I was still able to attend FOSDEM as it mutated to an online conference for the first time. It has not been the same, but it is still an experience I cannot miss.&lt;/p&gt;
&lt;p&gt;For those of you who don&amp;rsquo;t know &lt;a class="link" href="https://fosdem.org/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;FOSDEM&lt;/strong&gt;&lt;/a&gt;, I will keep my usual description. It is the biggest conference in Europe (and one of the biggest around the world) related to &lt;strong&gt;Open Source&lt;/strong&gt; development and communities. It&amp;rsquo;s a huge event with hundreds of talks, workshops, gatherings and stands from all the relevant projects and communities in the &lt;strong&gt;FOSS (Free and Open Source Software)&lt;/strong&gt; ecosystem. It&amp;rsquo;s also a marvelous place to do networking, because there are not only representatives of those projects but normally also the technical leaders of them. If you are good with names and faces you can meet and greet a lot of important and interesting people.&lt;/p&gt;
&lt;p&gt;Being online, this year the interaction was limited to &lt;a class="link" href="https://matrix.org/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Matrix&lt;/strong&gt;&lt;/a&gt; and IRC &lt;a class="link" href="https://freenode.net/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Freenode&lt;/strong&gt;&lt;/a&gt; channels in parallel to the live streaming, and &lt;a class="link" href="https://meet.jit.si/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Jitsi&lt;/strong&gt;&lt;/a&gt; for the streaming. Everything is open source, and scaled amazingly.&lt;/p&gt;
&lt;blockquote class="twitter-tweet"&gt;&lt;p lang="en" dir="ltr"&gt;As &lt;a href="https://twitter.com/fosdem?ref_src=twsrc%5Etfw"&gt;@fosdem&lt;/a&gt; regulars we are really excited our software is used to facilitate this year&amp;#39;s uncoventional edition. Kudos to all organizers! 🚀&lt;/p&gt;&amp;mdash; Jitsi (@jitsinews) &lt;a href="https://twitter.com/jitsinews/status/1357978829692764162?ref_src=twsrc%5Etfw"&gt;February 6, 2021&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;


&lt;p&gt;I already wrote about it in previous years:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;FOSDEM 2016&lt;/strong&gt;: &lt;a class="link" href="https://luiyo.net/blog/2016/03/fosdem-2016-friday/" &gt;Friday&lt;/a&gt;, &lt;a class="link" href="https://luiyo.net/blog/2016/03/fosdem-2016-saturday/" &gt;Saturday&lt;/a&gt; and &lt;a class="link" href="https://luiyo.net/blog/2016/03/fosdem-2016-sunday/" &gt;Sunday&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;FOSDEM 2018&lt;/strong&gt;: &lt;a class="link" href="https://luiyo.net/blog/2018/02/fosdem-2018-saturday/" &gt;Saturday&lt;/a&gt; and &lt;a class="link" href="https://luiyo.net/blog/2018/02/fosdem-2018-sunday/" &gt;Sunday&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;FOSDEM 2019&lt;/strong&gt;: &lt;a class="link" href="https://luiyo.net/blog/2019/02/fosdem-2019-saturday/" &gt;Saturday&lt;/a&gt; and &lt;a class="link" href="https://luiyo.net/blog/2019/02/fosdem-2019-sunday/" &gt;Sunday&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;FOSDEM 2020&lt;/strong&gt;: &lt;a class="link" href="https://luiyo.net/blog/2020/02/fosdem-2020/" &gt;Saturday and Sunday&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The numbers of this 2021 edition are slightly lower than in 2020 in terms of content, but it&amp;rsquo;s amazing they could almost maintain the volume of activities and this time reaching to a worldwide audience:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://fosdem.org/2021/schedule/speakers/" target="_blank" rel="noopener"
 &gt;682 speakers&lt;/a&gt; in &lt;a class="link" href="https://fosdem.org/2021/schedule/events/" target="_blank" rel="noopener"
 &gt;773 different events&lt;/a&gt; (talks or workshops, mainly)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://fosdem.org/2021/live/#devrooms" target="_blank" rel="noopener"
 &gt;51 different devrooms&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://video.fosdem.org/2021/" target="_blank" rel="noopener"
 &gt;hundreds of hours of content&lt;/a&gt;, almost all of the events are &lt;a class="link" href="https://fosdem.org/2021/live/" target="_blank" rel="noopener"
 &gt;available online with live streaming&lt;/a&gt; during the conference&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://stands.fosdem.org/stands/" target="_blank" rel="noopener"
 &gt;52 online stands&lt;/a&gt; of all kinds of projects: &lt;a class="link" href="https://fsfe.org/" target="_blank" rel="noopener"
 &gt;FSFE&lt;/a&gt;, &lt;a class="link" href="http://www.apache.org/" target="_blank" rel="noopener"
 &gt;the Apache Software Foundation&lt;/a&gt;, &lt;a class="link" href="https://eclipse.org/" target="_blank" rel="noopener"
 &gt;the Eclipse Foundation&lt;/a&gt;, &lt;a class="link" href="http://getfedora.org/" target="_blank" rel="noopener"
 &gt;Fedora&lt;/a&gt;, &lt;a class="link" href="https://www.debian.org/" target="_blank" rel="noopener"
 &gt;Debian&lt;/a&gt; &lt;a class="link" href="http://www.kde.org/" target="_blank" rel="noopener"
 &gt;KDE&lt;/a&gt;, &lt;a class="link" href="http://gnome.org/" target="_blank" rel="noopener"
 &gt;Gnome&lt;/a&gt;, &lt;a class="link" href="http://www.libreoffice.org/" target="_blank" rel="noopener"
 &gt;LibreOffice&lt;/a&gt;, &lt;a class="link" href="https://jenkins.io/" target="_blank" rel="noopener"
 &gt;Jenkins&lt;/a&gt;, &amp;hellip;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To make it more impressive, take into account that FOSDEM is &lt;strong&gt;organized by volunteers&lt;/strong&gt;, everything is &lt;strong&gt;community driven&lt;/strong&gt; and it&amp;rsquo;s &lt;strong&gt;free to attend&lt;/strong&gt;. You don&amp;rsquo;t even need to register beforehand.&lt;/p&gt;
&lt;p&gt;As usual, let me summarize some of the talks that I attended (in chronological order):&lt;/p&gt;
&lt;h2 id="talks"&gt;Talks
&lt;/h2&gt;&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2021/schedule/event/modernjava/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Getting the Most from Modern Java&lt;/strong&gt;&lt;/a&gt;, by Simon Ritter (&lt;a class="link" href="https://twitter.com/speakjava" target="_blank" rel="noopener"
 &gt;@speakjava&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Simon Ritter gave an overview of the most recent updates in the Java language: better switch statements in JDK 12, a preview of the text blocks for JDK 13, simpler Data classes and Records in JDK 14, sealed classes in JDK 15, more on Records, pattern matching and sealed classes in JDK 16&amp;hellip;&lt;/p&gt;
&lt;p&gt;Overall a good overview by Simon, as usual. I lost the count of his talks that I have attended.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2021/schedule/event/10ways/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;10 Ways Everyone Can Support the Java Community&lt;/strong&gt;&lt;/a&gt;, by Stephen Chin (&lt;a class="link" href="https://twitter.com/steveonjava" target="_blank" rel="noopener"
 &gt;@steveonjava&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Another popular speaker to explain different ways to support Java, not only with coding. Some of the ideas were:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://openjdk.java.net/contribute/" target="_blank" rel="noopener"
 &gt;Contribute to OpenJDK&lt;/a&gt;: Find something interesting, discuss your intended changed and finally submit a patch&lt;/li&gt;
&lt;li&gt;Join the &lt;a class="link" href="https://foojay.io" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Foojay&lt;/strong&gt; community&lt;/a&gt;, a new online community for friends of OpenJDK&lt;/li&gt;
&lt;li&gt;Join or sponsor a Java Users Group, you can find JUGs almost everywhere although now most of them are online. Even before the pandemic you could already find a few virtual JUGs.&lt;/li&gt;
&lt;li&gt;Follow a &lt;a class="link" href="https://twitter.com/Java_Champions/following" target="_blank" rel="noopener"
 &gt;Java Champion&lt;/a&gt; in twitter (I just checked and I&amp;rsquo;m following almost 20).&lt;/li&gt;
&lt;li&gt;Join a specialized Slack channel, write articles in your blog, participate in an unconference event, &amp;hellip;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2021/schedule/event/open_source_under_attack/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;The Death of Openness and Freedom?&lt;/strong&gt;&lt;/a&gt;, by Matt Yonkovit (&lt;a class="link" href="https://twitter.com/MYonkovit" target="_blank" rel="noopener"
 &gt;@MYonkovit&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Matt reflects on how the huge success of Open Source also brought imitators, as in another sectors like sci-fi movies. But success in Open Source has different implications, depending on the project. Matt also comments in the recent problems that we have seen in different communities, from more or less embarrassing licensing changes to projects moved to &amp;ldquo;as a service&amp;rdquo; exclusive business models.&lt;/p&gt;
&lt;p&gt;The talk is a good overview of the different models, advantages and disadvantages of them. A thought provoking talk with lots of interesting insights.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2021/schedule/event/database_democratization/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;The Democratization of Databases&lt;/strong&gt;&lt;/a&gt;, by Bruce Momjian&lt;/p&gt;
&lt;p&gt;Bruce started with an overview of what democracy or representative democracy means, and the specific advantages of other systems like an autocracy might have in sectors like the military or the space exploration. Software is usually better under democracy as it allows rapid adjustment of goals and expands the pool of talent.&lt;/p&gt;
&lt;p&gt;According to the speaker, Democracy in open source works a bit differently. It is a mix of democracy and meritocracy, where voting can be problematic but bad decisions can quickly be reverted. The main drawback is that the plan or road map is not reliable.&lt;/p&gt;
&lt;p&gt;Finally, the talk focuses on the PostgreSQL community, and how they operate and evolve.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2021/schedule/event/mozilla_history_20_years_and_counting/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Mozilla History: 20+ Years And Counting&lt;/strong&gt;&lt;/a&gt;, by Robert Kaiser&lt;/p&gt;
&lt;p&gt;Nice summary of all the important milestones of Mozilla by KaiRo. Lots of nice memories:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;the origin of the name (mixing Mosaic and Godzilla as in &lt;em&gt;Mosaic Killer&lt;/em&gt;), that was later renamed to Netscape&lt;/li&gt;
&lt;li&gt;How the Firefox web browser was born&lt;/li&gt;
&lt;li&gt;How the &lt;a class="link" href="https://foundation.mozilla.org/en/" target="_blank" rel="noopener"
 &gt;Mozilla Foundation&lt;/a&gt; started, alongside the Mozilla Corporation&lt;/li&gt;
&lt;li&gt;The &lt;a class="link" href="https://www.mozilla.org/en-US/about/manifesto/" target="_blank" rel="noopener"
 &gt;Mozilla Manifesto&lt;/a&gt;, written in 2007&lt;/li&gt;
&lt;li&gt;Rust, Firefox OS, Mozilla Hubs and many other things&amp;hellip;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2021/schedule/event/postgresql_database_performance_at_gitlab_com/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Database Performance at GitLab.com&lt;/strong&gt;&lt;/a&gt; by Nikolay Samokhvalov and Jose Finotto&lt;/p&gt;
&lt;p&gt;Interesting overview about how &lt;a class="link" href="https://gitlab.com/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Gitlab&lt;/strong&gt;&lt;/a&gt; copes with their massive amounts of users and their strict SLAs, focusing specially in the &lt;a class="link" href="https://www.postgresql.org/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;PostgreSQL&lt;/strong&gt;&lt;/a&gt; database side. I got several interesting inputs from the talk, from automated database health checks (and how they do them), to best practices for the engineers (how they learn and get insights of their usage), how they experiment using thin clones, etc.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2021/schedule/event/mysql_retro/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;25 years of MySQL - A Retrospective&lt;/strong&gt;&lt;/a&gt;, by Dave Stokes (&lt;a class="link" href="http://twitter.com/stoker" target="_blank" rel="noopener"
 &gt;@stoker&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Dave Stoker, community manager at &lt;a class="link" href="https://www.mysql.com/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;MySQL&lt;/strong&gt;&lt;/a&gt;, gave an historical overview of MySQL since its beginning.&lt;/p&gt;
&lt;blockquote class="twitter-tweet"&gt;&lt;p lang="en" dir="ltr"&gt;We start with &lt;a href="https://twitter.com/stoker?ref_src=twsrc%5Etfw"&gt;@stoker&lt;/a&gt; ! 25 years of &lt;a href="https://twitter.com/MySQL?ref_src=twsrc%5Etfw"&gt;@MySQL&lt;/a&gt; &lt;a href="https://twitter.com/hashtag/FOSDEM2021?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#FOSDEM2021&lt;/a&gt; &lt;a href="https://twitter.com/hashtag/MySQL?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#MySQL&lt;/a&gt; &lt;a href="https://twitter.com/hashtag/mysqldevroom?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#mysqldevroom&lt;/a&gt; &lt;a href="https://t.co/yC4A7gWOwt"&gt;https://t.co/yC4A7gWOwt&lt;/a&gt; &lt;a href="https://t.co/J15LDat4EO"&gt;pic.twitter.com/J15LDat4EO&lt;/a&gt;&lt;/p&gt;&amp;mdash; lefred - @lefredbe.bsky.social (@lefred) &lt;a href="https://twitter.com/lefred/status/1358335694725406721?ref_src=twsrc%5Etfw"&gt;February 7, 2021&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;


&lt;p&gt;It was a nice presentation, with the sense of humor you expect in this nostalgic exercises.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2021/schedule/event/telebot/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Telegram Bot For Navigation&lt;/strong&gt;&lt;/a&gt;, by Ilya Zverev (&lt;a class="link" href="https://twitter.com/ilyazver" target="_blank" rel="noopener"
 &gt;@ilyazver&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;I have attended several talks by Ilya, some of them online and others here in FOSDEM. He always deliver insightful content, this time focused on how to provide navigation capabilities without relying on a map or a web. Ilya explained that he moved a few years ago to a neighborhood with little data mapped in &lt;a class="link" href="https://www.openstreetmap.org/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;OpenStreetMap&lt;/strong&gt;&lt;/a&gt;. Instead of mapping all the different venues/places surrounding him individually, he tried another approach. He built his own Telegram bot, first to search for venues and then to add new places.&lt;/p&gt;
&lt;p&gt;The main missing part is that the data surveyed using the tool is not being loaded or synchronized with OSM. Hopefully he will include it in the bot roadmap soon.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2021/schedule/event/community_devroom_documentation_first_class_citizen/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Making Documentation a First-class Citizen in Open Source Projects&lt;/strong&gt;&lt;/a&gt;, by Ray Paik and Sofia Wallin&lt;/p&gt;
&lt;p&gt;Ray and Sofia analyzed the problems that we usually see in open source documentation: lack of consistency mainly. They also explained how a few years ago a cross community group was created with the goal to provide a common way for documentation handling in the &lt;a class="link" href="https://www.lfnetworking.org/" target="_blank" rel="noopener"
 &gt;LF Networking&lt;/a&gt; project.&lt;/p&gt;
&lt;p&gt;They gave also several recommendations, for example:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Include the Documentation as part of your &lt;em&gt;definition of done&lt;/em&gt;, being a key part of your product/project&lt;/li&gt;
&lt;li&gt;Keep the documentation where your code is&lt;/li&gt;
&lt;li&gt;Keep an &amp;ldquo;edit this page&amp;rdquo; button or equivalent to make contributions easier. This is key during on-boarding processes or just to lower the entry barrier&lt;/li&gt;
&lt;li&gt;Recognize contributions, organize documentation specific events&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2021/schedule/event/community_devroom_mental_health_free_software/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Mental health and free software&lt;/strong&gt;&lt;/a&gt;, by Brendan Abolivier (&lt;a class="link" href="https://twitter.com/BrenAbolivier" target="_blank" rel="noopener"
 &gt;@BrenAbolivier&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;This topic is very delicate, and this is part of the problem. As Brendan explained in the presentation, mental health should not be a taboo. The speaker also added the disclaimer that this is not a specific issue of Free Software, but he focused the talk on this based on his experience.&lt;/p&gt;
&lt;p&gt;Free Software usually implies a strong interaction with a community. This sometimes implies staying up late to close an argument or to finish up a pull request, putting a lot of pressure on this. The speaker argues that it can be worse in FOSS compared to other sectors because the emotional aspect is much more important, and everything is happening in public places. On addition to this, joining a big FOSS project also implies a bigger public space and an additional difficulty to take the initiative.&lt;/p&gt;
&lt;p&gt;He closed the session with different ways to mitigate the problem depending on your role in a certain moment: maintainer, contributor, employer/manager, etc. The overall recommendation is to try self-care activities, to be generous with your personal time, to be gentle with yourself and to reach a therapist if needed.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2021/schedule/event/community_devroom_oss_more_than_licence/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Open Source is More Than Just a License&lt;/strong&gt;&lt;/a&gt;, by Don Goodman-Wilson (&lt;a class="link" href="https://twitter.com/DEGoodmanWilson" target="_blank" rel="noopener"
 &gt;@DEGoodmanWilson&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The speaker reflects on the differences between the colloquial and institutional descriptions of Open Source, after a few projects have claimed they are open source although they are not. This is partially caused on the emphasized importance of the license over other factors.&lt;/p&gt;
&lt;p&gt;According to the speaker, focusing Open Source in just licenses is only necessary when you only want to to mitigate risk management or to reduce costs. Open source should be more about collaboration, openness to participation, pursuing goals that are community-driven, etc. Choosing one license or another should be just a mean to an end, not the end itself.&lt;/p&gt;
&lt;p&gt;The speaker proposes using a &lt;em&gt;Ethical Source Definition&lt;/em&gt; for software, that summarizes in:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Benefits the Commons, meaning that it can be distributed freely and anyone can use or modify the software&lt;/li&gt;
&lt;li&gt;Created in the Open, developed in public view and accepting public contributions&lt;/li&gt;
&lt;li&gt;Welcoming and Just Community. Clear rules of governance need to be published and enforced&lt;/li&gt;
&lt;li&gt;Puts Accessibility First. It needs to be available to everybody&lt;/li&gt;
&lt;li&gt;Prioritizes User Safety&lt;/li&gt;
&lt;li&gt;Protects User Privacy&lt;/li&gt;
&lt;li&gt;Encourages Fair Compensation&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In summary: licenses are important and useful, but put your community first&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2021/schedule/event/penpot_design_freedom_for_teams/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Penpot, design freedom for teams&lt;/strong&gt;&lt;/a&gt;, by Pablo Ruiz (&lt;a class="link" href="https://twitter.com/diacritica" target="_blank" rel="noopener"
 &gt;@diacritica&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://penpot.app/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Penpot&lt;/strong&gt;&lt;/a&gt; was presented in FOSDEM last year (as UXBOX, its previous name), and one year later Pablo is back in FOSDEM to announce the alpha version. As he did last year, he starts the presentation explaining why they came up with this, and how they discovered they could not find a suitable open and free tool so they managed to create an outstanding one.&lt;/p&gt;
&lt;p&gt;Then, he directly started a commented demo using Penpot to re-design the FOSDEM website. It was amazing to see the current maturity of the tool. He completed the demo explaining some integrations they are working on between Penpot and &lt;a class="link" href="https://www.taiga.io/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Taiga&lt;/strong&gt;&lt;/a&gt;, taking advantage of the fact that they are the creators and core developers of both tools.&lt;/p&gt;
&lt;div class="image central"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;picture&gt;
 &lt;source srcset="https://luiyo.net/img/2021/02/penpot-in-fosdem-2021.webp" type="image/webp"&gt;
 &lt;img src="https://luiyo.net/img/2021/02/penpot-in-fosdem-2021.jpg" alt="Pablo Ruiz presenting Penpot in FOSDEM 2021"&gt;
 &lt;/picture&gt;
 
 
 &lt;figcaption&gt;
 Pablo Ruiz presenting Penpot in FOSDEM 2021
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;br /&gt;
&lt;p&gt;And that&amp;rsquo;s all. &lt;strong&gt;See you (hopefully in Brussels) in FOSDEM 2022!!&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>FOSDEM 2020, 20 Years of FOSDEM</title><link>https://luiyo.net/en/blog/2020/02/fosdem-2020/</link><pubDate>Tue, 25 Feb 2020 00:00:00 +0000</pubDate><guid>https://luiyo.net/en/blog/2020/02/fosdem-2020/</guid><description>&lt;img src="https://luiyo.net/49585666592_700db085cf_k_10490337311047991046.jpg" alt="Featured image of post FOSDEM 2020, 20 Years of FOSDEM" /&gt;&lt;p&gt;It has been almost a month since I returned from another intense and thought-provoking weekend in Brussels, although it still feels like it was just yesterday. I couldn&amp;rsquo;t write this before, as I have been quite busy both at work and at home.&lt;/p&gt;
&lt;div class="image lateral"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/49584930633_20a5c8bd62_o.png" alt="FOSDEM 2020 poster"&gt;
 
 
 &lt;figcaption&gt;
 FOSDEM 2020 poster
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;For those of you who don&amp;rsquo;t know &lt;a class="link" href="https://fosdem.org/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;FOSDEM&lt;/strong&gt;&lt;/a&gt;, it is the biggest conference in Europe (and one of the biggest around the world) related to &lt;strong&gt;Open Source&lt;/strong&gt; development and communities. It&amp;rsquo;s a huge event with hundreds of talks, workshops, gatherings and stands from all the relevant projects and communities in the &lt;strong&gt;FOSS (Free and Open Source Software)&lt;/strong&gt; ecosystem. It&amp;rsquo;s also a marvelous place to do networking, because there are not only representatives of those projects but normally also the technical leaders of them. If you are good with names and faces you can meet and greet a lot of important and interesting people.&lt;/p&gt;
&lt;p&gt;I already wrote about it in previous years:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;FOSDEM 2016&lt;/strong&gt;: &lt;a class="link" href="https://luiyo.net/blog/2016/03/fosdem-2016-friday/" &gt;Friday&lt;/a&gt;, &lt;a class="link" href="https://luiyo.net/blog/2016/03/fosdem-2016-saturday/" &gt;Saturday&lt;/a&gt; and &lt;a class="link" href="https://luiyo.net/blog/2016/03/fosdem-2016-sunday/" &gt;Sunday&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;FOSDEM 2018&lt;/strong&gt;: &lt;a class="link" href="https://luiyo.net/blog/2018/02/fosdem-2018-saturday/" &gt;Saturday&lt;/a&gt; and &lt;a class="link" href="https://luiyo.net/blog/2018/02/fosdem-2018-sunday/" &gt;Sunday&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;FOSDEM 2019&lt;/strong&gt;: &lt;a class="link" href="https://luiyo.net/blog/2019/02/fosdem-2019-saturday/" &gt;Saturday&lt;/a&gt; and &lt;a class="link" href="https://luiyo.net/blog/2019/02/fosdem-2019-sunday/" &gt;Sunday&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The &lt;a class="link" href="https://twitter.com/vishwajeets3/status/1224021852349255682" target="_blank" rel="noopener"
 &gt;numbers of this 2020 edition&lt;/a&gt; speak for themselves, improving all the figures from previous years:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;more than 8,000 attendees in only two days&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://fosdem.org/2020/schedule/speakers/" target="_blank" rel="noopener"
 &gt;781 speakers&lt;/a&gt; in &lt;a class="link" href="https://fosdem.org/2020/schedule/events/" target="_blank" rel="noopener"
 &gt;817 different events&lt;/a&gt; (talks or workshops, mainly)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://fosdem.org/2020/schedule/rooms/" target="_blank" rel="noopener"
 &gt;71 tracks&lt;/a&gt; in 35 different rooms&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://video.fosdem.org/2020/" target="_blank" rel="noopener"
 &gt;more than 400 hours of content&lt;/a&gt;, almost all of the events are &lt;a class="link" href="https://fosdem.org/2020/schedule/streaming/" target="_blank" rel="noopener"
 &gt;available online with live streaming&lt;/a&gt; during the conference&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://fosdem.org/2020/stands/" target="_blank" rel="noopener"
 &gt;63 stands&lt;/a&gt; of all kinds of projects: &lt;a class="link" href="https://fsfe.org/" target="_blank" rel="noopener"
 &gt;FSFE&lt;/a&gt;, &lt;a class="link" href="http://www.apache.org/" target="_blank" rel="noopener"
 &gt;the Apache Software Foundation&lt;/a&gt;, &lt;a class="link" href="https://opensource.org/" target="_blank" rel="noopener"
 &gt;OSI&lt;/a&gt;, &lt;a class="link" href="https://eclipse.org/" target="_blank" rel="noopener"
 &gt;the Eclipse Foundation&lt;/a&gt;, &lt;a class="link" href="https://sfconservancy.org/" target="_blank" rel="noopener"
 &gt;Software Freedom Conservancy&lt;/a&gt;, &lt;a class="link" href="http://getfedora.org/" target="_blank" rel="noopener"
 &gt;Fedora&lt;/a&gt;, &lt;a class="link" href="https://www.opensuse.org/" target="_blank" rel="noopener"
 &gt;OpenSUSE&lt;/a&gt;, &lt;a class="link" href="https://www.debian.org/" target="_blank" rel="noopener"
 &gt;Debian&lt;/a&gt; &lt;a class="link" href="http://www.kde.org/" target="_blank" rel="noopener"
 &gt;KDE&lt;/a&gt;, &lt;a class="link" href="http://gnome.org/" target="_blank" rel="noopener"
 &gt;Gnome&lt;/a&gt;, &lt;a class="link" href="http://www.libreoffice.org/" target="_blank" rel="noopener"
 &gt;LibreOffice&lt;/a&gt;, &lt;a class="link" href="https://www.mattermost.com/" target="_blank" rel="noopener"
 &gt;Mattermost&lt;/a&gt;, &lt;a class="link" href="https://mozilla.org/" target="_blank" rel="noopener"
 &gt;Mozilla&lt;/a&gt;, &lt;a class="link" href="https://jenkins.io/" target="_blank" rel="noopener"
 &gt;Jenkins&lt;/a&gt;, &amp;hellip;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To make it more impressive, take into account that FOSDEM is &lt;strong&gt;organized by volunteers&lt;/strong&gt;, everything is &lt;strong&gt;community driven&lt;/strong&gt; and it&amp;rsquo;s &lt;strong&gt;free to attend&lt;/strong&gt;. You don&amp;rsquo;t even need to register beforehand.&lt;/p&gt;
&lt;p&gt;As usual, let me summarize some of the talks that I attended (in chronological order):&lt;/p&gt;
&lt;h2 id="talks"&gt;Talks
&lt;/h2&gt;&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2020/schedule/event/municipal_government/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;How FOSS could revolutionize municipal government&lt;/strong&gt;&lt;/a&gt;, by Danese Cooper&lt;/p&gt;
&lt;p&gt;Danese Cooper (&lt;a class="link" href="https://twitter.com/divadanese" target="_blank" rel="noopener"
 &gt;@divadanese&lt;/a&gt;) complete career is amazing: former CTO at &lt;a class="link" href="https://en.wikipedia.org/wiki/Wikimedia_Foundation" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Wikimedia Foundation&lt;/strong&gt;&lt;/a&gt;, board member of the &lt;a class="link" href="https://en.wikipedia.org/wiki/Open_Source_Hardware_Association" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Open Source Hardware Association&lt;/strong&gt;&lt;/a&gt;, board observer at &lt;a class="link" href="https://en.wikipedia.org/wiki/Mozilla" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Mozilla&lt;/strong&gt;&lt;/a&gt; and board member at &lt;a class="link" href="https://en.wikipedia.org/wiki/Open_Source_Initiative" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Open Source Initiative&lt;/strong&gt;&lt;/a&gt;,&amp;hellip; She gave at FOSDEM a very interesting and inspiring talk about the growing presence of FOSS in public administrations.&lt;/p&gt;
&lt;p&gt;She started with a brief historical review of relevant projects, highlighting &lt;a class="link" href="https://en.wikipedia.org/wiki/GnuLinEx" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;LinEx&lt;/strong&gt;&lt;/a&gt; in Extremadura and &lt;a class="link" href="https://en.wikipedia.org/wiki/Code_for_America" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Code For America&lt;/strong&gt;&lt;/a&gt;. This initiatives to provide an open alternative for a specific purpose have sometimes failed. In the last years several projects are becoming popular with a common pattern: acting locally to impact globally.&lt;/p&gt;
&lt;p&gt;For example: &lt;strong&gt;Jason Hibbets&lt;/strong&gt; (&lt;a class="link" href="https://twitter.com/jhibbets" target="_blank" rel="noopener"
 &gt;@jhibbets&lt;/a&gt;) makes small &lt;a class="link" href="http://theopensourcecity.com/" target="_blank" rel="noopener"
 &gt;FOSS projects for his regional county in Raleigh, North Carolina&lt;/a&gt;. In Baltimore, a &lt;a class="link" href="https://en.wikipedia.org/wiki/2019_Baltimore_ransomware_attack" target="_blank" rel="noopener"
 &gt;city that was hacked and had to pay a ransom to recover its servers&lt;/a&gt;, the amazing people from the &lt;a class="link" href="https://www.stfranciscenter.org/" target="_blank" rel="noopener"
 &gt;St. Francis Neighborhood Center&lt;/a&gt; lead by &lt;strong&gt;Jacob Green&lt;/strong&gt; are adapting an international open source platform to provide city services, webs and other functions.&lt;/p&gt;
&lt;p&gt;This international open source platform is &lt;a class="link" href="https://github.com/lutece-platform" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Lutèce&lt;/strong&gt;&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/LuteceNews" target="_blank" rel="noopener"
 &gt;@LuteceNews&lt;/a&gt;), developed by the City of Paris. Lutèce is a 12 years old modular and extensible platform, covering hundreds of city services. Through several projects, mainly built in Java EE, it covers from basic web capabilities to voting systems or workflow functions. Awesome.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/49585666702_fec7d4716a_k.jpg" alt="Lutèce facts presented in FOSDEM 2020"&gt;
 
 
 &lt;figcaption&gt;
 Lutèce facts presented in FOSDEM 2020
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2020/schedule/event/selfish_contributor/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;The Selfish Contributor Explained&lt;/strong&gt;&lt;/a&gt;, by James Bottomley&lt;/p&gt;
&lt;p&gt;Throughout the years I&amp;rsquo;ve attended several times to James Bottomley (&lt;a class="link" href="https://twitter.com/jejb_" target="_blank" rel="noopener"
 &gt;@jejb_&lt;/a&gt;) talks, and it&amp;rsquo;s always worthy. This time the talk was focused on how Open Source begins as a selfish activity. According to James, managing engineers has always been a problem, even before software exists, because they tend to be opinionated. It&amp;rsquo;s better to keep a technical motivation than a managerial motivation, but &lt;em&gt;scratching your own itch&lt;/em&gt; provides a strong self motivation.&lt;/p&gt;
&lt;p&gt;In his first announcement explaining that he was working in a new operating system, &lt;strong&gt;Linus Torvalds&lt;/strong&gt; wanted just suggestions as he expected to code everything by himself, but he was flooded by suggestions and eventually patches. All successful projects run into scaling issues, so how your community or project deals with contributions is essential. Linux solved this &lt;em&gt;success issue&lt;/em&gt; with tooling, first with &lt;a class="link" href="https://en.wikipedia.org/wiki/BitKeeper" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;BitKeeper&lt;/strong&gt;&lt;/a&gt; in 2002 and later with &lt;a class="link" href="https://en.wikipedia.org/wiki/Git" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Git&lt;/strong&gt;&lt;/a&gt; in 2005.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2020/schedule/event/iot_ethics/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;The Ethics Behind Your IoT&lt;/strong&gt;&lt;/a&gt;, by Molly de Blanc&lt;/p&gt;
&lt;p&gt;Molly de Blanc (&lt;a class="link" href="https://twitter.com/mmillions" target="_blank" rel="noopener"
 &gt;@mmillions&lt;/a&gt;), Strategic Initiatives Manager at &lt;a class="link" href="https://en.wikipedia.org/wiki/GNOME" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Gnome&lt;/strong&gt;&lt;/a&gt; and President of the &lt;a class="link" href="https://en.wikipedia.org/wiki/Open_Source_Initiative" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Open Source Initiative&lt;/strong&gt;&lt;/a&gt;, explained how the Internet of Things is creating new risks and potential security issues due to the lack of free and open alternatives in the ecosystem.&lt;/p&gt;
&lt;p&gt;She explained several examples, mainly focused on home surveillance, smart locks and smart doorbells. Smart locks are enabling a new type of abuse. If hacked (or a violent ex-partner) someone can lock you out, open without your consent, etc.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/49585666747_0e92faa18b_k.jpg" alt="Molly de Blanc presenting at FOSDEM 2020"&gt;
 
 
 &lt;figcaption&gt;
 Molly de Blanc presenting at FOSDEM 2020
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2020/schedule/event/ethical_ai/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Freedom and AI: Can Free Software include ethical AI systems?&lt;/strong&gt;&lt;/a&gt;, by Justin W. Flory &amp;amp; Michael Nolan&lt;/p&gt;
&lt;p&gt;Justin (&lt;a class="link" href="https://twitter.com/jflory7" target="_blank" rel="noopener"
 &gt;@jflory7&lt;/a&gt;) and Mike (&lt;a class="link" href="https://twitter.com/__nolski__" target="_blank" rel="noopener"
 &gt;@_ &lt;em&gt;nolski&lt;/em&gt; _&lt;/a&gt;) gave another interesting talk about Ethics and Open Source. They started with an historical overview of &lt;a class="link" href="https://en.wikipedia.org/wiki/GNU_Project" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;GNU&lt;/strong&gt;&lt;/a&gt;, the &lt;a class="link" href="https://en.wikipedia.org/wiki/Free_Software_Foundation" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;FSF&lt;/strong&gt;&lt;/a&gt; and the &lt;a class="link" href="https://en.wikipedia.org/wiki/GNU_General_Public_License" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;GPL&lt;/strong&gt;&lt;/a&gt;, to explain why the &lt;a class="link" href="https://en.wikipedia.org/wiki/Free_software#Definition_and_the_Four_Freedoms" target="_blank" rel="noopener"
 &gt;four essential freedoms&lt;/a&gt;, written by &lt;a class="link" href="https://en.wikipedia.org/wiki/Richard_Stallman" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Richard Stallman&lt;/strong&gt;&lt;/a&gt; in 1986, need to be adapted for AI systems. To create awareness about this, the main initiatives are the &lt;a class="link" href="https://ainowinstitute.org/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;AI Now Institute&lt;/strong&gt;&lt;/a&gt; and &lt;a class="link" href="https://www.partnershiponai.org/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Partnership on AI&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;They continued their presentation introducing some new Freedoms applicable to AI:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Freedom to&amp;hellip; audit automated decision-making systems&lt;/li&gt;
&lt;li&gt;Freedom to&amp;hellip; deliver accountability and responsibility&lt;/li&gt;
&lt;li&gt;Freedom to&amp;hellip; appeal a decision&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;They also suggested how we, as a global community, could respect and enforce these freedoms: reproducibility, liability and responsible design, and specially human centered appealing mechanisms.&lt;/p&gt;
&lt;blockquote class="twitter-tweet"&gt;&lt;p lang="en" dir="ltr"&gt;“Human futures are a combination of data and software.”&lt;br&gt;&lt;br&gt;In a time where software is often free, companies are selling how people behave. What a strong way to frame this point. &lt;a href="https://twitter.com/hashtag/FOSDEM?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#FOSDEM&lt;/a&gt; &lt;a href="https://t.co/mFYoczki0f"&gt;pic.twitter.com/mFYoczki0f&lt;/a&gt;&lt;/p&gt;&amp;mdash; Matthew Broberg (@mbbroberg) &lt;a href="https://twitter.com/mbbroberg/status/1223579974923358209?ref_src=twsrc%5Etfw"&gt;February 1, 2020&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;


&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2020/schedule/event/ospoforcities/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Organizing Open Source for Cities&lt;/strong&gt;&lt;/a&gt;, by Jacob Green&lt;/p&gt;
&lt;p&gt;The second talk I attended about the same topic, this time from Jacob Green (&lt;a class="link" href="https://twitter.com/jacoblyopen" target="_blank" rel="noopener"
 &gt;@jacoblyopen&lt;/a&gt;), founder of &lt;strong&gt;Mosslabs.io&lt;/strong&gt; (&lt;a class="link" href="https://twitter.com/Moss4Cities" target="_blank" rel="noopener"
 &gt;@Moss4Cities&lt;/a&gt;) and open source strategist for both the City of Paris and Johns Hopkins University.&lt;/p&gt;
&lt;p&gt;He explained with more detail how to enable a sustainable and free innovation in our cities, through structured collaboration and community. We need a clear, but flexible, institutional interface or framework to advance in cooperation and scaling. He showed some examples from his own initiatives in Johns Hopkins University, the City of Baltimore or the City of Paris with Lutèce (already mentioned in my summary).&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2020/schedule/event/nextgencontributors/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;The next generation of contributors is not on IRC&lt;/strong&gt;&lt;/a&gt;, by Matthew Broberg&lt;/p&gt;
&lt;p&gt;I was curious about this talk by Matthew Broberg (&lt;a class="link" href="https://twitter.com/mbbroberg" target="_blank" rel="noopener"
 &gt;@mbbroberg&lt;/a&gt;), technical editor at &lt;a class="link" href="https://opensource.com/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;OpenSource.com&lt;/strong&gt;&lt;/a&gt;. He explained how the communication channels can be more or less inclusive, and how they impact the community itself. He claimed that he does not get IRC, but felt great after creating easily a Github user and having solved an issue in a friendly manner. Most of the modern capabilities are not in IRC, and that is why the communities are shifting to new platforms.&lt;/p&gt;
&lt;p&gt;Also, he highlighted that we should move more to asynchronous communication tools, depending on the purpose. He explained how for some people that communication platforms are the third place (after home and your workplace) where you need to feel comfortable and secure. He stressed his message explaining how different projects or companies are distributing their communication needs.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/49584930718_5e6d3d0999_k.jpg" alt="Matthew Broberg about the communications platform adoption in FOSDEM 2020"&gt;
 
 
 &lt;figcaption&gt;
 Matthew Broberg about the communications platform adoption in FOSDEM 2020
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2020/schedule/event/ethicsoss/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;The Ethics of Open Source&lt;/strong&gt;&lt;/a&gt;, by Don Goodman-Wilson&lt;/p&gt;
&lt;p&gt;Don (&lt;a class="link" href="https://twitter.com/DEGoodmanWilson" target="_blank" rel="noopener"
 &gt;@DEGoodmanWilson&lt;/a&gt;) offered the audience another view about the theme of my FOSDEM, Ethics and Open Source. Free Software gives freedom to everyone, and it can be argued that it creates opportunities for the already privileged part of the society. It exacerbates existing injustices, encourages exploiting volunteer labor force. This is reflected in the &lt;em&gt;Paradox of Openness&lt;/em&gt;, the tension between encouraging knowledge sharing and ensuring sufficient protection for those who share.&lt;/p&gt;
&lt;p&gt;We cannot settle with Open Source (as it is described today). It&amp;rsquo;s necessary but not enough to ask if something is Open Source, we need to ask ourselves other questions like:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;What are the forces that have led us to this point?&lt;/li&gt;
&lt;li&gt;What do we owe to each other as people?&lt;/li&gt;
&lt;li&gt;How do we evolve as a community?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2020/schedule/event/corppolicyteamoutreach/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Engineers, Call Your Policy People!&lt;/strong&gt;&lt;/a&gt;, by Astor Nummelin Carlberg &amp;amp; Paula Grzegorzewska&lt;/p&gt;
&lt;p&gt;Astor and Paula from &lt;strong&gt;OpenForum Europe&lt;/strong&gt; (&lt;a class="link" href="https://twitter.com/OpenForumEurope" target="_blank" rel="noopener"
 &gt;@OpenForumEurope&lt;/a&gt;) explained their mission, connecting FOSS communities and projects with policy makers (specially in the EU). They explained what they learned during the recent campaign against the Copyright Directive, and how they created the &lt;a class="link" href="https://www.savecodeshare.eu/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;SaveCodeShare.eu&lt;/strong&gt;&lt;/a&gt; portal.&lt;/p&gt;
&lt;p&gt;Regulations affect for profit business, but what happens with Open Source? Activism and FOSS advocacy is needed for the future of Europe, but policy makers need evidence. They help collecting use cases showing the impact of Open Source Software and Hardware on technological independence, competitiveness and innovation. If you can provide one of those examples, please contact them.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2020/schedule/event/capitalismethicaloss/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Building Ethical Software Under Capitalism&lt;/strong&gt;&lt;/a&gt;, by Deb Nicholson&lt;/p&gt;
&lt;p&gt;Deb Nicholson (&lt;a class="link" href="https://twitter.com/baconandcoconut" target="_blank" rel="noopener"
 &gt;@baconandcoconut&lt;/a&gt;), Director of Community Operations at &lt;strong&gt;Software Freedom Conservancy&lt;/strong&gt; (&lt;a class="link" href="https://twitter.com/conservancy" target="_blank" rel="noopener"
 &gt;@conservancy&lt;/a&gt;), shared her view about ethical software in the most vindictive talk of the weekend. FOSS still depends on funding, and affinity is key. It&amp;rsquo;s easy to see the &lt;a class="link" href="https://en.wikipedia.org/wiki/Return_on_investment" target="_blank" rel="noopener"
 &gt;ROI&lt;/a&gt; in big FOSS projects, but how can we justify (and measure) helping people as the main business model?&lt;/p&gt;
&lt;p&gt;Rainbow capitalism&amp;hellip; is still capitalism. Open Source exploitation&amp;hellip; is still exploitation. How can we fix things from the inside? Encouraging self-reporting, organizing strikes or walkouts if needed, but mainly building our own alternatives. We should bind our future and our software to ethical choices. She closed with two interesting thoughts: What policy changes are needed? Should we require ethical audits and ethical boards in the companies/projects?&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2020/schedule/event/uxbox_open_source_online_prototyping_platform/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;UXBOX, the time for an open source online prototyping platform has arrived&lt;/strong&gt;&lt;/a&gt;, by Pablo Ruiz Múzquiz&lt;/p&gt;
&lt;p&gt;Me dear friend Pablo (&lt;a class="link" href="https://twitter.com/diacritica" target="_blank" rel="noopener"
 &gt;@diacritica&lt;/a&gt;) presented &lt;a class="link" href="https://uxbox.io/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;UXBOX&lt;/strong&gt;&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/uxboxtool" target="_blank" rel="noopener"
 &gt;@uxboxtool&lt;/a&gt;) in the Open Source Design devroom. He delivered a complete presentation of the project, from the inception a few years ago in a &lt;a class="link" href="https://piweek.com/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;πWEEK&lt;/strong&gt;&lt;/a&gt; at &lt;a class="link" href="https://kaleidos.net/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Kaleidos&lt;/strong&gt;&lt;/a&gt; to the current state of development, after receiving funding and important offers to help from external contributors from the community.&lt;/p&gt;
&lt;p&gt;UXBOX is the first Open Source solution for design and prototyping. It is based in open standards like SVG, open source licenses, and with a multiplatform and multidisciplinary mindset.&lt;/p&gt;
&lt;div class="video-wrapper"&gt;
 &lt;iframe loading="lazy" 
 src="https://www.youtube.com/embed/2_vIpNtWu6Q" 
 allowfullscreen 
 title="YouTube Video"
 &gt;
 &lt;/iframe&gt;
&lt;/div&gt;

&lt;br /&gt;
&lt;p&gt;And that&amp;rsquo;s all. &lt;strong&gt;See you in Brussels in FOSDEM 2021!!&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Big Things Conference and Commit Conf 2019</title><link>https://luiyo.net/en/blog/2019/12/big-things-commit-conf-2019/</link><pubDate>Sun, 08 Dec 2019 00:00:00 +0000</pubDate><guid>https://luiyo.net/en/blog/2019/12/big-things-commit-conf-2019/</guid><description>&lt;img src="https://luiyo.net/49188308296_420b0c82e1_k_1120308574970393360.jpg" alt="Featured image of post Big Things Conference and Commit Conf 2019" /&gt;&lt;p&gt;A few days ago I had the opportunity and the privilege to deliver &lt;a class="link" href="https://twitter.com/luiyo/status/1194750663428837381" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;three&lt;/strong&gt; different talks, in &lt;strong&gt;three&lt;/strong&gt; consecutive days, in &lt;strong&gt;two&lt;/strong&gt; international events&lt;/a&gt;: &lt;strong&gt;Big Things Conference 2019&lt;/strong&gt; and &lt;strong&gt;Commit Conf 2019&lt;/strong&gt;. This crazy coincidence forces me to write one single post to summarize my experience in both events, including an overview of my three talks.&lt;/p&gt;
&lt;p&gt;Taking advantage of this, I have also created a new section on this website to publish the &lt;a class="link" href="https://luiyo.net/talks" &gt;main public talks&lt;/a&gt; that I&amp;rsquo;m proudly giving. For each talk you will find some basic data, a link to the slides, and also a link to the video for those that are recorded and published.&lt;/p&gt;
&lt;p&gt;Before continuing, I want to thank &lt;strong&gt;Pablo Ruiz Subira&lt;/strong&gt; publicly again for letting me complicate his life. I encouraged him to give a talk, and he has not only done it (three times, if we also count a Meetup talk in October) but also at a great level. It has been especially hard for him to prepare all this, at a time when his family (with a small child and a newborn baby) deserve much more attention than everything else.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/49188501382_4f0187ad25_k.jpg" alt="With Pablo before our packed full session at Commit Conf 2019"&gt;
 
 
 &lt;figcaption&gt;
 With Pablo before our packed full session at Commit Conf 2019
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;TLDR;&lt;/strong&gt; Delivering three talks in just three days is tough, but as usual the feedback from your peers makes the effort worthwhile. I&amp;rsquo;m very happy with how the three talks turned out, and despite skipping several slots to prepare things and talk with as many colleagues as possible, my selection of talks was also nice and I learned a lot.&lt;/p&gt;
&lt;p&gt;Let me summarize some of the talks I attended (this time, including my own):&lt;/p&gt;
&lt;h1 id="big-things-conference-2019"&gt;Big Things Conference 2019
&lt;/h1&gt;&lt;p&gt;&lt;a class="link" href="https://www.bigthingsconference.com/2019/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Big Things Conference 2019&lt;/strong&gt;&lt;/a&gt;, previously called &lt;strong&gt;Big Data Spain&lt;/strong&gt;, is one of the most relevant conferences about Big Data and Artificial Intelligence across Europe. This was the 7th edition and the first one with the new name and branding but they continued with the format of the past events with an interesting balance between technology, business propositions and innovative ideas. According to the organizers this year they had more than 2,000 attendees and 92 talks in just two days.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://www.bigthingsconference.com/2019/schedule/staying-safe-in-the-ai-future/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Staying Safe in the AI Future&lt;/strong&gt;&lt;/a&gt;, by Cassie Kozyrkov (&lt;a class="link" href="https://twitter.com/quaesita" target="_blank" rel="noopener"
 &gt;@quaesita&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Very interesting and appropriate opening keynote by Cassie, focusing on the problems and lack of reliability that we can introduce to the data if we don&amp;rsquo;t put enough care. I took with me several good tips to apply and nice definitions like Algorithmic bias, that occurs when a computer system reflects the implicit values of the humans that created it.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/49188501532_7b049ac674_k.jpg" alt="Cassie Kozyrkov at Big Things Conference 2019"&gt;
 
 
 &lt;figcaption&gt;
 Cassie Kozyrkov at Big Things Conference 2019
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="https://www.bigthingsconference.com/2019/schedule/solving-natural-language-problems-with-scarce-data/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Solving Natural Language problems with scarce data&lt;/strong&gt;&lt;/a&gt;, by Álvaro Barbero Jiménez (&lt;a class="link" href="https://twitter.com/albarjip" target="_blank" rel="noopener"
 &gt;@albarjip&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;This talk by Álvaro was one of my favorites of all the conference. He delivered a complete overview, explaining a lot of concepts and providing valuable learnings. Thanks to him I discovered interesting things like &lt;a class="link" href="https://fasttext.cc/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;FastText&lt;/strong&gt;&lt;/a&gt; and &lt;a class="link" href="https://arxiv.org/abs/1810.04805" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Bert&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/49188307696_4bf2ada467_k.jpg" alt="Álvaro Barbero Jiménez at Big Things Conference 2019"&gt;
 
 
 &lt;figcaption&gt;
 Álvaro Barbero Jiménez at Big Things Conference 2019
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="https://www.bigthingsconference.com/2019/schedule/operationalizing-data-science-using-the-azure-stack/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Operationalizing Data Science using the Azure stack&lt;/strong&gt;&lt;/a&gt;, by María Medina (&lt;a class="link" href="https://twitter.com/mariamedp" target="_blank" rel="noopener"
 &gt;@mariamedp&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;María gave a very good overview of the Microsoft Azure Machine Learning stack, focusing specially on what she called the MLOps approach, using Azure capabilities to build a complete CI and CD pipelines for your ML models.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/49188307521_5db7097b57_k.jpg" alt="María Medina at Big Things Conference 2019"&gt;
 
 
 &lt;figcaption&gt;
 María Medina at Big Things Conference 2019
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="https://www.bigthingsconference.com/2019/schedule/from-big-data-to-artificial-intelligence-descriptive-vs-predictive/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;From Big Data to Artificial Intelligence. Descriptive Vs predictive&lt;/strong&gt;&lt;/a&gt;, by Marco Benjumeda&lt;/p&gt;
&lt;p&gt;Marco explained what could be the dream job for a soccer fan, working for a company that provides advanced analytics and insights for top clubs related to performance (past and expected) of any soccer player. He did not gave a detailed explanation on the technology side, but instead showed with passion all the capabilities provided by the tools (one by one) they are building. Interesting talk, although it could have been marked as &lt;em&gt;business&lt;/em&gt; instead of &lt;em&gt;technical&lt;/em&gt;.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/49187809538_f3605f0b61_k.jpg" alt="Marco Benjumeda at Big Things Conference 2019"&gt;
 
 
 &lt;figcaption&gt;
 Marco Benjumeda at Big Things Conference 2019
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="https://www.bigthingsconference.com/2019/speakers/oscar-mendez/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;From HBDM (Human-Based Data Management) to AIDM (Artificial Intelligence Data Management)&lt;/strong&gt;&lt;/a&gt;, by Óscar Méndez (&lt;a class="link" href="https://twitter.com/omendezsoto" target="_blank" rel="noopener"
 &gt;@omendezsoto&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Óscar gave a nice opening session for the second conference day. In summary, he explained the importance of trusted data as a concept to build on top of the rest. He also stressed the relevance of a strong business data layer, abstracting business users from the data assets complexity.&lt;/p&gt;
&lt;p&gt;A couple of good remarks, although he lost me with the frequent marketing messages and some bold assumptions about what others are (or aren&amp;rsquo;t doing).&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://www.bigthingsconference.com/2019/schedule/omni-channel-customer-centric-strategies-in-a-modern-architecture/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Omni-Channel Customer-Centric Strategies in a Modern Architecture&lt;/strong&gt;&lt;/a&gt;, by &lt;strong&gt;me&lt;/strong&gt; and Pablo Ruiz Subira (&lt;a class="link" href="https://twitter.com/prsubi" target="_blank" rel="noopener"
 &gt;@prsubi&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ve been working with Pablo on this topic during the last months (I could say years even). Before last Summer we decided that this could provide valuable insights for others working on similar things, so we sent a proposal. We wanted to deliver the talk we would have loved to receive a couple of years ago.&lt;/p&gt;
&lt;p&gt;The talk is about the design choices, strategies and patterns that we strongly recommend to build a modern, flexible and powerful communications architecture. It contains theoretical concepts, detailed tips and an opinionated section with several lessons learned by us during this (ongoing) effort. Key messages:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;You cannot be relevant if your strategy is not customer-centric, learning from the behavior and responses of your customers&lt;/li&gt;
&lt;li&gt;You cannot be coherent if your strategy is not fully omni-channel, with advisory, commercial and operative communications serving the same purpose and strategy&lt;/li&gt;
&lt;li&gt;A micro-services architecture will help you, but focus on a proper isolation of responsibilities regardless your overall architecture design&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Big Data capabilities&lt;/em&gt; will be required for an advance and mature proposal, but it is not the first or most important component&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/49187809588_c4459fb402_k.jpg" alt="With Pablo Ruiz at Big Things Conference 2019"&gt;
 
 
 &lt;figcaption&gt;
 With Pablo Ruiz at Big Things Conference 2019
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;You can check the slides in my &lt;a class="link" href="https://luiyo.net/talks" &gt;talks&lt;/a&gt; section, but the complete message is not in the deck so consider waiting for the video (the session was recorded by the organization).&lt;/p&gt;
&lt;p&gt;I will not judge the value or success of the talk, but we are very happy with the result and the execution. The feedback that we have received is also very positive so I suppose it was worthy also for the audience.&lt;/p&gt;
&lt;h1 id="commit-conf-2019"&gt;Commit Conf 2019
&lt;/h1&gt;&lt;p&gt;&lt;a class="link" href="https://2019.commit-conf.com/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Commit Conf 2019&lt;/strong&gt;&lt;/a&gt; is also one of the biggest conferences in Spain related to software development. The contents are more generic and the public is completely different, as the target audience are developers or students. The numbers for 2019 were impressive: 9 tracks in parallel (+ 3 workshop tracks), more than 2,000 attendees and 140 talks/workshops.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://www.koliseo.com/events/commit-2019/r4p/5106829466009600/agenda#/5690945286701056/5749033075212288" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Design principles for an Event Driven Architecture in an Event Driven World&lt;/strong&gt;&lt;/a&gt;, by &lt;strong&gt;me&lt;/strong&gt; and Pablo Ruiz Subira (&lt;a class="link" href="https://twitter.com/prsubi" target="_blank" rel="noopener"
 &gt;@prsubi&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Second talk of the week for Pablo and me. First slot after the opening keynote in one of the largest spaces of the conference, and the room was packed full with people even in the floor and against the lateral walls. It&amp;rsquo;s quite thrilling to start a conference like this.&lt;/p&gt;
&lt;p&gt;This is not strictly a talk about what we do in ING (although we do most of this) and neither is about encouraging anyone to build micro-services. Our objective was to explain, for those that have already decided to build a micro-services architecture, the benefits of going one step forward building a complete &lt;a class="link" href="https://en.wikipedia.org/wiki/Event-driven_architecture" target="_blank" rel="noopener"
 &gt;Event-Driven Architecture&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;We explained several concepts, with theoretical and practical explanations combined with real examples: Event taxonomy, correlation, inference, reference data management, choreography, orchestration, data lineage, data segregation, &amp;hellip;&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/49187809998_6c66a9eead_k.jpg" alt="Thats me (interested in what Pablo says) at Commit Conf 2019"&gt;
 
 
 &lt;figcaption&gt;
 Thats me (interested in what Pablo says) at Commit Conf 2019
 &lt;br /&gt;Source: &lt;a href="https://www.flickr.com/photos/145448896@N02/49157302643/"&gt; 
 CommitConf
 &lt;/a&gt; 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;This time our engagement with the audience was much bigger, most probably because in Spanish we are more fluent and comfortable but also because the audience in Commit Conf is much more technical. The questions from the audience complemented perfectly the message, as a proof that they got the content perfectly to the point they were thinking on the next level and the corner cases.&lt;/p&gt;
&lt;p&gt;The slides can be found as well in the &lt;a class="link" href="https://luiyo.net/talks" &gt;talks&lt;/a&gt; section, but again if you are interested it&amp;rsquo;s probably better to watch the recording as it is already online (in Spanish):&lt;/p&gt;
&lt;center&gt;&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/eNWyPV7wcaY" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;/center&gt;
&lt;p&gt;Again, very happy with the result and our execution, and the &lt;a class="link" href="https://www.koliseo.com/events/commit-2019/r4p/5106829466009600/agenda#/5690945286701056/5749033075212288" target="_blank" rel="noopener"
 &gt;feedback we are receiving&lt;/a&gt; is impressively positive.&lt;/p&gt;
&lt;blockquote class="twitter-tweet"&gt;&lt;p lang="ca" dir="ltr"&gt;Design principles for an Event Driven Architecture in an Event Driven World. Gran título, gran charla de &lt;a href="https://twitter.com/luiyo?ref_src=twsrc%5Etfw"&gt;@luiyo&lt;/a&gt; y &lt;a href="https://twitter.com/prsubi?ref_src=twsrc%5Etfw"&gt;@prsubi&lt;/a&gt; &lt;a href="https://twitter.com/hashtag/commitconf?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#commitconf&lt;/a&gt; &lt;a href="https://t.co/ZXzJ0vXJrx"&gt;pic.twitter.com/ZXzJ0vXJrx&lt;/a&gt;&lt;/p&gt;&amp;mdash; César Alberca (@cesalberca) &lt;a href="https://twitter.com/cesalberca/status/1197803557883465729?ref_src=twsrc%5Etfw"&gt;November 22, 2019&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;


&lt;p&gt;&lt;a class="link" href="https://www.koliseo.com/events/commit-2019/r4p/5106829466009600/agenda#/5690945286701056/6331574253518848" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;En un mundo hiperconectado, las bases de datos de grafos son tu arma secreta&lt;/strong&gt;&lt;/a&gt;, by Javier Ramírez (&lt;a class="link" href="https://twitter.com/supercoco9" target="_blank" rel="noopener"
 &gt;@supercoco9&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Yet another talk about graph databases, and again about the basic concepts. I was suspicious, and the talk was clearly tagged as &lt;em&gt;beginner&lt;/em&gt; content, but I attended anyway because I like this speaker. I discovered later that the deck was more extensive for longer sessions and sadly (for me) we skipped most of the slides I was more interested. Having said that, I discovered &lt;a class="link" href="https://tinkerpop.apache.org/gremlin.html" target="_blank" rel="noopener"
 &gt;Gremlin&lt;/a&gt; and how &lt;a class="link" href="https://aws.amazon.com/es/neptune/" target="_blank" rel="noopener"
 &gt;Amazon Neptune&lt;/a&gt; works, and both look nice.&lt;/p&gt;
&lt;p&gt;Very good talk by Javier, reinforcing my eagerness to go deeper into this topic (as soon as I can park the other million things I&amp;rsquo;m dealing with nowadays).&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://www.koliseo.com/events/commit-2019/r4p/5106829466009600/agenda#/5690945286701056/5700831059902464" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Python para administradores de sistemas&lt;/strong&gt;&lt;/a&gt;, by Alejandro Guirao Rodríguez (&lt;a class="link" href="https://twitter.com/lekum" target="_blank" rel="noopener"
 &gt;@lekum&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Alejandro, apart from a very good friend, is also an extremely good speaker. He always prepares the contents thoroughly, and he is clearly gaining confidence talk after talk, conference after conference. Proof of that was the intro and closure playing the ukelele, as an analogy of Python as a multi-purpose simple but powerful and joyful instrument.&lt;/p&gt;
&lt;p&gt;I loved the storyline putting the audience under the skin of Nerea, explaining how she can deal with diverse and different problems in her daily job as system administrator using just Python. Alex gave not only the examples but also useful references to the standard libraries and modules used on those examples.&lt;/p&gt;
&lt;p&gt;I can not imagine how this talk could have been improved in content or execution. You shouldn&amp;rsquo;t miss it.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/49188308226_4feb9af97c_k.jpg" alt="Alejandro Guirao at Commit Conf 2019"&gt;
 
 
 &lt;figcaption&gt;
 Alejandro Guirao at Commit Conf 2019
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="https://www.koliseo.com/events/commit-2019/r4p/5106829466009600/agenda#/5137837183729664/5636039834075136" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Micronaut y GraalVM: La combinación perfecta&lt;/strong&gt;&lt;/a&gt;, by Iván López (&lt;a class="link" href="https://twitter.com/ilopmar" target="_blank" rel="noopener"
 &gt;@ilopmar&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Any talk by Ivan is sure success. He knows how to communicate and knows how to develop the storyline of the presentation, usually including a final demo to consolidate the message. In this talk the content was as usual very detailed and tremendously interesting, stressing how &lt;a class="link" href="https://micronaut.io/" target="_blank" rel="noopener"
 &gt;Micronaut&lt;/a&gt; matches perfectly with &lt;a class="link" href="https://www.graalvm.org/" target="_blank" rel="noopener"
 &gt;GraalVM&lt;/a&gt;, because of the &lt;a class="link" href="https://en.wikipedia.org/wiki/Reflection_%28computer_programming%29" target="_blank" rel="noopener"
 &gt;reflection&lt;/a&gt;-less, &lt;a class="link" href="https://en.wikipedia.org/wiki/Ahead-of-time_compilation" target="_blank" rel="noopener"
 &gt;AoT compilation&lt;/a&gt; and &lt;a class="link" href="https://en.wikipedia.org/wiki/Reactive_programming" target="_blank" rel="noopener"
 &gt;reactive&lt;/a&gt; design of Micronaut.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://spring.io/" target="_blank" rel="noopener"
 &gt;Spring&lt;/a&gt; and other frameworks are waking up, but Micronaut clearly has a nice starting position in the race to dominate the next era of micro-services.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/49188501942_0caf3345df_k.jpg" alt="Iván López at Commit Conf 2019"&gt;
 
 
 &lt;figcaption&gt;
 Iván López at Commit Conf 2019
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="https://www.koliseo.com/events/commit-2019/r4p/5106829466009600/agenda#/5137837183729664/5632673116585984" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;¿Quién manda en tu lenguaje de programación favorito? 2019 Edition!!&lt;/strong&gt;&lt;/a&gt;, by &lt;strong&gt;me!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The last and for sure the most difficult of the three talks I delivered. I already gave this talk in Codemotion 2015, but in just four years the ecosystem has changed completely so it was not just doing a few small updates. Just collecting the contents takes weeks, arranging them together in a comprehensible and interesting way (at least attempting to) takes more weeks&amp;hellip; I will consider offering this talk to other upcoming events to make up for the invested effort. The good news is that I love this topic and I really enjoy researching for it.&lt;/p&gt;
&lt;p&gt;I have always wondered why we always focus on the technical details, forgetting about the ethical aspects of technology. Back in 2015 I chose to focus on programming languages, but the approach can be applied to other concepts. This talk is not about which programming language has this or that capability, or which one has more functional traits. What I wanted to analyze is how ethical, diverse and healthy is a programming language and the community around it.&lt;/p&gt;
&lt;p&gt;In this talk I explain what can be measured and analyzed regarding ethics and governance in programming languages, and I present a critical analysis of &lt;strong&gt;fourteen&lt;/strong&gt; different languages (two more than in 2015), not just the most popular ones but specially those with some special peculiarity. Furthermore, I can spend hours talking about this but I need to be fast and concise to end in about 35-40 minutes.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/49188307861_7c0abafef8_k.jpg" alt="Thats me talking about Clojure at Commit Conf 2019"&gt;
 
 
 &lt;figcaption&gt;
 Thats me talking about Clojure at Commit Conf 2019
 &lt;br /&gt;Source: &lt;a href="https://www.flickr.com/photos/145448896@N02/49157530163/"&gt; 
 CommitConf
 &lt;/a&gt; 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;The &lt;a class="link" href="https://luiyo.net/concerning-governance-programming-languages-2019/" target="_blank" rel="noopener"
 &gt;slides are already online&lt;/a&gt; and the storyline should be easy to follow, but if you understand Spanish I recommend you to watch the video:&lt;/p&gt;
&lt;center&gt;&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/3hKzgz1eNqA" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen&gt;&lt;/iframe&gt;&lt;/center&gt;
&lt;p&gt;Again, I&amp;rsquo;m very happy with the final materials and my execution, and the attendees gave me a &lt;a class="link" href="https://www.koliseo.com/events/commit-2019/r4p/5106829466009600/agenda#/5137837183729664/5632673116585984" target="_blank" rel="noopener"
 &gt;extremely good feedback&lt;/a&gt;. I&amp;rsquo;m very glad they enjoyed it as much as I did.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://www.koliseo.com/events/commit-2019/r4p/5106829466009600/agenda#/5137837183729664/5202217602646016" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;¿Quieres un buen modelo de Machine Learning? Empieza por el procesado de datos&lt;/strong&gt;&lt;/a&gt;, by Axel Blanco (&lt;a class="link" href="https://twitter.com/drimmark" target="_blank" rel="noopener"
 &gt;@drimmark&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;A well structured talk, it&amp;rsquo;s a pity that he did not enter into something more detailed but it&amp;rsquo;s fine as the talk was labeled as &lt;em&gt;beginner&lt;/em&gt;. As a suggestion to improve, sometimes the talk was more like a commercial presentation about what Keepler (his employer) offers (both to customers and engineers).&lt;/p&gt;
&lt;p&gt;Axel presented the basic concepts of Big Data and Machine Learning, explaining the life cycle of the data and highlighting the importance of the data processing step not only in traditional data warehousing environments but specially in Big Data architectures where any inconsistency might introduce a terrible bias. Very interesting insights about when to apply batch or streaming processing.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/49188308156_7c5094d0c9_k.jpg" alt="Axel Blanco at Commit Conf 2019"&gt;
 
 
 &lt;figcaption&gt;
 Axel Blanco at Commit Conf 2019
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="https://www.koliseo.com/events/commit-2019/r4p/5106829466009600/agenda#/5137837183729664/5752839255097344" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Déjame que te hable de Perl 6&lt;/strong&gt;&lt;/a&gt;, by JJ Merelo (&lt;a class="link" href="https://twitter.com/jjmerelo" target="_blank" rel="noopener"
 &gt;@jjmerelo&lt;/a&gt;)&lt;/p&gt;
&lt;div class="image lateral"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/49188501842_be8754ddb8_k.jpg" alt="JJ Merelo at Commit Conf 2019"&gt;
 
 
 &lt;figcaption&gt;
 JJ Merelo at Commit Conf 2019
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;After my research about Raku (formerly called Perl 6) for my own talk and knowing JJ Merelo since long time ago, I was curious about this presentation. JJ is very involved internationally in the Perl community and now especially in the Raku community. Neither the talk nor the speaker disappointed.&lt;/p&gt;
&lt;p&gt;JJ made a nice overview of the important traits that a modern programming language needs to have, and reviewed each of them with a different language: Scala, Julia, Kotlin, Python, TypeScript, Elixir, F#, Rust, &amp;hellip; When we were all wondering where Raku would appear, the speaker showed us how all those capabilities are also in Raku.&lt;/p&gt;
&lt;p&gt;As a consequence, he ended his talk promoting Raku as an unbeatable language for teaching and learning, since with it you can use and understand modern patterns and usages.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://www.koliseo.com/events/commit-2019/r4p/5106829466009600/agenda#/5137837183729664/5767262292148224" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Construyendo Cultura de Datos&lt;/strong&gt;&lt;/a&gt;, by Rodrigo Quintana and Javier Serrano&lt;/p&gt;
&lt;p&gt;Rodrigo and Javier explained how their employer, &lt;a class="link" href="https://clarity.ai/" target="_blank" rel="noopener"
 &gt;Clarity&lt;/a&gt;, is nurturing a Data Culture across the company, including a complete transformation in the structure of the teams. They also showed, with total transparency, their technology stack both for for traditional services and data science.&lt;/p&gt;
&lt;p&gt;I was surprised to see the similarities between what Clarity does with their client companies data and what we do with different platforms. Well structured and very well explained talk about strategies, languages and technologies they use in their daily challenges. I hope to see other Clarity talks one day in more detail&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/49188501322_b0c1e13e38_k.jpg" alt="Rodrigo Quintana at Commit Conf 2019"&gt;
 
 
 &lt;figcaption&gt;
 Rodrigo Quintana at Commit Conf 2019
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;And that&amp;rsquo;s all. &lt;strong&gt;See you in Big Things Conference 2020 and Commit Conf 2020 !!&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Greach 2019</title><link>https://luiyo.net/en/blog/2019/03/greach-2019/</link><pubDate>Sat, 30 Mar 2019 00:00:00 +0000</pubDate><guid>https://luiyo.net/en/blog/2019/03/greach-2019/</guid><description>&lt;img src="https://luiyo.net/33631536158_ccbbe9ea24_k_13134420347858161482.jpg" alt="Featured image of post Greach 2019" /&gt;&lt;div class="image lateral"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm8.staticflickr.com/7886/47508138651_ab994ce172_o.png" alt="Greach 2019"&gt;
 
 
 &lt;figcaption&gt;
 Greach 2019
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;This week I could attend another fantastic &lt;a class="link" href="http://greachconf.com/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Greach Conference&lt;/strong&gt;&lt;/a&gt;, an international conference that in previous years was focused on the &lt;a class="link" href="http://www.groovy-lang.org/" target="_blank" rel="noopener"
 &gt;Apache Groovy&lt;/a&gt; language and ecosystem (&lt;a class="link" href="https://grails.org/" target="_blank" rel="noopener"
 &gt;Grails&lt;/a&gt;, &lt;a class="link" href="https://gradle.org/" target="_blank" rel="noopener"
 &gt;Gradle&lt;/a&gt;, etc.) but this year has expanded the scope to other technologies related to the &lt;a class="link" href="https://en.wikipedia.org/wiki/Java_virtual_machine" target="_blank" rel="noopener"
 &gt;JVM&lt;/a&gt; like &lt;a class="link" href="https://micronaut.io/" target="_blank" rel="noopener"
 &gt;Micronaut&lt;/a&gt;, &lt;a class="link" href="https://www.graalvm.org/" target="_blank" rel="noopener"
 &gt;GraalVM&lt;/a&gt;, &lt;a class="link" href="https://spring.io/projects/spring-boot" target="_blank" rel="noopener"
 &gt;Spring Boot&lt;/a&gt;, &lt;a class="link" href="https://kotlinlang.org/" target="_blank" rel="noopener"
 &gt;Kotlin&lt;/a&gt;, &lt;a class="link" href="https://developer.android.com/" target="_blank" rel="noopener"
 &gt;Android&lt;/a&gt;, &amp;hellip;&lt;/p&gt;
&lt;p&gt;Greach is a &lt;strong&gt;non-profitable&lt;/strong&gt; event held in Madrid since 2011 (I think I&amp;rsquo;ve missed only one edition). This year for the first time the organizers were &lt;a class="link" href="http://sergiodelamo.es/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Sergio del Amo&lt;/strong&gt;&lt;/a&gt; y &lt;a class="link" href="https://jmiguel.eu/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;José Miguel Rodríguez&lt;/strong&gt;&lt;/a&gt;, with some help from colleagues and &lt;a class="link" href="https://www.greachconf.com/sponsors" target="_blank" rel="noopener"
 &gt;a lot of sponsors&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;TLDR;&lt;/strong&gt; The conference was, as expected, great both in content and speakers. It&amp;rsquo;s a must for me, specially being held here in Madrid. This is still a Groovy lovers conference, but this year &lt;a class="link" href="http://micronaut.io/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Micronaut&lt;/strong&gt;&lt;/a&gt; was omnipresent. Some speakers also put the focus on &lt;a class="link" href="https://www.graalvm.org/" target="_blank" rel="noopener"
 &gt;GraalVM&lt;/a&gt; and &lt;a class="link" href="https://kotlinlang.org/" target="_blank" rel="noopener"
 &gt;Kotlin&lt;/a&gt; as technologies to follow closely. I will.&lt;/p&gt;
&lt;p&gt;Let me summarize some of the talks I attended:&lt;/p&gt;
&lt;h1 id="talks"&gt;Talks
&lt;/h1&gt;&lt;p&gt;&lt;a class="link" href="https://agenda.greachconf.com/talk/keynote-jvm-frameworks" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;JVM Frameworks Keynote&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://agenda.greachconf.com/speaker/andres-almiray" target="_blank" rel="noopener"
 &gt;Andrés Almiray&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/aalmiray" target="_blank" rel="noopener"
 &gt;@aalmiray&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Andrés gave an interesting overview of the JVM Frameworks ecosystem, starting with some history. He reminded us all when &lt;a class="link" href="https://struts.apache.org/" target="_blank" rel="noopener"
 &gt;Struts&lt;/a&gt; was the king of the hill, and how it surrendered to &lt;a class="link" href="https://rubyonrails.org/" target="_blank" rel="noopener"
 &gt;Rails&lt;/a&gt;, Grails, etc. The microservices appeared and the frameworks evolved as well. Spring Boot has been the dominant player for a while but everything changed last year with the appearance of Micronaut. Others are following the same approach, like &lt;a class="link" href="https://www.redhat.com" target="_blank" rel="noopener"
 &gt;RedHat&lt;/a&gt; with &lt;a class="link" href="https://quarkus.io/" target="_blank" rel="noopener"
 &gt;Quarkus&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;A perfect kick-off for a conference centered on frameworks.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm8.staticflickr.com/7818/33631536518_81c0e6812c_k.jpg" alt="Andrés Almiray with a microservices frameworks taxonomy"&gt;
 
 
 &lt;figcaption&gt;
 Andrés Almiray with a microservices frameworks taxonomy
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC by-nc-sa License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="https://agenda.greachconf.com/talk/micronaut-state-of-the-union" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Micronaut State of the Union&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://agenda.greachconf.com/speaker/graeme-rocher" target="_blank" rel="noopener"
 &gt;Graeme Rocher&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/graemerocher" target="_blank" rel="noopener"
 &gt;@graemerocher&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Graeme gave an overview of the features and roadmap for Micronaut. He highlighted several times that it is perfect for Microservices and serverless functions, but not only for them as it&amp;rsquo;s also suitable for bigger applications. The goal of Graeme and his team is to break the correlation between lines of code and startup time and resources consumption. He also emphasized their fight against reflection and the consequent reflective data caches, essential in other frameworks like Spring Boot, that have several inconveniences in performance and start up time.&lt;/p&gt;
&lt;p&gt;He also explained why Micronaut behaves amazingly good with GraalVM, but clarified that they are mainly focused on the performance with the standard JVM that most people still use. He ended with an interesting live demo about the Bean Introspection API, released with the last 1.1 version.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm8.staticflickr.com/7893/47508138841_bcdde8d3ef_k.jpg" alt="Graeme Rocher explaining Java&amp;#39;s problems for Frameworks"&gt;
 
 
 &lt;figcaption&gt;
 Graeme Rocher explaining Java&amp;#39;s problems for Frameworks
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC by-nc-sa License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="https://agenda.greachconf.com/talk/boosting-your-applications-with-distributed-caches-datagrids" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Boosting your applications with distributed caches/datagrids&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://agenda.greachconf.com/speaker/katia-aresti" target="_blank" rel="noopener"
 &gt;Katia Aresti&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/karesti" target="_blank" rel="noopener"
 &gt;@karesti&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Katia explained how &lt;a class="link" href="https://infinispan.org/" target="_blank" rel="noopener"
 &gt;Infinispan&lt;/a&gt; works as a cache or data grid, both as a library or as a external service, and how to configure it in distributed systems. With examples using Harry Potter (sometimes confusing) analogies she also explained concepts like redundant replication or consistent hashing. She finished with a demo using Infinispan, &lt;a class="link" href="https://vertx.io/" target="_blank" rel="noopener"
 &gt;Eclipse Vert.X&lt;/a&gt; and Quarkus.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://agenda.greachconf.com/talk/reactive-for-the-impatient-a-gentle-intro-to-reactive-programming-and-systems" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Reactive for the Impatient&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://agenda.greachconf.com/speaker/mary-grygleski" target="_blank" rel="noopener"
 &gt;Mary Grygleski&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/mgrygles" target="_blank" rel="noopener"
 &gt;@mgrygles&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Mary explained what reactive programming is and gave an overview of the the current Java options for this. She spent most of the time with the theoretical basics and terminology to finish with a quick overview of the main alternatives. I&amp;rsquo;d have preferred more details or examples in the last part, as I am already familiar with the basic concepts, but the talk was overall useful and interesting.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://agenda.greachconf.com/talk/graalvm-with-groovy-kotlin" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;GraalVM with Groovy &amp;amp; Kotlin&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://agenda.greachconf.com/speaker/alberto-de-avila" target="_blank" rel="noopener"
 &gt;Alberto de Ávila&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/alberto_deavila" target="_blank" rel="noopener"
 &gt;@alberto_deavila&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Alberto explained how to use GraalVM, the architecture basics (the GraalVM compiler, the &lt;a class="link" href="https://www.graalvm.org/truffle/javadoc/" target="_blank" rel="noopener"
 &gt;Truffle API&lt;/a&gt;, etc.), and how to use Groovy and Kotlin with it. It was an interesting and well documented analysis, focusing on the current limitations and the potential benefits. It&amp;rsquo;s quite promising despite GraalVM is still far from being production ready.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm8.staticflickr.com/7839/33631536618_b29d65958c_k.jpg" alt="Alberto de Ávila explains the GraalVM Architecture"&gt;
 
 
 &lt;figcaption&gt;
 Alberto de Ávila explains the GraalVM Architecture
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC by-nc-sa License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="https://agenda.greachconf.com/talk/accelerating-ci" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Accelerating CI&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://agenda.greachconf.com/speaker/felipe-fernandez" target="_blank" rel="noopener"
 &gt;Felipe Fernández&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/felipefzdz" target="_blank" rel="noopener"
 &gt;@felipefzdz&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Felipe&amp;rsquo;s talk was quite interesting. As a Gradle Enterprise developer he explained basic and advanced recommendations in order to achieve a faster and more reliable CI. He explained how to parallelize workers, how to design an effective pipeline structure and how to avoid maintenance waste in general. He ended with a couple of very good recommendations: measure everything and treat your CI as code, always.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://agenda.greachconf.com/talk/grails-state-of-theunion" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Grails State of the Union&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://agenda.greachconf.com/speaker/graeme-rocher" target="_blank" rel="noopener"
 &gt;Graeme Rocher&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/graemerocher" target="_blank" rel="noopener"
 &gt;@graemerocher&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Another interesting status review of Grails by Graeme. This time it was focused on how Grails is already benefiting from Micronaut, and how to take advantage of those benefits using Grails. He encouraged all the Grails plugin developers to migrate them to Micronaut so they can be used not only from Grails but also in other use cases.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm8.staticflickr.com/7853/33631536078_da0ee54abf_k.jpg" alt="Graeme Rocher explains the differences between Micronaut and Grails"&gt;
 
 
 &lt;figcaption&gt;
 Graeme Rocher explains the differences between Micronaut and Grails
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC by-nc-sa License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="https://agenda.greachconf.com/talk/whats-new-in-asciidoctor" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;What&amp;rsquo;s new in Asciidoctor&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://agenda.greachconf.com/speaker/schalk-cronje" target="_blank" rel="noopener"
 &gt;Schalk Cronjé&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/ysb33r" target="_blank" rel="noopener"
 &gt;@ysb33r&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;My first choice on Saturday morning was to learn all the new things that &lt;a class="link" href="https://asciidoctor.org/" target="_blank" rel="noopener"
 &gt;Asciidoctor&lt;/a&gt; is introducing. Schalk explained clearly lots of new features, making everything much more simple and intuitive. Curiously, Schalk released during the conference &lt;a class="link" href="https://github.com/asciidoctor/asciidoctor-gradle-plugin/releases/tag/release_2_0_0" target="_blank" rel="noopener"
 &gt;version 2.0.0&lt;/a&gt; of the &lt;a class="link" href="https://github.com/asciidoctor/asciidoctor-gradle-plugin" target="_blank" rel="noopener"
 &gt;Asciidoctor Gradle plugin&lt;/a&gt;, written entirely in Groovy.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;m not using Asciidoctor enough lately and I regret it, as it&amp;rsquo;s fantastic.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://agenda.greachconf.com/talk/whats-new-in-gradle-5" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;What&amp;rsquo;s new in Gradle 5?&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://agenda.greachconf.com/speaker/andres-almiray" target="_blank" rel="noopener"
 &gt;Andrés Almiray&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/aalmiray" target="_blank" rel="noopener"
 &gt;@aalmiray&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Andrés summarized all the new things that are coming with Gradle 5.0, highlighting Kotlin DSL 1.0 integration for those who are ready to use it. Gradle 5.0 will have better dependency management and several build performance improvements related to composite builds, build cache management and build scans. He even demoed some of the features, I specially liked how the Gradle build scans functionality looks like.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://agenda.greachconf.com/talk/creating-micronaut-configurations" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Creating Micronaut Configurations&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://agenda.greachconf.com/speaker/ivan-lopez" target="_blank" rel="noopener"
 &gt;Iván López&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/ilopmar" target="_blank" rel="noopener"
 &gt;@ilopmar&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;This year Iván was not organizing the conference, he even had time to attend lots of talks, but he delivered as usual one of the most useful talks. He reviewed how Micronaut configurations work and explained in detail how to create a new one. There are several different options to extend the framework via configurations and looks quite easy.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://agenda.greachconf.com/talk/automated-security-testing-in-a-devops-world" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;(Automated) Security Testing in a DevOps world&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://agenda.greachconf.com/speaker/kevin-wittek" target="_blank" rel="noopener"
 &gt;Kevin Wittek&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/kiview" target="_blank" rel="noopener"
 &gt;@kiview&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;This was one of the most interesting talks of the conference, at least for me. Kevin explained very clearly how to evolve from the traditional development pipeline to a more DevOps oriented one. Apart from some general recommendations he described all the possible security checks and validations that can be done, when and how to do them. He also created awareness about the lack of an open source reliable catalog of known vulnerabilities.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm8.staticflickr.com/7815/33631536338_2bf84a58c7_k.jpg" alt="Kevin Wittek with a Linus Torvalds quote"&gt;
 
 
 &lt;figcaption&gt;
 Kevin Wittek with a Linus Torvalds quote
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC by-nc-sa License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="https://agenda.greachconf.com/talk/micronaut-performance" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Micronaut performance&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://agenda.greachconf.com/speaker/miguel-angel-garcia-gomez" target="_blank" rel="noopener"
 &gt;Miguel Ángel García Gómez&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/MiguelAngelGG82" target="_blank" rel="noopener"
 &gt;@MiguelAngelGG82&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Miguel Ángel showed a comparison he made in terms of performance between the main microservice-oriented frameworks that we have now in the market: Micronaut, Spring Boot and Vert.x. He added a fourth option (Micronaut running on GraalVM) although he confessed that he could not measure everything properly with it due to the lack of compatibility between GraalVM and &lt;a class="link" href="https://prometheus.io/" target="_blank" rel="noopener"
 &gt;Prometheus&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;He showed the audience the results of his benchmark. The overall winner is apparently Micronaut+GraalVM despite the uncertainty related to the lack of good measurements. Among the other three options, some of them are better in some tests, but none of them is clearly better. Perhaps with larger and/or more challenging benchmarks the degradation in any option(s) could make the difference.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://agenda.greachconf.com/talk/its-a-bird-its-a-plane-no-its-sdkman" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;It&amp;rsquo;s a bird, it&amp;rsquo;s a plane, no it&amp;rsquo;s SDKMAN!&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://agenda.greachconf.com/speaker/marco-vermeulen" target="_blank" rel="noopener"
 &gt;Marco Vermeulen&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/marc0der" target="_blank" rel="noopener"
 &gt;@marc0der&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Marco, creator of this awesome SDK manager tool, explained the current status of SDKMAN and the next features. He also explained the architecture behind the project, and the main challenges it faces. He also made some very interesting comments about the initial decision to write it in bash to have only &lt;a class="link" href="http://curl.haxx.se/" target="_blank" rel="noopener"
 &gt;curl&lt;/a&gt; and &lt;a class="link" href="http://www.info-zip.org/" target="_blank" rel="noopener"
 &gt;zip&lt;/a&gt; as dependencies, and how he is now considering a rewrite in a different language.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://agenda.greachconf.com/talk/how-i-automated-my-barn-with-arduino-raspberry-pi-kafka-docker-kubernetes-mongo-and-the-cloud" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;How I Automated My Barn with Arduino, Raspberry Pi, Kafka, Docker, Kubernetes, Mongo and the Cloud&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://agenda.greachconf.com/speaker/todd-sharp" target="_blank" rel="noopener"
 &gt;Todd Sharp&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/recursivecodes" target="_blank" rel="noopener"
 &gt;@recursivecodes&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;My Greach conference ended with an interesting talk by Todd Sharp. He explained how he managed to create a complex combination of technologies to learn about them and also about some features of the Oracle Cloud offering. He lives in a small town and has a barn with a pig and some chickens, so he wanted to automatize as much as possible the repetitive tasks related to the barn. He started with some sensors and now he is in the way to not only read but also perform some actions like fill a water bowl, open/close the doors or detect predators in the surroundings.&lt;/p&gt;
&lt;p&gt;He was very funny and, although the demo didn&amp;rsquo;t perfectly work and made him lose some time, he could explain the complexness of what he built and the technologies he learned in the process.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm8.staticflickr.com/7910/33631535908_106acacad6_k.jpg" alt="Todd Sharp explains the architecture of his barn automation project"&gt;
 
 
 &lt;figcaption&gt;
 Todd Sharp explains the architecture of his barn automation project
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC by-nc-sa License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;And that&amp;rsquo;s all. &lt;strong&gt;See you in Greach 2020 !!&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>FOSDEM 2019: Sunday</title><link>https://luiyo.net/en/blog/2019/02/fosdem-2019-sunday/</link><pubDate>Sun, 24 Feb 2019 00:00:00 +0000</pubDate><guid>https://luiyo.net/en/blog/2019/02/fosdem-2019-sunday/</guid><description>&lt;img src="https://luiyo.net/47207681772_102c9156fb_k_11990033668522893871.jpg" alt="Featured image of post FOSDEM 2019: Sunday" /&gt;&lt;p&gt;My Saturday finished having a great dinner with friends and lots of laughs in one of our favorite restaurants in Brussels.&lt;/p&gt;
&lt;div class="image lateral"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm8.staticflickr.com/7882/47000679932_093974eef9_o.png" alt="FOSDEM 2019 poster"&gt;
 
 
 &lt;figcaption&gt;
 FOSDEM 2019 poster
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;As usual, my Sunday at &lt;a class="link" href="https://fosdem.org/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;FOSDEM&lt;/strong&gt;&lt;/a&gt; started again very early. Lot&amp;rsquo;s of things to see in a complete set of new devrooms/tracks. This year I focused my second day in the &lt;a class="link" href="https://fosdem.org/2019/schedule/track/community_devroom/" target="_blank" rel="noopener"
 &gt;Community&lt;/a&gt; and &lt;a class="link" href="https://fosdem.org/2019/schedule/track/geospatial/" target="_blank" rel="noopener"
 &gt;Geospatial&lt;/a&gt; devrooms.&lt;/p&gt;
&lt;p&gt;Before continuing, if you want to read my summary of the previous day you can follow this link: &lt;a class="link" href="https://luiyo.net/blog/2019/02/fosdem-2019-saturday/" &gt;&lt;strong&gt;FOSDEM 2019: Saturday&lt;/strong&gt;&lt;/a&gt;. You will also find there general info and details about the event itself.&lt;/p&gt;
&lt;p&gt;Again, I will summarize some of the talks that I attended (in chronological order):&lt;/p&gt;
&lt;h1 id="talks"&gt;Talks
&lt;/h1&gt;&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/community_supporting_foss_community_members_imposter_syndrome/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Supporting FOSS Community Members with Impostor Syndrome&lt;/strong&gt;&lt;/a&gt;, by Sage Sharp&lt;/p&gt;
&lt;p&gt;The purpose of the speaker was to share advice and tips about how to support people who experience &lt;a class="link" href="https://en.wikipedia.org/wiki/Impostor_syndrome" target="_blank" rel="noopener"
 &gt;impostor syndrome&lt;/a&gt;, focusing on people from underrepresented groups. Sage gave a quick introduction to the concept to go then directly to the topic. I received several good recommendations: normalize questions, how to give praise, what deserves praise, etc.&lt;/p&gt;
&lt;p&gt;We have seen lately lots of talks about the syndrome itself, it&amp;rsquo;s quite good to hear about how to counter it efficiently. As the speaker said, we as technical and resourceful people, should be able to improve this.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/community_why_cant_we_all_just_get_along/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Companies and Communities, Why Can&amp;rsquo;t We All Just Get Along?&lt;/strong&gt;&lt;/a&gt;, by Deb Nicholson and Nithya Ruff&lt;/p&gt;
&lt;p&gt;Companies and Communities have different systems of rewards and penalties. Companies focus on single minded views, and the alignment to the goals is rewarded. Communities focus on personal motivation, even if it&amp;rsquo;s something that is not profitable or even shippable in the short term. Companies fire people and people leave companies normally against the will of the employer, but in communities everyone leaves voluntarily and usually they can return happily.&lt;/p&gt;
&lt;p&gt;Diversity is good in both worlds, to have it and to show it. The speakers gave a very good advice to companies, recommending to send diverse people also to events and conferences, not always the same group of people. Respect also is essential both to a Community norms or a Company culture, this could be enforced in both worlds with a good Code of Conduct.&lt;/p&gt;
&lt;p&gt;Another very interesting and useful talk, describing the differences between these two worlds, and how can they benefit reciprocally.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/community_open_souce_community_past_and_future/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;The Open Source Community: its past and future&lt;/strong&gt;&lt;/a&gt;, by Nick Vidal&lt;/p&gt;
&lt;p&gt;Open Source is more than everything a continuum, it has been with us for more than 20 years now and it will hopefully stay around many more. In the last years we have celebrated the 20th and even 25th birthday of lots of projects: Debian, Redhat, FreeBSD, &amp;hellip; The speaker summarized the history of Open Source, starting with its definition, highlighting the recent complicated stories in Redis or MongoDB.&lt;/p&gt;
&lt;p&gt;The historical overview was great, but I particularly appreciated a message about Open Source being based on the &lt;a class="link" href="https://en.wikipedia.org/wiki/Gift_economy" target="_blank" rel="noopener"
 &gt;gift economy&lt;/a&gt;, with gifts far beyond code like openness, freedom and community.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm8.staticflickr.com/7913/46345062575_5feee130ef_k.jpg" alt="FOSDEM 2019 - Nick Vidal reviewing the Open Source history"&gt;
 
 
 &lt;figcaption&gt;
 FOSDEM 2019 - Nick Vidal reviewing the Open Source history
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC by-nc-sa License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/geo_navit/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Continuous Integration to compile and test Navit&lt;/strong&gt;&lt;/a&gt;, by	Patrick Höhn&lt;/p&gt;
&lt;p&gt;It was great to learn about &lt;a class="link" href="http://www.navit-project.org/" target="_blank" rel="noopener"
 &gt;Navit&lt;/a&gt; (a complete car navigation system with its own routing engine), but regardless the project itself the speaker gave great recommendations to improve the Infrastructure aspect of an Open Source project. Infra is usually a challenge in FOSS projects, as most contributors are interested in the project and not the infra part. Resources are needed to host any service, and those resources require funds.&lt;/p&gt;
&lt;p&gt;There are several continuous integration platform that offer a free tier for FOSS projects, including platform specific tests and static code analysis. There are also good alternatives for Device Farming and GUI( testing frameworks.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/geo_osmwikidata/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Linking OpenStreetMap and Wikidata&lt;/strong&gt;&lt;/a&gt;, by Edward Betts&lt;/p&gt;
&lt;p&gt;One of my favorite talks of FOSDEM 2019, not only because the talk was clear and useful but also because the project behind is a perfect example of a pet project that becomes larger and larger as the main contributor starts discovering additional potential. The current status is awesome and the future looks even better.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://github.com/EdwardBetts" target="_blank" rel="noopener"
 &gt;Edward Betts&lt;/a&gt; has created &lt;a class="link" href="https://osm.wikidata.link/" target="_blank" rel="noopener"
 &gt;OSM &amp;lt;&amp;ndash;&amp;gt; Wikidata matcher&lt;/a&gt;, a powerful tool to link &lt;a class="link" href="https://www.openstreetmap.org/#map=17/40.46640/-3.74584" target="_blank" rel="noopener"
 &gt;OpenStreetMap&lt;/a&gt; data with &lt;a class="link" href="https://www.wikidata.org/wiki/Wikidata:Main_Page" target="_blank" rel="noopener"
 &gt;Wikidata&lt;/a&gt; articles (a Wikimedia tool with structured data). There are several benefits for doing this, being the main ones having labels in more languages, OSM data linked to more wikipedia articles and Wikimedia Commons. The tool is not fully automated to avoid false positives being linked, but the tool provides a great assistance.&lt;/p&gt;
&lt;p&gt;As an active &lt;a class="link" href="http://hdyc.neis-one.org/?Luiyo" target="_blank" rel="noopener"
 &gt;Supper Mapper&lt;/a&gt; and software engineer, I should start doing tools like this. Most of my edits in OSM are totally manual and for some use cases the impact is much more important when you automatize to make more efficient the time that you are contributing. In the short term, I will consider contributing as much as I can to this project.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/geo_graphhopper/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;GraphHopper Routing Engine - New Features&lt;/strong&gt;&lt;/a&gt;, by Peter Karich&lt;/p&gt;
&lt;p&gt;Peter gave a nice and clear presentation about &lt;a class="link" href="https://www.graphhopper.com/" target="_blank" rel="noopener"
 &gt;GraphHopper&lt;/a&gt;, a powerful and fast Java library and web service for routing. The speaker explained the last improvements in the tool, as well as in the routing algorithms they use: &lt;a class="link" href="https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm" target="_blank" rel="noopener"
 &gt;Dijkstra&lt;/a&gt;, &lt;a class="link" href="https://en.wikipedia.org/wiki/A*_search_algorithm" target="_blank" rel="noopener"
 &gt;A*&lt;/a&gt;, &lt;a class="link" href="https://www.graphhopper.com/blog/2017/08/14/flexible-routing-15-times-faster/" target="_blank" rel="noopener"
 &gt;Landmarks&lt;/a&gt; and &lt;a class="link" href="https://en.wikipedia.org/wiki/Contraction_hierarchies" target="_blank" rel="noopener"
 &gt;Contraction Hierarchies&lt;/a&gt;. The talk included several demos calculating very quickly continental scale routes very fast and efficiently, including alternative routes.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/geo_augmentedreality/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Hikar - Augmented reality for hikers&lt;/strong&gt;&lt;/a&gt;, by Nick Whitelegg&lt;/p&gt;
&lt;p&gt;Another awesome project I discovered in FOSDEM. Nick explained the current status related to geospatial Augmented Reality (AR), tools are scarce and normally closed-source so he, as a developer and hiker, thought about a free tool to cover this gap: &lt;a class="link" href="https://wiki.openstreetmap.org/wiki/Hikar" target="_blank" rel="noopener"
 &gt;Hikar&lt;/a&gt;. It is an FOSS Android app aimed for outdoor and geographic AR, that overlays footpaths from OpenStreetMap on the camera feed and generates virtual signposts with relevant POIs around the user.&lt;/p&gt;
&lt;p&gt;The talk described the technical complexities, the data related issues (elevation is critical) and problems related to the realism of the path and signpost placing. Very interesting and inspiring talk.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm8.staticflickr.com/7916/40294830713_3db0d67e87_k.jpg" alt="FOSDEM 2019 - Nick Whitelegg presenting Hikar"&gt;
 
 
 &lt;figcaption&gt;
 FOSDEM 2019 - Nick Whitelegg presenting Hikar
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC by-nc-sa License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/geo_gpxtraces/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Hundred thousand rides a day&lt;/strong&gt;&lt;/a&gt;, by Ilya Zverev&lt;/p&gt;
&lt;p&gt;I already attended and reviewed a talk by Ilya Zverev last year and I enjoyed it, and it was worthy again this year. Ilya explained how he is improving the routing algorithms of his current employer and at the same time he is detecting and fixing problems in OpenStreetMap. The main problem for OSM are sources, there are not so many (because of licensing problems) and they get old, so using only certain sources means that we are mapping the reality of yesterday instead of the world as of Today.&lt;/p&gt;
&lt;p&gt;He created a set of tools to validate calculated routes, comparing them to the actual traject of the drivers. Using a basic code of colors is easy to check what streets are used in what direction, what turns are abnormally avoided, etc. With this tool, they can notice very fast changes like blocked roads with constructions or reversed streets (temporal or definitive). In order to have reliable data the tracks are as fresh as possible.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm8.staticflickr.com/7899/46345062655_1c2027a561_k.jpg" alt="FOSDEM 2019 - Ilya Zverev with a visualization of gpx tracks in different colors depending on the angle"&gt;
 
 
 &lt;figcaption&gt;
 FOSDEM 2019 - Ilya Zverev with a visualization of gpx tracks in different colors depending on the angle
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC by-nc-sa License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;He gave some ideas for himself or for others to start similar projects: checking highway classification, missing turn restrictions, speed limits, etc.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/geo_locationchallenges/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Open Source Geolocation&lt;/strong&gt;&lt;/a&gt;, by Zeeshan Ali&lt;/p&gt;
&lt;p&gt;Zeeshan explained the history of &lt;a class="link" href="https://gitlab.freedesktop.org/geoclue/geoclue" target="_blank" rel="noopener"
 &gt;GeoClue&lt;/a&gt;, an open source geolocation service for GNU/Linux. The talk was focused on the main challenges they faced and how they addressed the privacy issues related to share the users&amp;rsquo; location with other applications.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/geo_osmqgis/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;OpenStreetMap for emergency prep: The view from San Francisco&lt;/strong&gt;&lt;/a&gt;, by Stefano Maffulli&lt;/p&gt;
&lt;p&gt;Stefano moved to San Francisco some years ago with his wife, and they were scared about the next earthquake. The found there a lot of people with the same concerns and some organizations providing support for this. For example the &lt;a class="link" href="https://en.wikipedia.org/wiki/Community_emergency_response_team" target="_blank" rel="noopener"
 &gt;Neighborhood Emergency Response Team (NERT)&lt;/a&gt;, a group of civilians that take lessons from the fire fighters about how to spot and use water hydrants or police call boxes, to locate the nearest hospitals or schools, or to avoid places with hazardous materials like car repair shops, construction sites or gas stations.&lt;/p&gt;
&lt;p&gt;They used OpenStreetMap as the base for emergency related preparations, as almost everything is mapped or can be mapped in OSM.They improved the map data related to the Emergency Response tasks using trained NERT volunteers, so they could even research the most and lest &lt;em&gt;vulnerable&lt;/em&gt; neighborhoods in the city. They are now adding additional features related to other catastrophes like heat or cold waves.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm8.staticflickr.com/7891/40294830473_92fd5d0694_k.jpg" alt="FOSDEM 2019 - Stefano Maffulli presenting his OSM based project for emergency preparation"&gt;
 
 
 &lt;figcaption&gt;
 FOSDEM 2019 - Stefano Maffulli presenting his OSM based project for emergency preparation
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC by-nc-sa License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;Very interesting project, even for non &lt;a class="link" href="https://en.wikipedia.org/wiki/Survivalism" target="_blank" rel="noopener"
 &gt;preppers&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/geo_streetview/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;OpenTrailView 360, FOSS StreetView for hikers&lt;/strong&gt;&lt;/a&gt;, by Nick Whitelegg&lt;/p&gt;
&lt;p&gt;Nick again on stage to explain another interesting project, &lt;a class="link" href="https://wiki.openstreetmap.org/wiki/OpenTrailView" target="_blank" rel="noopener"
 &gt;OpenTrailView 360&lt;/a&gt; a FOSS &lt;em&gt;StreetView&lt;/em&gt; application for hikers. He explained how the tool started in 2010, the problems he faced to gather proper images and how he resumed the project in 2013 when the Sphere pictures appeared in Android phones and this last version (OTV 360) born in 2018 after the appearance of affordable 360 degree cameras.&lt;/p&gt;
&lt;p&gt;Nick explained the challenges he faced and the tools he could use from the FOSS community: &lt;a class="link" href="https://www.mapillary.com/app/" target="_blank" rel="noopener"
 &gt;Mapillary&lt;/a&gt; for street-level imagery, &lt;a class="link" href="https://github.com/perliedman/geojson-path-finder" target="_blank" rel="noopener"
 &gt;GeoJSON Path Finder&lt;/a&gt; for client-side in-browser routing, and &lt;a class="link" href="https://pannellum.org/" target="_blank" rel="noopener"
 &gt;Pannellum&lt;/a&gt; to display the panoramas in the browser. The demo that Nick showed us was very promising, another project to follow closely.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/keynote_fifty_years_unix/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;2019 - Fifty years of Unix and Linux advances&lt;/strong&gt;&lt;/a&gt;, by Jon &amp;lsquo;maddog&amp;rsquo; Hall&lt;/p&gt;
&lt;p&gt;The closing keynote was delivered by &lt;a class="link" href="https://en.wikipedia.org/wiki/Jon_Hall_%28programmer%29" target="_blank" rel="noopener"
 &gt;Jon &amp;lsquo;maddog&amp;rsquo; Hall&lt;/a&gt;, a software and hardware freedom advocate, developer since 1969 and the current Board Chair of the &lt;a class="link" href="https://www.lpi.org/" target="_blank" rel="noopener"
 &gt;Linux Professional Institute&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;2019 not only marks the 50th anniversary of &lt;a class="link" href="https://en.wikipedia.org/wiki/Unix" target="_blank" rel="noopener"
 &gt;Unix&lt;/a&gt;, but also the 50th of the &lt;a class="link" href="https://en.wikipedia.org/wiki/ARPANET" target="_blank" rel="noopener"
 &gt;ArpaNet/Internet&lt;/a&gt; and the &lt;a class="link" href="https://en.wikipedia.org/wiki/Apollo_11" target="_blank" rel="noopener"
 &gt;Apollo 11 Moon landing&lt;/a&gt;. &amp;lsquo;maddog&amp;rsquo; summarized the evolution of Unix, Linux and the Free Software movement in those 50 years in a hilarious but interesting way. A packed full Janson auditorium enjoyed the jokes a lot, so it was a great way to to compensate the sadness of leaving FOSDEM again.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm8.staticflickr.com/7824/47207681742_6aea5649e4_k.jpg" alt="FOSDEM 2019 - Jon &amp;#39;maddog&amp;#39; Hall in the closing keynote"&gt;
 
 
 &lt;figcaption&gt;
 FOSDEM 2019 - Jon &amp;#39;maddog&amp;#39; Hall in the closing keynote
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC by-nc-sa License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;br /&gt;
&lt;p&gt;And that&amp;rsquo;s all. &lt;strong&gt;See you in Brussels in 2020 for the 20th anniversary of FOSDEM!!&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>FOSDEM 2019: Saturday</title><link>https://luiyo.net/en/blog/2019/02/fosdem-2019-saturday/</link><pubDate>Sun, 10 Feb 2019 00:00:00 +0000</pubDate><guid>https://luiyo.net/en/blog/2019/02/fosdem-2019-saturday/</guid><description>&lt;img src="https://luiyo.net/32111005427_44b0627a4f_k_18089617489925369114.jpg" alt="Featured image of post FOSDEM 2019: Saturday" /&gt;&lt;p&gt;It has been a week since I returned from another intense and thought-provoking weekend in Brussels, although it still feels like it was just yesterday. This year, apart from attending &lt;strong&gt;FOSDEM&lt;/strong&gt; (as I intend to do every year) I took a very early flight on Friday to visit new (for me) places in the city. In just one day I visited the &lt;a class="link" href="http://www.europarl.europa.eu/visiting/en/brussels/briefing-hemicycle-visits" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;European Parliament Hemicycle&lt;/strong&gt;&lt;/a&gt;, the &lt;a class="link" href="http://www.europarl.europa.eu/visiting/en/brussels/house-of-european-history" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;House of European History&lt;/strong&gt;&lt;/a&gt;, the &lt;a class="link" href="http://www.europarl.europa.eu/visiting/en/brussels/parlamentarium" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Parlamentarium&lt;/strong&gt;&lt;/a&gt; and the &lt;a class="link" href="https://www.naturalsciences.be/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Museum of Natural Sciences&lt;/strong&gt;&lt;/a&gt;. My most productive Friday in months, for sure.&lt;/p&gt;
&lt;div class="image lateral"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm8.staticflickr.com/7882/47000679932_093974eef9_o.png" alt="FOSDEM 2019 poster"&gt;
 
 
 &lt;figcaption&gt;
 FOSDEM 2019 poster
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;For those of you who don&amp;rsquo;t know &lt;a class="link" href="https://fosdem.org/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;FOSDEM&lt;/strong&gt;&lt;/a&gt;, it is the biggest conference in Europe (and one of the biggest around the world) related to &lt;strong&gt;Open Source&lt;/strong&gt; development and communities. It&amp;rsquo;s a huge event with hundreds of talks, workshops, gatherings and stands from all the relevant projects and communities in the &lt;strong&gt;FOSS (Free and Open Source Software)&lt;/strong&gt; ecosystem. It&amp;rsquo;s also a marvelous place to do networking, because there are not only representatives of those projects but normally also the technical leaders of them. If you are good with names and faces you can meet and greet a lot of important and interesting people.&lt;/p&gt;
&lt;p&gt;I already wrote about it in previous years:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;FOSDEM 2016&lt;/strong&gt;: &lt;a class="link" href="https://luiyo.net/blog/2016/03/fosdem-2016-friday/" &gt;Friday&lt;/a&gt;, &lt;a class="link" href="https://luiyo.net/blog/2016/03/fosdem-2016-saturday/" &gt;Saturday&lt;/a&gt; and &lt;a class="link" href="https://luiyo.net/blog/2016/03/fosdem-2016-sunday/" &gt;Sunday&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;FOSDEM 2018&lt;/strong&gt;: &lt;a class="link" href="https://luiyo.net/blog/2018/02/fosdem-2018-saturday/" &gt;Saturday&lt;/a&gt; and &lt;a class="link" href="https://luiyo.net/blog/2018/02/fosdem-2018-sunday/" &gt;Sunday&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The &lt;a class="link" href="https://fosdem.org/2019/schedule/event/closing_fosdem/" target="_blank" rel="noopener"
 &gt;numbers of this 2019 edition&lt;/a&gt; speak for themselves, improving all the figures from 2018:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;more than 8,000 attendees in only two days&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/speakers/" target="_blank" rel="noopener"
 &gt;730 speakers&lt;/a&gt; in &lt;a class="link" href="https://fosdem.org/2019/schedule/events/" target="_blank" rel="noopener"
 &gt;788 different events&lt;/a&gt; (talks or workshops, mainly)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/rooms/" target="_blank" rel="noopener"
 &gt;63 tracks&lt;/a&gt; in 47 different rooms&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://video.fosdem.org/" target="_blank" rel="noopener"
 &gt;more than 400 hours of content&lt;/a&gt;, almost all of the events are &lt;a class="link" href="https://fosdem.org/2019/schedule/streaming/" target="_blank" rel="noopener"
 &gt;available online with live streaming&lt;/a&gt; during the conference&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://fosdem.org/2019/stands/" target="_blank" rel="noopener"
 &gt;65 stands&lt;/a&gt; of all kinds of projects: &lt;a class="link" href="https://fsfe.org/" target="_blank" rel="noopener"
 &gt;FSFE&lt;/a&gt;, &lt;a class="link" href="https://www.python.org/psf" target="_blank" rel="noopener"
 &gt;Python Software Foundation&lt;/a&gt;, &lt;a class="link" href="http://www.apache.org/" target="_blank" rel="noopener"
 &gt;the Apache Software Foundation&lt;/a&gt;, &lt;a class="link" href="https://opensource.org/" target="_blank" rel="noopener"
 &gt;OSI&lt;/a&gt;, &lt;a class="link" href="https://eclipse.org/" target="_blank" rel="noopener"
 &gt;the Eclipse Foundation&lt;/a&gt;, &lt;a class="link" href="https://sfconservancy.org/" target="_blank" rel="noopener"
 &gt;Software Freedom Conservancy&lt;/a&gt;, &lt;a class="link" href="http://www.oreilly.com/" target="_blank" rel="noopener"
 &gt;O&amp;rsquo;Reilly&lt;/a&gt;, &lt;a class="link" href="http://getfedora.org/" target="_blank" rel="noopener"
 &gt;Fedora&lt;/a&gt;, &lt;a class="link" href="https://www.opensuse.org/" target="_blank" rel="noopener"
 &gt;OpenSUSE&lt;/a&gt;, &lt;a class="link" href="https://www.debian.org/" target="_blank" rel="noopener"
 &gt;Debian&lt;/a&gt; &lt;a class="link" href="http://www.kde.org/" target="_blank" rel="noopener"
 &gt;KDE&lt;/a&gt;, &lt;a class="link" href="http://gnome.org/" target="_blank" rel="noopener"
 &gt;Gnome&lt;/a&gt;, &lt;a class="link" href="http://www.libreoffice.org/" target="_blank" rel="noopener"
 &gt;LibreOffice&lt;/a&gt;, &lt;a class="link" href="https://videolan.org/" target="_blank" rel="noopener"
 &gt;VideoLAN&lt;/a&gt;, &lt;a class="link" href="https://mozilla.org/" target="_blank" rel="noopener"
 &gt;Mozilla&lt;/a&gt;, &amp;hellip;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To make it more impressive, take into account that FOSDEM is &lt;strong&gt;organized by volunteers&lt;/strong&gt;, everything is &lt;strong&gt;community driven&lt;/strong&gt; and it&amp;rsquo;s &lt;strong&gt;free to attend&lt;/strong&gt;. You don&amp;rsquo;t even need to register beforehand.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm8.staticflickr.com/7805/47052615481_6a1da44b3c_o.png" alt="FOSDEM 2019"&gt;
 
 
 &lt;figcaption&gt;
 FOSDEM 2019
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;As usual, let me summarize some of the talks that I attended (in chronological order):&lt;/p&gt;
&lt;h1 id="talks"&gt;Talks
&lt;/h1&gt;&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/full_software_freedom/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Can Anyone Live in Full Software Freedom Today?&lt;/strong&gt;&lt;/a&gt;, by Bradley M. Kuhn and Karen Sandler&lt;/p&gt;
&lt;p&gt;Bradley and &lt;a class="link" href="https://twitter.com/o0karen0o" target="_blank" rel="noopener"
 &gt;Karen&lt;/a&gt; are the President and the Executive Director respectively of &lt;a class="link" href="https://sfconservancy.org/" target="_blank" rel="noopener"
 &gt;Software Freedom Conservancy&lt;/a&gt;. They focused on people like themselves (and me) that seek to use only free software in our daily tasks, and the compromises that we sometimes need to do in order to achieve certain goals.&lt;/p&gt;
&lt;p&gt;Karen explained her concern when she had to put herself an implantable defibrillator with proprietary code inside, with no access to the code even if the manufacturer somehow recognized that it could cause trouble for pregnant women because their algorithms were not properly tined for that situations. She had to suffer some unnecessary electrical shocks during her pregnancy and could not do anything about it. Another common example they gave is about modern websites that force the users to activate JavaScript in order to load in your device complete applications with proprietary software on it.&lt;/p&gt;
&lt;p&gt;Some use cases for the general public have several free alternatives but for others there is no alternative so the users are forced to use privative applications. The main call to action of this keynote was for all the open source developers to re-think and re-prioritize our collaborations to close this gap and improve our general freedom.&lt;/p&gt;
&lt;p&gt;This was a good opening keynote, although knowing very well the speakers since a long time ago I expected more explicit suggestions (or accusations).&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/floss_internet_future/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;FLOSS, the Internet and the Future&lt;/strong&gt;&lt;/a&gt;, by	Mitchell Baker&lt;/p&gt;
&lt;p&gt;Mitchell, Executive Chairwoman of the &lt;a class="link" href="https://en.wikipedia.org/wiki/Mozilla_Foundation" target="_blank" rel="noopener"
 &gt;Mozilla Foundation&lt;/a&gt;, insisted in her keynote on some of the key messages from the previous one. She explained how a handful of organizations (Google, Facebook, Amazon, etc.) are a clear threat to privacy and openness despite having their core codebase full of FLOSS software.&lt;/p&gt;
&lt;p&gt;She showed some of the projects that Mozilla is offering to increase the privacy rights of the users, for example the &lt;a class="link" href="https://addons.mozilla.org/en-US/firefox/addon/facebook-container/" target="_blank" rel="noopener"
 &gt;Facebook Container extension&lt;/a&gt; that isolates your Facebook identity from the rest of the web so they are not able to track you everywhere.&lt;/p&gt;
&lt;p&gt;She also commented an experiment, trying to track every advertisement that appears in the web to see who is paying for that ad (someone is paying, always) and why this ad is being showed to you. Is it because I&amp;rsquo;m a man? Is it because of my age? Is it because of some specific behavior?&lt;/p&gt;
&lt;p&gt;The keynote ended with some comments about the &lt;em&gt;Addition Economy&lt;/em&gt; that rules the world in which we live and the effort that is still needed to fight against hate and violence in social networks. She explained how the rejection of those problems is part of the DNA of the FLOSS communities, and how we need to translate those values to the society using handy and attractive tools for users.&lt;/p&gt;
&lt;div class="image lateral"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm8.staticflickr.com/7839/32111005517_eb6ddac90a_k.jpg" alt="The classic OpenSUSE beer"&gt;
 
 
 &lt;figcaption&gt;
 The classic OpenSUSE beer
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC by-nc-sa License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/blockchain_ethics/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Blockchain: The Ethical Considerations&lt;/strong&gt;&lt;/a&gt;, by Deb Nicholson&lt;/p&gt;
&lt;p&gt;We hear a lot that Blockchain is the future but what kind of world do we want to see blockchain make? We no longer live in a world where we can forget or ignore the consequences and the social impact of our work. Deb explained some of the most controversial aspects of this technology:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Do the upsides (transparency, distributed control, etc.) compensate the downsides?&lt;/li&gt;
&lt;li&gt;Will Blockchain just make the richest people richer?&lt;/li&gt;
&lt;li&gt;If not all the contracting parties understand or can even read the contract&amp;hellip; is it legitimate enough?&lt;/li&gt;
&lt;li&gt;What will happen if a corporation or group of them owns the majority of the nodes?&lt;/li&gt;
&lt;li&gt;Can we maintain this using just solar powered energy?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/mattermost_layered_extensibility/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Mattermost’s Approach to Layered Extensibility in Open Source&lt;/strong&gt;&lt;/a&gt;, by Corey Hulen&lt;/p&gt;
&lt;p&gt;Corey, CTO and co-founder of Mattermost, explained how their platform enables extensibility by their users. He claimed that almost 100% of what you see in the UI is accessible via standard REST API calls. Another important aspect to enable extensibility is that the complete data model is open enabling easy load, extraction and manipulation. Client side customizations for the interfaces, extensible APIs, incoming and outgoing webhooks and powerful plugins.&lt;/p&gt;
&lt;p&gt;I expected more architectural contents but the talk was clear and very detailed so I learned a couple of nice concepts anyway.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/gdpr_and_dtp_vs_data_portability_and_freedom/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;GDPR and the right to data portability&lt;/strong&gt;&lt;/a&gt;, by Laurent Chemla&lt;/p&gt;
&lt;p&gt;The right to data portability was intended as a way to enforce competition and to give back to the public some control over their personal data, but it fails in both situations. The regulation does not include a standard implementation or interface so everyone is dealing with this in a different way.&lt;/p&gt;
&lt;p&gt;Some of the usual suspects (Facebook, Google, Twitter and Microsoft among others) created in 2017 the &lt;a class="link" href="https://datatransferproject.dev/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Data Transfer Project&lt;/strong&gt; (DTP)&lt;/a&gt; to create an open-source data portability platform, maybe it&amp;rsquo;s time for a public and central organization to take over the project in order to set it as a global standard.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/enough_how_journalism_can_benefit_from_free_software/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Enough: How journalism can benefit from free software&lt;/strong&gt;&lt;/a&gt;, by Veronika Nad&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://enough.community" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Enough&lt;/strong&gt;&lt;/a&gt; is a set of tools, cloud-based or self-hosted, as well as a community composed of technical people and journalists to empower journalists and Human Rights Defenders when protecting their privacy and their sources.&lt;/p&gt;
&lt;p&gt;It provides an easy to use platform for non technical people to securely share any kind of data, typically a leak for a global audience. It is linkable from other platforms to serve as a common source, making it possible for anyone to communicate (if needed) securely and confidentially with the source of the data leak. It also includes training contents to teach the participants how to use &lt;a class="link" href="https://en.wikipedia.org/wiki/Pretty_Good_Privacy" target="_blank" rel="noopener"
 &gt;PGP&lt;/a&gt;, &lt;a class="link" href="https://en.wikipedia.org/wiki/The_Tor_Project,_Inc" target="_blank" rel="noopener"
 &gt;TOR&lt;/a&gt;, VPNs and similar stuff.&lt;/p&gt;
&lt;p&gt;I will consider contributing to the platform, at least to improve the website they have using &lt;a class="link" href="https://gohugo.io/" target="_blank" rel="noopener"
 &gt;Hugo&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/kubernetesclusterfuck/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;The clusterfuck hidden in the Kubernetes code base&lt;/strong&gt;&lt;/a&gt;, by Kris Nova&lt;/p&gt;
&lt;p&gt;I am not a Kubernetes expert but I learned a lot in this talk. The speaker explained in a pleasant and concise way all the anti-patterns that are present in the Kubernetes code base.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/java_language_futures/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Java Language Futures&lt;/strong&gt;&lt;/a&gt;, by Brian Goetz&lt;/p&gt;
&lt;p&gt;Brian Goetz, Java Language Architect, explained in a fast but clear way all the new features that are coming to the Java Language. He briefly explained the new release cadence (releases every 6 months), project Amber, Valhalla, Loom or Panama to focus later into the details of some relevant improvements.&lt;/p&gt;
&lt;p&gt;I want to highlight the enhancements in the switch (preview feature for v12), patten matching and value types.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2019/schedule/event/openjdk_gb/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;OpenJDK Governing Board Q&amp;amp;A&lt;/strong&gt;&lt;/a&gt;, by Mark Reinhold, Georges Saab, Doug Lea, John Duimovich and Andrew Haley&lt;/p&gt;
&lt;p&gt;As usual in FOSDEM, the complete &lt;a class="link" href="https://en.wikipedia.org/wiki/OpenJDK" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;OpenJDK&lt;/strong&gt;&lt;/a&gt; Governing Board offered themselves for an open Q&amp;amp;A session. &lt;a class="link" href="https://twitter.com/gsaab" target="_blank" rel="noopener"
 &gt;Georges Saab&lt;/a&gt; (Chair, Oracle), &lt;a class="link" href="https://twitter.com/jduimovich" target="_blank" rel="noopener"
 &gt;John Duimovich&lt;/a&gt; (Vice Chair, IBM), &lt;a class="link" href="https://twitter.com/mreinhold" target="_blank" rel="noopener"
 &gt;Mark Reinhold&lt;/a&gt; (OpenJDK Lead, Oracle), Prof. &lt;a class="link" href="https://twitter.com/douglea" target="_blank" rel="noopener"
 &gt;Doug Lea&lt;/a&gt; (SUNY Oswego) and &lt;a class="link" href="https://developers.redhat.com/blog/author/aphredhat/" target="_blank" rel="noopener"
 &gt;Andrew Haley&lt;/a&gt; (Red Hat) kindly answered all the questions from the audience.&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;I will summarize my Sunday experience in FOSDEM as soon as possible, but this article is already long enough to be published.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Stay tuned!!!&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Greach 2018</title><link>https://luiyo.net/en/blog/2018/03/greach-2018/</link><pubDate>Fri, 23 Mar 2018 00:00:00 +0000</pubDate><guid>https://luiyo.net/en/blog/2018/03/greach-2018/</guid><description>&lt;img src="https://luiyo.net/29055005757_97973f26e6_o_10058785791950781698.jpg" alt="Featured image of post Greach 2018" /&gt;&lt;div class="image lateral"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm2.staticflickr.com/1812/43273840094_a4955a2262_o.png" alt="Greach 2018"&gt;
 
 
 &lt;figcaption&gt;
 Greach 2018
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;Some days ago I attended as usual to the fantastic &lt;a class="link" href="http://2018.greachconf.com/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Greach Conference&lt;/strong&gt;&lt;/a&gt;, an international conference about the &lt;a class="link" href="http://www.groovy-lang.org/" target="_blank" rel="noopener"
 &gt;Apache Groovy&lt;/a&gt; language and ecosystem: Groovy, Grails, Gradle and a lot other things. Greach is held each year in Madrid but everything is in English, and nowadays it&amp;rsquo;s surely one of the Top worldwide events about this technologies.&lt;/p&gt;
&lt;p&gt;Greach is a &lt;strong&gt;non-profitable&lt;/strong&gt; event organized by &lt;a class="link" href="https://twitter.com/ilopmar" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Iván López&lt;/strong&gt; (@ilopar)&lt;/a&gt; and &lt;a class="link" href="http://twitter.com/albertovilches" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Alberto Vilches&lt;/strong&gt; (@albertovilches)&lt;/a&gt;, with some help from colleagues and &lt;a class="link" href="http://2018.greachconf.com/#tile_sponsors" target="_blank" rel="noopener"
 &gt;a lot of sponsors&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;TLDR;&lt;/strong&gt; The conference content and speakers were great, in addition to the logistics. I couldn&amp;rsquo;t attend the workshop day (my fault), and it was a pity specially because this year I had paid for it. Apart from learning (as usual), this year was specially exciting with the worldwide announcement of &lt;a class="link" href="http://micronaut.io/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Micronaut&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Let me summarize some of the talks I attended:&lt;/p&gt;
&lt;h1 id="talks"&gt;Talks
&lt;/h1&gt;&lt;p&gt;&lt;a class="link" href="http://2018.greachconf.com/sessions/groovy-keynote-2-5-roadmap/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Groovy Keynote: 2.5+ Roadmap&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="http://2018.greachconf.com/speakers/paul-king/" target="_blank" rel="noopener"
 &gt;Paul King&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/paulk_asert" target="_blank" rel="noopener"
 &gt;@paulk_asert&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Paul King, Groovy Technical Lead at &lt;a class="link" href="https://objectcomputing.com/" target="_blank" rel="noopener"
 &gt;OCI&lt;/a&gt;, gave a good overview on the status and roadmap of the Apache Groovy language. Paul summarized the features announced for Groovy 2.5 (GA expected Q2 2018) and Groovy 2.6 / 3.0 (RC end of 2018). Apart from more (and better) AST transformations, Groovy 2.6 / 3.0 version will come with the brand new Parrot parser that brings several improvements and better Java syntax support for a lot of use cases.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="http://2018.greachconf.com/sessions/building-dsl-using-groovy/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Building DSL using Groovy&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="http://2018.greachconf.com/speakers/puneet-behl/" target="_blank" rel="noopener"
 &gt;Puneet Behl&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/puneetbhl" target="_blank" rel="noopener"
 &gt;@puneetbhl&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Puneet, Software Engineer at OCI, started with a brief introduction to DSLs, for those who are not familiar with them. He focused on the advantages of the DSLs in some use cases, allowing the Domain experts to help, validate and even code DSL expressions. After that, he showed with some examples how to create a DSL language with Groovy. The talk was nice but probably he could&amp;rsquo;ve made the assumption that everyone in Greach knows Groovy basics or what a DSL is.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="http://2018.greachconf.com/sessions/ive-seen-grails-code-you-wouldnt-believe/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;I’ve seen Grails code you wouldn’t believe…&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="http://2018.greachconf.com/speakers/ivan-lopez/" target="_blank" rel="noopener"
 &gt;Iván López&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/ilopmar" target="_blank" rel="noopener"
 &gt;@ilopmar&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Iván made, as usual, a well prepared an amusing talk about some mistakes that he has seen in the recent months in several Groovy projects. Names were changed and the code was partially blurred but it was clear enough to recognize the errors. Most of them were obvious and could have been detected with any static code analysis tool (like &lt;a class="link" href="http://codenarc.sourceforge.net/" target="_blank" rel="noopener"
 &gt;CodeNARC&lt;/a&gt;) but in other examples the static analysis is not enough and someone needs to read the code and think about what is written. That&amp;rsquo;s why the main recommendation that Iván gave for this kind of errors is the proper usage of Code Reviews with other peers.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="http://2018.greachconf.com/sessions/groovy-gstring-magic/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Groovy GString magic&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="http://2018.greachconf.com/speakers/jacob-aae-mikkelsen/" target="_blank" rel="noopener"
 &gt;Jacob Aae Mikkelsen&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/JacobAae" target="_blank" rel="noopener"
 &gt;@JacobAae&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;I wasn&amp;rsquo;t sure if Jacob&amp;rsquo;s talk was going to be too basic, but knowing the speaker from other conferences I was confident that I could learn something. I was right in both assumptions, the talk was a complete review of the GString class in Groovy covering all the basic usages and the differences with the Java String class, the template engines, and the main caveats but the speaker also gave several interesting tips and tricks, and I didn&amp;rsquo;t knew all of them. It was specially nice the &lt;em&gt;stripIndent&lt;/em&gt; method.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="http://2018.greachconf.com/sessions/from-functions-to-monadic-style/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;From Functions to Monadic Style&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="http://2018.greachconf.com/speakers/dierk-konig/" target="_blank" rel="noopener"
 &gt;Dierk König&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/mittie" target="_blank" rel="noopener"
 &gt;@mittie&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Dierk&amp;rsquo;s talk was mainly a live coding session. He performed an interesting exercise, typical in functional programming workshops, but with the twist of adding specific rules to the exercise in an incremental way as in a coding kata. The talk was very interesting and sometimes amusing starting with an hilarious statement: &amp;ldquo;As soon as you have understood monads, you immediately lose the ability to explain it!&amp;rdquo;.&lt;/p&gt;
&lt;blockquote class="twitter-tweet"&gt;&lt;p lang="en" dir="ltr"&gt;. &lt;a href="https://twitter.com/mittie?ref_src=twsrc%5Etfw"&gt;@mittie&lt;/a&gt; admitted that he&amp;#39;s a Groovy-holic&lt;a href="https://twitter.com/hashtag/greach18?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#greach18&lt;/a&gt; &lt;a href="https://t.co/XRD1axwZRa"&gt;pic.twitter.com/XRD1axwZRa&lt;/a&gt;&lt;/p&gt;&amp;mdash; Greach (@greachconf) &lt;a href="https://twitter.com/greachconf/status/974633674082832384?ref_src=twsrc%5Etfw"&gt;March 16, 2018&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;


&lt;p&gt;&lt;a class="link" href="http://2018.greachconf.com/sessions/mapping-a-tree-with-grails/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Mapping a tree with Grails&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="http://2018.greachconf.com/speakers/sergio-del-amo/" target="_blank" rel="noopener"
 &gt;Sergio del Amo&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/sdelamo" target="_blank" rel="noopener"
 &gt;@sdelamo&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Sergio gave a complete talk reviewing the tree data structure, commenting some use cases in which to use it and also comparing several different implementations of a data structure in Groovy: Adjacency lists, path enumeration, nested sets and closure tables. He remarked that the right design and implementation depends on the use case, if you normally need to query the leafs or an entire subtree, if the tree is mostly static or its subject to lots of insertions, etc.&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm2.staticflickr.com/1840/29055005897_8955a37e09_o.jpg" alt="Sergio del Amo at Greach 2018"&gt;
 
 
 &lt;figcaption&gt;
 Sergio del Amo at Greach 2018
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="http://2018.greachconf.com/sessions/reactive-all-the-way-down-with-ratpack-rxgroovy-react-and-rabbitmq/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Reactive All The Way Down with Ratpack, Groovy, RxJava, React, and RabbitMQ&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="http://2018.greachconf.com/speakers/steve-pember/" target="_blank" rel="noopener"
 &gt;Steve Pember&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/svpember" target="_blank" rel="noopener"
 &gt;@svpember&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;This talk was also very complete, describing the advantages of a reactive environment, the anatomy of a reactive service and how to make the main technology choices to build a proper Reactive application. Among all the advantages described by Steve I&amp;rsquo;ll highlight the optimized usage of resources, the reduction of synchronous communications and the increase of error protection due to have more decoupled and independent systems.&lt;/p&gt;
&lt;p&gt;Another hilarious moment for me came when Steve described as a reason to keep using &lt;a class="link" href="https://www.rabbitmq.com/" target="_blank" rel="noopener"
 &gt;RabbitMQ&lt;/a&gt; that &amp;ldquo;you don&amp;rsquo;t mind being looked down upon by Kafka fans&amp;rdquo;. Not related to this, but in my company we are precisely replacing RabbitMQ with &lt;a class="link" href="https://kafka.apache.org/" target="_blank" rel="noopener"
 &gt;Apache Kafka&lt;/a&gt; everywhere.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="http://2018.greachconf.com/sessions/grails-keynote/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Launching the Micro Future: Groovy, Grails and MicroNaut&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="http://2018.greachconf.com/speakers/graeme-rocher/" target="_blank" rel="noopener"
 &gt;Graeme Rocher&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/graemerocher" target="_blank" rel="noopener"
 &gt;@graemerocher&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Iván López warned us about this talk and it was much more that what I expected. Graeme Rocher made the worldwide presentation of &lt;a class="link" href="http://micronaut.io/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;MicroNaut&lt;/strong&gt;&lt;/a&gt;, an ultra-light cloud native reactive framework for the JVM. It&amp;rsquo;ll be compatible with Groovy and Java, but also with other languages of the JVM like Kotlin. The first milestones will be released by Q2 2018 and the GA version is expected by the end of the year.&lt;/p&gt;
&lt;blockquote class="twitter-tweet"&gt;&lt;p lang="en" dir="ltr"&gt;Hello &lt;a href="https://twitter.com/hashtag/greach18?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#greach18&lt;/a&gt; conf attendees! It&amp;#39;s here! It&amp;#39;s here! It&amp;#39;s finally here! &lt;a href="https://t.co/lt3Bglsb90"&gt;https://t.co/lt3Bglsb90&lt;/a&gt; &lt;a href="https://t.co/iGbUZMn0gO"&gt;pic.twitter.com/iGbUZMn0gO&lt;/a&gt;&lt;/p&gt;&amp;mdash; The Micronaut Framework (@micronautfw) &lt;a href="https://twitter.com/micronautfw/status/974683748909371393?ref_src=twsrc%5Etfw"&gt;March 16, 2018&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;


&lt;p&gt;Graeme and the rest of the OCI people have been working on this since at least 1.5 years ago. They released Grails ten years ago, so they have all our confidence and respect. The premise is that Grails, and Spring of course, were not designed for a microservices world. They come from an era without most of the things that are common nowadays: microservices, without containers,&amp;hellip;&lt;/p&gt;
&lt;p&gt;Some quick hints about MicroNaut:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;It is designed from scratch with Microservices in mind&lt;/li&gt;
&lt;li&gt;It&amp;rsquo;s ultra-light weight (Grame shared some amazing numbers) and reactive (it&amp;rsquo;s based on Netty)
&lt;ul&gt;
&lt;li&gt;Can be run with as little as 10Mb Max Heap for Java (24MB for Groovy)&lt;/li&gt;
&lt;li&gt;Start-up time is below a second for Java (1 second for Groovy)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Compatible with any Reactive Streams implementation: RxJava 2.x, Reactor 3.x, Akka,&amp;hellip;&lt;/li&gt;
&lt;li&gt;Integrates AOP and compile time dependency injection (and this implies a lot, great topic to talk about), so no reflection and no runtime proxies&lt;/li&gt;
&lt;li&gt;It&amp;rsquo;s both HTTP client and server&lt;/li&gt;
&lt;li&gt;Service Discovery: Consul and Eureka are supported, Route 53 planned&lt;/li&gt;
&lt;li&gt;Client Side Load Balancing: Integrated with Netflix Ribbon&lt;/li&gt;
&lt;li&gt;Support for serverless computing via AWS Lambda&lt;/li&gt;
&lt;li&gt;Developed via the annotations from Java and the powerful AST transformations from Groovy.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Graeme also commented the roadmap of Grails (4.0 version in Q4 2018). We were all just too excited with MicroNaut but he confirmed that OCI will still evolve Grails (with MicroNaut integration), and that&amp;rsquo;s good news for everyone.&lt;/p&gt;
&lt;blockquote class="twitter-tweet"&gt;&lt;p lang="en" dir="ltr"&gt;Getting right to it, &lt;a href="https://twitter.com/graemerocher?ref_src=twsrc%5Etfw"&gt;@graemerocher&lt;/a&gt; shows off some cool stuff that &lt;a href="https://twitter.com/micronautfw?ref_src=twsrc%5Etfw"&gt;@micronautfw&lt;/a&gt; can do with a demo &lt;a href="https://twitter.com/greachconf?ref_src=twsrc%5Etfw"&gt;@greachconf&lt;/a&gt;! &lt;a href="https://twitter.com/hashtag/micronautfw?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#micronautfw&lt;/a&gt; &lt;a href="https://twitter.com/hashtag/grailsfw?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#grailsfw&lt;/a&gt; &lt;a href="https://twitter.com/hashtag/groovylang?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#groovylang&lt;/a&gt; &lt;a href="https://twitter.com/hashtag/greach18?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#greach18&lt;/a&gt; &lt;a href="https://t.co/laViV7iJ0s"&gt;pic.twitter.com/laViV7iJ0s&lt;/a&gt;&lt;/p&gt;&amp;mdash; Object Computing (@ObjectComputing) &lt;a href="https://twitter.com/ObjectComputing/status/974685113375248384?ref_src=twsrc%5Etfw"&gt;March 16, 2018&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;


&lt;p&gt;&lt;a class="link" href="http://2018.greachconf.com/sessions/reactive-microservices-with-particle/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Reactive Microservices with MicroNaut&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="http://2018.greachconf.com/speakers/alvaro-sanchez-mariscal/" target="_blank" rel="noopener"
 &gt;Álvaro Sánchez-Mariscal&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/alvaro_sanchez" target="_blank" rel="noopener"
 &gt;@alvaro_sanchez&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;This was my first talk of the Saturday at Greach. After the hype with MicroNaut in the previous day, the room was packed full to hear more details about the new framework from Álvaro. Álvaro made a detailed technical explanation about MicroNaut, comparing some of the decisions to the ones with Spring/Grails.&lt;/p&gt;
&lt;p&gt;He also made a live demo testing some of the capabilities: service discovery, load balancing, reactive and fault tolerant. He showed a demo project that will be released with the framework: a pet store composed with several microservices built in different technologies (Java and Groovy) and each of them connected to a different backend (PostgreSQL, Redis, Cassandra, Neo4J, etc.).&lt;/p&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm2.staticflickr.com/1840/43273840244_9c59c8e742_o.jpg" alt="Álvaro Sánchez Mariscal at Greach 2018"&gt;
 
 
 &lt;figcaption&gt;
 Álvaro Sánchez Mariscal at Greach 2018
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;p&gt;&lt;a class="link" href="http://2018.greachconf.com/sessions/gorm-reloaded-data-services-for-the-win/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;GORM Reloaded – Data Services for the Win&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="http://2018.greachconf.com/speakers/graeme-rocher/" target="_blank" rel="noopener"
 &gt;Graeme Rocher&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/graemerocher" target="_blank" rel="noopener"
 &gt;@graemerocher&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Graeme gave another very good talk, this time about GORM Data Services. He explained a lot of improvements, mainly related to joins and multi-tenancy. It was very interesting, now in my project we are analyzing the approach for a bunch of multi-tenant data bases and the talk gave me some ideas. He offered two distinct modes to tackle the multi-tenancy problems: data partitioning and isolating connections/sessions. GORM supports both approaches perfectly.&lt;/p&gt;
&lt;p&gt;I saw a lot of powerful features behind GORM Data Services, improving the performance and code maintenance, and simplifying amazingly the multi-tenant application development.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="http://2018.greachconf.com/sessions/101-scripts-that-can-save-you-the-day/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;101 scripts that can save you the day&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="http://2018.greachconf.com/speakers/jorge-aguilera/" target="_blank" rel="noopener"
 &gt;Jorge Aguilera&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/jagedn" target="_blank" rel="noopener"
 &gt;@jagedn&lt;/a&gt;) and &lt;a class="link" href="http://2018.greachconf.com/speakers/miguel-angel-rueda/" target="_blank" rel="noopener"
 &gt;Miguel Ángel Rueda&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/MiguelRuGa" target="_blank" rel="noopener"
 &gt;@MiguelRuGa&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Jorge and Miguel Ángel offered a funny theatrical performance to show the advantages of their project (&lt;a class="link" href="http://groovy-lang.gitlab.io/101-scripts/index-en.html" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;101 Scripts&lt;/strong&gt;&lt;/a&gt;) offering dozens of very useful scripts made in Groovy for a lot of common tasks. I had already reviewed the project page (baked with &lt;a class="link" href="https://jbake.org/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;JBake&lt;/strong&gt;&lt;/a&gt;, my previous static site generator) and some of the scripts and I loved it. I hope I&amp;rsquo;d be able to contribute in the future, at least with some translations.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="http://2018.greachconf.com/sessions/surviving-in-a-microservices-environment/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Surviving in a Microservices Environment&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="http://2018.greachconf.com/speakers/steve-pember/" target="_blank" rel="noopener"
 &gt;Steve Pember&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/svpember" target="_blank" rel="noopener"
 &gt;@svpember&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;My last choice in Greach 2018 was to listen again to Steve Pember. This talk was focused on the technical and not technical choices and challenges in a microservices environment. Steve put the emphasis on three main topics (and I agree with him): infrastructure, architecture and team communication. He provided a valuable vision on this, with some useful insights. I&amp;rsquo;ll highlight one of them, related to team communication.&lt;/p&gt;
&lt;p&gt;He reminded the audience &lt;a class="link" href="https://en.wikipedia.org/wiki/Conway%27s_law" target="_blank" rel="noopener"
 &gt;Conway&amp;rsquo;s Law&lt;/a&gt;, with the assumption from his side (and I totally agree) that it&amp;rsquo;s completely real. If a company is not able to integrate all the required capabilities in its squads, it&amp;rsquo;ll be doomed to have knowledge silos and complex dependencies everywhere.&lt;/p&gt;
&lt;blockquote&gt;organizations which design systems ... are constrained to produce designs which are copies of the communication structures of these organizations.
— M. Conway&lt;/blockquote&gt;
&lt;div class="image"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://farm1.staticflickr.com/929/43273839984_210c4d0479_o.jpg" alt="Steve Pember at Greach 2018"&gt;
 
 
 &lt;figcaption&gt;
 Steve Pember at Greach 2018
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;

&lt;br /&gt;
&lt;p&gt;And that&amp;rsquo;s all. &lt;strong&gt;See you in Greach 2019!!&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>FOSDEM 2018: Sunday</title><link>https://luiyo.net/en/blog/2018/02/fosdem-2018-sunday/</link><pubDate>Thu, 08 Feb 2018 00:00:00 +0000</pubDate><guid>https://luiyo.net/en/blog/2018/02/fosdem-2018-sunday/</guid><description>&lt;img src="https://luiyo.net/43087629135_5e527e3690_o_12492866873198852342.jpg" alt="Featured image of post FOSDEM 2018: Sunday" /&gt;&lt;p&gt;After an interesting Saturday, finished with a great dinner with some friends in one of our favorite restaurants in Brussels, my Sunday at &lt;a class="link" href="https://fosdem.org/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;FOSDEM&lt;/strong&gt;&lt;/a&gt; started again very early.&lt;/p&gt;
&lt;div class="image lateral"&gt;
 &lt;img src="https://farm2.staticflickr.com/1840/42184068590_500e7ec774_z.jpg" alt="FOSDEM 2018"&gt;
 &lt;div class="caption"&gt;FOSDEM 2018&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;My choices for the Sunday were again diverse and (in most cases) successful. Apart from the closing keynotes, I spent some time in the &lt;a class="link" href="https://fosdem.org/2018/schedule/track/legal_and_policy_issues/" target="_blank" rel="noopener"
 &gt;Legal and Policy Issues devroom&lt;/a&gt;, a couple of talks in the &lt;a class="link" href="https://fosdem.org/2018/schedule/track/hpc,_big_data,_and_data_science/" target="_blank" rel="noopener"
 &gt;HPC, Big Data, and Data Science devroom&lt;/a&gt; and half the afternoon in the &lt;a class="link" href="https://fosdem.org/2018/schedule/track/geospatial/" target="_blank" rel="noopener"
 &gt;Geospatial devroom&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Before continuing, if you want to read my summary of the previous day you can follow this link: &lt;a class="link" href="https://luiyo.net/blog/2018/02/fosdem-2018-saturday/" &gt;&lt;strong&gt;FOSDEM 2018: Saturday&lt;/strong&gt;&lt;/a&gt;. You will also find there general info and details about the event itself.&lt;/p&gt;
&lt;p&gt;Let me summarize:&lt;/p&gt;
&lt;h1 id="talks"&gt;Talks
&lt;/h1&gt;&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/gdpr_identity_management/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Capture the GDPR with Identity management&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/juraj_benculak/" target="_blank" rel="noopener"
 &gt;Juraj Benculak&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This first talk was a bit disappointing. The intro about &lt;a class="link" href="https://en.wikipedia.org/wiki/General_Data_Protection_Regulation" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;GDPR&lt;/strong&gt;&lt;/a&gt; took most of the talk, and I bet that almost all of us who where there at 9am in a Sunday knew what GDPR is.&lt;/p&gt;
&lt;p&gt;The recommendations for GDPR arrived very late. The speaker made a brief overview of how you can benefit from a nice data mapping and data governance, and how good it is to observe privacy by default and by design. Then, he introduced Identity Management as the ideal tool for the job demonstrating the lawfulness of all the data processing. The fact that he develops Identity Management software has something to do with it, of course.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/ai_right_to_be_forgotten/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Artificial intelligence dealing with the right to be forgotten&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/cristina_rosu/" target="_blank" rel="noopener"
 &gt;Cristina Rosu&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The next talk in the Legal and Policy devroom was luckily more interesting, but again the title was misleading. Most of the talk was an intro to the right to be forgotten, including an overview of all the relevant legal cases starting with the &lt;a class="link" href="https://en.wikipedia.org/wiki/Google_Spain_v_AEPD_and_Mario_Costeja_Gonz%C3%A1lez" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Google Spain&lt;/strong&gt; v &lt;strong&gt;AEPD&lt;/strong&gt; and &lt;strong&gt;Mario Costeja González&lt;/strong&gt;&lt;/a&gt;. Cristina Rosu complemented the legal intro with some metrics about GDPR compliance in some countries.&lt;/p&gt;
&lt;div class="image"&gt;
 &lt;img src="https://farm1.staticflickr.com/937/42184071750_79ff9d531e_o.jpg" alt="Some statistics on deletion for GDPR compliance"&gt;
 &lt;div class="caption"&gt;Some statistics on deletion for GDPR compliance&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;In the last slides, the only part related to Artificial Intelligence, the speaker commented some possible approaches to enhance the right to be forgotten in the AI environment: Obfuscation strategies, data minimization, personal data stores, algorithmic transparency or ethical boards inside companies.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/hpc_uclouvain/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Behind the scenes of a FOSS-powered HPC cluster, Ansible or Salt? Ansible AND Salt!&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/damien_francois/" target="_blank" rel="noopener"
 &gt;Damien François&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The speaker, as a systems engineer, is responsible of the automation of a medium-sized HPC infrastructure at the &lt;a class="link" href="https://uclouvain.be/" target="_blank" rel="noopener"
 &gt;Louvain University&lt;/a&gt;. The purpose of his talk, quite interesting, was to advocate for the use of similar tools at the same time, instead of using the same tool for everything. Some features overlap, but he claimed that each tool can be more powerful in certain tasks, and separating tools also helps in defining responsibilities.&lt;/p&gt;
&lt;p&gt;They use &lt;a class="link" href="https://cobbler.github.io/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Cobbler&lt;/strong&gt;&lt;/a&gt; to install and deploy Operating Systems and set-up hardware specific configuration, &lt;a class="link" href="https://www.ansible.com/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Ansible&lt;/strong&gt;&lt;/a&gt; for one-off operations (setup RSA keys, register node to services or prepare config files) and &lt;a class="link" href="https://saltstack.com/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Salt&lt;/strong&gt;&lt;/a&gt; for daily management (configure system, install admin software or mount the user filesystem).&lt;/p&gt;
&lt;p&gt;He ended comparing Ansible and Salt, reviewing the best characteristics of each of them as you can see in the picture that I took:&lt;/p&gt;
&lt;div class="image"&gt;
 &lt;img src="https://farm1.staticflickr.com/936/43087629285_5c0c26835d_o.jpg" alt="What the speaker loves about Ansible and Salt"&gt;
 &lt;div class="caption"&gt;What the speaker loves about Ansible and Salt&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/deeplearning_osm/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;How DeepLearning can help to improve geospatial DataQuality, an OSM use case&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/olivier_courtin/" target="_blank" rel="noopener"
 &gt;Olivier Courtin&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The speaker started his talk reviewing some of the Quality Assurance tools available in the &lt;a class="link" href="https://www.openstreetmap.org/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;OpenStreetMap&lt;/strong&gt;&lt;/a&gt; ecosystem, being the main ones: &lt;a class="link" href="https://wiki.openstreetmap.org/wiki/Keep_Right" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Keep Right&lt;/strong&gt;&lt;/a&gt;, &lt;a class="link" href="https://wiki.openstreetmap.org/wiki/Osmose" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Osmose&lt;/strong&gt;&lt;/a&gt;, &lt;a class="link" href="https://wiki.openstreetmap.org/wiki/OSM_Inspector" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;OSM Inspector&lt;/strong&gt;&lt;/a&gt; and &lt;a class="link" href="https://wiki.openstreetmap.org/wiki/MapRoulette" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Maproulette&lt;/strong&gt;&lt;/a&gt;. The problem of them, and I know it very well because I&amp;rsquo;ve used them a lot, is that the detection can be automatic but only sometimes the tool is able to provide fix suggestions or a standard correction guide, and eventually all the corrections need to be done manually by a mapper (like me).&lt;/p&gt;
&lt;p&gt;The premise of the talk was about using other datasets to highlight inconsistencies and, potentially, to predict some characteristics not present in the map using &lt;a class="link" href="https://en.wikipedia.org/wiki/Deep_learning" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;DeepLearning&lt;/strong&gt;&lt;/a&gt; and satellite imagery. The results that he showed were impressive, but he also showed that a lot of work needs to be done in order to have enough quality to consider a more automated approach for Quality Assurance in OSM.&lt;/p&gt;
&lt;p&gt;Completeness in OpenStreetMap starts by detecting inconsistencies as soon and as detailed as possible.&lt;/p&gt;
&lt;div class="image"&gt;
 &lt;img src="https://farm1.staticflickr.com/938/43087627755_376dee9d88_o.png" alt="Applying DeepLearning techniques to improve OpenStreetMap"&gt;
 &lt;div class="caption"&gt;Applying DeepLearning techniques to improve OpenStreetMap&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/libreoffice/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Re-structuring a giant, ancient code-base for new platforms&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/michael_meeks/" target="_blank" rel="noopener"
 &gt;Michael Meeks&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;After some interesting networking in the stands, I entered this talk with low expectations. I did not regret it because it was very interesting.&lt;/p&gt;
&lt;p&gt;The talk was about the huge refactor that was needed in the codebase of &lt;a class="link" href="https://www.libreoffice.org/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;LibreOffice&lt;/strong&gt;&lt;/a&gt; to make it work in the Cloud. The speaker explained clearly why they needed to re-structure at all, the main problems that they faced (Windows and Linux rendering APIs) and how they solved critical issues like extreme coupling and threads management.&lt;/p&gt;
&lt;p&gt;The summary of the talk in a quote is: &lt;em&gt;&amp;ldquo;Fix each bug only once&amp;rdquo;&lt;/em&gt;. What a great statement.&lt;/p&gt;
&lt;div class="image"&gt;
 &lt;img src="https://farm2.staticflickr.com/1777/43087629025_9bdfc9a516_o.jpg" alt="Re-structuring LibreOffice"&gt;
 &lt;div class="caption"&gt;Re-structuring LibreOffice&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/geo_rock/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Building Rock Climbing Maps with OpenStreetMap&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/viet_nguyen/" target="_blank" rel="noopener"
 &gt;Viet Nguyen&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This was my first talk in the &lt;a class="link" href="https://fosdem.org/2018/schedule/track/geospatial/" target="_blank" rel="noopener"
 &gt;Geospatial devroom&lt;/a&gt;, it was somehow inspiring despite I can&amp;rsquo;t say that I learned a lot. The speaker explained that, as a rock climbing lover, he couldn&amp;rsquo;t find good data regarding climbing routes, walls and sectors so he started introducing that information himself in OpenStreetMap. He summarized his experience, the decisions that he had to take, and how he is trying to get more contributors for his project: &lt;a class="link" href="https://openbeta.io/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;OpenBeta&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/geo_osm_from_scratch/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Building OSM based web app from scratch&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/nils_vierus/" target="_blank" rel="noopener"
 &gt;Nils Vierus&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I could imagine that this talk was going to be very basic and I guessed right, but I wanted to stay in the devroom for the next talks so I stayed in the room retaining my seat.&lt;/p&gt;
&lt;p&gt;The speaker made a general overview about Programming languages to build an OSM based web app, IDEs, mapping libraries, OSM data retrieval tools, routing tools and even version control systems. Good introduction to the topic from a good speaker but I&amp;rsquo;m not sure if this kind of talks should have a place in FOSDEM.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/geo_cityzen/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Privacy aware city navigation with CityZen app&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/redon_skikuli/" target="_blank" rel="noopener"
 &gt;Redon Skikuli&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The speaker was nice and funny, but again the talk was not very advanced. It was more interesting when he talked about the &lt;a class="link" href="https://openlabs.cc/en/" target="_blank" rel="noopener"
 &gt;Open Hackerspace&lt;/a&gt; that he collaborates with in Tirana (Albania) than the part related to the CitiZen App. The claim that the app is privacy aware is very limited. They just don&amp;rsquo;t keep your navigation data but in the end whenever they ask for the location of the user, an Android device stores the location anyway (directly or when requesting the nearest POIs).&lt;/p&gt;
&lt;p&gt;As a nice addition, CitiZen allows the users to modify or insert the POIs retrieved from OSM by editing them inside the app.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/geo_subway/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Every subway network in the world&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/ilya_zverev/" target="_blank" rel="noopener"
 &gt;Ilya Zverev&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This talk was refreshing and reconciled me with the geospatial devroom. Ilya (software engineer at &lt;a class="link" href="https://maps.me/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Maps.me&lt;/strong&gt;&lt;/a&gt;) explained how he ended building the offline subway navigation feature for Maps.me. As he explained, when they started reviewing the available data in OpenStreetMap related to subways they realized that the information was very poor and incomplete. For example there was no way to map properly the connections between lines.&lt;/p&gt;
&lt;p&gt;He started building a validator and then station by station, city by city, he improved the subway information in OSM. He even presented a &lt;a class="link" href="https://wiki.openstreetmap.org/wiki/Proposal_process" target="_blank" rel="noopener"
 &gt;proposal&lt;/a&gt; for the subway geospatial information, including new relations for the transfers.&lt;/p&gt;
&lt;div class="image"&gt;
 &lt;img src="https://farm1.staticflickr.com/932/42184068470_5526460138_o.png" alt="Subway stations schema in OpenStreetMap, according to Ilya Zverev"&gt;
 &lt;div class="caption"&gt;Subway stations schema in OpenStreetMap, according to Ilya Zverev&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/upsat/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;The story of UPSat, Building the first open source software and hardware satellite&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/pierros_papadeas/" target="_blank" rel="noopener"
 &gt;Pierros Papadeas&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;One of the most inspiring talks of the entire FOSDEM with a packed full Janson Room (with capacity for 1415 people).&lt;/p&gt;
&lt;p&gt;The speaker explained how during 2016, the &lt;a class="link" href="https://libre.space/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Libre Space Foundation&lt;/strong&gt;&lt;/a&gt; a non-profit organization developing open source technologies for space, designed, built and delivered &lt;a class="link" href="https://libre.space/projects/upsat/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;UPSat&lt;/strong&gt;&lt;/a&gt;, the first open source software and hardware satellite.&lt;/p&gt;
&lt;div class="image"&gt;
 &lt;img src="https://farm2.staticflickr.com/1834/43087628175_3af6af1d97_o.jpg" alt="Pierros Papadeas explaining the UPSat design and building process"&gt;
 &lt;div class="caption"&gt;Pierros Papadeas explaining the UPSat design and building process&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;He explained with some detail how he got involved, the current status of the project, the design, construction, verification, testing and delivery processes, etc. You should consider watching the video :-)&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/closing_keynote/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Exploiting modern microarchitectures, Meltdown, Spectre, and other hardware attacks&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/jon_masters/" target="_blank" rel="noopener"
 &gt;Jon Masters&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The closing keynote was given by &lt;a class="link" href="http://jonmasters.org/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Jon Masters&lt;/strong&gt;&lt;/a&gt; (Computer Architect at &lt;a class="link" href="https://www.redhat.com/en" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Red Hat&lt;/strong&gt;&lt;/a&gt;) about &lt;a class="link" href="https://en.wikipedia.org/wiki/Meltdown_%28security_vulnerability%29" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Meltdown&lt;/strong&gt;&lt;/a&gt; and &lt;a class="link" href="https://en.wikipedia.org/wiki/Spectre_%28security_vulnerability%29" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Spectre&lt;/strong&gt;&lt;/a&gt;, as he was tech lead for mitigation efforts against them in Red Hat. Jon was surprisingly capable of explaining in less than 50 minutes what are those vulnerabilities about, how they were possible in the first place and what are the consequences of avoiding them. I already knew most of it but Jon made it even clearer for me, and surely for the rest of the audience given the applause he received.&lt;/p&gt;
&lt;p&gt;It was specially amusing for me, as I&amp;rsquo;ve been refreshing my knowledge about the &lt;a class="link" href="https://en.wikipedia.org/wiki/Tomasulo_algorithm" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Tomasulo Algorithm&lt;/strong&gt;&lt;/a&gt; these past months.&lt;/p&gt;
&lt;div class="image"&gt;
 &lt;img src="https://farm1.staticflickr.com/938/43087628895_6eb93bb57c_o.jpg" alt="Microcode, Millicode and Chicken bits"&gt;
 &lt;div class="caption"&gt;Microcode, Millicode and Chicken bits&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;p&gt;And that&amp;rsquo;s all. &lt;strong&gt;See you in Brussels for FOSDEM 2019!!&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>FOSDEM 2018: Saturday</title><link>https://luiyo.net/en/blog/2018/02/fosdem-2018-saturday/</link><pubDate>Tue, 06 Feb 2018 00:00:00 +0000</pubDate><guid>https://luiyo.net/en/blog/2018/02/fosdem-2018-saturday/</guid><description>&lt;img src="https://luiyo.net/42184071080_56145dbc1b_o_7469088355937633886.jpg" alt="Featured image of post FOSDEM 2018: Saturday" /&gt;&lt;p&gt;After an uncertain landing a few hours ago (the airport in Madrid was barely working due to a snowy morning), I&amp;rsquo;ve just arrived home but instead of having some rest after an intense and though-provoking FOSDEM I felt the urge to start writing about my weekend in Brussels.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ve been there not only to enjoy this wonderful city with its trappist beers and great food, but specially to attend &lt;strong&gt;FOSDEM&lt;/strong&gt; as I intend to do every year.&lt;/p&gt;
&lt;div class="image lateral"&gt;
 &lt;img src="https://farm2.staticflickr.com/1840/42184068590_500e7ec774_z.jpg" alt="FOSDEM 2018"&gt;
 &lt;div class="caption"&gt;FOSDEM 2018&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;For those of you who don&amp;rsquo;t know &lt;a class="link" href="https://fosdem.org/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;FOSDEM&lt;/strong&gt;&lt;/a&gt;, it&amp;rsquo;s the biggest conference in Europe (and one of the biggest around the world) related to &lt;strong&gt;Open Source&lt;/strong&gt; development. It&amp;rsquo;s a huge event with hundreds of talks, workshops, gatherings and stands from all the relevant projects and communities in the &lt;strong&gt;FOSS (Free and Open Source Software)&lt;/strong&gt; ecosystem. It&amp;rsquo;s also a marvelous place to do networking, because there are not only representatives of those projects but normally also the technical leaders of them. If you are good with faces (or with voices, like &lt;a class="link" href="https://twitter.com/lekum" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;@lekum&lt;/strong&gt;&lt;/a&gt;!) you can meet and greet a lot of important and interesting people.&lt;/p&gt;
&lt;p&gt;I already wrote about it a couple of years ago, when I even gave a lightning talk in one &lt;a class="link" href="https://archive.fosdem.org/2016/fringe/" target="_blank" rel="noopener"
 &gt;FOSDEM Fringe event&lt;/a&gt; the &lt;a class="link" href="http://flosscommunitymetrics.org/" target="_blank" rel="noopener"
 &gt;Floss Community Metrics Meeting (FCM2)&lt;/a&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://luiyo.net/blog/2016/03/fosdem-2016-friday/" &gt;FOSDEM 2016: Friday&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://luiyo.net/blog/2016/03/fosdem-2016-saturday/" &gt;FOSDEM 2016: Saturday&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://luiyo.net/blog/2016/03/fosdem-2016-sunday/" &gt;FOSDEM 2016: Sunday&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The numbers of this year speak for themselves:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;more than 8,000 attendees in only two days&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/speakers/" target="_blank" rel="noopener"
 &gt;652 speakers&lt;/a&gt; in &lt;a class="link" href="https://fosdem.org/2018/schedule/events/" target="_blank" rel="noopener"
 &gt;690 different events&lt;/a&gt; (talks or workshops, mainly)&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/roomtracks/" target="_blank" rel="noopener"
 &gt;57 tracks&lt;/a&gt; in 33 different rooms&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://video.fosdem.org/" target="_blank" rel="noopener"
 &gt;more than 350 hours of content&lt;/a&gt;, almost all of the events are &lt;a class="link" href="https://fosdem.org/2018/schedule/streaming/" target="_blank" rel="noopener"
 &gt;available online with live streaming&lt;/a&gt; during the conference&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://fosdem.org/2018/stands/" target="_blank" rel="noopener"
 &gt;56 stands&lt;/a&gt; of all kinds of projects: &lt;a class="link" href="https://fsfe.org/" target="_blank" rel="noopener"
 &gt;FSFE&lt;/a&gt;, &lt;a class="link" href="https://www.python.org/psf" target="_blank" rel="noopener"
 &gt;Python Software Foundation&lt;/a&gt;, &lt;a class="link" href="http://www.apache.org/" target="_blank" rel="noopener"
 &gt;the Apache Software Foundation&lt;/a&gt;, &lt;a class="link" href="https://opensource.org/" target="_blank" rel="noopener"
 &gt;OSI&lt;/a&gt;, &lt;a class="link" href="https://eclipse.org/" target="_blank" rel="noopener"
 &gt;the Eclipse Foundation&lt;/a&gt;, &lt;a class="link" href="http://www.oreilly.com/" target="_blank" rel="noopener"
 &gt;O&amp;rsquo;Reilly&lt;/a&gt;, &lt;a class="link" href="http://getfedora.org/" target="_blank" rel="noopener"
 &gt;Fedora&lt;/a&gt;, &lt;a class="link" href="https://www.opensuse.org/" target="_blank" rel="noopener"
 &gt;OpenSUSE&lt;/a&gt;, &lt;a class="link" href="https://www.debian.org/" target="_blank" rel="noopener"
 &gt;Debian&lt;/a&gt; &lt;a class="link" href="http://www.kde.org/" target="_blank" rel="noopener"
 &gt;KDE&lt;/a&gt;, &lt;a class="link" href="http://gnome.org/" target="_blank" rel="noopener"
 &gt;Gnome&lt;/a&gt;, &lt;a class="link" href="http://www.libreoffice.org/" target="_blank" rel="noopener"
 &gt;LibreOffice&lt;/a&gt;, &lt;a class="link" href="https://videolan.org/" target="_blank" rel="noopener"
 &gt;VLC&lt;/a&gt;, &lt;a class="link" href="https://jenkins.io/" target="_blank" rel="noopener"
 &gt;Jenkins&lt;/a&gt;, &lt;a class="link" href="http://www.perl.org/" target="_blank" rel="noopener"
 &gt;Perl&lt;/a&gt;, &amp;hellip;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To make it more impressive, take into account that FOSDEM is &lt;strong&gt;organized by volunteers&lt;/strong&gt;, everything is &lt;strong&gt;community driven&lt;/strong&gt; and it&amp;rsquo;s &lt;strong&gt;free to attend&lt;/strong&gt;. You don&amp;rsquo;t even need to register beforehand.&lt;/p&gt;
&lt;div class="image"&gt;
 &lt;img src="https://farm2.staticflickr.com/1811/43087628035_daa6f7c7ef_o.png" alt="FOSDEM 2018"&gt;
 &lt;div class="caption"&gt;FOSDEM 2018&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;As usual, let me summarize some of the talks that I attended:&lt;/p&gt;
&lt;h1 id="talks"&gt;Talks
&lt;/h1&gt;&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/osi/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Consensus as a Service, Twenty Years of OSI Stewardship&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/simon_phipps/" target="_blank" rel="noopener"
 &gt;Simon Phipps&lt;/a&gt; and &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/italo_vignoli/" target="_blank" rel="noopener"
 &gt;Italo Vignoli&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The &lt;em&gt;Open Source&lt;/em&gt; label was born in February 3rd 1998, so we celebrated its 20th Anniversary during the opening day of FOSDEM 2018. Simon (President of the &lt;a class="link" href="https://opensource.org/" target="_blank" rel="noopener"
 &gt;OSI&lt;/a&gt;) summarized the evolution of the Open Source environment in the last two decades, also guessing what are going to be the main challenges for the Free Open Source Software for it&amp;rsquo;s third decade.&lt;/p&gt;
&lt;p&gt;He remarked that Open Source (OS) projects should not have a business model, the companies that uses those OS projects are the ones that need a realistic business model. I totally agree with this, OS projects can be relevant and positive for the society in a lot more ways than profitability of the founders. Open Source allows software users and developers to advance in their software freedom at work as well as in private.&lt;/p&gt;
&lt;p&gt;He labeled the first decade (1998-2008) the decade of &lt;em&gt;Advocacy &amp;amp; Controversy&lt;/em&gt;. We all still remember when &lt;a class="link" href="https://www.theregister.co.uk/2001/06/02/ballmer_linux_is_a_cancer/" target="_blank" rel="noopener"
 &gt;in 2001 Steve Ballmer as CEO of Microsoft said &amp;ldquo;Linux is a cancer&amp;rdquo;&lt;/a&gt; (although now &lt;a class="link" href="http://www.zdnet.com/article/ballmer-i-may-have-called-linux-a-cancer-but-now-i-love-it/" target="_blank" rel="noopener"
 &gt;apparently he loves it&lt;/a&gt;), or in 2005 when UNIX was made Open Source, or 2007 when Java was also made Open Source. In the beginning most OS was a proprietary replacement, but at the end of the decade everyone understood OS as a benefit.&lt;/p&gt;
&lt;p&gt;Simon labeled the second decade (2008-2018) the decade of &lt;em&gt;Adoption and Ascendancy&lt;/em&gt;, with three main aspects: broad enterprise adoption, problems with software patents and GPL enforcement. Since 2008 most &lt;em&gt;hidden&lt;/em&gt; infrastructure is based in OS, since 2011 OS enabled the web service business era, since 2013 the OS is powering the cloud/containers revolution, &amp;hellip; to the point that nowadays we can realize that Open Source is at the heart of most new software.&lt;/p&gt;
&lt;p&gt;Simon quoted &lt;a class="link" href="https://en.wikipedia.org/wiki/Eben_Moglen" target="_blank" rel="noopener"
 &gt;Eben Moglen&lt;/a&gt; and his &amp;ldquo;Licenses are Constitutions for Communities&amp;rdquo;, and explained that &amp;ldquo;Open Source licenses are the multilateral consensus of the permissions and norms for a Community&amp;rdquo;. That&amp;rsquo;s why it&amp;rsquo;s important to respect the licenses, and that explains why for the community any violation of the license it&amp;rsquo;s felt like an awful aggression.&lt;/p&gt;
&lt;p&gt;Derived from the &lt;a class="link" href="https://www.gnu.org/philosophy/free-sw.html.en" target="_blank" rel="noopener"
 &gt;four essential freedoms of Free Software&lt;/a&gt;, Simon emphasized the real value of Open Source:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Innovate without needing to ask first&lt;/li&gt;
&lt;li&gt;Start where others reached&lt;/li&gt;
&lt;li&gt;Stay in control of your own resources&lt;/li&gt;
&lt;li&gt;Share upkeep of your innovation&lt;/li&gt;
&lt;li&gt;Influence global ecosystems&lt;/li&gt;
&lt;li&gt;Be protected from others doing the same&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Maybe my favorite talk this year. Don&amp;rsquo;t expect summaries as long as this one for other talks :-P&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/cypher_for_apache_spark/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Cypher for Apache Spark (CAPS)&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/martin_junghanns/" target="_blank" rel="noopener"
 &gt;Martin Junghanns&lt;/a&gt; and &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/max_kiessling/" target="_blank" rel="noopener"
 &gt;Max Kießling&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;As part of &lt;a class="link" href="https://neo4j.com/" target="_blank" rel="noopener"
 &gt;Neo4J&lt;/a&gt;, the speakers explained why and how they created &lt;a class="link" href="https://github.com/opencypher/cypher-for-apache-spark" target="_blank" rel="noopener"
 &gt;Cypher for Apache Spark (CAPS)&lt;/a&gt;, to provide graph-powered data integration and graph analytical query workloads within the &lt;a class="link" href="https://spark.apache.org/" target="_blank" rel="noopener"
 &gt;Apache Spark&lt;/a&gt; ecosystem. They presented the internal architecture, made a live demo with Spark and &lt;a class="link" href="https://zeppelin.apache.org/" target="_blank" rel="noopener"
 &gt;Apache Zeppelin&lt;/a&gt; and explained that CAPS is released as Open Source inside &lt;a class="link" href="http://www.opencypher.org/" target="_blank" rel="noopener"
 &gt;OpenCypher&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/computer_science_of_modern_distributed_database/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;The Computer Science behind a modern distributed data store&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/michael_hackstein/" target="_blank" rel="noopener"
 &gt;Michael Hackstein&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/mchacki" target="_blank" rel="noopener"
 &gt;@mchacki&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The first thing that Michael Hackstein (&lt;a class="link" href="https://www.arangodb.com/" target="_blank" rel="noopener"
 &gt;ArangoDB&lt;/a&gt;) explained was that he was replacing the original speaker (Max Neunhoeffer, that couldn&amp;rsquo;t attend for personal reasons), but in the end he gave a great talk about a complex topic, being clear and precise. Anyone could notice that the substitute speaker knew the subject perfectly.&lt;/p&gt;
&lt;p&gt;Michael explained the main challenges when building or using a modern distributed data store. He started with an important advice: &amp;ldquo;The first law of distributed data is&amp;hellip; don&amp;rsquo;t distribute data&amp;rdquo; :-) Having said that, he clarified that sometimes you cannot avoid it because you need to scale and/or you need to be resilient.&lt;/p&gt;
&lt;p&gt;In a distributed system different parts need to agree on things (consensus) but it&amp;rsquo;s not always easy because the network has outages, drops, delays or duplicates packages, any disk fails or even an entire rack fails. He explained the basics of Consensus, as explained originally in the &lt;a class="link" href="https://en.wikipedia.org/wiki/Paxos_%28computer_science%29" target="_blank" rel="noopener"
 &gt;Paxos Consensus Protocol (1998)&lt;/a&gt; and later in &lt;a class="link" href="https://en.wikipedia.org/wiki/Raft_%28computer_science%29" target="_blank" rel="noopener"
 &gt;Raft&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Another important thought was related to sorting. Most published algorithms are nowadays poorly efficient because the problem is no longer the comparison computations but the data movement between data stores. He explained &lt;a class="link" href="https://en.wikipedia.org/wiki/Log-structured_merge-tree" target="_blank" rel="noopener"
 &gt;Log Structure Merge Trees (LSM-trees)&lt;/a&gt; as a possible solution.&lt;/p&gt;
&lt;p&gt;He also summarized other problems like the synchronization of machines (mitigated with &lt;a class="link" href="https://muratbuffalo.blogspot.com.es/2014/07/hybrid-logical-clocks.html" target="_blank" rel="noopener"
 &gt;Hybrid Logical Clocks&lt;/a&gt;) and Distributed ACID transactions, only supported as off today by &lt;a class="link" href="https://static.googleusercontent.com/media/research.google.com/en//archive/spanner-osdi2012.pdf" target="_blank" rel="noopener"
 &gt;Google Spanner&lt;/a&gt; (because they have the money to use atomic clocks) and &lt;a class="link" href="https://github.com/cockroachdb/cockroach" target="_blank" rel="noopener"
 &gt;Cockroach DB&lt;/a&gt; an Open Source clone of Spanner that &lt;a class="link" href="https://www.cockroachlabs.com/blog/living-without-atomic-clocks/" target="_blank" rel="noopener"
 &gt;achieved it without atomic clocks&lt;/a&gt;.&lt;/p&gt;
&lt;div class="image"&gt;
 &lt;img src="https://farm2.staticflickr.com/1791/42184071530_231a22ba47_o.jpg" alt="Log structured merge trees (LSM-trees)"&gt;
 &lt;div class="caption"&gt;Log structured merge trees (LSM-trees)&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/digital_archaeology/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Digital Archaeology, Maintaining our digital heritage&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/steven_goodwin/" target="_blank" rel="noopener"
 &gt;Steven Goodwin&lt;/a&gt; (&lt;a class="link" href="https://twitter.com/MarquisdeGeek" target="_blank" rel="noopener"
 &gt;@MarquisdeGeek&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Steven Goodwin is the founder of &lt;a class="link" href="http://marquisdegeek.com/digital_heritage" target="_blank" rel="noopener"
 &gt;the Digital Heritage&lt;/a&gt;, a (let me quote) &lt;em&gt;&amp;ldquo;plan to collate the learnings and knowledge of computer systems from 1975 onwards so that students of technology and scholars of the future can understand how they work, how to use them, and how they affected the culture of the 20th century&amp;rdquo;&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;He explained how in a few years time it will be difficult or even impossible to study retro-computers given the fact that its software is either proprietary, closed-source, written in an obsolete programming language or &lt;em&gt;protected&lt;/em&gt; to prevent copying. Not only this, the hardware is also failing, the magnetic devices are no longer storing the information and so on.&lt;/p&gt;
&lt;p&gt;After raising awareness of the problem, he also gave several recommendations and methods necessary to preserve our legacy using emulations, mainly based in Open Source projects.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/jvm_startup/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;JVM startup: why it matters to the new world order&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/daniel_heidinga/" target="_blank" rel="noopener"
 &gt;Daniel Heidinga&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;In the &lt;em&gt;old world order&lt;/em&gt; the deployments were infrequent so the startup time was a very small fraction of the total up time. Now in the &lt;em&gt;new world&lt;/em&gt; with CI/CD systems, microservice or serverless architectures controlling the startup time is essential. This topic is very hot right now.&lt;/p&gt;
&lt;p&gt;Daniel (&lt;a class="link" href="https://www.eclipse.org/openj9/" target="_blank" rel="noopener"
 &gt;OpenJ9&lt;/a&gt; Project Lead) explained the problem and provided possible solutions inside the JVM, focusing mainly in the use of OpenJ9&amp;rsquo;s SharedClasses.&lt;/p&gt;
&lt;div class="image"&gt;
 &lt;img src="https://farm2.staticflickr.com/1797/42184070660_c455da4142_o.jpg" alt="OpenJ9 startup sequence"&gt;
 &lt;div class="caption"&gt;OpenJ9 startup sequence&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/class_metadata/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Class Metadata: A User Guide&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/andrew_dinn/" target="_blank" rel="noopener"
 &gt;Andrew Dinn&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Andrew Dinn (&lt;a class="link" href="https://developers.redhat.com/products/openjdk/" target="_blank" rel="noopener"
 &gt;Red Hat Open JDK&lt;/a&gt;) explained clearly what is the Class Metadata and why it matters inside the JVM. He also gave some real-life use cases to explain how design decisions can incur or avoid Class Metadata costs.&lt;/p&gt;
&lt;div class="image"&gt;
 &lt;img src="https://farm2.staticflickr.com/1793/43993330371_9203459103_o.jpg" alt="Java's Metaspace Constant Pool Objects"&gt;
 &lt;div class="caption"&gt;Java's Metaspace Constant Pool Objects&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/java_world_containers/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Java in a World of Containers&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/mikael_vidstedt/" target="_blank" rel="noopener"
 &gt;Mikael Vidstedt&lt;/a&gt; and &lt;a class="link" href="https://twitter.com/MaximumGilliard" target="_blank" rel="noopener"
 &gt;Matthew Gilliard&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Mikael (Director of the JVM group at &lt;a class="link" href="https://www.oracle.com/index.html" target="_blank" rel="noopener"
 &gt;Oracle&lt;/a&gt;) and Matthew (also from Oracle) explained that Oracle is focused on maintaining Java as the main language in the containers ecosystem thanks to, according to them, some of its characteristics:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Managed language/runtime&lt;/li&gt;
&lt;li&gt;Hardware and operating system agnostic&lt;/li&gt;
&lt;li&gt;Safety and Security enforced by the JVM&lt;/li&gt;
&lt;li&gt;Reliable as compatibility is a key design goal&lt;/li&gt;
&lt;li&gt;Runtime adaptive&lt;/li&gt;
&lt;li&gt;Rich ecosystem&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Also related to reducing the startup time and footprint needed, they also explained how (using the modular system of Java 9) creating custom JREs allows you to reduce the size of the JDK needed inside the Docker container. A full JDK weights around 568 MB, the java.base module just 46 MB and a reasonable set of modules with complete capabilities could be around 60 MB. It can be further optimized using &lt;em&gt;jlink &amp;ndash;compress&lt;/em&gt; but it&amp;rsquo;s a trade-off between size and compressing/uncompressing effort.&lt;/p&gt;
&lt;p&gt;After reducing the &lt;em&gt;JDK layer&lt;/em&gt; of a container, the next battle is in the operating system layer. They announced and presented &lt;a class="link" href="http://openjdk.java.net/projects/portola/" target="_blank" rel="noopener"
 &gt;OpenJDK Portola Project&lt;/a&gt;, a port of the JDK to use &lt;a class="link" href="https://www.alpinelinux.org/" target="_blank" rel="noopener"
 &gt;Alpine Linux&lt;/a&gt; (the base image weights just 4 MB) and the &lt;a class="link" href="https://www.musl-libc.org/" target="_blank" rel="noopener"
 &gt;musl C library&lt;/a&gt;. Very impressive.&lt;/p&gt;
&lt;div class="image"&gt;
 &lt;img src="https://farm2.staticflickr.com/1774/42184070840_d94d3599b5_o.jpg" alt="OpenJDK Portola Project"&gt;
 &lt;div class="caption"&gt;OpenJDK Portola Project&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/class_data_sharing/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Class Data Sharing, Sharing Economy in the HotSpot VM&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/volker_simonis/" target="_blank" rel="noopener"
 &gt;Volker Simonis&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Volker (&lt;a class="link" href="https://www.sap.com/index.html" target="_blank" rel="noopener"
 &gt;SAP&lt;/a&gt;) introduced &lt;a class="link" href="https://docs.oracle.com/javase/8/docs/technotes/guides/vm/class-data-sharing.html" target="_blank" rel="noopener"
 &gt;Class Data Sharing (CDS)&lt;/a&gt;, explained clearly the implementation details and finally he demonstrated it&amp;rsquo;s advantages in some use cases.&lt;/p&gt;
&lt;div class="image"&gt;
 &lt;img src="https://farm2.staticflickr.com/1813/42184072030_b62cb6d319_o.jpg" alt="Class Representation in the HotSpot VM"&gt;
 &lt;div class="caption"&gt;Class Representation in the HotSpot VM&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a class="link" href="https://fosdem.org/2018/schedule/event/hairy_security/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Hairy Security, the many threats to a Java web app&lt;/strong&gt;&lt;/a&gt;, by &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/romain_pelisse/" target="_blank" rel="noopener"
 &gt;Romain Pelisse&lt;/a&gt; and &lt;a class="link" href="https://fosdem.org/2018/schedule/speaker/damien_plard/" target="_blank" rel="noopener"
 &gt;Damien Plard&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Romain (&lt;a class="link" href="https://www.redhat.com/en" target="_blank" rel="noopener"
 &gt;Red Hat&lt;/a&gt;) and Damien (&lt;a class="link" href="https://www.solarisbank.com/en/" target="_blank" rel="noopener"
 &gt;Solaris Bank&lt;/a&gt;) gave a fun and instructive talk about security, challenging some myths.&lt;/p&gt;
&lt;p&gt;They reminded us that it’s not a question of &amp;lsquo;if&amp;rsquo; but &amp;lsquo;when&amp;rsquo; you’ll be hacked.&lt;/p&gt;
&lt;br /&gt;
&lt;p&gt;If you want to read my summary of the next day you can follow this link: &lt;a class="link" href="https://luiyo.net/blog/2018/02/fosdem-2018-sunday/" &gt;&lt;strong&gt;FOSDEM 2018: Sunday&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Some things that Java developers really need to know in 2018</title><link>https://luiyo.net/en/blog/2018/01/things-that-java-developers-really-need-to-know/</link><pubDate>Tue, 23 Jan 2018 00:00:00 +0000</pubDate><guid>https://luiyo.net/en/blog/2018/01/things-that-java-developers-really-need-to-know/</guid><description>&lt;img src="https://luiyo.net/48609259497_a092b32596_b_11824793878486811474.jpg" alt="Featured image of post Some things that Java developers really need to know in 2018" /&gt;&lt;p&gt;A couple of days ago &lt;a class="link" href="https://dzone.com" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;DZone&lt;/strong&gt;&lt;/a&gt; published an article called &lt;a class="link" href="https://dzone.com/articles/5-things-java-programmer-should-learn-in-2018" target="_blank" rel="noopener"
 &gt;&lt;em&gt;9 Things Java Programmers Should Learn in 2018&lt;/em&gt;&lt;/a&gt;. I liked the idea and I even recommended the article to a couple of colleagues who are trying to reorient their professional career. After the advice I added some personal disclaimers about the content, to the point that one of my friends wisely told me:&lt;/p&gt;
&lt;blockquote&gt;
if you don't agree with these recommendations, why don't you write your own article?
&lt;/blockquote&gt;
&lt;p&gt;&amp;hellip;and that brought us here :-)&lt;/p&gt;
&lt;p&gt;The article in DZone is fine and very detailed with good recommendations but it&amp;rsquo;s not realistic. Some of the things that the author considers essential (Android development or Spring Security, for example) for me are not that important, at least from a general perspective. You can (and should) learn them if you need them, but 99% of you will survive without them.&lt;/p&gt;
&lt;p&gt;Instead of sharing my view only with a couple of colleagues, I&amp;rsquo;ll try to give a realistic and opinionated (yes, I like the word) list of things in no particular order that you need to know or learn in 2018 if you are a Java developer. Some of them are not new, but you need to be sure that you know (or master, if you want) them by the end of the year.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;m addressing only Java developers, but hopefully you&amp;rsquo;ll find something of value even if you&amp;rsquo;re not.&lt;/p&gt;
&lt;h2 id="learn-java-8-and-then-java-9"&gt;Learn Java 8, and then Java 9
&lt;/h2&gt;&lt;p&gt;January 2018 and I still find a lot of Java developers who do not know much about &lt;strong&gt;Java 8&lt;/strong&gt;. Regarding this, my recommendation clearly is to learn separately Java 8 with the huge amount of improvements it brought to the language and then, and only then, start playing with &lt;strong&gt;Java 9&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;You will be a better developer after you learn Java 8, even if in your current project they force you to code in Java 6. You&amp;rsquo;ll understand why some improvements were needed in the language and you&amp;rsquo;ll be the first in the line when a migration to Java 8 or 9 approaches in your surroundings (and it will, eventually).&lt;/p&gt;
&lt;p&gt;But let me remark this, it does not matter if you have dozens of badges in &lt;a class="link" href="https://www.codecademy.com/" target="_blank" rel="noopener"
 &gt;Codecademy&lt;/a&gt; or &lt;a class="link" href="https://www.codeschool.com/" target="_blank" rel="noopener"
 &gt;Code School&lt;/a&gt; if by the end of 2018 you are not familiar with Java 8 and Java 9.&lt;/p&gt;
&lt;h2 id="unit-testing-as-the-logical-choice"&gt;Unit Testing as the logical choice
&lt;/h2&gt;&lt;p&gt;If at this point of your career you don&amp;rsquo;t write unit tests you can stop reading the article right now, this is not going with you. If on the contrary you are already used to write unit tests for your code, your next goal is to write better tests.&lt;/p&gt;
&lt;p&gt;Are you stuck with JUnit? &lt;a class="link" href="http://junit.org/junit5/" target="_blank" rel="noopener"
 &gt;JUnit 5&lt;/a&gt; was released recently and I haven&amp;rsquo;t checked it yet, but let me recommend a more logical choice: &lt;a class="link" href="http://spockframework.org/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Spock&lt;/strong&gt;&lt;/a&gt;. Less verbose, more idiomatic, integrated stubbing and mocking, easy parametrized testing, test data tables, &amp;hellip; If you are using JUnit, there is nothing that prevents you from going to Spock (totally or at least partially to test the new features).&lt;/p&gt;
&lt;p&gt;Beside the framework, now that you are familiar with the classic code coverage metrics, take a look to &lt;a class="link" href="http://pitest.org/" target="_blank" rel="noopener"
 &gt;Pitest&lt;/a&gt; and &lt;a class="link" href="https://en.wikipedia.org/wiki/Mutation_testing" target="_blank" rel="noopener"
 &gt;mutation testing&lt;/a&gt; principles in general.&lt;/p&gt;
&lt;h2 id="jvm-internals"&gt;JVM internals
&lt;/h2&gt;&lt;p&gt;Yes, performance tuning is important and learning about it will help you in your daily work, in yearly rise negotiations and job interviews in general. But let&amp;rsquo;s take a step back, do you really know the JVM internals enough before looking at it with a magnifying glass? I&amp;rsquo;ve met a huge amount of developers and Java Architects that don&amp;rsquo;t even know what &lt;a class="link" href="https://tinyurl.com/d77yltz" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;GC&lt;/strong&gt;&lt;/a&gt; is, what does &lt;a class="link" href="https://en.wikipedia.org/wiki/Stop-the-world" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Stop The World&lt;/strong&gt;&lt;/a&gt; mean or how does a &lt;a class="link" href="https://en.wikipedia.org/wiki/Java_Classloader" target="_blank" rel="noopener"
 &gt;dynamic class loader&lt;/a&gt; work.&lt;/p&gt;
&lt;p&gt;Yes, it&amp;rsquo;s great to know how to analyze and profile an application to figure out why it&amp;rsquo;s so slow or why it crashes. But unfortunately for you, you can not always blame others. Make your best effort to understand that not everything is magic.&lt;/p&gt;
&lt;h2 id="learn-apache-groovy"&gt;Learn Apache Groovy
&lt;/h2&gt;&lt;p&gt;Once you know your weapons, it&amp;rsquo;s good that you know what you&amp;rsquo;re up against. Forget for the moment about &lt;a class="link" href="https://kotlinlang.org/" target="_blank" rel="noopener"
 &gt;Kotlin&lt;/a&gt; and &lt;a class="link" href="http://www.scala-lang.org/" target="_blank" rel="noopener"
 &gt;Scala&lt;/a&gt;, focus first on consolidating your Java skills. As with Spock, there are few excuses to prevent you from coding in &lt;a class="link" href="http://www.groovy-lang.org/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Apache Groovy&lt;/strong&gt;&lt;/a&gt;, and the learning curve is totally flat.&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="https://www.youtube.com/watch?v=SGpJafTYwOQ" target="_blank" rel="noopener"
 &gt;Groovy is not only Java without semicolons&lt;/a&gt;. The description in the project website is clear enough so let me quote it:&lt;/p&gt;
&lt;blockquote&gt;Apache Groovy is a powerful, optionally typed and dynamic language, with static-typing and static compilation capabilities, for the Java platform aimed at improving developer productivity thanks to a concise, familiar and easy to learn syntax. It integrates smoothly with any Java program, and immediately delivers to your application powerful features, including scripting capabilities, Domain-Specific Language authoring, runtime and compile-time meta-programming and functional programming.&lt;/blockquote&gt;
&lt;p&gt;OK, I said that you will likely survive without Android knowledge and for sure you&amp;rsquo;ll probably survive without learning Groovy. But even if you find it difficult to use it in your projects I firmly believe that learning Groovy will have a substantial impact on your career and will even make you a better Java developer.&lt;/p&gt;
&lt;p&gt;Join me in the next &lt;a class="link" href="http://2018.greachconf.com/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Greach Conference&lt;/strong&gt;&lt;/a&gt; and you won&amp;rsquo;t regret.&lt;/p&gt;
&lt;h2 id="code-regularly"&gt;Code regularly
&lt;/h2&gt;&lt;p&gt;As the DZone article remarks, sadly it&amp;rsquo;s usual practice to spend less time coding as your experience grows. This would deserve a totally different article, but for the moment let me stress that whatever your work experience is, you should not disconnect from programming and source code in general.&lt;/p&gt;
&lt;p&gt;There are a lot of online resources about problems to be solved or challenges in general, but you don&amp;rsquo;t even need to complicate yourself or challenge others. You can simply think about something you need at home (or at squad level) and try to create a software tool to mitigate or solve those problems. I personally would recommend both approaches: try to enjoy the technical and social part of the hackatons or coding challenges but also try to solve your needs in solitude at home.&lt;/p&gt;
&lt;p&gt;Try new data structures, learn new algorithms and understand the pros and cons of them. Force yourself to struggle solving a specific problem without using the most appropriate data structure or without loops, for example.&lt;/p&gt;
&lt;h2 id="learn-from-others-and-let-others-learn-from-you"&gt;Learn from others and let others learn from you
&lt;/h2&gt;&lt;p&gt;As others say there are only two ways to improve yourself, learning from your own experience (which is very limited) or learning from others experience (which is unlimited).&lt;/p&gt;
&lt;p&gt;Ask for recommendations and read technical books, related to the Java ecosystem or not. Learn first about the principles: clean code, design patterns, testing, functional programming, &amp;hellip;&lt;/p&gt;
&lt;p&gt;Read more code. It can be code from an open source project or code from your squad&amp;rsquo;s fellows. Try to find both the good patterns and the bad smells. Discuss with your peers about it (always politely) and let them also learn from you.&lt;/p&gt;
&lt;p&gt;Write about your experiences, in a blog preferably. The writing exercise itself will help you consolidate what you are learning. Use an &lt;a class="link" href="https://www.staticgen.com/" target="_blank" rel="noopener"
 &gt;open source static site generator&lt;/a&gt; and you&amp;rsquo;ll also learn designing your site and deploying your blog posts.&lt;/p&gt;
&lt;p&gt;Get involved with your community. Try to attend local &lt;a class="link" href="https://www.meetup.com/" target="_blank" rel="noopener"
 &gt;Meetups&lt;/a&gt; and technical conferences, eventually you&amp;rsquo;ll find the courage to even send proposals for those meetups and conferences.&lt;/p&gt;
&lt;h2 id="luis-i-already-know-everything"&gt;Luis, I already know everything!
&lt;/h2&gt;&lt;p&gt;OK, it&amp;rsquo;s not my case but if you already know everything that I mentioned (or so you think) let me give some bonus recommendations:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;If you are a &lt;strong&gt;proficient&lt;/strong&gt; Java developer, you should consider staying in the back-end. It may seem that it is unavoidable to code front-end, but there is plenty of fun and complexity in the back. Nowadays you can evolve and grow your career without changing the platform.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Learn about performance and fine tuning, at least the basics.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Learn about &lt;a class="link" href="https://kafka.apache.org/" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Apache Kafka&lt;/strong&gt;&lt;/a&gt;, it&amp;rsquo;ll open you some doors now and probably lots more in the near future.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Improve your knowledge and skills about &lt;a class="link" href="https://en.wikipedia.org/wiki/DevOps" target="_blank" rel="noopener"
 &gt;DevOps culture&lt;/a&gt; and &lt;a class="link" href="https://en.wikipedia.org/wiki/Cloud_computing" target="_blank" rel="noopener"
 &gt;Cloud Computing&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Do not settle for anything. If your job/company does not give you what you&amp;rsquo;re looking for, you must run out of there.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="feedback"&gt;Feedback
&lt;/h2&gt;&lt;p&gt;Remember, this opinionated recommendations are focused on Java developers about what they could do in 2018. It does not necessarily apply to other professionals.&lt;/p&gt;
&lt;p&gt;What do you think? Am I missing something?&lt;/p&gt;
&lt;p&gt;Let me know in the comments!&lt;/p&gt;</description></item><item><title>Greach 2017, the Groovy Spanish Conference</title><link>https://luiyo.net/en/blog/2017/04/greach-2017-groovy-spanish-conference/</link><pubDate>Mon, 03 Apr 2017 00:00:00 +0000</pubDate><guid>https://luiyo.net/en/blog/2017/04/greach-2017-groovy-spanish-conference/</guid><description>&lt;img src="https://luiyo.net/48610741043_6db87f0638_k_4798590652661677751.jpg" alt="Featured image of post Greach 2017, the Groovy Spanish Conference" /&gt;
&lt;center&gt;
 &lt;i&gt;I'll keep my intent to summarize all the important events that I'm attending, and I'll do it again in English as the audience is international. &lt;b&gt;Please, point me any mistake you may find&lt;/b&gt;&lt;/i&gt;
&lt;/center&gt;
&lt;p&gt;&lt;/p&gt;

&lt;div class="image lateral"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/48611253797_8558c7a9ab_o.jpg" alt="Greach Conference 2017"&gt;
 
 
 &lt;figcaption&gt;
 Greach Conference 2017
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;


&lt;p&gt;This week I attended, as usual since I don't remember when, to &lt;a href="http://2017.greachconf.com/"&gt;Greach 2017&lt;/a&gt;, an international conference about the &lt;a href="http://www.groovy-lang.org/"&gt;Apache Groovy language&lt;/a&gt; and &lt;a href="http://www.groovy-lang.org/ecosystem.html"&gt;ecosystem&lt;/a&gt;. Greach is held each year in Madrid but everything is in English, and nowadays it's probably one of the Top3 worldwide events about this technology.&lt;/p&gt;
&lt;p&gt;The event is organized mainly by &lt;a href="https://twitter.com/ilopmar"&gt;&lt;b&gt;Iván López&lt;/b&gt; (@ilopar)&lt;/a&gt; and &lt;a href="http://twitter.com/albertovilches"&gt;&lt;b&gt;Alberto Vilches&lt;/b&gt; (@albertovilches)&lt;/a&gt;, with some help from other colleagues and &lt;a href="http://2017.greachconf.com/#tile_sponsors"&gt;a lot of Sponsors&lt;/a&gt;. Everything was perfect: the location is great, the spaces were confortable, the wifi more or less worked fine, cafeteria in-place, free wardrobe,... the lunch boxes were far from perfect, but that's another story more related to the venue.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;TLDR;&lt;/b&gt; The conference content and speakers were great, in addition to the logistics. I missed the workshop day, but everyone told me it was also fantastic (both venue and contents). I learned a lot, not only about Groovy or Grails, but also about GraphQL, Ratpack and concurrence in general.&lt;/p&gt;
&lt;p&gt;Let me summarize some of the talks I attended:&lt;/p&gt;
&lt;ul&gt;
 &lt;li&gt;&lt;a href="http://2017.greachconf.com/sessions/make-concurrency-groovy-again/"&gt;Make concurrency groovy again&lt;/a&gt;, by &lt;a href="http://2017.greachconf.com/speakers/alonso-torres/"&gt;&lt;b&gt;Alonso Torres&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/alotor"&gt;@alotor&lt;/a&gt;). Alonso gave an excellent overview of the main available resources regarding concurrence in the Groovy ecosystem, comparing some of them in terms of design, code readability and even performance. Threads, functional style resources, parallel collections, Atomic variables, fork/join, GPars, actors... and even how to steal a bit from others (Clojure, Akka or Spark) thanks to the Java bindings. Take a look at the &lt;a href="https://www.slideshare.net/alotor/greach-17-make-concurrency-groovy-again"&gt;slides&lt;/a&gt;&lt;/li&gt;
 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://2017.greachconf.com/sessions/javaslang-groovy-the-best-of-both-worlds/"&gt;Javaslang &amp;amp; Groovy: The best of both worlds&lt;/a&gt;, by &lt;a href="http://2017.greachconf.com/speakers/ivan-lopez/"&gt;&lt;b&gt;Iván López&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/ilopmar"&gt;@ilopmar&lt;/a&gt;). Another hands-on master class by Iván, combining and comparing some of the benefits of &lt;a href="http://www.javaslang.io/"&gt;Javaslang&lt;/a&gt; with what's available out-of-the-box in Groovy. The demo part (90% of the talk) covered a lot of interesting examples: Optional vs Option, Try, Functional Interfaces, Tuples, Javaslang collections, Pattern matching, validations, ...&lt;/li&gt;
 &lt;br&gt;
 &lt;blockquote class="twitter-tweet"&gt;&lt;p lang="en" dir="ltr"&gt;Ivan talking about javaslang and groovy! &lt;a href="https://twitter.com/hashtag/greach?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#greach&lt;/a&gt; &lt;a href="https://t.co/zkxySl6SQu"&gt;pic.twitter.com/zkxySl6SQu&lt;/a&gt;&lt;/p&gt;&amp;mdash; Ryan Vanderwerf (@RyanVanderwerf) &lt;a href="https://twitter.com/RyanVanderwerf/status/847740674719887361?ref_src=twsrc%5Etfw"&gt;March 31, 2017&lt;/a&gt;&lt;/blockquote&gt;
 &lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;
 

 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://2017.greachconf.com/sessions/back-from-the-dead-http-builder-ng/"&gt;Back From The Dead: HTTP Builder NG&lt;/a&gt;, by &lt;a href="http://2017.greachconf.com/speakers/noam-tenne/"&gt;&lt;b&gt;Noam Tenne&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/NoamTenne"&gt;@NoamTenne&lt;/a&gt;). Noam gave a complete review of the features included in &lt;a href="https://github.com/http-builder-ng/http-builder-ng"&gt;HTTP Builder NG&lt;/a&gt;, the current available implementations and some advanced features and use cases like header parsers, content parsers, request interceptors or request encoders&lt;/li&gt;
 &lt;br&gt;
 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://2017.greachconf.com/sessions/hasmany-considered-harmful/"&gt;hasMany Considered Harmful&lt;/a&gt;, by &lt;a href="http://2017.greachconf.com/speakers/burt-beckwith/"&gt;&lt;b&gt;Burt Beckwith&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/burtbeckwith"&gt;@BurtBeckwith&lt;/a&gt;). Burt gave this talk for the first time in 2010 at the Spring One, pointing out some performance problems when mapping collections with any ORM tool (like GORM or Hibernate). After seven years, he revisited the topic repeating (sadly) the same warnings about more or less the same problems, some of them critical with huge data collections&lt;/li&gt;
 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://2017.greachconf.com/sessions/graphql-development-with-groovy/"&gt;GraphQL development with Groovy&lt;/a&gt;, by &lt;a href="http://2017.greachconf.com/speakers/mario-garcia/"&gt;Mario García&lt;/a&gt; (&lt;a href="https://twitter.com/marioggar"&gt;@marioggar&lt;/a&gt;). Thanks to Mario now I have a clear view of what &lt;a href="http://graphql.org/"&gt;GraphQL&lt;/a&gt; provides, and specially what it does not provide. He reviewed the main features, the logic behind schemas, types querying, hierarchy, operations, the introspective nature of GraphQL... Mario also demoed some useful combination of GraphQL with tools like &lt;a href="https://github.com/graphql/graphiql"&gt;GraphiQL&lt;/a&gt; or &lt;a href="https://facebook.github.io/relay/"&gt;Relay&lt;/a&gt;. He even teased &lt;a href="https://github.com/grooviter/gql"&gt;GQL&lt;/a&gt;, his own DSL library to use GraphQL directly from Groovy. Awesome :-)&lt;/li&gt;
 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://2017.greachconf.com/sessions/groovy-puzzlers-4-the-bytecode-bites-back/"&gt;Groovy Puzzlers 4: The Bytecode Bites Back&lt;/a&gt;, by &lt;a href="http://2017.greachconf.com/speakers/el-groovyssimo/"&gt;&lt;b&gt;El Groovyssimo&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/el_groovyssimo"&gt;@el_groovyssimo&lt;/a&gt;) and &lt;a href="http://2017.greachconf.com/speakers/noam-tenne/"&gt;&lt;b&gt;Noam Tenne&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/NoamTenne"&gt;@NoamTenne&lt;/a&gt;). Again, this was fantastic. Entertaining and somehow even educational. It's based on the &lt;a href="http://redirect.viglink.com/?format=go&amp;amp;jsonp=vglnk_149114460319816&amp;amp;key=fc09da8d2ec4b1af80281370066f19b1&amp;amp;libId=j10kgw3v01012xfw000DLef6729tbp6er&amp;amp;loc=http%3A%2F%2Fluiyo.blogspot.com.es%2F2016%2F04%2Fgreach-2016-groovy-spanish-conference.html&amp;amp;v=1&amp;amp;out=http%3A%2F%2Fwww.javapuzzlers.com%2F&amp;amp;title=Luiyolog%C3%ADa%3A%20Greach%202016%2C%20the%20Groovy%20Spanish%20conference&amp;amp;txt=%3Cb%3EJava%20Puzzlers%3C%2Fb%3E"&gt;Java Puzzlers&lt;/a&gt; created by &lt;a href="http://redirect.viglink.com/?format=go&amp;amp;jsonp=vglnk_149114464703618&amp;amp;key=fc09da8d2ec4b1af80281370066f19b1&amp;amp;libId=j10kgw3v01012xfw000DLef6729tbp6er&amp;amp;loc=http%3A%2F%2Fluiyo.blogspot.com.es%2F2016%2F04%2Fgreach-2016-groovy-spanish-conference.html&amp;amp;v=1&amp;amp;out=http%3A%2F%2Fwww.javapuzzlers.com%2Fbios.html&amp;amp;title=Luiyolog%C3%ADa%3A%20Greach%202016%2C%20the%20Groovy%20Spanish%20conference&amp;amp;txt=%3Cb%3EJoshua%20Bloch%3C%2Fb%3E%20and%20%3Cb%3ENeal%20Gafter%3C%2Fb%3E"&gt;&lt;b&gt;Joshua Bloch&lt;/b&gt; and &lt;b&gt;Neal Gafter&lt;/b&gt;&lt;/a&gt;, but focused on Groovy. Big fan of the format&lt;/li&gt;
 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://2017.greachconf.com/sessions/alexa-tell-me-im-groovy/"&gt;Alexa, Tell Me I’m Groovy&lt;/a&gt;, by &lt;a href="http://2017.greachconf.com/speakers/ryan-vanderwerf/"&gt;&lt;b&gt;Ryan Vanderwerf&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/RyanVanderwerf"&gt;@RyanVanderwerf&lt;/a&gt;). Ryan explained how the Alexa platform works and some basic info about the main SDKs: &lt;a href="https://developer.amazon.com/alexa-skills-kit"&gt;Alexa Skills Kit&lt;/a&gt; and &lt;a href="https://developer.amazon.com/alexa-voice-service"&gt;Alexa Voice Service&lt;/a&gt;. Ryan also showed how he uses Grails apps to create Alexa services and cards, and how to test them online with &lt;a href="https://echosim.io/"&gt;Echosim.io&lt;/a&gt;. Very interesting, and one of those talks in which the audience leaves with some good ideas for the future&lt;/li&gt;
 &lt;br&gt;
 &lt;blockquote class="twitter-tweet"&gt;&lt;p lang="en" dir="ltr"&gt;Alexa can do GREAT stuff! &lt;a href="https://twitter.com/RyanVanderwerf?ref_src=twsrc%5Etfw"&gt;@RyanVanderwerf&lt;/a&gt; has her tell &lt;a href="https://twitter.com/greachconf?ref_src=twsrc%5Etfw"&gt;@Greachconf&lt;/a&gt; we&amp;#39;re all &lt;a href="https://twitter.com/hashtag/Groovy?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#Groovy&lt;/a&gt; 😎 &lt;a href="https://twitter.com/amazon?ref_src=twsrc%5Etfw"&gt;@amazon&lt;/a&gt; &lt;a href="https://twitter.com/hashtag/grailsfw?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#grailsfw&lt;/a&gt; &lt;a href="https://twitter.com/groovypodcast?ref_src=twsrc%5Etfw"&gt;@groovypodcast&lt;/a&gt; &lt;a href="https://t.co/c2KfK0A7u2"&gt;pic.twitter.com/c2KfK0A7u2&lt;/a&gt;&lt;/p&gt;&amp;mdash; Ted Vinke (@tvinke) &lt;a href="https://twitter.com/tvinke/status/848082157734068224?ref_src=twsrc%5Etfw"&gt;April 1, 2017&lt;/a&gt;&lt;/blockquote&gt;
 &lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;
 

 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://2017.greachconf.com/sessions/grails-keynote/"&gt;Grails keynote&lt;/a&gt;, by &lt;a href="http://2017.greachconf.com/speakers/graeme-rocher/"&gt;&lt;b&gt;Graeme Rocher&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/graemerocher"&gt;@GraemeRocher&lt;/a&gt;). The anual &lt;a href="https://grails.org/"&gt;Grails&lt;/a&gt; keynote in Greach, in which Graeme showed what came with Grails 3.2 (improvements in the awesome JSON views, in profiles, GORM 6, ...) and what will come with Grails 3.3: GORM 6.1 (already available independently), Spring Boot 1.5.x and Hibernate 5.2. Regarding &lt;a href="http://gorm.grails.org/"&gt;GORM&lt;/a&gt;, the main things for the 6.1 version are: Improvements in common AST transforms, common services, and Data Services, package scanning and a better mapping DSL. Graeme showed some of the new features and they looked amazing, very good work :-)&lt;/li&gt;
 &lt;br&gt;
 &lt;blockquote class="twitter-tweet"&gt;&lt;p lang="en" dir="ltr"&gt;What&amp;#39;s new with &lt;a href="https://twitter.com/hashtag/grailsfw?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#grailsfw&lt;/a&gt;?&lt;a href="https://twitter.com/graemerocher?ref_src=twsrc%5Etfw"&gt;@graemerocher&lt;/a&gt; delivers keynote &lt;a href="https://twitter.com/greachconf?ref_src=twsrc%5Etfw"&gt;@greachconf&lt;/a&gt; and fills us in! &lt;a href="https://t.co/RJ029GnXGN"&gt;pic.twitter.com/RJ029GnXGN&lt;/a&gt;&lt;/p&gt;&amp;mdash; Object Computing (@ObjectComputing) &lt;a href="https://twitter.com/ObjectComputing/status/848103571509956610?ref_src=twsrc%5Etfw"&gt;April 1, 2017&lt;/a&gt;&lt;/blockquote&gt;
 &lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;
 

 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://2017.greachconf.com/sessions/geb-best-practices/"&gt;Geb best practices&lt;/a&gt;, by &lt;a href="http://2017.greachconf.com/speakers/marcin-erdmann/"&gt;&lt;b&gt;Marcin Erdmann&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/marcinerdmann"&gt;@MarcinErdmann&lt;/a&gt;). Marcin gave us some tips to make a better use of &lt;a href="http://www.gebish.org/"&gt;Geb&lt;/a&gt;, starting with the reminder that a Module is a Navigator, that Navigators are iterable, and the advantages of overloading some methods, having dynamic base urls or page parametrizations. He also explained how to inject Javascript into pages (if needed). Other best practices: using strongly typed Geb code, tracking the current page type, always keep the &lt;i&gt;at&lt;/i&gt; checks simple and quick and that modules are not meant only for reuse but also to isolate complex blocks.&lt;/li&gt;
 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://2017.greachconf.com/sessions/mastering-async-in-ratpack/"&gt;Mastering Async In Ratpack&lt;/a&gt;, by &lt;a href="http://2017.greachconf.com/speakers/danny-hyun/"&gt;&lt;b&gt;Danny Hyun&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/Lspacewalker"&gt;@Lspacewalker&lt;/a&gt;). Danny went beyond the basic concepts of concurrency in a fantastic code-driven talk, showing a lot of good examples about the complexity of this kind of problems. He explained how &lt;a href="https://ratpack.io/"&gt;Ratpack&lt;/a&gt; comes to the rescue, how the Ratpack concept of Promise works, how to manage them and how to test complex concurrent execution flows. Very complete for 45 minutes and very well presented. Homework: read about &lt;a href="http://www.kegel.com/c10k.html"&gt;the C10K problem&lt;/a&gt; and &lt;a href="https://lmax-exchange.github.io/disruptor/"&gt;the Disruptor pattern&lt;/a&gt;&lt;/li&gt;
 &lt;br&gt;
 &lt;blockquote class="twitter-tweet"&gt;&lt;p lang="en" dir="ltr"&gt;Notes for Rapid Ratpack Web app development &lt;a href="https://t.co/XPKWNA3dg1"&gt;https://t.co/XPKWNA3dg1&lt;/a&gt;&lt;a href="https://twitter.com/greachconf?ref_src=twsrc%5Etfw"&gt;@greachconf&lt;/a&gt; &lt;a href="https://twitter.com/hashtag/greach?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#greach&lt;/a&gt; &lt;a href="https://twitter.com/hashtag/groovylang?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#groovylang&lt;/a&gt;&lt;/p&gt;&amp;mdash; not the mama (@Lspacewalker) &lt;a href="https://twitter.com/Lspacewalker/status/847814994548936704?ref_src=twsrc%5Etfw"&gt;March 31, 2017&lt;/a&gt;&lt;/blockquote&gt;
 &lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;
 

&lt;/ul&gt;
&lt;br&gt;
&lt;p&gt;See you in &lt;b&gt;Greach 2018&lt;/b&gt;!!&lt;/p&gt;</description></item><item><title>Greach 2016, the Groovy Spanish conference</title><link>https://luiyo.net/en/blog/2016/04/greach-2016-groovy-spanish-conference/</link><pubDate>Fri, 15 Apr 2016 00:00:00 +0000</pubDate><guid>https://luiyo.net/en/blog/2016/04/greach-2016-groovy-spanish-conference/</guid><description>&lt;img src="https://luiyo.net/48612088816_8d6e9d352a_o_7492863841038485450.png" alt="Featured image of post Greach 2016, the Groovy Spanish conference" /&gt;
&lt;center&gt;
 &lt;i&gt;I'll keep my intent to summarize all the important events that I'm attending, and I'll do it again in English as the audience is international. &lt;b&gt;Please, point me any mistake you may find&lt;/b&gt;&lt;/i&gt;
&lt;/center&gt;
&lt;br&gt;
&lt;p&gt;This last weekend I had the opportunity to attend &lt;a href="http://greachconf.com/"&gt;&lt;b&gt;Greach 2016&lt;/b&gt;&lt;/a&gt;. &lt;b&gt;Greach&lt;/b&gt; is an international conference about the &lt;a href="http://www.groovy-lang.org/"&gt;&lt;b&gt;Groovy&lt;/b&gt; language&lt;/a&gt; and &lt;a href="http://www.groovy-lang.org/ecosystem.html"&gt;ecosystem&lt;/a&gt;, it's hosted here in Madrid but the conference is 100% in English to successfully attract top speakers and attendees. This was the &lt;b&gt;5th edition&lt;/b&gt; of the conference, consolidated as one of the biggest events worldwide about Groovy.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;TLDR;&lt;/b&gt; You shouldn't miss this gathering if you have a minimum interest in this technology. Top speakers and high quality content are guaranteed in a confortable and thought provoking environment. &lt;b&gt;Totally worth it&lt;/b&gt;.&lt;/p&gt;
&lt;p&gt;Everything was (as expected) brilliantly organized thanks to &lt;a href="https://twitter.com/ilopmar"&gt;&lt;b&gt;Iván López&lt;/b&gt; (@ilopar)&lt;/a&gt;, &lt;a href="https://twitter.com/albertovilches"&gt;&lt;b&gt;Alberto Vilches&lt;/b&gt; (@albertovilches)&lt;/a&gt; and &lt;a href="http://greachconf.com/#sponsors"&gt;a lot of Sponsors&lt;/a&gt;. The venue changed from previous years, and &lt;a href="http://www.teatrosluchana.es/"&gt;&lt;b&gt;Teatros Luchana&lt;/b&gt;&lt;/a&gt; was also a success. Both auditoriums and networking space had the proper dimensions, very good location, a very handy cafeteria, free wardrobe, more than decent food,... Maybe the sponsors area could have been larger, but everything else was more than correct.&lt;/p&gt;
&lt;p&gt;Let me summarize:&lt;/p&gt;
&lt;ul&gt;
 &lt;li&gt;&lt;a href="http://greachconf.com/speakers/guillaume-laforge-a-groovy-journey-in-open-source/"&gt;A Groovy journey in Open Source&lt;/a&gt;, by &lt;a href="http://glaforge.appspot.com/"&gt;&lt;b&gt;Guillaume Laforge&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/glaforge"&gt;@glaforge&lt;/a&gt;, Apache Groovy Project VP). Guillaume made an interesting overview of Groovy's history, from its birth in 2003 to its current status as a top Open Source programming language inside the &lt;a href="http://www.apache.org/"&gt;Apache Software Foundation&lt;/a&gt;, remarking some of the main milestones. The audience particularly appreciated when he explained extensively about the current situation, when no one has the maintenance and evoultion of Groovy as its full-time paid job.&lt;/li&gt;
 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://greachconf.com/speakers/soren-berg-glasius-the-advantages-of-grails/"&gt;The advantages of Grails&lt;/a&gt;, by &lt;a href="https://about.me/sbglasius"&gt;&lt;b&gt;Søren Berg Glasius&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/sbglasius"&gt;@sbglasius&lt;/a&gt;, &lt;a href="https://grails.org/"&gt;Grails&lt;/a&gt; team member and &lt;a href="https://twitter.com/gr8conf"&gt;@GR8Conf&lt;/a&gt; organizer). Søren made a nice introduction to &lt;b&gt;Grails&lt;/b&gt;, explaining what comes out-of-the-box: GORM, a rich controller layer, GSPs technology, an embedded Tomcat, on-the-fly reloading, Spring DI, i18n, transactional services control, easy taglib generation, Gradle and a useful command line tool.&lt;/li&gt;
 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://greachconf.com/speakers/jacob-aae-mikkelsen-geb-for-browser-automation/"&gt;Geb for Browser Automation&lt;/a&gt;, by &lt;a href="http://grydeske.net/"&gt;&lt;b&gt;Jacob Aae Mikkelsen&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/jacobaae"&gt;@jacobaae&lt;/a&gt;, Software Engineer at Lego and the hands behind the weekly &lt;a href="http://grydeske.net/news/index"&gt;Grails Diary&lt;/a&gt;). I received more than I expected, it was a great talk about advanced tips and tricks using &lt;a href="http://www.gebish.org/"&gt;Geb&lt;/a&gt; for testing automation. Pro tip: extending GebReportingSpec to make captures before and after each test.&lt;/li&gt;
 &lt;br&gt;
 &lt;blockquote class="twitter-tweet"&gt;&lt;p lang="en" dir="ltr"&gt;Slides for my Geb talk: &lt;a href="https://t.co/qU8YiSpZp2"&gt;https://t.co/qU8YiSpZp2&lt;/a&gt; code (presentation and application): &lt;a href="https://t.co/PNOmj7UQ7b"&gt;https://t.co/PNOmj7UQ7b&lt;/a&gt; &lt;a href="https://twitter.com/hashtag/greach?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#greach&lt;/a&gt;&lt;/p&gt;&amp;mdash; Jacob Aae Mikkelsen (@JacobAae) &lt;a href="https://twitter.com/JacobAae/status/718426171432693761?ref_src=twsrc%5Etfw"&gt;April 8, 2016&lt;/a&gt;&lt;/blockquote&gt;
 &lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;
 

 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://greachconf.com/speakers/noam-tenne-groovy-powered-clean-code/"&gt;Groovy Powered Clean Code&lt;/a&gt;, by &lt;a href="http://www.10ne.org/"&gt;&lt;b&gt;Noam Tenne&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/noamtenne"&gt;@NoamTenne&lt;/a&gt;, Backend Engineer at &lt;a href="http://codefresh.io/"&gt;Codefresh&lt;/a&gt;). Noam emphasized (as expected) the importance of clean code, focusing on how Groovy itself can improve our codebase: JSON native support, checked exceptions, default imports, AST transformations, extension modules, scripts,...&lt;/li&gt;
 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://greachconf.com/speakers/burt-beckwith-dynamic-gorm/"&gt;Dynamic GORM&lt;/a&gt;, by &lt;a href="http://burtbeckwith.com/blog/"&gt;&lt;b&gt;Burt Beckwith&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/burtbeckwith"&gt;@BurtBeckwith&lt;/a&gt;, Grails core committer and plugin developer). Burt showed a lot of internal features of &lt;a href="https://grails.github.io/grails-doc/latest/guide/GORM.html"&gt;GORM&lt;/a&gt;, and how he is arranging some useful improvements in a promising open source library (which will be published shortly).&lt;/li&gt;
 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://greachconf.com/speakers/olga-maciaszek-sharma-creating-and-testing-rest-contracts-with-accurest-gradle-plugin/"&gt;Creating and testing REST contracts with Accurest Gradle Plugin&lt;/a&gt;, by &lt;a href="http://olgamaciaszek.github.io/"&gt;&lt;b&gt;Olga Maciaszek-Sharma&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/olga_maciaszek"&gt;@olga_maciaszek&lt;/a&gt;, Java and Groovy Developer at &lt;a href="https://twitter.com/Codearte"&gt;Codearte&lt;/a&gt;). Olga started with an interesting reflection about the absence of contract compliance in REST, and its importance in microservice-based systems. Do we need to test all after the release of any microservice? Do we test them independently mocking everything else? How will we notice if a contract changes? The last part of her talk was an introduction to &lt;a href="https://github.com/Codearte/accurest"&gt;Accurest&lt;/a&gt;, a Gradle plugin to create REST contracts and to verify its compliance with automatically generated Spock tests. Very promising.&lt;/li&gt;
 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://greachconf.com/speakers/alex-soto-bueno-continuous-delivery-as-code-with-jenkins-and-gradle/"&gt;Continuous Delivery as Code with Jenkins and Gradle&lt;/a&gt;, by &lt;a href="http://www.lordofthejars.com/"&gt;&lt;b&gt;Alex Soto&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/alexsotob"&gt;@alexsotob&lt;/a&gt;, Software Engineer at &lt;a href="https://www.cloudbees.com/"&gt;CloudBees&lt;/a&gt;). Alex started with the principles behind &lt;a href="https://en.wikipedia.org/wiki/Continuous_delivery"&gt;CD&lt;/a&gt;: deliver faster, sooner and better. Then he remarked the main idea of agile: Deliver business value more frequently. After that, he metioned some interesting tools like &lt;a href="https://github.com/serenity-bdd"&gt;Serenity&lt;/a&gt; to make BDD or &lt;a href="http://gatling.io/"&gt;Gatling&lt;/a&gt; for stress testing, and several tips to improve your CD using Gradle and Jenkins.&lt;/li&gt;
 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://greachconf.com/speakers/alonso-torres-ortiz-down-the-rabbitmq-hole/"&gt;Down the RabbitMQ hole&lt;/a&gt;, by &lt;a href="https://github.com/Alotor"&gt;&lt;b&gt;Alonso Torres&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/alotor"&gt;@alotor&lt;/a&gt;, Software engineer at &lt;a href="http://www.kaleidos.net/"&gt;Kaleidos&lt;/a&gt;). Alonso amazed the audience with a curious proof of concept making a working WebSocket infrastructure using &lt;a href="https://www.rabbitmq.com/"&gt;RabbitMQ&lt;/a&gt; (thanks to the STOMP protocol), Spring Integration and Groovy. Awesome.&lt;/li&gt;
 &lt;br&gt;
 &lt;blockquote class="twitter-tweet"&gt;&lt;p lang="en" dir="ltr"&gt;&lt;a href="https://twitter.com/hashtag/greach?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#greach&lt;/a&gt; you can check the slides of my talk &amp;quot;Down The RabbitMQ Hole&amp;quot; here &lt;a href="https://t.co/7UVnOP5tjY"&gt;https://t.co/7UVnOP5tjY&lt;/a&gt; I hope you enjoyed it :)&lt;/p&gt;&amp;mdash; Alonso Torres (@alotor) &lt;a href="https://twitter.com/alotor/status/718487460649545728?ref_src=twsrc%5Etfw"&gt;April 8, 2016&lt;/a&gt;&lt;/blockquote&gt;
 &lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;
 

 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://greachconf.com/speakers/andres-viedma-operating-microservices-with-groovy/"&gt;Operating Microservices with Groovy&lt;/a&gt;, by &lt;a href="https://github.com/andresviedma"&gt;&lt;b&gt;Andrés Viedma&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/andres_viedma"&gt;@andres_viedma&lt;/a&gt;, Software Engineer at Tuenti). Andrés uses Groovy mainly for testing and scripting, and explained some examples of how Groovy makes his day thanks to its dynamic nature. As an example he showed, demo included, how he makes dynamic curl petitions using Groovy's JsonRpcClient.&lt;/li&gt;
 &lt;br&gt;
 &lt;blockquote class="twitter-tweet"&gt;&lt;p lang="en" dir="ltr"&gt;Our friendly troll &lt;a href="https://twitter.com/andres_viedma?ref_src=twsrc%5Etfw"&gt;@andres_viedma&lt;/a&gt; talks about testing microservices Using &lt;a href="https://twitter.com/ApacheGroovy?ref_src=twsrc%5Etfw"&gt;@ApacheGroovy&lt;/a&gt; &lt;a href="https://twitter.com/hashtag/greach?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#greach&lt;/a&gt; &lt;a href="https://t.co/TGGlx7O3Cd"&gt;pic.twitter.com/TGGlx7O3Cd&lt;/a&gt;&lt;/p&gt;&amp;mdash; Greach (@greachconf) &lt;a href="https://twitter.com/greachconf/status/718465232478289920?ref_src=twsrc%5Etfw"&gt;April 8, 2016&lt;/a&gt;&lt;/blockquote&gt;
 &lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;
 

 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://greachconf.com/agenda/"&gt;Grails Keynote&lt;/a&gt;, by &lt;a href="https://github.com/graemerocher"&gt;&lt;b&gt;Graeme Rocher&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/graemerocher"&gt;@GraemeRocher&lt;/a&gt;, Grails Project Lead). In this interesting keynote Graeme talked about the upcoming Grails 3 and its importance in the future. How Grails has adapted to the current and future needs through diverse and powerful profiles (rest-api, angular, plugin, web-plugin,...). He made an overview of the REST API profile and it looked awesome: No GSP, specific plugins, specific ui plugins, extensible and customizable Json/Markup views,... Brilliant and very useful.&lt;/li&gt;
 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://greachconf.com/speakers/alvaro-sanchez-mariscal-mastering-grails-3-plugins/"&gt;Mastering Grails 3 plugins&lt;/a&gt;, by &lt;a href="http://alvarosanchez.github.io/"&gt;&lt;b&gt;Álvaro Sánchez-Mariscal&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/alvaro_sanchez"&gt;@alvaro_sanchez&lt;/a&gt;, Grails committer at &lt;a href="https://twitter.com/ObjectComputing"&gt;ObjectComputing&lt;/a&gt;). Álvaro explained in detail how Grails 3 plugins work, focusing on best practises. He also gave some tips to improve your plugins, with bug emphasis on modularization and tidiness.&lt;/li&gt;
 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://greachconf.com/speakers/andres-almiray-gradle-glam-plugins-galore/"&gt;Gradle Glam: Plugins Galore&lt;/a&gt;, by &lt;a href="http://jroller.com/aalmiray/"&gt;&lt;b&gt;Andrés Almiray&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/aalmiray"&gt;@aalmiray&lt;/a&gt;, Griffon project lead, Basilisk project lead, Java Champion). Andrés gave a complete review, live demo included, of several plugins for &lt;a href="http://gradle.org/"&gt;Gradle&lt;/a&gt;. I will highlight some of them: versions (to manage dependencies), license (to update license headers and even download the license docs), versioning (to add the git hash to the project manifest), coveralls (produces an awesome report on coverage) and another to publish generated docs (with ascii doctor, for example) automatically to gh-pages in Github.&lt;/li&gt;
 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://greachconf.com/speakers/mario-garcia-creating-ast-s-the-painful-truth/"&gt;Creating ASTT’s the painful truth?&lt;/a&gt;, by &lt;a href="http://desmontandojava.blogspot.com.es/"&gt;&lt;b&gt;Mario García&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/marioggar"&gt;@marioggar&lt;/a&gt;, Software Engineer at &lt;a href="http://www.kaleidos.net/"&gt;Kaleidos&lt;/a&gt;). Mario dared to talk about AST Transformations, giving an extraordinary explanation of the theory behind them, showing a lot of code and sharing several good &amp;amp; bad experiences with them. He explained when and why its a good idea to apply ASTTs, some improvement tips and even tricks to reduce your AST code using ASTTs or combining them. Impressive as usual.&lt;/li&gt;
 &lt;br&gt;
 &lt;blockquote class="twitter-tweet"&gt;&lt;p lang="es" dir="ltr"&gt;Logró conseguido por &lt;a href="https://twitter.com/marioggar?ref_src=twsrc%5Etfw"&gt;@marioggar&lt;/a&gt; : dar una charla sobre un tema con el Dios de ese tema entre los asistentes :) &lt;a href="https://t.co/DjtorAdDqS"&gt;pic.twitter.com/DjtorAdDqS&lt;/a&gt;&lt;/p&gt;&amp;mdash; Jerónimo López (@jerolba) &lt;a href="https://twitter.com/jerolba/status/718740341671796736?ref_src=twsrc%5Etfw"&gt;April 9, 2016&lt;/a&gt;&lt;/blockquote&gt;
 &lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;
 

 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://greachconf.com/speakers/stephan-classen-make-your-asciidoctor-groovy/"&gt;Make your Asciidoctor Groovy&lt;/a&gt;, by &lt;a href="https://github.com/sclassen"&gt;&lt;b&gt;Stephan Classen&lt;/b&gt;&lt;/a&gt; (Software Engineer at &lt;a href="http://www.canoo.com/"&gt;Canoo&lt;/a&gt;). Stephan explained &lt;a href="https://github.com/sclassen/asciidoctorj-screenshot"&gt;Asciidoctor's screenshot extension&lt;/a&gt;, and how easy it may be used with &lt;b&gt;Geb&lt;/b&gt; to improve your documentation updating automatically every capture in your manuals after each build. Stephan also explained how the conversion process of &lt;a href="http://asciidoctor.org/"&gt;AsciiDoctor&lt;/a&gt; works, in order to hack any step to adapt the resulting document. Very useful info :-)&lt;/li&gt;
 &lt;br&gt;
 &lt;li&gt;&lt;a href="http://greachconf.com/agenda/"&gt;Groovy Puzzlers S03 – The Unstoppable Puzzlers Hit Again!&lt;/a&gt;, by &lt;a href="http://www.10ne.org/"&gt;&lt;b&gt;Noam Tenne&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/noamtenne"&gt;@NoamTenne&lt;/a&gt;) and
 &lt;strike&gt;
 Andrés Almiray
 &lt;/strike&gt;&lt;b&gt;El Groovyssimo&lt;/b&gt; (&lt;a href="https://twitter.com/el_groovyssimo"&gt;@el_groovyssimo&lt;/a&gt;). I loved this contest, entertainment at its finest and very very educational. It's based on the mythic &lt;a href="http://www.javapuzzlers.com/"&gt;&lt;b&gt;Java Puzzlers&lt;/b&gt;&lt;/a&gt; tradition created by &lt;a href="http://www.javapuzzlers.com/bios.html"&gt;&lt;b&gt;Joshua Bloch&lt;/b&gt; and &lt;b&gt;Neal Gafter&lt;/b&gt;&lt;/a&gt;, but migrated to Groovy mainly by &lt;a href="https://twitter.com/jbaruch"&gt;&lt;b&gt;JBaruch&lt;/b&gt;&lt;/a&gt;. Some intriguing blocks of Groovy code are shown and the audience needs to choose between 4 possible outputs. Obviously it's easy to miss, but hard not to laugh and learn afterwards. Hilarious.&lt;/li&gt;
 &lt;blockquote class="twitter-tweet"&gt;&lt;p lang="en" dir="ltr"&gt;Having so much fun trying to solve the &lt;a href="https://twitter.com/hashtag/groovypuzzlers?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#groovypuzzlers&lt;/a&gt; at the &lt;a href="https://twitter.com/greachconf?ref_src=twsrc%5Etfw"&gt;@greachconf&lt;/a&gt; &lt;a href="https://t.co/oujCaepcHA"&gt;pic.twitter.com/oujCaepcHA&lt;/a&gt;&lt;/p&gt;&amp;mdash; Andrés Viedma (@andres_viedma) &lt;a href="https://twitter.com/andres_viedma/status/718782613536772096?ref_src=twsrc%5Etfw"&gt;April 9, 2016&lt;/a&gt;&lt;/blockquote&gt;
 &lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;
 

&lt;/ul&gt;
&lt;br&gt;
&lt;p&gt;See you in &lt;b&gt;Greach 2017&lt;/b&gt;!!&lt;/p&gt;</description></item><item><title>FOSDEM 2016: Sunday</title><link>https://luiyo.net/en/blog/2016/03/fosdem-2016-sunday/</link><pubDate>Thu, 03 Mar 2016 00:00:00 +0000</pubDate><guid>https://luiyo.net/en/blog/2016/03/fosdem-2016-sunday/</guid><description>&lt;img src="https://luiyo.net/48612116266_28fd5dc9d8_o_1892755632889434678.jpg" alt="Featured image of post FOSDEM 2016: Sunday" /&gt;
&lt;p&gt;&lt;i&gt;Disclaimer: I attended FOSDEM in Brussels last January. I should have written this weeks ago but better late than ever, right?&lt;/i&gt;&lt;/p&gt;

&lt;div class="image lateral"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/48611764908_b8034da830_o.jpg" alt="FOSDEM 2016"&gt;
 
 
 &lt;figcaption&gt;
 FOSDEM 2016
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;


&lt;p&gt;You can read about the rest of my FOSDEM here:&lt;/p&gt;
&lt;ul class="spacious"&gt;
 &lt;li&gt;&lt;a href="https://luiyo.net/blog/2016/03/fosdem-2016-friday/"&gt;FOSDEM 2016: Friday&lt;/a&gt;&lt;/li&gt;
 &lt;li&gt;&lt;a href="https://luiyo.net/blog/2016/03/fosdem-2016-saturday/"&gt;FOSDEM 2016: Saturday&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;As a &lt;b&gt;retrospective&lt;/b&gt;, I attended a lot of talks and almost all of them were very interesting, but looking back now I realize that I should've spent more time in the stands and aisles. I expected to do networking when forced by room capacity issues, but luckily we never suffered this problem despite attending some overcrowded talks (with a lot of people having to stay outside). Perhaps it wasn't so bad, because even so I spent a lot of money on textile products :-D&lt;/p&gt;
&lt;p&gt;Our &lt;a href="https://fosdem.org/"&gt;&lt;b&gt;FOSDEM&lt;/b&gt;&lt;/a&gt; Sunday ended being much like the day before. A large majority of the talks I attended were in the &lt;a href="https://fosdem.org/2016/schedule/track/legal_and_policy_issues/"&gt;Legal and Policy Issues&lt;/a&gt; track.&lt;/p&gt;
&lt;p&gt;Let me summarize:&lt;/p&gt;
&lt;ul class="spacious"&gt;
 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/event/geo_gnome/"&gt;Building a geo-aware Operating System&lt;/a&gt;, by &lt;a href="https://zee-nix.blogspot.com/"&gt;&lt;b&gt;Zeeshan Ali&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/zeenix"&gt;@zeenix&lt;/a&gt;, Gnome developer, &lt;a href="http://www.redhat.com/"&gt;Red Hat&lt;/a&gt;). I was very thrilled with this talk, but it didn't meet my expectations. Zeeshan (and others) have developed great tools for the Gnome desktop: &lt;b&gt;geoclue&lt;/b&gt;, &lt;b&gt;geocode-glib&lt;/b&gt; and the integration with &lt;b&gt;GNOME Maps&lt;/b&gt; seemed great, but I expected some less obvious features (from the functional point of view, of course) than locating yourself on a map. Having said that, geo-awareness in mobile devices was a total revolution, and I'm sure sooner or later it'll also be strongly reflected in our desktops&lt;/li&gt;
 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/event/geo_gsoc/"&gt;Results of Google Summer of Code 2015 at OSGeo&lt;/a&gt;, by &lt;b&gt;Anne Ghisla&lt;/b&gt; and &lt;b&gt;Margherita Di Leo&lt;/b&gt; (&lt;a href="https://developers.google.com/open-source/gsoc/"&gt;Google Summer of Code&lt;/a&gt; tutors). Being a member of the &lt;a href="https://wiki.osmfoundation.org/"&gt;&lt;b&gt;OpenStreetMap Foundation&lt;/b&gt;&lt;/a&gt; and &lt;a href="http://hdyc.neis-one.org/?Luiyo"&gt;an addicted mapper&lt;/a&gt;, I felt the need to attend this talk. It ended up being an enumeration of projects, without the necessary detail to make the explanation amusing or interesting. At least I recognize that they talked about GSoC with great enthusiasm, made me want to participate at some point&lt;/li&gt;
 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/event/foundations_threat/"&gt;Open source foundations: threat or menace?&lt;/a&gt;, by &lt;b&gt;Richard Fontana&lt;/b&gt; (&lt;a href="https://twitter.com/richardfontana"&gt;@richardfontana&lt;/a&gt;, IP, Open Source and Patent lawyer at &lt;a href="http://www.redhat.com/"&gt;Red Hat&lt;/a&gt;). Mr Fontana gave us a very interesting and thought provoking talk. After a brief explanation about legal differences between 501(c)(3) vs. 501(c)(6) foundation types in the US (and why some Open Source foundations have chosen one or the other), he detailed his concerns about the work carried out by some foundations:
 &lt;ul&gt;
 &lt;li&gt;Sometimes foundations drive to an &lt;i&gt;illusion&lt;/i&gt; of property&lt;/li&gt;
 &lt;li&gt;We have seen examples of foundations "&lt;i&gt;artificially&lt;/i&gt;" prolonging the life of a project, which is not always positive&lt;/li&gt;
 &lt;li&gt;Some Open Source projects receive legal support by foundations and liability protection, but he explained that it should only apply if the foundation is &lt;b&gt;in charge&lt;/b&gt; of what the project (or volunteer) does. Sometimes foundations (like &lt;a href="http://www.apache.org/"&gt;&lt;b&gt;Apache Software Foundation&lt;/b&gt;&lt;/a&gt; or &lt;a href="https://eclipse.org/org/"&gt;&lt;b&gt;Eclipse Foundation&lt;/b&gt;&lt;/a&gt;) presume of the independence of their projects, and this is a contradiction&lt;/li&gt;
 &lt;li&gt;Foundations serving only as right holders in trademark issues&lt;/li&gt;
 &lt;li&gt;In some foundations there is not a clear barrier between business management and technical management, as it should be&lt;/li&gt;
 &lt;li&gt;Sometimes, the amount of power inside a foundation is derived by the amount of money donated (in cash or man hours), this gives the message that the project from those foundations are &lt;b&gt;for sale&lt;/b&gt;&lt;/li&gt;
 &lt;/ul&gt;&lt;/li&gt;
 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/event/jep243/"&gt;JEP 243: Java-Level JVM Compiler Interface and what it can be used for&lt;/a&gt;, by &lt;b&gt;Christian Thalinger&lt;/b&gt; (&lt;a href="https://twitter.com/christhalinger"&gt;@christhalinger&lt;/a&gt;, Member of the &lt;a href="http://openjdk.java.net/groups/hotspot/"&gt;HotSpot compiler team&lt;/a&gt;, &lt;a href="http://oracle.com/"&gt;Oracle&lt;/a&gt;). This was a very technical talk about how this JEP have changed the Compiler Interface, included into de JDK 9 repositories. Christian explained some of their goals: mainly examine and intercept JIT activity and record events related to the compilation&lt;/li&gt;

 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/event/safety_critical_foss/"&gt;Status of safety-critical FOSS&lt;/a&gt;, by &lt;a href="https://github.com/jeremiah"&gt;&lt;b&gt;Jeremiah C. Foster&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/miahfost"&gt;@miahfost&lt;/a&gt;). Back in the Legal DevRoom, Jeremiah gave us a very interesting talk starting with a lot of information about safety-critical software and why it is important that software freedom becomes more present in this context. He also discussed it may be even possible to certify GNU/Linux at a safety-critical level, and how copyleft should be mandatory given that it provides more &lt;b&gt;transparency&lt;/b&gt; not only in the code itself but also in the entire development process. In GPLv3 licensed projects he explained some concerns about how the install info may require disclosure of the encryption keys used to sign a boot image. Another concern in the industry is that end users should not be able to modify embedded software in safety-critical systems.&lt;/li&gt;

 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/event/conduct_and_copyleft/"&gt;Comparing codes of conduct to copyleft licenses&lt;/a&gt;, by &lt;a href="http://www.harihareswara.net/"&gt;&lt;b&gt;Sumana Harihareswara&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/brainwane"&gt;@brainwane&lt;/a&gt;, founder of &lt;a href="http://www.changeset.nyc/"&gt;Changeset Consulting&lt;/a&gt;). Sumana gave a very well argued speech without media support, leaving clues of a probable theatrical past (or present). The basic comparison was that, just like the GPL restricts some developer's freedom (about redistributing under an incompatible license) to protect &lt;b&gt;all users' freedom&lt;/b&gt; to use, inspect or modify the code, in the same way Codes of Conduct restrict some people's behaviour to increase &lt;b&gt;everyone's freedom&lt;/b&gt;. I share Sumana's point of view, also when she said that (&lt;a href="https://fosdem.org/2016/schedule/event/conduct_and_copyleft/attachments/paper/1258/export/events/attachments/conduct_and_copyleft/paper/1258/fosdem_coc_copyleft_talk.html"&gt;I quote&lt;/a&gt;): &lt;i&gt;we will make better software and have a greater impact if more people, and more different kinds of people, find our communities more appealing to work with&lt;/i&gt;&lt;/li&gt;

 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/event/adopt_dco/"&gt;Who's afraid of the DCO and why you should help adopt the DCO for your project&lt;/a&gt;, by &lt;a href="http://blog.hansenpartnership.com/"&gt;&lt;b&gt;James Bottomley&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/jejb_"&gt;@jejb_&lt;/a&gt;, &lt;a href="https://kernel.org/doc/htmldocs/scsi/index.html"&gt;Linux kernel SCSI subsystem&lt;/a&gt; Maintainer, Odin CTO). Another brilliant talk, with the added bonus that James used &lt;a href="https://github.com/impress/impress.js/&amp;quot;"&gt;Impress.js&lt;/a&gt; :-D James presented &lt;a href="http://developercertificate.org/"&gt;&lt;b&gt;DCO&lt;/b&gt;&lt;/a&gt; as an alternative to the popular &lt;a href="https://en.wikipedia.org/wiki/Contributor_License_Agreement"&gt;CLAs&lt;/a&gt;. He explained why your project needs a contributor agreement in the first place, why Linux adopted the DCO ten years ago, and a lot of info about best practices and possible problems&lt;/li&gt;

 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/event/license_pickers/"&gt;Pick a peck of license pickers, An in-depth look at efforts to make choosing a license easy&lt;/a&gt;, by &lt;a href="http://status.fsf.org/johns"&gt;&lt;b&gt;John Sullivan&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/johns_fsf"&gt;@johns_fsf&lt;/a&gt;, Executive Director of the &lt;a href="http://www.fsf.org/"&gt;Free Software Foundation&lt;/a&gt;). John did an interesting analysis of the current options to choose a software license, beginning with the claim that something has to be done because there are still a lot of projects without license but in a clever way to reduce the license proliferation. There are some guides (&lt;a href="http://www.gnu.org/licenses/license-recommendations.html"&gt;like the one the FSF itself has&lt;/a&gt;) which represent a significant barrier for most users. A lot of text with sometimes hard to understand differences between options. Apart from this approach, there are some popular tools like &lt;a href="http://choosealicense.com/"&gt;choosealicense.com&lt;/a&gt; from &lt;a href="http://github.com/"&gt;Github&lt;/a&gt; or the &lt;a href="http://creativecommons.org/choose/"&gt;Creative Commons' license chooser&lt;/a&gt;, but they also present several problems. The options order is important, the descriptions may be misleading, summaries are not fair... The QA turn was also brilliant, given that &lt;a href="https://github.com/bkeepers"&gt;&lt;b&gt;Brandon Keepers&lt;/b&gt;&lt;/a&gt; (Open Source Lead in Github) was there to argue their position.&lt;/li&gt;

 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/event/keynote_crisis_response_through_open_mapping/"&gt;Putting 8 Million People on the Map: Revolutionizing crisis response through open mapping tools&lt;/a&gt;, by &lt;a href="https://hotosm.org/users/blake_girardot"&gt;&lt;b&gt;Blake Girardot&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/BlakeGirardot"&gt;@BlakeGirardot&lt;/a&gt;, Vice President of the &lt;a href="https://hotosm.org/"&gt;Humanitarian OpenStreetMap Team&lt;/a&gt;). The Janson auditorium (with a capacity of &lt;b&gt;1415 people&lt;/b&gt;) was packed full for this closing keynote. Mr Girardot explained perfectly how open source tools have allowed a lot of contributors (&lt;b&gt;including me!&lt;/b&gt;) to improve in a radical way our disaster preparedness as a global society. One of the recent examples: After the Nepal Earthquake in 2015, about 700 contributors using open source tools such as the &lt;a href="http://tasks.hotosm.org/"&gt;&lt;b&gt;Humanitarian OpenStreetMap Team's Tasking Manager&lt;/b&gt;&lt;/a&gt; made &lt;b&gt;more than 13 million edits to OpenStreetMap&lt;/b&gt; in the first two weeks after the earthquake. Impressive, isn't it? He also described other tools and projects like the &lt;a href="http://export.hotosm.org/"&gt;&lt;b&gt;OpenStreetMap Export Tool&lt;/b&gt;&lt;/a&gt; or the &lt;a href="http://beta.openaerialmap.org/"&gt;&lt;b&gt;OpenAerialMap&lt;/b&gt;&lt;/a&gt; project, but as an active member of the OpenStreetMap group, I'll expand the information about this in future posts&lt;/li&gt;

&lt;/ul&gt;
&lt;p&gt;&lt;b&gt;See you in Brussels for FOSDEM 2017!!&lt;/b&gt;&lt;/p&gt;</description></item><item><title>FOSDEM 2016: Saturday</title><link>https://luiyo.net/en/blog/2016/03/fosdem-2016-saturday/</link><pubDate>Wed, 02 Mar 2016 00:00:00 +0000</pubDate><guid>https://luiyo.net/en/blog/2016/03/fosdem-2016-saturday/</guid><description>&lt;img src="https://luiyo.net/48612116381_77a54968b8_o_15966529702368529751.jpg" alt="Featured image of post FOSDEM 2016: Saturday" /&gt;
&lt;p&gt;&lt;i&gt;Disclaimer: I attended FOSDEM in Brussels last January. I should have written this weeks ago but better late than ever, right?&lt;/i&gt;&lt;/p&gt;
&lt;br&gt;

&lt;div class="image lateral"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/48611764908_b8034da830_o.jpg" alt="FOSDEM 2016"&gt;
 
 
 &lt;figcaption&gt;
 FOSDEM 2016
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;


&lt;p&gt;After an interesting Friday (as &lt;a href="https://luiyo.net/blog/2016/03/fosdem-2016-friday/"&gt;I told you yesterday&lt;/a&gt;) our &lt;a href="https://fosdem.org/"&gt;&lt;b&gt;FOSDEM&lt;/b&gt;&lt;/a&gt; Saturday started early. I attended a couple of talks in the &lt;a href="https://fosdem.org/2016/schedule/track/free_java/"&gt;Free Java DevRoom&lt;/a&gt;, another couple about &lt;a href="https://fosdem.org/2016/schedule/track/open_source_design/"&gt;Open Source Design&lt;/a&gt; but surprisingly most of them were in the &lt;a href="https://fosdem.org/2016/schedule/track/legal_and_policy_issues/"&gt;Legal and Policy Issues&lt;/a&gt; track.&lt;/p&gt;
&lt;br&gt;
&lt;p&gt;This doesn't mean that this is what matters most to me now (and it matters, a lot), but surely there are other events to listen about containers, virtualisation, Java or Python. IMO, there's no better place than FOSDEM's Legal DevRoom to feel the pulse of the FOSS community.&lt;/p&gt;
&lt;br&gt;
&lt;p&gt;Let me summarize:&lt;/p&gt;
&lt;ul class="spacious"&gt;
 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/event/state_of_openjdk/"&gt;&lt;i&gt;The State of OpenJDK&lt;/i&gt;&lt;/a&gt;, by &lt;a href="http://mreinhold.org/blog/"&gt;&lt;b&gt;Mark Reinhold&lt;/b&gt;&lt;/a&gt; (&lt;a href="http://twitter.com/mreinhold"&gt;@mreinhold&lt;/a&gt;, Chief Architect of the Java Platform, Oracle). The annual review by Mr. Reinholm here in FOSDEM. Main ideas:&lt;br&gt;
 &lt;ul&gt;
 &lt;li&gt;&lt;a href="http://openjdk.java.net/"&gt;OpenJDK&lt;/a&gt; is growing with a lot of new projects (and not only commanded by Oracle)&lt;/li&gt;
 &lt;li&gt;&lt;a href="http://openjdk.java.net/projects/jdk9/"&gt;9 main projects and more than 72 JEPs (in that moment) targeting JDK9&lt;/a&gt;, including JavaDoc.Next, &lt;a href="http://openjdk.java.net/jeps/225"&gt;search capability in Javadocs&lt;/a&gt; (powered by Javascript)&lt;/li&gt;
 &lt;li&gt;Mark gave interesting tips about &lt;a href="http://openjdk.java.net/projects/valhalla/"&gt;Valhalla Project&lt;/a&gt;, that may enable Java to have Classes without instances&lt;/li&gt;
 &lt;li&gt;He also highlighted &lt;a href="http://openjdk.java.net/projects/panama/"&gt;Panama Project&lt;/a&gt;, an improvement in the JNI to enrich connections between the Java VM and non-java APIs (mostly for C/C++)&lt;/li&gt;
 &lt;/ul&gt;&lt;/li&gt;

 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/event/preparing_for_jdk_nine/"&gt;&lt;i&gt;This Is Not A Drill - Preparing for JDK 9&lt;/i&gt;&lt;/a&gt;, by &lt;a href="http://robilad.livejournal.com/"&gt;&lt;b&gt;Dalibor Topić&lt;/b&gt;&lt;/a&gt; (&lt;a href="http://twitter.com/robilad"&gt;@robilad&lt;/a&gt;, OpenJDK Product Manager, Oracle) and &lt;a href="https://fosdem.org/2016/schedule/speaker/rory_odonnell/"&gt;&lt;b&gt;Rory O’Donnell&lt;/b&gt;&lt;/a&gt; (OpenJDK Quality Manager, Oracle). A compilation of accumulated wisdom obtained by projects testing JDK9 early access builds. We already knew that, for the first time, JDK9 will not be fully backwards compatible so some tips about how to prepare your projects for JDK 9 were necessary. If you lead a Java project, you need to &lt;b&gt;pay special attention to&lt;/b&gt; &lt;a href="http://openjdk.java.net/jeps/260"&gt;JEP 260&lt;/a&gt; (internal APIs will be inaccesible), &lt;a href="http://openjdk.java.net/jeps/162"&gt;JEP 162&lt;/a&gt; (removal of some deprecated methods), &lt;a href="http://openjdk.java.net/jeps/220"&gt;JEP 220&lt;/a&gt; (changes in the binary structure of JRE and JDK), &lt;a href="http://openjdk.java.net/jeps/261"&gt;JEP 261&lt;/a&gt; (the new module system) and &lt;a href="http://openjdk.java.net/jeps/223"&gt;JEP 223&lt;/a&gt; (new version-string scheme)&lt;/li&gt;

 &lt;blockquote class="twitter-tweet"&gt;&lt;p lang="en" dir="ltr"&gt;Now listening to &amp;quot;This is not a drill - Preparing for JDK 9&amp;quot; &lt;a href="https://twitter.com/hashtag/FOSDEM?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#FOSDEM&lt;/a&gt; &lt;a href="https://t.co/RU9km0p6t5"&gt;pic.twitter.com/RU9km0p6t5&lt;/a&gt;&lt;/p&gt;&amp;mdash; Esther Lozano (@esloho) &lt;a href="https://twitter.com/esloho/status/693378902312513536?ref_src=twsrc%5Etfw"&gt;January 30, 2016&lt;/a&gt;&lt;/blockquote&gt;
 &lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;
 


 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/event/osd_designing_accessible_applications/"&gt;&lt;i&gt;Designing accessible applications&lt;/i&gt;&lt;/a&gt;, by &lt;a href="http://dept-info.labri.fr/~thibault/"&gt;&lt;b&gt;Samuel Thibault&lt;/b&gt;&lt;/a&gt; (computer science assistant professor). Yet another talk about accessibility, I've attended a lot of them and sadly they tend to be the same talk again and again. An interesting thought was that the &lt;a href="http://www.un.org/disabilities/convention/conventionfull.shtml"&gt;UN Convention of the Rights of Persons with Disabilities&lt;/a&gt; states that if you (as a developer/company) don't make reasonable accommodations for disabled people, you are discriminating them&lt;/li&gt;

 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/event/osd_blender_as_virtual_studio_lighting_playground/"&gt;&lt;i&gt;Blender as virtual studio lighting playground&lt;/i&gt;&lt;/a&gt;, by &lt;a href="https://github.com/tigert"&gt;&lt;b&gt;Tuomas Kuosmanen&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/tigert"&gt;@tigert&lt;/a&gt;, &lt;a href="https://www.gimp.org/"&gt;GIMP&lt;/a&gt; developer and artist). I attended this talk mostly to meet @tigert but also to see the actual status of Blender (I played with it for a while centuries ago). The talk was amusing but not very advanced, Tuomas told us about a &lt;a href="https://github.com/tigert/blender-virtual-studio"&gt;POC he made to recreate a photography studio lightning set-up with blender&lt;/a&gt;&lt;/li&gt;

 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/event/copyleft_for_the_next_decade/"&gt;&lt;i&gt;Copyleft For the Next Decade&lt;/i&gt;&lt;/a&gt;, by &lt;a href="http://www.ebb.org/bkuhn/"&gt;&lt;b&gt;Bradley M. Kuhn&lt;/b&gt;&lt;/a&gt; (President at &lt;a href="http://sfconservancy.org/"&gt;Software Freedom Conservancy&lt;/a&gt; and on the Board of Directors of the &lt;a href="http://www.fsf.org/"&gt;Free Software Foundation&lt;/a&gt;). Perhaps my favourite talk of the day, Bradley is a great expert about Open Source and maybe the main &lt;b&gt;Copyleft&lt;/b&gt; enforcer nowadays. He gave some tips to pursue software freedom, and how all of this is in danger if license violations are note enforced. Sadly, he said, given any open source project there's almost always a proprietary version forked from it. A famous example is Apple when they forked BSD. I leave you with an important thought: &lt;b&gt;If Copyleft is not enforced, is there any difference?&lt;/b&gt;&lt;/li&gt;

 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/event/real_world_governance/"&gt;&lt;i&gt;Who controls your project? Governance in the real world&lt;/i&gt;&lt;/a&gt;, by &lt;a href="http://gsyc.es/~jgb"&gt;&lt;b&gt;Jesús M. Gonzalez-Barahona&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/jgbarah"&gt;@jgbarah&lt;/a&gt;, &lt;a href="http://www.urjc.es/"&gt;URJC&lt;/a&gt; professor and &lt;a href="http://bitergia.com/"&gt;Bitergia&lt;/a&gt; co-founder). Jesús gave a very complete talk about metrics related to governance, and using Bitergia's tools he showed how it's possible to know interesting things about a project like:&lt;br&gt;
 &lt;ul&gt;
 &lt;li&gt;Who contributes? Not only individually, sometimes you want to know how they are affiliated&lt;/li&gt;
 &lt;li&gt;How are the changes been reviewed? How are they fixing the tickets? Are we neutral?&lt;/li&gt;
 &lt;li&gt;A project's &lt;i&gt;Pony Factor&lt;/i&gt;: the lowest number of committers whose total contribution constitutes the majority of the codebase&lt;/li&gt;
 &lt;li&gt;A project's &lt;i&gt;Elephant Factor&lt;/i&gt;: just as the Pony Factor, but with companies&lt;/li&gt;
 &lt;li&gt;Geographical diversity, gender diversity, ...&lt;/li&gt;
 &lt;/ul&gt;
 &lt;/li&gt;

 &lt;blockquote class="twitter-tweet"&gt;&lt;p lang="en" dir="ltr"&gt;Full room at &amp;quot;Who controls your project?&amp;quot; &lt;a href="https://twitter.com/jgbarah?ref_src=twsrc%5Etfw"&gt;@jgbarah&lt;/a&gt; talk!! Open Development Metrics for governance analysis &lt;a href="https://twitter.com/hashtag/fosdem?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#fosdem&lt;/a&gt; &lt;a href="https://t.co/Fd70nrqZey"&gt;pic.twitter.com/Fd70nrqZey&lt;/a&gt;&lt;/p&gt;&amp;mdash; Bitergia (@Bitergia) &lt;a href="https://twitter.com/Bitergia/status/693465113374953472?ref_src=twsrc%5Etfw"&gt;January 30, 2016&lt;/a&gt;&lt;/blockquote&gt;
 &lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;
 


 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/event/tl_dr_legal_strategy/"&gt;&lt;i&gt;TL;DR on legal strategy for commercial ventures&lt;/i&gt;&lt;/a&gt;, by &lt;a href="https://ttboj.wordpress.com/"&gt;&lt;b&gt;James Shubin&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/purpleidea"&gt;@purpleidea&lt;/a&gt;, Engineer at Red Hat). James gave the audience a lot of recommendations on choosing a software license. He also explained how a lot of people mix up the concepts of proprietary license and commercial license. He remarked that &lt;b&gt;Copyleft&lt;/b&gt; is also the best solution for any employer, because it protects them from a developer/s leaving the company and forking the project. He gave some other examples about how &lt;b&gt;Copyleft has a lot of synergies with profit&lt;/b&gt;.&lt;/li&gt;

 &lt;blockquote class="twitter-tweet"&gt;&lt;p lang="en" dir="ltr"&gt;Loved first prediction by &lt;a href="https://twitter.com/purpleidea?ref_src=twsrc%5Etfw"&gt;@purpleidea&lt;/a&gt; :) We are taking AGPLv3 seriously here! &lt;a href="https://twitter.com/hashtag/FOSDEM2016?src=hash&amp;amp;ref_src=twsrc%5Etfw"&gt;#FOSDEM2016&lt;/a&gt; &lt;a href="https://t.co/tYkHJ7eAWm"&gt;pic.twitter.com/tYkHJ7eAWm&lt;/a&gt;&lt;/p&gt;&amp;mdash; Taiga.io (@taigaio) &lt;a href="https://twitter.com/taigaio/status/693486583383724032?ref_src=twsrc%5Etfw"&gt;January 30, 2016&lt;/a&gt;&lt;/blockquote&gt;
 &lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;
 


 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/event/open_source_is_ruined/"&gt;&lt;i&gt;Open Source is being ruined and it’s all our fault&lt;/i&gt;&lt;/a&gt;, by &lt;a href="http://www.brianredbeard.com/"&gt;&lt;b&gt;Brian Harrington&lt;/b&gt;&lt;/a&gt; (&lt;a href="https://twitter.com/brianredbeard"&gt;@brianredbeard&lt;/a&gt;). In the same line of the previous talk, &lt;i&gt;RedBeard&lt;/i&gt; explained the good vs the bad ways to profit in Open Source. The good ones are mainly (no surprise here): Selling a "boxed" product, selling support or selling subscriptions&lt;/li&gt;

&lt;/ul&gt;
&lt;br&gt;
&lt;p&gt;You can read about the rest of my FOSDEM here:&lt;/p&gt;
&lt;ul class="spacious"&gt;
 &lt;li&gt;&lt;a href="https://luiyo.net/blog/2016/03/fosdem-2016-friday/"&gt;FOSDEM 2016: Friday&lt;/a&gt;&lt;/li&gt;
 &lt;li&gt;&lt;a href="https://luiyo.net/blog/2016/03/fosdem-2016-sunday/"&gt;FOSDEM 2016: Sunday&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>FOSDEM 2016: Friday</title><link>https://luiyo.net/en/blog/2016/03/fosdem-2016-friday/</link><pubDate>Tue, 01 Mar 2016 00:00:00 +0000</pubDate><guid>https://luiyo.net/en/blog/2016/03/fosdem-2016-friday/</guid><description>&lt;img src="https://luiyo.net/48611764893_1b7a0b9f25_o_7538047242440364438.jpg" alt="Featured image of post FOSDEM 2016: Friday" /&gt;
&lt;p&gt;&lt;i&gt;Disclaimer: I attended FOSDEM in Brussels last January. I should have written this weeks ago but better late than ever, right?&lt;/i&gt;&lt;/p&gt;

&lt;div class="image lateral"&gt;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 &lt;img src="https://live.staticflickr.com/65535/48611764908_b8034da830_o.jpg" alt="FOSDEM 2016"&gt;
 
 
 &lt;figcaption&gt;
 FOSDEM 2016
 
 
 
 
 - &lt;i&gt;&lt;a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;CC BY-NC-SA License&lt;/a&gt;&lt;/i&gt;
 
 &lt;/figcaption&gt;
&lt;/div&gt;


&lt;p&gt;As you may know if you are reading this, &lt;a href="https://fosdem.org/"&gt;&lt;b&gt;FOSDEM&lt;/b&gt;&lt;/a&gt; is a not to be missed event about &lt;b&gt;Free and Open Source Software (FOSS)&lt;/b&gt;. By far, it is the most important gathering about FOSS in the planet. It's an unbeatable opportunity to attend great talks and workshops, but also to hang around with amazing people and top professionals.&lt;/p&gt;
&lt;br&gt;
&lt;p&gt;The most impressive fact is that FOSDEM is &lt;b&gt;organized by volunteers&lt;/b&gt; and everything is &lt;b&gt;community driven&lt;/b&gt;, from each year tracks to their schedule. It's &lt;b&gt;free to attend&lt;/b&gt; and there is no registration. You just need to show up :-)&lt;/p&gt;
&lt;br&gt;
&lt;p&gt;This year, the usual huge numbers even increased (source: &lt;a href="https://fosdem.org/2016/"&gt;fosdem.org&lt;/a&gt;):&lt;/p&gt;
&lt;ul&gt;
 &lt;li&gt;2 days&lt;/li&gt;
 &lt;li&gt;more than 8,000 attendees&lt;/li&gt;
 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/roomtracks/"&gt;52 tracks&lt;/a&gt; in &lt;a href="https://fosdem.org/2016/schedule/rooms/"&gt;28 different rooms&lt;/a&gt;&lt;/li&gt;
 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/speakers/"&gt;569 speakers&lt;/a&gt;&lt;/li&gt;
 &lt;li&gt;&lt;a href="https://fosdem.org/2016/schedule/events/"&gt;618 events&lt;/a&gt; (talks, workshops, panels, ...)&lt;/li&gt;
&lt;/ul&gt;
&lt;br&gt;
&lt;p&gt;Apart from the main event during the weekend and the &lt;i&gt;official&lt;/i&gt; &lt;a href="https://fosdem.org/2016/beerevent/"&gt;Friday Beer Event&lt;/a&gt; (the mythic &lt;a href="http://www.deliriumcafe.be/"&gt;Delirium Café&lt;/a&gt; overcrowded with hackers from around the world), each year there are dozens &lt;a href="https://fosdem.org/2016/fringe/"&gt;&lt;i&gt;Fringe&lt;/i&gt;&lt;/a&gt; events around FOSDEM during the previous days, totally independent but also related to FOSS and communities.&lt;/p&gt;
&lt;p&gt;I had the opportunity to give a lightning talk in one of those fringe events: the &lt;a href="http://flosscommunitymetrics.org/"&gt;&lt;b&gt;Floss Community Metrics Meeting (FCM2)&lt;/b&gt;&lt;/a&gt;. Let me bring here their own description:&lt;/p&gt;
&lt;blockquote&gt;
 This meeting is intended to be an open venue for community managers, DevRel managers, and FLOSS community experts to present ideas, tools, and analysis that the FLOSS community is already doing with FLOSS platforms. It is open to discuss about collaboration, synergies, etc. It will be organized to foster discussion, but will also focus on development of new tools, improvement of existing ones, and how to spread the knowledge about what is being done and can be done in this area
&lt;/blockquote&gt;
&lt;br&gt;
&lt;p&gt;My talk was about &lt;a href="https://github.com/LuisGC/measuring_programming_languages"&gt;measuring health and ethics in programming languages&lt;/a&gt;, a brief version focusing on the metrics aspects of my talk in the last Codemotion event about &lt;a href="https://github.com/LuisGC/programming_languages_governance"&gt;Governance in programming languages&lt;/a&gt;.&lt;/p&gt;
&lt;br&gt;

&lt;blockquote class="twitter-tweet"&gt;&lt;p lang="en" dir="ltr"&gt;Time for &lt;a href="https://twitter.com/luiyo?ref_src=twsrc%5Etfw"&gt;@luiyo&lt;/a&gt; &amp;#39;s lightning talk at @flossmetrics about measuring health and ethics of programming languages :D &lt;a href="https://t.co/tEBhbLZed7"&gt;pic.twitter.com/tEBhbLZed7&lt;/a&gt;&lt;/p&gt;&amp;mdash; Esther Lozano (@esloho) &lt;a href="https://twitter.com/esloho/status/693118467696889856?ref_src=twsrc%5Etfw"&gt;January 29, 2016&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;



&lt;br&gt;
&lt;p&gt;Let me summarize some of the other talks:&lt;/p&gt;
&lt;br&gt;
&lt;ul class="spacious"&gt;
 &lt;li&gt;&lt;a href="https://twitter.com/duaneobrien"&gt;Duane O'Brien&lt;/a&gt; (&lt;small&gt;&lt;a href="http://www.paypal.com"&gt;PayPal&lt;/a&gt;&lt;/small&gt;&lt;a href="http://www.paypal.com"&gt;)&lt;/a&gt; talked about measuring velocity from the &lt;i&gt;InnerSource &lt;/i&gt;point of view&lt;/li&gt;
 &lt;li&gt;&lt;a href="https://twitter.com/brainwane"&gt;Sumana Harihareswara&lt;/a&gt; (&lt;small&gt;&lt;a href="http://changeset.nyc/"&gt;Changeset Consulting&lt;/a&gt;&lt;/small&gt;) explained some of the usual mistakes measuring FOSS projects. I loved (and will use!) her explanation of the &lt;a href="https://en.wikipedia.org/wiki/Streetlight_effect"&gt;lamppost fallacy&lt;/a&gt;&lt;/li&gt;
 &lt;li&gt;&lt;a href="https://twitter.com/johns_fsf"&gt;John Sullivan&lt;/a&gt; (&lt;small&gt;Executive Director @ &lt;a href="http://www.fsf.org/"&gt;&lt;abbr title="Free Sofwtare Foundation"&gt;FSF&lt;/abbr&gt;&lt;/a&gt;&lt;/small&gt;) started explaining the FSF's mission ("&lt;i&gt;&lt;b&gt;all&lt;/b&gt; computer users must be able to do &lt;b&gt;everything&lt;/b&gt; they need to do on &lt;b&gt;any&lt;/b&gt; computer using &lt;b&gt;only&lt;/b&gt; free software&lt;/i&gt;") and then how they use free software project metrics (even in non-software initiatives) to see if they progress towards their goal&lt;/li&gt;
 &lt;li&gt;&lt;a href="https://twitter.com/ioana_cis"&gt;Ioana Chiorean&lt;/a&gt; (&lt;small&gt;&lt;a href="https://www.mozilla.org/"&gt;Mozilla&lt;/a&gt; Rep Mentor&lt;/small&gt;) told us about &lt;a href="https://reps.mozilla.org/"&gt;Mozilla's representatives program&lt;/a&gt;, how they work and how they measure their progress&lt;/li&gt;
 &lt;li&gt;&lt;a href="https://twitter.com/jgbarah"&gt;&lt;abbr title="Jesús María"&gt;J. M.&lt;/abbr&gt; González-Barahona&lt;/a&gt; (&lt;small&gt;&lt;a href="http://bitergia.com"&gt;Bitergia&lt;/a&gt;&lt;/small&gt;) showed us &lt;b&gt;GrimoireLab&lt;/b&gt;, an impressive open source tool by Bitergia using (among other things) Perceval, Elastic Search, Python and Kibana&lt;/li&gt;

 &lt;li&gt;&lt;a href="https://twitter.com/dberkholz"&gt;Donnie Berkholz&lt;/a&gt; (&lt;small&gt;&lt;a href="https://451research.com/"&gt;451 Research&lt;/a&gt;&lt;/small&gt;) about another common mistake, comparing communities and projects that shouldn't be compared between them (OS vs editors vs frameworks vs ...)&lt;/li&gt;
 &lt;li&gt;&lt;a href="https://twitter.com/geekygirldawn"&gt;Dawn Foster&lt;/a&gt; (&lt;small&gt;&lt;a href="http://www.gre.ac.uk/"&gt;&lt;abbr title="University"&gt;Univ.&lt;/abbr&gt; of Greenwich&lt;/a&gt;&lt;/small&gt;) showed us &lt;a href="http://gource.io/"&gt;Gource&lt;/a&gt;, an impressive tool to visualize repos. I knew about it some years ago and it still has no rival in awesomeness, just look at &lt;a href="https://www.youtube.com/watch?v=ZEAlhVOZ8qQ"&gt;this demo&lt;/a&gt;&lt;/li&gt;
 &lt;li&gt;&lt;a href="https://twitter.com/jospoortvliet"&gt;Jos Poortvliet&lt;/a&gt; (&lt;small&gt;&lt;a href="http://owncloud.com"&gt;ownCloud&lt;/a&gt;&lt;/small&gt;) explained how they analyse their metrics: code commiters, ticket participants, discussion participants and so on&lt;/li&gt;
 &lt;li&gt;&lt;a href="https://twitter.com/lauritaapplez"&gt;Lauri Apple&lt;/a&gt; (&lt;small&gt;&lt;a href="https://tech.zalando.com/"&gt;Zalando&lt;/a&gt;)&lt;/small&gt; surprised me with Zalando's numbers: 17 million customers, +10,000 employees (+1,000 technologist) and &lt;b&gt;more than 300 open source projects&lt;/b&gt;. Not so bad for an online fashion platform... She showed us Catwatch, their own open-source projects dashboard&lt;/li&gt;
 &lt;li&gt;&lt;a href="http://twitter.com/jsmanrique"&gt;Jose Manrique Lopez&lt;/a&gt; (&lt;small&gt;&lt;a href="http://bitergia.com"&gt;Bitergia&lt;/a&gt;&lt;/small&gt;) showed us the evolution of &lt;b&gt;Cauldron&lt;/b&gt;, another fantastic tool from Bitergia to display the metrics behind Github repositories&lt;/li&gt;
 &lt;li&gt;&lt;a href="https://twitter.com/jjmerelo"&gt;&lt;abbr title="Juan Julián"&gt;JJ&lt;/abbr&gt; Merelo&lt;/a&gt; (&lt;small&gt;&lt;a href="https://www.ugr.es/"&gt;Univ. of Granada&lt;/a&gt;&lt;/small&gt;) described his problems with his own tool to rank Spanish users and repositories from Github&lt;/li&gt;
 &lt;li&gt;&lt;a href="http://www.christoph-wickert.de/"&gt;Christoph Wickert&lt;/a&gt; (&lt;small&gt;&lt;a href="https://getfedora.org/"&gt;Fedora Project&lt;/a&gt;&lt;/small&gt;) showed us &lt;b&gt;HyperKitty&lt;/b&gt;, a django-based tool to replace Pipermail as the default archiver for Mailman. Looked like a gigantic step ahead of its predecessor&lt;/li&gt;
 &lt;li&gt;&lt;a href="https://twitter.com/kvantomme"&gt;Kristof Van Tomme&lt;/a&gt; (&lt;small&gt;&lt;a href="http://provonix.com/"&gt;Provonix&lt;/a&gt;&lt;/small&gt;) explained how they started with a tool to generate upgrade reports from Drupal sites in order to review the upgrade status of the site's modules, and ended with a daemon analyzing thousands of Drupal sites to get not only update reports, but lists of sites using a certain module, comparing modules and the demographic of their adoption and son on&lt;/li&gt;
&lt;/ul&gt;
&lt;br&gt;
&lt;p&gt;&lt;b&gt;TL;DR&lt;/b&gt;: it was worth it attending the event, totally, and not only because I was in the speaker roster (with excellent companions).&lt;/p&gt;

&lt;p&gt;You can read about the rest of my FOSDEM here:&lt;/p&gt;
&lt;ul class="spacious"&gt;
 &lt;li&gt;&lt;a href="https://luiyo.net/blog/2016/03/fosdem-2016-saturday/"&gt;FOSDEM 2016: Saturday&lt;/a&gt;&lt;/li&gt;
 &lt;li&gt;&lt;a href="https://luiyo.net/blog/2016/03/fosdem-2016-sunday/"&gt;FOSDEM 2016: Sunday&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item></channel></rss>