Jacob Luetzow: What's up? I'm Jacob Luetzow your Elixir Mentor, and welcome to another exciting episode of the Elixir Mentor Podcast. This is where we discuss everything related to Elixir from interviews with enthusiasts and pioneers in the community to innovative projects and libraries shaping Elixir's future. time Peter was here, we talked about hunting CVEs with AI. And I don't know, Peter just likes to be in the spotlight and be the most popular Elixir guy in the room. And he decided to build a GitHub competitor and that is in Elixir, right? Peter Ullrich: That's true. Well, thanks for having Jacob Luetzow: Yeah. Peter Ullrich: me again, Jacob. It's been a while. Jacob Luetzow: Yeah, it has. It's good to have you back. And not only have you built pushin', you've you've started a podcast too. And I Peter Ullrich: True. Yeah. Jacob Luetzow: don't know, what else are you doing? Still CVEs, because I see, you know, my CI break every week. Peter Ullrich: Yeah. I'm in the same boat though, so I'm just hurt hurting myself. Jacob Luetzow: You do it to yourself. Peter Ullrich: Yeah, yeah. I'm you know, I'm I'm feeling the pain as well. Yeah, I mean what can I say? I'm just I'm you know, I get bored and when I get bored I start new projects and like I a while ago I made the decision that whenever I start a project I also wanna have something that I can ship or show or share, you know, so like I'm not I and now with with AI it's just you can actually get to a state where you can show it to folks and and then, you get feedback and if the people like it you just continue working on it. So Jacob Luetzow: Yeah, I recently just had someone in my Discord ask if it's like still relevant. Cause I've always said like, share your ideas. It doesn't even matter if you started yet. Like, no one's gonna steal them because it's a lot more work to get something off the ground. And he was like, Well, does that still exist with AI? I was like, Well, yeah, because especially for software developers, even before AI, building the product was the easiest part. Like Peter Ullrich: Yeah. That's true. Jacob Luetzow: Now build a business after the product. That's the hard part. And I think it it is nice because you can get an MVP or a proof of concept so much quicker now. So I feel like you can rinse and repeat, be like, okay, that idea was dumb and you can move on. Peter Ullrich: Yeah, the what what people say is when you build a business, first the hardest part is having no customers and then the hardest part is having customers. So Jacob Luetzow: Yes. Yeah. Peter Ullrich: but but the other thing I I read that recently and I liked it quite a bit, where I I think somebody shared th they were in a they were a successful entrepreneur, right? And they kinda shared their their recipe. And they said, Well, it's i if you want to be successful, it's hard work, it's talent, and it's luck. Right. And if you don't have talent or not as much, you have to compensate with hard work. But none of this hard work and talent can actually give you success if you don't have a little bit of luck. And with the luck part is, and that I'm a big believer in that, where you can increase your luck. You know, you might think, luck is something I can't influence, but actually you can. And that is by sharing your ideas, sharing your projects, building a network. through sharing, through in contact and conversing with other people who also do these kind of things. And then Jacob Luetzow: Mm-hmm. Peter Ullrich: like that's what that's what I'm feeling now with push in, which is I can just rely on the network that I've built over the last eight years in the Elixir community. You know, I have immediately thousands, literally thousands of people I can share my idea with and and see whether Jacob Luetzow: Mm-hmm. Peter Ullrich: they like it or get feedback on some things and these kind of things. So I'm not starting from nothing. But it's also not, I I I never build in a way that where I was thinking of the value of it. I was never kinda checking, I need to build a network, you know, check like not Jacob Luetzow: Yeah. Peter Ullrich: not like an MBA. More because I like sharing stuff and I like con talking to people. So it it has to come naturally Jacob Luetzow: Yeah. Peter Ullrich: as well. But that's why. Like share your share your ideas, share your things. Jacob Luetzow: Yep. Well yeah, that's I'm all about that. And honestly, yeah, all of my elixir luck has come from, YouTube and this podcast. And it started Peter Ullrich: Exactly. Jacob Luetzow: it is still, I do it for fun, right? But it allows me to know you and like everyone that, you know, it helped it's it's helped me build an awesome network. Peter Ullrich: Yeah, and I guess because we are smaller community, it's also easier to be known, right? I mean, when say Jacob to people, they might not necessarily know your name, but then I say Elixir Mentor. And they Jacob Luetzow: Mm. Peter Ullrich: have heard that before, right? I mean, you have posted on Elixir Forum and various blog posts, YouTube videos, that kind of stuff. Like the name has come across their screen at one point. So yeah, it it helps others, it helps yourself. You know, it's a win Jacob Luetzow: Yeah. Peter Ullrich: win situation. Jacob Luetzow: It is. so I know like I I'm guilty of this. We all complain about GitHub often, right? Because it's our it's the default repositories platform, right? What was like the the straw that kind of broke the camel's back here? What made you wanna start building pushing? Peter Ullrich: I I think yeah, it w at the beginning of this year I it just got worse and worse. I think everyone complain like failed it in you know mm April, March, April, that GitHub GitHub became unusable at one point, especially when you had professional work to do and and you know, push to GitHub and review code and run the CI and deploy a new version, that kind of stuff. and I was you know, I played around with AI. Since a year ago, maybe, maybe last year in November, that's when I really started playing around with it and using it for things. I still remember, I think last November, I tried to build like a a website where all Elixir and Beam people could point, like set a pin where they are, kind of the like a beam map, I wanted to call it. And so that we can see where people are are based, right? And maybe you see, hey, in my city there's this other guy or other person that does Elixir. Maybe we meet up for a coffee. And I thought, well, that's a perfect little project. It's absolutely just a side project. I don't want to spend a lot of time on it. So I could just use what was the Claude Sonnet four, four point five something, like old, old. And I used that and it was absolutely horrible code. That was last November, and it was absolute garbage code, and it also didn't really work. And you know, no Jacob Luetzow: Did you one shot it or how did you approach it? Peter Ullrich: like may like I first I set up an Elixir Phoenix Live View project with, you know, mixed Pho Jacob Luetzow: Mm-hmm. Peter Ullrich: Phoenix New. And then I I added the usage rules and then I said, hey, let's work on this. Like I wanna have this map, I wanna have this form, I wanna have this database schema. So it was multiple iterations, but it was absolute garbage code. Absolute garbage. Yeah, and and and that was, you know, last October, November maybe. And then over Christmas, I I picked it up again, and I think by then they had released Opus four point Five, something like that, opus at least. And Jacob Luetzow: Mm-hmm. Peter Ullrich: that for me was the first game changer where I realized this is actually something that can output usable stuff. You know, I still need to check it, but it it at least gets me much further than than Sonna. And I I built this, I had this idea about this traceroute thing that maybe you've seen. I spoke about Elixiconf EU where I I rebuilt Traceroute the C LI tool in Elixir because I wanted to learn about IC TCP packets, you ICMP packet types, you know, that kind just basically how Trace root works. So I rebuild it in Elixir, but I I I did it with with Opus, but I checked the code quite a lot, and that's this way I learned, you know, what actually was happening. But it got me Jacob Luetzow: Mm-hmm. Peter Ullrich: to a usable library so much faster. But yeah, so I I built this library and then I thought, hmm, I wanna use that library. So how about I redeploy it in 120 data centers in AWS, GCP, and and Azure all around the globe and and just have it ping each other all the time and see what the routes look like, right? so then I I again continue with Opus and and I built this thing where eventually I could just deploy to 120 data centers and I had like a central server where everything was sending its data to and that was a pretty cool project. Right. And so this is how I started. Jacob Luetzow: That's really cool, yeah. Peter Ullrich: Yeah, but it was also absolutely just side project, weekend stuff, Jacob Luetzow: Yeah. Peter Ullrich: evening stuff, right? It it worked. I learned a lot of things and that's a cool thing. I thought, hey, I don't want to manually deploy this application to 120 data centers. I need something where like a one command kind of thing where I can deploy a new version. And then I learned about Terraform. I learned about Terra Grunt, which is kind of a dynamic a dynamic way of Terraform. So Terraform usually is all static files. And if you want to have any dynamic parts of it, like IPs or something, it's kind of tricky to yeah, to to inject it. There's no injections for it. So then you have Terra Grunt, which again, like Opa suggested, and it worked perfectly fine. Yeah. I kind of forgot how I got to this point here now, but I like my my point was more like now you can just Do these things, right? You have an idea, Jacob Luetzow: Yeah. Peter Ullrich: you build it on the weekend, you can learn how it works. You might learn Jacob Luetzow: Yeah. Peter Ullrich: it less intensely as before, but still it gets you there. You get an understanding. And then you share it, you know. Jacob Luetzow: I find if you allow yourself to be lazy, you don't learn as much. But if you force yourself to learn as you're like using L L Ms and agents and things, you can still learn quite a bit at a lot faster pace too. Peter Ullrich: Absolutely. Yeah. I actually Jacob Luetzow: Cause I've I rubber ducked a lot, like with with Kin Switch that I'm building with just encryption. I you know how encryption works. You understand the basics, but to really deep dive into it and understand it, Claude was my little rubber duck. Peter Ullrich: Yeah. Yeah. Yeah, and for you it was important because it's your whole Jacob Luetzow: Yeah. Peter Ullrich: business case, right? Your whole value of the product. Like if the encryption is broken, Jacob Luetzow: Yeah. Peter Ullrich: do you don't have a product, basically. Yeah. Yeah. Jacob Luetzow: Yeah, exactly. Yeah, I don't know. I think it's exciting because I think it allows like you and I, we can build really awesome platforms and products by ourselves. Peter Ullrich: And that's the point. And I I just blue skyed posted skeet about it, whatever you want to call it. Because I think now is the time to think big. Literally. Like Jacob Luetzow: Mm-hmm. Peter Ullrich: if if you think, I want like me, right? I I'm looking at GitHub, I'm getting more and more upset with it. And I'm thinking also from a European standpoint, you know, we gotta move away from from American to at least to rely fully on real on American services, right? Jacob Luetzow: Yeah. Peter Ullrich: So I've thought. There are two things. I got annoyed by it and the other the other part is I also want to have something European. And there wasn't really a good alternative to that. So I Jacob Luetzow: Well, and Europe has so many more or user friendly like safety concerns and privacy it acts, right? At least like the US companies Peter Ullrich: Is it user friendly? Jacob Luetzow: can collect a lot more data. You can opt out in the in in Europe. Peter Ullrich: True, it's more opt in than opt out. Yeah. Jacob Luetzow: Yeah, yeah. Peter Ullrich: But yeah, it's it's it's one of these things. I'm building, pushing so far I don't have investment. It's bootstrapped. I mean, I don't have any income right now anyway, but you know, my plan is also to kind of bootstrap it. and maybe that's also a more a European approach, maybe where you like think about the product a bit more than about taking on millions and millions and millions of investment and then see what you're gonna build. Kind of like I always have that feeling. Jacob Luetzow: I don't know, I'm a I'm a bootstrapper myself. Peter Ullrich: Yeah. Me too. Like I it's an ethos. It's kinda like an idea, a product idea, right? And and and I like that. because sometimes I I feel with with VC funded companies they don't really know what they want to build, but they got a lot of money, so they gotta build something. And Jacob Luetzow: Yeah. Peter Ullrich: then it's not necessarily something that people really like or really need or something like that. Yeah. Jacob Luetzow: It definitely it changes the dynamic. Instead of building a good product, you're only focused on revenue, right? Peter Ullrich: Which is, we as bootstrappers, we also focus on revenue, obviously. But the I think the percentages is a little different from the the priority. Like you know, you you you might be sixty, seventy percent focused on money and then thirty, forty percent focused on the product, right? Jacob Luetzow: Mm-hmm. Peter Ullrich: And and if you're VC funded in the beginning, where in everything's dandy, you might even be more focused on the product and less about the money, right? That's how they kind of get you. Jacob Luetzow: Yeah. Peter Ullrich: And then later on, once you have a customer base and once you actually make some revenue, then it switches. it goes more like ninety percent revenue, ten percent product. And I Jacob Luetzow: And you lose you lose your control over what the product is a little bit because now you have Peter Ullrich: Yeah. Jacob Luetzow: a board you have board members most likely that tell you how to guide your company. You still might be a decision maker, but your hands are tied. Peter Ullrich: Yeah, out of a sudden you have a group of people making decisions and not just you and your co founder, maybe. Yeah. But Jacob Luetzow: Yeah. And I get it for you know, for a lot of products, especially like, you know, the two sided marketplace kind of thing, like colo bringing money and going big, like getting your name out so you can onboard on both sides, it's important. Otherwise it's it's really hard to bootstrap those things. Peter Ullrich: It it's true. I th yeah, if you listen to Rob Walling, he Jacob Luetzow: Mm-hmm. Peter Ullrich: has a lot to say about which kind of products you can bootstrap and which ones you can't really or as Jacob Luetzow: Yeah. Peter Ullrich: well. And he always says two sided marketplaces, it's super hard. You you can still do it, right? I mean, he also I think invested in one or two companies that did a two-sided marketplace but with a really, really small customer base, like a really niche thing, Jacob Luetzow: Mm-hmm. Peter Ullrich: just builders and and and architects or something like that, so maybe a thousand people in in your region and then it works. Jacob Luetzow: Yeah. Peter Ullrich: But if you're talking con consumers, you know, millions of users, then it's almost impossible, I would say. Jacob Luetzow: Yeah. I I actually had him on as a guest and I I t Peter Ullrich: nice. Jacob Luetzow: I told him that I failed the hard way with all because I like one of my first product ideas when I first started with Elixir was a two sided marketplace. And I was like, I wish I found Rob Walling back then Peter Ullrich: Right. Jacob Luetzow: before I started that because it that it it was hard. It was a fitness marketplace and I needed a lot of users and a lot of coaches. And it just it wasn't Attainable with one person, But I learned. Yeah. Peter Ullrich: But that that's the other thing. You you you learn from it, right? You even if the product doesn't work out, you learn about how to build a product, how to do marketing, how to position yourself, Jacob Luetzow: Mm-hmm. Peter Ullrich: business models, just setting up a company, the legal part behind it is already something that you you gotta learn. So I mean now push in is I think my fifth company, sixth company by now. I I don't know, I lost count at one point. yeah, like it's not my first rodeo. Jacob Luetzow: What let's talk a little bit about yours. What would you call do you have like failures that you kind of just laugh about and it was a good learning experience? Or do you have like a good experience Peter Ullrich: Yeah. Jacob Luetzow: with a lot of them? Peter Ullrich: Well, so I I have both I have Letter to Yourself, which was some something I built in 2020. It's still around, you can still use it. I never really made money from it, but it it allows you to send yourself a physical letter in the future. And super tiny, like three-step form, and I take like eight dollars per letter, so also not super expensive. but yeah, so you can write yourself a letter in a web interface and then choose I want to have this delivered. five years from now or two years from now. And that's it. And I have a a posting office in the UK that has an API. It was the only one that I counter could find with an API. and they use good quality paper. So I use that, you know, to send you a letter. And I I think I have a thousand letters sent by now, which is not bad. Jacob Luetzow: Is it is it like typed or is it like an auto pen thing? How does it work? Okay. Peter Ullrich: It it's just printed, but the font I used looks a little bit handwritten, but it's very much printed. But it it's fine. Jacob Luetzow: Okay. That's cool though. Peter Ullrich: But the the quality of the paper, you you don't really have that in like probably you've never had that in your hands. Because this is like Jacob Luetzow: Mm-hmm. Peter Ullrich: certificate official certificate paper, really heavy hundred grams, which I liked. So that's a premium thing. Yeah. Jacob Luetzow: Yeah, that is nice. The the medium matters, like the good paper, you notice things like that. Peter Ullrich: Yeah, and and I thought this is probably an experience or a message that you might cherish, right? So you you write yourself in in in the future. I I never really read the art the the letters, you know, also as a privacy thing. But sometimes there was an error or two that I needed to fix and then I kinda had to skim to check that it's the correct letter. And what I saw from those letters is usually people who become parents soon being like freaking out about it. But then reassuring themselves, th literally themselves, through a letter saying, Okay, now you're freaking out and this is this letter will arrive in a year, but I'm sure you will be fine. I'm sure everything's going well. You know, just like calm down and and and listen to your partner, you know. So it was really nice Jacob Luetzow: Yeah. Peter Ullrich: positive messages that that people sent themselves. Yeah. Jacob Luetzow: I know we talked a little bit about the your that project when I was doing Kin Switch. And I Peter Ullrich: Mm-hmm. Jacob Luetzow: it actually like made me, I do kind of like that idea, like the physical letter kind of thing. And at some point, like I have like the idea of like notebooks, which is like a journal and then like notes and letters and things, right? And I Peter Ullrich: Mm-hmm. Jacob Luetzow: I do not only have like the dead man switch feature where if you don't check in, it sends, you can also like pick a specific date and time that you want. something to be sent. Peter Ullrich: Right. Mm-hmm. Jacob Luetzow: And I thought it'd be really cool if I could find like, you know how you can get like Instagram books made of all your photos and things like Peter Ullrich: Mm-hmm. Jacob Luetzow: that. Do something like that for your notebooks. I think that could be really cool. Peter Ullrich: I think so too. it's just if something arise and it's so important, it should come in a nice quality paper Jacob Luetzow: Mm-hmm. Peter Ullrich: form or form, right? It shouldn't be just like the cheapest paper because or digital, yeah. Jacob Luetzow: or digital. you lose you lose a little connection in the digital Peter Ullrich: Yeah. Jacob Luetzow: world, And I agree with that. and I use computers and all my notes are digital. Like all I do is use a computer. Peter Ullrich: Yeah. Jacob Luetzow: But like also there's something sentimental about a physical item. Peter Ullrich: my my my fiance, she sends a lot of postcards and I I sometimes I receive a postcard and I'm super happy about the physical form of it. People like somebody actually took the time to write it with hand, bring it to the the post office, and then you have a physical thing you can put on the in the shelf and and cherish. And then if you compare that to your WhatsApp message, it's absolutely not the same. You know, it's yeah. Jacob Luetzow: Right. Even if you include a pretty picture with the message, right? It's just like, okay, great. What's that message? Peter Ullrich: Nah. It took it took you five seconds to write the message and send, It's like but the Jacob Luetzow: Yeah. Peter Ullrich: the you have to like the postcard you have to find in a shop, buy it, you know, choose one that you think the other person might like, write it with hand, find a post stamp, send it to the it's a whole yeah, you actually invest something. It it really feels like somebody Jacob Luetzow: Yeah. Peter Ullrich: spent some time into it. So yeah. Jacob Luetzow: I I like that. I used to do I loved sending postcards when I was younger and it like you kinda lose that and I gotta bring it back. Yeah, I like that. I like that your fiance does that. Peter Ullrich: Yeah. Yeah. I sh Yeah, I think I think we will go back to more physical things again. Yeah. Jacob Luetzow: Yeah. Peter Ullrich: But but so because your your question was kind of my experiences. letter to yourself, still around. It's I would say a positive experience. you know, it it was just really easy to build, it's still around, people love it. The next experience I had was with indie courses, which was three years ago that I started indie courses, which is the video platform for indie Jacob Luetzow: Yeah. Peter Ullrich: course video course creators. Jacob Luetzow: You did a good Peter Ullrich: Because Jacob Luetzow: job with that. I love the platform. Yeah. I think we Peter Ullrich: Thank you. Yeah, thank you. What I Jacob Luetzow: both you and I both realize that tutorials and people paying for things is is a hard business to be in. Peter Ullrich: It is, and especially if you are serving the creators and you're not VC funded. This is one of these ideas where VC money would have helped, but it's just the the the target group of of creators, like the the amount of creators that you can find as customers for you video for your platform is just super small. Jacob Luetzow: Mm-hmm. Well, and then you got the double sided marketplace right there, right? Peter Ullrich: Yes, to a certain extent. I mean, peop for Udemy, yeah, if you would compete with Udemy, people go to Udemy to find video courses, right? Jacob Luetzow: Mm-hmm. Peter Ullrich: but if you just have good SEO, it's also fine if if you don't have a big marketplace, right? Jacob Luetzow: That's that's true. Peter Ullrich: But yeah, for me it was just the issue finding the creators and then selling to them, you know, and and to to actually like I I would need to find maybe a thousand creators and sell to a hundred of them and then I might have some inc income that would sustain me, but find the you know, try finding a thousand creators who are then interested in actually talking to you and listening to your message. Jacob Luetzow: Yeah. Peter Ullrich: It's just yeah, that that was too hard, man. So so Jacob Luetzow: You officially that's all shut down or is it still running? Peter Ullrich: It will shut down. Yeah. Actually now November, beginning probably this weekend or Monday, I'm gonna send out an Jacob Luetzow: Okay. Peter Ullrich: email to the users. I already contacted the creators, but I'm gonna shut it down also officially legally in in the US by the end of the year. So but again, yeah, but man, I learned Jacob Luetzow: Sad. But also I bet you learned a lot. Peter Ullrich: I learned so much, man. Like I I created a a company in the US. I did Texas now three times in the US. Jacob Luetzow: Okay. Peter Ullrich: Was was okay-ish, you know. But generally building the product and then realizing I gotta market that thing, understanding how hard it is if you have a small target group of of potential users. What Jacob Luetzow: Mm-hmm. Peter Ullrich: they call addressable market, right? If it's small and fragmented, like you don't have a single forum where everyone hangs out. They're all in the individual platforms. So yeah, a lot of learnings, lots of learnings. So I don't take it as a negative thing either. You Jacob Luetzow: Yeah. Peter Ullrich: know, I I I made some money by selling my video courses, so net positive. could be worse. Could be worse. Yeah. Jacob Luetzow: Yeah. Yeah, there you go. It could be. I feel like everything, even if it was a bad experience in the moment, hindsight, you're always gonna look back at it as a a positive. Peter Ullrich: If you don't go bankrupt and have to sell your house and your marriage is destroyed, right? But Jacob Luetzow: Also, though, you don't know, hindsight it could be a net positive. But yeah, hopefully that doesn't happen. Peter Ullrich: Maybe after after thirty years, yeah. But probably not, no, no. Well it's also it's also up to you to make that decision when you s like how you go into it and how you get out of it, right? Then I think Jacob Luetzow: Mm-hmm. Peter Ullrich: that is something that people should also be realistic about that if you have one project that might have traction right now and people love it and you're excited about it, it might it will probably not be the only project in your entire life ever. Right. even if this doesn't go through Jacob Luetzow: Right. Peter Ullrich: maybe five years down the line, you have another great idea. Right. And then you have a better network, you might have more money and more experience. So you have better chances of actually executing well in in that situation. So Jacob Luetzow: Yeah. I always wanted to be the unicorn. I didn't want all my failures, but I then I ended up getting them. Peter Ullrich: Yeah. But but you know, it's kinda like therapy a little bit. You know, you you have to Jacob Luetzow: It is. Peter Ullrich: to handle that, you know. And if if you don't have a a healthy mechanism, a mechan you know, mental mechanism of handling that, then you will also fail as a as a st as an entrepreneur in general, right? It just holds you back. Jacob Luetzow: Yep, that's true. I guess I wasn't special enough to be a unicorn, Peter Ullrich: I don't think you want to become a unicorn. I work for unicorns. Well, one. I Jacob Luetzow: Yeah. It probably distorts a lot of things. Peter Ullrich: It's nah. I mean it's too much money. Like money corrupts at a certain point. And yeah. Jacob Luetzow: I think it always does, yeah. Yeah. Peter Ullrich: If you got get to that level, it it's just all about the money. And it and you do weird things. You hire a thousand people because you have to show growth to the investors and then maybe get another s investment round. It's just it Jacob Luetzow: Yeah. Peter Ullrich: it's so disconnected from From everything you think you know about making business, and doing a business. Jacob Luetzow: My new goal is to, grow my solo projects as much as I can with the the smallest team possible. Peter Ullrich: Yeah. how's it going for you with kill switch, right? Or Kin Switch you rebranded? Right. Jacob Luetzow: Yeah, so I actually rebranded to Kin Switch because surprisingly, so many people were like, Kill switch is too intense. And like Peter Ullrich: Maybe. Jacob Luetzow: I kind of get it, but that's also why I liked it. But Peter Ullrich: Yeah, yeah. Jacob Luetzow: then, like, a couple people made a good point that they just wouldn't feel comfortable having a random email deliver sensitive documents to a loved one from Kill Switch. I was like, okay, I get Peter Ullrich: I get it. Jacob Luetzow: it. So I rebranded to Kin Switch and Rebranding is really hard and it really set me back on like SEO and like Peter Ullrich: Mm-hmm. Jacob Luetzow: Google Word like Google search and all that. I'm starting I'm recovering now I see it, but it like it knocked me down for like three weeks. And I was like I was like crap, that sucks. Peter Ullrich: Yeah. Jacob Luetzow: And I'm seeing the light at the end of the tunnel now. Like I'm recovering from it and signups Peter Ullrich: That's it. Jacob Luetzow: are starting to get, you know. backup and things like that. But it's going well. It's going slower than I want. But I think that's the case of any product. Like you're onboarding and just user based growth. It's always probably going to be slower than what you hope for. But it's going well. Peter Ullrich: It is, yeah. Because i for for every person that says they would sign up, maybe only every third or fourth actually signs up, you know. Jacob Luetzow: Every single person I talk about Kin switch to tells me that it's the best idea ever. But it's also one of those things you're gonna procrastinate on because you don't ever wanna think about like your demise, you know, so you don't plan for it. Peter Ullrich: Yeah, that and I think it's also a little bit of you have to change your habit a little bit, right? Like in in your Jacob Luetzow: Mm-hmm. Yeah. Peter Ullrich: y you have like notes you can write and and like for me, for example, if I wanted to really use Kin Switch, I would need to kind of change the way I'm keeping notes. Like I would actually need to start keeping notes, and then I would need to Jacob Luetzow: Yeah, yeah. Peter Ullrich: think about Kin switch, and then I might be walking outside in the forest, and then I you know, can I actually use Kin Switch when I'm there or not? Jacob Luetzow: Yeah. Peter Ullrich: It it it's a whole you you change people's habits, which is even harder to do, right? If if if if you slot Jacob Luetzow: Yeah, and Peter Ullrich: in if you slot into an existing habit, it's much easier, I think. Jacob Luetzow: I agree. and it is hard. Like it's hard to think about the things that you know that your loved ones don't know and to like build documentation around it. It's a lot of work. like I I built in an MCP for that reason because it's way easier to like make templates at least. You might not want to give sensitive information to Claude, but at least it can like create a template for you and you can go fill in account numbers and stuff manually. So I like I try to, you know, get rid of the friction there. With giving you that capability. But the check-in thing, I'm still ironing things out because like I go camping and backpacking and I don't have phone service. So like I can't check in if I'm on a a camping trip, right? So there are things that I've been thinking about, like for instance, like naming a beneficiary as like like none of your switches go out unless A person responds and goes, Yes, this person passed away. Peter Ullrich: Right, right. Jacob Luetzow: So instead like you can have the countdown, but you don't just automatically trigger at the end of that countdown. You have like safety nets. Peter Ullrich: Because you're on a camping trip, you know, in the Rocky Mountains. Jacob Luetzow: Yeah. And your beneficiary would know that you're camping and like, no, he didn't pass away. So then your documents Peter Ullrich: Yeah. Jacob Luetzow: don't go out. And then if you don't check in in like another week or so, it can check in again. So like you still don't miss it. But so I'm kinda like I'm thinking about like a good way to do that. Cause you don't want to spam non users either with just random messages, but Peter Ullrich: Yeah, on the other side it also reminds them that this service still exists and the other person still uses it, right? Because it might be one of these Jacob Luetzow: Yeah. Exactly. Peter Ullrich: conversations that you once had with your buddy and you say, Hey, look, I sign up for this thing. If anything happens, you gotta click the okay, he's you know, dead button. And then it might not happen for Jacob Luetzow: Yeah, yeah, yeah. Peter Ullrich: ten years. And then after ten years, the buddy completely forgot what Kin Switch is and just say, Hey, that's spam. Boom, you know. It is gone. Yeah. Jacob Luetzow: Yeah, that is true. One interesting thing, because you never think about abusing your own solutions to things, right? Peter Ullrich: Yeah. Jacob Luetzow: I had I had a someone sign up, they created a switch and they let it lapse and they sent a message to someone. And it Peter Ullrich: Ryan. Jacob Luetzow: was like, you know, I might be dead, blah, blah, blah. It was like, you know, they sent me like the person that received it sent me a screenshot. Because I I don't read the messages and they're all encrypted anyways. and Peter Ullrich: Yeah. Mm-hmm. Jacob Luetzow: they're like, is this real? And then at the very end of his message, it's like, or I'm just having too much fun and this just went out on accident. It was like very weird, right? And Peter Ullrich: Well Yeah. Jacob Luetzow: come to find out, this person, like the person that received this message, knew the person, and they said that they've blocked them on everything and that I'm Peter Ullrich: except Jacob Luetzow: I'm like. Creating an easy way for stalkers to get a hold of people. I'm like, Peter Ullrich: Right. Jacob Luetzow: crap, I never thought about that. So Peter Ullrich: Yeah. Jacob Luetzow: now I send like a real gentle no action required email. When you Peter Ullrich: Yeah. Jacob Luetzow: add a beneficiary for the first time to any switch, it says, Peter Ullrich: Mm-hmm. Jacob Luetzow: Hey, you've been added to this service as a beneficiary. if they do nothing, everything goes on as normal and will work. But they can say, no, I do not want to be contacted and it will block them from being contacted from KinSwitch by that user. And then that user gets notified that that happened. And then an admin, if if it was a mistake, they have to reach out to Kin Switch to unblock the the block. But Peter Ullrich: Yeah. Jacob Luetzow: I all these weird safety switches, safety checks you gotta put in. Peter Ullrich: Yeah, it's it's the it's a double opt in, right? Where like Jacob Luetzow: Yeah. Peter Ullrich: if you just you also have that with newsletter sign ups where you actually receive Jacob Luetzow: Yeah. Peter Ullrich: an email and then you to confirm that you actually want to receive the newsletter. 'Cause yeah, that Jacob Luetzow: Yeah. Peter Ullrich: that used to be a big problem where you would just take an email, sign it up to a thousand different newsletters and then the inbox would be completely full by that person. Yeah. Jacob Luetzow: Yeah. Yeah. If you want to abuse a system, it's really easy. I could just Peter Ullrich: Yeah, so Jacob Luetzow: grab your email, right? And opt you into a bunch of spam. Peter Ullrich: Yeah. Yeah. I'm sh I'm changing my perspective a little bit on this now because I do more of the security research stuff and I I just think not even a human like not sure you had a human in this case who abused your system, but now you also have AI abusing your Jacob Luetzow: Mm-hmm. Peter Ullrich: system. So like now I gotta think every like everything you upload on push in, for example, right? Like you upload images. Well now I have to make sure that these images are not illegal content. And then also I have to think about metadata that potentially would leak your location. So I need to s to to scrap that that metadata from the images. All that it's there are a lot of fun things you gotta think about. Jacob Luetzow: Yeah. You have fun problems and you have concerning scary problems. Peter Ullrich: A little bit, yeah a little bit, yeah, but s I Jacob Luetzow: What are you doing as far as image? How are you determining content of images and things? Are you using AI? Peter Ullrich: No, so I rely on Bunny CDN, which is a CDN like Cloudflare. And and Jacob Luetzow: Yeah, okay. Yep. Peter Ullrich: they have an upload filter, which I found really interesting. So when you upload a file to push in, it actually goes through Bunny, because they are a reverse proxy kind of. And Jacob Luetzow: Mm-hmm. Peter Ullrich: they scan for CSAM, for example, or malware. Well, yeah. I gotta think about malware because maybe eventually as a security researcher you want to share malware on push in. Jacob Luetzow: Right. Peter Ullrich: But for now I'm just like, no, block it, right? And Jacob Luetzow: Yeah, yeah. that's an interesting. I never think about you wanting to allow malware. Peter Ullrich: That is another thing if you yeah, uploads code, right? it Jacob Luetzow: Yeah. Peter Ullrich: it can be malicious code, quote unquote, but yeah it Jacob Luetzow: Yeah. I should look into Bunny because I have a really I'm not too thrilled about my solution, but yeah, I'm scanning, the the bits of images and everything, everything that's uploaded for malware and child pornography and all the crap you don't want on your system. But leveraging Peter Ullrich: Yeah. Yeah. Jacob Luetzow: Bunny, that could be a a good solution for me. Peter Ullrich: It it I I I wish I had done it earlier. I only edited after I went viral on Hacker News with push in and and then it was kinda delayed. Jacob Luetzow: So how did that happen? Cause I know it was unexpected to you. Peter Ullrich: A little bit, but I I reached out to people in my immediate network to beat a test push-in Jacob Luetzow: Okay. Peter Ullrich: and they liked it. And then one person decided to put on Hacker News on a Saturday morning. Which which was fine. I mean that you know, that I Jacob Luetzow: yeah. Peter Ullrich: I I'm excited that they were excited enough to do this. But yeah, it it kind of surprised me a little bit on on a Saturday morning when I just get my sign up emails. You know, I I get an email when you sign up for the waiting list. And then I was like, okay, there's three new ones, four, eight, fifteen. And then I was like, what's happening? Yeah. It's like something's Jacob Luetzow: That's awesome, man. Yeah. Peter Ullrich: happening. and then somebody sent me the link on I think Discord saying, Hey, you're in Hacker News. And I was like, shit. There goes my Saturday. Jacob Luetzow: Yeah, well you've been very popular among the Elixir devs, at least like in our circle of friends. And because I Peter Ullrich: So far. Jacob Luetzow: remember everyone's like, We need Peter in this Discord server now. We're so interested in this project. Peter Ullrich: Yeah. Yeah, yeah, I appreciated that. And and and the coolest thing was also at Goldmeyer in Sweden the conference, people started using push in for their slides and their the repos that they were sharing. Jacob Luetzow: that's awesome. Peter Ullrich: and that is the coolest thing when like there was a lightning talk and I saw the person giving the lightning talk and then at the end he said, Well, if you want to see the code, it's here on this thing that everyone likes, which is called push in. I was like, What? Jacob Luetzow: That's amazing. Peter Ullrich: People actually like my product. It was so amazing to see. Really, really nice. Yeah. Jacob Luetzow: Yeah, that's cool. I'm I am guilty. I have signed up, but I haven't pushed code yet. And I've been meaning Peter Ullrich: That's fine. Jacob Luetzow: to move my projects over. I think well, GitHub is so annoying. Like actions always go down. Peter Ullrich: There go. I have a seal eye. Jacob Luetzow: And like what you're talking about, like you're trying to like get code deployed and GitHub's down for whatever reason. And I feel like it's Peter Ullrich: Yeah. Yeah. Jacob Luetzow: happening so often now. I blame vibe coding too many. Developers are just pushing bad code. I don't or it's a traffic Peter Ullrich: Yeah. Jacob Luetzow: issue because agents are writing so much code. Peter Ullrich: They just had the GitHub Universe conference and they shared that they had like one point eight no, how much was it? Like billions of commits in per month now. That's what they Jacob Luetzow: That's crazy. Peter Ullrich: Yeah, but I mean you if you break it down, it was around a hundred and eighty thousand commits per second. Jacob Luetzow: Dang. Peter Ullrich: But that is also not git pushes. That you know, if make multiple commits locally and then you push them, it's ten commits, but it's only one push. So it's not actual Jacob Luetzow: Right. Peter Ullrich: request to their system then which I like they always they always they always make they they always make these numbers really big Jacob Luetzow: So they're skewing their data to get some sympathy. Yeah. Peter Ullrich: and then you think like eight billion requests per month but no it's actually you know still millions of requests probably right but Jacob Luetzow: Yeah. Peter Ullrich: not very like very different ballpark again. Jacob Luetzow: Yeah. Peter Ullrich: yeah but definitely they they have been struggling under the the traffic load. Jacob Luetzow: So is pushing like are you multi node already or what how are you doing that? Are you okay. Peter Ullrich: Not quite yet. I I have something in the pipeline to make it multi nodes or multiple backend servers or like general servers because they also serve li live view. Jacob Luetzow: static ones though, or dynamically scale? Peter Ullrich: I have static bare metal servers. Yeah. But I I I Jacob Luetzow: Okay, yeah. Okay. Peter Ullrich: think it's gonna be fine. I famous last words. But Jacob Luetzow: Well, you don't know until you have the problem, right? if you have to fix a problem in the future because that doesn't work, that's a good problem to have, Yeah. Right. Peter Ullrich: I might also have the money. Maybe I have the money then. But my my plan, my plan right now, my roadmap kind of for for this year, the next two months, is I'm currently working on managed CI. So that you have CI you don't need to host. I just give you, you know, managed CI basically. That that is Jacob Luetzow: Okay, nice. Peter Ullrich: something I'm setting up with a a partner company in Berlin. They have a bare a bunch of bare metal servers and on on those they orchestrate micro VMs. So like Cloud hypervisor, I it's called. So firecracker VMs, but the alternative to that. And Jacob Luetzow: Okay. Peter Ullrich: and those I use for the CI runs. So I'm still in the process of kind of setting that up. the other thing is I'm gonna support webhooks. That's actually gonna come next week. So if anything, Jacob Luetzow: Okay, that would be nice. Peter Ullrich: if anything happens, you can on your end, you know, react to any changes. And once I have webhooks in place, I might also look into apps, like GitHub apps, but then Just in my own app app store, kinda. Jacob Luetzow: Okay. Peter Ullrich: But that is probably gonna be next year. So so this year is still webhooks and then manage CI. And I wanna get the CI offering really, really good because I think that's super critical to to your operation and to everyone's work. Jacob Luetzow: Yeah. Peter Ullrich: And beyond that, I just need to add subscriptions. So that's probably gonna beginning of January next year. I'm gonna add subscriptions. That's probably gonna be individual team and enterprise subscriptions. But Also a free tier that is good enough so that you can try it out at least. Jacob Luetzow: I'm I'm curious, what is what does that pricing tier? What's it going to look like? a number of private repo kind of thing? And then you Peter Ullrich: Yeah, so yeah, so free would be maybe just, you know, three or five private repos, something something there where you can use it, but not like the full feature set. Because Jacob Luetzow: Yeah, yeah. Peter Ullrich: I'm not I'm not Microsoft. I don't have that kind of money to throw around where Jacob Luetzow: Right. Peter Ullrich: they can charge four dollars for a subscription. Like four dollars for me, that would be more processing fees than actually, you know, money I would make as a profit. Jacob Luetzow: Right. Peter Ullrich: yeah, so I'm I'm probably gonna give you a free. Which might not include managed CI, for example. So you have to bring your own runner, which you can do. and I Jacob Luetzow: Yeah. Peter Ullrich: actually use the same API for my managed CI stuff, so it's always gonna work. But yeah, free. And then individual, that is very classic, everything you need, as as many private repos, public repos as like to your heart's desire. yeah, as a single contributor to as a single account. Jacob Luetzow: But a single contributor? Or how yeah, okay. Peter Ullrich: And then you get managed CI with it, web hooks. All the good stuff, everything, all the features basically. And then moving on from individuals, I have organizations and they can be businesses, so like small or medium-sized businesses, and they would just have team plans where they don't get, you know, the S SIM, S-C-I-M, like automatic provisioning of accounts that you need for enterprise, SAML, like these kind of enterprise-c features, they would fall out of the team plan, but team plan gives you an organization with private repos. enough manage the i minutes that you're fine. And yeah, basically all you need is a business, right? And then enterprise Jacob Luetzow: Yeah, awesome. Peter Ullrich: is enterprise features, mostly authentication features, audit logs, and self hosting as well. If you want to self host, that is like for me, my kind of target groups, my my customer groups that I'm looking at is on the lower end. It's individual contributors, but then mostly teams. That's what I'm looking at. So like smaller To medium-sized businesses. and they are all on GitHub. You know, that's my GitHub crowd, so to say, that I need to take Jacob Luetzow: Mm-hmm. Peter Ullrich: from GitHub. And then at the other end, I have enterprise customers and institutions and governments. You know, they usually use GitLab. Here in Europe, they self-host GitLab or Forjo, but mostly it's GitLab if they want to have a commercial Jacob Luetzow: Mm-hmm. Peter Ullrich: offering. Yeah, and those are mostly self-self-hosted services. So I need to support self-hosting and enterprise. You so also managed experience where you have a a single sign on, that kind of stuff, authentication flows. Yeah. Jacob Luetzow: You got a lot. You got a lot to handle. How are Peter Ullrich: Yeah. Jacob Luetzow: how are you managing it without stressing out over your workload that or do you not think about too far into the future? Peter Ullrich: I very much live in the moment, but I do have strategies, as you can see. But Jacob Luetzow: Mm-hmm. Peter Ullrich: yeah, it's it's fine. You just gotta put in the hours, don't stress yourself out, look at it as a as a marathon rather than a sprint, right? sure I have Jacob Luetzow: I think that's one of the best things I learned from Rob Walling. Prepare for it to take you ten years. And just having Peter Ullrich: Yeah. Yeah, exactly. Jacob Luetzow: that mindset I feel like doesn't stress you out. Peter Ullrich: Exactly. Yeah. it can still be stressful, especially in times where you get a lot of attention and a lot of user growth, right? So then you need to be reactive to things. But like I'm not gonna stress whether a feature takes a day or even a week longer, right? Like sure, if I have a customer that wants to sign up and they like then I would rather focus on it, but maybe even there I might I might I might already in the in the initial conversation give a deadline that is longer than I anticipate. So I might think, I can deliver it on two days, but I might tell them it's gonna be a week, very Jacob Luetzow: Mm-hmm. Peter Ullrich: traditional stakeholder management, expectation management. Yeah. Jacob Luetzow: Yes, yeah. Peter Ullrich: Because then, you know, it might take you two days and then you can make them happy by saying, it's much faster. Jacob Luetzow: What is that? Underpromise over deliver? Peter Ullrich: Exactly. Yeah. So yeah, you you might be faster and then they're great they're happy, or it might take you longer and then you have enough buffer time to make them not happy, you know, to to still make them happy. Jacob Luetzow: Yeah. Peter Ullrich: so yeah, stuff like that. Jacob Luetzow: I'm excited for you. I think it's such a cool project. And I I think Peter Ullrich: Thank you. Jacob Luetzow: you you're entering the space at a really good time. Peter Ullrich: That's what I thought too. The timing is ideal. Ideally I would have been six months earlier, but again, you know, it's you you it's like timing the market. It's like timing Jacob Luetzow: You can't time it perfect. Peter Ullrich: the market of buying stocks. Like you will never time Jacob Luetzow: Yeah. Peter Ullrich: it exactly on that like peak. yeah, so I'm that's also why I'm moving fast now and then I'm slowing down a little bit next year to tie up all the features to just improve on the feature set. Because I don't think as a Daily user, you don't need all the features that GitHub has. They have so many features you never heard about. Yeah. Jacob Luetzow: Yeah. They do. Yep. Peter Ullrich: So what I'm doing now is I focus on the features I know that developers use, right? And then sometimes somebody comes along and says, There's this one feature which I really, really need. And it takes me a day to implement. And I'm like, sure, I'm gonna add that too. But otherwise, you know. Jacob Luetzow: Yeah. Well, the problem with GitHub, you get that corporate bloat too, where they just start consuming other services and companies and it's just Peter Ullrich: Exactly. Yeah. Jacob Luetzow: all this like nasty spaghetti code wired together to work, you know? Peter Ullrich: Yeah, and it's kinda it's there, but it's not really usable. Like projects, Jacob Luetzow: Mm-hmm. Peter Ullrich: for example, GitHub projects and milestones and the whole project management around your repo. It's some people use it, like, but I've yeah, me neither. And Jacob Luetzow: I do not. No. Peter Ullrich: I was thinking about it, to add it and then I thought, no, people use linear. So I'd rather need to have a good integration with linear, with gyro gyra. Jacob Luetzow: Yeah. See, I think that's smart. Like let someone that already does it well, let them continue doing it well and use it. I like that. Peter Ullrich: Exactly. Yeah. And like I personally I I like to reduce complexity also in the in the code, but also in the product. And if I could ship a website that has a single button, like that would be my perfect product. You just press the Jacob Luetzow: It would be. Peter Ullrich: button and it makes you money, whatever, you know, something. Jacob Luetzow: Yeah. Peter Ullrich: But like that would be for me the perfect product. Yeah. Jacob Luetzow: Yeah. I miss the good old days when the app store first got released and you could make money off of a fart app. And it was a single button app. Yeah. Peter Ullrich: Right. You know, like a beer drinking app where you tilt the iPhone and you drink beer. And and there was another funny one where they it was like a super exclusive app and it did nothing except for showing that you bought the app. You could prove it to others. Yeah, it was like a thousand dollars. It was a thousand the Jacob Luetzow: And it was ten grand, right? It was something crazy. Yeah. Peter Ullrich: highest amount you could set as a price, like nine ninety nine. And then Jacob Luetzow: Yeah. Peter Ullrich: all y you got nothing except for s showing that you bought the app. That was it. Yeah. Jacob Luetzow: Dude, geniuses, man. For real. Like what? It is. Peter Ullrich: People are so smart, yeah. Jacob Luetzow: I'm curious, before you started sharing this, like before it hit hacker news, how long have you been working on it? Peter Ullrich: before Hacker News I've been working on it. So I started in May, mid May, end of May approximately. Yeah. And then I had Jacob Luetzow: okay. That's pretty good. That's fast. Peter Ullrich: I had June, July, August, really. So like three, three and a half months, and then it it hit Hacker News. Yeah. Jacob Luetzow: Dang. Peter Ullrich: It went fast. Yeah. It I I surprised myself the other day because I thought, this is just five months, less than five months. Well now I'm Jacob Luetzow: Yeah. Peter Ullrich: yeah, now I'm at the five month mark. Jacob Luetzow: And how many users are on the platform using it now? Peter Ullrich: I got seven hundred confirmed registrations. Yeah. Jacob Luetzow: Dang. Okay. Peter Ullrich: I got sixty daily active users, more or less sometimes. And Jacob Luetzow: That's Peter Ullrich: monthly active. I I stopped like I started tracking too late with monthly, but it's 300 now or something, you know. But Jacob Luetzow: Okay. Peter Ullrich: it's like it's fine. I mean I am happy. I'm happy, yeah. And Jacob Luetzow: That's pretty awesome. I would say those are good numbers. Yeah. Peter Ullrich: and it's still in in beta, it's still like the feature set is not complete. And as you said yourself, you sign up for it, but then you just never do the the switch over. But yeah, so I have people in the pipeline and I might Jacob Luetzow: Yeah. Peter Ullrich: need to reactivate them a little bit in the future. Yeah. Jacob Luetzow: you're gonna get me. I'm just a procrastinator because I'm so I like I'm so busy with everything else. It's less like Peter Ullrich: Yeah. Jacob Luetzow: when you have to switch a service, you're like, Okay, I'm just gonna bite the bullet and do it. Peter Ullrich: But do you know I wrote a C L I that take it will take you a minute to switch. I know, I know. Yeah. Jacob Luetzow: I know. And I think it's really cool. And I'm just, I'm a wuss. It's like, I'm gonna do it though, because I like I'm excited and I wanna I wanna dog food like your product. I'd much rather help you build a product that is gonna be beneficial and Peter Ullrich: Mm-hmm. Jacob Luetzow: like get away, like cause we're all just sucked in. Like I feel like we're almost forced to use GitHub. It's like you don't choose it because you love it. Peter Ullrich: Yeah, it's so ingra it's it was it's so ingrained and and it it's really weird at some points. I I went to a conference on Tuesday in Brussels, which is our Washington DC, where the European Parliament sits and all that kind stuff. So I I went to this conference and there were people from the European Commission talking about some regulation. And then they said, Well, we actually want input from the community, from industry, whatever. So we put it on GitHub. Right. And and that's where we get the feedback on a European Jacob Luetzow: Yeah. Peter Ullrich: regulation from European users. And it was so natural for them, which I understand, right? I mean, these are also not tech savvy people, they're not software engineers like us. Jacob Luetzow: Yeah. Peter Ullrich: but I w I was a little surprised and then I thought, I gotta change that sentence. If I can change that sentence to we put it on push in, like in a year or two or three from now, then I've achieved my goal, you know. Jacob Luetzow: I think you have really good leverage, at least in the European market, because it I don't where I don't even know where where does GitLab exist? Is that a US based company? Yeah, okay. Peter Ullrich: By now they are, yeah. So they they were they were founded in the ne in the Netherlands originally, but Jacob Luetzow: Okay. Peter Ullrich: now they're I think on the New York Stock Exchange. They're very much American by now. Yeah. Jacob Luetzow: Gotcha. Yeah. So like you have a lot of, you know, leverage there, I feel like. Peter Ullrich: Yeah, regulation also helps in this regard because if you look at universities and big corpor like big governments institutions, they became much more sensitive about relying on American services and GitHub is one of them. GitLab is better because they offer self hosting, so at least it's Jacob Luetzow: Mm-hmm. Peter Ullrich: on premise. But even then, you know, you had the massive C V E now in GitLab, which was literally a ten. Like you you got unauthenticated remote code execution privileges to GitLab. So if if anyone and that went back to twenty sixteen. Since then has the the the bug existed. So if Jacob Luetzow: That's wild. Peter Ullrich: yes if you're a government institution and you have your GitLab server self hosted, people could just RCE into it and and extract everything. And I'm almost certain that especially states supported groups have done that. You know, that that is almost a given by now. Jacob Luetzow: Yeah. Peter Ullrich: Yeah. So so but they need to think about, r sovereign sovereignty and and regulations and and the headquarters of a business and that kind of stuff. So my my strategy, my sales strategy there is also I will approach universities and and educational institutions first, because I do have a good network in in that here in the Netherlands. And then just offer them self hosting basically for free. And have them as a partner come on and tell me what do they need, does it work for them or not? what can I improve on the product? Jacob Luetzow: Mm. Peter Ullrich: And then just put them as a reference on the website. You know, and if I get two or Jacob Luetzow: Yeah. Peter Ullrich: three universities to self host push in, even if it's just fifty or a hundred students or whatever, you know, it doesn't matter. Then I can go to the bigger corporations or and governments and say, you know, look, University Jacob Luetzow: Yeah. Peter Ullrich: of Amsterdam is using it, University of Rotterdam. Jacob Luetzow: And that's what the big bucks are. You get some enterprise accounts. Peter Ullrich: One one sale, maybe two sales, and I have enough money to hire a small team and be sustainable. Really it it goes really fast. Jacob Luetzow: Yeah. Yeah, that's awesome. Peter Ullrich: Yeah. Jacob Luetzow: you got Elixir developers throwing themselves at you for free, so I think it's hilarious. Peter Ullrich: I know, I know. Thank you. Yeah, I I appreciate it a lot. I I I BeamOps, you know, you you gave the ad in the beginning. Pep Jacob Luetzow: Yeah. Peter Ullrich: and and Ellie, they also offered to help me, and we tried to find Jacob Luetzow: Dude, they're great. I love them. Peter Ullrich: wonderful people, really smart people too. They helped me with the push-in architecture a little bit, at least they kind of double-checked it. And I'm Jacob Luetzow: Mm-hmm. Peter Ullrich: like I I said I'm not multi-node yet. But I will be in multi node next year. That's also something, one of these features that I want to add once I have a feature, a good feature set. Jacob Luetzow: Yeah. Peter Ullrich: Yeah. And then I'm gonna go multi node with a reverse proxy in front so that I can control the the traffic flow. yeah, and they help me kind of just double check my work and they said they said it looks good. Jacob Luetzow: That's awesome. Yeah, they're great. I met them in real life at Elixir Conf in Chicago. So that was a lot of fun. And actually speaking of my ads at the beginning, my paraxial ad broke. So I'm sorry, Michael. I I will get it fixed. but I I Peter Ullrich: Yeah. Jacob Luetzow: don't know if it was going blank for everyone or what was happening, but it just wasn't loading. And then I was like, all right, I just gotta move on. Peter Ullrich: Right, yeah, there was a black screen in the beginning. I like, Did I was I kicked out of the call or something? Jacob Luetzow: Okay. Yeah. Dude, I feel like okay, I've used Riverside now like at least like four or five times and I'm still like very clunky with it. I don't know. It's just Peter Ullrich: There is not a single good video reconferencing, like what what do you call this? A a coding studio, maybe. Jacob Luetzow: Yeah. Peter Ullrich: like I tried Riverside. They actually screwed me over with the pricing, which I first I didn't use them because of that. where if you were not signed up and you were just an anomalous user, you would go to the pricing page and you would see the pricing. The pricing was twenty five dollars a month. And then I signed Jacob Luetzow: I Yeah. Peter Ullrich: up and I tried it out and I was like, well, that looks cool. Let's try it out and upgrade. $35 a month. And and even on the official pricing page. And then I opened an an ico incognito like a private window, went to the pricing page, $25 a month. That's like, are you shitting me? Honestly. That is shady as hell. Yeah. So yeah. Jacob Luetzow: Riverside, that's shady, dude. I don't like that. That is. It's like like when you're booking flights and stuff. If you don't if you don't book them right away and you come back, they'll be higher because they already Peter Ullrich: Right. Jacob Luetzow: cashed your visit. Yeah. Not cool, bros. I know Peter Ullrich: Your cookie. Yep. That's why. Man, the world we live in, Yeah. Jacob Luetzow: the games to play. like I'm happy with so like. I really liked my OBS setup, but the problem was it when if internet sucked for either me or my guests, the whole recording was shot. This at least it will just ruin the live stream. And then the recording after it's been recorded on both of our devices and it's like so high quality, so much better. Peter Ullrich: It it's it's good at least, yeah. I use D script now. D script they acquired Squadcast. So Squadcast was kind of also an online Jacob Luetzow: Okay. Peter Ullrich: studio like this for podcasting mostly. And they were really good and they got acquired by D script. So now I sign up to D Script to use the SquadCast product. So far, yes. Yeah, Jacob Luetzow: And are you happy with that then? Okay. Peter Ullrich: we record Macro Mayhem, the my podcast. We recorded now. Yeah. Jacob Luetzow: Yeah. Let's talk about that. I haven't had a chance to check it out. What what is it? What's the format? I know it's like Elixir news. Peter Ullrich: It's yeah, so the format is it's a little bit like Elixir news it's a little bit like thinking Elixir, but not really. So thinking Elixir was its own thing and what I appreciated Jacob Luetzow: Mm-hmm. Peter Ullrich: about it was just the news updates that they gave. And we took over that part. So we have basically two parts to the podcast. The first part is pretty straightforward news and then blogs and then conferences and then a joke. Jacob Luetzow: All right. Peter Ullrich: That's it's always the same structure so far. And then that's take it's like half an hour, maybe. And then the second half an hour is discussion. And that's where we take bigger type topics, whatever comes up and discuss it, share the whatever we think about it. actually this week we have an interview with Michael Lubas from Prexel.io, you know. Jacob Luetzow: Awesome. Peter Ullrich: We got him on and we talk about the PHP the PHP Pocalypse, like a PHP to shell. Jacob Luetzow: I feel like I need to have him back. I just had him on, but then all this PHP stuff hit like. Peter Ullrich: Yep, yep. And it's it's interesting to see then how how we affect it as an Elixir community or how we're not affected and why we're not affected. And Jacob Luetzow: Mm-hmm. Peter Ullrich: and I I don't think we're much more secure than other ecosystems, right? Because let's not get get on the high host and think we're better than everyone else. Jacob Luetzow: Right. Peter Ullrich: We are just so much more niche than PHP, right? Like eight Jacob Luetzow: Yes. Peter Ullrich: eighty percent of the internet runs on PHP. So if you can get an RCE into PHP. It's it's payday. if for if you're a hacker group, Jacob Luetzow: Mm right. Peter Ullrich: that is the the golden treasure that you found, right? If you find an RCE into OTP like Erlang or Elixir, you know, how many companies are there that run it? Maybe less Jacob Luetzow: Yeah. Peter Ullrich: than a hundred, you know, bigger companies. So eighty percent of the internet versus a hundred, you know, you you do the math. That that's why we we're flying a little bit on the under the radar, in in this regard. Yeah. Jacob Luetzow: What is the big gambling platform that just Peter Ullrich: Binance? No, polymarket. Jacob Luetzow: Polymarket, they just got hacked with this with the PHP thing, didn't they? I'm Peter Ullrich: really? Was it the PHP map thing? Yeah. Jacob Luetzow: not sure. Let me see. polymarket. Polymarket hack trains two point seven million from seven hundred users. I saw something in the billions, but I'm sure it was a Peter Ullrich: That was Binance. Binance had six billion dollars taken. Jacob Luetzow: That's what it was. That's wild. Peter Ullrich: That's North Korea probably. They're thinking North Korea, the Lazarus hacking group. Yeah, that's Jacob Luetzow: Dude. Peter Ullrich: that's like twenty percent of the North Korean GDP in a single hack. Yeah, it's a good year. Good year. Exactly. Yeah, I mean Jacob Luetzow: Wow, they really improved. Go good year for North Korea. That is wild, dude. That's terrifying. Peter Ullrich: Th three billion are in in escrow, so they are not like they are frozen. they weren't sent to the three billion. Yeah, they they got away Jacob Luetzow: But that's still two billion three. Peter Ullrich: for like three billion. It's like Jacob Luetzow: Dang. Peter Ullrich: I I wouldn't mind having three billion on traceable money. Jacob Luetzow: Yeah, how do I how do we do that? Peter Ullrich: I don't know. Become a professional echo group and live in a state like that. Yeah. In a Jacob Luetzow: I guess so. Move to North Korea and be a hacker. Seems dangerous. Peter Ullrich: Maybe. Yeah. I I don't I I think I prefer living here and not having three billion. Jacob Luetzow: Yeah, I'll keep the daily grind going and have Peter Ullrich: Yeah. Jacob Luetzow: a little bit of freedom. Peter Ullrich: Yeah, but good good for them, you gotta admire the the proficiency there a little bit, Jacob Luetzow: yeah, but it's also like terrifying that it it could happen. Kinda wild. Peter Ullrich: I don't have very strong feelings about Binance and cryptocurrencies. I think I'm like, yeah, yeah, you lost six billion. Jacob Luetzow: I don't either. It's part of the game. I used to be I used to be very involved in the crypto world, like I don't know. I feel like it's almost like ten years ago now. And I kind of just got a bad taste in my mouth and haven't gone back. Peter Ullrich: I I was I I jumped into that pool twenty eighteen when Bitcoin went to a thousand dollars or three thousand dollars, like the peak. And it was at the Jacob Luetzow: Hmm. Yeah. Peter Ullrich: it was in my I was in my masters of computer science, so I was also just technically interested in the whole thing. And I had a block a podcast about it, actually, it's still online, I think. It's called Explain Blockchain. That was me twenty eighteen talking about what the blockchain is, how it works technically, you know, under the hood and Jacob Luetzow: Yeah. Peter Ullrich: all that kind of stuff. And I went to a lot of conferences, especially in the Netherlands. They had a lot of cryptocurrency, crypto conferences and and hackathons, and I really jumped into that pool. Man, it was such a eye-opening experience because you just realize it's all a freaking scam. You know, everyone was Jacob Luetzow: Mm-hmm. Yeah. Peter Ullrich: just trying to have a we had the initial co token offerings or coin offerings, the ICOs at that time were like ever Jacob Luetzow: Yeah, I remember that. Peter Ullrich: Everyone and their grandmother would come up with a token and then try to to sell it to you and then pump and dumb. Jacob Luetzow: I feel like that must have been the time frame that I was in very involved with it too. And then Peter Ullrich: Could be, yeah. Jacob Luetzow: you also realize a lot of it isn't distributed and protected like they claim. Like they have back Peter Ullrich: None of it is. Nah. Jacob Luetzow: doors on their nodes and i it's a nasty Peter Ullrich: Exactly. Jacob Luetzow: game. Peter Ullrich: It everyone was screwing over everyone else. And y the the thing is you just needed to be not the last person to hold the bag. And then that's Jacob Luetzow: Mm-hmm. Peter Ullrich: what everyone wanted to go for. Like you they were just hot potato kind of handing over the coins, and then whatever you know, whoever held it last, they look lose the game and lose. Exactly. Yeah. Jacob Luetzow: And then all the board members sell their coins right before like, what? What what just happened here? Peter Ullrich: Yeah, yeah. And and you had startups walking away with hundreds of millions in US dollar. And then they had no product and nothing. So they just it was a company, usually one or two co-founders, with a hundred million and more in in and literally translated into US dollars. They sold it obviously and then they had dollars. So Jacob Luetzow: Yeah. I I I don't want to like sound like a dick, but when I look back then I went to a I went to New York for a big crypto conference and you meet a lot of like crypto millionaires, right? I've Peter Ullrich: Yeah, yeah. Jacob Luetzow: never met a bigger group of just kind of like idiots who just got very lucky and they Peter Ullrich: Yeah. Jacob Luetzow: think they're like brilliant like investors and it's wild. And I was just like, I don't want to be in this world. Peter Ullrich: Yeah. No. I I I gotta say it's a like that kind of personality that you describe, I also see in in regular startup founders, especially VC founders, especially from the US. So and Jacob Luetzow: Mm. Yeah, yeah. I c I yep, for sure. Peter Ullrich: I always man, I can't stand that. Just you know, because okay, you got lucky and yes you worked hard and and you did a good job. setting up a startup and and making millions from it, it still doesn't make you Einstein, you know, or Newton. Like you're not you're Jacob Luetzow: Right. Peter Ullrich: not the smartest person in the room, you know? Yeah. Jacob Luetzow: Exactly. Peter Ullrich: And and it's also what I also saw is like the more money you have, the fewer people you have that say no to you when you have a bad idea. Jacob Luetzow: That is true. Yeah. Peter Ullrich: And if you live in that bubble for long enough, it just fucks with your brain, I think. So yeah. Jacob Luetzow: Yeah, you become a crazy person who thinks you're like a god, right? Peter Ullrich: Exactly, because nobody you have only brilliant ideas because nobody ever tells you no and that this is a bad idea. And then you can see behind all these like Alan Musk, Trump, you know, all all these bigger, Jacob Luetzow: Yeah. Peter Ullrich: very rich people, you see people behind them trying to mop up the mess that they make. Like also Zuckerberg. Jacob Luetzow: Right. Peter Ullrich: There's actually a really nice book about it called The Careless People. And it's it's about Facebook when they started as Facebook and this was the VP of relations, government relations, who wrote that book. And she was with Facebook for quite a while. And and she came from a diplomatic background or diplomacy background where she had respect for the other person and she would respect the other person's culture and and that kind of stuff. And then she went to Facebook and Mark Zuckerberg was absolutely or oblivious to any of it. the he would go to s South America and say, Hey, I want to talk to that to that president over there. And that was like the president of Brazil, you know, you just don't go up to the president of Brazil and say, hey Mark, like how you doing? Right? It's like no, there's a a respect and a and a ritual to it. And yeah, like th that that's kind of what I what I see a little bit with especially the richer people and then behind them you have a group of people around them to Who try to mop up the mess. And then if if they get rich, it kind of messes with their brain where they think everything they think and say is brilliant. Jacob Luetzow: Yeah. Do you think that delusion kinda helps them though? I I think it does. Peter Ullrich: I don't yeah, I don't think no, I don't think and I think Jacob Luetzow: Maybe not. Maybe it's their demise. Peter Ullrich: that is our fallacy, that is our failure, where we think, so they they do all these terrible things, but Alan Musk is still the first trillionaire in history, right? So Jacob Luetzow: Mm-hmm. Peter Ullrich: so then he must do something right. Maybe that what he does is the right thing to do. And I don't I don't believe so, right? Because Jacob Luetzow: Yeah. Peter Ullrich: point point one, you still have a whole team behind him who actually does the work. and and who Jacob Luetzow: Right. Peter Ullrich: like runs behind him and tries to catch the the problems and the things he he he lets fall. Like you know, they they then mend the relationships to the other business owners. And the other business owners who do business, they also understand that they're not really doing business with Musk, they're doing business with the associative team behind Musk, who then actually does the business with them. So it it's all just like a kinda like racist grandpa comes to Christmas and you just gotta get through it and then when he's not around, Jacob Luetzow: Yeah. Peter Ullrich: then you go outside and talk like normal people, you know? Yeah. So I don't think yeah. Jacob Luetzow: Yeah, there's probably some truth to that. Peter Ullrich: Yeah. I I don't I don't think that is the winning strategy in the long term at least. Jacob Luetzow: It I don't think it is. I well, I think there's there there's the it's good to be able to be successful and like live a good life to whatever your filter or perception of success is. But then there is a point where it's like you there's too much. And Peter Ullrich: I think so too. Jacob Luetzow: to get there you probably have to compromise on your morals a little too often. And then you become a shell of a human. Peter Ullrich: I think, yeah. Morals and principles, right? you you start a company with those, maybe you are more or less strong on them. With younger people, I sometimes think that they value business success so much that they're more willing to let go of their values and moral, Jacob Luetzow: Mm-hmm. Peter Ullrich: you know, ethics. Sometimes also not, you know, sometimes there are more principles, but I I think as you get older and you you start a company, you might have that more ingrained in you. Whereas like, no, I don't want to be an asshole to my employees. I'm never gonna scream Jacob Luetzow: Right. Peter Ullrich: at them for doing a bad job. Like, you know. So just being a a normal person, I I think, yeah, that that I I hope that we never lose that. But who knows, right? I mean, if we make a hundred million a year I'd Jacob Luetzow: Yeah. We could be crazy. We could just go crazy. Peter Ullrich: We maybe we become crazy. Yeah, I dunno. but right now and here I wanna say that if I become that, right, please hold me comfortable and tell me I'm a dick and that I'm wrong. Right. I give you that Jacob Luetzow: And then I'll continue being the craze a crazy asshole. No. Yeah. You're wrong and you're fired. Peter Ullrich: Yeah, then I'll tell you you're wrong. But yeah, exactly. Yeah. Nah, but I don't know. Just I I think maybe it's also a more European perspective on things. But since we are all maybe a bit more connected here because we live closer together, especially in the Netherlands, Jacob Luetzow: Mm-hmm. Peter Ullrich: has the highest density of one of the highest densities in the world. Like you see the prime minister on the street cycling, right? So you see that is a person that Is he's like me. He cycles. Well, Jacob Luetzow: Yeah. Peter Ullrich: it's like a for photo op, of course, but still you might see them around and shake their hands without just by being there, right? It's nothing so special. and I think because we're all a little bit more grounded like that, you know, when somebody is such an outlier from that, it it looks really weird. Like you look at them Jacob Luetzow: Mm-hmm. Peter Ullrich: like this is not a normal behavior. You are not beh behaving normally, right? So Jacob Luetzow: Yeah, no, that's an interesting perspective because I can't relate to that because I like the US is just a very different you can buy you can own a ton of land, you can be spread out, and I know it's amazing. my goal is how to see less people every day, you know. Peter Ullrich: Yeah. You see three people and that's it. Yeah. And two of them you don't like. Yeah. Where you can move into a cabin, you know, in the in the Rockies and then get eaten by a bear. Yeah. Yeah. Yeah. Yeah. Yeah. Jacob Luetzow: Exactly. man, that sounds perfect. I so any I love that you started a podcast. I feel like that it was sad to see thinking elixir close up and and be done because I feel like Peter Ullrich: Yeah. I agree. Jacob Luetzow: that was the first podcast that I ever listened to, especially getting into Elixir. Like I learned so Peter Ullrich: Yeah, me too. Jacob Luetzow: much from that. And Peter Ullrich: Yeah, I I do miss it as well. But I when we started Micro Mayhem it wasn't meant as a replacement of thinking elixir, to be honest. It it Jacob Luetzow: But there was there's that missing gap, right? And and Peter Ullrich: Yeah. Jacob Luetzow: I feel like you filled it 'cause I don't do I don't do like news or I don't really have a format. I'm I'm very much just casual conversation and we'll see where it goes. Peter Ullrich: Yeah. No, so you have a few, like two or three other podcasts, but they usually do long form interviews like what we're doing now. And Jacob Luetzow: Mm-hmm. Peter Ullrich: then you don't have any others that do weekly or bi weekly news like we do now. Jacob Luetzow: Yeah. Peter Ullrich: And I do think there is maybe a gap like a position or a there's place for one more, I would say. Maybe a shorter format, just like a fifteen Jacob Luetzow: Mm-hmm. Peter Ullrich: to thirty minute one. And I w I would listen to it because yeah. Jacob Luetzow: That would be good. Long form's hard for me to stay on top of. Like and I know I do it, but it's Peter Ullrich: Yeah. Jacob Luetzow: hard for me to spend my time listening and consuming other long form content. Peter Ullrich: That's true. I when I have an hour-long podcast, I listen to it over a week or two. here and the here Jacob Luetzow: Yeah. Yeah. Peter Ullrich: and there I have 10-15 minutes, and then I listen to the next part. So Jacob Luetzow: Yeah, I'll switch between podcasts and audiobooks when I'm walking my dog and things, but it's still ten, twenty minutes. Yeah. Peter Ullrich: Exactly. Yeah. Yeah. Yeah, so if if it was fifteen to thirty minutes, that is my dog walk as well. So that is something I could listen to in the morning, you know, when I walk my Jacob Luetzow: Yeah. Peter Ullrich: my Labrador. Yeah. Jacob Luetzow: Yep. Yeah. I think that's awesome. Peter Ullrich: Yeah, let's see. So it Jacob Luetzow: I'll make sure I link the all that stuff in the description so people can find your podcast and I'm sure everyone you guys know who Peter is. He makes waves when he when he enters a room. Peter Ullrich: I appreciate it. that's that's too much. Thank you. You make me blush. Jacob Luetzow: Come on, you're always doing cool stuff. Peter Ullrich: Yeah, it I don't know. It's just you know, play around with stuff. Don't be afraid of of playing around Jacob Luetzow: Yeah. Peter Ullrich: and then going on stage and and flossing. That's what I did Goldmire. Like, don't be afraid, you know. Jacob Luetzow: I've heard good things. It sounds like Goatmeyer is just a really fun conference. Peter Ullrich: It was the best conference by far. Jacob Luetzow: Yeah. Peter Ullrich: this year it even topped last year. It was I don't think I might have a similar experience anytime soon. Yeah. It was Jacob Luetzow: Interesting. What what stands out what do you enjoy about it over other conferences? Peter Ullrich: It is incredibly creative and it allows you to be creative as well. So it's not a standard Jacob Luetzow: Hmm, I like that. Peter Ullrich: conference where you go up to the stage and you give your PowerPoint presentation, kinda. I mean, sure, you have that still, but if you wanna, as me, if you want to dress up as a Viking in a Viking costume, barefoot, stand on the stage and swing your arms because now you're a pendulum and you're explaining how radio waves work, like that is perfectly acceptable, you know. Jacob Luetzow: I love it. Peter Ullrich: Yeah. last year we had we had one Flora and her husband, they gave a talk about Flora's experience of getting started with Elixir. And she's a puppeteer, I think you call it, but puppeteer with like shadow figures. So she would be playing a theater play with shadow figures on the background, kinda. And her husband is a professional pianist. So he would then play a very beautiful piano song and she would tell the story by, moving the little figures on the on the screen with her hands and then telling the story. And I never seen also something as beautiful. It was really touching. Like I had a tear in my eye because it was such a beautiful story. And it was incredibly creative for a software conference, you know, for a tech conference. Like Jacob Luetzow: That's really cool, yeah. Peter Ullrich: It might be like a a bought in performance that the conference bought in from a local artist Jacob Luetzow: Yeah. Peter Ullrich: maybe, but to have a participant, an attendee, giving that kind of talk, it was absolutely mind blowing. Jacob Luetzow: Yeah, that's cool. Yeah, because Peter Ullrich: Yeah. Jacob Luetzow: you're kinda used to I'm not I don't I'm not trying to dig at anyone, but when you're doing technical talks, it's really easy to get monotone and get a little boring, right? So Peter Ullrich: Yeah. Yeah. Jacob Luetzow: it's it's it's cool. I feel like that's like add some theatrics into talks and things and Peter Ullrich: Yeah, it was definitely entertainment, more than infotainment, so to say. Yeah. Jacob Luetzow: I like that. Peter Ullrich: And I think everyone walked away with having learned something and at least having a good time. So yeah. Jacob Luetzow: Got Isaac in the chat. Always good to see him. Peter Ullrich: Yeah. Do we I never see the chat. Do we have any other questions or I I see a chat here where it's like two or three messages. Okay. Jacob Luetzow: can you not see the chat? I don't know, it hasn't been very active today. but yeah. If anyone has any questions, feel free to drop them in the chat and now's your time to corner Peter and harass him. Peter Ullrich: Yeah, if you wanna have comments, feedback, questions, I'm I'm here. Yeah. If Jacob Luetzow: And if you're using pushin, let's hear about it. Peter Ullrich: you liked it or not liked it. I wanna hear it either either way. Yeah. Yeah, you know with Jacob Luetzow: How do you handle feedback? Like I feel like a product like push in, you have to you're building so many features and obviously bugs or just workflow isn't going to work as expected for some people. And like, how do you how do you manage like a huge balloon of info or data coming your way that just Peter Ullrich: Yeah. Jacob Luetzow: kind of feels like it's attacking your product versus just, you know, feedback? Peter Ullrich: I didn't have that yet. So that's our handling. Jacob Luetzow: No, you just get feedback. Peter Ullrich: I do get feedback that is usually constructive. And if not, then I Jacob Luetzow: Mm-hmm. Peter Ullrich: will ask about, you know, how do you how did you get to this point or how to reproduce it? I do appreciate feedback because I get so little of it. You know, usually people Yeah. Jacob Luetzow: Yeah, f feedback is important. Peter Ullrich: Usu usually people say like I like it, thumbs up, and I'm like, Okay, nice, I'm happy. Exactly. Jacob Luetzow: That's not helpful, but what don't you like? Or where was friction, you know? Peter Ullrich: Yeah, because everyone experiences some level of friction when they interact with a with a new product at first, right? And Jacob Luetzow: Yeah. Peter Ullrich: and I try to replicate, not replicate, but to make it feel like GitHub so that it's kind of intuitive for you where the tabs are, how you can go to issues and pull requests and and the code and how a diff looks like or not looks like, but you that you have a diff in a pull request. Like I I try to make it s not surprising, right? So I think that also helped because people already knew how to use GitHub and then they looked at push in and then i they were already Jacob Luetzow: Yeah. Peter Ullrich: eighty percent there. But yeah. Jacob Luetzow: My best feedback's been users that have canceled their trial and they don't renew because it's Peter Ullrich: Yeah. Right. Jacob Luetzow: always like I always reach out and they give me the best feedback, like why they're canceling what they didn't like. And I've actually like implemented features and changed the way I do things because of not my current users because they seem to like my platform, whatever I do. it's the ones that leave. Peter Ullrich: I will yeah, I do need to do that better. so I I do have the seven hundred registered users, but again, many of them haven't haven't changed or haven't switched over to push in. Many of them haven't created a repo. So I gotta maybe like in the next Jacob Luetzow: Yeah. Peter Ullrich: month or two send an email saying, Hey, is there anything I can help you with? you know, kind of like an onboarding sequence Jacob Luetzow: It's a good idea. And you nudge and remind them that they signed Peter Ullrich: Yeah. Jacob Luetzow: up for your product. They're not using it yet. have Peter Ullrich: Exactly. And Jacob Luetzow: maybe a getting started guide or something to something simple and silly, but it gets them thinking about Peter Ullrich: Yeah. Jacob Luetzow: it. Peter Ullrich: Yeah. And I think it's I made it super simple, I hope. you have two commands you need to run. One of them is pun. So you install the C L I, which is called Pun, P-U-N, and then you do pun import. And that's gonna Jacob Luetzow: Mm-hmm. Peter Ullrich: open up your GitHub, that's gonna connect you to GitHub, gonna look at your repos, and then ask you which repos do you want to import. And then you can select all or just some. And then Jacob Luetzow: Yeah. Peter Ullrich: it imports it imports the code base, it imports the issues, the labels on the issues, the historic pull requests, not the open ones, but the closed ones. yeah, and your full history. Like as as Jacob Luetzow: That's awesome. Peter Ullrich: as much as possible what I could export from GitHub, I am exporting and then importing it to push in. So it's it's very much a switch over. And and then this Jacob Luetzow: Yeah. Peter Ullrich: the second command is inside the repo. You can run pun move origin and that moves your git origin from GitHub to put push in push in push in. Jacob Luetzow: nice. Peter Ullrich: So then If you do the next git commit, git push, it actually goes to push in and not to github. So you don't need to do anything manually. Jacob Luetzow: So you can start with just mirroring GitHub, right? I would keep pushing to GitHub and then pushing will get it. And Peter Ullrich: You can do that too. Yeah. Jacob Luetzow: then when I decide I'm happy with pushing, I can just change the origin and I'm done. Peter Ullrich: You can do that. the only thing is like with a mirroring, I don't know. Like that's something I it's an open question for me how useful it is really, because it just copies your code from A to B. It doesn't do anything else. Jacob Luetzow: Yeah. Peter Ullrich: You wouldn't use and you can't use the push in copy. You would still use the GitHub copy. So then it's just like a yeah, can we Jacob Luetzow: Right. Peter Ullrich: sync the code from GitHub to push in? Like, yeah, you can, but that's not yeah. Yeah. Jacob Luetzow: Yeah, yeah, fair. I was just kind of curious, like if you wanna take like baby steps because you know, you're you're kind of a wuss with change, you know? Peter Ullrich: I I g I get it. yeah, I I also don't have managed CI yet. You can't deploy from it yet. You know, CI is a big part of our professional workflow every day. So I Jacob Luetzow: It is. Peter Ullrich: I'm again I'm working on this next month in November. I'm gonna have a beta version for it if you wanna try it on. But yeah, so what you what I use it, I mean aside from actually building push-in, is all my little side projects that I have on on hacks, you know, all my libraries that it that are not production critical and that don't Jacob Luetzow: Yeah. Peter Ullrich: need CI C D, I I have that code and push in. Yeah. Jacob Luetzow: All right, we're gonna get to Isaac as a user, even though he's a he's a big self-hosted guy. He said he's not using push and yet. Forgeo or I I don't even know how you say that. I've never heard of that one. But he's self-hosting Peter Ullrich: Yeah, it's Jacob Luetzow: that and yeah, everyone's upset with GitLab and GitHub. But Peter Ullrich: They are, yeah. GitHub for obvious reasons, GitLab, I I think the UI is terrible. It's one of these gy Jacob Luetzow: Yeah. Peter Ullrich: gyre experiences. After 20 years, it has buttons and drop downs everywhere. yeah, Forjo, of I think they call it Forjo. it's Jacob Luetzow: For Joe. Peter Ullrich: for Joe. It's great. You can self host it. The issue there is that you can't really add contributors to it. So if you wanna have Jacob Luetzow: Mm. Peter Ullrich: another person contributing, you need to create an account for them. So it's very much like a one person or small team that can run it. yeah, they they do use it here for the Dutch government. They have a four instance where they push from most of the from a few of the Dutch government institutions, they push the code there. You know, but then it's an enterprise customer who has SIEs who can host that for you. So Jacob Luetzow: Right. Peter Ullrich: Yeah. And then yeah, you have Codeburg. that is basically Fojo hosted by an NGO. But they also said that you can't p you can't push AI generated code to them. So there you go. Can't do that. Jacob Luetzow: That seems like a silly stance. Like, and you see all the like I saw an interesting perspective actually that I didn't really think about is you have all these large like the dot-com, like the Amazons and you know, all the dot com huge companies, like Peter Ullrich: Mm-hmm. Jacob Luetzow: their whole revenue stream basically depends on human eyes being on their website. And seeing sponsors and ads and things like that. So they're Peter Ullrich: Mm-hmm. Jacob Luetzow: blocking agents from use booking flights, buying products. They're Peter Ullrich: Mm-hmm. Jacob Luetzow: blocking all these things, which I think is a huge mistake. And I'm like wondering if this is just like a death spiral. Like, are we gonna see old tech die off and new people that embrace AI and agents? And like, like, are we gonna see like the new Amazon where you're just shopping through an LLM? I don't know. Peter Ullrich: I think that we definitely will need better integrations for non human users. Jacob Luetzow: Mm-hmm. Peter Ullrich: Yeah. And then we need to have better behaved models too. So Jacob Luetzow: Yeah, yeah. Peter Ullrich: if if both sides would kind of decide to, for example, like the the models, they like they like mark markdown better anyway. Then they don't want to pass your HTML website, right? So there is actually from Cloudflare they have a is it agent ready.com. It's a website. It's kinda like the Google Lighthouse scan for website where you can throw Jacob Luetzow: Yeah. Peter Ullrich: in your domain and then it checks. For a couple of things that LLMs would like to see. So there's the LLM.txt file, you know, close to like robots.txt. And then you also have markdown ready content. So instead of having a website HTML-based, you inst when they s when the model sends you a request with the accept content type header set to markdown, like application slash markdown, I think it's that, then Jacob Luetzow: Mm-hmm. Peter Ullrich: you should respond with a markdown file instead. And that is something that would make it much lighter for the for the servers to to serve the content. It would be make it much easier for the models to pass the content, right? So there's a maybe. But I I think like also the models, they it's they don't want to kind of settle on an industry standard or on anything that they would need to adhere to in the future because they still want to innovate and and they say, Well, it's fine, we can just go to your website and and pass it directly. So We're just gonna do that. But I I think, as you said, either there's gonna be a hard gate in front of the models at one point, and then they need to Jacob Luetzow: Mm-hmm. Peter Ullrich: go the route of taking like fetching the markdown. yeah, or or we will kick out bots entirely, but yeah. Jacob Luetzow: I think I had you on. Was it you and Alex on last when you introduced me to Is It Agent Ready? I think it was. Cause Peter Ullrich: Yeah, could be, yeah. Jacob Luetzow: I went on there and it's it's definitely a Cloudflare sales funnel because I I have 94%, right? I have everything marked, but the one thing I can't do is their their their DNS for AI discovery, which is only something Cloudflare Flare offers. As a DNS record. So it's like, okay, so I have Peter Ullrich: Yeah. Yeah. Jacob Luetzow: to add Cloudflare just to get a hundred percent, you you bastards. Peter Ullrich: Exactly. Yeah. I I rebuilt that actually for for Alex's company. We had a really nice side checker app. and we I rebuilt these scans for that. And and you just realize many of them are not necessary. You know, you don't Jacob Luetzow: Yeah. Peter Ullrich: need to have a web MCP endpoint, like yeah. Yeah. Jacob Luetzow: Unless you have an MCP, then it's great, but that doesn't really mean you're AI ready. Yeah. Peter Ullrich: Exactly. If you don't have an MCP server, then you also don't need to advertise an MCP server because you don't have one, right? So and even then, maybe you don't want to have an MCP server, but you want to have an API that they can use instead. Like for push-in, you know, I I I build a C Lite tool, which agents and users can use alike. Yeah, I don't think you Jacob Luetzow: Mm-hmm. Peter Ullrich: need to have an MCP server to to you know to connect the the agent directly. Because for me that also would mean yet another access path into my application next to API Jacob Luetzow: Yeah. Peter Ullrich: and in the HTML. And I have the CI. I actually myself I I use code clot code on web, so in the web browser. And then Jacob Luetzow: Mm-hmm. Peter Ullrich: you can configure the environment in such a way that it pushes to push in. And all you need is a personal access token. You know, and you can inject yeah you Jacob Luetzow: nice. Yeah. Peter Ullrich: can inject that as a secret. It actually only gets injected into the request, not into the actual agent context. And and I I use clot code on web to Create a repo and push it to push in. it took me three minutes to set up. And I have a guide on Jacob Luetzow: Yeah, nice. Peter Ullrich: the docs in the docs now. So if you want to do that too. So yeah. Jacob Luetzow: Awesome. I love it. I'm excited for you. I'm excited to watch pushing pop off. I feel like it already it's like you got the momentum right now. Peter Ullrich: I I think and I hope so. I hope I can keep it for a little while because I'm still wrapping up the most important features. But yeah, it's but again, like, you know, I don't expect this to be like a one million ARR company by the end of next year. Like it would be nice, but that would be Jacob Luetzow: Yeah, yeah, you got you got a lot to do. There's a lot of infrastructure behind what you're a Git Peter Ullrich: Yeah. Jacob Luetzow: repository, you know. Peter Ullrich: And then it's a company. Actually, it helped me a little bit to understand how Tangled grew. So Tangled is a yeah, they also git forge built like they're from Finland. And they focus very much on the like Blue Sky AT proto network, right? So their native AT proto applications. Jacob Luetzow: Okay. Peter Ullrich: And it it just means that most of the metadata that you create, if you create a repo, if you create a user record, if you create an issue or pull request or a comment, those become events that are then stored in the AT proto network. They're kind of like broadcast into AT proto network. And then it's very easy for other people to connect to your application and then to fetch the data and to be notified and then to fetch the data from your application to theirs or contribute to yours. It's very much like an interconnected web of things. Kind of like if everyone has the API and everyone can talk to each other's API and that kind of stuff, just in a more standardized Jacob Luetzow: Mm-hmm. Peter Ullrich: way. So very nice project. and and I I'm very I'm really rooting for them because we also don't focus on the same customer base, at least for now. But what do I want to say? Yeah. So for them I looked at the The user records, because it's public, right? You can just look up how often do people create repos? When do they sign up? And when do they start creating a repo? How often do they commit to the repo? So you can really track all the active activity. And Jacob Luetzow: Mm-hmm. Peter Ullrich: I mean they started beginning of last year, so 2025. They start they were, I think in March they announced tangled in they also had some seed investment already back then. And now we're one and a half years in and they have Last time I counted one thousand two hundred monthly active users. So Jacob Luetzow: Okay, nice. Peter Ullrich: I have three hundred. So it's like I'm looking Jacob Luetzow: Good. Peter Ullrich: at I'm I'm thinking it's good. I'm looking at them and they also got a three point eight million euro investment beginning of this year in in March as well. So I would have expected big with that money to have to see a bigger growth, to be honest. But Jacob Luetzow: Yeah. Peter Ullrich: like now with that number, it's it's probably good for them. I don't know, like it but I'm just looking at it, I'm like, okay, this this is not an industry where you got from zero to a hundred million users in three months, you know? Like Jacob Luetzow: No, yeah. Well, like and with anything, you you you have to build a lot of trust too. Like people have to Peter Ullrich: Exactly. Jacob Luetzow: know that their their code is safe and it's always going to be there. Peter Ullrich: Exactly. And and there I also have a little bit my questions because they I don't see anything about backups with them. So if you run your own node that connects to their network, I don't know how you back up your thing. I think you just need to back up the entire disk the your disk, you know, so like a disk backup thing. Jacob Luetzow: Yeah. Peter Ullrich: Yeah, stuff like that. And at the at the other side I'm also thinking it's very much AT proto based, but that means that you probably also only get users that are AT proto enthusiasts at first, right? Like you, for example, you Didn't seem to know about Tangled until I told you about it. Yeah, see. Are are you in blue sky? I didn't see you in blue sky. See? Jacob Luetzow: No, yeah, I did not. Yeah. No, I I I try to avoid too much social media. So I'm like I'm on X and LinkedIn pretty much and that's it. And yeah. Peter Ullrich: Right. So so that's that, right? I mean they have a different user base. It's very much 80 proto focused, so different user c base than than my s my own. but the what I want to say is more like I'm looking at them kinda as a reference points, you know. Like do they have ten thousand or a hundred thousand users? That would be a very Jacob Luetzow: Yeah. Peter Ullrich: different league. but this way we're kinda still close. So I'm like I'm like Yeah, I'm like, okay, I'm not doing too bad, I think. Jacob Luetzow: You're right there. That's no, you're doing great. You're gonna pass Peter Ullrich: Yeah. Jacob Luetzow: that up real quick. Peter Ullrich: Yeah, hopefully. Yeah. I mean I think when once C C I hits and and I just rap ra you know, make the whole product a little simpler and that's like more intuitive. And I I and at one point I yeah Jacob Luetzow: Yeah. That's the hard part. The make it simpler and more intuitive. Cause it's just and I feel like you just Peter Ullrich: Exactly. Jacob Luetzow: kinda ca it's easy as you're building too to overcomplicate things because you start getting used to doing things a certain way. At least that's how Peter Ullrich: Exactly. Jacob Luetzow: I've been with building Kin Switch. And then like sometimes I just have to take a step back and like someone told me that it's too complicated. I'm like, whoa, whoa, whoa. Why? Why is it too complicated? And yeah. Peter Ullrich: Exactly. Yeah, because where that button is that you are looking for, because you build Jacob Luetzow: Yeah. Peter Ullrich: that button. one thing that I you found useful is to use the app through the through your mobile phone. Jacob Luetzow: Yes. Peter Ullrich: Because you rarely use it for mobile, but when you use Jacob Luetzow: Yeah. Peter Ullrich: it yourself for the first time, it kind of feels like a new experience. And then it and also the mobile phone it has a has a much smaller display. So everything that's important needs to be in that kind of section. You Jacob Luetzow: Yeah. Peter Ullrich: know, if it's at the bottom of the page, you will never find that button. That kind of stuff. So yeah. Jacob Luetzow: Yep. That's actually I actually focus on like my Kin switch is a web app, but I focus mobile first. I use my phone for all my testing. Like I Peter Ullrich: right. Jacob Luetzow: have a little like you know, I have what do you call the bottom nav bar that pops Peter Ullrich: Yeah. Jacob Luetzow: up in like PWA or mobile size screens and it's Peter Ullrich: Right, right. Jacob Luetzow: definitely a good way to do it. It's a good way to simplify your your Peter Ullrich: Yeah. Jacob Luetzow: workflows. Peter Ullrich: Yeah, and then you're like Jacob Luetzow: Because Peter Ullrich: yeah, okay, I I need that button right here now because I just pressed this button and now I'm here. So yeah. But Jacob Luetzow: Yeah. Peter Ullrich: I I I also love I I I love these kind of UX improvements and I I spend time on them. Maybe I shouldn't, but I I just love to do it. Things like I for example, I have keyboard shortcuts in push-in. So if you want to navigate through the tabs, you have you know like I for issues and p for pull requests. And then when you go to issues, you press I, and then you want to create a new issue, you can just press N and it opens the new issue tab. Yeah, you know. And then the Jacob Luetzow: Nice. I like that. Yeah. Peter Ullrich: next step that I still want to implement is that automatically it then focuses the title bar so that you can immediately start typing the issue title and then tap tap and you're in the issue description. So without even really like without leaving your keyboard, you can create an issue. Yeah. Jacob Luetzow: Yeah. It's the small things like that too that just make a experience more enjoyable too. And it just Peter Ullrich: Exactly. Jacob Luetzow: works with no friction. Peter Ullrich: Yeah, and and as I say, st steal or learn from the best or steal from the best. because Jacob Luetzow: Yes. Peter Ullrich: I took this from the npmx.dev package manager browser. So it's the npm package manager, but then a new browser on top of it basically. And it's really nice. It's built by really, really good people, really knowledgeable people. So if if you look at that and you're like, you don't need to understand what are they doing right? And then you just copy it into your application, you know. Jacob Luetzow: Yeah, there's nothing wrong with copying, especially for UX. Isaac said I target the iPhone 5s viewport for all my projects. It really makes you consider responsive design seriously. But yeah, it Peter Ullrich: Right. That's true. Jacob Luetzow: it really does. Cause one thing like with Kin switch, I I basically have it's like obsidian, like a markdown editor. You can write notes and things. Try to do that smoothly on a mobile phone versus desktop. You handle the way you write notes way differently. And I still don't Peter Ullrich: Right. Jacob Luetzow: have it perfect, but it's not bad. I don't like get frustrated writing a note on my phone, but there's still like some cleanup and some adjustments that need to be done. But it's hard. Peter Ullrich: Yeah, yeah. It I think mobile is extremely difficult because you have so such a restricted screen viewport size. And yeah, especially text, right? Because you also you write a lot of text and for me it's issues, you know, you just need to make the text area large enough so that you don't have to scroll Jacob Luetzow: Yeah. Peter Ullrich: too much and maybe it all to gross, that kind of stuff. Like it it Jacob Luetzow: Yeah. Peter Ullrich: gets i i if you have a big screen, I have a thirty-two inch screen now. I upgraded from a twenty six twenty-seven one. And I have so much space. I can have three large windows next to each other. So I Jacob Luetzow: Yeah. Peter Ullrich: never have that issue where I have to scroll or anything. But then yeah. Jacob Luetzow: Right. Well, and it's funny is like if your audience is mostly developers, they're probably mostly on a desktop experience in your app. But then Peter Ullrich: That too. Yeah. Jacob Luetzow: when you're not, I like with LLMs now, I am reviewing code from my phone, chatting Peter Ullrich: Mm-hmm. Jacob Luetzow: with Claude from my phone, and just everything's working on a server somewhere else. So like Peter Ullrich: Right. Jacob Luetzow: you kind of are interacting with code a lot differently than we did just a year ago. Peter Ullrich: That's true. And and that is one thing that I'm now like that might be the biggest learning about push-in. I I'm learning a lot of different technology and different stuff with push-in, but I'm also learning how to use LLMs to write the actual code and to make it to still apply the same engineering ethos that I had before, which is, you know, to Jacob Luetzow: Mm-hmm. Peter Ullrich: test properly, to make sure that we don't like ideally ship bugs, you know, like we also need to have kind of a cleaner software design and not like super random weird code everywhere. so like that has been a big learning curve for me where in the beginning I kind of almost vibe coded it where I just said, build me this thing and then, you know, it worked. So I just pushed it to production. And now I have become much more conservative about accepting generated code, although the models became Jacob Luetzow: Yeah. Peter Ullrich: better. So that is kind of like a, you know, a contrast. But now what I do is I have Codecs writing the code, and then I have Claude reviewing it. And Claude has a slash code review skill. And I kind of use Jacob Luetzow: Mm-hmm. Peter Ullrich: that and rebuild it a little bit because it didn't give me enough details about the issues it found. So now I have, you Jacob Luetzow: Yeah. Peter Ullrich: know, like give me one paragraph of every issue. And then I also now say, Well, for every issue, give me options about how to solve the issue, you know, with your recommendation. But so I can kind of understand what's the issue, and then I can make a decision. Jacob Luetzow: Yeah. Peter Ullrich: Because what I've seen previously is that I had 10 rounds between codex and Claude, review rounds, where codex would just ping pong from one part of the solution to the other end of the solution. So like don't verify anything and then verify everything. And I wanted to have something in the middle, right? Jacob Luetzow: Yeah. Peter Ullrich: So so this is now how I write code. I just have codex write it, Claude review it, and I have a markdown file underneath the review so that I can track off the rounds and the issues it found and everything. And I also cut down on the number of agents I have running. So I used to have three or four agents running in parallel, working on different features. And now I I I did. I did, but I I I was always fine. I have a 20 max on Claud and 20 not two yeah, Jacob Luetzow: You'll really burn tokens too, depending on how many agents are going. Yeah. Me too, yeah. Peter Ullrich: not 200 on Codex, whatever the $200 subscriptions. yeah, but then so I had four. But the issue with four is that you yourself I I got really stressed because I needed to s constantly context switch. I was context Jacob Luetzow: You're managing for? Yeah. Peter Ullrich: switching like this feature, this feature, and then also sometimes different projects. So like switch from this project to that. It really burned me out a little. so now with now that I've worked full time on push in, I I said, okay, I'm gonna break it down to like one, maybe two agents that work on two one or two features in parallel, if they're if they're also very separate from each other, right? So like yeah, there you go. Jacob Luetzow: Yeah, I work on one feature at a time. That's what I do. And then I do use Claude to review code, but I'm still manually re reviewing all my PRs. Just I can't I don't like I can't let go of that yet. And I because Peter Ullrich: Yeah. No. Jacob Luetzow: it's like it's not there because you still find some really silly mistakes. And it's just like Peter Ullrich: Exactly. Jacob Luetzow: I don't want that going in my code base. Peter Ullrich: And I review is first of all, I think everyone should review with with Claude at least, or I'm not sure how good codex is for reviews, but I find Claude is really good at that. Because it Jacob Luetzow: Claude's getting better. I have a little multi-agent skill. It burns up my usage though. if Peter Ullrich: Mm-hmm. Right. Jacob Luetzow: I'm not careful, I can go, I can use up my weak usage in three days. And that sucks. So Peter Ullrich: Yeah, okay. Yeah, I Jacob Luetzow: I rewrote that skill as like a light mode, and it just uses less agents in parallel. Like that Peter Ullrich: Right. Jacob Luetzow: was the problem. I just had a ton of agents reviewing and like really digging in like any new code that touched other parts of the code, but the it's out of the the different the diff context. I still Peter Ullrich: Mm-hmm. Mm-hmm. Jacob Luetzow: was like having it track down what it was calling so it had more like context to the codebase. But Peter Ullrich: Okay. Jacob Luetzow: you gotta be careful. You can you can really dig deep into the code base and burn up tons of tokens. Peter Ullrich: Yeah. Yeah. So so that is something I'm also current like I'm still figuring out how to incorporate this properly, right? Because I I do think we can't go full vibe coding. That obviously that's Jacob Luetzow: Mm-hmm. Peter Ullrich: not like we still have standards and now we just need to think about how can we apply the standards to this new way of working. Jacob Luetzow: Yeah. Peter Ullrich: and yeah, for me what helped now again is this like ping pong between codix and claude and the review cycles, and then also I I I also review the code myself eventually in the end. But I I skim through it mostly, right? I I just look at yeah. Jacob Luetzow: I'm a skimmer. you can pretty much see major flaws skimming. Yeah. Peter Ullrich: Exactly. I I didn't know, but there is an Erlang function for a global lock in your in your Erlang cluster. You can set a global lock uniquely in your Erlang. I don't know, but it's like global.log. Again, I I didn't know it existed until I saw Codex use it in five different places. And Jacob Luetzow: that's hilarious. Peter Ullrich: I was like, no man, we're not gonna use that now. Just take it out again, right? Exactly. HSMD. Jacob Luetzow: yeah, don't use add that to your knowledge base. Do not use global.lock. Peter Ullrich: Don't use that. It's it's like it does really f fun stuff sometimes, especially when it becomes a bit Jacob Luetzow: Yeah. Peter Ullrich: more complex the issue and it yeah, then it just goes for the the fastest, easiest way. yeah, so I d I do review ideally locally, but with work trees. I haven't found a good way of reviewing different work trees locally yet. So I do it through push in. Jacob Luetzow: Yeah. I usually what I do is just push draft PRs and I do all my I do all my review in in GitHub currently. Peter Ullrich: Yeah, I do the same with push in. So that also allows me to use push in for reviews. Yeah. But I d I Jacob Luetzow: Yeah, there we go. Yeah. And now do you can you do good code reviews on your phone? And is it or is it too hard? Peter Ullrich: I don't think that would work, right? Like to to click a line and add a common? Yeah? Okay. Jacob Luetzow: It the GitHub app actually isn't horrible. I do code review from my phone a lot. When I'm holding my my baby boy, I'm like one-handed adding features, you know? Peter Ullrich: Okay, I I gotta try that. Yeah, I gotta try that. Jacob Luetzow: Cause that's a good I'm I it's something you never think about, but I think more and more we're gonna be reviewing code and pushing features from our phones. Peter Ullrich: Could be. Yeah. I I still like to separate it from my life a little. when I'm not on my computer. Yeah. I be you you have a boy. You you have Jacob Luetzow: I I lost that. My yeah. Peter Ullrich: you have very little time at your computer. So I understand that, right? But for me it's like I'm sitting in front of my computer and that's when I work. And when I get up and I walk away, work stops kinda. Jacob Luetzow: Yeah. I I need to I used to be better at that and then it's when you start your it's hard. Well, you know, when you're building your own thing, it's hard to disconnect from it. Peter Ullrich: Yeah, yeah. And then you have that thought and but again, you know I Yeah, exactly. Yeah. Jacob Luetzow: And then you wanna start working on your phone and then you realize, wait, I'm on a date. I gotta like I gotta be here. I gotta be participate with my wife. I can't be that guy on his phone. Peter Ullrich: Yeah, but that is, we spoke about that earlier. that is for me at least one strategy of keeping sane and not stressing out with building this thing Jacob Luetzow: Yeah. Peter Ullrich: because you gotta you gotta force yourself to take down time. And if it Jacob Luetzow: Yes. Peter Ullrich: is a date, if it's just hanging on on the on you know, in front of the TV, if it's walking a dog outside, you know, I I I usually don't listen to anything or I'm not on my phone when I'm outside. I sometimes leave my phone at home just to, you know. Jacob Luetzow: It is nice just to not do anything, not have electronics, not have a screen. Peter Ullrich: Yeah. And your dog also will like it because then you play with him or her more often, you know, that kind of stuff. So yeah. Jacob Luetzow: Yeah. He's chillin' right next to me right now. Peter Ullrich: Kitty. I think Bella yeah, she's in the other room, but she's in the heat right now, so it's a little tricky. Jacob Luetzow: yeah, that's rough. Peter Ullrich: Yeah. Two weeks, yeah. Jacob Luetzow: But all right, man. This is awesome. It was good to catch up and I'm excited to see the progress of pushing and I am Peter Ullrich: Thanks, man. Jacob Luetzow: I do keep an eye on it. And maybe maybe, you know, this week's the week. I just push over my repo. Because, you know, Peter Ullrich: Yeah. Jacob Luetzow: funny enough is Kin switch I am manually deploying still. So I don't have a CI. So Peter Ullrich: Right. Jacob Luetzow: it really I wouldn't lose much not having, you know, yeah. Peter Ullrich: If you don't have us Yeah. Jacob Luetzow: 'Cause I'm using Kamal. I'm using Camal for my deployments, which I freaking love. It's just a good bare metal solution for deployments. And but I still am manually kicking it off. So Peter Ullrich: Yep. Me too. I also use Kamal to to deploy. There is an Elixir version of that. It's called Shamal with an X or Kamal Samal. Jacob Luetzow: okay. Peter Ullrich: So it uses Erling releases instead of Docker containers. But I don't I'm not not yet. I need to look into it. Jacob Luetzow: are you using that or no? I dockeriz everything. That's why it just made sense for me to jump to Kamal. Yeah. Peter Ullrich: Yeah. Yeah, me too. But but the I'm not sure about Shamal whether they have a proxy where they do a switch over after the application started, So with a Docker container, it's easier to bind it to Jacob Luetzow: Okay. Yeah. Peter Ullrich: a port that you then combine to the proxy. And Jacob Luetzow: Right. Peter Ullrich: if you execute it as a raw or Erling application, I don't think it it it does that, right? So Jacob Luetzow: Yeah. Peter Ullrich: I need to look into that. Jacob Luetzow: 'Cause at some point, right now I'm still on a single node as well, but Peter Ullrich: Mm-hmm. Jacob Luetzow: I just just for uptime, I'd if I ever have to update a server right now, you have to have downtime and I it would be nice to have at least like just two nodes Peter Ullrich: Yeah. Jacob Luetzow: going just so you can keep things updated easily more easily. I don't know. Peter Ullrich: Yeah. Yeah, I'm also on a on a single bare metal so far. That that is for begin beginning of next year to go to a multi node setup with a load balancer on front of it. Yeah. Jacob Luetzow: Yeah, and Kamal works well with that as well, I believe. So Peter Ullrich: They do. Yeah, you can also have timeouts in between deploys. So you do one deploy on one server, then you wait ten seconds, then you do the second server, Jacob Luetzow: Okay. Peter Ullrich: ten seconds, third server. So, you know, it's not like a everything goes Jacob Luetzow: Yeah, that's nice. Peter Ullrich: dark and then comes back. Jacob Luetzow: Right. Well, and I I like that it just ha it creates, the the Docker image. Peter Ullrich: Mm-hmm. Jacob Luetzow: So like it doesn't kill anything until the next the new Docker image is up and Peter Ullrich: Yeah. Jacob Luetzow: it's nice. Cause it's hard to rebuild that stuff manually. I tried for a really long time and I just never could do the same thing that Kamal's doing manually because I always had like 30 seconds of downtime. I'm like, damn it. Peter Ullrich: Yeah. Yeah. I I'd like to move away from it just because it's a a base cam, like a DHH product. yeah, it bothers me. Jacob Luetzow: yeah. I I don't get consumed in that drama. I just I find it entertaining and I think he's just a really good at trolling people. Peter Ullrich: That's how he made a name of himself, right? That's how people know him. But that is his marketing strategy. Yeah. Jacob Luetzow: Yeah. Yeah. It must be, yeah. Peter Ullrich: Yeah, it just like here in Europe and I'm in America too, but here in Europe it like hits into a certain nerve that is that we know is dangerous because that's how Jacob Luetzow: Mm-hmm. Peter Ullrich: we got World War One and World War Two. s so and what what he's doing and other people are doing it's it's very much just agitating. And then until until a point where Jacob Luetzow: Yeah, I get it. Peter Ullrich: it boils over, right? And then it's it's too late. So but Jacob Luetzow: Yeah, yeah. Peter Ullrich: maybe one day I'll find an alternative to Kamal, but not today. Jacob Luetzow: Yeah, for sure. All right, Peter. This was a lot of fun. Peter Ullrich: Yeah. I got one last question I wanted to ask you because I'm I'm thinking about a good way of informing my users of new ch features and and just t stay in touch. Like Jacob Luetzow: Yeah. Peter Ullrich: I was thinking either a newsletter, but then I need to opt in everyone and then they need to opt out if they don't like it. So that's kind of like tricky. I was thinking about a Discord server. That is what a lot of people go for these days, but I'm a little bit afraid of the support load that comes with it. Otherwise there's obviously an in app feature thing, new features released. I never look at those to be honest. So I'm not Jacob Luetzow: Yeah. Peter Ullrich: what do you think? What w what's your gut feeling? How would you like to be modified? Jacob Luetzow: What di I feel like Discord for a product, not necessarily but Discord for you, because you have more technical software developer people using it, you Peter Ullrich: Mm-hmm. Jacob Luetzow: might get a lot out of that. But maintaining and being present in a Discord server takes a lot of time. Like I have a Peter Ullrich: Yeah. It's the whole community thing, yeah. Jacob Luetzow: Discord server that I ignore a lot. And it Peter Ullrich: Yeah. Jacob Luetzow: could be a lot better if I made time for it, but it's like also not my favorite way of communication. So I don't know. Just like keep that in mind. what I do for Kin Switch is I have a change log. Peter Ullrich: Mm-hmm. Jacob Luetzow: Any user facing update goes on my change log. And then I do a weekly Monday email of what's new. Peter Ullrich: Okay. So you do a newsletter style newsletter? Jacob Luetzow: Yeah. And it's it's only to my user base and they can they can unsubscribe from marketing emails at any time or update emails and yeah. But that's Peter Ullrich: Okay. Yeah. Yeah, okay. Jacob Luetzow: what I do. Peter Ullrich: I think I will also go for that email thing. I I do some updates on Blue Sky and LinkedIn now and they usually perform well in terms of use. But I don't think Jacob Luetzow: Yeah. Peter Ullrich: I I reach, you know, people, like the my actual user base with it. So Jacob Luetzow: Yeah. And what's nice is I use a postmark for my email Peter Ullrich: Mm-hmm. Jacob Luetzow: and I know if things are delivered, if they bounce, if they've been opened. And so you can kind of track that stuff too with their webhooks. And it's kind of a nice it's nice, it's a nice feedback loop. Peter Ullrich: Yeah, yeah, I get that. Yeah. I used Button Down before. That's a newsletter platform and it's it's Jacob Luetzow: Okay. Peter Ullrich: really nice actually. It's also built by a bootstrap founder, so it's a really nice product. Yeah. Cool. Jacob Luetzow: Awesome. I like that. Yeah. Peter Ullrich: Well I will maybe I will go into that newsletter thing. Maybe not every Monday, but every two or three weeks if I actually have a bunch of new features. Jacob Luetzow: Yeah, I I don't like to span well, if there's no new features on my changelog, no email goes out. So Peter Ullrich: Exactly. Yeah. Jacob Luetzow: I c so I feel like a weekly cadence because sometimes I get a lot of features out. And so like Peter Ullrich: Yeah. Jacob Luetzow: an email could have five updates and then you might not hear from me for two weeks because I just didn't do anything. But yeah. Peter Ullrich: Mm-hmm. Exactly. Yeah, yeah, exactly. Yeah, I I think I will try that out. Yeah. Because I do have a bunch of features I need to announce now and I'm for this round I'm thinking what would be a good option. Yeah. Jacob Luetzow: Yeah. And I feel like people that opt into emails are usually interested. And like a lot of people open my change log emails. So I feel like it's a good way to update people that are interested. Cause like if you're not a user, you don't care what's in the changelog. But if you are Peter Ullrich: Yeah, no. Jacob Luetzow: a user, you care about what's new and improved, what bugs got fixed, you know. Yeah. Peter Ullrich: Yeah, yeah. Yeah, I think I will try that on. We have Isaac had another question I didn't see earlier. sorry, Isaac. He asked large screens okay, I I just saw it here. Yeah, Jacob Luetzow: I it didn't scroll. I I didn't see it either. Peter Ullrich: I I Isaac asked, Large screens are also not easy for UI UX. What if you full screen the browser window? Do you reflow section horizontally or stretch? Or do you put everything in a goofy width constraint diff? I put everything in a goofy width constraint if. Yeah. Jacob Luetzow: I was gonna say I also do that. if you open up my share links when you can share my notes and notebooks, it will be in a goofy constrained width. Just because Peter Ullrich: Exactly. Jacob Luetzow: you kinda have to. I don't know. It's a hard it is hard to especially like Peter Ullrich: Yeah. I I do have Jacob Luetzow: when it's marked down and people can align things and you kinda have to Right. You gotta have a format that's Peter Ullrich: Right. If it's text, the text can't be ball to wall, right? Yeah. Jacob Luetzow: constrained somehow. Peter Ullrich: Th there's actually I think the golden ratio of how wide a text can be for still still to be readable. I forgot what it was. It was like six or seven hundred pixels. Yeah, Jacob Luetzow: That sounds right. Yeah. Peter Ullrich: it's like this normal max four XL kind of width. So yeah, Jacob Luetzow: Mm-hmm. Peter Ullrich: otherwise you you feel it. If the text gets too wide then you you're eye has to travel further and then it just loses track and that kind of stuff. So Jacob Luetzow: That makes sense. you always hate, if you have to horizontally scroll to read something, you're not gonna. Peter Ullrich: Yeah. Yeah. Exactly. Jacob Luetzow: like when the git diff in like GitHub is the like a big markdown update and it's just a horizontal scroll. You're like, damn it. Peter Ullrich: Yeah. So so for me, I I do have most of it in a goofy width constraint div. So the the whole UI, Jacob Luetzow: Nice. Peter Ullrich: the issues and pull requests is all in there. But my divs and the CI logs, they are all full width. So this, Jacob Luetzow: Okay. Peter Ullrich: for example, yeah, if if I have a 32 inch screen, I can have massive divs from left to right. And then also have line wrapping. As you said, like you don't want to scroll horizontally, so you can wrap the line if you want to. Jacob Luetzow: Yeah, yeah. Peter Ullrich: And so for yeah, for this like where you need to show a lot of content, I actually do use full full width Jacob Luetzow: I feel like logs we accept that. 'Cause Yeah, and Peter Ullrich: Yeah. Yeah. Yeah, logs you just have so much text. Yeah. Jacob Luetzow: you're grepping normally and just finding what you're looking for and Yeah. Peter Ullrich: Exactly. Yeah, and and diffs as well, because yeah, you have code actually two code blocks left and right, so you need to see both at the same time. Jacob Luetzow: Yeah. Peter, you need to read SBCE, set-based concurrent engineering, to keep multiple options open and converge. One design is no design, in my opinion. Peter Ullrich: Engineering. I never heard about that. Interesting. Set. Jacob Luetzow: Dude, Isaac is just full of full of knowledge. He has recommended so many good resources to me. It's wild. Peter Ullrich: Right. So the approach of SBCE is the design of products and services in which developers consider sets of ideas rather than single ideas. To do this, developers use trade-off curves and design guidelines to characterize or describe known feasible design sets and thus focus the search of designs. They identify and develop multiple alternatives and eliminate alternatives only when proven inferior or infeasible. And they see this. So I yeah, so this approach yields substantial organizational learning. It takes less time and costs less in the long term. Okay. So the idea okay. So the idea is basically to open up the funnel of ideas and not go straight for one idea, but consider multiple ideas and then through the process eliminate them, and then have A final design. Yeah. Delay the selecting the final design until the team knows enough to make a good decision. Yeah, that that sounds about right. Yeah. Jacob Luetzow: That is against everything in my blood. I just, shoot from the hip. Yeah. And then you realize Peter Ullrich: You go you go for the first thing. Jacob Luetzow: it's a mistake and you have to re-engineer everything and write migrations. It's actually the worst way to do anything. Yeah. Peter Ullrich: Right. Yeah. Yeah. Yeah. Yeah. Yeah. I I well in my case because i I have a known issue, a known problem to implement. I can rely on others other forges like GitHub, GitLab, Tangled, Forjo. Jacob Luetzow: Yeah, yeah. Peter Ullrich: Like I have my cloud do the research for me for these kind of design like not for the UI design, but for technical designs. Jacob Luetzow: Mm-hmm. Peter Ullrich: I have my cloud do the research and then you know, I I also decide myself what I think is best, but I I can get there faster. I I think I do this, design process. Jacob Luetzow: Y your iteration rate or like loop is a lot faster, you know, just 'cause you can try Peter Ullrich: Yeah. Yeah. Jacob Luetzow: different things now. Claude can just change something for you and you can try it. You can go physically click on things. Peter Ullrich: Exactly. Yeah, and I did that just today. I I rebuilt most of the CI setting UI because it was too confusing. So I just simplified it to maybe twenty percent of what you had previously. And yeah, it's also, you know, l work like while you have a product out, improve it. Like iterative dev Jacob Luetzow: Yeah, yep. Peter Ullrich: design. Yeah. Jacob Luetzow: Yeah. A hundred percent. Peter Ullrich: All right. Well, yeah. Jacob Luetzow: All right, this was fun. We went on a a little rant for another thirty minutes, but that's all right. It makes it's good conversation. Peter Ullrich: That's all right. That's all right. Jacob Luetzow: All right, man. Well, I hope you have a good weekend and everyone that tuned in also have a good weekend. And yeah, we'll be keeping an eye on on Peter. He's always up to something. Peter Ullrich: Yeah, if you if you want to follow along, best way of doing that is Bluesky. I'm at peterolik.com. A link I'm also active on LinkedIn now these days, so you can add me there. pushin.eu is the website. I do have a personal blog at peterolig.com, but I haven't updated it in a while. And I'm sorry for that. but yeah, these are the the best ways of of reaching me. Jacob Luetzow: Awesome. Great. All right, guys. See you later. Peter Ullrich: Thank you, Jacob. Bye bye.