Consolidating my blogs in Wordpress

I have imported all my post from Blogger into this site. There is a plug-in that do the import for you. It works well but obviously is not perfect. So if you end up reading a post published before I moved to WordPress, that is in 2016/2017, you might find little formatting issues or links pointing to Blogger.

If that is the case, please notify it to me and I will fix it. Meanwhile, I will keep both of my blogs at Blogger in maintenance mode. These blogs are:

Another little step taken towards reuniting all the info into a single place.

Working in distributed / remote environments 1: daily short meetings.

Agile established conversations as one key principle. The set up in those companies that follow agile methodologies are designed to maximise the interaction among developers and other people involved in product or service development. When working in distributed environments, the need to have those conversations does not change, but since the environment is significantly different, the required set up must be too which affects to processes and practices. An immediate question comes to mind…

Should we do stand-ups?

My recommendation is to not have stand-ups. Instead, substitute them for a different type of meeting, with slightly different goals.

The new meeting

The name

Let me start by the name. I like to avoid calling these meetings stand-ups to minimise the association with what most agile methodologies propose. Different goals, different set up, different dynamics… different name.

These new meetings I have run in the past have been heavily determined by the availability of the participants (time zones, productivity peaks of each participant, breakfast habits depending on participants culture, etc), the set up (distributed or remote, for instance), the company culture, the nature of the team (with fixed or variable/flexible composition, with the participation or not of stakeholders, etc), the room I have as manager to propose these kind of actions, etc. I have used several different names like sync-up, fast-track… meeting.

I really do not care about how to call it as long as we do not use the word “stand-up” to avoid a direct association to those.

Mandatory?

Nowadays it is common among distributed or remote teams that most developers agree on having short, daily meetings but there used to be a time in which I faced strong opposition. Back then and today, I tend to avoid making them mandatory. I promote them by example instead. In my experience, this is one of those topics where peer pressure works better than top-down or a general policy approach, specially when senior developers reluctant to participate are involved.

The video chat tool

There used to be a time in which finding solutions that worked on Linux was the main challenge, so a general excuse to push back on these kind of meetings. Phones/Android has come to my rescue many times in the past. Hangouts were my preferred option for a long time. Although now there is a wide variety of options that works on Linux, in combination with the Google Calendar, Hangouts (now Meet) is still my favourite.

As manager, I have faced several obstacles with the video chat set up that I have had to overcome.

  • Technical limitations: I named the lack of solutions for Linux during a long time. Another challenges has their origin in the limitations employees face on the applications they can install on their machines. This is becoming less of a problem nowadays since more and more companies are understanding how important it is to provide at least one on-desk video chat solution. When working in environments where people from different organizations participate like consortiums, you end up with several video-chat solutions installed. Configure each one of them so they do not collide can become a challenge. Again, Android has come to the rescue a few times in such situations for me.
  • Legal considerations: legal restrictions have to be considered in every case. Using freemium services, for instance, or free accounts of commercial video conferencing service providers for internal topics is unacceptable in my opinion. Convenience has limitations. Having managed corporate teams that work in the open for some years now have made me familiar with this issue early-on. An “open by default” policy helps to overcome many of these challenges but any team needs a channel that meets corporate standards when discussing through video chat internal topics, no matter if you are working in an Open Source project, a standard company or a consortium.
  • Business considerations: GitHub has been recently bought by Microsoft. For those who compete with Microsoft in a specific market or are providers of those companies who do, the purchase might bring challenges. The same concept applies to the use of video-chat tools. Google Hangout or Skype, for instance, might be great but not compatible with the activity your company develop for a variety of reasons. This factor needs to be considered when choosing a video-chat tool.
  • Religions: we all have prejudices/biases. Very frequently engineers install in their machines all kind of programs downloaded from a variety of sources to do their job, but they refuse to install a plug-in from a specific vendor to use a specific video conferencing option. Most sales people I have worked with are devoted members of the “Apple Religion“. Many designers are so used to paying for their tools that they become suspicious when offered something open with little or no cost. I am a Firefox user, I dislike solutions that requires a specific browser. As irrational that these and similar examples might sound when it comes to choosing a video chat tool, I tend to put effort in satisfying team members biases as long as no freemium services for company meetings are used and there is an available option for Linux users.

