Communication is key for software development. Everyone knows that direct face-to-face communication is the best way for discussing complicated development issues. But for distributed teams, face-to-face communication is not always possible. And as the most experienced developer in any team can confirm, constant interruptions for answering questions can become very stressful. Another disadvantage with face-to-face communication is that there is no record of what was said. For someone who was not there, it is impossible to catch up. And things said tend to be forgotten.
Therefore, channel-based messaging can be a great complement to face-to-face communication, even for small and co-located development teams. The main advantages are:
Complete transparency All decisions and discussions in public chat channels are available for everyone on the team, even for future team members. If you happen to be away or sick, the discussion is still there when you get back.
Unified search Everything said in public messaging channels is searchable. When you no longer remember how that snippet of example code worked, simply open up the search and go back to the discussion.
Status indicators In a messaging app such as Briteback, it is possible to set your status information and indicate that you are busy. Thus avoiding constant interruptions when you want to stay relay focused. Even if you are all in the same room, the busy status sends a message to the other developers in your team.
Briteback for development teams
Briteback is a messaging platform for development teams, providing all you need to keep your communication adapted to the Scrum or Kanban methodology. Briteback works in the browser with no installations needed (no need to battle with managers and the IT-department), and comes with free apps for Android and iOS.
Briteback has built-in voice/video capabilities with screen sharing, useful e.g. for daily stand-ups for distributed software teams or for customer demos. Briteback contains powerful and really deep integrations dedicated to software development, such as Trello. There are also power-ups that let you integrate your email and calendars with Briteback.
Now, let’s go through how Briteback can help development teams communicate more effectively.
Did you ever have an eager chat or email discussion about an improvement to the software being developed, only to have the discussion drown in other messages and simply forgotten? You are not alone. This is a very common problem. Email and chat are great for communication and exchanging ideas, but really bad for task management. After all, that’s why we have Trello, Jira and Redmine, right? Without these task management systems, we would have no overview, and no real possibility to discuss trade-offs and changes in scope.
With Briteback, you can connect task management systems such as Trello as an integration, and then easily turn a message into a card in Trello, and add it to the backlog list so that it’s not forgotten. And this can easily be done even if you happen to receive the message on your smartphone while grocery shopping. No more endless “I must not forget to enter this into Jira – I must not forget to enter this into Jiro - …” mantras on the way home from the store.
Hover over a message, click the integrations icon, choose what integration you want to proceed with and create your card, which automatically will be sent to your Trello board.
It is also very simple to assign a card to someone directly from Briteback, or share the cards remaining in the current sprint with all members of the development channel.
20 sec tutorial how to easily share a Trello card by using the slash command in the chat.
You can also set up Trello streams to subscribe to changes of your choice, in order to stay on top of things.
For teams working with scrum, or a dialect of scrum, as methodology, we propose a set-up with the following public chat channels. This is a recommended set-up per scrum team.
Development This is where development issues, in all its gory and lovely details, are discussed. Nothing is too technical for this channel. No link to Stack Overflow is off limits.
Retrospective In this channel the results from a retrospective session are summarized for later follow up. The scrum master is responsible for posting updates.
Road blocks This is where road blocks are brought up and discussed. The scrum master acts as a kind of moderator and is responsible for making sure that there are no discussions with loose ends. Personal road blocks are better discussed in a private channel or in the direct channel with the scrum master.
How-to The how-to channel is where instructions for common routines are posted. The worst thing that can happen to a development team in terms of vulnerability is when one team member is the only person who knows about a certain routine, e.g. for server updates. Making sure that all such routines are posted and updated in the how-to channel is great for risk minimization.
Test Regular testing is great, but before a new release it is often mandatory to run through a test protocol. This often leads to issues that must be discussed. What is the expected behavior in this case? And what about this special case? It’s good practice to keep such discussions in the #Test channel.
Design Whether or not the team has a designer on board, design issues must be discussed. Instead of keeping this discussion in the development channel, we recommend to use a dedicated channel for design issues.
Design deliverables Design deliverables are important, and version management is key. Building a house based on the wrong drawing is a very costly mistake, and the same goes for software development. In the best of worlds, each task in the task management system has an attachment with the design. However, this does not always happen, and in cases like that, developers tend to start working on their own initiative, much to the frustration of the designers. Having a dedicated channel for design deliverables means that the developers at least know where to look, and can easily see the correct order of posted files. The Share-tab can be particularly handy for this, as well as the possibility to comment on a message or a shared file.
Customer Inviting a customer to a channel as an extern guest means that the customer can only see that particular channel, nothing else. But it’s a good alternative to communicating thru email because everything that is said is kept in one place, and visible for everyone with access to that particular channel.
Briteback is inherently role-based. All members of a team can be assigned a role. For example, for a team working with scrum, the following roles can be set up.
Product owner The product owner is responsible for the product being developed and calls the shots in terms of scope and prioritization. Can be a customer, but is often a member of the team acting as a customer representative.
Scrum master The scrum master is responsible for planning and managing daily stand-ups as well as retrospectives. He or she is also regarded as a road block remover and does everything possible to facilitate the life of the developers and the other team members.
Developer The developer has many names, coder, programmer, etc. In any case, the developer is doing the hands-on development work, and needs the most detailed understanding of the product possible. Communication is key for this.
Tester Yes, we know, there is no tester role in classic scrum. But there are so many versions and adaptations of scrum out there, that we have included this role anyway. A tester may be part of several scrum teams at the same time.
Designer The designer is responsible for deciding the functionality (together with the product owner), and designing the user interface. Another common task is user evaluations.
Customer The customer is a representative of the company that has commissioned the product or service being developed. The one that pays the bill. The customer is involved in continual discussions about what the product is supposed to be, and potential trade-offs.
Agile coach This role is more common in large enterprises employing many development teams. The agile coach helps the team adapt scrum or Kanban in a way that really meets their needs.
Default channels can also be set up for each role. We recommend the following structure. The default set up can of course be adapted at run time, and team members can change roles and channels as needed.
Even when messaging is broken down into channels, there can be several discussions going on at the same time, making the parallel discussions hard to follow. With Briteback, it is easy to manage multiple discussion threads in a channel. A message can be commented on, which is the start of a new thread. Clicking on a message that belong to such a discussion thread opens up a special view (borrowing terminology from the DB world). This way a person that wants to follow a certain thread in a channel, and thus focus on the messages that belong to that thread can work with this special window open, on top of the channel itself. All new messages written in such a view are automatically treated as belonging to the thread, and as soon as another new message in the thread is posted by someone else the thread view is updated.
On-site customers are great when it comes to getting quick feedback and discussing scope issues. But for all but in-house development projects, the on-site customer often remains a dream. Customers simply do not have the time to be onsite for more than the odd important delivery meeting. However, with Briteback’s external voice/video capabilities, it is very easy to get the customer to join in on weekly sessions, or even ad-hoc problem-solving sessions.
Even if the customer is not a Briteback user, there is the possibility of external calls. When a customer is invited to an external voice/video call in Briteback, the customer receives an email with an invite link. Clicking on the link opens up the voice/video session in his or her browser. And off you go!
Live demos with distributed customers can also be managed with Briteback’s built in screen sharing function.
Briteback’s voice/video function can also be used to include team members that are not co-located or temporarily working from home in daily stand-ups and retrospectives.
Messaging in channels has many advantages for internal communication within the team. But for communication with people outside the team, such as customers and potential future clients, email is still the de-facto standard. With Britback’s email power-up, you can easily connect your email account to Briteback, and read, send and receive emails directly in Briteback.
It’s also possible to Share important emails to a chat channel. Did you learn something important from a customer email? Just share it to the relevant chat channels. Did you get a request from a potential client that you need to discuss internally before answering? Just share the email to the relevant chat channel and have the discussion there. Anyone that is a member of that channel can later reply to the email directly from the chat channel. No need for endless forward and reply-all chains.
Here is an overview of Briteback’s email power up. It’s available for free, even in the Lite version of Briteback.
The advantages are many. Having all information in one place is great, and facilitates search. Briteback has unified search that includes your connected email accounts.
The calendar power-up in Briteback allows you to integrate your calendars in Briteback. The calendar providers currently supported are Google, Office 365 and MS Exchange. You can connect any number of calendars.
Once you have connected your calendar you can easily schedule a meeting with the entire team, with just one click.
You can also set up recurring events with voice/video sessions, useful e.g. with distributed teams. This comes in handy e.g. with daily stand-ups and retrospectives.
A secure solutionWith Briteback, you never need to worry about where your uploaded files are stored. All file uploads are handled by the cloud storage provider of your choice. This means that no uploaded files are stored on Briteback, and that you have full control of your files. At least to the extent that you trust your cloud storage provider. Perhaps you are working on a project with high security requirements and are looking for a messaging platform that can deal with that, all the way? With Briteback, you can go with a self-hosted version, where all data in the chat is stored on your own server(s). If you want to go with the self-hosted version, just contact us at email@example.com.
Try it now
If you want to try out Briteback with your development team, just hit the “Try it now”-button above and get going. It’s very easy to set up the chat channels and invite your team members. And we’ll be happy to help you along. Send us an email to firstname.lastname@example.org. All questions answered!
We also have some really cool features in the pipeline. How about:
Code formatting of chat messages Set up your formatting preferences and write proper code right in the chat input field. And what about getting your pasted code snippets formatted according to the receiver’s preferences, color highlighting and tab settings included.
Hotkeys Set up and manage your own hotkeys in Briteback. Alt-c for opening the Trello Card view? Why not! Alt-t for listing the tasks on my TODO-list? Hell yeah!
Task management from emails Creating tasks in Trello, etc, directly from an email in Briteback will soon be possible. And what about marking a piece of text, and directly turning that into a task description?