Wide Teams

September 13th, 2012 - Madrid

This year we’re going to do a lot more of remote work as before and I’ve been trying to hear from other people’s experiences about their way of communicating and their setup. I found this great podcast from Advi Grimm in which he interviews people involved in dispersed teams on a weekly basis, and I made myself a few messy notes to talk about them with the people that I work with. It’s far from a transcript, and I discovered later that Advi is posting show notes of every episode in his blog wideteams, but i’ll still keep this as a sort of list of keywords that remind me of what this people talked about.

There’s also a Dispersed Team Kick-Start Guide that you can get signing up to the Wide Teams mailing list.
### #1 - Interview with Marty Haught distributed teams, distributed works
standup in the morning
groupchat campfire, .. who is available, catch on chat that might’ve happen when I was not online
check with each other during the days
apple remote desktop
takes discipline to stay on task
efficient, people don’t interrupt you so often
skype screen sharing is not interactive
interactive cloud editor..
trust in your teammates.. specially if you’re not pairing

#2 - Interview with Anthony Eden

Freedom of being able to move from place to place
Pivotal tracker
Conscious effort to always be talking to each other
the biggest challenge is keeping up the task of keeping in touch, not to focus on one thing and forget that the others exits
email, google talk, phone

#3 - Interview with Mike Zazaian, Part 1

there is business value in the fact that everyone is able to live more liberated lifestyles
you lose a touch of communication
the key is rigorous communication, assuming nothing, being on everybody all the time communicating actively, not just writing people
there are ideas that can be lost, assumed, not communicated
interpersonal communication
he thinks that environments are very crucial, it affects him and he likes the chance of choosing where he wants to work every time

#4 - Interview with Mike Zazaian, Part 1

keep everyone in a irc channel

#5 - Interviews with Hashrocket and Rhomobile

paid attention to your setup, they had audio problems and that killed the experience at first
coding in vim, screen session
you lose the body language, which is very beneficial (is bad to lose it)
real audio, microphone, headsets
you have to over communicate
they use yammer
the best internet you can get
daily standups
pivotal tracker

#6 y #7- BohConf Roundtable

in online meetings, everyone gets to their personal computer
google docs, github
campfire better than an im client (campfire never leaves somebody out)
skype screen share

#8 - Interview with Loren Johnson

geographically isolated area
he’s the only distributed member of the team
he loves the mobility both financially and physically
he wanted to be on a country where he could go hiking everyday
he went to a rails conf and got a lot of remote work offers
in the last project he worked on he was rather isolated, he was doing rails and the others flash (it was a game), it would’ve been better if they could’ve meet in person a few times to build team culture
in another occasion he spent two days working in the same office talking about themselves and that helped a lot… he knows who is him, he has respect for him and interest for what he does
videochatting helps but its always a little awkward
when everybody is in the room and he was the only one out he felt his influence was smaller
the primary issue for him is not working in a distributed team but not having a group of developers on his area to bounce ideas off and hangout in a coffee shop and get that sort of resonance
the major advantage is quality of life
he uses basecamp

#9 - Interview with Michael Bleigh

50 devs, 4 at the office. Campfire.

#10 - Interview with Aslak Hellesøy

standup in the night to discuss the stories that are on the board, spend a couples of weeks together, build trust and understanding. Pick tools to get maximum transparency on what everybody is doing at every time, travel, meet each other, do fun things together to build trust

#11 - Interview with John McCaffrey

remote pair programming.. ping-pong: a guy writes a tests that fails, the other fixes it.. keeping each other engadget, pairing is sort of an exhausting thing, it’s difficult to communicate everything but it’s a better code, the rails community is very good at it
a day in his life: It might start out with everybody in Campfire, we check and see what we’re doing, posts -24, here’s the things that i did yesterday, the problems i worked on, plus 24, here’s the things that i’m gonna be working on the next 24 hours or so, any outstanding issues or blockers, things that you need somebody else to do, and then, there might be a calling standup to discuss where things are at and if there is a change in priorities, people might look in pivotal tracker to see what stories are available, which are closed, etc, check the build machine, check the app, pick which tasks you are going to work on, look for a pair to join you, may be he works with you on the morning and works in something else in the afternoon, then two people get together using google chat, google voice to start the conversation, and they hook up, may be using teamviewer or skype, sharing their desktop (..) make sure everybody has the latest code, all the tests pass, we are good to go, we know what we’re working on, etc, and then hopefully be able to finish things and deploy the code and go to the QA team, this feature is done ready to be tested…
6 people, 4 office 2 remote, work from home friday
VPN, github, etc.
start small, start with one person remotely, doing work remotely requires you to be more of an expert, better at communication, better at follow through, better at being proactive and motivated
you get one week contract as part of your interview, you pair with them remotely on some tasks… figure out if you fit with us and we fit with you, if not, that was fun, moving on

#12 - Interview with David Rogers

RoR, worked from home 90% of the time, now he works with other developers around and
some of them remote. Campfire. Daily Scrum. Feels more comfortable collocated. If you are starting it really helps to be local, if you have experience remote work has its benefits. Make sure you choose well the people that are working for you

#13 - Interviews with Jody Alkema and Peter van Hardenburg