I am currently using the following tools on regular basis:

  • appear.in for BuildStream project (paid account).
  • Hangout/Meet since Codethink, the company I work with, uses some of the Google services.
  • Zoom for Linux Foundation stuff, since I represent Codethink in that consortium.
  • Skype for conference calls or regular phone calls.
  • Onconference for some meetings at Codethink.
    • People who work on the road, specially sales people, tend to prefer the phone over video. For these cases, where some people join through phone and some through video chat, there are solutions out there that work very well so you do not need to choose between one or the other way to connect. You have both.

The main goal is to have productive meetings where everybody joins because they feel that are important, without you as manager having to worry about legal issues. In general, I think that the tool should not get in your way as manager. Nowadays there are plenty of good enough options. Try several options before sticking with one and be ready to change it and have more than one.

Where?

One of the ideas I like about agile is the co-location concept when it comes to the office set up. The best way to translate some of the benefits that such agile practice offer into distributed and remote environments (DRE) is to join the meetings from your desk. It reduces the preparation time and the overhead associated to meeting rooms reservations.

Even if part of the team is at the same office, my recommendation is that everybody live the same experience during a meeting. Use your laptop or PC and get a headset. Mute yourself when you are not speaking, raise the gain of your mic so you can whisper and be perfectly heard, which helps to not disturb those colleagues around you, and enjoy the ride.

When working from home, I recommend to use headsets too, so people hear you with no echo, your dog does not become a participant, etc. I do not always follow this last advice because my current set up at home is a good one. I should anyway.

Meeting goals and dynamics

Duration, start and finish

Due to the nature of the channel used, short, daily meetings will need to be slightly more structured than stand-ups which normally increases their duration. Try not to pass the 15 minutes mark including the “connection time”. It seems hard at the beginning but it is perfectly doable.

Due to the lack of face to face interactions on regular basis, short, daily meetings become essential for those working on DRE. While people connect, it is a good time to chitchat with your colleagues. Providing those initial 2-3 minutes before starting is frequently (not always) a good thing. Somebody got a haircut, the weather at somebody’s place is particularly sunny, a team member has a new banner at his office, it is Monday morning and one participant joins after her vacation… these are quality moments for any distributed/remote team. Honour them.

If the video-chat room closes when the chairman leaves, make sure the chairman keep it open a couple of minutes after the meeting is over. Again, chitchatting in this context is a good thing.

Stop reporting!

If you can only afford one takeaway from this post, take this one: in distributed and remote environments, meetings are not for reporting. Report offline, preferably in advance.

Meetings are expensive, hard to manage and exhausting. But in DRE, they are more expensive, significantly harder to manage and even more exhausting. I will talk about this more extensively in another post related with team meetings and 1:1 but, for now, I would like to say that because of these arguments, you should maximise the time for topics involving short discussions, brainstorming, dependencies discovery, opinions, etc.

So I recommend to remove the concept of “what I did yesterday and what I will do today”. Keep reports on the diary (I will talk about the diary in another post), promote a habit of reading the diary in advance and focus the meeting on topics leading to participation. And if you do not like the diary concept, use dashboard to visualise the WIP, described on tickets, make engineers report about their activity through mail on regular basis, etc. Whatever it fits your need except using meetings to report or communicate information that can be sent offline in advance.

Good practices

I like people to take these meetings seriously because they are really important in the long run. Sometimes I come across people that attend to these meetings while having a walk and smoking or they turn off the camera while doing something else. It is a consequence of the old school “conference phone call” culture.

I perfectly understand that attention does not necessarily depend on being in front of the computer and that a relaxed atmosphere is frequently a plus in some meetings, but I discourage these behaviours on this kind of meetings. I tend to be more flexible with “ad-hoc” 1:1 meetings.

No matter how informal these fast-track meetings are for you, think about those colleagues at the office who cannot do what you are doing, or the impact that generalising your practices might have on the team or the project.

