How do we balance business and community? What have been some of our mistakes? What vision did you sell to VCs? How else might we make money?
Speaker 0: Hello there. My name is Kevin. I run developer relations at Directus, and I'm in New York City for the first time since the start of the pandemic, to meet the team. So that's really exciting. And so I thought I would take this opportunity to meet up with our cofounders, Ben and Reich, and ask them a bunch of questions that you've posed.
That's me making sure I don't get knocked down by a car. Ask a ton of your questions, and this is just the start. We'll be doing this every few months. But I'm gonna go meet with Ryke, and then we are gonna ask him some questions. So one of the first questions we had in is just what is the value community at
Speaker 1: the end of the day, it's the the foundation where everything is built on at the moment, honestly. Feedback loop is what what makes the project what it is, really.
Speaker 0: Yeah. Because without the feedback, like, we're just flying blind to a degree. We're building stuff for
Speaker 1: us. And And and at the end of day, the goal is to help as many people as we can. So we we need that you know, it's a symbiotic thing, really.
Speaker 0: Yeah. Absolutely. So I suppose one of the slightly more tricky questions perhaps is you're gracing yourself. Is, what are some of the, I don't know, mistakes or missteps that you think we have made as directors? Oh, boy.
I suppose scope to engineering, but maybe more broadly
Speaker 1: Yeah.
Speaker 0: To date.
Speaker 1: That's a great question. I I I think one of the one of the bigger things that comes to mind is that we've launched a lot of stuff out of sort of enthusiasm, out of proof of concepts. Right? Where it's just like, we were noodling around with a new idea and it turns out that the proof of concept was already, you know, kinda there. And then you launch the proof of concept to to a GitHub branch or something and then people got excited and then you end up just pushing it out because it's like, oh, everybody already likes it.
Let's just do it. Right? But then after the fact you realize like There's a maintenance
Speaker 0: button or it needs
Speaker 1: to be built. Built. Right. Yeah. We hadn't quite figured out the full spec yet, so now it's like, oh, but it should have done
Speaker 0: this. Yeah. Yeah.
Speaker 1: Or it should have worked like that. So like taking that slower, slower, has has been a big
Speaker 0: I've seen you do that we wanna push out, maintain
Speaker 1: Yeah. For sure.
Speaker 0: Properly. So I suppose there's definitely, growth
Speaker 1: because there's out of that. There's so many fun things that we can do and that we have done and that we're trying out and whatnot. And then it's like, oh, but how would that work for real though? Yeah.
Speaker 0: Or at scale.
Speaker 1: Or at scale Yeah. Or how does that Yeah. Exactly. So even now with like some of the new big features that we're already working on with like web sockets and stuff, it's like if you really just sit down and just think about what that means, it's like, oh, okay. Yeah.
Yeah. There's just so much more that that that shows up and it's it's sometimes easy to miss, you know, the bigger picture if you just get excited about about a new feature like that. Reason with that Jet GPT stuff as well, wherever Yeah. Everybody's like, oh, what if
Speaker 0: we just have AI?
Speaker 1: It's like, woah, woah, woah.
Speaker 0: When you build projects for yourself, you really just have to have like this this implementation that doesn't have to work at scale. Yeah. But we're having to think about what it means to build features that not only all of our all of our community can use Yeah. In open source in their own deployment, but also that we're gonna host and have Yep. Have tens of thousands of users have access to right this minute and
Speaker 1: the implications
Speaker 0: of that. Thanks for joining me in my office. Very rude for you to be eating on the job, if I may say so myself. Mark, I've got some questions for you. Mhmm.
The first one, which is a little tricky, but I think very fair and very in the forefront of many of our community members' minds, which is there is a risk when building a business that we are then going to struggle to maintain and grow the community that's got us to where we are today. And I'm kinda wondering what you think about that.
Speaker 1: Yeah. No. Like I said, it is it is a delicate delicate balancing act really, where it's like, you know, the community side of things, it it grows the project and user base to what it is right now, but at the same time, to make that sustainable over time, we gotta make enough revenue or enough profit to really get that, you know, make that work long time. Because the last thing we wanna do now is, you know, be sort of flesh in the pen and die out immediately.
Speaker 0: Yeah. We want people to, like, rely on this project, not just for a year or 2 years, No.
Speaker 1: Exactly. We we wanna be there reliable for as long as you need us. Right? And in order to do that, we have to make revenue. That's that's just the way it is, you know.
Everybody gotta pay their rent. We gotta pay The one's
Speaker 0: up right now.
Speaker 1: There's there's loads of cost when it comes to to building software at this scale, and yet, you know, if you give everything away in open source, you you don't make revenue out of it. So it's a very delicate balance I guess. But I'm I'm I'm hopeful that in this dual sort of open source slash SaaS model, we can we can still help out with the parts that are still tricky. Even though the software you already can use, the the tricky bit is still, you know, hosting and doing it at scale for production use, backups and everything. So I do really believe that sort of that SaaS model next to having the open source code base is a sustainable thing.
Yeah. I mean, not turning our back from this community either
Speaker 0: like Oh, absolutely. Critical because without them, like, we we don't have the adoption. We don't have Exactly. The the proof, the social proof that this makes sense.
Speaker 1: Yeah.
Speaker 0: That makes sense. Before I got here, the core team was really hot at answering people's questions when they came in on Discord. And you know community members have quite rightly noticed that starting to trail off a bit and I'm wondering if you have, any thoughts or or reasons for this? I know we've started to talk about it a bit, but given this context of us sitting here and it being a question that we got from the community, I thought this would be a great arena to talk about it again. Yeah.
Absolutely.
Speaker 1: And I complicated question. Right? Where it's like, early days, you know, smaller open source community. Therefore, the amount of questions that you get, I could just step into discord, you know, in the morning and just answer basically all of the open ones and then start moving on with my day. Whereas now, we're at a point where it would basically be a 3 x full time job to to really, you know, give it the attention and love that it deserves.
And then the other thing is we did notice that at certain points, like, the the more duplicated or similar questions you get, it becomes, more of a challenge to sort of aggregate the similar ones together first, and then really just focus on explaining it well and sort of permanently when it comes to, like, docs and videos and stuff
Speaker 2: like that.
Speaker 1: So I think the focus shifted a little bit from trying to help everybody out individually to trying to help out Everyone. The community as a whole at the same time. So that means aggregating all the questions together first and then figuring out the priority of like, okay, what topics are often asked about? That's also why flows came up just now. Because we we know we get a lot of questions around you.
How or how can you debug that better and that sort of thing. So really just taking the time to to first aggregating it and then focusing on the more quality content around that rather than trying to do one off, answer answer.
Speaker 0: We're also just, what, like 30 ish people? Oh, that too. Yeah. Yeah. I mean, I think that's a huge thing.
It's like we're 30 people. Yeah. And those 30 people are, you know, engineers who are working on pushing the platform forward and fixing bugs that occur. It includes salespeople who are there to, you know, take on people who want to pay us for the service, and that's great because they make the project sustainable, marketing to gather interest, docs, writers. But we are just 30 people and we all have stations that are, you know, pushing the project forward.
Absolutely.
Speaker 1: And then
Speaker 0: answering community questions, is something that we absolutely are committed to doing, but within the bounds of the time we have. Bear in mind we also are doing other bits. And yeah that's really tricky because also like quite crudely, you know, we have a support offering that, you know, enterprises can pay for and those contexts enable us to hire people to help and support. Right. But still that is just a very small amount of, like, you know, hours that can be spent overall on what is appropriate for the people paying.
But then when you have the community there as well, the the the the exponential growth of that community and user and users isn't reflected in the stuff that we have For sure. And that's fine, but then but then there's this really come to us one time?
Speaker 1: Yeah. Exactly.
Speaker 0: Down in docs and education 100%. And then we can help anyone else who Yeah. Who ask questions who we have time to.
Speaker 1: Yeah. That's because there's there's also a lot of great questions that sort of toy on the difference between how do I do x versus it would be cool if your ex could do y. You know what I mean? And but yeah, I think right now just to answer the the the actual questions that are coming in, we're we're just focusing on basically tackling it at the source. Just making sure that, like, people don't have to come in to ask the question in the first place.
Right? Because there's just angles where you said education content.
Speaker 0: And then just trying our best for the rest. Oh, yeah. Absolutely. The last question I have for you actually is, a little bit more high level, I suppose, which is just how do we decide what to work on in engineering? That's a
Speaker 1: great one.
Speaker 0: Like, how do we decide on that?
Speaker 1: Yeah. No. That is a great question, which is also one that that changed with the growth of the community and the project, obviously. Because when it started out, I mean, especially especially early early days, it was just like whatever the wind blew and it was just like, oh, it feels like feels like insights this week. You know what I mean?
But but nowadays, no, there's there's way more of a process now. Especially seeing that we have a lot of of feature requests coming in as well. It's it's it's it's a pretty big challenge to figure out, like, which one is the important one to do next, basically. Because like you mentioned, the same goes for engineering. Like, there's only so many people and so many hours in
Speaker 2: a day.
Speaker 1: So we have to figure out what's important.
Speaker 0: What goes into that process?
Speaker 1: So it is it is mostly community interest honestly, where it's just we have GitHub discussions which is a great aggregator of new ideas. Like, how would it work?
Speaker 2: How could it work?
Speaker 1: How should it work? Like, how would it work? How could it work? How should it work? And how can we make it work like that?
Right? And then the other thing is with up votes, we can basically just have a ranked list of like, here's the top ten things that we would like to see next from that community angle. And at the same time, there's obviously also parts. It's it's A big focus is also stability and performance.
Speaker 0: Mhmm. Right? Where it's
Speaker 1: like we can't forget that, you know, most of the engineering work is to make sure that what we have remains the work and gets better, rather than it's not it's not just taking on more stuff, more stuff, more stuff. Right? So that's another tricky balance where it's like we gotta be careful in picking our battles because every time we push out something new now, we gotta make sure that it's good. Yeah. It needs to work.
Speaker 0: And it's easy to take.
Speaker 1: And it's easy to maintain, and it works everywhere.
Speaker 0: Another question, I guess, which was explicitly asked, and it's kind of a really nice segue into it. I said it was the last question. I lied. It's ripping off of it, I guess Oh, good. Is how do we balance kind of feature requests from customers, from people who pay us for directors cloud at an enterprise level or, you know, whatever that might look like.
Mhmm. Companies who we're who we're wanting to get on board perhaps and community features. I imagine a lot of the time they converge and they are actually similar and it just adds like, you know, oh, well, we can treat that as like 10 upvotes for the sake
Speaker 1: of impact.
Speaker 0: But sometimes I imagine there's feature requests that come in from this more like enterprise land Sure. That are just not what the community Not at odds with it, just not and we still only have so many hours to spend. So how how do you make that decision as to
Speaker 2: That's that's
Speaker 0: a great point.
Speaker 1: So so we do still look at
Speaker 0: it with the
Speaker 1: same sort of 80 20 lens that we do for basically everything. Where it's like if somebody shows up and they they want us to they wanna do a sponsored feature and they're like, here's what we needed to do. There's still that first layer that we need to look at it. It's like, does that make sense for the bigger picture? Yeah.
Right? Where it's like, we want this to go out to as many people as possible, but this feels like something that is so hyper specific to one use case, it might not be as appropriate as a core feature. Right? And then it becomes a question of like, okay, are we gonna do it as an extension? Are we just gonna not do it?
Right? But luckily, so far, what what most of the evidence is basically what you hinted on earlier, where it's like, the needs of the community are inherently the needs of everybody else. Mhmm. Because and it's it's all the same pool. Mhmm.
Right? So luckily, a lot of the sponsor features and stuff, they come in and they sponsor something that is already on the feature list. So it's basically what you just mentioned where we treat it as, oh, that just, you know, gives it a virtual 10 extra uploads.
Speaker 0: Yeah. Or however we see how that build that. Yeah.
Speaker 1: See how that bumps it to, to the Tejulis, basically. Yeah. But it it is a great way to to to sort of tie it back into your question around how do you make it revenue work. Right? I do think it's a great additional revenue stream where it's like we're we get to build the features that we do wanna build already.
Right? But we we can offer to sort of prioritize them for a fee, and that helps, you know, that helps the revenue side of things. It helps us to be able to fund the building of the feature.
Speaker 0: Which then everyone can use.
Speaker 1: And everybody can use
Speaker 0: it still. And I also like the because of how extensible Director says, if it isn't something that's gonna be useful to everyone but for whatever reason, money or whatever, then we deem that no really we do need to build this to, you know, have this company on board or whatever it may be, that there is a way to do it in a way that doesn't just bloat into Corus
Speaker 1: as well. Right. Yeah.
Speaker 0: That is. Just filled extensions. Exactly.
Speaker 1: Yeah. Really nice. Yep.
Speaker 0: Well, thanks for taking the time to speak to me.
Speaker 1: This has
Speaker 0: been really fun. I've enjoyed hanging out in Brooklyn and ending up at Joe's Pizza. Shout out. Yeah. Shout out.
It it was a good good slice of
Speaker 1: pizza. Yeah.
Speaker 0: But, yeah, thank you very much. I'm I'm gonna try and have a chat with Ben over the next few days Yeah. As we are gathered here in New York City.
Speaker 1: Absolutely. Sick. Thank you.
Speaker 0: Hey, Dan. Good to see you.
Speaker 2: Good to see
Speaker 0: you, Kevin. Thanks for making the time. Yeah. Even though I totally grabbed you off the side of what we were doing, which is, we've been in New York for the last couple of days. How have you found it?
Speaker 2: It's amazing. It's always good to get together with the team in person. We had only 1 or 2 before this, so getting to meet new people on the growing team. Excellent.
Speaker 0: So as you know, I've got some questions from the community that I've gathered from a few different places. I'm gonna start with one for me just to set the scene, which is that we have our 1st board meeting in a couple of weeks and I'm kind of curious how you're feeling about it.
Speaker 2: Yeah. I mean, there's the normal nerves that come with the first of anything, but really excited. We're hitting our goals and just, excited to see what the board thinks and have that, communication in both directions.
Speaker 0: Nice. Well, the first question from the community I'm gonna start I'm gonna start with one of the the tricky ones. Sorry. But I've set the scene for it, which is that we, you know, we have some VCs now and, they they wanna make their money back, and I'm kinda curious what vision you sold them on and then kind of how that vision interplays with our community and open source work.
Speaker 2: Yeah. I mean, so it's obviously super important for us to make revenue, to have the income that supports our staff, to support our our servers and everything that we need to deliver our product and services. And we also have to keep the investors happy. That's just a big part of what we're trying to do, building a sustainable company. My mentality for that has been, you know, we have this enormous breadth of open source users, you know, 21,000,000, Docker downloads right now.
You don't need to monetize them all. The goal is a rising tide lifts all ships. If we push, the product, if we push the open source offering and a percentage of those need to host with us, they need our professional services, whatever it might be that we commercialized, then they can come take that off their plate, and and we can drive revenue and continue to keep all those investors happy.
Speaker 0: Yeah. That makes sense. I, kind of on that same trend, I know something in the forefront of community members' minds, knowing full well that, like, we are, you know, we are we are marching towards sustainability through making money. At the moment we have Directus Cloud where, you know, we people can pay us to host Directus for them and handle infrastructure, you know, and hosting costs and rolling updates. But I wanna know, as do members of the community, what else is in your mind in the kind of short, mid term for how we might, you know, make make money?
Yeah. So I mean the the
Speaker 2: we have the 3 legged stool as I call it, the milkmaid stool that never wobbles. We've got the core platform which is that, that open source cake that we deliver. But it's not just the infrastructure, you know, the table that cake sits on that we're providing. We're also giving those enterprise exclusives. So the cloud comes with exclusive extensions and features and capabilities, that are just icing on that cake.
They're not a core part of the software, but those, of course, add a value, to those to the to the cloud service. There's also professional services, support offerings, consulting. There's this whole slew of, things that we go beyond the product, to deliver to those customers as well. And then of course, that third leg of the stool is the marketplace. The extensions is essentially a whole app store, that can have free extensions from the community, from our authoritative engineers, and some of those can be monetized as well.
Speaker 0: So one thing you mentioned was about having, you know, extensions that are exclusive to cloud and how they're the icing on the cake. And I'm kinda wondering how you at what point can we no longer really call ourselves, an open source product and instead something more like open core or something like that. How do you grapple with that, How do you grapple with that definition?
Speaker 2: Yeah. So basically, you have a number of metaphors. I'm a big fan of metaphors, but the cake one I think works really well. You have this open source core. You have this idea of the cake, and the cake is, you know, exactly that, but the scale matters.
You know, if you have this ratio of very little cake and a lot of paid icing on top of it, that's not so tasty. You basically have the whole thing as the cake and then you give it a facade, whatever is the important customized bit for you. You can design it, you lay it out, the color, everything, but that ratio is important. You keep a full cake, that's exactly what it needs to be, you don't need to maintain it, you just kinda buy buy it as is, and then you decorate it, and you make it yours.
Speaker 0: Yes. Because you definitely maintain cakes.
Speaker 2: Yeah. That's a full on bakery here.
Speaker 1: Mhmm. Mhmm.
Speaker 0: Alright. I'm on to the last couple now, and I think these are possibly the questions you expected, which is, at the time of recording, we are, you know, in the middle of January 2023. What are you excited about in the next year?
Speaker 2: I think one of the biggest things from a tech I'm a product person, so on the technical side, I think real time data of WebSockets is just enormous. The way that we've built the platform is these this toolkit and all those tools can be used together. So when you add something like real time data with web sockets, you compound things like real time collaborative editing, real time dashboard for insights and flows. I think from a, a product standpoint, that's certainly the biggest. And then that that third leg of the stool, the marketplace, the extensions, having that be have have the perfect DX, you know, developer experience, having a marketplace in the app where you can very seamlessly pull in that icing, those extensions, that's gonna be a huge part of this year.
Speaker 0: Nice. And I suppose the inverse of that is, you know, you're the CEO of a company that's employing like 30 people ish. What are you worried about?
Speaker 2: What's in
Speaker 0: your mind?
Speaker 2: I I think just that. I mean, 18 months ago, we were it was, Rich and I, you know, a 2 person open source organization, and now we've grown to 30:30 folks and we just hired somebody yesterday. You know, this is it's very challenging to hold on to your ethos, to your vision if you scale very quickly. So growing at the right pace, finding the right team members, which we've been very successful at doing, and just making sure that we don't lose track of our vision, the open source nature, the respectful communication, the collaborative nature of of growing a distributed team across the globe. Those are challenging things to do, but I think so far we're doing it really well.
Speaker 0: Cool. Thank you so much. And so that was our first community question time. I'm back in Berlin now editing that video. There's the plant I can't keep alive.
But hopefully, you found that interesting. It's really important to us to just be as transparent open as possible with you, the community that has got us to where we are today and will, you know, take us to where we'll be in the future. We'll run this every few months, so keep the questions coming wherever really we'll see them, and we will bring those into future community question times. I also thought this would be a really good chance to just kinda say that with Wrike at least We'll we'll do this monthly, you know, and we might dig into some more technical topics around technical decisions that are being made and technical progress and features that are being built. But yeah, hopefully you found this good and I will see you next time.