scrum, pivotal
positive experience
takes time to trust that you understand each other, that if you share something online you’re going to be understood
advantages: you get very talented developers
quick voice calls are really good
another heroku guy, after working remote two and a half years, he was happy to move back to an office to keep in touch with other professionals, he says that it would’ve been easier if in his place there had been a community to meet up
the biggest challenge is pushing away the distractions of home life
most conversations happen in the irc channel
advise : develop a good routine, separate your work life from your private life, you need to define well a space and time to work in, it helps if you have a real time collaboration environment with your coworkers
as an independent remote employee, establishing that space is key to survive

#14 - Interview with Jim Weirich

three different locations: Columbus (16), Cincinnati (2), UK (2)
remote pairing
a lot of clients are also remote
at first very low tech.. emacs with screen in the same unix machine in which they logged in, local browsers, skype sessions.. and he found it to be very important, if he can see the guy he’s pairing with and the expressions on his face.. that gives him a lot of visual information.. if he likes/doesn’t like what you are doing, if he’s nodding, if he’s confused or just think it about it
lately, ichat for screen sharing, sharing same browser, the downside is the remote guy suffers a little of lag and thats a disadvantage, you have to switch so one is never always the remote
purchase “skype phones” (amazon), so they don’t have to run skype on their machines, he’s an advocate of having video up during the whole collaboration session.. he much prefers having video on
challenge: engagement: if you take a break, you go away from the computer and you come back and don’t now if the other guy is back, do you ping him? you don’t wanna annoy him, there is a little bit of social friction with getting started again, so that means that your breaks tend to be a little bit longer, you have to be conscious about it and work against it.. the video phones help in that regard… i come back and seat there and if he’s there we start pairing again
if he were in Columbus he would rather be collocated
they have daily video standups
advise: if its a new team and you haven’t worked together before, get together and do some in person time, with another company he went to california for a week to work with them in the office, to know the kind of interactions that are going on… expend a week together every couple months or so

#15 - Intridea

45 people in the company, also close to 45 locations
they don’t have clumps of people working together
for the most part everybody is distributed
you go where the talent is
distributed from the beginning of the company, four years ago
the teams are from 2 to 13
campfire, teamspeak
they try to get together once in a while, have some dinner, go out
it’s working for them, surprisingly they had very few challenges, possible for the kind of people that they hired
the short commute is great, flexibility, no set hours
don’t force the communication method to use, allow people to work on the schedule that works for them ensuring some overlap
ensure that you have someone in the timezone of your client / overlapped
have trust in your team
you need to hire selfstarters, selfmotivaters, people that you can trust to be independent, is not for everyone.. you need to hire very motivated people who love what they do

#16, #17, #18 - Ruby DCamp 2010

(several people)
pretty successful so far
IM, phone calls, virtual daily standup through email
skype, vnc
vpn for demos for the client
teams who didn’t have solid practices like TDD were a challenge
when connection fails is horrible
together is better for discussion, separated better for heads down
other doesn’t like the mail standup idea
another… I’ve seen emails trying to simulate standups and chatrooms.. but neither work as well in my experience if you have to be distributed as skype or phone or something like that, because I’ve seen people on the online chats who have been only paying attention when it was their turn, they were typing away on their code, that’s a bad thing, the whole point is to get people together
standups in second life
standups recorded in youtube for the others to pick up later

(several people)
most distributed teams are usually experienced people
you have to earn the experience and ability to work distributed the same way that when you’re new you eventually earn the ability to work without pairing 100% of the time, some new people, they just can’t work on their own, they need help every step of the way and eventually they start working away from you a little bit at a time until they work away from you most of the time
i’ve seen relative new developers tend to not ask questions, either because they think that they will solve it or because they think that they must solve it
sometimes that’s a good think (you’ve discovered ten wrong ways to do it, which ends up being more valuable that knowing the right way to do it)
some companies remote pair the whole time
the importance of having face to face time at the beginning, after you’ve been in proximity, you are “entangled”, the connection is still there, when you talk with them by email “you see their face”
have a week setting up and trying the collaborations tools that you’re gonna use
the wonderful thing of pairing is that you can start with it whatever level they are at
they made an study and the result was that people in different floors in the same building had far worse communication that even the teams spread among different countries, because remote teams made an effort to communicate
Even people in the same room use chat, campfire.. because of the asynchronicity of the system, not being immediately interrupted

(several people)
lack of productivity dispersion is an scapegoat easy to blame even though it might not be the problem, you have teams where everyone is really on board with being a disperse team, but if there is someone who isn’t on board, especially if he’s on management, he’ll probably exploit some of that and call it “disperse issues” when they are really organizational issues
customers are in some sense always dispersed

#19 - Interview with Steven Willmott

half german half english living in barcelona
people in barcelona, in california, in chicago, a guy living in the mountains, another guy was in galicia, then uk, then france
dispersed work within a small team pulling in the same direction is easier than being a working remotely as a partial time developer for another company
15minutes standup meeting about 10:30 in the morning
pivotal, skype, version control
weekly delivery cycle for the main product
generally they work independently
screen sharing through skype
customers primarily in US, part in UK, part in Spain
sales support in california, tech support in spain
they provide 24h support, they are pretty small so they rotate schedules so there’s always someone around, someone ends up going to be late and other waking up early
makes a huge different to put a name to a face, make sure people get together every few couples of months minimum
having more than one people in each location so can get together more often
a physical place to work together time to time

#20 - Interview with Thomaz Leite

dispersed time, rails
usa, brazil, portugal
before he was freelancing, you kind of work dispersed with your client when you’re freelancing. now they work in a distributed team
http://mumble.sourceforge.net/ Mumble is an open source, low-latency, high quality voice chat software primarily intended for use while gaming.
they pair one or two hours a day, their goal is to get to pair 50% of the time
pair with the right persons