In video chats, unlike f2f, somebody always need to be in control because you cannot afford having two people talking at the same time, due to technical limitations, for instance. Some formality is always required. Here are some tips to consider:

  • Create a routine that helps you to avoid moderation like:
    • Using a pre-determined sequence for providing turns. There are tools in which participants are ordered based on when they join, or their user ID, etc. Use those features in your benefit to reduce the need for moderation.
    • Favour those who join on time over those who arrive late somehow.
    • Make sure people join “on mute”.
  • Create key words for highlighting technical issues like somebody’s mic is not working or the connection “is choppy”.
  • Do not take notes by default but make sure people keep track of the action points or further conversations that needs to happen.
  • If something comes out of the meeting that requires in depth discussion, schedule a specific meeting. Make a note, say it out loud and move on. Keep “the flow”.
  • Make use of any possibility provided by the video chat tool to add labels or tags to your screen, like a state and emoji…everything that provides context or information about your state helps.
  • Provide the link to the video chat room in the calendar event.
  • Add 1 and 5 minutes notice notifications for these events. Those integrated with your desktop notification system are way more efficient than the mail ones for daily events.

Summary

I believe that DRE teams benefit from having a short, daily meeting focused on participation over reporting, where there is some room for chitchatting, using a tool that everybody feel comfortable with, that also meets corporate policies and, when working in the open, Open Source community standards. The experience for every participant should be the same so I recommend having those meetings at your desk.

As soon as there is one distributed or remote person in the team, you are working on a DRE. Adapt the short daily meetings to that reality.

Other articles of this series

  • 0. Introduction: introductory article where I explain the motivations to write this series of article and my goals.

Working in distributed / remote environments 0: presentation.

I have been working in distributed or remote environments (DRE) since 2003 approximately. I started back in the Canary Islands using IRC, wikis, ticketing systems, mailing lists…all designed to work remotely, avoiding VPNs.

A few years later I moved to the mainland of Spain and the situation in this regard became even more complex. I managed ASOLIF, a fully distributed organization back then.

Later in my career I have worked from companies headquarters but my teams or department were distributed or fully remote. Now at Codethink, a UK based company where 2/3 of the staff is located in Manchester, I work from home and travel frequently, visiting the office around once a quarter.

At Codethink I (am) have participated in Open Source projects driven by consortiums like the Linux Foundation or GENIVI. Currently I am helping on BuildStream, an Open Source project that creates an integration tool-set. They are distributed or fully remote environments.

In summary, I have worked as a manager, consultant, executive or owner in several organizations with a variety of DRE. A few weeks back I attended to a talk at OpenSouthCode about working remotely from home and I left it thinking that it might be a good idea to share what I have learnt on this topic, what it has not worked for me and what I haven’t tried, so others can tell me if I should. New ideas are always welcome.

But above all, my goal is to write down what I end up explaining over and over again to those I work with when they have little or no experience working in distributed or remote environments. I find very useful to send those people links to read and ask them for their thoughts afterwards instead of telling them the same story over and over again.

One of the things that calls my attention is the lack of a significant number of good books on the topic. One of the good ones is listed in the Reads section of my site but some of the topics I want to cover are not thereeither. There are several good blog posts though, but most of them are written from the remote person point of view, not the team, department or organization manager/executive point of view. I will list some links to good articles in further posts.

Definitions

Let me clarify what I mean by distributed environments and remote environments:

  • Distributed environment: I will refer to distributed environments to organizations that have several offices or sites, not when the employees or contractors are working from home. In general, those people based at the office that travel or work from home only partially will be consider also under this category.
  • Remote: I will refer to remote for those setups where the employee/contractor is working at her own place, a co-working… in no company site, with no other company member co-located.
  • DRE: distributed or remote environments.

Please, help me.

I would like to hear from you about topics you might be interested about that I can cover in this series, in addition of the ones I have in mind. Feel free to propose them so I wrote about them. I would also welcome references to blog posts or books on the topic that you have found useful, so I read them and avoid repetition, referencing them in this blog and my Reads section.

If you have a wide experience on this topic, maybe we can write the article together and publish it here or somewhere else.

Articles

The articles written so far are:

Software events in Málaga

In May, there has been two interesting conferences in Málaga that  I have attended to:

J On The Beach

Since I moved back to Málaga, I have been trying to attend to this conference and for one reason or another, I couldn’t, until this 2018 edition. J On The Beach is the most international software event that takes place in the south of Spain on regular basis and this year it was no exception. It is a very well organised event, with good speakers, up to date topics and participants from many different countries. The conference is in English.

My expectations were high and the event met them. I had the chance to listen for the very first time to M. Hashimoto, that provided the audience an overview of Terraform. It is always a pleasure to listen to those who create the code you use. In that regard, he is becoming very popular for tools like Vagrant or Terraform itself. I enjoyed the talk very much as I did with the talks from  H. Karau and J. Amstrong. By the way, M. Hashimoto will be speaking at OSSJ 2018 in a few days so I will have the chance to see him again, but this time in Tokyo.

J On The Beach is a 3 days long event where the first one is focused in workshops and training sessions while the other two are mostly talks. After the closure a party is organised with good music and plenty of drinks.

I recommend to my readers to pay attention to next year edition. Add this event to your list. Tickets are sold fast so subscribe and pay attention to the newsletter to find out when can you get one.

OpenSouthCode

OpenSouthCode is a general purpose FOSS event, very popular among students and local hackers. Last year I talked about the FOSS automotive platforms developed by AGL and GENIVI. This year I provided an overview of CIP, the work that we are currently doing and near future plans. Check the slides for more information.

OpenSouthCode in a two days event. The first one, on a Friday, is all about workshops, meetup and training activities while the second one, on a Saturday, is reserved for talks in Spanish.

If you live in the South of Spain or happen to be around when this event takes place, I totally recommend it.

Coming Events to Málaga

There are two additional software events in Málaga to pay attention to:

Gamepolis

There are more and more international software companies coming to Málaga and several of them are gaming companies,. There are also a few Spanish ones. If you are into games development or you are a avid gamer, this will be a great event for you.

PyConES 2018

Codethink sponsored PyConES 2017 and several of my colleagues attended together with me. One of them, Pedro Álvarez was part of the organization. It took place in Cáceres, Extremadura. This edition will take place in Málaga. I plan to attend again. This is a 400 people event packed of Python developers.

Further notes

I would like to see more international FOSS events coming to Málaga. It is a great place to organise a conference: it has a big airport with connections to all major hubs in Europe, direct flights to many European cities, fast train to both, Madrid and Barcelona, many accommodations from a wide range of prices and quality, a big congress palace and hotels to host events, good weather most of the year, the beach, Granada, Ronda, Antequera or Sevilla are close enough… and an increasing number of software companies opening offices in the area. It is nice to not having to travel to attend to a good conference once in a while.

A weekend at Akademy-es in Valencia

This past weekend I travelled to Valencia, the third biggest city in Spain, located by the Mediterranean sea, to attend to Akademy-es, the annual meeting of the KDE community in Spain. At this event we also hold the KDE Spain annual assembly.

KDE España is the legal entity behind the KDE community in Spain and legally represents KDE in my country. We are about 30 members and it was founded in 2009 although Akademy-es started a few years earlier.

akademy_group_photo_2018-05-13_10-10-34

Event highlights

