location_city Sydney schedule Aug 30th 11:30 AM - 12:15 PM AEDT place room 2

This talk helps teams of software developers getting more quality work done by improving their code review process.

Writing software is a collaborative effort. Long are the days of developers hacking alone in their bedrooms. The majority of successful apps and tools are built by a team.

This communal effort makes the act of reading and reviewing code written by other people as important as writing the code in the first place. Even more so in a workplace that is becoming more and more remote and distributed.

Yet this is a topic that doesn't get much coverage in blogs and conferences.

This talks shares techniques to improve the code review process developed over the years and through much experimentation.

A good code review starts from the code author. Spending time to review the code before submitting it, and adding details in the pull request description goes a long way.

As reviewers is important to use the right language and to practice empathy. The review should focus on what the code dose, not how the code looks. Discussion about style and patterns should be left for another forum.

There is a lot that can be automated in code reviews to remove noise and ensure that important things are not missed.

Time spent improving a team's code review process will pay dividends in better code output and smoother reviews.

 
 

Outline/Structure of the Talk

Before diving into how to craft a good pull request, and how to review it effectively we'll argue the importance of code reviews.

Software development is a collaborative effort. We spend more time reading code than writing it. It makes sense to optimize the reading experience.

This is even more true in a distributed world. When working with teams spread across time zones back and forth on a code review can stall it for days. It's worth investing in minimizing this friction.

Pull requests authors can influence how their code is reviewed. A good code review start with its author.

When opening a PR we should keep it small and focused. We should review it ourselves before sharing it with others, looking for code that might raise questions, trying to answer those in advance.

A few minutes spent enriching the request description with images and links can go a long way towards getting the code reviewed quickly.

When it's time to review we need to focus on the code and not the person. The language used in the comments has to be inquisitive and non violent. Criticism has to be constructive and backed by external references.

The review should be focused on what the code does, not how the code looks like.

We can use automation to reduce the noise that comments on things like style violations and typos can producer. Automation and third party integrations can also prevent errors and ensure that important things are not missed.

By the end of this talk we'll have walked through the entire life-cycle of a code review, looking at many techniques to make it an effective and constructive part of the development of our software and team.

Learning Outcome

This talk aims to provide actionable advice to feed for the audience to bring back to their workplace. Thoughtfulness, communication skills, and automation will help improve the code review process, resulting in better code being delivered quicker.

Target Audience

Software developers of any level, working in a teams

Prerequisites for Attendees

Familiarity with services such as GitHub, Bitbucket, or GitLab.