#21 - Interview with Tony Amoyal

challenges of working in a distributed team when your product is not as well defined as it could be
on of the reasons he chose web development is the flexibility to work wherever you want
he’s a passionate traveler
different experiences: from three person startup team, to 50 person company where the entire engineer team is remote
the ability to cook my own food which is healthier
daily meetings to catch up and regroup and write it down in a todo list

#22 y #23 - Rob Dempsey of LifeOfTheFreelancer.com

advi: as some time he realized that he wanted to spend more time at home with this family
agile practices
meet the team in person
have goals for the iteration
you have to be intentional about it, everything is going to be a little more effort, as long as all the members of team are aware of it and want to make it work, it works
make sure that the connections happen
working agreements, having an actual short written list of things like we will report status in the daily meeting everyday, update our IM tool at least once one hour… things to help you remember to keep those lines of communication opened
you’ve gotta be flexible.. you constantly improve by evaluating frequently the tools and the techniques that you are using and suggesting improvements… dispersed teams are more reliant on that tools and techniques to keep those lines of communication opened. You really have to have retrospectives every couple of weeks or at most every month to talk about what it’s working and what the annoyances are to modify those agreements and tools and try new things
optimize your processes
the biggest challenge is to get people feel involved and invested in the project when they are far away
people are sometimes having a hard time, a bad day, and you don’t know it .. you need other means to know how they feel, act on comments on twitter or facebook, if you have to cheer someone up
video or voice, you can infer emotions.. with text you can get it wrong, place a call
advi… with one of his teams he’s not spending enough video time, so he records a video at the end of the night as a status update and send it to them
skype phones
people turn off the video because it’s in the middle of their work space, with a dedicated phone you’re more likely to live it on

#24 - Derek Wade

more abstract concerns about communication and cognitive science

#25 - Jared Goralnick of AwayFind.com

distributed teams can succeed, but not startups.. today we talk with a man that doesn’t believe that

different parts of australia, usa, buenos aires.. he works remotely too with his local team
quality and cost.. it was really hard to find folks for what they were doing (writing something of top of MS Office).. the also found good and less expensive developers
personal lifestyle of being on the go
In an startup situation things can get tense and things move quickly.. you need to have report, you need to have good relationships and feel like you are in a team.. people consider that outsourcing and distributed teams are more or less the same but the relationship between the members of the team is quite different.. in a relationship in which you ask someone to build something and then stop, that typically outsourcing and people don’t usually take ownership and usually they don’t take pride in it… in a relationship in which you build things continously and you are part of the team it really doesn’t matter where you are
you need to be able to treat your team wherever they are as if they were working aside.. you need to have vector, to need to able to assign them things in the same way that you would assign to someone that is local, so why is it that you would just tell someone who’s working in the same city “hey, i just need a bottom down, something that just works”, if that’s the kind of spec that you’d give someone who is local, that should be the same kind of spec that you would give to somebody else, and what often happens is that people find themselves overspec.. treated in a very different way… and i’m not saying that you should not write detailed specifications .. it just that whatever the balance you want to achieve with your communication, you should make sure that you achieve the same sort of balance with team that’s working further away.. and that’s harder, because you’re not talking to them while sitting aside at lunch
you need to work to achieve that
he looks for people with previous experience working remotely
the need to be able to speak up, to comment when they run into issues
besides their ability to communicate, is his ability to work independently, which is something that you can only judge from people who’ve done it in the past, the first time that someone tries to work from home, some people do it very poorly, they are not motivated enough if they are not in an office
you need to hire people and let go off people, if you hire someone and the relationship doesn’t grow, if it doesn’t work you have to stop
the feedback loop has to be a conscious effort (if you like or don’t like what he’s doing) as opposed to passive “i’ll look at the next version” kind of thing, if you guys what to known if you are in the same page
being clear and realistic about the deadlines really does help to know whether there’s progress
constant feedback is the best card
when a remote team you don’t have the same exact time overlap as with office hours, you can’t expect them to be there exact hours, part of the point of being remote is having some flexibility, people go to lunch, etc
you need to rely a little bit more about scheduling a meeting with a colleague, you rely a little bit more on calendars and that kind of staff… you need to get better at scheduling things as opposed as just expecting them to be there… now, I would expect that if i’m trying to reach someone of my team, and i message them 9am, at noon, at… i hope that at least one/two of these times they are going to be at the computer
People shouldn’t specifically choose a remote team unless there is some reason, that can be financial, that kind be for quality, it can be for lifestyle, if there is not on of this reason and there is a challenge in being remote, then being together in the same place is good. A better model is to have a core location to create a culture and they want to work remotely, they can do it all the time, if they want to work at the office, they can do it all the time.. that core of people, face to face, is very useful
one of the advantages of remotes team is being able to work focused independently

#26 - Sahil Parikh of DeskAway.com

located in Bombay, runs a company called Deskaway, his startups is a web collaboration tool for dispersed teams
He can hire and contract from everywhere

#27 - Susan Tenby & Jessica Dally of TechSoup

Non-Profits, Second-Life virtual world meetings
no real faces or voices
something real, visceral on being able to have proximity to people, interactions when instead of talking to everybody at once you come closer to somebody, you can see where they are looking/paying attention
volunteers from different city working remotely
support group meetings

#28 - Shane Pearlman of Shane & Peter

