Main bullets are: – Growing trust in distrubited teams is hard, but nevertheless as important as in co-located team. – Team itself creates an atmosphere of trust in itself. Our task, as a scrum master, coach, manager – is to help and highlight needed areas. – XP and especially Pair Programmingи helps in growing trust. – Intrateam trust, from the informal side (skype beers, navigating as a guest to your colleagues in other locations, bike fixing via the webcam, ordering stuff on flea market in your city and sending it over to a colleague) helps a lot. – More freedom for the team, for collaborative work and motivation. More trust! Work harder on understanding the context and value of features implemented.
Lately I’ve started using Trello as an ultimate tool for the Retros and Demos. So this post will cover the path to using trello as opposed to other solutions.
I’ve been using multiple tools, such as Realtimeboard (now Miro) as an interactive flipchart to collaborate with the team, Google Docs with sections appointed to the retro stages, Confluence (as in 100% of the projects I’ve been working in we’ve had Atlassian stack), even Jira once (wow that was a bad idea)!
I bet almost everyone was trying to find that nieche, that ultimate tool he can expand to using in various projects no matter the area!
markering the cards (by all members), no matter label or color
time spent on executing action of: creating section -> adding item -> labelling it to be worth (by members) -> adding comment to the item.
While Realtimeboard is awesome, it’s not as simple to use in collaboration (well, it exceeds in functionality but format of retro is tied to the cards which is not the strongest of that product’s sides). There’s no barebone structure that supports cards, so you have to maintain it yourself: create some kind of a column, move items that are not self-aligned to that column. This is time-consuming and effortless. Labelling is not a stronger side of Realtime board.
When it came to Google Docs, it’s the default option for zillions of companies I’ve discussed remote retros with. However, it’s not visual enough from the point of dissecting retro items and splitting them. Using spreadsheets on the other hand seems to cope better with 2-dimentional-retro-approach (well, not an approach but the idea that you got buckets with items for good/bad/improvements). However drag-n-drop for the items to reorder and link with each other sucks there. I’ve also tried to have Google Slides at a certain point with one-slide-per-section (e.g. all great improvements accomplished since last sprint) – but it seemed too heavyweight and kind of sucked at limiting members of the dev team to collaborate properly. Labelling here is somewhat ok, but
Coming to confluence, albeit it does have a blueprint for the retro – it’s good more for the documenting / stenographing, than for the real-time-discussion. Or just writing some kind of decision-log. Atlassian tries to position confluence as a lightweight in-stack solution for collaboration, however it’s far away from gDocs in terms of simplicity/stability/collaborating. And again, it’s not centered around discussion items. It’s also not stable enough, where some of the changes are not applied on publishing, or connection is lost to cloud instance.
Coming to Trello, it simply supports the cards, it allows voting either via power-ups (which is simple), or via labelling with colors (which is fast, efficient and convenient). You can drag-n-drop item cards, and organize Retro stages into column. If the item may have a lengthy discussion or not that related -> you just drop it into the parking lot. Basically, trello is the most simple-to-use online implementation of flipchart + stick-it-notes.
Preparation & Setting the Stage
Remote retros usually are much less emotional and empathetic, given that it all happens online and some people may not want to share their faces (and expressions) behind the camera. Now to set the stage, we’d ideally need to:
Get everyone to turn on the cameras at their laptops
Select comfortable tool. I usually use either Skype or Slack video, but occasionally zoom seems to be a great option as well
Make sure the quality of connection is superb: we need as less lags possible
Prepare beforehand: either with the unified agenda, or the topics. We can preliminary pinpoint any inconsistensies and disfunctions on an online board 🙂 All members of the retro should know the structure of how the retro will be proceeding, in order to assign points they’ve prepared to particular retro stages.
Things improved since the last sprint
I usually start retros by listing our improvement/accomplishments that we’ve planned to achieve last time. So we either mark something achieved with green (we got a long list of all improvements implemented), or mark with orange something critical that we didn’t achieve but planned (and with red if it was not improved for 2 sprints in a row). Later on this red labelled card simply is the top-priority to improve (if still relevant).
This shows the team where we at with desired improvements and is a good starting point for overall recap of things that happened during the sprint before the current one.
Tip: it’s also sometimes nice to order everyone a pizza for the retro to get the positive vibe and thank for accomplishments. It shouldn’t be only on org budget, the team can self-organize around retro being a cheerful and friendly event, instead of a mandatory meeting. Although, don’t force it into the “mandatory-pizza-meeting”, with the management looking from above and yelling: “Eat your food and report on bad things happened during this sprint”. I’ve seen some orgs giving the budget for pizza and overwatching that it’s spent properly (eaten) and making sure people are thankful that management is spending money on their food 🙂
This stage may get lengthy as if something planned to be improved is not achieved -> team may start getting in lengthy discussions on why this happened. As a facilitator, your job is to help team find the productive path to navigating to the root cause in a short enough time to accomodate retro timebox. That’s why only a few items (1-2) should be planned for improvement, otherwise we may be stuck on the very fist stage. Your job as a scrum master is to coach the team to be aware of the timebox and get to the root cause efficiently.
Sprint metrics is an important internal-SLA for the team. Usually there are various factors that dev team may see as an obstacle or an impediment to be an even greater power-ranger-squad. Facilitation and proper reflection of dev team’s discussion provides sufficient items on how to improve the process and measure those improvements. The rest is just comparison. Common metrics to compare are: Lead Time (as soon as you explain the team the meaning of it, team will start to be motivated to improve this metric), time in Code Review, # of times tickets are reopened, and so on.
For bigger projects we’re also reviewing the metrics until the project-end, comparing projections on finishing via story points, and throughput.
This is not something that I use everywhere, but still when it comes to transparency, we need to reiterate what we tried to achieve goal-wise. Although this is not directly related to the process itself, since goals achieved need to be reviewed and discussed during Sprint Review -> it’s still effective to hightlight reasons on meeting sprint goals or not (which are related to the process, and retro is about inspecting the inner processes and tuning them).
I usually guide the teams to mark sprint goal cards with green for achieved, and red for not. And comments to demonstrate the reasons. Simple as that 🙂
Typical ‘What have been working nice’, ‘What could have been better’, ‘What will help us improve in the future’
Distributed and remote team members need to add points and vote for them as soon as the issues are found. No need to wait until the retro itself, to pin discussion item.
As a facilitator, your job is to turn team’s attention / highlight any conflicts / impediments during the sprint when the team faces them. Help the team to document / pin it to the retro board.
Do it via reflecting the situation when discussing it with the team, providing a view from a person that doesn’t have a context, or any other facilitation technique 🙂 Make sure team is engaged in inspection process during the cadence itself, and not during the retro event only. And help the team to document / pin it to the retro board. Even if it would lead to a lot of items in retro – you can always remove irrelevant.
References and helpful things
Ben Linders has a pretty great trello board that provides crowdsourced ways of retro-handling https://www.benlinders.com/news/trello-board-retrospective-techniques/ That possibly was the best help I got when trying to make team retros in trello better 🙂 He’s a nice guy in person, you can clarify a lot if you’re at the same conference / workshop as him!
Hey guys, good news – Minsk has it’s own Atlassian User Group now, me & StiltSoft kicked out the first event, gathered 60 RSVP’s in just one week, and had an amazing time in the beautiful city of Minsk, Belarus!
Hosted an event in an awesome Eventspace.by at the old factory!
AUG Minsk, SkuVault-Jira – Speech on how we organized processes and workflows in Jira, and helped SkuVault become more transparent in development;
Recently I hosted Minsk Atlassian User Group, where I shared our experience on migrating to Stride and gave the analogy between Stride, and Russian word ‘Stradai’ (-> eng.: ‘Suffer’). I’ll explain the analogy later. Hence the ‘Napalm Death’ song ‘Suffer’ joke on the first slide 🙂
Given that a lot of people use Telegram as a corporate messenger, and given all of the telegram-blocking happening in Russia currently, it’s pretty relevant to write about alternatives. We at SkuVault migrated due to the need of user control, but migration experience is relevant to many other teams.
Atlassian launched Stride as a HipChat Cloud replacement (so we can call it hipchat 2.0). Main competition is Slack, which is currently de-facto corporate messaging standard, as we know. I’ll compare Stride to Telegram and Slack in areas they are strong.
Biggest point of Stride is that it connects to your atlassian ecosystem. Typically you got single account for Atlassian User, from which you can manage entirety of Atlassian Permissions. Now, Stride is added as an application to the very same account, and access / admin rights are easily managed from the very same place. If you want to have control over the users and the ecosystem that is locked to Atlassian (as we do) -> this is an ideal scenario.
In Telegram we had personal accounts, which you don’t have control of (sure you can create virtual / work phone numbers and link them to telegram to make it corporate-friendly, but that is kind of a crappy way to maintain users ecosystem).
In Slack – you have to pay more than $3/user and it’s a separate account management system.
User Control means removing a person, when she no longer works at the company, visibility for messages in order for infosec to not be compromised.
Audio and Video Group Calls
It may not be something you’d count as a pro, but given that we previously used Telegram + Skype for calls (with hangouts as a fallback in case of skype outage), it’s nice to have same app doing everything.
Jira / Confluence Integration via bots
Integration with Jira and Confluence (not out-of-the-box-though) gives you a glimpse of the ticket in the chatroom (ticket card that reflects priority, assigne and editable layout), ability to create tickets as a command to chat-bot (create new bug Fix spacing on signup page in SV project), bitbucket PR review poking, and a lot of neat other things you’d expect inside the Atlassian ecosystem).
Mentions, citation, styles for text. NO HASHTAGS THOUGH – giant bummer!
And here’s my analogy of ‘Stride’ to russian word ‘Suffer’: you can use Stride, but it’s still raw, and a lot of features you’d expect to be basic in messaging, are half-baked in Stride.
Let’s admit, that Slack sucks at group video calls as well. But Stride is much worse 🙂
Issues include showing bad internet connection, when connection is good.
People may suddenly leave the call, although didn’t click on leaving or anything
Stride’s animations are smooth, so when it switches to another person, it fades in / fades out. And sometimes crashes during that animation!
Video lags a lot, sound doesn’t though
Video freezes a lot, and doesn’t resume until you restart the call
RAM consumption (400mb), CPU consumtion 70% on core i5 2014. This is a lot.
When you share the screen, and stride catches a glimpse of itself (stride window), it falls into the infinite glitch of Stride fractal windows.
Ok, done with the video calls!
No hashtags (sucks)
Sending messages is painful (it’s slow).
Sending messages with attachment is a torture (Stride waits until image is uploaded (slow), and only then allows you to click on send message (which is slow as well)
No forwarding between chatrooms -> leads to isolation of discussions to room-only.
They are horrible (not Rocky-Horror-Show or Dr. Horrible way, and not even Troma-way. They are as bad as most coffee in US (ha-ha)). The sound of notification is bleak and unnoticable. You can’t change it, even if you rip apart the guts of app package and assemble it again 😦 That results in people not reacting on urgent messages.
There is no mute for chat rooms, which results in information overload and renders the whole notifications system pointless.
There is no indication that your message was read by your counterpart. You don’t know whether to poke your colleague or he already read this.
Phone gets 2/3rds of all notifications. But when it does – mac app doesn’t show any of those! This is a typical failure, I’m writing this post on the train from Brest to Minsk where I ride to host AUG Minsk, and our team notified me with long message on my phone, but i see no new messages in my mac app. I have to restart it to get those messages.
Although integration with jira bot is neat (hey, slack does that even better, actually), it crowds chat room’s vertical space like a giant worm that digs Jasinto in Gears of War 2. If you dump number of tickets to dicsuss in the chatroom, you can’t read any message because card previews will occupy the whole 2-3 screens of vertical space.
As per our admins, Stride doesn’t parse JSON on itself, so basically you have to parse and feed parsed JSON to the API yourself. Not the case with telegram.
Stride is not-horrible-beyond-anything, it’s ok. You can use it and adjust to it. Especially if you’re locked to Atlassian Ecosystem (and I love and use jira, even after the latest interface update). But if you’re already on slack – there’s no point, it will work better for now.
There are a lot of things to improve, and the guys at Stride work on making their product better. It took 5 years to telegram to become the best and neatest messaging platform, it took same number of years for Slack.
Werner Vogels, the amazon CTO, in a very informal way talked with Conten.ly, Distill Networks, and some other CEO/CFO/CCO’s on how the start-ups were scaling.
Werner still claims that Amazon is a startup. Yeah, just with billion valuation and an IPO. How cute, noted Shane of Contently. (UPD: this was shared lightning fast all over the media, see the full transcript)
“How much time do you spent time on hiring?” Vogels asked. “At Amazon, of course, we’re a 20 year-old startup by now —”
“Uh… startup?” Kretchmer interrupted.
The crowd burst into laughter. Vogels stuck with his description:
“Ehh, startup,” he said over the crowd, “We’re still a startup!
“Awww, that’s really cute,” Kretchmer fired back in a faux-sweet voice.
Vogels paused as the crowd and the panel participants continued to giggle.
“Mmmhh, that threw me off guard a bit,” he said finally, shaking his head.
Kretchmer wasn’t done:
“Yeah,” he said with a laugh, “There’s a new class of startup called ‘IPO’d and Worth Billions.’”
“It’s not just about the size!” Vogel’s protested. “It’s.. whatever. Moving on.”
So, basic idea was that when there are 15-20 people, a general manager / product / ceo / founder can handle all of the connections, but the more people are scaled up, the harder it gets. So the discussion was on the sizes and scaling the management team for that, and how often should it report the feedback. ‘The one funny thing about the managers is that they are vital’ – says Werner. ‘You think that he does nothing except managing the people, but he accumulates the feedback and knows what’s happening around’.
The guys also talked about money, and how inefficiently they were spending them when they were founded and needed to fastly scale up the team. The funny thing was that their main investor and sponsor was there =) So they laughed all together.
There were so many announcements this month, that the tech press kept whining about the jetlags and whole difficulty of travelling around the globe. And we’re not talking about the small announcements and launches – all of the three IT giants had something new for the ever growing personal computing market. October was huge for us as mobile developers, because we are the ones who will bring to life our future projects for these platforms.
This column is not about the reviews and mobile platforms news, it’s about catching up and telling about interesting events on the IT landscape.
Windows 8 and Windows RT launch
Apple event: iMac, Pros, MacMini, new iPads
Google Nexus event
Windows 8 / RT launch
We really like Microsoft’s latest design language (#dontsaymetro), and we’ve been trying windows 8 out for almost 2 months now. There are UX details that many of the users might find questionable, but once you got used to Win8, it’s suddenly a pretty good operating system.
Both engadget and the verge stated that despite some unintuitiveness, the OS itself is very compelling once you passed the learning curve.
From the development side, we really like the ability to easily port your Windows 8 solutions to Windows RT and Windows Phone 8, because of the shared kernel. We will aim to write an article about the advantages and flexibility Microsoft gives us with the shared kernel approach, since we have Windows Phone developers in house, but you can already have some examples and tutorials at dev.windows.com
You probably heard about surface: it’s a tablet from Microsoft and the only product within the recent years that created a giant amount of buzz around itself. Fancy ads, modern music, cool video. The Verge gave it 7.0 out of 10, which seems to be pretty reasonable and even good, since Josh doesn’t like anything windows-realted very much.
Engadget rated the tablet pretty good as well, with less criticism. Overall media reception was pretty good, except NY Times and Gizmodo, who crushed the tablet.
Retina on 13″ is gorgeous, that’s really great! And the whole lineup was updated. Really massive launch for Apple. The only question is the discontinuation of iPad 3 (aka the New iPad) production, but it’s replaced with the 4th gen iPad, the price is the same. The Verge already reviewd iPad Miniand the new iPad 4th Gen.
What we love the most from the development point of view, is that the iPad mini retains the same resolution the iPad 2 did, so no need to fix / rescale your apps! This is the unification approach by Apple, that is loved by mobile developers.
This year was huge for Apple! The whole-new iPod lineup, 2 iPad revamps, iPad mini, retina laptops, new iMacs and MacMini!
Google announced the next Nexus lineup, along with Jelly Bean 4.2
LG had became the next Nexus maker (Nexus 4), along with Samsung (Nexus 10 tablet). While both of the devices are very balanced, Nexus 10 impresses with the stunning 2500-1600 display!
Check out the big story on the new Nexus line by the Verge. Clearly, Nexus line truly shows Google’s commitment to improve Android user experience, and how the true Android phones should be done. In the next few iterations we can see an ultimate iPhone rival.
So, clearly the audience got a wide choice of new products this months – whether you are an Apple fan, an Android geek or all nuts about new Windows 8 style, there are new gadgets to stand in line for!