schedule Submitted 5 years ago

  • Peter Lee
    keyboard_arrow_down

    Peter Lee / Henry Soesanto - Using lean tools to create product team balance

    90 Mins
    Workshop
    Beginner

    Product teams often have a huge challenge in balancing the effort towards building for the future and supporting their product today.

    In this workshop you will learn how to use common lean tools like Pareto analysis and PICK matrixes, alongside the cost of delay to ensure that your product teams have a continuing focus of maintaining a health balance between the two.

    At Boral and Campaign Monitor we use this light set of lean tools to help teams maximise the impact they have on the supportability of their systems ensuring they have a healthy balance between building for the future and supporting their product today.

  • Gabor Devenyi
    keyboard_arrow_down

    Gabor Devenyi / Alex Sloley - The magic number is 10

    45 Mins
    Talk
    Intermediate

    Why are Agile teams supposed to be small? How big are they supposed to be? Most agilists tend to agree that a team of ten people works well.

    But what is it about the number 10 that makes it the “magic” number?

    Since the start of human evolution, people formed groups to be more effective. Whether it was the hunt for a mammoth or going to war, working in teams ensured a greater chance of success.

    There have been various researches from Dunbar’s paper through the Scrum Guide to military formations about the ideal number of people in a team.

    We’ll discuss the historical, scientific and cultural reasons why 10 seems to be the magic number of forming effective teams.

    Does the number of team members really matter? Is 10 really the magic number. You will get an answer that will help you to create effective teams with the right amount of people.

  • Madisen Harper
    keyboard_arrow_down

    Madisen Harper - CEO of Me – Fuel Lifestyle and Professional Success, Passion and Productivity

    90 Mins
    Workshop
    Beginner

    The work landscape is constantly evolving, especially in IT, providing exciting opportunities for those keen to optimise and manage their careers. With almost 50% of the Australian workforce being contractors, temps and / or casual contributors, it’s important to develop and market a skill set that is not only sought after, but more importantly fuels your feelings of success and professional passion.

    This interactive session applies Agile practices to create incremental changes fueling monumental lifestyle and career success.

  • Doris Tse
    keyboard_arrow_down

    Doris Tse - Liminal Thinking - Reconstructing our reality Matrix style

    Doris Tse
    Doris Tse
    Scrum Master
    Westpac
    schedule 5 years ago
    Sold Out!
    45 Mins
    Workshop
    Beginner

    "This is your last chance. After this, there is no turning back. You take the blue pill - the story ends, you wake up in your bed and believe whatever you want to believe. You take the red pill - you stay in Wonderland and I show you how deep the rabbit hole goes" - Matrix

    Are you prepared to question your own perception of reality?

    If so, join us as we learn how our understanding of reality is shaped by our own beliefs and assumptions and how these can create blind spots.

    How does this relate to Agile transformation? As a Scrum Master, we often face resistance to Agile or learning concepts that would seem blindingly obvious to us. We sometimes walk away from these conversations feeling exasperated and frustrated that other's can find it so difficult to understand and adopt.

    However, often the problem with others failing to see what you see, isn't purely about them. We often forget that as change agents, we bring to the mix a set of our own assumptions and self fulfilling beliefs that also need to be challenged.

    The purpose of this session is to draw on some of the core principles of Liminal Thinking and how they can be applied to Agile transformations.

  • Jon Gedge
    keyboard_arrow_down

    Jon Gedge / Jasmine Hessel - Accessing Relationship Systems Intelligence with Constellations

    45 Mins
    Workshop
    Intermediate

    Each of us is a member of complex relationship systems - at work, at home and in our communities. Just as emotional intelligence is the ability to understand and manage our own emotions and social intelligence is the ability to empathise and communicate with another individual, relationship systems intelligence is the ability to view a team or group as a unified whole and to work directly with that whole system rather than with a group of individuals.

    In this session, we will use a relationship systems coaching technique called constellations to listen to the ‘voice of the system’ which is created by everyone who attends the session, so we can explore together how comfortable we are in working with conflict.

  • Alex Sloley
    keyboard_arrow_down

    Alex Sloley - Liberating Structures... yet more facilitation techniques!

    90 Mins
    Workshop
    Beginner

    The communication tools of Liberating Structures will teach you how to facilitate the discussions your org needs. I am going to demonstrate how to use these techniques in the workshop. And all the attendees are going to be fully immersed and ready to wield their new knowledge the very next day at work.

    If you are a recent convert to LS, come learn a new set of techniques to continue the journey. If you are new to LS, this will start you on your path of facilitation mastery.

  • 90 Mins
    Workshop
    Intermediate

    The Business Model Canvas and the A3 Report are classic examples of using visualization tools to help you/a team/an org analyze and plan. However, you might find that available canvases don't really suit your needs. Would you really use the traditional Business Model Canvas for a legacy product in a large enterprise?

    Come learn about classic examples of canvases and what they are trying to achieve. Learn about a simple framework that enables you to build a custom canvas that is suited to your needs. And walk away with a custom canvas, because you are going to build your own canvas in this workshop!

  • Peter Lee
    keyboard_arrow_down

    Peter Lee - Creating clarity and focus in changing a large enterprise - Workshop

    Peter Lee
    Peter Lee
    Agile Coach
    SiteMinder
    schedule 5 years ago
    Sold Out!
    90 Mins
    Workshop
    Intermediate

    This workshop is for agile leaders assisting large organisations to shift towards a highly engaged, autonomous working environment.
    Using a simple model and supporting canvas, participants will learn to use a systematic approach for creating clarity and focus around the transformational activities an organisation decides to pursue.
    I will briefly introduce a simple organisational model about how we work and how we engage our people, and teach participants how to use it is evaluate their own working environment and decide on impactful changes.

  • Andy Palmer
    keyboard_arrow_down

    Andy Palmer - It's Metaphor All The Way Down - Sharing Understanding through Common Stories

    Andy Palmer
    Andy Palmer
    RiverGlider
    RiverGlide
    schedule 5 years ago
    Sold Out!
    45 Mins
    Talk
    Intermediate

    Eric Evans introduced the idea of Ubiquitous Language in Domain Driven Design. This means that within a certain (bounded) context, each word or phrase that we use has a specific and well-known meaning. This is only part of the understanding though. What are the threads that tie all those parts together?

    This talk explores how metaphors and consistent narratives can foster ubiquitous understanding in a certain context, how metaphors can offer new insights to a problem/solution domain that we thought was stale, and how when the metaphor starts to feel forced that it may be indicating the edge of a bounded context.

  • Kynan Hughes
    keyboard_arrow_down

    Kynan Hughes - System Visualisation and Indigenous Australian Art

    45 Mins
    Talk
    Beginner

    Aboriginal people have been living in Australia for at least 120 thousand years. For most of that time, their culture has been a complex adaptive system in a state of dynamic equilibrium.

    What can we learn from Indigenous art practice viewed through the lens of "system visualisation"?

    Through their echoes in contemporary indigenous art, we'll investigate the nature of Aboriginal society and the modes of economic production in this country prior to the arrival of Europeans.

    Our agile practice is relatively young. Perhaps our current focus on change and improvement is just a start. What will dynamic equilibrium look like for us? Visualisation may be a skill we need to develop further if we are to move beyond the limits of our current vision.

help