fully dispersed consulting company
started as freelancing collaboration
average team 4-5
he works at a coworking space to have some company, but he’s the exception of his team
each team have different personality
bad reviews of the skype beta multiperson video
most of daily communication goes in redmine
the build a plugin to “poke” on people - they assign a comment to someone one and this person is now the blocker of that comment until he pays attention
wiki, gdocs..
unless your systems fit into their existing work patterns, they are not going to use yours..
following each other in twitter, a public blog for internal use just of photos of family/funny things that everybody does..
the do a trip each year… they go all together for a week to somewhere warm, like ecuador, salvador…
you have to do it in a way that it’s fun rather than another project
you need accountability.. it’s not doing what you say that you are going to do, but to have the maturity of looking a little bit ahead and see where the possible roadblocks are coming and plan for it well
it’s wonderful that you can work whenever you want and it’s all results based, but that’s only functional if you’re available to figure out what you’re doing (In one occasion, two people started coding the same thing)
a problem is that people get busy and stop talking about stuff
people have to now what’s next, accountability usually fails when people are confused
careful to get into details and forget the big picture
the tendency to question is maybe a little less at a distance with people
some clients don’t now how to communicate and in those cases being face to face helps
they had a lunch and it was buggy, and they had told them that if was going to be buggy but they hadn’t internalized it, if they had gone out for a few beers may’ve helped.. sometimes when they can’t see it turns into a “us and them” situation.

#29 - John Hawkins of 9Seeds LLC

wordpress development, custom themes, custom plugins
LA, Minnesota, Florida
whatever time works best for you, go ahead and do it, as long you get the work done
scrum meetings with a client, about 9 minutes
2 hours mails, tickets, also accounting
IM all day long
skype for video and screensharing when needed
he works from home, he can’t imagine going to an office again, but he’s looking now for a coworking space to drop by a couple of days of the week in he wants to.. he’s looking for the best of both worlds

#30 - Dan Menard of Macadamian

schedule flexibility, fit about 8 hours into your day, about 5 days a week
you need a little bit of personal connection with your roommates, chat about personal life, not only business, travel now and then to meet the others
advantages of a team broken across different timezones… the big one is the concept of a critical path, if you have a bunch of features that have to be done in sequence, so they can’t be done in parallel at all, then you now your project will take at least as long as those tasks will take, so if you have say, 3 tasks, each one takes one week, that have to be done in sequence, generally you know that your project will take at least three weeks, what you can do with the timezones is to play with that a little bit, because if we are working two completely different shifts and i have kind of a 8 hours shift here and another team if doing 8 hours in armenia, that we can actually fit closer to 16 hours in a day, so we can get projects done in about half the time, if we play the timezones in our advantage, which we don’t always do
We don’t wanna to do completely different shits, you wanna have some overlap to keep everyone in sync, you need to work out how much overlap you want to have, specially at the start and end of the project
skype, wiki for persistence, email, code review (we are very heavy on code review, and we often do that by email), internal newscript server
smartboard instead of whiteboards
Whiteboard with a projector hooked up to it, and the projector sort of works as a touchscreen, it tracks where you are and where you are touching of the board
the whole teams participates in code review, all code is always reviewed, we have a process called “patch a day”, every you’re a supposed to post of a patch for every changes you’ve made, and that get’s reviewed and committed to source, it’s very common that a patch will have a bit of discussion and a few replies to it before it actually goes through, the idea there if that it’s very hard to make code review in large patches, but if you do it in small one day size chunks becomes very easy, you get a lot of nice benefits out of doing this, you develop good patterns, you catch bugs earlier on when they’re cheaper to fix, and it’s actually a great way to train new teams members, they get to see the differents parts of the application, they gain a lot of experience from reading other people’s code.
So, who does the reviewing? pretty much everyone, when you upload one of your patches you assign it to someone else and that person will review it, it becomes their responsibility, and if there’s a bug that slips through the code review, they can be in charge of fixing it as well, there is a little bit of responsibility as well, you have to actually pay attention

#31 - Joseph Moore of Pivotal Labs

