Friday, November 27, 2020

Friday Links

It seems the whole world is slacking of for Thanksgiving and Black Friday. Focus on engineering management and urbanism with some good longer reads. 

Engineering Management

Skills map for strategic growth - Great post about matching skills to requirements and to engage and coach your team. This is a great blog from a former colleague  and I can't believe I just discovered it now.

Chief Notion Officer - I have been thinking about knowledge management in companies forever. I tried everything from wikis, to google drive to github. They tend to be write-only or succumb to bit rot very quickly. 

Production Oriented Development  - great summary of best practices for how to get from code to production. I think I agree with all of them.

Backstage: Spotify Developer Portals with Stefan Ålund [Podcast] - More on the Backstage system from Spotify, which only makes sense for very large companies, but is still pretty interesting. 

Urbanism 

Bikes in the year of the pandemic (series introduction) - not much of a series yet, but this looks promising. We are in interesting times for the bicycle movement and industry. 

Oslo got pedestrian and cyclist deaths down to zero. Here’s how - it is possible if there is a will and if you stop listening to the loud car minority  

The Amazing Way Bicycles Change You| Anthony Desnick | TEDxZumbroRiver [YouTube] - another bicycle TEDx talk

Random Skateboards

Let’s flip again: skateboards take off for a new generation - one day I will ollie! And if it is the last thing I do!

Spain’s mortuary workers endure the daily march of death - always amazing to read how people at the front-line of the pandemic are handling it

Borgen, the Danish Show You Have Either Never Heard of or Absolutely Love, Is Coming Back on Netflix  - The Danish West Wing will be back!

EP 1: What will the world look like after COVID-19? [Podcast] - Bill Gates has a podcast and it is pretty great. This episodes also features Dr. Fauci, which Bill apparently knows for a long time, which should feed into the usual conspiracy theories.

PHP8 Released! - everybody seems to hate PHP, but I still remember it with some fondness and do sometimes miss the community, tools and libraries. It was the language I used first when starting with this web thing and in many jobs afterwards. 

Friday Links Disclaimer
Inclusion of links does not imply that I agree with the content of linked articles or podcasts. I am just interested in all kind of perspectives. If you follow the link posts over time you might notice common themes though.
More about the links in a separate post: About Friday Links.

Friday, November 20, 2020

Friday Links

Engineering Management

How to Structure Teams for Building Better Software Products - the book is on my long to-read list, but this post is already a good summary

How Facebook kept the lights on when the world went remote [Webinar] - series of upcoming webinars about facebook going remote

Creating & Achieving Goals [Podcast] - about setting clear goals and OKRs, probably one of the hardest subjects

#96 Randall Stutman: The Essence of Leadership [Podcast] - some good tips from a leadership coach 

Take Some Time Off (We Mean It!) [Podcast] - I know what I would do with unlimited paid time off :-) But maybe it really isn't that easy. There is also clearly a different culture between the USA and Europe 

Rapid Response: A virtual-first workplace, w/Dropbox's Drew Houston [Podcast] - TIL: even experienced companies plan one year into the future without having any data

Urbanism

 - the LTN experiments in the UK are fun to watch from afar. You get the usual opposition and arguments.


Why a plan to cut pollution is making people across England so angry
[Podcast] - even more about the LTNs, though I would argue that they are more about the quality of living than just the air quality 

How Suburban Development Makes American Cities Poorer [YouTube] - You would think that they would learn over time. 


Un nou carril bici culminarà la humanització d’Aragó
[Catalan] - one of the biggest roads through Barcelona and probably the one with the most traffic is getting a bike lane. This is well appreciated and I will use it the first day I am back in town 

Bikes, pedestrians and the 15-minute city: How the pandemic is propelling urban revolutions - another great article summarising how the fundemic is changing cities

The Superblocks of Barcelona [YouTube] - Mikael reporting about Barcelona's superblocks 

Random Doodle

10 Things I Learned By Doodling For 100 Days Straight - this is great. I should doodle more. I can't remember the last time. There are also good responses on twitter.


RIP Google Music, one of the company’s last examples of generosity
- Spotify is not the solution though

Leap Second news - leap seconds are my second favourite weird time based technology thing after tzdata!

Friday Links Disclaimer
Inclusion of links does not imply that I agree with the content of linked articles or podcasts. I am just interested in all kind of perspectives. If you follow the link posts over time you might notice common themes though.
More about the links in a separate post: About Friday Links.

Friday, November 13, 2020

Friday Links

A bit of a back-log again, lots of long reads about engineering, management and especially urbanism. Some good podcasts related to all of these too. The one from Mo Gawdat about happiness certainly made me think.

Management

