Hey, what's going on? Everyone? Welcome back to another episode of Adventures in dev Ops. Joining me once again in the studio today Warren Parade, CTO of authors. What's going on? Warren? Hey, thanks for having me back, Will And last time I promised a fact so you know, I know you were waiting a whole week to hear one. What it was going to be a Google at the edge of my seat. Well, this
is a good one. Actually. Google actually just released a report not that long, really short, about zero days and I think it's so relevant given what's happened with the XX compression library recently, and was interesting in there that I found most interesting actually was that in twenty twenty three there were ten exploited zero days in it hardware vendors. So you can think of these as like
Cisco boxes that are running in your corporate environments. You know, if you ever thought about, you know, should I have one of these or not? Uh? They do they add security? Now you may have an answer, right. That's cool, especially on the heels of the that exploit, because I could talk about that for quite a while. But you know, we've got Jose here waiting to jump in. But just for the patience and diligence of that attacker. I mean, that's just a slow clap from me.
Bravo for playing the long game, but meanwhile joining us. Also in the studio, Jose I Dias Gonzalez, creator of Doku, which this is gonna be cool. I can't wait to hear this story. I just assumed that the name came from a Star Wars reference, but Jose is going to set the record straight. Jose, welcome to the show. Thanks for having
me. Yeah, I'll just get into the story. Actually, so I think I'm not the originally Tainer's a guy named Jeff Lindsay there maintains quite a bit open source and started this I think in twenty thirteen, and so I think the original pronunciation he used was Daku. I never heard this pronunciation until
like years later. So I like, for background, Doku's somewhat of a Herokue clone a Roco being a platform as a service, and so in my head I was like, Roku okay, Doku because there's a dm front, which is great, So like I've been mispronouncing it for about ten years. The other part of this is that the Star Wars reference here is actually pretty
good. I tracked references to the project on like social media and various platforms, and about half the time there are references to Doku on like Twitter, for instance, they're all references to Star Wars because people miss mispronounced Count Dooku's name. There's one K and two o's. There's also a Korean pop star whose dog is named Doku. He's got three dogs, that's my understanding.
And then in Japanese, Doku is the word for doc. I believe, Wow, if you can cash in on the K pop reference, that could be huge because I mean that's like that's legit internet traffic right there. I don't know what that overlap is between like K pop fans and folks with needs like servers, but well there's a there is a thing of preferential attachment, so like you know, even seeing it or hearing it, even if there's no relation, if you know the small overlap, you'll get those customers and
brand value eventually, So you know, maybe you're doing something right. You got to play the long game. Just look at the attacker for the XY exploit. The long game pays off, you know'd Yeah, Actually, when I when I saw the platform, I was thinking docker. So Docku was where I was going initially because it seemed because like, I think the logo is like the whale or something, right, Yeah, yeah, so the whale logo is actually also another interesting story. I don't actually remember where the
whale reference came. I know that Who's like a long time ago. A lot of their media was like Japanese samurai my references, that type of thing. A lot of Japanese like top culture references. Sushi kind of made sense to me, and I was, all right, cool, let's put a little whale like sushi on his head. At a friend of mine, I bottom lunch and he designed me a whale logo. And then he said he would never design a whale logo for me ever again. So that's the way
up on a picture. I unfortunately am not an artist. If you wait long enough, you may be able to use the image as a source image with one of the l m's and get image creation going to pop out some you know, the exact same well low go, but in different poses and backgrounds. Long game, I like this, that's hilarious. So let's talk a little bit about Well now I'm even like, I'm like, how do I say I do say doc who or do I stick with my name Doku?
Pick the one that you prefer, and then this is the official branding. Like whatever you say right now, well that is what it's going to be from now on and going forward. Dude, you don't want to trust me with big decisions like that. Look, I'm gonna yeah, I've got quite a few decades of experience here that show that I am not the guy
you want to count on. No, we'll go with We'll go with Doaku because I think, after hearing Jose's explanation, we've got doctor as a replacement for Heroku, and if you smash those two together, you get Doaku. So that's what I'm gonna try to stay until until I get into the middle of a sentence and my brain goes, you know what, say it this way, dude, and then I do and butcher it. You broke it.
Really. You know. I noticed that I should never guess on pronunciations because if I do that, whatever one I guess wrong first is now stuck in my brain forever. So if I get in one of those situations where I'm like, it could be either way, just like stop, take a moment. Look it up and then commit because you know otherwise you're broken for life. Yeah. So, so Daku is an open source past alternative to Heroku. And if you're not familiar with Heroku, it's a hosting platform that
makes it just incredibly simple to launch and build your app. I've used Heroku multiple times in the past, and I that used to be like my go to thing for all the early stage startups that I worked with. I was like, just launch on Heroku. It will get you so far down the road without your infrastructure becoming like a thing in your company that it's a no brainer solution. And then I think in the last year or so, I thought Heroku was going out of business, but I just checked and it looks
like they're still up. But something happened where Heroku got like shamed and I can't remember what that was. Weren't a sleeper and yeah, a salesforce bought it, right, that was? I think that was the shame is that
it wasn't that the trigger. I don't know. I I thirteen that they while ago they My understanding there is that a lot of the product development shipped that Heroku, A lot of a lot of things went into maintenance mod and a lot of things went into like very forward looking as opposed to like immediate delivery, and so they stagnated it as a platform for quite a while.
And I think, like a lot of other platform as the surface platforms have come out since then and have picker and shaping themselves a way or another. There they're starting to re release new features and punch jobs, but it's kind of like a long game that they're playing. I think, gotcha, gotcha,
and then there's it. Also, it feels like I have no data to back this up, so this is a certifiable fact, but it feels like there's a big shift in people's preferences to not use AWS and GCP anymore, Like people are looking for alternatives to that, and so I think having doco here might be a segue into that. So Jose, can you tell
us a little bit? First of all, I want to know how you ended up being like the primary maintainer of this where you just like the last one to leave the room and just like, oh damn it, or is this something that you're actively pursuing. No, my university, I went to Pace University here in New York. I will ran like a like a software media consulting firm within the university, like play potend for something. And when
I left, another student took over that room. Part of that was also like me giving them the actual server that we ran all the like project. So I didn't want to pay for this thing anymore. I didn't want to paper like software. I wasn't really involved. It didn't really make sense for a lot of perspectives. But I knew for a fact that those folks were like very focused on like a particular language or particular framework, not superfamily like
the server stuff. And if anyone remembers like infrastructure work from like ten to fifteen years ago, I was actually like pretty significant amount of work, Like that's spending as much time setting up a server as you are working on actually like product. And so I looked around before projects that maybe could like fill
in the gap. We didn't have them, like as a sort of like student run consulting firm, We didn't have the money to spend on actual work or any of these other plant in the service, and like they had had actual needs for some of these features emunctionality, and so I looked around at projects that were available that like previously looked at as a contribute to Dooku was one of them that I had previously contributed to a very small patch. I
was like, oh, I wonder how that project is going. It was effectively un maintained for about a year, but it was like close enough that I was like, Okay, I can give this to students and they can kind of like loot. Okay, it's not very complex product like software. Their needs aren't very complex, So let me go see if I can like
kind of arrive it. Uh. And it took a little bit, but I was able to convince Jeff Lindsay, who was a ritual maintainer, to grant with commit rights and slowly and suddenly took over the project from there where this is going. The university never actually the students never actually ended up installing the software. They just shut down a bunch of those projects that were like cool, we don't need to run these anymore. But I kind understanded to
maintaining this project mostly so for the past decade. Dang, that is that's commitment. That's commitment. So what do you what are the like the the big goals that someone is trying to achieve that would lead them to picking Doku as their as their as their past service. Yeah. So it's we have like a pretty eclectic mix of folks. There's there's a huge number of folks that like just ran away from like posted platforms such as or managed much such
as Rokuroku. I think in twenty sixteen, maybe twenty seventeen, they change their pressing to remove their free tier or at least significantly back on the free tier. And I think that that that makes sense for a lot of these uh passes. It's it's it's a money sink and potentially not something that like
increases you know, their finances. So we have folks who are just like I can't for to spend you know, seven dollars, and that that incluse folks who are like developing countries where they literally cannot afford to spend or they actually like physically cannot pay for the service. We have. We have users who are like in countries that like just cannot use like financial systems that were
comfortable with. We have folks who have like dozens and sometimes even hundreds of like Tory applications that like also cannot spend seven or eight hundred dollars, like here's my first baby toy appen, but still want to running, and so
those folks use it. On the other side, I've known of companies that use the WHO as part of their offering, right, so they have a managed path and they use it as something on the base, whether they're like side products for that person or actually like physically like like large startups that like
have as part of their offering in some sense. WHO. I've also known of universities that install it for their students because they need something that like maybe professor's run air Force or something similar, and then their strokes are just like I want to run something locally for like my whole office. I think it's kind of like all local the place. It's not just like culture tinkering. It's actual companies. It's culture running businesses that sort of thing. I mean,
I think you're hit on a really important aspect there. If we're going to take the sort of thread that we've had in the last few few weeks. You know, if you look at these providers, you you learn that the users that come on that want the free version into these platforms, they don't graduate or scale up ever. Right, they're almost like a completely different set, so like, I totally get the idea originally, like, oh,
yeah, more users is better. But what we found out in at least the last five, maybe even decade at this point, that they don't convert to higher paying They don't these these engineers that are using in their free time don't convince their company to move over to say the Herokers of the world.
So maybe they have a core a need to go that way. But it's also weird because I feel like a lot of those platforms have anchored themselves to solving the very early engineering stages sort of thing, and not at scale, so it's sort of like a you you're going up to customers who will never pay you. Yeah, I think it's it's weird because like, yeah, you need that initial base of folks. And I think there's a certain like I'm not like, let's say I have a Roco account. I pay
for a service there that I manage of someone. I'm like, I probably wouldn't use for Roukhu for my personal stuff, but I managed and I'm comfortable running that. But certainly, like that's one of the things I like, I'll say, hey, like I've used this in the past, maybe we should use this as at work, and I do that with a ton of
software. So I think there's part of it, like the growth strepty is not just necessarily like here's that seven dollars for you app that like someone should pay seven dollars for, but like that developer is comfortable with the experience they have, they're going to bring it to their work and then like adopt that
software. You mentioned something interesting there about not wanting to run this at home so or heroc at home specifically, so you do like a home lab and you're utilizing this instead of say having to run an expensive thing like Kubernetes or converorbid doctor Swarm or like a nomad. So actually, one of the I think the final traits of Joku is that it's so extensible. It's built on
like a plugging system, and it's effectively like a pipeline. You run a command and that command, I mean, the first demand that you might do is a get push, and that actually triggers using a ton of Bash logic, the actual building process. Right, it just happens to be like you start a container jo who actually supports Kubernetes and Nomad as schedulers. So you can build your application, push it to a registry and then like scheduling Sugarnet
or a Cobaetus cluster or we have folks doing that in production. I run it on a couple of different one for like testing purposes, but I run my local software just because it makes sense. Like I'm running I'm running like almost a SAM for instance. I don't want to like figure out like, okay, this is the command I needed. This is you know, it's
like abb costor push to the server to go right. And I think that's one of the things that strikes me as interesting about this is the number of things that you do support via the plug ins, because that like that's the that's the initial hurdle. Right you're building your application, You're like, okay, well I need engine X, and oh I need postgrass as well, and okay, now I need elastic Search, you know, or reddish or
whatever. And so getting away too quickly install and launch these makes it just makes it an easier process so that you spend more time building your application and less time configuring services that you need. But like you're not really emotionally attached to them, right, Like I need a cash but I don't really care where it comes from as long as it's there when I need it. So what's the what's the startup experience look like for someone to get started with Doku?
I mean you mentioned that it's just a plug in based system and your your typical first response is just a get push? Is it from a like a config file there? What's the what's the level of overhead to get it up and run in? So you install the software, if there's a shell script that you've been download on, like cur bash it. If you want we provide Apple costs, that's kind of You can create an app. All of the commands, try really like I try really really hard to mirror the
command on the experience on for better or worse. A lot of engineers at least you know, ten years ago, were super comfortable with that. Sure, and it's it's while there's some things I don't like about the design, it's actually like pretty straightforward to understand all the coroman pretty tribal to like kind of remember and having a pattern. And so if you've ever used a Roku, like the demands that literally say, right you app, create your app.
You can add a domain, you know, you can come fixed, set and environment variable and you push your application. I think that the hardest two parts of getting an apptiployd are one, getting a server that you can install toe I've got to insult somewhere, uh, and then the second part
is ensuring your initial build runs correctly. I think like it's if you've ever like to set up something with c c D, that first set of like I'm adding CI, it's going to take ten or fifteen commits, and regardless of what we do, I think that's pretty and any service that first setup is actually like pretty hard. In some cases, the software has gotten a lot better over time. There's a lot of auto detection we can on. There's a lot of builder plogans that I have. So if you are if
you're comfortable for Roku, you can continue using that. And many applications just brought out a box if you want to use a doctor Bob support that, et cetera. But once you do that, you're kind of you're up and running right your application. You've got a domain, it's hopefully networked from the outside in via DNS, and youre you can actually kind of continue on your life great one, and so then like Roku, you can run multiple act,
multiple independent applications on a single Doku instance. Is that right, Yeah, that's correct. You can constrain the resource utilization if you want. So let's say you have an application that's supposed only run under forage and MAGA, so you can give it just that point and many bites everything else consume the entire server. Many of our users don't do that, especially the ones who are just like, I need a single server. It's got two bigs of
ramp. They don't really care to constrain that, and their case and their head they might not like really understand what it means to constrain or like why you want to. We have folks who are like, as they scale through they were like, okay, fine, let me start like being a little before sensitive to research realization and therefore costs, so that they know, okay, like I need to scale horizontally, I need ten of these, so
this one takes a bigger rand because is what I need. Likewise, if you're using one of our schedule O plugins, it's almost certainly one of the first things you're going to do is resource constraints. But otherwise, yeah, you can run as many applications as you want. On listener, right on. And as it's built I think I heard you say this. It's built so that you can have a single Dooku instance that spans horizontally across multiple physical
servers. Yeah, that's correct. So the kuberneteslug in, which was a recently release, allows us to basically, if you have a blank service running somewhere else, you can pluster ad give it as long as that joker stage on to the other server, give it the I P and then it will install on the software connected and you're deployment. We'll go to that servers a
corporate wow. Right on. Yeah, I really like seeing the extension of more technology in this area because personally, and I'm sure I'm gonna get a lot of mail now, I'm not a fan of Kubernetes specifically, and uh I mean okay, yeah, you know what, I also didn't like Doctor Swarm, so you know, I've had a problem in these spaces, and you know, I always sort of like I'm not a fan of what hashikorp is doing. That's a personal preference. So you know, I fink I'm
out right like that. That was like the full set, Like what else is there that you know supports virtualization at this level. Uh, and so like I'm always sort of curious because like you know, someone's like, oh, yeah, you know what I'm running on It's like we're going to use cumminnetes. I'm like, you don't need to. It's like, oh yeah, we're on prem. Like, well then I have no recommendation for you.
So you know, it's really it's really awesome to hear that there are projects like at this level of the stack that are you know, up and coming that are you know, both have the on prem answer. And I think I saw that you also have a cloud solution as well. Is that right? I don't have a cloud solution. I think I don't know. I feel as though like running a cloud solution is like an entire company is in there. I mean like the cell and yeah and after and all these
companies exist. Yeah, so I shied away from that. Soku has a pro offering, which essentially provides like a uy bi IT'SPS and like team management
and things that like you might need if you're slightly larger organization. So I feel like consulting firm that you have most folks, or maybe you're a natural startup and you're concerned about, like who has that, just what that might be for you, but by a large a lot of folks to get away with, like I'm just going to install this, and would a joking cloud
ever come again? I'm very hesitant to say yes. I know that there are companies out there who use THEIRKU as part of their underlying cloud offering. It seems like a lot of works. I wish them the best. Maybe that's not for me today. I've got my plate full with just running the projects. So along those lines, we talked about running this on your own physical servers and not really making this like an a w S or GCP or
as you're plug in offering. But there are other providers like Digital Ocean jumps out first in my head for companies that just say, hey, here's a server, do whatever you want, we don't care, just pay the bill. And it seems like there's quite a few of those popping up, you know, like I mentioned earlier in the episode, where it feels like there's a movement away from aws and cloud providers of that nature, who are so
many of the other compute instance providers that you're seeing your customers use. So I do want to say that many of these managed offer or many of these like host hosting providers also have with a kugerneggies offering, right, So in many cases, folk like they're there's maybe like a graduation of books through like I need a server and then I need multiple servers that run something in a cluster. So like LINOD and Hester Digital Motions as a big one, those
are the big three. I would say that like folks are like gravitating towards past like a WS TCP. I do see like a lot of a lot more folks are using like smaller, more regional hosting providers right in many cases because they are concerned about like privacy laws or latency issues and that sort of thing. I think latency is actually like a bigger one than a privacy law.
So like if if if ah wus up a data center in your region, you might I'd say, okay that they're the tried and true, let me use them over something that's been around for a little Yeah, for sure. And I think there's like that regional aspect is huge because there's these entire like niche markets that exist and just in certain areas of the world, and it will never scale beyond that, but it's a valuable offering for that area, and I think good. Yeah. I mean for Roku is a good
example of that. They are hosted in Northern Virginia. Right, you might be able to get something in Europe, but I don't believe so. But if you're using in the Asia, like your all of your users are going to North Virginia and back tracking. So, like a platform a service that's native to whatever pop provide of your app in Australia, for instance, probably not going to be like a global you know it, but at least locally
you will be pretty decent. Yeah, for sure. For sure? What are come of the some of the common use cases that you see people using this for? Is it for like like a static website, service, side apps, back end APIs? Is there any kind of pattern that you're picking up that like suits itself really well towards this platform. Unfortunately not everyone kind
of like is developing their own stuff right for better worse. We have like I have users that are like all I wanted to do is deploy a background worker for a corontast right yea, like folks who like write this sport thoughts is a good example they're just like, yeah, like I don't need a
web process, it's just ones in the background. We have companies, I know, companies that are using it as like an alternative, a cheaper alternative for preview environments for Rooko right where they might be paying a Rooku handling fist for you know, their entire engineering team, but they can set up one big server and installed can kind of get most of the same experience there. So there's no real I don't know that it's necessarily like a specific type of
user per se. We haven't gone after a niche of users like ourself aves where they're like, yeah, we own the front end space. We're kind of just like off in terms of like ants, office changes, like what people install and use them people, which is good in bad right. Sometimes I've a support requests It's like I don't know if I can load up this page right now. This is not maybe say for work, let me wait until later, but you know, generally speaking, it's whatever the users.
Again, that's actually a really cool idea that you mentioned of using it to stand up your poor request environments, so you would have this running off to the side, completely independent from your production infrastructure and then your gith hook just builds and deploys your application for the poor review environment, and then when the poor request is closed, it just tears us down. Yeah, that's correct. We have a ghetto action and like a get lab and integration with other
CI platforms that allow folks to do exactly what you're saying. You open up a poor request that automatically clones like a test application that you have. It's something that has on your variables, pushes your applications to that, and then once full request disclosed or marriage, it will shut that down. It's actually like a pretty common use case. I always get scared having a different infrastructure running for my non production environments. Like I always think that, like you
know, wherever the differences that are, that's where the bugs are. Yeah, that's certainly an issue that like I've seen some larger companies come upains, especially when they're running I think more cloud specific offerings. Right, So if you're talking about like down on TB for instance, I don't have a ANOD plugging, right, is an a US specific thing. So it's not like
I can replicate how that works, and so there are casionally workrooks. So like, yeah, I have this part of my staging environment is over here and this is over here. That said, I feel as though, like for especially for a lot of these companies, they'll have like a primary integration environment that is on their primary provider and then the shoes off the side where this review rap case. That's pretty common because this review apps are like spin
up in your tear down. You don't really care how long they live for. You know, they're probably going to add bugs, but you're going to integrate all that into your pre production environment anyways. So it's like fine, interesting, if you find yourself in the spot where you need to create a Dynamo dB plug in, you should probably reevaluate your life choices. What stefps
did? I take? It led me to this point, I mean luckily with that though it's not that smart, like I think, yeah, I mean honestly, at this point, given our extensive integration with it for managing permissions and roles and whatnot, I think we found a lot of information about
how it works just by understanding where the limitations are. Like it's not just a key value store, you know, and you can really think about how they built some things because they sort of leak through right, Because the less leaky of an abstraction you have, then the more of a layer there is of that abstraction, which adds, you know, potentially complexities, and especially services at aws, they don't change that much over time, Like they don't
deprecate things. I mean, they make them better as far as the internals go, but the API stays, you know, the same. So unless there's a huge rewrite over of diamond YB, you know, I actually don't think it's that that complicated enough so that a WOS even has like a dynamody B local version that you can run, and local stacks got one as well. I'm not saying to do it. I'm gonna be re evaluating decisions. All I did was agree to go in this podcast, and that's where my
life turned around, folks. Right, And so let's talk about that. How much time do you spend reviewing the plugins that you have and evaluating what plug ins would be good additions to the platform. What's that process look like?
So I traditionally always try to use other platforms out there, like like I'll go in and say, okay, released something new self neat feature like running some technically or whatever happens to be just just to play around to get a sense for like how it's useful, how it could be useful in there through like whether there is even a possibility to be doing the same thing right, not just for the project, but also for like actually like data day
work. Right, I've worked with change where like our manager or build the platform, and so how do those how do those speeches that like we don't have on our platform, how could we utilize them? How do we take advantage of that sort of stuff? So like I've done that an offer as decade and that's kind of like a regular thing that I do, uh, in terms of like how I decide walk gets into the product. A lot of it's just like how often there's a request come in and is that request
serviced by something that's already there at right? You know, the folks have asked for features that I just don't make sense for the project, right, someone like maybe once a year or two I'll get some on the last Hey, I've love to run this on previous D And I'm like, cool, I don't think you have a doctor on PREVIOUSD. So that like we'll stop there. Right. It's like it's just out of stope, and it's like
it's unfortunately I don't have the bandwid for that. Likewise spokes will last or like again, like a Dynamo d people a game, right, and I know that there's software to run something similar to anamoy be locally, but until that software existed, the answer was, you know, I can't run that. There are features that are like, yeah, this comes up once a month and it's great, so much workflow, and like they'll file a ticket and I'll be like, oh, that's not supported, or like, oh
that's a note bug. Eventually it'll work me enough that like I'll fix it, or like someone will come and say, like here's a partial fix, in which case going out help them bring that over the finish line. There's also features that like would be awesome to support, or like would have been awesome to support, or just such a massive amount of work, or like require a number of steps to get to that like by the time everything's ready, or even just then, I'm just like this isn't worth the time that
it would spend. Docos Form is a good example of that, where there were foundational changes that people performed in order to support anything like the next frontal scheduling for years, like I was just like, yeah, okay, this is the next step that we need to do. Uh. And only recently as I gotten to the plot where I'm like, okay, this is in a place where like we could comfortably add another scheduling. Isn't just doctor local
and that's what organized schedule? Uh? And I looked again, it's warm because it's in some sense built into the doctor, but it hasn't been developed in years now, So it just didn't make sense from like a maintenance perspective, why I support something that isn't being actively maintained A strength for sure, and so like it kind of like really advances in case my case basis, if something small and like it's easy to meet implement, I might do it
on alarm. If it's something that like I see is actively turning users or like causing them to onboarding correctly or causing downtime for them or whatever happened to be, I'll look into those. And if there are things that I just like that they're kind of out of stop the project or it just don't really make them street today, i'n't put it off or just saying this isn't this
isn't gonna happen. I'm sorry, makes sense, so worrying. You probably have a similar process too, just from your own work over at offer us, Like how do you determine what features are going on the board, what features are just going to be flat out rejected? And how do you curate those? Yeah, I mean you're you're really trying to get into the product management space. I see you really want to go and get the PM role right there? Well you know it, you know, I mean two rewards
for life. Yeah, I mean, honestly, for this my CEO would probably be the more of the expert here. But realistically, we categorize things that I mean, as I say said, you know, there's a lot there that's just straight on, like one hundred percent the same sort of thing that we do realistically. You know, who are our customers and what do they need to keep going? We definitely categorize them as like, oh yeah,
like for sure this is in our sort of roadmap already. It may be further out and we just pull it back and increase the priority or this is really cool, right, Like we didn't really consider that, but this would be a great use case, A great both user story as well as something we can publish on our blog to get future customers as well a real case study. So I mean all those sorts of things sort of pull in,
and then there's maintenance as well. I mean, I think, given my experience, the biggest trouble in companies often in this area is not paying enough time to spin down the tech debt or reduce the amount of fires that you're fighting. So you know, in the example of we're getting a support ticket every month on this that's probably too much for my liking on that specific topic, like that would cause us to revisit documentation or change the feature.
Like the thing I hate seeing on our product the most is an explanation, Like if we have to write an explanation to our customers, to our users, to you know, this is how you use the feature, then there's an education component that makes it more complex. And so like eliminating those really improves the UX and reduces the burden on our side to handle every single one
of those coming. And so those are really the interesting things, Like we like seeing where our customers are getting stuck and then try to figure out how could we design our system differently to avoid those and that's where a lot of
our time goes. So I think that's a really cool end to end perspective there, because Warren, you're running a funded company and then Jose you're running an open source product and you've been maintaining that for over a decade now, So how does that fit into like how much non coding work do you put into the product, because that's that's a big piece of it, right of like spreading the knowledge that this product exists and showing people what it does and
trying to capture a larger audience. And I'm assuming that part of that is a hope of getting people to use it in sort of a way that they would also contry be to the project, so that you're not the sole person building on this day in and day out. How do you approach that? Yeah, you know, I've spent a lot of time trying to make the documentation super clearit like, like Laarren mentioned, if there's something like in the documentation it's like this, I mean, I don't know why I'm writing this.
This is weird, you know, Like maybe I'll spend more time on the coding side of figuring that out. I mentioned before that there's a lot of like products sort of investigation, like seeing what the competitors in the space are doing, right, whether there are other open source projects and there's a ton of them out there, or if they are you know, funded companies, like what are they doing and how being something? Right? Oftentimes like
you know, it's just it's a party of one here, right. I don't have the time to market or to build out the features, and you know whatever, I have to kind of be judicious about how spend my time. And so the less time I can, the more time I'm spending on the product I think, is it is better? And then on the SOURI project. But you know, there's there's certainly like a ton of you know, extraneous stuff that I need to do that like is not necessarily like fun
or interesting for cons right. A lot of it's just like, hey, this this person has an issue. How do I replicate that I cannot replicate it on my end? Okay, well there's something weird about my environment.
Let me go see if I can exactly replicate their environment, right, whether that's my investigating with that person getting more information or like figuring out Okay, like I pre's a step here that I'm not asking the right question or something like that, or not gathering the right de too for that, No, delegation is a huge aspect for sure, getting them to do it and just taking the time and effort to dig into those things. Like that's a labor
of love. Like right, I mean you've just got these you just have to absolutely love this product to spend this much time and effort into it to trying to make sure people are successful with it off for free because you don't get paid for this. Yeah, you know, sometimes I stay here and I'm like, what steps and what decisions that I say, No, no, I really, I really do enjoy working in this space. I've done
that for most of my professional career. It's interesting to see how people are making other developers more productive and like helping them ship code and ship products in front of customers, right, and like I love doing that. And so there's certainly like an aspect the where I'm like, yeah, this is great.
But sometimes like I'll wake up and I'll see a ticket that it was wild, but I'm like, this is going to take thirty hours for me to investigate because like it's pulling team because the person isn't providing the right information, refusing to or like, actually, this problem is pretty difficult and I don't have a way to replicate it just now, So I have to build out an application that does that thing. How I can figure out what exactly
is going on? Right, So you know, there there's some there's some times where I'm just like, yeah, this issue isn't working. We're just not this is it's working as intended. Sorry, But certainly there's like a love aspect for it where I'm just like, yeah, this is this is super interesting work for me. How do I how do I make this better for other folks? Those are the things you don't want to actually even let
someone else do. You want to do those yourself. So you know, even if you had someone else come in and help you, they're just taking away the work that you actually enjoy. But to a certain extent, I feel also there's there's certainly places in the Toku like ecosystem where I've said, hey, I don't have time for to maintain this. It's super awesome that you are doing this. Would you like to take us on? Right? We had a better maintainer. Michael Hobbs, who worked on the project for
about four or five years maybe six. Uh. He used has part of their working with a boutique investment shop where they basically like provided services to the companies that were running under that shop. And so like you could just your product is supposed to doing like marketing and sales or whatever they provide you like a micro cto or micro platform team. So they use their part of that and so he contributed. He started contributing to it. Was like this is
great. I use it all the time, but like you're the rate of changes that the rate of change that you're having on this project and the rate of breakings that you have in this project is not great necessarily on in the project. So it was like the first thing I'm gonna do is write test for you, so we have a test and so like now I contribute to test. And that was like a labor of love for him, and he was just like this is what I do for the five six years even past
that company. Similarly, like there's another part of the project or antible modules where like there's someone who maintains on a spare time. He doesn't use it at all anymore as my understanding, like he just contributes to it when he can, right, And so whenever I can step away from a particular part of the project, I'm like, yes, please do that. You have a big seem to have a good head on your head on your shoulders. You can kind of take that as you will. There's a little bit of
trust to ask to be involved there. Right, I have someone wants we just talked about them. You know, I'm still reviewing prs and releases, and that's sort of to make sure that nothing's going out well my automate as much of that as possible that in the worst case that person leaves or I haven't forbided on if something happens to me, folks can continue on the project. And so, you know, whatever you can do to ensure the providence
of the code that gets shipped is super important to the project. Other than that, you know, if someone wants to attribute to a particular area and really own that, I'm more than happy to like help guide them into that path and like make sure that they're comfortable and then allow them to almost free reign essentially to get the project. And that's certainly like how I started under a guy attributed a bunch of prs and then suddenly I was maintaining a product
right then. So what's the future of docu look like? What are the big things that you are hoping to accomplish, whether those that's utilization, recognition, or new features. I have been working on this project for about a decade now. I'm not tired, but I certainly do want to get a solar point. That's my goal for the year. There are compe of tickets that are like if we don't if we implement these, they're breaking changes, uh, and they're about the last ones I can think of before I'm like,
hey, this is how a bit to go. We can continue adding creatures but not necessarily break things, right. They're stuff around security adding I see Whenex support for instance, or at farm or and that sort of thing. Not necessarily anything that like is detrimental today, Like our users don't are impacted to launch, but like there are folks who are like very inclined, couldn't like to care about these features. So the one point, it would
be super great to have. The other part that I'd like to you know, once we hit that also that I'd like to focus on as our data stores service this area. As you mentioned, we have a first press clubbing. We have I think sixteen different data stores that we support, many of the common ones. So if you need retis ADP, right, it's pretty easy to like to stand that up and you're kind of bid to go.
And I think, like the a lot of folks, it's a lot easier to do that than to say, go figure out the even just like figure out to read me on the doctor file the official doctor pile and figure out, okay, like this is how I start, how I stop it, how I like where I'm putting data, how I back up, how I connect to it? You know what I mean. Sure, but there's a ton of features in the data school signe that like I'd love to implement that
have been requested for years. I just haven't had time to implement. Likewise, I'd like to make it easier for folks to contribute either new features on that on that side, or even just add new data stores. I mean, like we over the past five ers years, we've seen a pluffor of new data stories just come out that are used for particular use cases, like grapt databases, like the databases some of these like new fancy AI databases. I'm not really too sure of but like maybe one or two of them will
stick, but don't. I don't have time to spend on investigating and figuring out how does how do create it, how do you like maintain et cetera. But if I can come up with a standard that allows folks to contribute those I think that'll allow folks to say, hey, like I can use this on my my personal project. It's great. And then if they want to, if they need to, to graduate to whatever the managed environment is. And then the last part of that is better multi service support. But
that's been like just the constant pain for our users. They'll get to a former they like they're running it on one hundred and twenty take abyte memory server right, and they're like, this is good. We have two of them. It's awesome, but like we we can't scale horizonaly and they have to move onto the provider to build up the team to manage their infrastructure, et
cetera. And I think it's unfortunate because, like you know, if your company, you only find that number of resources, and now you're spending some of those resources on building a platform where that's not really germane to running your business. We should just be running your product, and so anything that we can do to kind of like support those folks as they move on, whether they decide that Doku is you know, a good fit for them in the
future or not, I think is super important. So continue to support for cluster environments and making those simpler and more practice for course ers. That was a huge understatement there, like spending time and effort building out infrastructure that's not core to the business that you're in. I mean, by definition that is develops. I'm putting myself out of business, putting all of us out of
business, which I am going to be transparent. I'm one hundred percent for like whenever I go engage with someone new, like that's my primary job is to make it so that you don't need me anymore. And you're wondering, like, who's the smartest to keep showing up to our meetings and why is he here? You know, I've had I had quite the experiences with containers in my life, and I still to this point, I feel like I
still have no idea what I'm doing. Every time I get to a new doctor file, I'm just like I'm getting it wrong in some way, and I feel like, you know, uh, fortunate or unfortunate. I feel like, you know, you've got uh maybe a secret view into here on something that everyone still gets wrong, some words of wisdom or advice that those of us who still can't figure out, you know, how to get the
container file to do what we want. No, I don't, honestly, like I wish, I wish there was like some magic sprinkle me too, me too. There's a ton of like this space is very very vibrant.
There's a ton of folks tackling at all levels right the roku and and boundary now uh Capital they they maintained the new version of build tax out data build tacks, which you have a lot of promise for a lot of security, like focused on books out there, mixed packs for railways is super cool, uh and provides like an alternative for like building that problem and you have no idea what to talk about is but like all of these technologies that are that
are out there, they seen absent. But all of these things like they're obtuse in some way, shape or form right there, Like even for me and I've been in the space for more than like it's pretty difficult time tickets started. So there's there's no there's no like magic sprinkle like Verry does. I can like sprinkle on your project, except to say, like, you're gonna struggle of this for the first ten or so commits, and then you'll
have something working. You probably need to revisit it in about a year when you need to something. You know. I I am totally with you. I mean, the one that always thumps me is the entry point versus c MD at the bottom of the And I'm like, which one is? What? You know, if it was me and I had to design this technology, I at least would have called it like run with overrides, run without over you know, allow overrides, right, you know, that's that's that's
what I think what I would have gone with you. This is probably why you don't like kuberdriddies, because communities also had a confusion around that they call and I use them. It is also like just different enough, doctor, Just like, what are we doing here? Right, Let's take a confusing thing and make it even more confusing by not being consistent with it. Yeah, let's make them new words. I love that, right? Yeah? Cool? So what else should we know about Doku? It's it's mit license
everything in the community is an I license. I have no desire to the company around this. I sell to still growthing on top. Most of our users don't really need that, UH. And you can be productive with it in a smaller environment as possible, obtou like a large company. Again, as I mentioned, folks are running it in their own labe, they're running it as part of consern firms, they're running it as part of what an offering that they sell lot for other customers. So you can be successful with
open source. I think as far as you need to, as long as you need to, right, And that's kind of like the core ethos. We we want to be as extensible as possible to make you successful. And if we're not as successful, like maybe we're not the right fit for you, but maybe we are on a small chance team, right, So goe
free to support us. UH feel for their contribute back up fixes, I'll issues support problems, and we'll take a look at them with the do you think that though, maybe maybe this isn't the right question this UH for this talk, but you know, I feel like with the calamity of szation and x Z like, I feel like the future of how open source will be contributed to going forward, the you know where the liability uh you know falls
could be changing in the future. And it's like as an open source maintainer or at least you know, with a company that has open sources, d ks and things like that, you know, it's something that I'm at least trying to keep on my radar. I wonder about that. I don't know, like I don't have a lawyer for the project, right, so it's not like what happens is some act when they run Doku and actually we removed
features from dope to make it more secure. We had a feature that allowed folks to have this like a little webuy to actually set up their server. All folks would install and not go through that webuy, and so we had just reports and folks saying, hey, I have a minder on my server, what's going on? Because someone else would go through their ips set up there as STAGEP and then start pushing code and so like the like, I
can't say that I'm on the for some of that decisions. I can take that or use it friendly, but I do I do wonder about that, you know, especially if you know their companies that are like, I can't. We don't use it because of what you mentioned. We need someone to be live. No one ever gets fired for like buying IBM and myself at some point, at some point, at some point, we're going to be old enough and people are gonna be like what, I don't know what that
is? Uh, you know my theory. My theory is that in order to commit or push a package to an open source repository, you'll need to have verified uh real identity attached to it. Uh. That's where I think it's going. So everyone that does it with the right goal or mentality in mind will be totally fine. Right, Like I'll just throw my my copy of my passport up next to whatever packages have my verified commitment. I don't
know if I'm going to do that. I have. I would rather just publish to think to my website, like, just go to a bit is tom slash down the debt package. Good luck figure it out. That's a good package, you know. I like, I do wonder about that because we have users that are like, you know, like they'll come in they'll have like an actual serious question about their server. Right it's behaving correctly and honestly. I can't think about the running to a group demand. It's very
apparent once I run them. But it's also difficult to explain to folks they run these street commands, because they'll run a command and then just like copyfaste out what they think is Germany, but like, actually not what I wanted, right, and so like they were like, oh, in many cases, I look, yeah, I can, I can grant you a stage access, can we do a pairing? And weah, great, let's do
that. Also some cases the user is technical, but they can say, hey, I can trust them to run that command, don't given the exact output and all. But also which is great, but there are many users who are like I can't do that, Like I can't grant you access to my serv I can't grant you group I don't trust you. Right, this is for working right, Which it's a totally fair statement to me, for
sure. It's also really interesting to me because like I published the project, so in theory I can just root their box, like I'm like, oh, here's a new Debian package specifically for you. Here, like it's it's built by CI. You know what's good. I don't run it, and it's it's effectively the same thing. So it's you know, in this space in particular, it's kind of like a weird place to be in where it's like, like, how do you trust the software maintainer to do the right
thing when he already has roots to your box potentially? Right? For real? I mean that's what happened to you as a stage, Right, they already have root to your box. What do you do? Yeah, it's going to split two directions. One like Warren was staying where it's KYC. But instead of know your customer, it's customer, it's know your committer, and any other part will be like the pirate bay for open source software, like, oh, here's the link. Is this actually going to be the
Debian package or is this actually a virus? No way to tell, let's do it. Are you guys not calling your software from tired thing? I do that all the time. I think that was the last time I used Windows, and that was like probably almost twenty years ago or something like that. Uh, I mean you had to get that. You had to get the coffee from somewhere, right, Yeah, for sure. I was a
four college student at the time. I pay for all my software. Now I understand I also am like, I gotta pay for this, because like, if I don't pay for this and I get it from somewhere, lord knows what's gonna apple. Well, you know what they you know, never never a tribute to malice. What can easily be abscribed to a neglig chance. For sure, it's probably not that weird copy of Adobe Acrobat, because
it's probably that screenshot I took up my desktop and put on Twitter. It's like, oh, look at what I'm working on that, Like right, here's a note in the corner of the Azrod Bank information You're master. So for real, I stressed over that, you know, posting screenshots like what's on here that I'm not seeing that I'm gonna regret as soon as I hit sand. But that's why I got this whole white wall thing back here. Like I know for sure, like all my notes are here, like off
screen, There's no way the camera is going to catch those. I've definitely posted a screenshot and slashed in the past. It's like, okay, now I have awesome Well cool, so should we move on to picks. Let's do it. Let's do it all right, morn putting you on the spot first, This week. Yeah, well, maybe I'll be a little lamb so uh in a couple of weeks, I won't be here hosting on the
podcast. Just for one day, authors is going to be DevOps Days Zurich and my CEO is giving a great talk on the ROI of security and the challenges of calculating and right on there. Yeah, that's cool. I haven't been to DevOps Day Zurich. I mean there's like twenty or so conferences around the world that all the develops Days Moniker, And honestly, out of all the conferences I've been to or spoken at, I liked it the best for sure. Yeah. Right, I've spoken at dev up stays in Amsterdam,
Austin, Salt Lake City, Phoenix, maybe a few others. Amsterdam does puts on a great devop Stays event. Yeah for sure. Yeah, Jose, what'd you bring for a pick? I'm gonna go with food. I am a huge fan of Wings. I can't do hot sauce, I can't do spicy food, but I can do Wings. There's a hotel I'm blanking on the name right now. It's a hotel President and Uh in Nashville that makes a probably my favorite Wings they are kan Wine Wings, which are super
This hotel is like five minutes away from the airport. It's not the place I would have expected if you're very nationale China. And if I'm not mistaken, Nashville is like the self proclaimed home of wings. Is that Is that right? Or am I just completely making that up? It depends on how you count it. There's there's suppose who, like, all, where's the hot sauce like come from? There's a bar? I know, I go
through that like makes one flavor of the hot sauce. I think there's something the war about two different competing places making like wings for the first time and like having a different way for carrying them. So you can never go wrong with food as your pick, Yeah, for sure, for sure, And
then the opposite category of food I'm going with. I'm gonna stick with my pick for the last couple of weeks and I will be back next week with a new pick, a different But for this week, I'm sticking with right. Yeah, I'm sticking with platform Con coming up in June, five day virtual event on platform engineering Virtual It's one hundred percent free, tons of great speakers and if you haven't listened, to the last couple of weeks. At the end of the event, I'm going to be doing a live Q and
A with some of the speakers from the event. So if you have specific questions you want me to ask, specific people you want me to talk to after the event, hit me up on Twitter, let me know who you want me to talk to, what you want me to ask them, and I will work those questions into the live session, assuming that it's questions that I can legally ask on air. There is that disclaimer because it's the Internet. You wouldn't have had to, you know, give that disclaimer unless someone
already sent you some questions which you know you can't share there. There are a few that I will not be sharing right just just I'll just say that the Internet has not disappointed my request. It is alive and well. And on that note, jose thank you for joining us on the show. This
has been super cool. It's been really interesting and I'm excited to go and try this out because I loved Heroku, haven't used it, and I think this kind of fits in with the the trajectory that I see the industry moving as far as like being away from the big cloud providers and towards regaining control of your own infrastructure. I think this is a cool way to accomplish those objectives. So thank you for coming on the show and telling us all about
it. Thank you for having me Yeah for sure. If people want to reach out to you and learn more about the project or how they can help or something like that, what's the best way to hit you on the internet. We have a slack and we have a discord. You camp me up at the twitter at twitter handle. If you have massed on around hackey gun as the and again, we can go to dokey dot com and we'll get awesome. Right on, Arren, thanks for joining me on this episode.
Appreciate having me here. Of course I enjoyed it right on, And to all the listeners out there, whether you're listening to us on the recorded podcast, do your favorite podcast player, or you're catching the live streams on LinkedIn, YouTube, Twitch, or x that are broadcasting every Tuesday at seven thirty or ten thirty am Eastern and Pacific, thank you for listening and we'll see y'all next week.