transition from colocated to remote
he moved from san francisco to georgia with his wife
100% pair programming
standard equipment, everybody has the top-end imac available
skype for video and voice, built-in apple screensharing app
ichat can do full screen sharing but the quality is too variable
for pair programming, have people with a little more patience, that’s a good quality
you do lose a little bit of fidelity, even if you have video running and you can see their face and everything (which is very important in my opinion), you can be a little more distracted (maybe you have a laptop on the side running twitter), you have to be really self-aware and disciplent about that
It’s important to take breaks when you are pairing in general, when you are remote i think it may be even more important
some people use pomodoro, we let it happen naturally, like once an hour.. then we have lunch break in the middle of the day
do you ever find it difficult when you’re remote to get back from the break in a timely way? it hasn’t been too much of a problem, but there’s a little bit of that risk, and that’s one the criticism that i’ve heard of of remote pairing, you’re back at your computer and you don’t know if that person if around, maybe you get distracted by something and you don’t realize you’ve taken 10 minutes doing your laundry, feeding your cat or something.. i would say it hasn’t been that big of a deal, that’s another way in which video is important, like just having a running video, if you are doing the chores and you look into your machine and you see that person has come back and sat down, that kind of prompt you to come back.
Keyboard back and forth, voice cues “you mind if I finish this real quick”, “can i try something”… some people are better at it than others
that gets back to patience.. if you fly off the handle every time someone takes the mouse unexpectedly, then remote pairing might not be the best for you
builtin screen share on the mac has almost no lag
I have a personal laptop next to me.. now I have a 27” monitor, in my monitor i have a little corner for video, but I would recommend to offload the voice and video to another machine if you can..
Sometimes i was “joe on the box“, they had an extra laptop with our video sessions and they “pick me up” and took into demos, meetings.. like a head in a jar, they treated the laptop as if it was a person
I would say the remote pairing is 95% as good as regular pairing
switch between pairs often so everybody knows the different parts of the system
daily standups
they have a snowball mic, so I can hear them very well
in those standups, they stand up but he stays seating XD he’d like to stand up as well if he finds a place for the laptop
(Avdi: he realizes that is he’s doing the standup remotely he’s tempted to check twitter or continue typing in whatever is he was working on, it would be better to stand up as well, he’s thinking of getting an external cam)
He is distractible as anyone else, he can be distracted during standups because people might not be able to tell if you’re doing something else, a trick to combat his own weakness: he logs in and screenshares into the machine that is running the standup and get’s into pivotal tracker (everyday in the standup they look at pivotal tracker to see what they’re going to do that they), that kind of combats that distraction factor
about relationships – for me personally the hardest thing about this entire experience if trying not to lose that deep connection that you have with the people back at home, friends, people that you work with.. yes, it is hard, it’s one of those things that i’m still figuring out, I went back a week to san francisco to work with my team, and that’s really important if you can make it happen
advises: many say discipline, specially if you’re working by yourself, I would say that for my personal situation, in which I don’t have as much as the accountability issues that other people do, because I have to work with someone for 8 hours a day, so daily I have 8 hours worth of work to do, and I’m accountable for it, for me personally, it would be patience.. don’t get too frustrated when the technology is finicky and isn’t working out so well, have patience with the person that you have to work remotely with, they might never had to work remotely, or maybe they had bad experiences.. being patience with them till they get used to the situation, some people will have a hard time with it at first.
I’m fascinated with how much “normal” work environment can be replicated with distributed teams, may be certain things should not even try to be replicated and certain things might even work better than in an office, i don’t know
I would admit that I had enjoyed the flexibility of being of have gotten three hours ahead of the west coast, for example, i can do things like talk to you at 10 in the morning.. then I work till 9, that’s the double edge sword
I’m contemplating the possibility of going to a coworking place to get more social interaction

#32 - Louis Font of Zyncro

barcelona, argentina, startup, 1 years, 30 people, they speak with each other min. 3 times a day, in meetings they sometimes put a laptop with skype on a very tall chair to see the face of the person like if that person where there, at the end of the day it feels like if that person where there. The main challenge was at the beginning, try to meet the other people in person when they come to the city, set aside time to speak with the other people at least twice a day

#33 - Keith Casey of Blue Parabola

we usually have a chat channel opened - skype
a couple of status calls in the week, every shows up, it’s mandatory, we see who’s doing what, problems, etc
different timezones
google docs is vital to edit simultaneously
he works from home: the best, no commuting times, he saves 2 hours a day
negative: stopping at the end of the day, being able to say i’m done
make decisions out in the open, better than private channels all over the place
people more suited to remote work… he would never have a junior guy doing remote work, they need to be involved and demonstrate some skills… in a company, completely new developers, never, for mentorship they need to be sitting next to somebody else..
he likes visiting offices but not “living there”
open up the channels of communication even before you become a dispersed team, get used to them even when you are still together

#34 - Ron Evans of The Hybrid Group

Different languages, timezones, they work in english, they use skype intensively, a skype chatroom for each client.. As a consultancy, transparency in fundamental… You get more focused, you bring together expertise from everywhere, sometimes you need collaboration, sometimes you need to eliminate distraction, sometimes you need to be more collaborative
Kanban is a japanese word for billboard, is also a philosophy of limiting the amount of work in progress, a sort of very lean version of scrum.
We had spent a lot of money in a office with cool furniture
Spend more time with your family, with your kids… find a personal space within your work
companies who do that they often recruit and retain better people
for people without kids, what about personal time or other interests? what about time to workout, or play music, or spend time to with love ones, or have time to reflect, or develop personal skills outside of work
avoiding commute times, being able of choose for your environment for productivity

#35 - Harvey Losin


#36 - Ben Johnson of Merrill Corporation

instant messaging, conferencing, issue trackers, wikis..
it’s great the ability to focus, without distraction.. in the topic of value of knowledge sharing vs being able to get things done, he thinks is worth it compared to the decrease of knowledge share, he says that there are many ways to achieve that sharing but it’s really hard to get to that deep thought around a design or strategy direction in a office where you can be distracted any minute.
Depends on your personality type, introverts get “more energy” when being alone, they can get burned out with a continuous interaction.
I’m fine with trusting that people are doing what they are supposed to be, what bugs occasionally is to try to encourage some folks to come up and surface their problem sooner
sometimes it would help to speak up sooner, a frequent checking of “how you doing?”, daily standups (to let people list their blockers, know if they’re stucked)
he wishes he could do more code reviews
standardized tools… they got to standardized hardware, all team on OsX, ichat, screensharing…
they had some occasions when there was an imbalance with the people that were remote and the people who were collocate in the office, it actually went both ways, sometimes the people that were remote were better connected that the people that were in the office and viceversa, but the best example is standups, were a few people would gather in the room and for the first minutes they were all chatty about what happened yesterday, and those of us who were remote were “come on guys, down to business, let’s do it”.. it created enough of a disparity that we ended up moving standups to full conference call, everybody calling from their desks… that really level the playing field for the type of collaboration
advise: more use of real faces in avatars, it’s a lot easier to get snarky with a generic avatar that it is to a smiling mugshot
time to time you need visual context, to know if he’s sarcastic but smiling

