Adewale Oshineye
Transcript
User groups with lots to say, interviews and more, no way, sharing great ideas in the tech community, fascinating conversations, a plethora of information, find out for yourself today at UGtastic.com. Until I do the spiel, we’re not officially live. Hi, it’s Mike with SCNA. Hi, it’s Mike with UGtastic. I’m here at SCNA 2013, and I’m sitting down with Ady Oshunyea, and he is one of the co-authors of the Apprenticeship Patterns book a few years ago, which is still a popular book in the Software craftsmanship community. But he’s also an avid documenter, and he’s one of the people that takes his observations, and you’re able to just, as you said, take them where the people are. And you’re very avid. Documenter, almost to like a casual journalist, I would say. But you’re a developer, and as Chet Hendrickson kind of joked earlier, what does an extrovert developer do is they look at the other person’s shoes, but you kind of look a little bit higher, and you’re looking at things, I think, in a unique way. So, first, you know, thank you for taking the time to sit down with me. And, you know, what’s, what, when I say, when you kind of said you take it where the people are, let’s start with what does that mean, and how do you figure out where the people are? So, the way you find out where the people are is you ask somebody. It doesn’t really matter who you ask. They’ll tell you something, and it’s a place to stop. It may be wrong, but it’s more than you knew when you started. For me, it’s about… So, in my job, I’m a developer advocate. I work with Google’s platforms. I work with external companies, external developers to help them grow whatever product or thing they’re making using our APIs. Part of that job means you have to find these people. Now, some of that is putting yourself in a place where they can find you. So, I try to make sure that I’m on pretty much every social network or platform that exists so people can find me. But that doesn’t mean I have to be an active user of every single one. So, for example, I’m on app.net. I don’t use it that often, but I’m there if somebody wants to ask me a question. So, it’s trying to be available. So, trying to plug yourself into as many places as possible. Well, trying to be in places where you can be useful to people, not necessarily everywhere. So, for example, I look at a lot of the big Chinese social networks, but I realize that I wouldn’t be of any use since… I don’t understand what anybody was saying. Right. Yeah. I think it’s Quigo? Kigo? I’m trying to think of that. Actually, I’m thinking of the Chinese Twitter equivalent. I’ve looked at that and been like, well, maybe I should put Ucastic on there, but I don’t know how I can engage there. So, it’s a very interesting perspective. You kind of have to be selective. So, you want to be… It sounds like you want to be in as many places as possible, but not just any place. Exactly. You want to be in places where you add value, where you’re helpful. I think you talked earlier about how I’m a documenter. So, there’s a couple of patterns in apprenticeship patterns that I’m really fond of. One is record what you learn. The other is share what you learn. And the reason I like them is that often most of the things people think I share, I’m not really sharing them. I’m just recording them. I’m just recording them in parts. I don’t share them with the public. And it’s something that’s useful for people. So, for example, I’m interested in a thing called Zuko’s Triangle. It’s a tricky problem in identity. And I’ve written about it a few times over the years, and I’ve never found one good source that linked to all of the interesting articles about this subject. And so, I made a post in which I hashtagged it #FutureMe, and then I put it there. So, now I can go to Google and search Zuko’s Triangle #FutureMe, and I’ll find that. And if I don’t find it, it means I didn’t actually create it, and now I’ll create it. So, it’s doing these things to help me, future versions of me, find information they need, and then that turns out to be useful for other people. But because you put it out in an open place, it can be there. So, it’s that I’m helping myself, but if it might be useful for you, great. Exactly. It’s the same reason why I take so many screenshots and put them in Flickr. Initially, it was because I wanted to learn. I wanted to understand how people design software, why people do the things they do. And by putting them on Flickr and making them public, I found that when people ask me a question like, hey, how does this work? I could say, oh, you want to know how NPR does signing or how to do signing effectively if you are using Twitter to do signing, but you need the user’s email address. Oh, I took a screenshot of Flavors, of 5 Star FM and doing that a couple of years ago. I search on Google and I find it and I go, oh, cool. I send you the link. Right. And you think, oh, thanks, but I didn’t do it for you. Yeah, I did it for me because I want to understand it two years ago. And now it’s useful. It’s almost like taking your memory and being able to put pieces of it out where it can be utilized. Yes, I’ve taken the things I recorded, the lessons I recorded, and I’m now putting them in a format where I can share them. And again, that also adds to an interesting point. Earlier in a post interview conversation, I was talking with somebody who said that they became a speaker by accident. And I said, well, but obviously you had something to share. You didn’t have to become a speaker. You just had something to share. And, you know, that the speaker part wasn’t important. It was just that you had something that came up that could be interesting for somebody else. But it’s hard to determine what could be interesting for somebody else. So just by putting things out there, you let other people decide. I think people decide about the things that I share that they find useful and the things I share that they find irrelevant. But I focus on recording the things that are most valuable to me. So, for example, I had a day once where I went out and I basically took screenshots of the home pages of every popular social service I could find on the web. And when I had about 50 of those, I told people, oh, by the way, I’ve collected 50 of them, here’s what the front page looks like. And then people start saying, oh, you missed this one. I’ve never heard of it. Oh, cool. Thank you. And now I have about 80 something of those. And I mentor this startup. They’re called the Back Scratchers. And we were having a discussion about what the design of their front page should look like. What should it say? What is it trying to achieve? And I was trying to explain and waving my hands. And then I remembered I had this album of 80 something front pages of sites and I update this over time so you can see the evolution of these sites. I said, you know, let’s go through these. And by going through, when you go through 80 something of these, you can start to see, oh, these people are focused on making it easy for people to sign up. These guys want you to basically buy stuff. They want to make it very clear that they sell things. These people, they don’t expect you to ever hit their front page because they assume you will be signed in. And you can start to see these patterns. But I hadn’t created it until the start of my mentoring. It was something I created in the beginning because I was curious and then other people would help me because it was helpful to them. And now it was it becomes useful to all of us. So it sounds like, you know, you have all these curios that you’ve accumulated. And one of the risks you have if you have lots of knickknacks around is getting cluttered. Do you occasionally prune? So I don’t prune. I probably should, but I don’t. What I do is I throw them all into fairly obscure places. I have a Screenshots album, like I have a Tumblr called presentation fodder, which contains random photos that I think might be useful in presentations. I have an album and plus of the front pages of sites. I put them there and it’s electronic. So it doesn’t feel like it’s clutter because it doesn’t get in the way. And I depend on web search to be able to find them again. And often things that I’ve accumulated and I think maybe I should prune this. Do I really need, you know, five photos showing the evolution of Flickr’s homepage and then flick it as a massive redesign and then suddenly understanding the context of the evolution of it and then this discontinuity in evolution becomes really valuable. I think that’s one of the really powerful ideas I got from a guy called Vannevar Bush. He wrote a paper called As We May Think just after the Second World War. And he described something called the Memex. He said that if you could gather the information and then somehow plot the trails you’ve taken through that information and when other people were trying to explore that same space, they could see your footprints. And by looking at the path of the warning to that data set by all these footprints, they would understand what was popular, what was valuable. And maybe even what was safe. If all of a sudden you just see a well-worn path that always ends at a certain point, maybe there’s a boulder or something. So maybe you find that everybody who reads this article then reads this article and always quotes this article, but never that one, right? You might realize maybe that article isn’t that useful then and take the shortcut. Yeah. One of the things that also just makes me think about is that trying to write, I recently suffered this with blogging and even with trying to generate content for Youtastic is I think about, hmm, I got to write an article that has to be really interesting, but it doesn’t sound like you’re limited by that. You write and then you take a step back and you want some maybe some stuff. This is how I’m inferring it. You let some stuff simmer and then come back and say, oh, okay, there is something useful there. But by the constant writing, the constant generating content and then eventually taking a step back and looking at a bigger picture, you can plug them together and see a piece of something that is really interesting that part of the problem that we have is that we feel that we have to do this big thing up front. And we have to write this big, amazing article up front. But I think the way I it’s not that deliberate. I wish it was that planned out. It’s more that I record and sometimes I record in public, sometimes I record in private, sometimes I record on paper, sometimes I record digitally. And every now and again I share. So, for example, I came in this morning and I was talking to somebody and they were saying how they come from a non-traditional background and I wish there was some kind of road map on the things they don’t know. They don’t know. Right. And I said, no, I did a talk about this two weeks ago. And I promised those guys I was probably going to send them some notes and I haven’t, but here are the notes on my laptop. And I said, you know what, I’ll just post this online. Right. Right. Because otherwise we have to email it to you and to everybody else who went to this talk and I put it online, I can send everybody a link and if they want to share it with other people, they can. And if it’s of no use to anyone, it’s OK. And I think that’s what you just described is what I was trying to say is that embrace the informality of our information and that the information be naked a little bit, that it doesn’t have to be always dressed up in a perfectly intro point, point, point, summary structure. And sometimes we hear some information and I mean, it’s OK to make mistakes. It’s OK to publish something and then say, oh, this is wrong. I actually wrote something of a while ago and I mentioned Leeds law. And actually, you know, I was talking about something around community for me. And then Thomas Van Der Waal told me, oh, you don’t know about Leeds law, clearly. And he shared it with me and I went, oh, is there a good explanation of this? And he says, well, no, the Wikipedia page is horribly confused. But Harrison pledges to start. And I’ve spent the last few months sort of been looking it up. And I feel like I have a decent understanding of it now. And so I have this mental note. I should really write that up, you know, not necessarily to help other people, but initially just to clarify it for me. So sometimes I write not because I want to communicate, but because I want to understand. It’s an idea I got from an author called William Zinsser. He has a book called Writing to Understand. And it’s the argument is you write things down so you understand them better because now you have to say, well, what does that mean? And once you’ve written it down, you may actually then say, OK, now I understand this, you can publish that as it is and people may not understand. You may need to you may look at it and say, you know what? For other people to understand this, I have to clarify. So I’ll try to explain reason or two, for example. Right. So do you know Metcalfe’s law? I know that name. So he invented Ethernet, amongst other things. But the general idea, I’m going to mangle this, is that the value of a network increases as a function of the number of connections between the nodes in that network. OK, if you have the world’s only phone, it’s utterly useless. Right. OK, because you can’t phone anybody. If there’s another person, well, you can phone that person. There’s two other people. There’s two potential phone calls you can make. There’s two potential phone calls they can make. There’s two potential phone calls this person can make. Now there’s six different paths and that grows exponentially. As the network increases, so the value of communication that you can reach the more people. Exactly. So it’s I think it’s n squared to the size of the number of the number of nodes in the network. So Reid came up and said, you know, there’s an interesting thing you can see in these networks. Imagine you could form groups of people within these networks. So in a group of, let’s say, five members, I can form a group that’s got there are all these combinations of two people. That’s a group. Those are groups. There are all these combinations of three people. There are all these combinations of four people. And this grows faster than n squared. This grows at 2n. So the point he makes is that if Metcalfe’s law grows like this, Reid’s law grows like this, and the insight that comes from that is, wait a minute, that means if you’re building a social network or if you’re building a communication system, if you let people form groups, the utility, the value of the thing grows much faster. So Reid calls this a group forming network. In a group forming network, the value goes faster than a normal network. So in theory, if phones had started off and they’d worked out a way to let you phone multiple people, phones would have increased in value much quicker than because they could only do one to one. Or is it because I can, by having a connection to two groups, I actually have for each member of that group, I’m able to communicate directly to them. You can communicate to multiple sets of people. So the set of people you can communicate with. If there’s a network that, say, has four members and I can only do point to point, I, as a person, can only have a path to each of those three people. That’s three. Right. But if I can have a path to all the subsets, right, as well as to each of the individuals, that’s a much larger number of connections, which means there’s a much richer set of things. It means you can take a large community, pull aside little subgroups, and the subgroups can invent things that the whole group couldn’t have done. And if you have many of these subgroups, you can do lots of interesting things. So Flickr is one of my favorite examples of this. There are obscure Flickr groups devoted to pretty much everything. So I have my, I’m using my Fuji X100 camera nowadays. It’s quite old, but I like it. And there’s a committee for that. But within that committee, there’s a committee for people who take black and white photos with the Fuji X100. And then there’s probably a committee for people who take black and white photos with the Fuji X100 in London. And then there’s probably one for people who take photos like that in North London and then in the eastern part of North London. And then all these subgroups. And it’s all these places where people can interact with the things you make and all these potential conversations you could have. I think the idea of READ’s law is that in a group forming network, there’s more value. And I think one of the mistakes we make is that we think of the Internet and we say, this is the Internet, it’s got two point something billion people in it. There are two point something billion connections I could have. But then you look at all the subgroups, each site is its own little subgroup. And that’s why the Internet has grown in value so quickly compared to something like the phone or television, because you could only do one to one or one to many. You couldn’t reach subgroups. This is why I think the kind of instant messaging stuff we’re seeing have grown in value so quickly compared to television. And this is a really bold insight. And the implications of it, I don’t even understand the implications. Yeah, it’s very interesting. Even at a microscopic level, I’m thinking about even small tools that recently the team I’m on, we switched from Campfire to HipChat. OK, well, that’s a group. They’re both group chatting. It’s fine. OK, people can join groups. But in one, I can spin up a very simple, small subset of chats. A team is working on a specific thing, but I don’t have to go off into a separate tool to do it. I just I’m right in there or I don’t have to go up. And it’s less complicated. So in HipChat, I can just select these people and I’m in a subgroup. And but I can still have the main group there accessible. And but in Campfire, I had to kind of go and it was a little bit more cumbersome. And, you know, you had to set up a completely different room. And I was trying to figure out why once I showed it to everybody, they just immediately switched over. The whole company within one hour was everybody was over on the new system and completely just left the old one behind. And it was. The first thing I saw people using was sub chats, sub chats, not having to spin up a separate group and having a developer channel, just all of a sudden the three developers had our own little group so we could talk without being noisy in the main group where we were. Well, the thing is, you already wanted to have these conversations in the past. But you didn’t because they’d be noise to the whole community. Right. In the same way that you can come to SCMA and there are people here who are really into Rails and there are people here really into Clojure, if all of us must always be in that one conversation, then many of the interesting side conversations can’t happen. So there’s a few people, for example, here who are really into microservices. And I’ve been spending a lot of time trying to find those people because I’m really interested in that topic. And in a network, in a conference, in an event it makes it easy to find these subsets, these birds of a feather. It’s much more valuable than if there’s this one conversation. It’s one of the reasons why I like a multi-track conference over a single track conference. Single track conferences are much more focused and it’s easier to manage. But you have less variety. You have fewer, you have fewer interactions. The network is less rich. Either way, were you at the Coden Coffee this morning? I didn’t. It was really sunny. Well, I came in early to get set up and I got to witness what I think is a description of what you’re describing in action, where we’re inside of a larger group. But in the Coden Coffee, what they did was each table was separated. So when I came in, I didn’t realize what was going on. I just saw clusters of people sitting around different tables. And I assumed that when I first walked in, I just assumed it was just people that happened to group. But then as I walked around, I saw, oh, no, there’s a C++ table. There was an Erlang table. And then there was different numbers of people in different groups. But they self-selected and formed their groups. And then somebody went up onto the stage and was able to address all the groups. So it was. We’re in this big subgroup, but then inside of that group, there’s subgroups and they’re all talking and communicating to each other. But when you came and stepped out, you could talk to all the groups. I’m not sure exactly how that maps into it, but it’s something now that I’m thinking about when you’re talking about having groups of people and then they can have their own private chatter that’s Erlang interesting. It’s only going to be interesting to the people that are Erlang, but if somebody stands up and they broadcast, they can hit all of those groups and then each group can then decide whether they want to. Exactly. So this is what we said earlier when we’re talking about go where the people are. Let’s go where the right people are. So if you are interested in talking about Erlang, you should go where the Erlang people are. If you go to something that’s larger, so you might go to 5:01, for example, a huge conference, there are probably Erlang people there. They’ll be really hard to find. Yes, go to an Erlang conference. There will definitely be Erlang people there and they’ll be very easy to find. Yes. Now, and this is, I think, one of the lessons from Reed’s law, that you can create these little subgroups where you can do things and explore things. And some of these groups will fail. That’s OK, because it doesn’t affect the health of the overall thing. And that’s why I think there’s a lot of opportunity for lots of really small, distinct communities and sites and which that’s why I use so many different sites. Yeah, yeah. And exactly. If there had been one table where they put out a banner for a language and nobody wants it, all the other groups would still exist. The conference would still go on. But that one table just. But I mean, one thing I would have done differently, I would probably would also have given people little pieces of paper where it could put up, they could have written down the names of groups that I, the organizer, wasn’t aware of. So. Goodness knows how many of the people who were there were really, really interested in Alexa, for example. Right. I would love to have talked about that. I mean, I know Dave Thomas is interested in that. And then the organizer could have gone and said, let’s put the Erlang people next to the Ruby people, you know, and then that’s a way to connect those two groups. Exactly. So one of the concepts I’m really interested in is the concept of Heterophily. So it’s Heterophily, Heterophily. So everybody, OK, a large number of people know about the concept of Heterophily, the birds of a feather flock together phenomenon, OK, which is what we saw this morning with all the Ruby people on one table, other people on one table, Java people on one table. That’s nice. But the reason I’m interested in Heterophily, Heterophily says that what happens if people who want similar flock together? How do you create that kind of environment? How do you have ideas flowing between different groups? So not the same, but similar. But different. OK, so Heterophily is people who are similar clustering together. Heterophily is people who are different clustering together. OK. The idea is that if you live in a homophilous network where everybody you know is a Ruby programmer, the number of new ideas you run into is going to be fairly low because you all read the same things, you all do the same things, you have relatively similar tools. However, if there’s one person in your little community who is also an Erlang programmer, then they bring in ideas from the Erlang community to the Ruby community and from the Ruby community to the Erlang community. And this person is in a homophilous network because they’re clustered together with Ruby people and Erlang people. And if you have a few of those kinds of people in your network, you have new ideas coming from radically different places. And this also makes me think about an interview from SCNA as well from last year I did with Patrick Walsh about network weaving. Is this a similar? Exactly. It’s this idea that you have a homophilous network that has heterophilous networks, woven through it, and if you do that, if you create this and you go to the trouble of doing this, you can be much more valuable. So you can say, I’m running a Ruby conference, but I’m going to bring in somebody who’s a UX designer to share some of their insights. I’m going to bring in somebody who is a concert pianist and bring them in to share some of their insights. And it’s different. It’s stuff you wouldn’t have come up with because you don’t belong in that community, that world, and they bring in their new ideas and it changes you. It changes your community in ways you wouldn’t have organically changed. That’s interesting. So, like, as a user group organizer might think about if you focus on Java, bring in a Rubyist. If you focus on the Ruby medicine, they do something very interesting where they actually bring in people who aren’t even developers. You want to build bridges to other communities because that’s how new ideas, new possibilities happen. Well, thank you very much for taking the time to sit down with me. A lot to think about. Thank you very much. Thank you. User groups with lots to say, interviews and more. No way. Sharing great ideas in the tech community. Fascinating conversations, a plethora of information. Find out for yourself today at ucetastic.com. Thank you.