The Art of the Awkward 1:1 - this is definitely one of my weak areas, my 1:1s are just not awkward enough most of the time

Google’s initiative for more inclusive language in open source projects  - check out the style guide for the details, lots of good pointers and some I might not have noticed myself.

Engineering strategy every org should write. - I better start then. He has more on Engineering Strategies.

Check Your Blind Spots: Why Leadership Requires Self-Awareness and Maturity [Podcast] - always great to hear the insights of Camille Fournier  

Staff Engineering with Will Larson [Podcast] - Will tries very hard to define the role, but for most companies it is just one title of many. You only see differencation with large teams.

Engineering

Fixing a Test Hourglass - it sometimes is even worse, where people just focus on end-to-end tests and reduce the number of unit tests. The post explains the problem with that and how to fix some of theses tests. Also check out the old article: Just Say No to More End-to-End tests.

Timing for bringing page experience to Google Search  - May 2021! Lets hope it isn't hitting us too hard

Microservices — architecture nihilism in minimalism's clothes - lots about when and why to split or join services

Structuring Monitoring Data in Monolithic Applications With Namespaces - I am not sure if this will make it better, but I can see some applications for large monoliths 

Technology 

iproute2 and libbpf: vendoring on the small scale [LWN] - the old problem of bundling libraries or not. I am on the not bundling side, but it seems to be a lost cause.

Modern IDEs are magic. Why are so many coders still using Vim and Emacs? - because we tried IDEs and didn't like them. They also come and go like JavaScript frameworks 

Deprecating scp - first I went "Oh No!", but then I couldn't remember when I used it the last time

The RIAA, GitHub, and youtube-dl [LWN] - fun politics about copyrights and code

An introduction to Pluto - Jupyter notebooks for Julia, two things I don't use, but probably should look into

The Problem With Microservices
[YouTube] - I like his definition of microservices 

Remote work

Deutsche Bank calls for a 5 percent 'privilege' tax on people choosing to work from home - this clearly has so many problems once it hits reality, but it is fun to watch the privileged remote groupies going bonkers over this

How to run a Hackathon during a global lockdown - we had one hackday this year remotely, but next year we will have a whole week. Time to steal ideas from other people.

Proof our work-life balance is in danger (but there’s still hope)
- work days are get longer, breaks are getting shorter

Reimagine with Eric Schmidt: Redefining the Workplace After COVID - [Podcast] about remote work and the gig economy

Urbanism 

Barcelona: la reconquista táctica del asfalto [Spanish] - mostly colour on the road, which doesn't help a lot.

 - this is amazing, it will completely transform Barcelona and make it more liveable. People living on these street must be dancing for joy. I just hope any future mayor will keep with the plan. More in Catalan on El Pais.

Opinion: Leaving the city for the suburbs? It could take a big bite out of your retirement - very US centric view, but people really don't realise how expensive cars are. I am in the countryside now and I hate how dependent I am on the car for some things

Why it’s time to update Europe’s outdated e-bike speed limit - from the VanMoof guy. He doesn't say what the speed limit should be and what other rules should apply. Do we want 32km/h bicycles on bike lanes mixing with kids and other weaker people? Do we want speed limits on these for bicycles and how are we going to control them? While I agree that 25km/h are too low in flowing traffic, it is too fast for bike lanes most of the time. 

Designing Policy to Encourage Tiny Houses and Density [YouTube] - great that some cities are reconsidering zoning laws. Also amazing how big the houses are over there 

Big plans are out this lockdown winter. But I would like to learn to ride a bike  - sometimes you forget that there are grown up people who don't ride bikes, maybe that is one of the causes of all the resistance to more bike infrastructure 

Introduction to Strong Towns & Financially Insolvent American Cities - [YouTube] more of a teaser, but already containing nice insights how cities bankrupt themselves with their approach  

Mein Auto, meine Straße!  [German] - The uphill struggle to fight car dominance in Germany

Carriles bici: la respuesta de las ciudades ante la pandemia [Spanish] - bike lanes implemented during the coronavirus crisis and before, lots of examples for various cities

Government backs Low Traffic Neighbourhoods and cycleways in reply to petition calling for withdrawal of funding - it is basically the same idea as the Superblocks in Barcelona: stop through traffic to make roads quieter  

Chris Boardman, cyclist [Podcast] - I love Desert Island Disks and Chris is a great ambassador for liveable cities and cycling

Radfunk - Der Fahrradpodcast - Episode 12 - Das gelobte Land [Podcast, German] - interview about cycling and urbanism in the Netherlands

Random Music

Report: Techno is officially music in Germany - there goes the underground! 

Euro Truck Simulator 2 is quietly one of the best open world games on PC - great review, which made me install the demo via Steam on Linux. I am not much into games, but love open world games. It can't be more boring than flying for hours in one of the earlier Flight Simulators.