#37 - Justin Searls of Test Double

the importance of the habits that stick
many experiences.. one bad:us vs them dichotomy, the had followed the path of least resistance when communicating… they had to place all developers under the same communications constrains (everybody at their desktop)
if you don’t communicate visually time to time, or if you have bad communication, you start imagining things like they don’t like what you’re doing or the give a crap or they’re doing may be something malicious.. try to communicate instead of making a bunch of assumptions..

#38 - Vassilis Rizopoulos of Zühlke

Discipline, daily standups, chase people a little bit more just to keep in the loop,
advise: get a room with a door at home, his home it’s an open office, and everytime their kids come home afterschool he got to stop working..the boundary has to be clear, it has to be clear when it’s work time and you shouldn’t be interrupted
the positive: your working space is 5 meters from your bed , the negative: your working space is 5 meters from your place

#39 - Interview with Luke Stokes and Brett Florio of Foxycart

foxycart distributed team, campfire chatrooms , ask when u think you misunderstood something, be clear in your relationships with the others Weekly google plus hangout–
google hangouts brings a lot of unity
they used also Heytell as a sort of asynchronous walkietalkie
also imessage
A day in the life with Foxycart

Wake up, check email
Read through Campfire logs
Read through forum posts
Read through support tickets
Jump into your individual focus
Work in blocks
usan http://letsfreckle.com/ para que todos puedan ver cuantas horas trabajan los otros y en qué, cada uno hace las cosas a su ritmo, si quieres ir a surfear por la mañana y luego con tus hijos por la tarde hazlo, algunos deciden que quieren trabajar solo 30 horas a la semana, algunos trabajan mucho más, es bueno para tener un poco de peer presure y como compañia saber en qué estás invirtiendo tu tiempo

#40 - Interview with Mike Leone of Panoptic Development

daily standup meetings in IRC (old school :)
people work a different times, but at 6 the all say what they’ve working on, what they are going to do next
a company wide check in by phone/skype every monday, around an hour, focusing about the midterm (this week, this month..)
a bookclub, so to speak: every month they pick a book, article, podcast, presentation… and they discuss about it for about half an hour
code reviews - skype with screen sharing
get together (physically) with team when you have the chance (they live in different cities)
the office is for you want to be more sociable on a certain day, or you want to change of scenery, or you want a different kind of work/life separation.. that’s really the point, not having to be in the office for a face to face continuous meeting
occasionally the meet for client meetings

#41 - Jonathan Wallace of Highgroove Studios

empower your developers, let them work whenever they work
the can work together or at home.. for example, it’s raining and you don’t feel like it
just make sure you do the things you commit to
what do you measure is you don’t measure hours?
the metric to manage is, are you getting things done? are the clients happy? are the developers happy?
the use campfire as a chatroom for all the employees… they are constantly communication through it … he wakes up, types good morning if there is none that yet, he checks emails, goes to pivotal tracker, now that he has children he works better on the morning, but if he needs to do something else like taking his kids somewhere he goes with them and then works on the afternoon
You need discipline to sit and get the work done, in the beginning it’s was a little harder.. he’s being doing that for four years, now it’s getting away from the computer what it’s getting harder.. you have also to avoid working too much, that’s not maintainable, that leads to burnout
he visits the office to meet new employees when he’s got the chance
they have a monthly dinner and a monthly hack night
summarizing things.. any communication that occurs one on one, out of pivotal or the chat, a casual conversation in the office.. it’s very important to reduce the “bus factor” (if one of the team members is hit by a bus, what happens to the project), you want to summarize the most important things in a central location
for example, you find out with another guy that there is some bug.. or that the tests are suddenly failing on master, you talk with him but don’t have the time to fix it, you have some ideas but you don’t know what it is, then go on and post it on pivotal so people don’t find it next day and wonder why their tests are failing, that makes you lose trust on the project, it’s much better to read, ah, these guys found out this yesterday, these are the initial thoughts, etc.
complement people when they do something great, or that you respect
get some face to face time whenever possible

#42 - Chad Fowler of LivingSocial

