@tom200 has joined the channel
@kovatsgeorge has joined the channel
@omkard.ui has joined the channel
@qazimrama has joined the channel
Remember that tonight's ATLRUG is a special workshop going from 4:30 to 6:30. Still at Pivotal Labs at Ponce City Market.
what is ATLRUG
I'm one of the co-organizers.
@mrdgabai has joined the channel
@jeffrey has joined the channel
@rietta I shall be there
Anyone ever do pair programming? Do it for a long time? Did it work out, or did you have to give it up at some point?
pair programming is the biggest waste of time
Did you do it?
and banned it
never tried it. filed next to "farting in the shower" in the "good_in_theory_not_in_practice" directory
although i have heard good things about it.
You're echoing my thoughts, but if you were staring at a job that mandated it, I'm looking to see does anyone have a good experience with it? I hate to be immediately cynical.
I’ve paired in both mandatory and voluntary situations.
When it works, it works really well. The important part is that you build teams that can pair well.
@unlrn has joined the channel
I’ve worked with fantastic developers who simply couldn’t play nice with others and didn’t work out well on teams that paired.
I’ve also worked on teams where there was an unspoken rule that two people just didn’t ever pair.
TLDR: Try it out on a brand new team and bring in new folks that can do it well. Don’t force people into it, that simply won’t work.
i think it's hard for us, as programmers, to notice the increased knowledge transfer and benefit of having a second set of eyes on everything we're doing as we do it, relative to the inconvenience of it
Pair programming is fantastic and (for certain kinds of work) can produce better work faster than two people working separately. I'm not sure I'd like to do it 40 hours a week, but it's a great tool to be good at.
inconvenience: can't personalize your shortcuts, no personal messages, no personal "lemme go down a YouTube hole for 10 minutes...
(as an introvert, I don't personally enjoy it . . . but there's a lot of value to be had in it)
well, i mean, i pretty much can't use Vim when i pair
I feel like it’s hard to argue with the Uncle Bob logic (heavily paraphrased): If you ask for a second set of eyes when you are in crisis mode, it’s because you believe that’s a more powerful way to program. If you believe it’s a more powerful way to program, why not do it all the time?
Aside from the emotional / interpersonal aspects, it is more effective. Fewer typos, immediate knowledge transfer, software design by committee…
What I’ve done on pairing teams re: shortcuts is just create a machine set-up script with a specific set of shortcuts / bash aliases and installed that set-up on every “pairing station.”
No one on the team had a laptop, only desktops that were identical and shared by all devs.
Given a week of everyone using the same shortcuts, everyone was back up to speed and we could hop around any computer.
His logic falls down a bit when you remove the assumption that there's a universal, objective "better" or "worse" way to program, but in a narrow set of contexts it's really high value.
I actually think he’s leaving it up to you to decide if you believe it’s better.
He’s saying “if you ask for help when in crisis mode, you’re admitting you think it’s better.”
That’s how I read it at least. ymmv
that really doesn't follow
OK, anyone do it fulltime for a year?
Yes, that's how I read it, too, but the implicit assumption is that there's a "better" and a "worse" that applies universally to crisis situations and to standard programming
I'm not throwing a hypothetical - there's a job that does this all the time. It's not a choice. Just curious if it's worked or been more stressful than the added value
The only (currently extant) company I know of that does that is Pivotal.
I did it full-time for about 18 months. On the fence as to whether I’d immediately go back to it but I am bought in when the team makeup is right.
The Home Depot does a lot of pairing as well.
i did it full time for a little less than a year. it was a good experience, but there's a cost
I paired at both companies.
Pivotal does a really good job of hiring the kind of people who are good at (and enjoy) pairing.
Pivotal / Home Depot, that is.
Yeah, HD is the context I'm looking at
Oh, I didn't realize HD was full-time pairing! That's good info to have.
Depends on the team, but a lot of teams are.
It's some teams, too big a company for everyone to work the same
@kovatsgeorge feel free to DM me if you have any more specific questions about HD pairing. I worked on 3 or 4 teams that paired full-time there.
@mitchell.hunter.hamil has joined the channel
What are some good blogs for developers?
@cried I think patio11 does the "business of development" side of things very well
He's got Kal
Kalzemeus software as the name of the blog, although he now works for stripe
He doesn't seem very active.
Thanks for the suggestion!
@nelumsam has joined the channel
@creid any particular focus?
@mj_langford lunch again soon?
@shapr Anything to assure my boredom in down time at work, will help me become a better programmer (past job Ruby on rails/current job Java), will help me learn (data science, Android, node, angular, swift), and will expose me to new tech I would not otherwise have known about.
Hacker new through ycombinator?
yes, that one
I also recommend checking meetup.com for something free near you.
I'm inundated with meetups already. Was looking specifically for things I can read and do while at work. I can read all the things but can't attend all the meetups. Thanks @shapr for the suggestions
@creid Not a blog, but I subscribe to the hacker newsletter, which collects the best posts from HackerNews every week and sends them to you in an email so you don't have to read HN: http://www.hackernewsletter.com/
I keep it in my inbox and read through it when I need a change of pace.
@kovatsgeorge I think we've all done it from time to time, even before someone gave two programmers working together on a problem a name... For me it's fine when there is a tough problem that requires two minds to noodle it out, but the concept of pairing as the way to do ALL coding seems unpalatable. This one falls under the "to each his or her own" category for me. Make it mandatory and you've lost me.
@dphurley I believe a defibrillator is great in a crisis, but I wouldn't want one used on me every day. :wink:
if i had to make a definitive statement about pair programming, i'd say that you're trading the productivity of two programmers for the average of both of their productivity and a bunch of side benefits
the problem is that i don't think there's any way to quantify the side benefits, short of some kind of meta-analysis of a bunch of projects