What It Will Take for Biden to Keep His Climate Promise - most annoying thing is that he will stick to cars as the main form of transport 

Low and no-alcohol sales soar 30% in lockdown as UK drinking habits change - the healthier people try to live the less sense alcohol and smoking make 

Making the world (of work) happier: Mo Gawdat [Podcast] - is happiness our default state and we are just messing it up? 

Other Links

Tim Bray: Long Links - good selection of weird and wonderful links

Friday Links Disclaimer
Inclusion of links does not imply that I agree with the content of linked articles or podcasts. I am just interested in all kind of perspectives. If you follow the link posts over time you might notice common themes though.
More about the links in a separate post: About Friday Links.

Wednesday, November 11, 2020

My thoughts on meetings

I used to really hate meetings. As a developer they seem to just get into the way of doing real work. You sit in a room with other people who are probably thinking the same thing and you are itching to get back to your desk and do "real work".

But at some point you specialise, teams grow and you need some way to sync up.

Suddenly you realise that meetings are where some decisions are made and you want to join as many as possible.

Because a lot of them are horrible it is natural to want to improve them over time. I am going to describe a bit how I like my meetings and why.

Some of my thinking has changed with being fully remote during the coronavirus crisis, but most of it applies to in person and remote meetings.

An ideal meeting has a facilitator, the minimal length of time, the right attendees, non-attendees not fearing to miss out, everybody being focused and prepared.

A good meeting can be more inclusive for all participants, by allowing everybody to arrive prepared and participate in a meaningful way.

Types of meetings

I separate three types of meetings, they have slightly different rules.

1:1s are the easiest, two people talking about what’s up. There really is not much that can go wrong. Having some items early on the agenda can help both sides to prepare and notes on talking points and action items are definitely helpful.

Structured/moderated meetings, for example retrospectives, lean coffees, daily scrums, brown-bags, presentations or all-hands, have a clearly defined ritual. Everybody is aware about the process. There might be a facilitator pushing through the process or just one person talking to an audience.

Staff meetings, these are the most complicated ones. Maybe it is a brainstorming session, a post-mortem, planning, whiteboarding, sync between teams and everything else. They tend to be the ones that can feel like a waste of time with the only action item being another meeting.

Scheduling

Meetings should be a bit shorter than the full hour or half hour, to leave some space between them. This is especially important with fully remote teams, as you don’t have the chance to refocus a bit when travelling between rooms and maybe grabbing a tea on the way.

I like the idea to start meetings a couple of minutes past the hour and end them a bit before, but realistically people tend to prefer meetings to start on the hour. So now I just set them to the fuzzy length of Google Calendar (50 minutes, 40 minutes, 25 minutes).

Just setting this in the calendar is not enough though, it is the job of the facilitator to make sure it ends on time.

A lot of meetings are probably recurring. It is easier to put them into your schedule, timeboxing is easier as they can overflow in the next occurrence and participants are gelling as a team over time. You want to keep them repeating at the same time and avoid cancelling them, the larger the group the more important this is.

Sometimes you might need to cancel a meeting. Again this is easier for smaller and frequent meetings (weekly 1:1s for example). The bigger the meeting the earlier you should notify participants as they probably have planned their day already around this and ideally prepared for it.

Size

There is this lore at my current job about how I think that meetings with more than four people are a waste of time. I might have said something along those lines after coming out of a meeting with twelve people. So there might be some truth to it.

As with teams there is a certain sweet spot for meeting participants. You want to get enough input to create an interesting discussion, you want enough stakeholders to allow syncing up, but you also want a small enough group that everybody can contribute in a useful way.

A brainstorming session with fifteen people is indeed my personal hell.

The exception again are structured meetings, which can scale up to the whole company.

Before the meeting everybody should also be able to make an informed decision about attending and their role in the meeting. Do I have to be in the meeting? Is someone else maybe covering my role already? Do I just want to listen in, but not take part in the discussion? Would your presence reduce the value for everybody else in the meeting? Are you a manager and are just taking part because of a worry of losing control?

Facilitator / Moderator / meeting lead

Every meeting needs someone to take the lead. Usually it is the person who sets up the meeting, because they should have the greatest interest in making the meeting successful.

Their job is to keep it on track over the whole time, see that everybody has a chance to contribute and fight off any possibility of going off the rails.

Meeting Agendas & Notes

I am kind of a split personality on meeting agendas and notes. I love to have them, but I hate to write them. But they should exist at least in a minimal version. You want to give everybody a chance to prepare for the meeting.

Agendas and notes are also a good way to fight MFOMO (meeting fear of missing out). With open meetings people can decide before if it really makes sense to join and if they can contribute to these. And once you can rely on meeting notes it is also enough to check these after the meeting to stay informed.