he was always travelling… india, japan, europe…
at first (for 6 years) he was in isolation… you have the psychological aspect of being a developer isolated from other developers
then he move to be part of distributed teams
in local teams, the ability of just being able to turn your chair around and interrupt them, as annoying as that might be, is an important part of daily interaction, you need some mechanism to collaborate in a kind of brain-stormy non-goal driven way to bond developers to each other.. it’s just to get that kind of camaraderie (being in the trenches with, gone to battle with…), a lot of it comes from dramatic work situations that they’ve been through together, also from giving birth to an idea together, and that’s something that you don’t do during a conference call with an end time and a desired end result
distributed teams can work very well but you have to very explicitly work on it
you have to start getting into your head that every brainstorming session or hallway conversation is potentially excluding someone that should be part of it, whenever you share information you have to be think of a, b and timezones… that kind of staff it’s really hard, the lazy choice is to do what is convenient for people that are local, and as an afterthought add remove people to it
technology is very important.. conference calls suck, it sucks to be on the call end specially if there’s a room full of people, it’s almost impossible to inject yourself in the conversation.. if you are in a situation in which you have a core location and the people who are distributed beyond that core location like we do, in all discussions you have to very explicitly allow time and ask for the people on the remote end of the conversation to talk… sometimes i ask people to go talk to the microphone everytime they want to say something, even if it’s weird and annoying it will raise awareness that not everybody is in the same room.. sometimes we have a dedicated person to attend to the chat just in case someone wants to talk and he’ll interrumpt the others in their behalf
… for important conversations don’t have a room ever with multiple people on it, have everyone be at their own desk, using the same mechanism to talk, to level the playfield.. it also helps with the audio quality.. (del Avdi Grimm: we are kind of fighting evolution when we are trying to convince ourselves that the people on the other end of line are as real as the people in the room with us, there’s a lot of instinct that goes into kind of prioritazing the people around us..)
force people who work in that core location to work from home often so they understand better how the experience of the remote worker is
we were all kind of insensitive (EEUU-India) to the person on the other side of that email or skype call, we were always assuming that we were communicating clearly
why let people work from home? i don’t wanna be limited to just software developers in Washington DC / the lifestyle of working from home is something very appealing, and i think for a lot of people very healthy… I went from being quite severely obese to not severely obese, people ask me how i did it, the secret for me is that i had such flexibility because i didn’t have to go to an office everyday, I trained for a couple of marathons, I could go running whenever i felt like it, i could take a nap whenever i didn’t sleep well,.. that led to a happier more productive me.. I’ve also seen that it can go either way, some people are extremely productive at home and they frankly can work a whole lot since they wake up
(Advi Grimm: for me, I really value the flexibility of working from home and choosing my hours, of choosing where i live based on where my family wants to live)
I worked with people that just can’t do it, there’s some people whose personalities are never going to be ok with that, some people haven’t done it before and can’t imagine how it would be like, some people need to be surrounded to stay focus
(Advi Grimm: if you are not interested on the project, not inspired by it any more, is easier to start flaking out on it.. and i say that and i immediately think, on the other hand, I can think of some hours long conversations about nothing that I’ve had in hallways avoiding work)
I think it just become more apparent if you are remote, if you are not it will take longer for people to notice your desinterest (you just show up)
You have to very good at communicating, by text, email.. even by voice to be effective.. an online extrovert gives you a hint that this person will be able to be present remotely

#43 - Greg Bell of Reverb Software

active admin
France, Vancouber
they have a shared office space, they are building an office to go there time to time if they wan to, he’s a big fan of face to face team time
at first they didn’t have to skills to do things quickly distributed, initially it didn’t work out, they didn’t have the technology in place, they had language barriers
they wanted to have top talent, they want to keep people around.. they saw that they had to look everywhere, they let people travel while working.. they had a natural transition… people wanted to experience life a little bit different and the organization was willing to let that happen.. at the time he wasn’t a huge proponent of it,
He tried to get in the same room as much people as possible, then to get people face time as much as possible, and as much as they can have the team connected and working together, they do so.
The use Google Hangouts to do their standups
They tried to have the right tools in place but at the end of they day it’s more about the process and having the right people
his ideal people actually enjoy writing doing what they are doing, documenting and making obvious what they are up to, persons who love to write detailed tickets and requirement, more a part of who they are as something that they are forced to do
daily standups at 8am
they try to have the other relevant conversations between team members right then
documenting as much as possible
https://www.hipchat.com/ all day
advi uses what the teams he’s working with uses, mostly campfire
strategies for when teams work with very different times zones to avoid that they have to wait for hours to get an answers — one if having two very different things to work on, so if they got stuck with one they can work on the other, the other is making an effort to try to anticipate some of the future question that will arise (to be more forward looking)
for pair programming you need people willing to work at the same hour
One thing that you have to keep in mind: showing progress in a way that everybody can see it, everybody needs to have that sense that that progress is being made.. you can activity feeds, campfire, hipchat

#44 - Rob Park

remote pairing
with pair programming to get ideas to trasverse the team a lot faster, and for him is also fun to work that way
communication is everything
headsets for standard meetings
lo de canvas otra vez, buscar link
a wireless headset to wander around a bit and not being distracted from what’s going on in your computer
some people start going crazy if they stay home for too long, but you can’t really do a good pair programming from a starbucks
as years go by it’s easier and easier work remotely, now things are much smoother
many large companies have already a vpn setup, things like fighting with a router are not longer the issue any more
have some patience, if the other person is not already there keep doing what you’re doing and don’t get too stressed about it
promiscuous pairing
i’ve got a doctor appointment, what should i do? just go, don’t worry about it
plan ahead a little bit, have some schedule
there is a shortage of developers, if you only search for them in one place or force them to be what you are you have more difficulties finding good people
some companies treat it as a privilege to work at home, but it’s not just that, they kind of need to do this to find good people and keep them for a longer period of time

#45 - Mike Smith of Blitz.io

the energy of knowing that you’re app is being used
complicated technical discussion escalate to skype.. sometimes that’s not enough and you miss the room with a whiteboard
google docs drawing module, for fancier diagraming lucid chart
highlight and element to direct people’s eyes to some path
sometimes is good to have the ability to talk spontaneously about some problem with someone who is sitting next to you, even if it’s a halfbaked idea

#46 - Katie Cunningham of Cox Media Group

