This week we chat with Nicolas Chabanovsky, a programmer and community manager with Stack Overflow, about the origin story of Stack Overflow in Russian.
EPISODE NOTES
Nicolas will be the first to tell you that the version of Stack Overflow he helped to create began as a clone. It developed into a very popular site on RuNet and through persistent emails, Nic was able to find a way to make it an official part of the Stack family.
Nic talks a bit about the unique culture of SO's Russian community and how each regional version of SO, from English to Spanish to Japanese, has developed its own etiquette and approach to moderation and Q&A.
Nic and Sara also share some updates on their love of Jupyter Notebooks and how they make it easy to combine blogging with data analysis and presentation.
Shout out to our life boat badge of the week, Aliaksandr Kavalenka , for answering the question: How to use DatePickerDialog in Kotlin?
TRANSCRIPT
Nicholas Chabanovsky We as a community here, not as a company, should do as much as possible here to like, kind of explain our social contract first and to help them adapt to our platform.
[INTRO MUSIC]
Ben Popper Couchbase is a SQL friendly, multi-cloud to edge, no SQL database architected on top of an open source foundation. Join them at Connect.Online, their two day virtual technical conference for developers that has over 60 deep dive sessions, where you can learn about Couchbase, hone your application development skills, and network with peers and tech experts. Ready to develop your path? Register for Connect today and learn more at couchbase.com/developyourpath.
BP Hello, everybody! Welcome to the Stack Overflow Podcast. Sara, you brought on a great guest today, you want to introduce?
Sara I did! I want to welcome from our very own community team, Nick Chabanovsky, who is coming to us from St. Petersburg, here today to talk about the Stack Overflow community in Russia. And also, Jupiter notebooks.
BP Awesome. Welcome, Nick.
NC Hello! Thank you for having me.
SC So Nick, it would be great, I think, for the listeners to hear your story, how you joined the team, and what you are working on and how you joined Stack Overflow.
NC It's a very interesting and long story. It took me 10 years, actually, because this this year, Stack Overflow Russia turns 10 years.
SC Amazing!
BP Happy birthday! That's such a great anniversary.
NC Thank you. So yeah, 10 years ago, I was a student, and I was working at Motorola as a developer. And it was kind of, you know, when you're going to work and you really small part of really big machine. And not that much you can do. And I found a lot of friends who felt the same way. And we got our small club of people who sit in cafeteria and talk about different technologists. We were trying to create different projects, small projects. For example, that time, Google Chrome just appeared. And there was like a few Google Chrome Store applications. And we created a small pseudocode. And it was sent like less than five hundreds app in the Google Chrome Store at that time.
02:24
SC Wow!
NC Yeah. And when we were googling different things, we all the time found them on Stack Overflow. So actually Stack Overflow 10 years ago, it was the place where one could find all new things like all the information about the new technologists. Like WPF, Android, all the new web technologies like GWT and others. At that time, there was a big problem. So when you tried to find something, and you find that, it was so hard to find it again. So usually you just document either the query that how you found that or the solution. And we did the second, we actually stored on our local files a lot of different answers to our questions. And then one day, we said, hey, we have nothing to do over the weekend. Let us do Stack Overflow. And actually, this is how it started, we decided to find open an Open Source engine, and then just put all our local, kind of local, really local, like reach on our local base, sorry, disk, our knowledge bases on the internet to share with each other and the world. So yeah, this is how Stack Overflow started.
SC This is in Russian. Right? So that was an easier solving, because everything was in English.
NC Yeah, exactly. So we created a bunch of cool information and launched an open source version of Stack Overflow. It Yeah, it was called Open Source Question and Answers. It was such a project.
SC And so that you started that up and made that a resource in Russia, correct?
NC Yes. Correct.
SC And how did that turn into joining the Stack Overflow team?
03:59
NC Oh, it's another story. So actually, we were young and dumb. [Ben & Nick laugh] So and we thought like, Hey, we can like somebody in the US could do this, why we cannot? And we decided to work on this as a business. And actually, I was kind of almost graduating. And there was nothing that I was losing. Because at the time, Motorola kind of experienced a bad times it was divided into Motorola and Motorola Mobility and a lot of different departments. A lot of people were fired that time, even in Russia, in our software center. And I decided just to left Motorola and start working on this as like a full time job. And I did this for two years. And over two years, we actually launched 10 different communities. And we launched a site like stackexchange.com, which was called seven.ru. And we even cloned and launched Stack Overflow Careers. If you might remember Careers, the most fascinating, it was written in Go.
SC Ohhh!
NC Just to reference, right now, everyone knows Go and Go is popular.
SC Yeah!
NC 10 years ago, it was sounded like, every six, and six on GitHub.
SC Yeah. So early in the Go lifecycle. Yeah, yeah, yeah.
NC There was no release, even the first release of that language.
SC Where did you get support?
NC Google for forums I think that time, plus of course, Stack Overflow. And actually Go worked very well. Even that time.
SC Yeah.
BP You were competing with Stack Overflow. Did they ever reach out and tell you to stop? You get any illegal? Did we try to sue you before you joined us what what was happening there? [Nick laughs]
NC No, the most horrible part, once I was banned by suspended by IP address from Stack Overflow.
SC Woah! No!
BP Persona non grata.
05:53
NC Yeah, it was just funny story I was researching how Stack Overflow career works and press some button. And for that I got suspension. But in general, no, I mean, there are a lot of people who don't speak English all around the world. And I don't think that's Stack Overflow in Russian and HashCode, actually, it was the name of the project ever compete with Stack Overflow. I mean, in like this sense, because like, people just need some information, the more information available, the better. So we just, in addition to Stack Overflow, not replacement of that.
BP Regionalizing, it seems acceptable, because like, you know, we're not competing if we can offer in that language.
NC Yeah.
BP And so how did you make the jump from doing your own competitors and your own stuff to actually come into work for us? Walk us through the end of that.
NC So when we were working on this site, as a business, we needed money, as any business. And because at the time of the company, there were like a few people, mostly Freelancer who helped maybe different stuff. I was the only one who was responsible for sales. And I started selling. And I read a very interesting book, How to Sell Advertisement on Local Newspaper. I find a lot of advice that were like, so useful, and you can project them to online advertisement. And I started selling. And I think I got a very good sense and kind of would approach how to sell things to people. And one day when I needed to sell the company, I just contacted Joel Spolsky. Yeah, I mean, this is the whole story. I just mailed him, not one time, a lot of times.
SC Oh, that's so great. And then what happened? So you emailed him? And did he write, he brought you back?
NC Nope. [Ben laughs] So then I emailed again, then again, and one day I got an answer, which says, ''No, thank you.'' And then I contacted them again.
SC Wow!
NC So yeah, this is how it goes.
SC And so finally, after contacting people, the bunch, were they like, ''okay, actually...''?
07:52
NC Yeah, this is just a coincidence, it's just coincidence. Because I mean, at the beginning, when I started, like contacting them, Stack Overflow didn't plan to launch any international sites. This was the plan, like vision for the company. But then the vision changed. And Stack Overflow launched Stack Overflow in Portuguese. And I think there again, when we just talked about business, like what's most important value of any business? And that were it's people. And I said, no, at that time, it was very hard to find Spanish speaking community manager who speaks like English and Spanish for Stack Overflow in Spanish. And when I contacted, so they decided, like, why not? We have already launched Community, we have a person who can grow them, and why not? So one of their response was, hey, contact, please. And this is how it started.
SC That's great. So I invited you on because I wanted to talk about how you've been teaching me about Jupiter notebooks and how cool they are. [Nick laughs]
NC Thank you. Okay. Technology fascinates me. I mean, it's something incredible. And it's, I used to be a developer,
SC I think you're still a developer. But maybe you mean like a professional developer.
NC I think I'm still an engineer. So when, as I was working as a software developer, I used to work on their different embedded system. Yeah, I was working on Motorola, SEPTA books. And for LG Electronics, I was working on their operating system. And there are a lot of limitation, like what you can do with SEPTA books, for example, you build an image of yours, like a production system, then you need to debug that and send a file even five years ago, all what we could do is just to set up a lot of print apps, and just see what the look is like. This is how people debug their code on embedded devices. And here, like when I started, like doing some data analysis, I found Jupiter notebooks. And it's like, at the beginning, like few years ago, when I just started, what I did, I launched a small flask application in vitam did some front end that helped me to display some graph and back end that helped like did all the logic. And it was so hard because it took that much time to serialize this or serialize all this data. And finally, I found Jupiter notebooks that do all this stuff for you.
10:20
SC Some listeners might not know what a Jupiter notebook is. So can you explain what a Jupiter notebook is?
NC Yeah, Jupiter notebook is an environment that allows you to do exploratory data analysis, like live. So you just type something on a webpage, and it displays the output.
SC What I really love about it and what I've really enjoyed learning about, it's something that I find often, especially when I'm doing a presentation or like a document where I'm trying to do some product work or convince folks of something, I often have to leave the document to go to excel, or Google Sheets, and I have to make a graph there and do all the work and the math, and then I have to copy and paste that into my document. And sometimes it'll link, sometimes it won't, so I can't really update it live. But it the really neat thing about Jupiter notebooks is that it's, it's both a like, you can treat it like a Word document. But it also you can just plop in queries and graphs and data sets and have something really attractive that you can hand off to people and, and show them. You've been doing some really neat stuff with Stack Overflow data on Jupiter notebooks. It's an easy way to consume it.
NC Yeah, actually, I think Jupiter notebooks, they are a great addition to our day to day work. For example, you have a database, and you can query the database. And you need to do something, and as you mentioned their like previous approach was to just upload this data to excel and do some work there. Yeah, but for me, as for developer, I mean, Excel is to be great. It's really easy to find a function for your like to how to do these, like correlation? Or like how to do this graph, it's way easier for me to like to find the real function that does it for you than to find, like some button somewhere on Excel. So yeah.
12:15
BP What kind of stuff have you been messing around with from Stack Overflow data? What kind of stuff are you interested in visualizing?
NC Oh, thank you for this question. I think it's a it's a very interesting topic to talk. So basically, Stack Overflow is huge. And behind sense of big things sound like psychology. And we have a lot of psychology theories, but they are just theories. And they were developed like 40 years ago. And they are great. And what's the most, like, fascinating about Stack Overflow nowadays, is that you can test your hypothesis, social hypothesis on data. And we are very lucky to work for this company. Because we have access to this data. And we can just say, Hey, this is a social hypothesis, how it should be? Is it true for our data? Is it true for our side, and how it looks, for example, all the time, I was thinking that, hey, what a great leader does, probably a great leader leads the community. In other words, post a lot of motivation posts, and like convince others to follow some of the direction. And then I took a look at the data on Stack Overflow meta and meta Stack Exchange. And I mean, we all know our great leaders. It's [inaudible] his team, and Jeff and few others. And actually I look at their like question and answers. And I realized that most what they posted were answers, not questions. It's, it's fascinating that like, the leadership actually comes through the answers and assistance. No, they're like, telling others what they should do. Yeah, this is what I do, obviously.
14:00
SC Yeah. It's been really neat. You've been doing your data Fridays, what have you called them?
NC Yeah, Data-days. Yeah.
SC Data-days. Yeah. So Nick's been doing data days and digging into the Stack Overflow data and finding out interesting things about our power users. So users that have 2000 rep and over. Finding out the things that they do the most. One thing we've been trying to figure out is what indicates like what metrics indicate happiness and satisfaction of our power users, which has been really interesting, one thing that I've really enjoyed about it is, there's never an easy answer. Right. It's never like, oh, it turns out that the more answers you see a month, the happier people are. So Nick's been iterating on that we've been getting closer and closer today, we had a meeting about downvotes. He's been really digging into how folks with over 2000 rep, what downvotes mean to them. So that's been really interesting. Nick, do you want to say some of the things that you've learned?
NC Yeah, so people do downvote. [Nick laughs] This is what we learned in general, that a lot of people downvote. And actually, it's very interesting how our like, we have different type of activities, for example, questions, answers, edits, comments, and downvotes or upvotes. And it's very interesting that we have different leaders in each of those groups. And we have different distributions among the group. For example, there are like a very narrow leaders for example, in downvotes, actually a lot of downvotes on Stack Overflow were just by a small group, for example, I think if I recall it correctly, like 600 plus users casted 70% of all downvotes on StackOverflow for the last nine months, this is fascinates me. And I really like that Sara suggested to read a book on polarity management. And it helps us understand how people see their contribution. Because like, for example, a person who asks a question and then gets a downvote, they think that they might be mistreated, but the person who cast the downvote, they think that they helped to improve the system. And they think that they cast this downvote as feedback for the person who asked a question. And it's, it's very interesting, like to look at the data to think about that. Yeah. And understand, like, what's going on?
16:25
BP Where do you come down on that Nick? Because I know, this is a constant sort of debate, you know, it's a tension that I think is healthy for the company, trying to maintain a really high, you know, a repository of really high quality answers, but also making people feel welcome. And you know, trying to give them feedback that helps them get, you know, to a question and an answer, which is satisfactory, not, you know, closed or downvoted. So, what do you think? Where do you come down on that? Having looked at the data, little, that brigade of people, are they are they helping?
NC I think, a great, great question, because it's, it's like it started, I think, from the time when the first question was asked, and and never. So, I think it's very important to have a social contract. First of all, social contract is like a thing, an agreement between users how we should behave in different situation. And I think right now, social contract is that we want to adapt all the content for a reader. It might be new, like a beginner in programming, it might be an advanced user in programming, so but it doesn't matter who they are, we just adapt all our content on our site, all our knowledge for reading, because you read the question only once, you answer, write an answer on the ones and then you read it, meaning many, even million times. So there are a lot of questions that like have, I think, more than million page views. So this our social contract, and if we communicate this to question askers, well, I think they will not upset if their questions get closed. And I think we as a community here, not as a company should do as much as possible here to like, explain our social contract first, and to help them adapt to our platform. And I think the greatest opportunity for us is edits. So like, if one can download Pro, they can edit and help them to understand how the question should be asked on our platform. So I think there are a lot of tools that help us kind of mitigate this tension.
18:29
BP Yeah, and I think Sara had mentioned this, but but I'd like to repeat it, maybe it gets your opinion, do you feel like there's a different slightly different social contract and slightly different, you know, way of interacting in the Russian version of Stack Overflow? And maybe that's backed up by data, then there is in the English language version, or the Portuguese version, for example?
NC Yeah, great question. Yeah, I'm really part of Stack Overflow Russian more than Stack Overflow English. So I cannot say for like, in general, but people say that we are kind of welcoming on Stack Overflow Russian, then on English version. So but again, it's a very culture thing.
SC Yeah. Why do you think why do you think folks are more welcoming?
NC Let me explain in a few words, it's all about culture. I think in Russian culture, respect that people cast to other means more, so people want to be more respected than in the US. It doesn't mean that people don't like to be respect, but the respect itself means different for people in the US. People know that, hey, we are all the same. In Russia, I think this social letter way bigger. So it means that people want to see that people around them do respect them. So and this is the key and because of that, from the day one we set up the rules that we have to respect others. We set up a tone on our website and actually we formulated in this way that you, one should use language on the website, which they usually use in a university. Like for example when you come to your professor and as setting or like help your fellow students in front of your professor, you should use this exact same language and about chat we said like okay, after your lecture, you go somewhere to relax, maybe just to smoke or to a cafeteria. What kind of language do you use with your fellow students and professors in front of professor? This is the language that you should use on chat. And I think that helps a lot. So we kind of maintain this level of respect on the site. But again, it's its culture. So it was not that everyone like, you know, more welcome. It's, it's simply necessary to maintain this atmosphere like of learning and teaching others.
20:51
[MUSIC]
BP So, it's that time of the episode. It's going to Aliaksandr Kavalenka, ''How to use DatePickerDialog in Kotlin?'' This was awarded recently and the question is three years and two months old and been viewed 40,000 times!
SC Wow!
BP So quite the resource.
SC Great job!
BP Yeah, so awarded one hour ago, so fresh hot off the presses. I'm Ben Popper, Director of Content here at Stack Overflow. And you can always find me on Twitter @BenPopper.
SC And I'm Sara Chipps, Director of Community here at Stack Overflow. You can find me voting at Iwillvote.com, everyone, please go vote.
BP Awesome.
NC I'm Nicholas Chabanovsky. You can find me on Stack Overflow in Russian. Yeah. [Nick laughs] Ask your question and I will probably help you.
BP Alright everybody. Thanks so much for coming on! We really appreciate it Nick. Bye, everybody.
[OUTRO MUSIC]