These are the points that called my attention the most at this edition:

  • Many new faces: although I do not have the official numbers yet, my guess is that we had around 75-80 participants among the three days, mostly locals which means a median of 35-40 people in most talks. Most were new faces. KDE Spain designs this event not so much targeting contributors but newcomers and potential future community members. So having many new faces is a very good sign.
  • Slimbook: this company from Valencia, sponsored the event and participated in its organization. At their booth, they showed some of their new products. I really liked the new Katana II and the new KDE Slimbook II. They are already selling outside Spain (EU) and they have a small response window when customers has issues with their laptops or owners require an upgrade, even faster than most multinational brands.
    • My Slimbook had a little issue with the fan. It was a little noisy and it did not work perfectly. I agreed with the support service to bring my laptop to Akademy-es so the fan could be replaced there as part of the guarantee. Isn’t that cool or what? I got my laptop back in 30 minutes and meanwhile they explained to me the components used, some design and technical decisions they took for my Pro2 laptop and the evolution suffered by the new version of the model, which they were showing at the booth.
  • KDE Vaults: what a nice surprise! This is a fairly recent KDE future that will be shipped in openSUSE Leap 15, I believe that I will use it on daily basis. It basically allow you to encrypt a folder with standard encryption technology and it is integrated with Plasma.
  • Mycroft integration in KDE: I was glad to see that a power user like I am will be able to easily install and configure Mycroft in openSUSE Leap 15 and interact with it using the KDE Plasma applet.
  • Catch up with friends: every member of any community would claim that this is a highlight of a every community event. It is absolutely true. It always amaze my how diverse this group is in some aspects but how our passion for changing the world with KDE holds us together.
  • Valencia: this is a city I haven’t been often enough, with enough time to enjoy it. I should come in Fallas, the local (and crazy) party week. Paella, party and mascletás, what more can a guy like me ask for?
    • Slimbook Paella. What a nice paella we had at the event.dav
  • Support from my KDE colleagues: as I mentioned, I am a power user. My technical skills are limited. I have a few minor issues with my openSUSE Leap 43.2 that I am unable to fix them myself. Akademy-es is always an opportunity for me to get support from the experts and fix some of them, or at least get an explanation about why I have that issue, if it is fixed already in new versions or if I have to use a workaround.

Call for action

These are some points where I would like to call for action on them:

  • High resolution screens represent an issue when installing or booting most Linux distros, including openSUSE Leap. It is also a pain to configure multiscreen set-ups when the difference in resolutions between screens is high. The new openSUSE Leap version, Leap 15 represents a step forward to solve some of them but, from what I’ve heard there is still a way to go. There are several laptop models under $1000 out there already with these type of screens so I assume the priority to solve these issues for distro and desktop hackers will significantly increase. I have hope.
  • OEM installer: years ago I came to the conclusion that the reason why Linux desktops are not mainstream is because upstream mostly target those users who do not and will never install any operative system in their machines while Linux distros mostly target those who can install their own OS. Both would greatly benefit from targeting mainly the prescriptors, that is, those who install the operative systems of the users either in corporate or domestic environment. Let me put an example. Most Linux distros still do not have a OEM installer. I heard this demand again at Akademy-es, this time done by Alejandro López, Slimbook CEO, as a limiting factor to ship their laptops with some Linux distros pre-installed. I would like to see a OEM installer soon for openSUSE Leap.
  • Distro upgrade application: openSUSE Leap is a distro for users. Leap 15 is coming and it seems I will have to use YAST to change the repos in order to point to the new ones to upgrade my distro. Asking around, the situation is not better in most distros (they do not have YAST 🙂 ). Upgrading the distro through internet (network) is an awesome feature. Let’s make it affordable to everybody. I would like to see an application in openSUSE to manage this complex feature, making it suitable for any user not just power users. It could be a great opportunity too to inform those users about the benefits of the new version, including those apps that are available for the very first time, together with a simple path to install them.
  • Applications for Plasma Mobile: Plasma developers are achieving the long-awaited goal to get Plasma ready for mobiles. Now we need applications. Aleix Pol did a call for action on this regard and I fully support his cause. Without applications, it will way harder to make this effort shine.
  • Not enough women (diversity): although expected, we cannot stay conformist with the result at this event. Women need references to feel KDE as an even more inclusive and attractive place to learn and develop their skills. Maribel García, Directora de la Oficina de Software Libre de la Universidad de Granada (Director of the Free Software Office at the University of Granada), spoke about this, describing the activities this entity is doing to increase the interest among women about Free Software, pointing at an evidence, that KDE can and should do more to help. She also agreed, based on the ratio of women vs men studying Software Engineering at her University, that the root cause is at home and at the High School. She has published a study about this, she mentioned.
    • It is not the first time I hear this diagnosis. I know first hand that the KDE España board has made efforts to mitigate the lack of women speakers at this edition. The Board needs more help from the Membership and the wider KDE community. It is in everybody’s interest.

Overall, Akademy-es has been a good one. See you all at Akademy in summer or next year again at Akademy-es. Where? Who knows…