We’re on the expo hall floor of OSCON 2019 talking with Eric Holscher, Ali Spittel, and Hong Phuc Dang. First up, we talk to Eric about his work at Write the Docs, ethical advertising, and the Pac-Man rule at conferences. Second, we talk with Ali about her passion for teaching developers, her passion for writing, and her new found love for podcasting. Last, we talk with Hong about her work at FOSSASIA, the disconnect between America and Asia in open source, and several of the cool open source projects they have on GitHub.
Featuring
Sponsors
Linode – Our cloud server of choice. Deploy a fast, efficient, native SSD cloud server for only $5/month. Get 4 months free using the code changelog2019
. Start your server - head to linode.com/changelog
Keen – Keen makes customer-facing metrics simple. It’s the platform that gives you powerful in-product analytics fast with minimal development time. Go to Keen.io/Changelog and get your first 30-days of Keen for free.
TeamCity by JetBrains – Deliver software faster with TeamCity — a self-hosted continuous integration and delivery server developed by JetBrains. TeamCity is super-smart at running incremental builds, reusing artifacts, and building only what needs to be built, which can save over 30% of the daily build time.
Innovate Software at OSCON – Whether you’re looking to understand where software development is headed, or want to dive into the key technologies that you need to build resilient, useful, innovative software, the O’Reilly Open Source Software Conference (OSCON) is where you’ll find the answers you need. Secure your spot for 2020 now and save 20% on your pass with code CHANGELOG20
.
Notes & Links
Special thanks to our friends at O’Reilly Media and OSCON for making our trip to Portland possible.
Eric:
- Write the Docs
- Request For Commits #5: Documentation and the value of non-code contributions with Eric Holscher
- The Pac-Man Rule at Conferences
- Ethical Advertising
- CodeFund
Ali:
Hong:
Transcript
Play the audio to listen along while you enjoy the transcript. 🎧
Have you got anything new and exciting you wanna talk about? Have you got anything on your mind?
We were just talking about open source sustainability, governance, the RFC conversation continuing.
It continues.
Yeah… And similarly, I feel like governance is just like a fractal thing that is always – my own community is struggling with it, the Python community is struggling with it, the open source is struggling with it…
We just had Brett Cannon on back in June, talking about Python…
That was a good episode. And you just had Adam, right?
We had Adam on last week…
And we were in the hall… [laughter] The open source hall, and it’s like… Yeah, there’s a lot there.
Yeah, there sure is. So as you mentioned, we met back at Sustain a couple years ago, you’ve been doing Read the Docs, Write the Docs, PSF, lots of stuff in the Python community for years, tackling these problems, and really leading the way with the whole ethical advertising… I’m curious what your current thoughts are in the state of the open source world with regard to these things.
Yeah, I don’t know… The conversation we were just having, which I guess is a continuation of the one last week with Adam, is just kind of that governance question, where open source doesn’t basically have an institution… And we were kind of relating that to how Guido was that for a long time in the Python community. Within the Write the Docs community I’m currently wearing that hat, and trying to transition slightly away from wearing that… Not that I’m – similar to Guido, right?
You’re not sending an email that says…
No… It’s not that I don’t wanna be involved, but I think that BDFLs aren’t necessarily the healthiest possible of all outcomes. They’re certainly a buzz factor, if nothing else…
Yes, for sure. Absolutely.
And just kind of giving people that path to power, leadership - whatever you wanna call it - in an organization is how you get good people involved. It’s really interesting, in the Python community, that we have Guido to guide us through that transition. I think we’re quite lucky. I’m taking a lot of inspiration from him. And Carol was there, who’s on the steering council for Python… OSCON is cool for that, there’s a lot of folks around.
Yeah.
Yeah, for sure.
But thinking about open source as a whole - what is the institution that can really lead us through the transition of becoming the default software development stack in the world, the introductions of all these Fortune 5 companies…
[04:14] Right.
Yeah.
It’s a big challenge, and there’s a lot there… It’s interesting.
We were just over at the Indeed booth, getting some…
Some lattes…
…some coffee, as you do, and we were talking with Duane over there…
Duane O’Brien.
Yes, and I mentioned to him “How strange it is, the breadth of people that we speak to on the show now, compared to what we did 5-10 years ago…”, where I clone their Git repo to find their email address out of their commits and I email them… We still do that today…
Yeah, we do that…
…all the way up to, you know…
It’s a hidden secret of Git.
…VPs at large corporations that we have to deal with PR, and it’s very corporate and official… And we’re covering this much broader demographic, really, than we were before. The community has broadened quite a bit.
It’s an interesting thing… One of the things I have meant to write a blog post about forever, but never did - you know, as you do blog posts; that’s why you go on podcasts, because you don’t have to write anything…
That’s right. It’s much easier.
Right. But basically, everyone means something different when they talk about open source. So we have the open source definition, but everyone has their own vision of what open source should be, they have their own set of priorities, they have their own economic incentives, whether personal or corporate or whatever…
Right.
How do we navigate that kind of… Like, we’re all looking at this term, and we want it to mean what we want it to mean. And with Read the Docs we actually have a page in our documentation that’s like “Yes, we are open source. Yes, our license gives you these legal freedoms…”, but just because – the big one for us is “Yes, you can install this at your company, but our priority is to support our hosted open source version for the community, and the core developers of Read the Docs generally are gonna work on that first. And if we have time, we might help you with your local install.
You’re completely legally able to install it, we’re not saying you can’t do that… But we are saying we have a set of priorities as an organization, as a human, and that’s how we’re gonna direct our time. So don’t feel bad… Before you install this, you should probably know that we’re not gonna support you doing that, because we have other stuff to do.”
Exactly.
And every organization has their version of that, whether it’s written on their website or not. There’s a set of priorities, and the vision that they have about why they open sourced it… And those different freedoms or legal rights that we give away have different resonance with different people. It’s so fascinating to me…
Let me say, one of the reasons why I think that’s really great that you do that right there, on Read the Docs, is because a lot of what we’ve heard over the years in terms of open source failure stories, whether it’s burnout on one side, or manipulation, whatever it is - it’s really mostly a story of mismax– help me out… Mis…
Mismatched expectations.
Mismatched expectations. How did you know I was gonna say that?
I know you, man. I know you.
Easy for me to say. And when you explicitly state “This is where we stand” right there, to be read and seen by all who are gonna use this, what are you doing - you’re setting expectations, so it’s a lot harder to have that mismatch… And it seems like you can avoid a lot of troubles that way.
Yeah. I think the hardest thing is understanding what your actual – the hardest thing to figure out is what you care about…
Yeah, exactly. “What am I gonna write here…?” [laughter]
And the fact that as an organization we were able to do that and put something on paper means we have internal cohesion. And it’s like, five people. Luckily, the five of us could agree on something. And then you scale it up to the Python community - that would be a much harder thing to do… Like, how do we get together and say “This is as a community what we care about”? Because we’re not all gonna agree on that set of priorities.
[08:22] In the PSF, luckily, we have an institution that could help manage that. Now, I’m not saying that Python should even have a document like that. We are a much more broad organization, of course… But we at least have the institutions to shepherd the community through that process, to really help be the authority that people would hopefully respect the decision if we had to make one… Guido being the classic example in the code side of things.
But then you look a step higher beyond Python or open source, and you’re like “Who is that? What is that? How do we all agree?” There were some great keynotes this morning from the Chef folks, Adam, VM - I’m gonna mingle her last name, but… Just about that - being more inclusive in open source, but then also “How do we move the definition forward?”
What’s the answer to that question right now?
We have no idea. [laughter]
That’s a conversation we have to have.
So is that like OSI doing that? Because we’ve heard from them as well…
They have the open source definition…
Was that where I got into trouble for calling the police? I’m being reminded now… I was basically trying to give an analogy of them being the police of the term and verbiage around open source. Not that it’s owned by them, but to enforce it on the community’s behalf, on what open source is or isn’t…
They have the current authority - at least the most in the community - about “Here’s a thing that somebody wrote down that defines this term…”
Right. “Is this or is this not, according to these terms that are written down…?”
Exactly. But open source is so much larger now. It’s so much more than a license. It’s a process. I think a lot of what people talk about around – you know, RFC touched on this a lot, that your engagement with the community, your willingness to have contribution… People feel really strongly about that part of it. But now I feel like I’m trying to say what Adam has said more poorly… [laughter] I saw he was on your podcast last week, but I didn’t get to listen to it yet…
That was definitely a good one… Check it out.
I’m sure it’s good stuff.
For those listening, “The war for the soul of open source.”
It’s better as a prequel to the keynote, in my opinion.
I would imagine, yeah.
I have a biased opinion, of course, but…
He only had 15 minutes on stage though, so… If you want the background, you know…
But he got a full a hour with us, or more…
More than that. He had about 75 minutes, or more…
Yeah.
Yeah, so I think that’s definitely where you’ll get a little–
He’s definitely put a lot of thought into it lately…
Yeah. But for us, as you touched on, the ethical advertising approach was our trade-off around sustainability as well, where “How do we maintain the values we have as an organization, but then also make money?” And navigating that, and having a strong worldview allowed us to hopefully get to something that’s really a positive outcome, and an example for the community… But that’s not a trivial solution. We are leaving money on the table to build the business that we want to build… And that is a set of incentives that some people will not agree to.
Align with, yeah.
Can you rewind maybe a half click and give the context for those that are uninitiated to Write the Docs, Read the Docs, and sort of the ethical advertising and the business model there?
Sure. Read the Docs is a documentation hosting platform that started around 2010. For a long time I was one of the core contributors and co-founders, and it just kept growing to millions of pageviews a month… But we didn’t have any revenue. We were an open source project, we had Rackspace, or Mozilla, or someone who was giving us free hosting… It was very bootstrap. Over time it really started to burn me out, and I’ve talked about that a little bit in other avenues, just – I will say, wearing a pager for free, for a website, on the weekend… Like, I can’t go camping because I’m wearing a pager for my side project that I don’t get paid for. That’s a pretty hard thing, and that burns you out real quick.
[12:21] Yeah, I bet.
So yeah, we really had to solve this problem. We’re effectively a documentation publishing platform. Advertising is the way that you make money in publishing… But we didn’t wanna do what a lot of the internet has done, which is this kind of tracking-based thing, where it’s like “We’ll put a cookie on your browser and then we’ll retarget you. When you go to our site, we’ll put it on the Google network, and then they’ll track you around the internet, and show you ads, and we can pay less money because the website you’re on is cheaper than the amount of money that we give you for the retargeting…” It’s a really big arbitrage thing. It actually works out the worst for the publishers. The advertiser gets more value, the publishers get less money. It’s not great. But anyway…
You wanted to do something like that, but in a more ethical way.
Right, right. The biggest thing there is the respect to the user. There’s so much happening there without any consent… And really, we wanted to build something that would allow us to build a business, that allowed us to continue to respect ourselves, allowing me to sleep at night, but also then respecting the users… And similarly, respecting the people that are hosting documentation with us. It’s this three-party system where we really want everyone to feel like they’re not being taken advantage of… And I feel like so much of online advertising feels a little creepy, or icky… And that’s really what we wanted to avoid.
So basically, the way that I talk about it is we build newspaper advertising for the internet. We know your approximate geo, we know your country, so we have a little bit of data about you, and we know the section of the newspaper you’re reading, basically; we know you’re on some Python documentation… So basically, we can target based on content well enough that we don’t have to care about who you are as a person. If you’re in the U.K. and you’re reading a Python ORM documentation page, we can target you with a Mongo ad, or whatever. We don’t need to know who you are, and we’re able to build a business that we feel is still positive and an example for folks in the ecosystem.
Look at Stack Overflow - there was a thing the other day on like “Why is my Stack Overflow page playing music?” Stack Overflow, this tool for developers, that should know better - they definitely know better - is running arbitrary JavaScript from an ad network on the page… And we’re like “If the developers as open source platform owners, if we can’t do advertising right, if we’re not respecting our users, then who on earth can we depend on? If we can’t show the model, then no one else is going to…” That was really our motivation - we know the problems, we understand the weird stuff that’s going on, with like JavaScript running in arbitrary browsers… If we don’t stand against that, then who’s going to?
Yeah. Do you become an ad network then, basically? Do you have a sales team? Is that your primary source of revenue? What is that model for you?
It is definitely the majority of our revenue. We also have a paid hosted product, so you can do readthedocs.com. Similar to TravisCI, .org is free, .com is paid. Private repos on .com, open source on .org. So .org makes money on ads, .com makes money on subscriptions. But advertising, just given the scale, is the majority of our revenue.
What does that break out, like 80/20, or…?
It used to be like 90/10, and I think we’re actually getting down closer to like 60/40. So the money from the advertising is really letting us invest in the product, and making the subscription revenue is kind of bootstrapping that side of the business, really.
I love those ideas of offsetting. I think there’s a spot for promotion in advertising, so to speak, in the publishing, and I think that’s a good spot. I think not having it as your primary source of revenue is probably pretty smart… But I like the idea of offsetting, and even letting the audience know “Hey, if you subscribe or you commit in these ways…”, either – I wouldn’t say donation, but some sort of thing that gives them value; some sort of value-based transaction “…to offset our need for and reliance upon”, I’d support it.
[16:21] Totally, yeah. And we let people opt out of advertising if they’ve contributed code, or if you’re a library that we’re using in our stuff… Obviously, we’ll just be like “Yeah, sure.” We just won’t put ads on it.
The other thing is we let people opt out of paid advertising. This is kind of a cool program that we call Community Ads. So any of our projects can say “We don’t want paid advertising”, so instead what we’ll do is we’ll show ads for community projects. A lot of conferences that don’t have a marketing budget, a lot of that kind of stuff.
Very cool.
That’s awesome.
Yeah, so we’re able to kind of – it’s like, if you don’t believe in the consumerism, at least let us promote a PyCon, or whatever.
Yeah, I like that idea a lot. It’s actually really good.
I like that, too.
And we do that a lot for the regional conferences, especially like PyCon Africa, or PyCon Latin America… The advertising money in that part of the world is not as good, generally, and they’re not as well known; they’re first-year, second-year conferences, and we’re really able to kind of help the community through that program, which I think is super-powerful.
Is the opt-out only if there’s some sort of exchange, or is it open to anyone?
No, it’s on the little admin dashboard for the project. We do a small guilt-trip… [laughs]
Right. “Are you sure you wanna do this? …because of these reasons. Listen to the podcast on the Changelog, where we talked about it at length.” [laughter]
Right. To turn ads off all the way, with no community ads or anything, you have to email us… But to turn off paid ads is totally –
And it’s project-by-project…
Yup.
Gotcha.
I like the idea of the community stuff a lot, honestly.
Yeah, it’s cool.
It’s really cool. We love to help out the community, and that would give us an opportunity - us personally, the way we do our ad flows in our newsfeed and newsletter and stuff, that if you were the person that said “I don’t wanna have paid ads on it, and more community ads”, that’d be super-cool.
Right. You have a reach – similarly with a podcast. I don’t know – the ad tech around podcasting is pretty minimal, but you know the IP of people when they’re downloading it, and you could totally just be like “Hey, you’re downloading it from a country that people aren’t buying advertising? Let’s advertise a community project; let’s advertise it into the podcast.” I’m sure you do this already with house ads and other podcast stuff you do…
We don’t have dynamic ad insertion.
Oh, nice.
No, we don’t.
It’s static ad insertion, meaning it’s done once…
Okay, nice.
Every show is once-and-done kind of thing. It’s an artifact that – it almost never changes.
It exists in the world, and…
Yeah.
We haven’t really found – this is probably going too much inside our baseball, but we just haven’t really found a reason to go dynamic ad insertion. Now, I have heard good things about it, but…
Well, there’s certainly trade-offs.
Right.
I’m not sold on the whole thing.
It’s not a priority for us yet. It might be in the future, but right now it’s not.
I think it’s really about taking the model that works and finding ways that you can use it to give back. For us, we’ve found that people really cared about the geography, whereas for you all I’m sure it’s a different type of advertising, it’s a whole different thing.
It is. It’s less on like – yeah, this is going too far…
I think the big thing is trying to make sure that whatever you’re doing, if there’s a way that you can make your users happy and give the community back something - finding that trade-off.
Let me definitely say that then, because for us, our entire model is listener-first. If our listeners don’t like what we’re doing, then we’re not gonna do it. I don’t care if we make money doing it. Because if you, a listener, are listening to this right now and you’re pissed because you’re listening to it, that’s probably not a good sign of us doing our job well.
We’re not fulfilling our goals.
Right. If you’re unhappy – let’s say generally… Obviously, we take criticism, but if you’re unhappy because we have a lowly-relevant advertiser or a sponsor or partner that we’re working with, then we wanna make sure that we’re tying in. We wanna promote brands that developers should know and trust.
[20:10] You’re tying yourself – we definitely view advertising as a powerful tool. And the people we work with – we’re not advertising some random ICO, or whatever. We have pretty high standards for…
Right, there’s ethics involved.
It’s right there in the name. [laughter]
Ethical Advertising. You’ve heard it here first.
Yeah.
Or second, or third.
I really like the work the CodeFund folks are doing. They kind of took that and ran with it, and built a little bit of a network out of it. We’re similarly thinking about doing the network as well. The more people doing it, the better. The more non-creepy advertising we have on the internet… And any market share we can take from Facebook or Google and give to open source is a win in my book. We’ve got a lot way to go.
The ads kings, man… They rule it. The majority of the audience buying any ads is Facebook or Google.
Yeah. So I think anyone giving y’all money and anyone giving me money, anyone giving anyone in this room that’s doing open source money is much better for the ecosystem. We need money in here somehow, so…
Let’s talk about this one idea that I actually practiced last night… I think you call it the Pac-Man effect, or something like that…
Yeah, the Pac-Man rule.
The Pac-Man rule, when you’re at a conference… I actually read that a couple years back, that you wrote about that.
I think I heard of this…
Okay, so first time here though – I’ll let Eric explain it better, but basically when you’re at a conference…
You’re gonna explain it bad, and then he’s gonna explain it better?
Well, Eric, you explain it. Explain it, please.
[laughs]
The idea is that when you’re standing in a group of people, always leave room for one person to join you. It’s just like a little babystep you can take towards inclusivity. But to think about it in kind of as a rememborable rule, stand like the shape of a Pac-Man. It’s very visual, but Pac-Man has its mouth, and it’s always a little bit open - that’s the room for someone to join your group. And when someone joins your group, reshuffle to leave a little space. It reduces the cliqueness of walking into a room and being like “I can’t join any of the groups.”
The back-story here is basically we wanna say we’re a welcoming event. This was in Write the Docs - wearing my Write the Docs hat - and we say “We’re an incredibly welcoming event”, but it’s like “What does that mean?”
“How do you be welcoming?”
How do I take the idea of welcoming and execute it in-person at an event? What are the explicit steps? We really looked for some rules to try and make it explicit for people, to be like “This is what a tiny little bit of welcoming. It makes it a little better. Here’s a little bit of a nudge in that direction.” That was one of the ideas, and it’s really kind of exploded.
I wrote a blog post about it maybe 3-4 years ago, and now it’s at PyCon, it’s at – I see tweets about it from Australia, and Europe, and it’s really kind of grown as this…
That’s cool! The Pac-Man effect?
The Pac-Man rule.
I don’t think it’s a rule, but the effect now that it has spread is the Pac-Man effect. [laughter]
So it started as a rule but not it’s an effect.
Now it is an effect. I liked it a lot. It impressed me, and I’ve been doing it ever since then… Because I’ve been there, I’ve been the person that’s tried to – everybody has.
Like “How do I fit into this little circle? Well, I can’t. There’s nowhere to stand, so I’ll stay on the outside.”
And if there’s always an opening, and the group sort of obliges this known social cue… I think that’s cool.
Reformulates.
Right.
It’s kind of the substrate of career growth, and networking… I’ve gained so much from going to conferences and meeting people, and that’s been a huge part of my professional life, and how I’ve been able to do what I’ve been able to do. And at Write the Docs we really explicitly tell people, like “You’re here to meet people.” Because I do think it’s a two-step dance. The Pac-Man is the implementation, but you also have to give people explicit permission.
This first really hit me at a conference called XOXO, which is also here in Portland. It’s kind of a media and arts, kind of independent – I don’t quite know how to describe it, but… They were like “We are all here in the same room to meet each other and talk to each other. And there might be people that are you impressed by or scared to meet, but literally, your job here is to meet everyone else in the room.”
[24:12] That gave me the courage to join a group of people when I might not have… And I try to give people that same permission in my events, where I’m like “You are in this room because you were meant to talk to anyone else in this room. While you’re here, break out of your introvert shell and just know that is your job. No one is gonna turn you away.”
Then you take the Pac-Man rule, and that’s how you actually implement that in space. It gives people a little bit more nerve to know they can join that group if they see people standing that way. It’s kind of a social cue that people are gonna welcome you.
It’s an unspoken invitation, really. It’s a visual cue, it’s an unspoken invitation… And I think if you see the spot there, you naturally fill it. Then you make your own space. You sort of nudge them over and make some more room for the next person.
Yeah, I think it’s caught on so much because it’s kind of a silly little thing, but I actually think it’s a little bit more profound in practice.
I agree as well. When I read it, I was like “Wow, that’s genius.” So being the genius who came up with this idea… [laughter] What are your thoughts on that? You’ve influenced a massive amount of people to be more inviting to others. That’s gotta have a ripple effect that you personally, having been the person to put that idea out there, have been a key player of. How do you feel about that?
Terrible. [laughs]
Yeah…
“AMAZING!”
I mean, I think we need more of it, to be honest. I look for more things like that… Because I really think it’s – well, there’s a lot of ways to answer this question. I will give you the medium-length version.
Okay.
I view different conferences and different open source communities as little experimentation labs… Similar to states in the United States are all kind of little experiments in democracy, or whatever, and the good ideas come out of one and spread to the other ones. I think that’s super-important. That’s why you have to write about it.
But the fact that it has been so widely adopted shows that there is a need for more of it. So I’m excited about it. Every time I see it I get a little bit of pride and excitement that those spaces are presumably getting more inviting… But it also shows me that there’s a need for more of this, because – there should probably be some other ideas, too. This is not the only one.
Have you considered buying PacManRule.com and having a video of you explaining the rule? And then sort of a montage of interviews of other people who have been affected by this rule, and have now gained careers in community and belonging that was never there for them before.
This is why I’m not in marketing. [laughter] That sounds like a whole lot of production I don’t know how to do.
That sounds like a lot of work, and then the people who own the trademark for Pac-Man will come and shut you down.
[laughs]
I actually think they’d love it, I feel like.
They probably would.
Actually, someone on Twitter made a video, that I then put in my blog post, that kind of animates – it has little smiley faces, and then when the circles close, there’s a frowny face… So someone has been doing a little bit more marketing, and it’s got like 2,000 retweets, or something… So there’s definitely a little bit more media promotion going on around it.
Yeah. I can just see you being on Good Morning America, or The Today Show, “Eric Holscher, maker/creator of the Pac-Man Effect and Rule…”
No one cares about documentation, but this Pac-Man thing…
Yeah, exactly.
It’s got legs. Well, it’s your Trojan horse; when you get on there, you start talking about docs.
Yeah, that’s right. The importance of sustaining open source, and the PSF…
Whatever starts the conversation.
It’s the bait and switch.
That’s right. You know what you’ve gotta do though - honestly, you have to play to your strengths. And sometimes – like, you have to drive the fastest car to get around the track to win… So what’s your fastest car?
Pac-Man.
Pac-Man.
Yeah. There we go.
[28:02] Let me real quick add my Amen to something you touched upon when you giving your Medium answer - is that you have to write it down. I’ve been one of a handful of organizers of a local JavaScript conference for the last few years, and we’re always looking for new experiments, new ideas… And in our team Slack, people are always pasting in “This conference did this thing”, and somebody wrote about it, whether it’s the organizer themselves, saying “This worked” or “It did not work”, or it’s somebody who attended the event and says “This was an amazing little touch” or “I felt welcomed because X, Y or Z…” Well, those people who are interested in doing good events - they’re looking for those kinds of things…
Totally.
And people who are attending events - if you don’t write it down or you don’t talk about it, then…
Write the docs, man…!
Yeah, you’ve got it.
No docs? It didn’t happen.
So I’ll do plugs for a few things from ideas that we stole from other people that are awesome conference things.
Okay.
One we call the Welcome Wagon, which is a group of people who are long-time attendees - think of them as like mentors, or something… And we have a few different events on the schedule, where it’s like a “Hey, welcome…” – you know, it’s right before the opening, and “We’re gonna do venue tours!” And then the next evening, before the party, or whatever… Just a way to give people friendly faces.
We do a Welcome Wagon guide, that’s super-comprehensive, on the website. It’s like “What should I wear? How do I not get totally tired?” And we do checklists, where it’s like “Here’s how to attend the conference well. Talk to somebody new, but also take a break, drink water, get some fresh air.” How to do conference well without burning out, or getting overwhelmed.
Similarly, one of the things I love - I think we stole it from Python U.K, which we do lightning talks, but what they did is they ended up with two chalices. The problem is you’ve got lightning talks, and if you just do a list and people sign up, all the experienced people go first, and it’s a just a bunch of white dudes that know how to give lightning talks, and you don’t really get that interesting of personalities.
So what they did was they put two chalices; they put a chalice, that’s one for first-time speakers, and one for experienced speakers, and then you just put on a little notecard, a little post-it - what your talk is, who you are… And then before lunch we announce the talks, and we mix up first-time speakers with experienced speakers, and we try to get a flow to it… And that really let us use lightning talks as an onboard… Because I started speaking with lightning talks. I was on stage at Google in 2008 at the first ever DjangoCon - terrified. And lightning talks are what got me in that flow.
I’m a firm believer that giving people that opportunity for the first time is important. We’ve grown a lot of people from lightning talks to talks, to organizers, or speaking at other conferences, or that kind of stuff… So I think that’s another really powerful way to make sure you’re getting those first-timers on the stage.
Those are great. If you’re listening, steal those ideas…
It’s kind of like a contributor on-ramp. It’s kind of like a speaker on-ramp.
The Welcome Wagon.
Yeah, I love it.
I love it.
Totally. We have lots of ideas. You should steal more of them. I should write more of them down.
Do you have a central place where you’ve written…
Is there like a Wiki of great ideas?
We have an Organizers Guide for the conference, that is like “How do you run a Welcome Wagon? How do you run a lighting talk?” That kind of stuff. It’s partially updated. The Welcome Wagon was really good, actually. It’s probably the thing that is the most influential that you should steal, because it’s super valuable.
When is it a good time at a conference to do lightning talks? Because you have two-day conferences… Sometimes you have two days plus a day, which is not really a three-day, but it’s kind of like an optional third day…
We do them after lunch, because nobody wants to speak after lunch. None of the speakers wanna be directly after lunch, so we use–
Open it up with some lightning talks?
We use a tough slot basically for the lightning talks…
30 minutes, 20 minutes… How long?
3? We do 30 minutes. We get about six speakers, maybe… And we’re getting conference inside baseball here pretty quick, but we do 10-minute breaks between all the talks, which I highly recommend for any event, and we’re single-track… But anyway, 30 minutes, six-ish speakers after lunch, both days. It basically is just another talk slot in your schedule.
Yeah… Cool.
Cool. Well, Eric, thanks so much for sitting down with us.
Yeah, definitely. Thanks for having me here.
It’s always awesome talking with you.
Alright, have a good rest of your OSCON.
You too.
Okay, we’re here with Ali Spittel, one fourth of the Ladybugs…
[laughs] Yeah…
Have you ever been referred to as one fourth of the Ladybugs?
I don’t think so, but I like it.
It’s kind of nice, right?
Yeah.
So Ladybugs - I guess we should say what it is…
Start there, yeah.
Yeah, start there, before I get ahead of ourselves.
Yeah, so the Ladybug Podcast is a new podcast that we’ve recently launched. It’s about the tech industry in general, technical topics, but also career topics, hosted by four women in tech: me, Emma Wedekind, Kelly Vaughn and Lindsey Kopacz… And it’s been a lot of fun to launch it, and get it growing, and see the response.
We’ve done a couple episodes so far. The first one was how to career-change into tech, and then we’ve also been talking about how to balance side-projects, because we all have a bunch of those, and blogging, too…
Yeah. The podcast is a great format though, right?
It’s tons of fun.
We’re on a podcast right now.
Is that what this is?
[laughs] Definitely…
Yeah… I mean, it’s a fun format because it’s so free to – it’s been done for a while now, but it’s not like a one way to do it and that’s it. There’s no rulebook, so to speak, right?
Right.
Yeah.
Have you found any certain hurdles you’ve had to get over to get into it with the four of you?
I think that we’ve been pretty good about pre-planning stuff really well, so that we have a general flow of where we know the conversations are gonna head, or at least our goals for the conversation, and I think that that’s helped a lot… But definitely the whole technical side of it has been a learning curve as well for how to record stuff, and how to make sure that we’re mic-checking correctly, and… All those things have been a big learning curve, too.
What have you settled on in terms of how you get together? I know Emma’s over in Germany… Timing, scheduling, all the logistics around a show. It’s probably easier with four regulars versus a show like ours, where we’re interviewing a guest each time, so there’s a lot more logistics… But is there anything specific you’ve settled on? Like “It’s every day of this week” etc.
Totally. So what we’re doing is we’re recording three episodes at once. Three is kind of a manageable amount, where we’re still enjoying recording them at the end, whereas I feel like more than three would get kind of exhausting… But it allows us to have a backlog of episodes, so that we’re not having to record them right before their release, or anything like that. That’s been working out really well for us. It allows us to just schedule one block of time, instead of an hour a week, or something along those lines.
Yeah. How do you choose the topics? Is there a big fight about things? Is it like “No, I want this one…” Is it a voting process, is it anonymous?
[36:09] Not yet. We have a conversation about it. We have a Trello board with a bunch of different potential topics, and then we try to kind of distribute them between career ones, technical ones, and then something else, so that we’re attracting all the different audiences and keeping everybody engaged.
So if you were in charge of the Ladybugs and you’ve gotta pick the topic… Like “Ali, this is your show. Choose a topic, we’ll talk about whatever you want”, what would you do? What would you talk about?
Probably teaching people how to code. That’s kind of become my total passion, in different mediums, too. Blogging I think is a great way to teach, but also in person… And then in additiona to that, the podcast I think is a cool way to teach as well. I think talking about the different ways to teach people, and then the techniques for it, and how to keep people engaged, and all that… So that’s my real passion, and the thing that I could talk forever about. I would love to do an episode about that in the future.
What specifically about teaching code? What’s your favorite part of that?
I think seeing the light bulbs go off, and also seeing people just love it. The magic you have when you first write code and something appears on the page where you get to build something for the first time and it’s like “Oh wow, this is actually how this works. This is kind of magical.” I definitely had that experience when I was learning to code, and when I wrote my first [37:35] and was like “Oh, I can tell a computer to do something and it does it… This is the coolest thing ever.”
I think bringing that to other people and making it as accessible and exciting as possible is something that I just have the most fun doing.
You were teaching at a coding camp for a while, right? Was it General Assembly, or…?
Yeah.
So aside from taking a bootcamp or something, somebody brand new, what advice would you give them on how to get started? Maybe just with online resources, or something…
Totally. I’d say that everybody has a different learning style, and identify that first. Do you learn best in a classroom? Do you learn best from written tutorials? Do you learn best from video tutorials? What motivates you and what is gonna keep you the most interested? Because you’re in charge of your learning journey; you’re not forced to be in a classroom anymore. This isn’t high school. It’s up to you, so do what feels right to you, what makes you feel engaged, what makes you able to understand the concepts, and find those resources that really work for you.
I think that’s the hardest part of being self-taught. There’s so much out there, and trying to find the right things… I was mostly self-taught myself, and did have some computer science background in college, and also have taught at a bootcamp, so I’ve kind of seen all three, and I think all three do work for different people; I think just knowing what will work for you and dipping your toes in.
Yeah. That’s pretty smart, because it’s the same with learning anything. I like to listen to books more than read them… Although I love to read them as well. I just have more time for listening and I get things easier from listening that way, versus reading it myself. So it’s finding what works for you to learn, whatever process is fitting for you. It’s smart.
Totally. Totally.
So if you don’t know what works for you, do you just start trying stuff? I mean…
I think so.
That’s kind of development anyways, right? Just try stuff until it works.
Yeah, try to build something, and find all the stuffs along the way to build that thing.
Some people I think are self-starters that don’t necessarily need someone pushing them, or holding their hand, and they can go to Free Code Camp and just go through it. Then there’s other people that it’s like “If I don’t have structure in my life, I just know I’m not gonna stick with it”, so a bootcamp in that regards, or some sort of accountability is very helpful to get you over those humps. So yeah, I guess the better you know yourself, the better you can get started. But if not, you can try, start with the fastest, cheapest thing, like go to Free Code Camp, or go online and just see what you get going. Then if you struggle with that method, then maybe try something else.
[40:03] Yeah. I think no matter what, try to teach yourself first, because then you know that you enjoy it. If you’re trying to invest in a bootcamp or going back to school, that’s a huge investment, both of time and of money… So make sure that you at least enjoy programming first.
It may be more difficult for you to learn by yourself, and doing a bootcamp may be a more accelerated process, but at least try to play with it yourself and know that you at least enjoy programming before you invest all that time and money.
Yeah. You’ve gotta try it first.
Yeah.
Back in the day I used to program… Way back in the day. [laughter] It feels like forever ago…
“Back in the day…”
But I actually used to write Ruby, and stuff like that. I never really had done a lot of back-end stuff.
Yeah.
And I never got good enough at it to do it full-time… So I was always out on the front-end - design, UX, stuff like that. Part development, part direction… But never the best with software development, although I was decent at it… It just took me a while to really get a groove, and I never really got one that actually made me “a software developer.”
Well, who gets to call whom a software developer…?
Yeah. Totally. [laughs]
It could be a whole conversation on its own, right?
Yeah.
What has been a conversation recently, online, and on Twitter is “How do we define ourselves? How do we label these things? What’s really programming?” And I’m just here to tell you, bro, you’re a software developer, alright?
Alright… [laughter] Thanks, man.
You’re not an impostor here.
Well, speaking specifically about language writing - that’s just not where I camp out these days.
Oh yeah, I’m not saying you do… I’m just saying that we tend to diminish our own work, our own skills, and there is a sentiment of gatekeeping, and – not holier than thou, but… There’s like a real programmer versus some sort of fake programmer thing that goes around, and it makes us second-guess who we are and what we can do… And I just don’t want you to do that.
It’s not a healthy thing, that’s for sure… For me or for the community.
No, it’s not. But that leads me to something else… I’m thinking in terms of teaching and learning - a debate we’ve kind of had a little bit on JS Party and that we talk about is where do you start technologically, with beginners? Just speaking of web development specifically… There’s the layered cake idea, where it’s like “You teach me the HTML, and then you teach me CSS, and then you teach me JavaScript”, and then go from there.
Then there’s maybe the more practitioner, like “Well, just pick a JavaScript framework which you can get hired for”, or has its name in a list of jobs… Like, just learn React first. Start with this thing that you can use right away and then you’ll back-fill the underlying technologies… I just wonder if you have opinions on this.
I definitely have opinions on this. I started off mostly in Python, and doing back-end stuff. My second language was C++, and then I was kind of thrown into web development, and doing it on the job for the first time, learning it while doing it… So I learned React probably way sooner than I should have, and I really wish that I knew the fundamentals a lot better, because React is just JavaScript; it’s not anything magical or anything like that. But if I had known that, for example, classes were built into JavaScript, not React, then I think that that would have been…
Empowering…
[laughter] …big, and much more helpful.
That would have been big to know.
[43:47] Although I was also learning at that time when it was like – ES6 was just coming out, so all the documentation was changing for that… But yeah, I really think that you can’t go wrong with learning the fundamentals, because HTML, CSS and JavaScript are evolving, but they are pretty stable, and a lot of the fundamentals stay the same from time to time; then these frameworks - there’s one that comes up, and… You know, React has maybe won the framework battle to some extent, for now… You know, Vue and all the others are awesome too, but React is probably the dominant one right now. So it’s definitely worth learning, but I think learning the JavaScript fundamentals will only make learning React easier down the road, when you’re trying to learn React.
Yeah. I think specifically with HTML and CSS, not only is it that they’re pretty stable, but that all the advancements are additive. They’re adding to the language - they’re adding elements, they’re adding selector style… They’re adding technologies on top, but that doesn’t obsolete any of the existing things.
Totally.
So it’s not like you’re gonna… JavaScript on the other hand - callbacks are out, asyc/await is in… That’s not additive. I mean, it’s an additional technology, but you know what I’m saying.
It’s different.
It’s gonna replace the style… So you feel like you have to relearn certain things, but… Especially with the HTML and CSS layers, it’s pretty safe.
What do you think about this idea in terms of – do you ever watch a movie and you get the ending first, and then you watch the movie? The movie begins with the ending.
Tarantino style?
Right, Tarantino style.
Yeah, Pulp Fiction.
It’s almost like that with software developers. You almost wanna show them “Here’s what we’re gonna build. Here’s the dreamworld possibility thing, and we’re gonna start here.” You almost have to show them the land of fruit and honey, or whatever it is… And– what’s that…?
Milk and honey.
Milk and honey. Fruit and honey… [laughter] Whatever. Fruit and honey, milk and honey - it’s all the same. You’ve gotta show them sort of where you’re trying to go, and then say “We’re gonna begin here.” So that way they can see the car before they start putting together some nuts and bolts that make up the alternator, for example.
Yeah.
Unless you drive an e-car, of course.
One of my old bosses told me my favorite thing ever, and that is – the biggest moment as a software developer is when you know that you can look at any site and know that with enough time and education you could build it. So not that you could build it right now with your current knowledge, but know that you could teach yourself the things that you would need to know to build that thing. That I think is so true - there’s a moment where it kind of clicks and you’re like “Yeah, if I had enough time, and if I had the right resources, I could teach myself to do that.” You can’t do everything, obviously; you’d have a team. But you could teach yourself how to do these things. I think that that’s really true.
Absolutely. Something I used to say is that when I taught – I taught web development for a couple of years… And I would tell my students that I want them to become intrepid. Right now they’re timid and they don’t know anything; if you’re bold at that point, then there’s a problem… Misplaced zeal. I’m not gonna get them all the way, but I wanna get them to a point where – it’s kind of like the same exact sentiment; there’s enough skills to have the confidence to think they can build anything. That’ll get you places.
Yeah.
Kind of like just good enough to be dangerous is fine for now. That’s a goal. Once you’re at a place where you can look at a website and say “I could build that”, even if maybe you’re naive enough that probably you couldn’t build it by yourself, [laughter] but you could… That’s a pretty good place to be, and to build upon that.
Well, most great things are built by visionaries, and that’s what that is - it’s a visionary aspect. You’ve gotta have some sort of self-assurance that you don’t have the skills or all the resources to get somewhere, but that it is possible. And with the right things aligning, you will get there, or you could get there.
Totally.
And that’s what enables dreamers.
Yeah. And teaching people to teach themselves, too. Teaching people how to read documentation, teaching people how to break problems into smaller problems… All of those fundamental things that are so much more important than any one piece of a language, or any language in itself… Because all these technologies change, and the one thing that stays consistent is the ability to learn those new things when they come out.
[48:07] The human element.
Yeah.
What’s missing then? If we have a world where there’s a lot of opportunity in software, in all areas, what’s missing to get people in?
That’s a good question. I think that the way that we teach code right now is super-accessible. Every type of software education is missing something, to some extent. For self-learners it’s having the right resources there - because they’re all our there, it’s just finding them.
Also, the other hard part with self-learning is that you don’t have anybody to check you. You could be teaching yourself something totally incorrectly, and you wouldn’t have any way to know that, for the most part.
With bootcamps it’s that it’s an accelerated format and you can’t learn everything in 12 weeks… So some fundamentals may be missing there. Then with computer science majors, for the most part, a lot of the skills that you’re gonna be using day-to-day on the job, like web development, aren’t super-focused on… And a lot of the Why tends to be missing. At least for my computer science education, I was so confused as to why we were learning C++, because lists were built into Python, and I didn’t understand why you’d have to build a link list, because there’s already a better programming language out there… [laughter] Which isn’t actually how that works at all…
I had the exact same situation.
But yeah… So I think that there’s something missing with all these things, but I think we could make it better, and I think that also teaching people how to code earlier, in elementary or middle school, would be so incredible… Because those problem-solving skills that you need for computer science and for programming in general, even if you don’t become a programmer, are so helpful to making you think in a different way. And the world is based on technology now; it’s an awesome skill for anybody to have, so… That’s something that is my kind of soapbox issue.
Yeah. The youngsters see things differently too, and I’m always surprised by how – I’m 40, so the younger generation is pretty much anybody under 40 for me. But I’m always surprised by how the younger generation can see beyond the forest and see some cool stuff, because I’m so – my limitations are built by my experiences, so… Kids sometimes are just so bold, and I love that about that young age.
Totally.
At the same time though, it’s sort of dangerous to get them in so early, because it is sort of addictive…
They’ll take our jobs for less–
They’ll take our jobs…! [unintelligible 00:50:31.18] job security, nobody else would learn this stuff. [laughter]
No, not at all that!
Those eighth graders–
More so getting into–
As long as we know how to podcast, we’ll be safe. [laughter]
True, or write blog posts.
I mean more so getting into the things they’ll have to do as an adult too early. Like, really enjoy those younger years, because you only get them once, obviously…
Oh, yeah.
Totally.
So don’t lose the sight of the fact that–
Keep it fun.
Yeah. Keep it fun. Don’t make it where you’ve gotta go and get a job tomorrow, but…
Oh, definitely.
I think it’s really important to learn early, just as a fine line of how to best put that into life.
I think there’s so many awesome ways to gamify learning… Especially for that age group. Code.org has these incredible resources that are teaching code through games… And then also just integrating it into math class. Because if you’re teaching algebra, variables and functions are in algebra, too; so if you’re teaching people how to code, that’s a really tangible application of algebra. So… That’s kind of a fun way to integrate that.
I like that, yeah. You almost accidentally teach them… Which would be super-cool.
Yeah. And do it just more explicitly.
It’s like “Well, that’s a programming language? That’s coding? Oh, wow.” Because then it also makes it so accessible, too.
Totally.
The barrier is gone. No more hurdle.
Yeah. You’ll actually use this algebra later in your life.
I can remember thinking “I’ll never use this in my life.”
I like the idea of accidentally teaching something… Like, you walk in a room and trip and you just like yell a variable name out, or something… Like, “Whoa, I taught you variables! I didn’t even mean to say that… X=3.” [laughter]
You’re so funny, man…
Yeah, accidental teaching.
Yeah, I like that.
Love it.
Well, let’s talk about Dev then. When we first met you, at least me –
Pre-Dev.
…when we had that conversation, it was before you went to Dev. So what are you doing now?
[52:17] I am a software engineer and developer advocate. I write code for the codebase; it’s an open source codebase, so anybody can contribute… But I do a lot of front-end development. My favorite thing with writing code is doing experimental art and code stuff. I built their offline page, and you can draw pictures on it, which is really fun; that’s kind of what I do on that side of my job.
Then I also come to things like OSCON, and speak, and write blog posts, and all those things too.
Are you speaking at OSCON?
Yeah, I spoke yesterday about how to blog.
How do you blog…? [laughter]
That’s a good question… Good question. Still figuring it out.
How do you blog…?
“I don’t know…”
No, seriously, how do you blog?
No, seriously, tell us. [laughter]
Well, there are so many stages of it. First, it’s just writing something down. My rough drafts are so gnarly… Nobody should ever look at them. But just overcoming writers’ block and putting something on that page, and then editing it a bunch of times so it actually makes sense to a person, and trying to make it so that multiple learning styles can understand it… So putting things like CodePens in there, or Repl.its, so that people can interact with the code… And then from there adding graphics to it, making sure that your text is broken up, so it’s not just like an essay that nobody wants to read, there’s different headers that people can jump to if they’re only interested in certain things…
And then once you hit the Publish button, which is a hard stop in itself, it’s getting the content out there, which I’m sure you all are pretty experienced in with the podcast, because it looks the same there… But there’s a lot of things that you can do in that regard, of using social media, search engine optimization, and then also cross-posting. Cross-posting is really one of the ways that I really gained an audience. I started with actually writing just on Medium; I didn’t get really any traction there whatsoever. I got 36 readers on my first post.
Then I found Dev.to on Twitter, and started cross-posting to there as well. And even when I built my own blogging platform, I was still syndicating out to those different sources; use a canonical URL and you’ll be good. It’ll actually boost your own SEO. That makes it so that three different audiences were seeing my writing, and then they would follow me for my next posts, and that’s how it grew. There’s so many stages, and so much advice on blogging I could give.
Yeah, everything from coming up with the ideas, to actually the necessary steps to massage it into a real post that people actually read…
Yeah.
And then not only that, something worth reading, but how to actually get their attention enough to read it.
Totally, totally. So much to it.
And then, when they actually do read it and then they wanna tell you about it, there’s a whole other stage of feedback, which can be…
Solicited or unsolicited.
Solicited or unsolicited. [laughter]
Nice and rude…
Yeah. So it’s like “Oh, the one problem is nobody reads my words, and then the other problem is everybody reads my words…”
…and doesn’t like them.
People don’t like my words. [laughter]
Always an adventure. Always an adventure.
You know, the good thing is - well, good or bad - is you can’t please everybody, so…
Yeah, totally.
Get over that.
I think it’s decently – not easy, but it’s not awful for me to deal with technical critiques, because I’m like “Oh, I can improve that.” And they happen to actually pretty infrequently, especially because I write mostly beginner content, so it’s stuff that I know really well… So a lot of the technical critiques don’t come out.
I think for me, I get more critiques of me as a person, which is a little bit weirder to deal with…
[56:02] Wow.
Yeah… It’s harder to deal with those things.
But… Always an adventure.
What kind of personal feelings are you putting into your blog posts? Are you talking about your–
Sometimes. I definitely put my personal stories in there, but…
Your voice.
…I sometimes have people who are like “Oh, she’s too young”, or “She just isn’t experienced enough”, and it’s like… Well, I’ve been a software engineer for like six years, so… If I can’t write it, then who can?
Talking about gatekeeping, how long do I have to be here before I’m allowed to write something?
Yeah, exactly. [laughs] Does it have to be 40 years? I don’t understand, but… Anyways. People are weird.
The way I approach criticism is anything that I can actually change - for instance, a technical problem, or…
Yeah.
My fear is just to be wrong. I just don’t wanna be wrong… And I am, on a regular basis, so that’s hard to deal with. But if I’m wrong, I can learn and change, right?
Yes, definitely.
But if you get criticized for something you can’t change, like “You haven’t been here long enough”, it’s like…
Yeah, “Sorry…”
…well, do I just stop writing, or? What is long enough, and who decides, right?
Yeah.
Or your age, or your sex, or your color - all these things; these are immutable characteristics. So that criticism - just brush your shoulder off.
It’s a them problem, not a me problem.
Haters. Haters gonna hate.
Yeah, exactly.
That’s it.
Totally.
Cool. Anything else we should talk about?
[laughs]
How to edit out portions of podcasts…
I can let you all get back to doing booth things, too.
Well, thanks for sitting down and talking with us. How can people find you online, how can they listen to Ladybug etc?
Totally. I am @ASpittel everywhere - Twitter, and dev.to are my two main platforms. And then Ladybug Podcast is ladybug.dev, or anywhere you listen to podcasts.
There you go.
Ali, it was awesome. Thank you.
Thank you!
Hong, thanks so much for sitting down with us here. We’re at OSCON, in the expo hall, and… You’re speaking.
Yes.
What are you speaking about?
I’m speaking about the story of FOSSASIA - our history, how did we scale and sustain the open source development over the last ten years.
Wow, ten years… That’s a lot to cover in – how long do we have, 35 minutes, or…?
I think I have 40 minutes.
40 minutes. Ten years in 40 minutes. That’s quite a task. I’ve never heard of FOSSASIA until 15 minutes ago, so… Help us out. Tell us the story.
FOSSASIA is basically a network of people from everywhere, not only from Asia, who care about open technology and who want to make the world a better place with open source. An open collaboration and sharing of knowledge. We are based out of Singapore. We’re one of the biggest open source organizations in Asia.
I just think it’s kind of a shame that - one of the biggest open source organizations in Asia, and I’ve never even heard of it.
That is the reason why I’m here.
That’s why you’re here.
Good, we’re glad to have you here.
We’re glad you’re here with us, and we’d love to hear more about it. So it’s based out of Singapore… And what do you all do?
We develop software and hardware. We have a number of portfolio projects that are coming out of the FOSSASIA community. For instance, the hardware device that I showed you earlier, called the Pocket Science Lab. Basically is a USB-powered device that helps you measure all kinds of things, and it helps people do science experiments.
You have an oscilloscope, a wave generator, a logic analyzer, a power source, and many other instruments into one single device, and everything open source. So we have the kinematics of the hardware, the firmware, everything available on GitHub. We built our own Android application and also desktop application.
Cool. So does FOSSASIA have – is there physical get-togethers, is it all online? What does the community actually look like?
The network of FOSSASIA - we have about 35,000 active subscribers.
35,000?
Yes.
That’s huge.
It’s including developers, designers, organizers, regular users… But when you talk about the developer community, we have at the moment 3,900 on GitHub. Of course, not everyone super-active every day, but we have pull requests coming in almost every day across our projects.
Wow.
Why do you think we haven’t heard of FOSSASIA before?
You know, the conversation I had earlier with people… When there is an opinion saying “Okay, we need to talk more to the Chinese, because they don’t do open source/they don’t contribute to open source” - this is actually not the case.
It’s not true.
Yes. Open source is fairly developed in China, or a lot of places. Asian communities are building projects similar to us. It could be because we are still quite young. We’ve been around for ten years.
Here at OSCON I saw quite a number of faces. For instance, if I go around here, a lot of people here have come to the FOSSASIA Summit before, so they are aware about it. Yesterday, when I was queuing up in the exhibition hall, somebody came to me and said her friend actually knew about the Pocket Science Lab project.
Interesting.
That’s exciting.
Yeah. It’s interesting, the dichotomy between the United States or other countries and China, primarily I would say around maybe the Great Firewall, so to speak… I’m not sure if it’s cultural or if it’s political, but something stopping everyone in the country from participating the way that I guess maybe everyone else does… The freedom, so to speak. Can you speak to that.
I’m sorry, I don’t really get the question.
I’ll explain it differently. Mainly the reason why we don’t hear from – there’s a language barrier, there’s a lot of other hurdles that are in the way of our awareness of how ubiquitous open source is, or contributions are in Asia.
Yeah. I think it also has very much to do with the culture side of Asian people. I cannot generalize for everyone, but as you know, we do things but we are not so good in terms of marketing our reaching. So I understand in the Western culture when you do something, you really know how to make your project visible to people… So this is something that we’re constantly working on. We also try to go out to different conferences. We went to FOSDEM in Europe, and we also go to different places. This is my first time here at OSCON.
[01:04:21.22] I also don’t see a lot of Asian projects that are available here… So I’m one of the lucky ones, because I got involved in the community. So I heard about OSCON, but I don’t believe that all the people in Asia also heard or know of the conference or the community here. So there’s always the missing connection between different continents in terms of physical space, or in terms of knowledge sharing. This is one of the main purposes of FOSSASIA - we want to be the bridge, we want to connect America and Asia; we want to connect Asia and Europe, Asia and Africa.
Our goal in the ecosystem is to be the connector, to be the coordinator and the person in-between that brings different communities together [unintelligible 01:05:10.21] in the ecosystem.
It’s interesting that the internet flattens everything out, in terms of once you have access to it. We’re all on one shared namespace, we’re all on the internet… But yet we still have all these real-world barriers between the people who have access to each other, but don’t know that the other persons exist because of the ocean between us, or because of language barriers, or because of cultural differences… So there tends to be these silos of communities just because of the natural way that we live.
I’m curious what would a better community look like…? Let’s say FOSSASIA and your efforts to bridge the gap over the oceans, so to speak, worked. Like, ten years from now you did it, and we’re now connected. What would that look like? Would there be events that are attended by all? Would there be bigger social networks around software? I’m curious what that would – maybe more collaboration?
Yes, exactly. I think your point is very important. We need to manage somehow to bring people together. That’s why we’ve been running one conference similar to OSCON in Singapore. It’s called the FOSSASIA Summit.
The FOSSASIA Summit.
This year was our tenth anniversary. So it happened every year in Singapore.
Wow, ten years…
This is 19th for OSCON, I believe. 19 or 20 years.
Yeah, I don’t know about that.
Around there, at least.
Something like that.
Yeah. So we are still very young. But what we try to do every year is bring different communities together at the FOSSASIA Summit. We have also similar participants like what you have here. A lot of speaker who come to OSCON also come to the FOSSASIA Summit.
It’s very difficult to have a huge conference where you can have all the people getting together, because when it gets to a certain scale, it’s not as nice anymore. How can you connect with people if you go to a conference with 15,000 or 20,000 people attending?
It’s like a mob, it’s not a community. It’s a huge group of people.
Yeah. So the community – our approach is we have the conference FOSSASIA Summit, but we also have smaller conferences throughout the year. We’re gonna have one OpenTechSummit in Bangkok in the beginning of October - October 1st and 2nd. And we have another one in Shenzhen, China, at the end of November.
So we try to do also smaller events throughout the year. Then in March every year in Singapore, the bigger conference. So we try to provide as many opportunities as possible for people to get together, face-to-face.
[01:08:00.03] Well, there’s one aspect that I would say of Asian influence or community that I’ve seen from my perspective increase in the last 18 months. We have an automated newsletter called Changelog Nightly, and it uses GitHub’s activity, and those things stored in BigQuery, to basically just surface the most active or starred repositories in the last 24 hours… And it sends out every night. So you just see what people are starring, and what they’re working on on GitHub.
In the last 18 months, the number of repos that are non-English descriptions – so we include the name of the repository, the link to it, and then the description. And the number of non-English repositories has skyrocketed recently, so much so that we’ve added a little Translate button next to the description, to go back and forth into whatever language you happen to be reading it in.
I’ve seen a groundswell of open source, mostly Chinese language repositories on GitHub… So that’s been my main contact with the Asian side of the open source world - really seeing those things get popular.
The awareness, yeah.
So there is some movement there. You mentioned you have a group of 35,000 people, about 3,000 on GitHub… What are some of the projects that are coming out of FOSSASIA? You mentioned the hardware stuff, software stuff, that people can get excited about.
Yes. Right now we have something that’s similar to Eventbrite. We are an event organizer – I mentioned to you we run multiple events throughout the year, and we’ve been searching for an open source solution that helps our purpose. We see a lot of people now using Eventbrite, so we developed a solution called Eventyay.
Eventyay. I like that.
It’s got a good ring to it.
It’s better than Evenbrite even.
Yeah. It is entirely open source, and you can host it on your own server. We give the freedom to the people. You don’t have a middleman who controls the data.
Awesome.
We offer a lot of features and functionality that’s similar to Eventbrite. Basically, there is a payment gateway, there is a registration QR code scanner, and we even have the scheduling system where you can call for speakers, and you can generate a schedule for your own event. We use it for the FOSSASIA Summit, and we also have a number of open source conferences running our system.
So what’s it called?
Eventyay.
Eventyay. She said that already.
She did.
Sorry… I heard that. Sorry about that. What’s the URL for it? Where can people go to find it? Where is it on GitHub?
So on GitHub is the source code, but we also have the customer version, Eventyay.com.
Oh, nice.
Eventyay.com, y’all. Go there and check it out.
And you can also find it on Android, on the Play Store.
Any plans for a one-click app with Digital Ocean, or Docker, make it easy running around? How does it work? What’s the setup process?
I don’t understand the [unintelligible 01:11:33.05]
To get started, since it’s open source, to run the server yourself, what’s a speedy way? How do you get started?
How to get started… We have very good deployment documentation available on our repository, so follow the steps there. I need to think about it, the technical side, because I’m not deeply involved in the project. We try to also have it implemented in Kubernetes, but at the moment it’s running on Docker, or something… What is the name of that…?
[01:12:07.19] Maybe a Helmchart?
What’s that?
Helmchart.
I’m just thinking she’s too nice to say RTFM.
[laughs]
I can look it up…
But you’re deserving on that one. Just kidding.
[laughs]
That’s okay.
But I can talk about another software project.
Yeah, tell us about another one.
So we built something called the Smart Speaker. Similar to Google Home or Alexa Echo, but it runs on our own software, Susi.ai.
I’ve heard of Suzie AI. Suzie, like the name Suzie?
Yes.
Yes, that’s very cool. So that’s coming from you guys?
It’s coming from us, yeah. Have you tried it out?
No. I’m afraid of all sorts of things.
Yeah… There’s no Alexa and no Google Home in my home.
[laughs] But you don’t have to be afraid of it, because Amazon is not powering Susi. So does Susi run on your own server then?
Yes. You can also run it on your own server; so the infrastructure side of Susi. We have a web application and we also have an Android application. [unintelligible 01:13:21.07] the core of the Susi server. This is the back-end of the AI, and we also have a knowledge store – it’s called the Susi Knowledge Database. Basically, [unintelligible 01:13:35.22] question in for the AI… But we also have a CMS, similar to Alexa, where the community can contribute skill into the system. We have similar things like Alexa CMS - we have a Susi skill CMS.
Susi, play the Changelog.
Oh, wait… Somebody just –
My Susi just–
My Susi just started playing the Changelog.
[unintelligible 01:14:05.20] trigger warning.
Yes. And we’ve also built hardware, a speaker. Our Raspberry Pi – we have our own speaker, powered by Susi.
Wow.
At the moment we’re focusing on making a very good skill for playing music. As you know, the Google Home or Alexa - you can ask this kind of question. But we also found the issue where you wanted to play music and they always require you to have a premium account of a different service, so you don’t have the freedom of choosing the service that you like; the provider actually pushes the server to you. For us it’s independent, and you don’t have this kind of dependency on different providers.
That world scares me, honestly…
Because you’re a Luddite.
Well, not so much.
[laughs] Just kidding.
I just see a lot of the– In the last couple of weeks I’ve seen – Google has admitted to storing and listening to stuff on Google Home, for example. Amazon has admitted to…
…and store all audio.
…storing this audio for long-term, and I just think about all the weird applications of that. And I don’t mind Amazon as a company, but –
No one [unintelligible 01:15:14.13] things I say in my house.
Well, you never know what you wanna hide from the world until you wanna hide it from the world. Private stuff, you know what I mean?
Right.
Not that it’s bad or good, but it’s just…
It’s just private.
Yeah, it’s private. There’s no reason for that. But the centralization of it is what scares me. The big tech companies having that kind of power.
So we’ve gotta go open source, man. You’ve gotta go Susi.
That’s right, that’s right. Susi, play the Changelog. I like that.
Susi, play the Changelog.
Susi is one of the projects, but I believe there are also many other open source AI projects out there. People have shared the same opinion - they don’t want to be controlled by a few players in the market, so our goal here is to try to grow the ecosystem, so everyone can have the freedom whatever he or she likes to do.
Yeah. Okay, last question here - imagine a developer; she lives in the middle of the United States and she’s listening to this conversation because she likes podcasts, and she has Susi, so she says “Susi, play the Changelog.” She’s intrigued by FOSSASIA. What’s the best way to get plugged into that community?
The best way - if you’re a developer, all our development happens on GitHub. There is a FOSSASIA org on GitHub, and all the communication happens on Gitter, the FOSSASIA Gitter channel. Every single project has its own Gitter channels and a mailing list, so it’s very easy to get involved as a developer.
Wow, that’s awesome.
But we also try to be an inclusive community. I believe that the success of one project doesn’t only rely on developers, so we need all kinds of contributors; we need users, we need marketers, we need people who go out and write the content or the documentation. So if you are interested in getting involved, there’s several ways that you can collaborate with us.
Okay, awesome. Anything else you’d like to talk about before we let you go?
I don’t know…
You have a pretty cool badge, that has a scrolling marquee that says FOSSASIA.
Yes, this is also another hardware project that we’ve been working on. It’s called Badge Magic. You can also find the application on Android or F-Droid. The code is entirely open source, again, on the FOSSASIA GitHub.
Wow.
So much cool stuff.
And we hope to release the kinematic for the hardware in the upcoming months.
Mind = blown. What’s the org on GitHub? FOSSASIA?
Yes, that is correct.
Okay, cool. So github.com/fossasia. It will be in the show notes, y’all. [laughter] I just wanted to say it out loud.
Hong, what’s the best way for people to contact you directly, if they’d like to get in touch?
You can search for me @hpdang on the internet. You can find all my contact.
Gotcha.
Thank you so much for sitting down with us. It was awesome.
Yeah, it was awesome, Hong.
Thank you for having me.
Our transcripts are open source on GitHub. Improvements are welcome. 💚