distributed teams and eclipse
DESCRIPTION
Since joining Red Hat, I've been working with an amazingly distributed team scattered around the world. I work with engineers in Beijing, Ireland, Switzerland, the United States, and more. To simplify communication we use JIRA, e-mail, IRC, and instant messenger clients to keep in touch and on task.This talk focuses on some of the Eclipse technologies we use and others we've looked into using to help us deal with the distributed nature of our environment - from using the Eclipse IDE for development and the JIRA connector for Mylyn, to potentially using ECF to manage our various chat-like communication channels, and other technologies that came to light.Brian Fitzpatrick (aka "Fitz") is a software engineer with Red Hat, Inc., who has contributed to the Data Tools Project (DTP) since its inception. Until recently, Brian's focus has mainly been on Eclipse tooling development for Sybase. This past year he joined Red Hat and has been working on cool SOA tooling. He hopes to continue helping out with DTP and elsewhere in Eclipse for the forseeable future. Currently he serves on the DTP PMC as well as as being the Team Lead for both the Connectivity and Enablement sub-projects within DTP.TRANSCRIPT
Distributed Teams and Eclipse:
Developing Over the Miles
Brian FitzpatrickSr. Software Engineer, JBoss at Red Hat March 25, 2010
2
Welcome!
During this talk we're going to talk a bit about: Distributed Teams Our Scenario at Red Hat Current solutions And a few common sense tips...
3
But first a brief introduction...
Who am I? What's my story? Why talk about distributed teams?
4
What is a distributed team?
Sometimes called “virtual” teams
5
What is a distributed team?
Sometimes called “virtual” teams Distributed times are “distributed” across time or space
6
What is a distributed team?
Sometimes called “virtual” teams Distributed times are “distributed” across time or space Typically focused on a single task or supporting a
single product/project
7
What is a distributed team?
Sometimes called “virtual” teams Distributed times are “distributed” across time or space Typically focused on a single task or supporting a
single product/project In theory anyway...
8
My Old View of Distributed Teams...
9
My NEW View of Distributed Teams...
10
What about you?
Do any of you work in similar environments?
11
More than Space... Time is the major factor
On a regular basis, conversations with multiple times and places:
California [GMT -8] Denver [GMT -7] Atlanta [GMT -6] Boston [GMT -5] Ontario [GMT -5] Dublin [GMT]
Switzerland [GMT +1] Brno [GMT +1] Minsk [GMT +2] Beijing [GMT +8] Tokyo [GMT +9]
12
Beyond Time and Space...
What are the other issues?
13
Beyond Time... Other Issues #1 - Language
English is a great common language for technical conversations
But... it's not without its challenges. Accents, grammatical differences, transmission issues
14
Other Issues #2 - Screen sharing and OS limitations
Screencasts Screen captures Wikis, Documents, PDFs
15
Other Issues #3 - Patches and Code Reviews
Bug Tracking Code Reviews
16
What about you?
What other issues do you encounter?
17
What we do today...
JIRA Mailing Lists and E-mail IRC Chat Wikis Screencasts Patches Log files Console Output...
18
Where we run into issues...
Sharing issues Multiple locations Inconsistent Reproducing issues
19
What tools we use (mostly)...
Pidgin (IM/IRC) Camstasia/Jing (Screencasts) IE/Firefox/Chrome for Wiki editing Eclipse JIRA & SVN integration Mylyn
20
Where Eclipse can help...
ECF Bug System Integration Code Reviews in the Tooling More source code control options...
21
Where Eclipse needs some help...
Improved ECF Contact/Connection Management Built-in logging and log management for ECF chats More screen capture options Something like Google Buzz or Google Wave
(See Bugzilla 280347)
22
Opportunities Exist for Improvement and Innovation
Integrated and standalone tools for distributed teams More resources for integrators trying to create such
tools People to test drive and provide feedback for early
versions of such tools
23
Bottom Line
We're all over the world. Eclipse is a good environment for a single developer,
but could be great with more multiple developer use cases.
And there are many opportunities to make things better.
24
Tips for Distributed Teams
Face to Face Meetings – Annual or more often if possible
Important to have a “Glue” person to keep things on task
Settle on consistent technology TDD and Continuous Integration
25
Thanks!
Enjoy the rest of the conference!