One low effort way we are using are simple Google Drive documents for repeating meetings (all-hands and guild meetings), which are ordered in reverse chronological order.

On the top you will always see the current or next meeting and everybody is invited to add items to the agenda. For guild meetings this is just a bulleted list, for all-hands it is a template with sections for bigger items like kudos and Q&A. Often people directly attach their name to the items to make it clear who is taking the lead on these.

During the meeting we add comments, decisions and action items. These then can be reviewed by everybody and again in the next meeting.

For remote retrospectives and lean coffees there are good tools like Retrium to help keeping notes and facilitating them. You can also use them for post-mortems or other meetings which lend themselves to the “post-it in columns with voting” kind of meeting.

Remote Meetings

Quite unexpectedly we are all fully remote during the coronavirus crisis. On the one hand this is better than hybrid meetings with some people being remote, but on the other it is also worse than fully in person meetings.

Your camera should be on. You are sending so many signals with your body and face that just can’t be replicated just through voice.

There is a reason why people get into fights so easily on Twitter or Slack over trivial things that wouldn’t be an issue if they met in person.

If you are an introvert like me and tend to think longer before you say something it will also be easier to spot by the facilitator.

In an all-hands meeting or if you are only a spectator and not participant it can also be OK to switch off your camera and microphone as a signal of this.

If you are in a noisy place you might want to mute your audio whenever you are not speaking. Unmuting can then also be used as a signal to the facilitator that you want to say something.

I upgraded my video conferencing setup quite a bit because I expect this home working to last a bit longer, but this is not necessary. If you have a reasonably good connection and a modern laptop or webcam you are probably fine.

Etiquette

Every meeting starts on time. You might be a bit more flexible for 1:1s and all-hands meetings.

I personally wait up to 10 minutes in 1:1s and 5 minutes in all-hands.

Any other meeting starts on time, you don’t wait for stragglers and waste the time of everyone else. You don’t try to track them down on Slack. You also don’t rehash everything that happened so far for them once they join and again waste time for the group.

There is no place for laptops or mobile phones in meetings. When remote this is probably a lost cause as everybody has all the distractions of the world right on the same screen as the video call.

Take the time to focus on the other people in the room, the conversation, the presentation, the whiteboard.

If you are checking Slack, email or reviewing code, you are just showing disrespect to everybody else in the room who made the time to focus on solving a problem.

Food in meetings… nobody wants to watch you eat. If it is an all-hands meeting, then switch off your camera and go ahead and feast. In an in person meeting just the smell is probably distracting enough for everybody.

References

I am not the only person worried about meetings, there are lots of good resources out there. I collected some here.

Rands is obsessed with meetings and has a couple of good posts about these 

Atlassian talks about making meetings more inclusive: How to counteract 3 types of bias and run inclusive meetings

Zef about laptops in meetings: On Paper Or: how not to look like a dick in meetings

Two interesting podcasts about meetings

Final Words

I don’t hate meetings any more, but I definitely don’t love them either.

I believe with a bit of practice you can make them better and less painful for everybody.

Monday, November 02, 2020

What is in my bag. Part 2: Even Smaller Saddlebag

What is in my bag
I am slow, but at least I am persistent. Four years ago I posted "What is in my bag. Part 1: Small Saddlebag", and I kind of promised to post about what I take on sportives / gran fondos. This is not that post, because I haven't taken part in any sportives for a while. Instead this is an update  to the original post. I am still using the bag from the first post on my commuter bike.

I am also adding the other stuff that is on my bike.

The major changes are: 

A move to a smaller Lezyne bag, that isn't a roll-up any more. It attaches with a similar strap, but is quicker to open with a zip.

No more CO2 bottle and valve. I am really never that much in a hurry and they are also not the most environmental friendly ways to pump up a tire. 

I switched from a mini-tool to a couple of hex keys. I don't have any other screws left on the bike, so this is much smaller and also better to use. 

Which leaves me with this in the bag (right side of photo):

  • four hex keys, plus and adaptor to increase the size of the biggest one
  • tube valves extenders, in case I have to borrow a tube
  • tube valve tool
  • chain pins
  • tube patches
  • two tire levers
  • chain tool 
  • light spare tube

On the left side is what else is on my bike

  • Garmin Edge 830 with tether for safety
  • small pump, attached to one of the bottle cages
  • second spare tire, this one a bit more robust. I attach it to the saddle bag with the strap of the bag.
  • rear light, this one is brand new and has some brake functionality
  • front light, goes between Garmin and forward mount. It is just to be seen, useful in winter or if you are passing through tunnels. Sometimes I leave it at home.