it works better when most of them are remote
she was working on a team in which she was only remote and she felt a little isolated, she was missing information, that was normally happening in desks sights. We would have a conversation about a feature, agree on how to do it, i’m doing it that way and two days later they ask why is she doing it like that, she says “that’s in the ticket” and they would say “ah, oh right, I was goona update that”.. missing conversations was wasting everybody’s team… with this new team, completely distributed, all conversations must happen in IRC, so they are keenly aware of what’s going on
she wakes up, takes the kids out the door to the babysitters, come back, make some coffee, and usually settle down to work right away, she used to wait an hour and do other stuff but then she decided that she was happier actually just starting to work so he could get off earlier.. she uses the pomodoro method, work for 25 min, 5 min break, this is very important working from home because you have distraction free environment and you tendency to not get up as much, just move to somewhere else for 5 minutes, walk.. when you are home your coffee is 3 steps away from your desk, your lunch is 12 steps away..
take some time to exercise, some yoga, 10 minutes of kinect…
meetings in IRC, a quick lunch
then she works on her books, she’s still very awake
one of the nice things about having this kind of schedule is that she doesn’t feel strained, at the office she was dying for lunch just to get out, she was running out of energy cause she was not as relaxed, you had to commmute
she works one hour in her books, then she goes back to the other work
she works better on the mornings, if she has something important to do, she sets the alarm clock at 4am and then takes a nap at 2
clean up your desk, move away your lunch plates
at 4pm i wind down, i leave my desk, she puts on her pants (she works in a sort of pyjamas XD), go pick up the kids
she’s been able to train her child as to how to deal with her while she’s working so it doesn’t affect the job, at first she thought she was going to be unable to work with her kids and after training them and teaching them what it mean “i am working”, that if something is on fire or you cut yourself please come to me but if not you are on your own until I have another break
advi - I think it’s cool when people find a middle ground where they can have their family around it
She didn’t feel it isolated, she thought “i’m a very social person, i’m gonna have to go work in some workspace, some public workspace” and she’s really not missing it all, she likes not having people interrupting me.. my problem is that my uptime if people’s downtime
evening people come in to work and they are not ready to roll, so they come and chat to you, and i’m like i’m really trying to work, this is my goodtime, and in the afternoon when they are busy they don’t wanna talk to me
She thought she would be lonelier but she’s not, she’s constantly talking to people at work but she can also ignore them (they are in IRC)
you are very focused working from home and at the same time less tired than when you are at an office
getting help from work is harder, when i have a question that can’t be answered by my group, trying to get people’s attention and saying I have an issue with this it’s more complicated because they are not looking at the irc, you don’t know who is at their desk
tip: don’t be shy to call your manager and ask him who’s around
you can set up bells for certain words in irc
make sure you can organize yourself, organize your day
writing skills, for the most part you’re going to communicate by writing
learn to communicate early
learn how to make your presence felt, for example get every morning in IRC and say hi everybody, ask them about their kids, their weekend
make your presence felt because you don’t wanna start feeling invisible, that’s a very distressing / depressing time, even though you are closing tickets, you are rockstart.. you feel like you don’t have any connection to the people there
chat with them in twitter, friend them in twitter..

#47 - Will Farrington & Mike Skalnik of Github

guys from github, in a meeting to know in person other githubbers
Korea, Australia, New Zealand, US, England
two thirds of the company work remote right now
for the most part people work from their homes, there is a couple of small coworking spaces for 4 or 5 people in two cities
for the first year or two github didn’t even have an office, they work where they could
github tries to make everyone happy, if you want to relocate go ahead and do it
they focus on doing everything asynchronous, things don’t require immediate attention
teams are self-organized
only support and operations have hours which they have elected amongst themselves, they created their own rules for hours that didn’t exist anywhere else in the company, they did for certain things like answering support tickets in which you kind of have to put some syncronous behaviour
campfire for conversations… the have a room call the danger room, where basically everything not work related gets stuffed, it’s constantly packed with people talking about random things, it’s like the office watercooler for us
we also have an internal application called “team”, sort of an internal twitter, it’s a great tool to keep up to date with higher level things, you have a timeline with information about the different projects, you can comment on it, you can get involved if you want to, but you have to actively go in and read it, it’s not an information that it pushed to you filling your inbox
make reasonable for everyone to participate.. he had work at places in which he could be remote but it still felt as if he had to be in the office for some reason.. github is always thinking how to stream everything they do
communicate constantly.. Im, campfire, doesn’t matter, keep talking, don’t leave on an island

#48 - Kevin Old of DicomGrid

5 years working remote
it gives him work life balance, and think time - when you need to take some time to think about something, the ability to slow down, walk away for a moment to think something out
you don’t schedule innovation 9 to 5
joy to work when it’s best for you
we almost have to force ourselves to take breaks
advi has a break between 7 and 10 pm and does another shift that ends at 2am because he’s a night owl
trello for the team
they have a huge asynchronous culture, they are not so much into standup meetings, the use skype and the phone when they need it
one thing that he really likes about the remote culture is the ability to figure out on your own before you take it to others.. in the office culture i just turned around and asked, it arrived at that place too soon, at the time i thought it was right but now looking back i see that i had to spend a little more time to fully flesh out the problem, think about the possible solution and then take it to someone else
with a remote team you have to know and trust each one on the team a little bit more of what you do in an office
in a remote team it takes a little longer to gain the trust as well
mentoring… you have to go through a “season”
two or three days of conversation in person, in the same room, to bring them up to speed
he has a standing desk
your employees can have a comfortable environment
if you are stuck with a problem on friday, revise it on monday, because you have the advantage to do that (the slow down mentality, walk away from the problem)
put that down and work on something else
take advantage of the work life balance and your employees will be a lot more dedicated and happier