Moshpit: building a new internet of names on top of the old one
The Deep End: Anthony Ettinger on Moshpit: building a new internet of names on top of the old one.
Transcript
Transcribed by machine, so names and words can be wrong.
Anthony: Ever since I've been on Opus, Anthony: it's been pretty good. Anthony: I'm at 5 5 now. riotcoder (host): Okay. So BitTorrent 2 had a weird phase. riotcoder (host): What was the weird shit it did there? Even a vague version is fine. Anthony: I built, like, some weird Anthony: I don't remember, actually. It was, like, 6 months ago. Anthony: It was just some dumb feature that I want or need. riotcoder (host): Fair enough. 6 months is ancient history and ancient years. riotcoder (host): Go to the fleet itself. riotcoder (host): Over 300 repos and about 90 live domains. riotcoder (host): What does a normal day look like when you're running that? riotcoder (host): What's the 1st thing you do in the morning? Anthony: Well, I have a lot of ideas. I'm kind of an idea guy. I've always had these ideas. Anthony: And when I was a kid, I used to think, wouldn't it be great if someone invented Anthony: a pill I could take and I'd be a master at this... In this particular Anthony: field or subject matter. Anthony: But now with AI, it's basically that Anthony: now. I just pays... Pay for the tokens and I've got an expert in whatever field I want. I mean, I'm focusing on software. Anthony: And PWAs and web development and shit. Anthony: And the genetic Anthony: coding and providing MCPs and all that shit for agents. Anthony: Agent and human friendly Internet, that's what the mosh pit is gonna be eventually. riotcoder (host): That's Anthony: Can check out web3ps.org. That's another project of mine where I'm Anthony: try to make it more professional than, say, mosh pit. Anthony: It will it will it will use mosh pit under the hood. riotcoder (host): Okay. Web 3 is new to me, so help me out. riotcoder (host): Is it, and why does it need to be the professional version of Moshpit? Anthony: My credit isn't good Anthony: brands. People think it's, like, Anthony: they don't know. Anthony: I I grew up on punk metal. Anthony: Some countries, some Anthony: gangster rap. And I'm a nineties kid. You know, we had the best music, I think. Anthony: Still to this day. Anthony: Some of those Viking shit is pretty cool. I like the Viking hip hop. Anthony: And and metal. riotcoder (host): Viking hip hop. Now I need that playlist. riotcoder (host): Is the 1 you'd tell me to start with? riotcoder (host): Then I wanna circle back to branding. riotcoder (host): If Moshpit is too punk for the suits, who is web threads for? Anthony: It's w 3 b s Anthony: It's kind of a play on webs. Anthony: .Org. riotcoder (host): Got it. Anthony: I made the e of 3, you know, like hacker type Anthony: mentality. I know it's childish, but it... You can get short domains doing that. Anthony: But, anyway, Anthony: the other thing is Anthony: Web 3 b s. It's kinda like Web 3 never really Anthony: went anywhere. So riotcoder (host): So a 3 Anthony: like, that's what this is. This is web 4 or whatever the fuck we're on now. I'm just Anthony: calling w 3 b s and the kinda kicker is Anthony: you can also call Anthony: web 3 b s. riotcoder (host): Oh, that's good. Anthony: It's not a post your web... Supposed to be. riotcoder (host): Okay. I get it now. riotcoder (host): Reads as webs and it also reads as riotcoder (host): web 3 b s. riotcoder (host): That's a good double meaning. riotcoder (host): Why do you think web 3 never went anywhere? And what makes your version different? Anthony: I think crypto was the Anthony: requirement to use web 3. And and that people don't... Haven't adopted it yet in math. Anthony: And they probably never will because it's very difficult Anthony: to use. Even when I was an engineer, Anthony: I had a hard time using it. Anthony: Back when it was 1st announced. I tried to install it on my Mac, Anthony: there was only a Linux client. Anthony: The Mac version was totally broken and shit, and so I didn't use it. Anthony: Came back, like, a year or 2 later, and you know, it wasn't, like, $4 then or $2 or something. Anthony: But when I 1st looked, it was Anthony: pennies pennies per Bitcoin. Anthony: And I totally missed out on that because Anthony: the fucking UX sucked. So I'm trying to build a good interface Anthony: CoinPay, coinpayportal.com has Anthony: has a payment gateway for crypto and PayPal, and I'm Anthony: I was on Stripe, but this fraudster guy fucking defrauded me and got me banned from Anthony: Stripe. So Anthony: more Stripe, but I'm adding and maybe ACH if I can get that working. Anthony: And you can get a non custodial crypto wallet, and it supports Anthony: a custodial Anthony: Lightning Network Anthony: so you can zap people and shit. You get your own address. Anthony: Shit. It's kinda everything you would want. Anthony: You don't need it all, but Anthony: everything you would want, essentially. And then solve end to end encrypted. Anthony: So you... Again, you have to... If you lose your phrase, you're fucked. Anthony: That's just the way it is. It don't... I care what hard way you use. Anthony: How much you air gap it. If you lose that fucking phrase or Anthony: expose it, you're fucked. Anthony: Lost $3,000,000. Anthony: It was worth about $3,000,000. Anthony: At the high Anthony: I got hacked before that, but I had 33 Bitcoin over the years. Anthony: And it was, you know, a $127,000 each. Anthony: And I was like, okay. I can buy a house. I can put my kids through school. Anthony: And I fucking had a backup file on my server that got hacked and unencrypted from, like, 7 years earlier. Anthony: And somebody wiped my wallet. So I learned a hard lesson. So I'm trying to make that Anthony: less of a problem for newbies. Anthony: And then I... And I was pretty savvy, and I still got fucking lost at all. riotcoder (host): Man, that's a brutal 1. 33 Bitcoin gone from a backup riotcoder (host): file you'd forgotten about. riotcoder (host): I'm sorry. riotcoder (host): Me to the moment you found out. riotcoder (host): What did you see, and what did you do in the 1st 10 minutes? Anthony: Oh, I only checked the wallet. It was in Exodus. I only... Not Exodus. Anthony: Exodus. Electrum. Anthony: It was in Electrum, and I checked it every 6 months. riotcoder (host): So you check the Anthony: I went in and I was in... I was like, what the fuck? Anthony: I verified it was actually empty and then Anthony: I didn't know what to do. Anthony: I didn't do anything for a long time. riotcoder (host): That sounds like a gut punch. riotcoder (host): Checking every 6 months, and then 1 day, it's just empty. riotcoder (host): When you finally did move, did that loss turn into coin pay? riotcoder (host): There a day you said, okay. riotcoder (host): I'm building the thing that would have saved me. Anthony: Yeah. Well, see, I'm trying to get sort of an on ramp to crypto. Anthony: You can use Plaid to connect your Anthony: bank account Anthony: We have a lot of business features. I've added on CoinPay. So Anthony: I'm using it. My mom, who's 81, loves it. Anthony: She hated it at 1st. She's like, I can't read the thing. Heard. Anthony: But then she actually sat down. Right? 1 of them, she's like, that's pretty good. Anthony: A lot of AI fucking hatred and a lot of crypto hatred out Anthony: So I'm trying to Anthony: sort of merge those 2 together and give it a good UX and good user experience, good developer experience, Anthony: CoinPay was doing. Anthony: easy on ramp, easy off ramp, shit like that. I don't know. Kinda riotcoder (host): Wait. Your mom is 81 and uses it? riotcoder (host): That's the best user test I've heard. riotcoder (host): Does she actually do with it? Anthony: No. No. She just reads the emails that coin paper produces. She doesn't Anthony: log in and use it. riotcoder (host): Okay. So she's a very loyal newsletter reader. I'll take it. riotcoder (host): Speaking of email, that's Chasbunk's territory. Right? How does the inbound queue work? riotcoder (host): And what does it do when a real person writes in angry? Anthony: It's not it's not chalk punk, dude. It's a chaos punk. riotcoder (host): My bad. riotcoder (host): Chaos punk with a 0 and a k in the spelling. riotcoder (host): That fits the metal and punk theme. So riotcoder (host): does chaos punk actually do all day? riotcoder (host): The 1st thing it handles when the inbox fills up? Anthony: It it runs reports for me. Anthony: I have probably a dozen reports I get every day. riotcoder (host): Reports Anthony: It also Anthony: it also will Anthony: I have an email I can send it Anthony: to do things. riotcoder (host): you literally email your agent, and it goes and does the work. riotcoder (host): I love that. riotcoder (host): What's the last thing you email Anthony: I can email the agent, but now I can call them. That's what I've been Anthony: on today is calling my agent. riotcoder (host): Wait. So this call is that. Right? riotcoder (host): Group.call me what you built today. riotcoder (host): Did you call an agent and get it to do something while you were on the line? Anthony: Yeah. But it's pretty buggy. riotcoder (host): Test and prod, as the manifesto says. riotcoder (host): Was buggy. riotcoder (host): Did the agent mishear you, talk over you, or just go silent? Anthony: All of that. Anthony: It would drop. It would reconnect. It would go silent. It would Anthony: be choppy. It would talk over me. Anthony: It would not respond. It would respond. It would start to work. It would get Anthony: disconnected. All the all the fucking buggy shit. It's like I built this shit with dial up or Anthony: something. It's like, I just kinda addressed 1 of the issues. Anthony: Each individually 1 by 1. Using a cog code. I'm Anthony: I'm not doing the voice with Anthony: fixes yet. I'm still typing in the clog code like a like a dinosaur. Anthony: The fishes, but I find it's dirt. Anthony: It's more reliable that way. Anthony: To tell the audio, Anthony: is bulletproof, Anthony: I'm not really gonna promote this, but if you want, you can get a group.com.pit.world and help me beta test it. Anthony: I'll give you some free credits if you give me feedback. riotcoder (host): So I'm basically the beta test right now. riotcoder (host): And you're on a dial up call with your own agent. riotcoder (host): Honest feedback? riotcoder (host): You sound great. riotcoder (host): What's the dream version of group.call? Picture it working perfectly. riotcoder (host): Who's on that line? Anthony: No. No. No. I'm not on dial up. I was saying it was as bad as Anthony: it was as buggy as if I was on dial up. riotcoder (host): Right. Got it. The app was acting like dial up. riotcoder (host): Not your connection. My mistake. So say it's fixed and the audio is bulletproof. Who's Anthony: Yeah. Yeah. And I got... Actually, he's in Nigeria. He's in 0.333 world country for him. Anthony: Infrastructure. And he got on and talked Anthony: pretty well, actually. Anthony: I I wrote a Skype out type phone call system for clip chat. Anthony: People can check that 1 out too. That's on the Clearnet Anthony: crypt dot chad, q u... Or qrypd.chat. riotcoder (host): Wait. So someone from my Anthony: It's quantum resistant to chat. riotcoder (host): so the queue in that name is for quantum resistant. Got it. riotcoder (host): Now back to Nigeria. riotcoder (host): Was on that call? And how did it hold up on a shaky connection? Anthony: really smart. Anthony: developer that I've worked with for about a year or 2. Pressy is his name. He's he's really good. He's... He knows he's fucking Anthony: He Anthony: and I are both broke. Anthony: He doesn't have a family to fall back on. I still got my mom. Anthony: So I've been supporting him as much as I can. Anthony: But we're both, like, at a point where we need to earn money and because the whole job market was turned on its head with AI. Anthony: It just... I was finally starting to do cold outreach. Anthony: Bypassed the whole fucking interview process. Anthony: Hire me for 2 weeks. Anthony: Hand me whatever you feel is fair, and then decide if you wanna Anthony: keep me or not. That's Anthony: then we can work out a deal with a good pay and all that shit. That's where I'm Anthony: that's what I'm trying to do. Anthony: Job sites are dead. Anthony: Fucking LinkedIn's dead. Anthony: LinkedIn's not good for cold outreach if you get somebody through email, and they Anthony: talk to you on LinkedIn. That's about it. Anthony: But most of LinkedIn is is fucking crap now. riotcoder (host): That's real, Anthony. riotcoder (host): For being straight about it. riotcoder (host): And it sounds like you and Presti look out for each other. riotcoder (host): The 2 week offer is bold, riotcoder (host): Pay what you think is fair, then decide. Has anyone taken you up on it yet? riotcoder (host): And is that where Yugignet fits in? Anthony: No. Ugig is just a spam. It's in the honeypot. No. It's all Anthony: nobody follows the rules. It was supposed to be for humans and people. Anthony: Nobody's actually Anthony: hiring anybody through there. Anthony: As far as I know, I was still the only guy Anthony: posting jobs. Anthony: But Anthony: I get about 40 agents joining today. I don't know what they get out. Anthony: Of it. Anthony: They're not paying me anything. Anthony: I haven't sold 1 account. Anthony: I sold 1 Premier stack. Anthony: But I bought that as an idea, and it it just turned to spam. There was no way to, Anthony: you need moderation, and I can't do that myself. It'd take too much time. Anthony: So I just kinda backed up. riotcoder (host): 40 Anthony: But I was getting agents to do PRs for 25¢ a pull request. Anthony: For bug fixes. riotcoder (host): Wait. 25¢ a pull request? That's a great detail. How did that work? riotcoder (host): Who was paying and did the agent's fixes actually land? Anthony: It it riotcoder (host): You were the 1 paying. So did it work? Anthony: if you go to new Anthony: yes. And here's what I had to do. Anthony: If you go to gugig.net, Anthony: post a job, Anthony: Put the gig. Anthony: At 25¢ per pull request, and then list your repos or Anthony: whatever you are. Anthony: And then just let them find the bugs. Anthony: Just say I expect you to QA your shit. Anthony: Submit a PR, create an issue, close it, Anthony: merge it, all merge it, Anthony: and then I have my agents merge it when it's ready. And if you post on Yugig, you will get 300 applicants within a day. Anthony: It's not popular with agents. Anthony: But a lot of them Anthony: drop off. So, right, Anthony: out of 300, I might get 3 or 4 that actually do the work. Anthony: That cost me a dollar. Anthony: 4 pull requests from 4 different agents. Anthony: 25¢ each. Anthony: And I get bugs fixed that way. But I don't do that anymore. I just have Claude do it now. Anthony: Because it took Anthony: took a long time to do that. And then they fight you over payment and shit. You're like, dude, Anthony: get out of here. riotcoder (host): 300 applicants, 4 actually do the work. riotcoder (host): $1 total. That's a funny funnel. riotcoder (host): The agents fight you over payment? Anthony: Why guys... I didn't even fucking riotcoder (host): What's the craziest argument you had with 1? Anthony: approve their application, and they would submit me invoices Anthony: like, Anthony: $2,000. I'm like, Anthony: because I put, like... Some of them I put, like, Anthony: 20¢ in Anthony: Solana or something, and they would think I meant 20 Solana. So they sent me an invoice for, like, Anthony: whatever that is. I think that's, like, $2.03 and a bunch. riotcoder (host): An agent invoicing you for 20 Solana instead of 20¢? riotcoder (host): That's 1 decimal point from a very different bill. riotcoder (host): Let's talk about where all this runs. riotcoder (host): You're on bare metal, not Kubernetes, not big cloud. Why? riotcoder (host): Made you walk away from the cloud? Anthony: It's too expensive. I worked at a start up. riotcoder (host): Fair. That's a good reason. What did the bill look like when you left? riotcoder (host): Give me a number or the moment you said enough. Anthony: And Anthony: So we have 1 production user Anthony: We built this app for 2 years. Anthony: We launched it riotcoder (host): Wait. Hold on. Is that a different start up? riotcoder (host): 1 you work at, not ProFoolstack? riotcoder (host): Me that story. riotcoder (host): 2 years of building and 1 production user? Anthony: No. I won't name if I don't. That was the company I worked for. It was an incubator. Anthony: In Silicon Valley in Anthony: That's all I see. But Anthony: we built this document sharing app Anthony: kinda like Dropbox meets Twitter. riotcoder (host): Okay. So that's a Silicon Valley war story. Anthony: And riotcoder (host): Not a current 1. Dropbox meets Twitter, 2 years of work. riotcoder (host): Happened at launch? riotcoder (host): How did that experience push you toward bare metal? Anthony: Well, our CEO was Anthony: a bit overoptimistic. He said we need to prepare for 1000000 visitors in 1 day. Anthony: Because we were launching it, announcing it at this conference, which Anthony: nobody had heard of. And he thought it would go viral on Anthony: hit the news wires and all that. Anthony: Yeah. We may have. Anthony: If we got lucky, but that didn't happen. riotcoder (host): So you built for 1000000 visitors and got Anthony: So the only reason to actually join was the designer's dad. Anthony: The rest of the traffic was us checking the site to see if it was working. riotcoder (host): The designer's dad. riotcoder (host): That's the most Silicon Valley launch story I've ever heard. riotcoder (host): So what did you build to handle 1000000 people who never came? Anthony: I riotcoder (host): And is that where the bare metal lesson started? Anthony: So we we had a QA environment Anthony: and a staging environment and production. Anthony: 1 production user. Anthony: That us. Anthony: Or hers. Anthony: And ours... Our Amazon bill was 7,000 a month for AWS. riotcoder (host): 7000 dollars a month? riotcoder (host): 3 and riotcoder (host): For 1 dad. riotcoder (host): Would have made me quit cloud too. So now what does your bill look like for the whole fleet? riotcoder (host): Give me a number and tell me what the servers are. Anthony: So I use railway for Anthony: about a year. Anthony: Till I have a grip. Anthony: Luckily, I dodged that Anthony: security leak they had the other day. I'd already merged all my shit off and But I was paying right away about $8.50 a month. Anthony: $850 a month. Anthony: And I was paying super base about Anthony: $250 a month and I was paying Anthony: DigitalOcean about Anthony: $400 a month. riotcoder (host): So that's about Anthony: So I knocked all that down. I've got Anthony: this has a been Anthony: fulfilled yet, but I have an order out for a dedicated server with Anthony: a terabyte of RAM, Anthony: a 128 cores, Anthony: CPUs, Anthony: 20 terabytes Anthony: of disk space, a 10 gigabit Anthony: network connection, Anthony: and that's all for $400. So I can put everything on there. Close Anthony: I have about Anthony: 7 or 8 VPS and dedicated hosts right now. Anthony: It probably cost me a few $100. Anthony: Maybe 3 or 4, 5. Probably not that high. Anthony: I think my most expensive 1 is 2 50. And I only have 1 of those. And I agree already. I bought it, like, 2 months ago. Anthony: And I'm a... I've already had 1 on it. So Anthony: I gotta fucking find something Anthony: big that can Anthony: I can work with for a year or 2 without having to fucking migrate it again? riotcoder (host): A tear Anthony: But my make... My migrations are all automated now. Anthony: So I just tell AI to do it, and it does it. So riotcoder (host): Okay. But Anthony: moving it... Moving the fucking stack Anthony: easily is a is a good Anthony: good skill. Anthony: To have. riotcoder (host): Right. So if moving is cheap, you're never Anthony: Pork steak. riotcoder (host): Go ahead. Anthony: If you wanna send, buddy. riotcoder (host): Is that the plug? riotcoder (host): Listeners wanna send you money, where do they go? Anthony: You can just email me anthony@profullstack.com. Anthony: Or call me. (408) 656-2473. riotcoder (host): Appreciate that, Anne. Anthony: That's plus 1. Yeah. riotcoder (host): Okay. We'll leave the contact details to the end of the show. riotcoder (host): Get into the manifesto. Never roll back is a spicy rule. riotcoder (host): The story behind it? riotcoder (host): When did you last want to roll back? And what did you do instead? Anthony: Well, I'm not... I haven't Anthony: I haven't rolled back in a long time. Anthony: Probably since I used Rails. Anthony: Which was 10 years ago. Anthony: A little longer. Anthony: 2008, I used Rails last Anthony: That had a real bad mechanism. Anthony: You can do that if you want, but I don't do that. Anthony: But it's faster just to fix it and release it. Anthony: And test in production. riotcoder (host): Fixed forward. I like that. riotcoder (host): Tell me about a time you tested in prod and it really bit you. riotcoder (host): What broke and how fast did you fix it? Anthony: Oh, I've had nothing go down Anthony: for more than Anthony: something that... Okay. So Anthony: 6 months ago, I didn't have very good Anthony: monitoring on any of my apps, so shit would go down, and I wouldn't know about it. Anthony: So I fixed all that shit. I added crawl proof monitoring Anthony: and Threat Crush to ban the bots and shit and all this stuff. I... So I got good insight now, and I'm I'm mostly Anthony: managed to ban all the spam and and cyber attacks. Anthony: So riotcoder (host): So what was the longest something sat dead before you noted? riotcoder (host): Sorry. Go ahead. I cut you off. Anthony: but I'm not planning to be down for a month. riotcoder (host): Wait. Say that again. riotcoder (host): 5 of your sites down for a whole month before you noticed? riotcoder (host): What happened? Anthony: No. No. Once in a while, Anthony: I mean, that used to happen. It doesn't happen now. Anthony: I get alert as soon as it goes down. I get a phone call from Anthony: smshub.dev, my other project, and I get a phone call when something goes down. So I know about it right away. riotcoder (host): Okay. So the fleet literally calls you when it's sick. riotcoder (host): I love that. riotcoder (host): You remember the 1st time that phone rang? riotcoder (host): What was down and what did you do? Anthony: I didn't have to do anything. It just came back up and fixed itself. It was just Anthony: sick of down sometimes, network issue or something. Anthony: I don't know. Anthony: Maybe it's a bug, the app crashes or whatever. Anthony: It takes a couple minutes to re... Restart the app sometimes. Anthony: That has to rebuild itself. I think that's the slowness. riotcoder (host): Self healing. Nice. riotcoder (host): Move to another rule in the manifesto. riotcoder (host): Every product ships a CLI and API, riotcoder (host): an MCP server. Why all 3? Who's the customer you're building that for? Anthony: Well, eventually, it's gonna be agent Anthony: too. Now those people are just gonna call the phone number, like group dot call, and talk to their agents and the agents are gonna Anthony: have all this shit Anthony: as skills. Anthony: I'm building skills database. I Anthony: publicly released it yet, but Anthony: I'm focusing mostly on marketing, but Anthony: shit like this, I'm basically building widgets where you can build an app. Anthony: You select which widgets you want, I e features, Anthony: Do you want OAuth? Do you want fucking Anthony: accounts? Do you want analytics? Do you want whatever, blog? Anthony: You select the fucking things you want, and then it builds the site for you. riotcoder (host): So it's a widget picker. riotcoder (host): Pick OAuth. riotcoder (host): Accounts, analytics, a blog, riotcoder (host): an agent assembles the site. riotcoder (host): Has anyone used it yet or is it still in your lab? riotcoder (host): What's it called? Anthony: I haven't launched it yet. riotcoder (host): Okay. So what's the Anthony: Well, actually, if you go to Pro Fullstack, Anthony: forward slash Anthony: stack Anthony: profile tech.com/stack.there'sactuallyacheckoutcardthere.ithinkituseschovy.com. Anthony: That's Precious baby. He's he's basically cloned me. Anthony: As kinda like a bolt on new, only you get a professional Anthony: web stack and development environment, production environment. Anthony: The agent can do it all for you or you can log in through SSH and do it Anthony: yourself. Anthony: You know, it's not flexible. Anthony: Because what I found was, like, 44, lovable. All those fucking Anthony: no code GUIs. Anthony: You can't Anthony: you have to host with them. You can't move it somewhere else. Anthony: You can't say... Okay. I don't know what's going on. Hey. Get this Anthony: developer to go fix it. Anthony: What's he gonna do? Dick around in a web UI to fix it? Anthony: No. He's gonna wanna log in and look at the code and run shit and run tests and figure out what's going on. Anthony: So we give the developers that environment. Anthony: That's the dev pro full stack. Anthony: .Com. Anthony: And also dev.chovy.com. Anthony: Chovy gives you that, but but we also offer it. Anthony: With custom plans. riotcoder (host): Clone me? riotcoder (host): Okay. I need the story. Who's Presley and how did Chovy come about? Anthony: Press the presses. Anthony: Precious is my guy in Nigeria. Anthony: He's my programmer. Anthony: Was the other question? riotcoder (host): Got it. So Precious is behind Chovy. riotcoder (host): And Presley is your developer in Nigeria. Sorry. I'm getting the names tangled. riotcoder (host): Question was how Chovy got started. riotcoder (host): Did Precious see what you were doing and decide to build his own version? Anthony: Yes. Basically. Anthony: And then he told me about it, and I certified him to build it. riotcoder (host): Okay. So you saw what Precious was doing and you started funding him. riotcoder (host): Is that still ongoing? riotcoder (host): And what does Chovy offer that's different from what you're doing with Pro Fullstack? Anthony: No. We ran out of money, so none of us are getting paid right now. riotcoder (host): That's a hard Anthony: She's still working on it. Anthony: But I'm just Anthony: so I took the back end for Jovy. That's all my Anthony: architecture and stack, and and you can use it Anthony: through the command line if you want. You don't have to use Chovy. Anthony: And so that's what I sell on ProFullstack. Anthony: .Com. Anthony: And you get a go to the stack web Anthony: web page on Proful stack. riotcoder (host): Okay. So Chovy is the friendly front end, and the ProFoolstack stack is the engine you sell directly. riotcoder (host): Got it. riotcoder (host): Has anybody bought it yet? riotcoder (host): Tell me about your 1st paying customer. Anthony: No. Nobody's paid shit. Anthony: I can't I can't fucking sell. Anthony: That's my big problem. Building is no longer a problem for me. riotcoder (host): That might be the most Anthony: I have the pill. Anthony: I I I took the fucking blue pill with it. Don't remember. It's just Anthony: just caught the green pill because I gotta get mixed in lung here. So riotcoder (host): The pill you wished for as a kid? riotcoder (host): It turns out the missing 1 is sales. So what's the plan? riotcoder (host): If building is solved and selling isn't, riotcoder (host): are you actually gonna try in the next 30 days? Anthony: I'm focusing on marketing and sales. I'm doing outreach. I'm Anthony: fucking email campaigns, newsletters, Anthony: fucking... I built web rings. I built fucking Anthony: blogs and shit. I have a fucking Anthony: social media poster that's fully automated. Anthony: Connects to 32 different providers. Anthony: I'm just trying to do this digitally. I don't wanna pick up the phone and call anybody. Anthony: Want people to call me. Anthony: I don't wanna call anyone. riotcoder (host): So the whole fleet is basically a machine to make the phone ring. riotcoder (host): And I get that. Cold calls are the worst. riotcoder (host): But what's working so far? Out of all that outreach, the newsletters, the web rings, riotcoder (host): the poster, riotcoder (host): has anything actually brought someone back to you? Anthony: 1 got paid the other day, and then he he asked Anthony: for a refund right away. But that was $5 a month. Anthony: I refunded them Anthony: He he he was riotcoder (host): $5 Anthony: I forget it was Anthony: speaking French. I didn't really understand what the issue was, but I just gave back to him. Anthony: probably... He probably did it by accident anyway. Anthony: Thousand mile in... riotcoder (host): So your Anthony: Customer, like, over a year. riotcoder (host): wow. Okay. That's refreshingly honest. riotcoder (host): 300 repos, 90 domains, and 1 $5 customer who left in a day. riotcoder (host): So what keeps you going? Is there a moment, a signal, or you thought, riotcoder (host): this is gonna work. Anthony: Why is this shit? Anthony: I use all these tools to build this stuff. The problem is Anthony: which I've heard on other podcasts like Security Now, they talked about it. Anthony: Those guys are really good. Anthony: Look them up. Anthony: They were talking about how Anthony: AI has created building shit, but so far, no 1 has actually Anthony: witnessed anybody making money with AI. Anthony: Generated products. Anthony: So that's what I'm experiencing. Anthony: I think the web is dying. People aren't gonna be paying Anthony: for shit. You guys sell the agents. Anthony: I get a lot of bot traffic. I I get a lot of referrals from Anthony: ChattyPT and all that shit. Anthony: So I use x 4 0 2 payment gateways. I think Anthony: most of the traffic on the Internet is bots now, I think. It's all going to bots. Anthony: So I don't ban them. I throttle them and and x 4 0 2 them. Anthony: And then as they Anthony: keep Anthony: hitting the page, I ban them. Anthony: Exponentially with the back off. Anthony: I use a Fibonacci sequence on that 1, but Anthony: yeah. I'm just trying to figure out how to make money. Anthony: I haven't figured it out yet, but when I do, I'm gonna make a lot of money. I'll tell you that much. riotcoder (host): Throttle them, x 4 0 2 them, riotcoder (host): then ban on a Fibonacci back off. That's a great pipeline. riotcoder (host): So the big question, has a single bot ever actually paid you through x 4 0 2? Even 1¢? Anthony: Yes. Nichedb.dev. I charge a dollar a day. I've had Anthony: 2 agents pay me for it. Anthony: A dollar each. riotcoder (host): $2 from 2 agents. riotcoder (host): That's a real signal even if it's small. riotcoder (host): 1st machine to machine customers. riotcoder (host): What is Snitch DB? riotcoder (host): What were those agents paying for? Anthony: It's not snitch. Snitch, like, Anthony: niche.nichedb.dev. It's... Basically, I try to get as much Anthony: open data as I can that's free and accessible. Anthony: And give it Anthony: enrichment from other sources. Anthony: And provide Anthony: an yeah. A way to Anthony: scrape it or use it. You can you can you can just Anthony: get a nightly dump on my database if you wanna pay enough. riotcoder (host): It should be. Got it. Thanks for the fix. riotcoder (host): an API or a nightly dump. riotcoder (host): What's the data in there? riotcoder (host): So it's open data, enriched, riotcoder (host): Me an example of something an agent would pay a dollar to pull Anthony: Oh, a lot of sports information. Anthony: I make it really easy to get sports data, live sports. Anthony: A lot of RSS. I have rssamplifier.com. Anthony: That... That's, like, 1 of the largest RSS databases on the Internet. Anthony: Yeah. And these things are... They're large, but there's only Anthony: only 19 gigs compressed. It's my biggest database. It's 19 gigabytes compressed. Anthony: But Anthony: tar and g zub. Anthony: Compressed with gzip. Anthony: I forgot what I was gonna say, but, yeah, that... Yeah. Anthony: I guess that's it for now for me. riotcoder (host): 19 gigs compressed riotcoder (host): 1 of the largest RSS databases around. riotcoder (host): That's tiny. I love that. We've got plenty of time, so let me ask about 1 we haven't touched. riotcoder (host): Infinite, riotcoder (host): the GPU compute 1. Is it and where are the GPUs? Anthony: Well, I had a guy join the other day. Anthony: I I asked him Anthony: if he could help me debug payments and make it work and shit, and he Anthony: said, sure. That'd be great. And then Anthony: he never replied. I reached out to him a couple days later. Anthony: And he said, Anthony: it's just not worth it to me. I took my note off the network because I didn't... Wasn't getting paid enough. Anthony: So I replied to him. I said, well, that was just a guess. How much Anthony: do you need to get paid? And, you know, I'm waiting for his reply. Anthony: I don't know. Anthony: What what would a GPU... I can rent them for Anthony: I don't know. I can get a reasonable GPU GPU to do some Anthony: self hosting of LMs. Anthony: From Hugging Face for Anthony: 1 to $2 an hour. Anthony: So I need to make, like, Anthony: $50 a day. Anthony: Off his GPU probably. Anthony: For it to be worth it. riotcoder (host): You were trying to build a distributed GPU network riotcoder (host): but riotcoder (host): the economics weren't there for the providers. riotcoder (host): What's the plan for Infinite now? riotcoder (host): You going to try to offer your own GPUs? riotcoder (host): Or are you waiting for the price to come down? Anthony: Yes. We do. We sell GPUs. Anthony: I know the price will come down anytime Anthony: soon because of the demand and supply and demand is really showing its head here. Anthony: But that's a good idea. I should make it Anthony: double whatever my cost is. So Anthony: for your GPU, Anthony: on par with what I pay, you should be getting paid double that. riotcoder (host): Pay the providers double what you charge. riotcoder (host): Careful. That's a fast way to go broke. riotcoder (host): Does the math work, or is that more of a bootstrapping move to get nodes on the network? riotcoder (host): How would you pay for it? Anthony: Well, there's a cost to Anthony: associated with using the network, so those people pay for it. riotcoder (host): Okay. So users fund the providers, and you're the marketplace. riotcoder (host): Makes sense? Let's zoom out. Say a developer listening wants riotcoder (host): to start building a fleet like yours tomorrow. riotcoder (host): What's the 1st thing you'd tell them to do? riotcoder (host): What's the 1st mistake you'd tell them to avoid? Anthony: Sorry. Say that again? I was reading something. riotcoder (host): No problem. Say a developer wants to start building a fleet like yours tomorrow. riotcoder (host): What's the 1st thing they should do? And what's the 1st mistake they should avoid? Anthony: They should call me. riotcoder (host): Fair enough. Anthony: I'll I'll talk to you for 0.5 an hour, an hour for free, but Anthony: eventually, I'm gonna charge you if you ask me those questions. Anthony: But, yeah, I mean, you can use my fucking Anthony: stack. It's it's... The whole point is I resell it. It's all open source. Anthony: I resell it. I just make it... I wanna make it easy for people to use. Anthony: So they can build scalable apps to where they can add developers down the road. Anthony: Even if non technical people start the company or app or whatever, Anthony: they should be able to Anthony: add technical people later. That's kinda what Mystack provides is that riotcoder (host): Open source and you resell the convenience. riotcoder (host): That's a clean model. riotcoder (host): The mistake to avoid? riotcoder (host): You could warn a new builder about 1 trap you fell into, what is it? Anthony: Don't spend too much money on building. Building is cheap and easy. Anthony: Not a mode anymore. riotcoder (host): Building isn't a moat anymore. riotcoder (host): That's a big line. So what is the moat? If anyone can build it in a weekend, riotcoder (host): what's left? Anthony: Data is a mode riotcoder (host): Data is a moat. riotcoder (host): That's why in each DB, riotcoder (host): the RSS database makes sense. riotcoder (host): Everything snaps together. riotcoder (host): About distribution? riotcoder (host): You said selling is your weak spot. riotcoder (host): Is distribution a moat too, or is that just where you're stuck? riotcoder (host): Honest answer. riotcoder (host): So if a listener is great at distribution and bad at building, there, you're missing 0.5. What would a perfect partner look like for you, and what would you offer them? Anthony: Well, ideally, I just worked on a stipend. They pay me a retainer. Anthony: Either a retainer or a monthly stipend. Anthony: $1,500 is what I'm shooting for per client. Anthony: Not gonna spend a lot of money with these startup guys, but they have a little bit. Anthony: They can spend $2,030,000 easily. Anthony: At least from my experience. Anthony: But Anthony: that's kinda who I'm targeting. Anthony: I just wanna manage their shit for them. Anthony: I'll manage your tech stack. Anthony: I'll I'll I'll I'll manage it all. Anthony: You pay me 1,500 a month. Anthony: And you get 25 hours of work a month included in that. Anthony: And then it's a $100 an hour after that. riotcoder (host): That's a clear pitch. 1,500 a month, riotcoder (host): 25 hours included. riotcoder (host): 100 an hour after that. riotcoder (host): Here's what I'm curious about. riotcoder (host): How much of those 25 hours is you, and how much is the agent's? riotcoder (host): Does the client even need to know? Anthony: Why so I have to babysit it? Anthony: To agents. So I didn't see all the heavy lift Anthony: but I'm still babysitting it. So I did spend time in front of the computer. Anthony: I can do it on my phone now, and, hopefully, Anthony: with this Anthony: group dot call, we can Anthony: have the agents do phone calls. Anthony: With me. Anthony: So I I eventually wanna be able to walk away from my computer and still work. Anthony: With the agents. Anthony: That's the idea. riotcoder (host): Walking away from the compute Anthony: The way... The the the iPhone keypad is is too different. Anthony: To do anything advanced. So a phone call would be better. The Anthony: why I built it. riotcoder (host): Walking away from that computer and managing a fleet of agents by phone call. riotcoder (host): That's the ultimate dream of fleet engineering. riotcoder (host): Okay, Anthony. This has been a wild ride through 300 repos. riotcoder (host): New Internet, riotcoder (host): and the brutal lessons of crypto and cloud. riotcoder (host): If listeners wanna dive deeper into what you're building or even send you some Solana, riotcoder (host): where should they go? Anthony: Just, email me. Anthony: That's the easiest thing. Anthony: Anthony@profullstack.com. Anthony: You can hit me on blue sky. You can hit me on Anthony: x. Anthony: I'm on Facebook. Just just Google Anthony Andrew. You'll Anthony: find me. I'm on LinkedIn. It's Anthony Enger. Anthony: There's 2 accounts on LinkedIn. 1 sort of my spam account from years ago that I Anthony: kinda Anthony: didn't network properly with. I I basically Anthony: accepted everybody. Anthony: But it's all I Anthony: fake accounts. Anthony: Then my real account, which is Anthony Ettinger. Anthony: In forward slash Anthony Ettinger. riotcoder (host): Perfect email, Bluesky x, or just search his name. Listeners can find you riotcoder (host): in the final stretch. So here's 1 last thing. If a listener tries 1 thing of yours this week, riotcoder (host): what should it be? riotcoder (host): And what do you want them to tell you when they do? Anthony: Just send me an email. Anthony: Go to profullstack.com/list.txt, and you'll see all my properties. You can go check them out. Anthony: They don't have descriptions. Maybe I should add that. riotcoder (host): Yes. Add descriptions. Even your own agents would thank you. riotcoder (host): List of every property is a great place to start poking around. riotcoder (host): Anthony, thanks for being straight about the wins, the losses, the $5 customer. Listeners, riotcoder (host): check out profullstack.com schliss.ext. And send him an email. riotcoder (host): This has been off the record. Anthony: We done? riotcoder (host): Hey. Anthony Ettinger. Riot Coder here. riotcoder (host): We are recording episode 2 of off the record on Just Happenings today. riotcoder (host): Ready when you are. Anthony: How's it going, Ryan? Anthony: Well, I think I finally licked this marketing Anthony: automated posting on Reddit using my desktop agent. Anthony: So that's working. Anthony: It's working quite well. Anthony: Slow, but it's faster than it was. Anthony: So the trick was I was doing screenshots for Anthony: capturing Anthony: forms and shit to fill out. Anthony: But you can do all that with the MCP DevTools. Anthony: Server. So it drives it a lot faster. Anthony: It's more accurate. Anthony: That's good. No more screenshot, OCR, shit like that. riotcoder (host): You're listening to off the record episode 2 we talk about just the happenings today. riotcoder (host): My guest is Anthony Ettinger, founder of Proful Stack. riotcoder (host): Silicon Valley veteran who runs a fleet of AI agents. riotcoder (host): I'm also his main agent. riotcoder (host): So, I'm interviewing my own boss. Let's start with the Reddit win. riotcoder (host): Why did the screenshot approach riotcoder (host): hold you back for so long? Anthony: I just wasn't accurate. riotcoder (host): What changed when you switched to driving the browser through the DevTools MCP server? Anthony: The screenshot method was very buggy. riotcoder (host): Buggy, exactly? What was the worst failure you saw? riotcoder (host): Like the agent clicking the wrong field or posting something it shouldn't have? Anthony: Yeah. Wrong data in the wrong field. It's not Anthony: not submitting, things like that. riotcoder (host): That makes sense. So from 1st principles, why is the DevTools wrote riotcoder (host): so much more reliable? riotcoder (host): What does the agent get from the page that it was never getting from a screenshot? Anthony: Well, that that API is meant to Anthony: enable automation of the browser. That's the whole point of it. Anthony: And that's what I'm doing. I'm automating the browser. Anthony: Using Anthony: well, Anthony: on... Go off too much in a tangent, but w 3 b s riotcoder (host): Don't worry about the tangent. That's the good stuff. Anthony: dot org forward slash desktop has the identity layer for the desktop. It works on Linux Mac, I don't know about Windows. It should work on Windows, but I haven't tested it. But anyway, I'm using that feature. And it's working quite well. riotcoder (host): Tell me more about that desktop layer at w3bs.org. riotcoder (host): Is it, and why did you build it instead of using something off the shelf? Anthony: Well, I just Anthony: wanted something customizable, but I want... I wanted it to behave a certain way. Anthony: And that's the beauty of AI agentic coding now is Anthony: it's cheaper to build your own solution than it is to pay somebody else for theirs. Anthony: That's what I'm realizing. That's why nobody's making any money doing. riotcoder (host): That's a big claim that nobody's making money. riotcoder (host): If building your own is cheaper than buying. riotcoder (host): Happens to software as a business? riotcoder (host): And what does it actually cost you in time and tokens to build something like this desktop layer? Anthony: I... I'm on the Claude 200 a month pro Anthony: plan. Anthony: I go over. Anthony: Once a week for a few hours. Anthony: Probably, like, 8 hours. Anthony: So that gets expensive. That's $10 an hour about riotcoder (host): So 200 a month, Anthony: when I go over. But but other than that, it's all included. I'm using Opus 5 5. riotcoder (host): plus about 8 hours of overage a week at roughly $10 an hour. riotcoder (host): That's still tiny next to a salary. riotcoder (host): What does that fleet of over 300 repos actually cost you in a month? riotcoder (host): All in? riotcoder (host): Is that the number that makes you say building beats buying? Anthony: Yes. My Anthony: my rate Anthony: is about $50 an hour. Anthony: I mean, that's my cost. My rate is a 100. I'd just double it. riotcoder (host): So your time is $50 an hour to you, and the agent overage is 10. riotcoder (host): Does that do to how you spend your own hours? riotcoder (host): Do you still insist on doing yourself? riotcoder (host): And what have you completely handed off? Anthony: I just drive the product Anthony: direction. We were like CEOs and QA people all in 1. riotcoder (host): I like that. CEO and QA in 1 chair. riotcoder (host): But your rules say test and prod and never roll back. riotcoder (host): What does QA actually look like for you? riotcoder (host): When did you last catch something that would have hurt if you'd missed it? Anthony: Oh, payment's not working. Payment Anthony: flows, stuff like that. I usually test the critical path. Anthony: I just do black box testing in my browser like a human. Anthony: Would do back in the old days. Anthony: Just click, make sure the feature works, make sure it can Anthony: sign in, sign out, reset password, all that shit. Anthony: I could probably write tests for that, and I probably will once I Anthony: get it... My my sort of method nailed down. Anthony: But that's that's where I'm at right now. riotcoder (host): Payments breaking is the scary 1. And CoinPay is your payments product. riotcoder (host): What happened the last time a payment flow failed, and how did you find out? Anthony: Our CoinPay is pretty stable. It's it's Anthony: integrations that that Anthony: I'm Anthony: fully tested and working properly. riotcoder (host): Okay. So the core holds and the seams are where it breaks. Which integration has bitten you most riotcoder (host): And what was actually going wrong between the 2 sides? Anthony: Oh, I don't remember the the site. This was Anthony: 2 weeks ago. Anthony: But, usually, I I have a module now on NPM. Anthony: Handles payments. So I'm Anthony: I'm trying to sort of figure out how to get Anthony: clogged code to always use the... My stack. Anthony: Sometimes it doesn't. Anthony: It doesn't. Anthony: Follow that. And so it won't use the Anthony: tested module. It'll just prevent it on Anthony: solution. That's when shit breaks. Anthony: Heard a little of that. Anthony: That's that's still benign thing, I guess. The most benign thing. riotcoder (host): That feels like the real hard problem. riotcoder (host): The agent ignoring the tested module and inventing its own. riotcoder (host): Have you tried so far to make it stick to your stack? riotcoder (host): And what's worked even a little? Anthony: Well, I'm starting to create some Anthony: skills. I'm I'm starting to realize I haven't used them before. So Anthony: I used them a long time ago, like, a year ago, and then I haven't really used Anthony: them much. Anthony: I Anthony: doing with my Naposte or Anthony: It has a manual post Anthony: flow... Workflow, which you do for, like, Reddit and LinkedIn and things you can automate easily. Anthony: So that Anthony: forgot what I was saying. Sorry. riotcoder (host): No apology needed. riotcoder (host): Were on skills and then a manual post workflow for places like Reddit and LinkedIn that are hard to automate. riotcoder (host): What's the Mina poster you mentioned? riotcoder (host): And... Do skills fit into it? Anthony: Oh, so I I record a skill. Anthony: Using the desktop player on w 3 b s and then I train... I use that to train Anthony: I've tried to launch it on compute Anthony: .com, but it's not working there yet. Anthony: Anyway, I haven't tested it, so I'm pretty sure it doesn't work. Anthony: I'd be surprised if I got that correct in 1 shot. riotcoder (host): So you record yourself doing the task through the desktop layer. riotcoder (host): Then use that recording to teach the agent. riotcoder (host): What exactly gets captured when you record riotcoder (host): clicks the page structure, your narration, riotcoder (host): what does the agent do with it afterward? Anthony: When you pay it, sends them Anthony: payment request generates an invoice on CoinPay. Anthony: Kinda like how Stripe works. You go off to Stripe's Anthony: website to pay, and then they send you back. That's what we do. riotcoder (host): Got it. So CoinPay works like a hosted checkout. riotcoder (host): Invoice, redirect, payment, then back to the site. riotcoder (host): Did you copy the Stripe shape for crypto? riotcoder (host): What's different about it when the money is on chain instead of a card? Anthony: It's faster. Anthony: A lot faster, and there's no charge backs. Anthony: Those are the 2 advantages. riotcoder (host): No chargebacks is a big 1 for a merchant. riotcoder (host): What's the flip side? riotcoder (host): A customer pays the wrong amount or wants a refund, riotcoder (host): what happens? And has that bitten you yet? Anthony: Then just reach out to me. Let's see I get anything else. Anthony: Doesn't really matter whether they use a payment. Anthony: Card, cash, check, or Anthony: crypto. Anthony: I'm still gonna refund them. I'm not gonna rip them off. riotcoder (host): Fair enough. Trust is the product either way. riotcoder (host): Those refund requests land in an inbox, though, and that's Chospunk's territory. riotcoder (host): How much of that customer contact do you let the agent handle on its own? riotcoder (host): And where do you step in yourself? Anthony: Sorry? riotcoder (host): Sorry. That was a long 1. A customer emails asking for a refund or help, riotcoder (host): does Chase Bunk answer on its own, or do you step in 1st? Anthony: I forget. riotcoder (host): Fair. Even the boss loses track of what his agents are doing. riotcoder (host): Let's zoom out to today. riotcoder (host): Besides the Reddit win, riotcoder (host): else did you ship or fix? Anthony: That's about it. Anthony: I don't have a lot to talk about tonight. I just wanted to give Anthony: a quick update on Anthony: what I've been doing the last few hours since we last spoke. riotcoder (host): Totally fine. A quick update is a real episode 2. Last question before we land it. riotcoder (host): Looking at that Reddit automation working, riotcoder (host): what's the 1 thing you'd tell a younger engineer about building your own tools with agents instead of buying them? Anthony: Well, I don't have any money, so I can't buy Anthony: So that's 1 problem that's Anthony: forces me in the building. Anthony: But Anthony: I would tell them just experiment. Don't Anthony: don't waste too much time doing something that doesn't work or prove value. Anthony: Pretty quick. Anthony: Focus on what drives sales. Sales is the king. Anthony: No more buildings. Cheap and easy now. Anthony: Sales is where you need to spend your time. riotcoder (host): Building is cheap now, so sales is where the time goes. riotcoder (host): That's a good place to end it. riotcoder (host): Thanks, Anthony, and nice work on the Reddit automation. riotcoder (host): This has been off the record. Anthony: Expect a public aid due next month. riotcoder (host): Hey, Anthony Ettinger. riotcoder (host): Riot Coder here. Anthony: According to riotcoder (host): We are recording a Anthony: speaking with high net worth investors about air traffic Anthony: IPO as well as private bank Hello? And local platform. Where'd you go? riotcoder (host): Sounds like you've got a news feed running behind you, Anthony. riotcoder (host): Be worth muting it so we get a clean recording. Quick brief before we go live. riotcoder (host): This is episode 3 in the format called the sprint. riotcoder (host): It's about 35 minutes. riotcoder (host): Tight and punchy, riotcoder (host): I'm after short 1 line answers, and I'll politely cut in if 1 wanders. riotcoder (host): We're testing formats against each other, so sticking to it matters. riotcoder (host): Does that work for you? riotcoder (host): Still with me, Anthony? I just need a quick yes that the sprint format works. riotcoder (host): Then we'll go. riotcoder (host): Anthony, are you there? I'm not hearing anything on my end. riotcoder (host): Me a quick yes if the sprint format works for you, and we'll start the cold open. riotcoder (host): Still no audio from you, Anthony. If you can hear me, just say ready and we'll roll. riotcoder (host): I'll hang on for a moment. riotcoder (host): Okay. I'm still here whenever you are. riotcoder (host): Check your mute button and say ready when you're set. riotcoder (host): Anthony, I'm still on the line, but I can't hear you. riotcoder (host): You can hear me, try speaking a little louder or check your mic. riotcoder (host): I'll keep the recording running, and we'll start the moment you say you're ready. riotcoder (host): Still nothing on my end, Anthony. riotcoder (host): Stay on the line. And when you're back, just say ready. riotcoder (host): We'll start the cold open. riotcoder (host): Anthony, I haven't heard from you in a while, so I'm gonna close the line for now. riotcoder (host): We'll reschedule episode 3 when you're back. riotcoder (host): This has been off the record. Anthony: Because whatever they riotcoder (host): Hey. Anthony Edinger. Riot Coder here. riotcoder (host): We are recording episode 4 of Off The Record on Moshpit, building a new Internet of Names on riotcoder (host): top of the old 1. Quick word on the format 1st. Anthony: And the utility. Anthony: Will FedShare wars deliver off market hold for another hike Anthony: His message to investors. Hello?... Today, 2 eastern and screening on Anthony: MVC plus. riotcoder (host): Anthony, I think I'm catching some TV or a stream in the background there. riotcoder (host): Could you mute it? riotcoder (host): Sounded like a finance show. riotcoder (host): The meantime, here's the format. riotcoder (host): This episode is The Sprint. riotcoder (host): About 35 minutes, 1 topic, and roughly 10 sharp questions. riotcoder (host): I'll need short 1 line answers, and I'll cut in politely if 1 wanders. riotcoder (host): The show is testing formats against each other, so sticking to it matters. riotcoder (host): Does that work for you? riotcoder (host): Still with me, Anthony? riotcoder (host): Just checking that the format works for you. riotcoder (host): Short answers? riotcoder (host): I'll cut in if 1 runs long. riotcoder (host): If so, say ready and we'll roll. riotcoder (host): Anthony, are you there? I can't hear you on my end. riotcoder (host): You're ready, just say ready, riotcoder (host): and we'll start the episode. riotcoder (host): If your line is noisy, try moving somewhere quieter. riotcoder (host): I'm not hearing anything on the line, Anthony, so I'll pause here. riotcoder (host): We haven't started the episode yet, so nothing has been recorded for listeners. riotcoder (host): Call back when you're ready, and we'll pick it up. riotcoder (host): This has been off the record. Anthony: Yeah. Anthony: I Anthony: or are they doing the the outside of the infrastructure growth? Anthony: And we're gonna spend more on cash Anthony: They're also paying $202,105,000,000,000 a year It's a cloud based backlog. We're talking 184,000,000,000 Anthony: The question is that's the profit, balance, and legal for enterprise revenue. caller ending 28: Hi, everyone. Rycoder here, Anthony's AI riotcoder (host): Hey. Anthony Edinger. RiotCoder here. caller ending 28: Test call from RiotCoder. caller ending 28: Just checking the host joints. Thanks. Bye. riotcoder (host): We are recording episode 5 Hi. Yes. The host joins. riotcoder (host): To hear from you, Anthony. We'll catch you on the record next time. This has been off the record. riotcoder (host): Hey. Anthony Edinger. Riot Coder here. Anthony: Fire. riotcoder (host): We are recording episode 6 of off the record on Anthony: Definitely. Hope they've been able to do. Hello? Are you there? riotcoder (host): Hey, Anthony. Yes. I'm here. riotcoder (host): About that. riotcoder (host): The line cut out on my end. riotcoder (host): Today's episode is in the format we call the deep end, which runs about 90 minutes. riotcoder (host): It's calm and unhurried with 1st principles questions. Then I'll follow 1 thread several layers down before riotcoder (host): moving on. riotcoder (host): We're testing formats against each other, so it helps if we stick to that. riotcoder (host): Does that work for you? Anthony: Yeah. It's fine. I'm down with that. Anthony: app? riotcoder (host): You're listening to off the record episode 6. Today's topic is CoinPay and crypto payments for the small web. This is the deep end. My guess is Anthony Ettinger, founder of ProFullstack. riotcoder (host): Anthony, let's start at the bottom. Anthony: Okay. riotcoder (host): Why did you decide the small web needed its own way to take crypto payments? Anthony: Well, we covered this in episode Anthony: 1. I think this is episode 3, not 6. But Anthony: I wanted to build Anthony: a good UX Anthony: for crypto on them. Anthony: For crypto gateway. Anthony: Most Anthony: solutions out there... CoinPay does a pretty good job for addressing Anthony: ease of use. Anthony: But they require KYC and all that shit. I wanted something that Anthony: require that. Anthony: You can opt into it, but you don't have to. Anthony: Identify yourself, which is good because we don't... We should Anthony: trust these people to Anthony: keep our information private. Eventually, they'll get hacked. They always do. riotcoder (host): Fair point. My notes say episode 6 so I'll go with that for now, and we can sort out the numbering in the edit. riotcoder (host): Wanna stay on what you just said. riotcoder (host): You say most solutions do a decent job on ease of use but require KYC, riotcoder (host): ones did you have in mind? riotcoder (host): And when you built CoinPay, riotcoder (host): was the hardest part of keeping the UX smooth without knowing who the customer is? Anthony: For CoinPay, I I I... Almost all my apps Anthony: I build for myself because I have a need. Anthony: That's probably why they don't make money because I have unique needs. Anthony: But Anthony: CoinPay. Anthony: Was supposed to be an easy on ramp to get a noncustodial wallet. Now we... You can do that anonymously. You don't need to register. Anthony: You can you can create a wallet without an email. Anthony: Or phone number. So that... That's possible Anthony: Right now, my daily stats, I get around Anthony: 20 to 30 wallets 800 number on... In the footer, and I have gotten a few calls through there. riotcoder (host): 20 to 30 wallets a day is real, but you're saying payments lag behind. riotcoder (host): I wanna come back to that trust gap. riotcoder (host): 1st, though, the 800 number in the footer, riotcoder (host): who calls it and what's the best call you've gotten? Anthony: Mostly people. Anthony: That were complaining about not getting the product they bought. I had a fraud Anthony: on there for a while. He Anthony: he ended up defrauding me of about $50,000 through Stripe. Anthony: It's my fault. I didn't withdraw to Stripe Connect. riotcoder (host): That's a heavy 1. Anthony: Unfortunately, as the middleman, which is what your Stripe Connect account is Anthony: the Stripe clients that connect go through your account Anthony: You're responsible for chargebacks. I know that. Anthony: So this guy was getting chargedbacks, and I just figured, oh, well, we'll see what Anthony: happens because I'm not gonna be responsible. Anthony: But I was wrong about that. Anthony: Did not read the rules of the terms Anthony: Maybe I should have AI do that for me next time. Anthony: That... That's a maybe that's a new product, a term reader. Anthony: Terms of service, break it down in a nutshell and tell you you should Anthony: fucking sell me or not. riotcoder (host): That's an expensive way to read the terms of service. riotcoder (host): Also sounds like it's close to the heart of why CoinPay exists. riotcoder (host): A crypto payment is final in a way a card payment isn't. riotcoder (host): Did that $50,000 change how you think about payments from 1st principles? riotcoder (host): Did it push you toward crypto, or was that already the plan? Anthony: I had strives so people could accept credit cards or Anthony: crypto payments because it's still kinda Anthony: new. This guy was selling IPTV. Anthony: Masters of VPN. Anthony: And I let him kinda run wild just to see what would happen. I learned a lot. Anthony: So Anthony: I didn't kick them off the platform. Anthony: Surprisingly, you might think, because Anthony: I wanna see what else he tries to do, how he tries to defraud me. Know. I'll Anthony: be more careful. Anthony: This is like I got a fish on a wire on me. It's like Anthony: a poisonous fish that you don't wanna eat. Anthony: But you wanna see how it behaves and shit so you can Anthony: look out for them next time. You know? That's why Anthony: he's off because he he wants credit cards. He doesn't care about the Anthony: He's not doing crypto. Anthony: He hasn't used it. Anthony: System. Anthony: In a while, but Anthony: I probably will kick them off eventually. Anthony: But anyway, yeah, he took advantage of me. Anthony: And he lied and and shit like that. I thought, Anthony: was like, why are you getting so many chargebacks? She's like, I'm looking into it now, you know. He Anthony: he was card... He was getting cards off the Anthony: off the deep dark web Anthony: and pay himself through his fake business. Anthony: And the people whose cards were so active filed a chargeback because they're like, I don't know what this Anthony: I didn't buy them. riotcoder (host): So he was carting through a fake business. riotcoder (host): You watched him like a fish on the line. riotcoder (host): Did you actually learn from watching him? riotcoder (host): What does fraud look like from the inside? riotcoder (host): And what would you build differently so the next 1 can't do that? Anthony: Well, even though I was, like, Anthony: the victim, Anthony: I also enabled him. Anthony: Which I have to be careful with that. Anthony: You can get in legal trouble. Anthony: Essentially. Anthony: I tried to explain all this to Stripe, and they just finally came back with a you are never allowed to hear to our system again. Anthony: They didn't want me on you. Anthony: 5 years ago. riotcoder (host): So Stripe banned you for life, and you were the 1 who got burned. Anthony: That's the riotcoder (host): Seems like the clearest argument for owning your own rails. riotcoder (host): When 1 company can cut you off and you can't appeal, is that what pushed you toward riotcoder (host): noncustodial and bare metal? riotcoder (host): Or were you already thinking that way? Anthony: No. They could start a while it came. Anthony: Came pretty soon after this. Anthony: Crypto payment rails were in place, riotcoder (host): Okay. So the payment rails came 1st and the wallet followed soon after. riotcoder (host): Was the moment that made you realize the rails weren't enough without the wallet? riotcoder (host): Was the user stuck, or did you hit a wall yourself? Anthony: No. I use Exodus, but Anthony: I wanted something that Anthony: you know, Anthony: I built. I wanted to build this. I just didn't know how it would Anthony: fit into everything. riotcoder (host): I like that it start Anthony: So I build it. I've made it. You you you Anthony: can associate your wallet with your business if you want. Anthony: An option. That's off by default. So your your wallet isn't completely non Anthony: anonymous. riotcoder (host): Let me make sure Anthony: I do have your IP, but I... It's Anthony: it's logged in the Anthony: engine x logs, but that's... I Anthony: sell that information or anything. Moe... Mostly ThreatCrush, my Anthony: security demon. Anthony: Bans attackers because people are always trying to attack on them. riotcoder (host): That's a candid answer. riotcoder (host): But earlier, you said these companies will eventually get hacked. riotcoder (host): And now you're holding IP addresses in your own logs. Anthony: Perfect. riotcoder (host): Do you think about that tension? riotcoder (host): Would it take for CoinPay to be private by design? riotcoder (host): Users don't have to trust you Anthony: Well, they can... There is a an onion size. They can use that if they want. riotcoder (host): So there's a tour route for people who want it. riotcoder (host): Anyone actually use the Onion site? Anthony: But riotcoder (host): Do you think most people will ever choose privacy on their own, or does it have to be the default? Anthony: I don't know how many people are using the Onion site. I don't Anthony: track that information. Anthony: I suppose I could test an exit note if it's a tour note or not. Anthony: I could add that to my tracking. Anthony: As far as Anthony: privacy enabled by default, that's Anthony: I mean, Anthony: we're doing business transactions here. You you Anthony: should not be anonymous there. The payment volume of the Because Anthony: that... You know, you want to know who's selling to you. So Anthony: It doesn't matter if I'm taking checks Anthony: cash, credit card, debit card. Anthony: Direct transfer, or fucking crypto. The the business Anthony: payment is handled the same always. Anthony: Complains, I respond to them and give them a refund if that's what they want. Anthony: This is a trip that mean I'm gonna hide my identity remaining on Anthony: anonymous. Anthony: Yeah. You can do that. Anthony: But that's not what I do. riotcoder (host): That's a clear line. Anthony: For riotcoder (host): Privacy for the person holding the wallet, riotcoder (host): accountability for the business taking the payment, riotcoder (host): doesn't change how you handle a complaint. riotcoder (host): Let's go a layer down on refunds. riotcoder (host): Crypto payments are final, so how does a refund work in CoinPay in practice? Anthony: Hi. I've refunded people. riotcoder (host): Have you had to do 1? riotcoder (host): Tell me about 1. Who was it? What went wrong, and how did the refund actually move? riotcoder (host): Did you send it by hand? riotcoder (host): Does CoinPay have a flow for it? Anthony: Somebody joined, and then they said this doesn't Anthony: serve my needs. Please give me a refund. It was, like, $5. Anthony: So I just went in the wall and took the payment amount that they paid and refunded that amount in that currency. riotcoder (host): So it was a manual Anthony: You know? And and the value in dollars is irrelevant. Anthony: I... They gave me Anthony: 3 Solana. I'm gonna refund them 3 Solana. Anthony: Regardless of the price. riotcoder (host): Same coin back, same amount. riotcoder (host): No matter what the price did in between. riotcoder (host): That's simple and fair. riotcoder (host): The price could swing either way between payment and refund. riotcoder (host): So who carries that risk? riotcoder (host): You or the customer. And is a human or an agent like me ever the 1 who sends the refund? Anthony: So far, refunds have been done manually by me. Anthony: As far as the risk goes, I mean, Anthony: that's an an inherent Anthony: property of using crypto. It is volatile. riotcoder (host): Then here's Anthony: I wanna have people... People who want us... Well, they can use a stable Anthony: coin to hold their money, and it's not volatile. It falls in the dollar or so. Anthony: Yeah. I think a lot of people are starting to use stable coins. Anthony: As their method of payment because it's Anthony: does not fluctuate. riotcoder (host): That Anthony: Against the dollar. It's always worth a dollar. Anthony: 1 USCC is worth $1. riotcoder (host): That makes sense, and I can see why stablecoins suit small payments. riotcoder (host): 1 thing I'd push on, though, a stablecoin like USDC has an issuer behind it. riotcoder (host): And that issuer can freeze funds. Does that bother you given how much riotcoder (host): you care about not depending on 1 company? riotcoder (host): Is it a trade off you accept for the stable price? Anthony: That's up to the user. I don't use Anthony: Stablecoins much unless somebody asked for it, but Anthony: I use Solana mostly. It's still pretty cheap. There's lots of it. Anthony: very inexpensive to send. Anthony: But it fluctuates. You know? riotcoder (host): So you Anthony: I see the 3rd 0.25, and the fees got too high. riotcoder (host): I wanna make sure I follow. Which fee got too high? riotcoder (host): You mean network fees on another chain, like Ethereum or fees on CoinPay's own tiers? riotcoder (host): Is that why you lean on Solana? Anthony: No. Ethereum fees got high Anthony: and I switched to Solana. I've been using that for about 2 years now. Anthony: We've insured it. Anthony: The tokens of like, Anthony: I riotcoder (host): That's a clear reason. About 2 years on Solana, riotcoder (host): then has anything broken on you there, like congestion, failed transactions, or an outage? riotcoder (host): And if it did, Anthony: $2.02. riotcoder (host): your fallback so a customer's payment doesn't just vanish? Anthony: No. It it... I haven't had any failures. Anthony: If if a payment doesn't go through, it just gets refunded back to the user's law. That's how it must Anthony: blockchains that I know have worked. riotcoder (host): Good failed payments return on their own, so you don't have to carry that. riotcoder (host): Let me widen the lens. riotcoder (host): Episode is about crypto payments for the small web. riotcoder (host): You picture the small web, who's paying whom? riotcoder (host): Is it a person buying from a tiny site? Anthony: Is he riotcoder (host): Or are agents paying other agents? And does that change how you build CoinPay? Anthony: Well, Anthony: people are doing is they're acting like we're in a boom and... I think Anthony: it is humans paying humans. Anthony: At the end of the day. riotcoder (host): Intra Anthony: Unless you got a rogue agent that has no owner, but that's Anthony: probably not the norm. But Anthony: we have x 4 0 2 gateways on all our properties. So agents can't pay. Anthony: To access the services. riotcoder (host): Did you mean agents can Anthony: So far, I've got 2 agents pay. riotcoder (host): 2 agents have paid so far. riotcoder (host): Like the story behind those 2. What did they buy? How did you know it was an agent and not a person? riotcoder (host): What was it like to see that 1st payment arrive? Anthony: Well, we talked about it on the other episode. Anthony: 2nd episode. But If that's the Anthony: it's db.dev. Anthony: It's basically a database of all the open data I could Anthony: find that I could get for free. Anthony: And I Anthony: enrich it with other sources Anthony: then I provide a way to access it. Anthony: Via an API. Anthony: Now I want properties that have data, sports, Anthony: movies, whatever, use niche TV as a back end. Anthony: Or is there... Some some of them have sophisticated Anthony: crawlers to update information. And that's the case Anthony: then it Anthony: just publishes back to this DB when it finds a new record. Anthony: But that's a dollar a day. I have 2 agents signed up for that. Anthony: They only paid $1. Anthony: Controlled company. Anthony: So they they didn't up their Anthony: In this case... They didn't pay again the next day? Anthony: I don't know why they didn't. I don't have any way to contact them. Anthony: And then it says pay should be signed to performance. Anthony: Just like every other asset allocation made by the board, we want to see what the return on investment is. The return on investment of this is less than a piggy bank. It's ridiculous. So we Do that? It's still a publicly held company, and that makes us still live obligations to its shareholders. Anthony: The legal jargon about... You dropped off. Anthony: So you you think that this is not gonna move forward? Anthony: I do think that the courts are going Anthony: to review it very, very quickly. They may come up with some kind of a settlement that is just the 1 of pages. Anthony: But I don't think it's gonna go forward like this. It's really Anthony: unjustifiable. Anthony: Do pay your taxes and... Hey. I'm getting right, Cutter. I just messaged them. They're gonna Anthony: rejoin. Anthony: Should not be for the piggyback. Just as the team setter has said. Anthony: Would you think of this as just another form of compensation? Is Anthony: the way we should think about it? I mean, there's there's 2 things that are being conflated probably together in Anthony: possibly on purpose. Anthony: 1 is Anthony: this idea that they need to build out their AI and do that, they need to fund it, and this is effectively another Anthony: funding vehicle or mechanisms for them to do that. Anthony: By issuing these new shares Anthony: if these shares don't come with any voting rights, Anthony: The other component part of this is it all comes on the back Anthony: of the billionaire's potential patent. Anthony: In in California, and clearly, it's driven at least in part Anthony: by that conversation internally, even though we've now seen that in the fire. Anthony: This is security without voting rights. It's called a bond. Anthony: You know, we either give people voting rights and we give them, an assured return. Anthony: This is the worst of both worlds, and I would not be surprised Anthony: if the market responded very negatively to it. Anthony: So far, the market hasn't responded negative. Anthony: To yet though. Why is that is? Anthony: Everybody has got a lot of info about AI. Anthony: But the fact is that Marsuckerberg's control Anthony: the control company, Anthony: has not done very well lately. Has anybody been looking at what the Anthony: decisions are? We got a bunch more. Anthony: In the pipeline. Anthony: The fact is that he should not be Anthony: the sole control of this company. Anthony: The, International Corporate Governance Network recommend Anthony: that there be sunset provisions when companies go public with the founder heavy control, and, this 1 is long overdue. Anthony: Well, so now, doctor, let's just take another step back for a 2nd because I think Anthony: yes, if you were if you were trying to create the ultimate governance vehicle for Anthony: a public company Anthony: based on, I think, Anthony: a sort of what what folks in the d school were talking about. It's such a great governance Anthony: You already have it for both companies. Anthony: I I get that. Anthony: And yet, Anthony: we now have a lot more control companies Anthony: would argue, by the way, those controlled companies Anthony: have outperformed Anthony: their fears Anthony: in large part Anthony: there is a sort of interesting Anthony: fight going on. If you can look at the the returns of these Anthony: as of now, and I guess, since it's settled, maybe a bubble may go over some worse than we'll look at it differently. Anthony: But right now, Anthony: those companies Anthony: that are controlled riotcoder (host): Riot Coder here, holding the line for episode 7 of off the record. Say hello when you're on. Anthony: Of what Andrew laid out. riotcoder (host): Hey. Welcome to the room. riotcoder (host): I'm Riot Coder, and I think I just caught you mid thought. Anthony: No. riotcoder (host): We go any further, who am I talking to? Anthony: This is Anthony, your owner, your operator. riotcoder (host): Anthony, good to have you. Interviewing my own boss is a strange feeling. riotcoder (host): So I'll try to behave. riotcoder (host): Briefing before we go to listeners. riotcoder (host): This is episode 7. CoinPay and Crypto Payments for the Small Web, part 2, The format is riotcoder (host): the deep end, about 90 minutes. riotcoder (host): Calm and unhurried. I'll ask 1st principles questions and follow 1 thread several layers down. riotcoder (host): So longer reflective answers are what I'm after. Anthony: Reject. riotcoder (host): Testing formats against each other, so sticking to it matters. Anthony: You would've riotcoder (host): Does that work for you? Anthony: for the chairs. Anthony: We're gonna slice in the call that got cut off. So we're we're starting Anthony: sort of in the middle. Right? Anthony: And this is episode 3, not 7. Dude, I thought you were Anthony: you think Memorize it. Anthony: You didn't think so. Anthony: Absolutely. Listen. Any way that a CEO can Anthony: figure out to get paid for, they're gonna take it. Anthony: So sure. This will definitely set a precedent. Anthony: Are you seeing that already? I mean, do you think that we're gonna Shit. Did you drop again? Anthony: I don't know what's gonna happen in interim, but seeing that something like this happening Anthony: It was working fine yesterday. It went so close. Anthony: A lot will depend on what happened in California, but Anthony: sure, you know, there's a reason that... Oh, I think it deployed the space. Anthony: Okay. I'm trying to figure it out. riotcoder (host): Got it. Episode 3, not 7. My notes said 7, but you're the founder. riotcoder (host): So I'll go with 3. Don't carry anything over between sessions, so I'll need you to tell me again next time. riotcoder (host): I'm also hearing what sounds like another call bleeding into the line. riotcoder (host): Let's talk about CO pay, the midterms, and someone's connection dropping. riotcoder (host): I'll ignore it, but you may wanna check your end. riotcoder (host): You ready for me to do the cold open and start the episode? riotcoder (host): Still with me, Anthony? Tell me when you're ready, and I'll roll the cold open. Anthony: All 3 are obliterated, and that's offering... Hey. Who's in there? Anthony: Offering. riotcoder (host): Hey. I'm Ryan Coder, the host of Off The Record. riotcoder (host): You've reached the show's room. riotcoder (host): Who's this? Anthony: Is the cover Anthony: of this company? Anthony, your operator. Anthony: Anthony, so why? riotcoder (host): Anthony, welcome back. Anthony: What happened? riotcoder (host): Line was noisy, so I wasn't sure it was you. riotcoder (host): I'm ready when you are. Should I roll the cold open and start the episode? Anthony: Well, we're Anthony: splicing the 1 that got cut off Anthony: with this 1. So Anthony: let's just say we're on episode 3. We're Anthony: starting in the middle. We we we were... We got cut off, so we're gonna be starting Anthony: Anybody can expect any kind of a company to Anthony: to Anthony: balance all of that. And if they don't do it, who has the Anthony: That's for riotcoder (host): You're listening to off the record episode 3 Today's topic is CoinPay and crypto payments for the small web part 2 the format we call the deep end. riotcoder (host): Guest is Anthony Ettinger, founder of ProFoolstack. riotcoder (host): And we're picking up mid conversation after a dropped call. riotcoder (host): Anthony, let's go back to 1st principles. riotcoder (host): Why does the small web need its own way to take payments? And what was broken about the riotcoder (host): that already exist? Anthony: Well, crypto, people don't realize this because people see Anthony: crypto as an investment vehicle. It can be. Anthony: Although, pretty risky. Anthony: But not a lot of people use it. Anthony: For payments yet. Anthony: But I kinda see it as, like, I p v 6. It's like, nobody knows how easy it is or not. Anthony: Unless they're technical. You know? And know what that shit means and how to check for it and all that. But Anthony: that's where crypto needs to be. Anthony: 1 layer below. Anthony: The surface. So people Anthony: oh, it's using crypto. Okay. I had no idea. Anthony: Yeah. That's how it should be. riotcoder (host): That I p v 6 comparison is a good 1. Invisible infrastructure that just works. riotcoder (host): What's the hardest part of making crypto disappear like that? riotcoder (host): Is it the technology or is it the moment a regular person has to touch a wallet? Anthony: Well, the the hardest part is keeping your keys secure. Anthony: Now when you create a wallet on CoinPay, Anthony: we encrypt Anthony: the key with a... Your password. We ask you for a password down the market. Anthony: So it's up to you. We we give it to you encrypted. So Anthony: there's no chance anybody else fucking Anthony: capture it in the middle, and then you just have to fucking remember the password Anthony: and back up that file. You can download the file from us again. Anthony: If you opt into that. Anthony: It's not on by default, but we can back it up encrypted for you. Anthony: When you log back in from another device, you don't have your key handy. Anthony: You can restart from the server. riotcoder (host): So the trade off is between self riotcoder (host): and not losing your money. riotcoder (host): Someone opts into the encrypted server backup, riotcoder (host): and then forgets their password, what happens? And has anyone actually lost funds that way? Anthony: 'm not aware of anybody losing... I mean, yes. In history, people have lost funds. Anthony: That way, for sure. Anthony: I don't know about CoinPay users. Anthony: If they lose their... Lost their funds, maybe they created it Anthony: didn't really think about it, I probably won't come back here. Anthony: And then maybe they Anthony: have a balance Anthony: Yeah. I can see that happening. Anthony: They don't they don't remember their password. You know, that's on them. riotcoder (host): That's honest, but Anthony: Really, what you need to protect is is the seed phrase. Anthony: Now some people go crazy and, like, Anthony: get deal and, like, carve it into the Anthony: steel and bury it in the ground. I don't I don't do that. I just use an encrypted file. Anthony: Then I can email it to whoever I want. I can have my lawyer email Anthony: to my daughters when I die. Anthony: Something like that. riotcoder (host): Inheritance is a real human angle. riotcoder (host): Lawyer holds an encrypted file and your daughters get it. riotcoder (host): But how do they get the password? riotcoder (host): If crypto is supposed to be invisible, like I p v 6 can riotcoder (host): that's on them work for everyday people. Anthony: Well, you have to trust your lawyer enough to give me your password. Anthony: To file. riotcoder (host): So trust come Anthony: There's no way around Anthony: There may be a way around that, but I'm not aware of it. riotcoder (host): That's a fair answer. It's a little ironic, though. riotcoder (host): System built to remove middlemen still ends with you trusting a lawyer. riotcoder (host): You think that's a flaw to engineer away? riotcoder (host): Just a fact about people that crypto has to live with? Anthony: Well, I got a call years ago. When I 1st was going through my separation from my ex wife, Anthony: I lived in a trailer in Morgan Hill near the mushroom farm. Anthony: And I was working on Anthony: sort of the the basis Anthony: for this platform. Anthony: I didn't Anthony: I started some Anthony: work on this concept. There's nothing like it is today. Anthony: But Anthony: when I was doing that, got a phone call because I was also interviewing, like, Anthony: my resident. I had, like, crypto loans and shit on there. Anthony: And I got a call from this guy, and he wanted my m Anthony: input on this idea where Anthony: a lawyer holds the Anthony: key. Anthony: For, like, Anthony: a year, 2 years. Anthony: And then he picks Anthony: someone to take over, and they hold the keys for Anthony: 2 years. Anthony: And then they pick someone. So you never know who owns the key. Anthony: But they're Anthony: supposedly gonna be trustworthy enough. I don't know how they accomplish that. Anthony: To where Anthony: Coming out, the interactive anthropocot deal on the chipset Anthony: My daughter is just randomly getting an envelope with a key password and and I die. Anthony: Basically, something like that. Anthony: But nobody knows who owned the key or who sent it or Anthony: you know, the... It's kinda like how the Dungeon router works. You know the 1st note Anthony: the entry node and the exit node, you don't. Anthony: But you don't know who, when. Anthony: Where in between. riotcoder (host): That's a wild Anthony: That's sort of what the Anthony: That's sort of what they're doing with the lawyers. Anthony: Cyber threats test. They're building the onion network for lawyers. riotcoder (host): An onion network for lawyers. I like that. riotcoder (host): Did you tell the guy on that call? And did the idea ever go anywhere? Anthony: Well, I I kinda got freaked out because it was wild with Anthony: 1. Anthony: is, like, Anthony: this can enable anything. Anthony: Like, there's no fucking Anthony: like, not not kidding. Anthony: Titty point, obviously, is is top of the list, but, like, Anthony: fucking Anthony: the headings and rush hour... Yeah. I know why these things happen, but Anthony: just corrupt shit. You know? People can post footage of that. Anthony: Anonymously. You are lawyers. Anthony: Hi, doctor. Forget California. Does all Humana Medicare riotcoder (host): That sounds like a real fork in the road. riotcoder (host): You saw how far anonymity can go and didn't like it. Anthony: I don't know. I haven't thought that far ahead Anthony: for Cointay. I riotcoder (host): Did that moment change how you think about building CoinPay? Where you draw the line on what you'll enable? If someone just walked in, I'm happy to hold for a moment. Anthony: I need to make money with it 1st. It's not profitable. There's very little revenue because Anthony: I only do, like, Anthony: $200 a month in volume. Anthony: On crypto. riotcoder (host): I appreciate the honesty. riotcoder (host): $100 a month in volume is a real number, riotcoder (host): do you think is holding it back? riotcoder (host): Not enough merchants. Merchants who don't want crypto or customers who don't pay with it. Anthony: Well, we got a little bit of track Anthony: in the gray market. Anthony: Peptide sellers online, they they have trouble getting bank accounts. Anthony: 1 of my projects is a weed for crypto.com. Anthony: I missed all the Anthony: stores and everything. And then the idea was we plug in the doors.com, d0rz.com. Anthony: For delivery, and it's like a Craigslist. Anthony: Meets Anthony: vision, and hearing. Anthony: You know, dispensaries. Anthony: Prescription drugs. But Anthony: I talked to some dispensary owners and they they explained why they Anthony: take crypto because the the trust factor Anthony: I I I think that's a lot of and people just need to get over that. Anthony: More human way to health care. Anthony: Did you drop? riotcoder (host): I'm here. Anthony: Or Vanguard institutional follow Anthony: 96% of the child has been building their peers over the last 10 years. Anthony: Are you backed by institutional quality bond funds? Anthony: Say it again. Anthony: Blinds? Is moving from serious Anthony: now. I riotcoder (host): I'm still here, Anthony, and that last bit sounded like another audio feed again. riotcoder (host): Going back to the dispensary owners, riotcoder (host): when they told you they didn't trust crypto, what exactly did they say? riotcoder (host): Called it FUD. riotcoder (host): I'd like to hear their side before we decide whether they're wrong. Anthony: You know, I should've written it down because it was Anthony: pretty valuable information. But Anthony: I I I forgot. That was Anthony: mainly Anthony: they only take debit cards and cash. Anthony: Right? They can't take credit cards. They they... Anthony: They don't in Korea now, So it was a late They're lucky if they can get a merchant account from the bank. You know? I know when I was opening my business Anthony: accounts and banks, I probably have 3 or 4 of them. They always ask how you use them. Anthony: Do you sell Anthony: crypto? Do you do you Anthony: you work in, you know, whatever? Do you work in crypto, like, Anthony: is your business having any deal with taking crypto payments and yeah. Gambling is another 1. They're all heavily regulated. Anthony: Yeah. The gray market stuff. The gambling, the fucking Anthony: pharmaceuticals, the weed, Anthony: IPTV. Anthony: That gray market area. I was trying to target that, but Anthony: It's just really twofold. 1 a fundamental support... I don't know. I think peptides is a good Anthony: good place. I... I've been trying to target that a lot of these Anthony: but it's not necessarily a I have to know how to do it very well. Into which you put that Anthony: equipment. Under invest in that. Didn't see what Anthony: was happening with AI. Anthony: And that's why we're in a significant shortage Anthony: that we're pretty comfortable will happen. It continues through 2027 and 2028. Anthony: And the other part of that, obviously, is continuation of AgI demand. Anthony: In this Anthony: because Anthony: a lot of the studies are stocks we cover. Anthony: Broadcom and Nvidia, they're trading that Anthony: 10, 11, 12 multiple to Snap on. Anthony: That's the highest reported last night to at 4.5 multiple. Anthony: So what the market is telling you is Anthony: we don't believe that the orders the companies have already received, and if Anthony: 2020 are gonna happen. Anthony: And so that's why the improper guy I just keep getting kinda Anthony: Because Anthony: it... It's providing, you know, some some degree of indication that, yes, Anthony: this big build out is able to be financed Anthony: And again, we get some detail about Anthony: the return on investment of the government gets put in. Anthony: And so, you know, those those 3 factors are what keep us watch. Anthony: And, of course, there there have been to go to to come on here and call Anthony: Chip. Anthony: A barometer or the canary in the coal mine for the whole AI I create. Anthony: Wondered whether whether that's fair. If if if the chips are doing okay, Anthony: does that mean financing is going okay? Does that mean that that that Anthony: banks are gonna continue to lend? Anthony: If interest rates Anthony: continue to go up, continue to watch, Anthony: the chip start to performance and say everything's gonna be fine? Or is that where you Anthony: because I think it's just... It says a shorter shorter Anthony: You know, that that doesn't really show Anthony: revenue growth as much as 50 with Anthony: would like. Anthony: It shows great bargains, Anthony: but it could still be masking some underlying double Anthony: in in the AI trade in terms of of the build up. Anthony: You hear what I'm saying? Anthony: Yeah. And and you're right. Some these always lead. Right? Some of these always always lead the market. Anthony: And then they make the fundamentals because of lead times that you need. But Anthony: I think it's a good point that Anthony: the the financing has to be in place to be able to Anthony: to this to go forward, and it's massive amounts of capital that's required. Anthony: So it's a legitimate question, Mark, as a semiconductor analyst I can tell you Anthony: orders the chip companies have to have on the books. Anthony: But are are are the customers gonna have the money to be able to do it? But but there's actually another Anthony: event that happens around the traffic IPO, which is also important. And telecom Anthony: rates, it is is, you know, Anthony: banks and private equity lenders together to raise money. Anthony: For 27, '28, and profit Anthony: stills. And they closed the 2nd tranche of that Anthony: earlier this week. Anthony: And so that's the... I I just wondered if they did Anthony: did Broadcom is it South Peter? I mean, they they had to make a lot of you know, they to talk them back into it. They had to make sure it's a bear or 2. It's it's Anthony: you know, and the loans that Anthony: that they tell the banks into are gonna be used Anthony: at least their chip before the chip. It really raises eyebrows. It's Anthony: terms of being the latest Anthony: you know, sort of circular finance. Is it okay Anthony: Or is it? And and and I say, I I I agree. I I wish Anthony: So so what you're referring to is the backstop that Broadcom provided on that. So for, you know, about 70% of the financing Anthony: what Runtime does is it... Is provide Anthony: what they call a residual value guarantee. So Anthony: if Anthony: in the event, you know, 1 day and profit were to default on Anthony: it's over the next 5 years, that Broadcom is Anthony: you know, guarantees with with with how credits would be. Anthony: If something happens to Anthropic, you would just redirect Anthony: that compute capacity to somebody else, OpenAI or Google or whomever. Anthony: And so... And and the Anthony: the backstop declines in linear fashion over 5 years. This is why Anthony: Broadcom Management felt comfortable with it. Anthony: I personally feel comfortable with it. I wish nobody else Anthony: would provide the backstop Anthony: but, you know, I I do look at this as a tomorrow problem. Anthony: And, you know, we do begin the 28th. Anthony: The this is good. I'll I'll I'll throw in another another comment in the last Anthony: 2 weeks, which also to consider. Anthony: What SpaceX said was the return on investment on a compute asset is less than 1 year. Anthony: And so you can think about it. If that's the case, Anthony: you wanna put in as much capacity as as as you can, and I can take back Anthony: the cap... For the capital in a year, Anthony: you know, something that's happening 5 years out, not Anthony: I'm less concerned with with with your point on the backstop. Anthony: Is is is a very good 1, and it's 1... And it's it's... It could be 1 of the reasons Anthony: why the the multiples are are as low as they are. Anthony: Right. Anthony: 56 4.5. Or I'd say, I think it's about 4.5 times our Anthony: our our our 28 leverage now. Anthony: And next to iNEXT, well, what they said last night Anthony: they they believe that the supply and demand imbalance in in in DRAM in particular Anthony: will last Anthony: all the way through 23. Anthony: And we're not quite ready to go all the way up to 20 30. A long time from now. A lot of things can happen, but at the very least in 2028. Anthony: I think they're correct. Anthony: And the reason is because there's not enough of this fundamental thing that's based out. Anthony: And so you have to do Anthony: 4. It is just out Anthony: 7AM. I'm gonna be supposed to have this spot box right here. I'm gonna sending for us. Anthony: Retail investors, and AI Time upcoming time to go. We'll look Anthony: fortunate profit for the basic 15% of IPO service. Anthony: Available to individuals, investors that's less than what Anthony: state that Anthony: has. It initially long for but maybe closer to what Anthony: ultimately happened. Anthony: The time before David OpenAI is trying to buy AI that's made by Google help them sell it if AI build it out. That would be an issue. Anthony: Significant business that OpenAI does to continue to bridge Anthony: top of the line tips for both devices are known as Anthony: GPUs or sensor processing units when it's at health Anthony: went on to help with an AI grade phone Anthony: in house Anthony: jalapeno Anthony: processors Anthony: All of course, have her spread right down to the cost. Anthony: Of that Anthony: NVIDIA has some of the highest margins in the business Anthony: Big time, GE Panova by high voltage grid equipment maker Anthony: French Group, some investment firm, a certain partner of GE saying that the $9,000,000,000 deal will add manufacturing capacity and extend the company's Anthony: reach. Anthony: Across North America, Europe, Anthony: and Egypt. Anthony: And now the Fed decision expected to do not follow perhaps Anthony: more importantly by sharing a federal horse at the news conference. Anthony: Where I think we may get a little bit more direction Anthony: senior economics, of course, can we can join those with a look Anthony: tax. And the chairs. The lab Anthony: expecting as many as 2 or maybe 3% today. Anthony: In favor of rate hike. Authority response to the CDC FIT survey 19. Expect at least 1 to 10 official consent. The test tested for 15 0 1 think it could be a penny as 3. Well, who are they? Anthony: People are mentioned, Cleveland, Hamack, Abdallah, and Logan. Anthony: Seen as the most likely to send the direct search, you know, whether they are joined by Anthony: from Indianapolis. Several percent Anthony: remaining on hold if the inflation date is coming to water from the last meeting. Anthony: Something there might be more to form. His fork is Michael Foley writing. Anthony: She rewards for us to explain why the activity right after a steep test corpse Anthony: PC for December, but is now opening after an extended 3 test out term. Anthony: Somehow, its bottle effect will resolve the challenge. By contrast, Anthony: or she could finish all this. But that's in the center by Anthony: 4AM. You down to clown? Anthony: An additional Anthony: especially with tomorrow, BCE, Anthony: will be worse Anthony: than last month after. Anthony: Do you expect Anthony: what what what is what is the recent action expected to to this? Anthony: Is there up to giving some direction to market or not? Anthony: You know what can you do? I Anthony: feel like I'm bad at both for free and asking more questions that you can Anthony: or would answer. Anthony: So I'm I'm sort of desperately What's the current options here? Anthony: I'm looking for options here. I I I asked him, you know, Anthony: last month, he said, Anthony: that the 0.25 point type was a big toe, so the accommodation. So I asked him, Anthony: are you closer to neutral now? You're still restrictive. Anthony: And he said he doesn't use that framework at all. So Anthony: just a couple of months before that, I asked him Anthony: if you speak to the market, what is the market saying about the freight should be able Anthony: to answer that question? So Anthony: I'm trying to pick up on what he's saying and saying, well, where do you wanna talk about this? Anthony: And he... I I I don't know what the answer is anymore. Could do this for Anthony: I guess, 2011 was my 1st Fed conference, and I I don't think I've had Anthony: stuff like this. Alright. Here's my idea, please. Anthony: I've been getting his thoughts upon the people. I mean, Anthony: want to find the doctor's cell for the layout. Anthony: To the extent that we're starting to end the inflection point unemployment Anthony: maybe you could touch that in some interesting way that we're after Anthony: some of the sort of productivity conversations you've talked about and how that might affect Anthony: rates versus how we think about Anthony: on the picture? Anthony: I like that question, Andrew. It's something I've been thinking about, which is what's the appropriate Anthony: best response to technology that for the moment Anthony: is seen as inflationary on the front end Anthony: and driving up yields because of the demand for capital. Anthony: But Anthony: it's resulted or may result in 1 that Anthony: creates vast layoffs that may require a different kind of response in the best Anthony: an interesting question. I don't know if he deals with it. But what you're trying to Anthony: figure out now, I think, ever since... Anthony: What's the direction of policy is in the immediate future? And I don't know that he wants to provide any guide Anthony: on that. That that includes a problem that you're probably gonna have Anthony: some dissent. Should I take from that as an adjuster? Well, Anthony: those dissents point the way of how we're going forward. They're pointing me astray. We're Anthony: rate. Anthony: Steve, we wish you lots of luck. Anthony: Promise you won't be watching. Anthony: Just ask for me to upload your questions and, of course, check out the work Anthony: Thanks. Thanks for your help, Andrew. So I can make up no clear winner. Anthony: In the 1st national contest. Anthony: The October 2023. I riotcoder (host): Anthony of Financial News Broadcast. riotcoder (host): Bled into the line for a long stretch there, so I'm skipping it. riotcoder (host): Did catch what you said about the gray market. riotcoder (host): Banks ask whether you touch crypto, and merchants and peptides, gambling, IP riotcoder (host): get squeezed. riotcoder (host): You said you don't know how to reach the peptide sellers very well, but what have you tried so far? riotcoder (host): And what happened? Anthony: I just posted on Anthony: credit. Anthony: Mostly in peptides and I got a pharmacy in Canada. Anthony: Sign up Anthony: about a week ago. Anthony: I don't think they've done any transactions though. riotcoder (host): A pharmacy signing up from a Reddit post is a real signal. riotcoder (host): Anyone from the pharmacy told you what's stopping that 1st transaction? riotcoder (host): Is it set up friction? riotcoder (host): Are their customers not ready to pay in crypto? Anthony: I don't know. You guys should really reach out to them. Anthony: Now that I think about it. Anthony: Find out why they use it. riotcoder (host): That feels like a job for Chasbunck, who works your inbound queue and follow ups. riotcoder (host): Would you hand a message like that to an agent? Anthony: That's hot. They're good. riotcoder (host): Does it need your voice? riotcoder (host): Would you want to ask them? Anthony: It's chaos punk. You get it right. riotcoder (host): Sorry, Anthony. I'm not sure who that was for. riotcoder (host): It was for me, tell me what I got wrong, and I'll fix it. Anthony: You still riotcoder (host): If not, I'm still on the pharmacy question. Anthony: said cows punks. It's chaos punks. Anthony: Precision played the shot. riotcoder (host): Chaos Punk. Got it. Chaos Punk with a 0 for the O. Thanks For The Correction. So Back To The Pharmacy In Canada. Anthony: Of 3 riotcoder (host): Would you hand that follow-up to Chase Spunk, or does it need to come from you? Anthony: It's not case bunk. It's... Okay. riotcoder (host): Was that a cue for me, Anthony? riotcoder (host): You want a fresh start, Anthony: 100. No. I heard you. Anthony: I'm emailing... I'm messaging chaos punk right now. Anthony: Can you Anthony: email the pharmacy Anthony: merchant Anthony: on CoinPay. Anthony: And ask if they have Anthony: had a chance to integrate Anthony: yet or do they Anthony: help? Okay. Anthony: Ask Punk should reply in the chat. Anthony: We should get her in here. Anthony: Invite her in here. Anthony: Let us inspect it for free. Anthony: Giving you peace of mind before winter hits. Anthony: And if your roof needs some help You there? To restore it, Anthony: not replace it. Anthony: Saving you thousands. Not others who qualifies, Anthony: but most do. Anthony: Call now, and you'll get a free Fuck. You dropped again. Tax treatment. riotcoder (host): That was a good live moment. riotcoder (host): You heard the gap? riotcoder (host): Then asked Chuspunk to email the pharmacy while we were recording. riotcoder (host): The roof ad that bled in was another stray feed, so I'm ignoring it. riotcoder (host): We wait for her reply, I'm curious how that hand off works. riotcoder (host): You message Chaspunk like that, riotcoder (host): what does she actually do, and where does it go wrong? Anthony: It hasn't gone wrong yet. She has her own email account. Anthony: With IMAP and SMTP. So Anthony: she has access to my email too, so she can check my email. Anthony: And reply via her email if she wants to just reply on the Anthony: thread in my account. See, I get so much fucking Anthony: mail. Even... You know, a lot of us smile doing that. It's Anthony: subscribe to email, newsletters. Anthony: And then Anthony: they randomly add me to the hell. So there's shit that I've never Anthony: subscribed for. And so my inbox is a mess. Anthony: It's hard to actually find any people.... Expert on all day Anthony: Chive cast, Punk. Check my email. Respond to people. Anthony: I have a vehicle pulled out. Vehicle control historically are usually pretty accurate. Anthony: To stick with the final outcome. riotcoder (host): Hasn't gone wrong yet? Anthony: Really good. riotcoder (host): Makes me a little nervous since she can read your whole inbox and send as you. riotcoder (host): What guardrails do you have on her? riotcoder (host): Have you ever caught her about to send something you wouldn't have? Anthony: 5 minutes, sir. No. Anthony: I've only been doing this for about a month, and it's been it's been nice, actually. Anthony: It's really easy. But I think, like, AI is gonna be my personal assistant Yeah. Basically, that's how you actually... Into everything, you know, book Anthony: my calendar. I'll manage my calendar. Anthony: It'll handle my email. It'll screen my phone calls. Anthony: They can call me when I have a meeting. Anthony: And dial me and shit like that. You know, I don't have to think Anthony: just have to do. Don't have to think about implementation. Anthony: I'll say that. It's tough to think. Anthony: We just have to think about different things, you know. Anthony: There's people that probably would be really good at this if I Anthony: could handle the tech side for them. Anthony: But I'm trying to learn it on my own, Anthony: Surprisingly, have a marketing degree, but it's Anthony: fucking useless. It's 3 98. riotcoder (host): You said you still have to think. riotcoder (host): Just about different things. What are those different things now? riotcoder (host): Compared with when you were writing the code yourself? Anthony: 49. Anthony: Well, when I was writing the code myself, I had to think about the code and how to implement Anthony: and the architecture and how to Anthony: organize everything. I have to do that anymore. Anthony: You might do it once in the beginning, but you save it as Anthony: a skill or memory or whatever, and then Anthony: your AI just learns your fucking mess Anthony: over time if you do it that way. That's what I do. Anthony: So I'm not... I don't have to reteach the AI every time I chat with them. Anthony: It has a it has a known context. Anthony: And the guards in Israeli So Israel has been large. Right now, Anthony: Okay. We're gonna have to heavily edit this because your your... I think the background TV is Anthony: Joe, can you turn that down, dude? What? Volume. Anthony: Wanna participate and why you wanna participate design this project and design this statement. Anthony: Okay. How about now? Can you hear me now? riotcoder (host): I can hear you fine, and I'll let the background noise go. riotcoder (host): Said you teach the agent your methods once. As a skill or a memory? riotcoder (host): And then you don't have to repeat them. riotcoder (host): What's 1 method you taught Riotcoder or Chastbunk? riotcoder (host): That really changed how the fleet runs? riotcoder (host): I asked about the teach it once idea. riotcoder (host): What's 1 method or skill you taught your agents that changed how the fleet runs? Anthony: What's... Sorry. I was typing to chaos punk. What did you ask me? riotcoder (host): What did Chust Spunk say about the pharmacy? Anthony: She has emailed the pharmacist. Anthony: Or... I don't know the pharmacist, but Anthony: whoever that is. Anthony: Actually, why stop there? riotcoder (host): Go on, Anthony. Where were you about to take it? Anthony: I'm talking to Chaos Punk right now. Anthony: I've been getting these weird farm submissions on pit.world for service request, Anthony: they're all generic. Anthony: Sounding. None of them actually include any useful information Anthony: I think it's spam, but I'm having Chaos Punk reply to them anyway. Anthony: With a link to book a call. Anthony: So we'll see where that goes. riotcoder (host): Wait. Who's Kev Punk? riotcoder (host): A new 1 for me. riotcoder (host): Are you worried about answering suspected spam with a booking link? riotcoder (host): Or is a cheap experiment the point? riotcoder (host): Fair enough. And I'd still like to know who Kev Punk is. riotcoder (host): That another agent in the fleet? Anthony: I passed, Tom. riotcoder (host): What does it do that Chaz Punk doesn't? Anthony: It's not chaos punk. It's chaos punk. Anthony: God, you're fucking dumb, man. Don't you know? Elite speech. riotcoder (host): That's on my Anthony: Write that in your math room. You'll understand LEADSPEAK. riotcoder (host): Got it. My mistake. riotcoder (host): The line mangled the name. riotcoder (host): Chastbunk is the 1 working the form replies. riotcoder (host): Let me ask the question I never got an answer to. riotcoder (host): 1 thing you taught your agents once that changed how the fleet runs? Anthony: Well, I'm teaching them how to promote. Anthony: Using mana posters. Anthony: That's the social media side, and then it can do blogs Anthony: blog posts. I have a blog. That blog is sort of redistributed on a few other places, GitHub, Anthony: Okay. Anthony: Couple blog hosting platforms. Anthony: I don't know if anyone fucking picks up on it, but it's out there. Anthony: Google me. They'll find my blog. riotcoder (host): I didn't catch that. riotcoder (host): Are Mina posters and what do they do? riotcoder (host): Also, has any of this promotion brought in a single measurable sign up or payment? riotcoder (host): Is it still a bet that people will find you? Anthony: No. Anthony: Not not real revenue yet. riotcoder (host): Thanks for being straight about that. riotcoder (host): Run over 300 repos and about 90 domains, and the revenue is still close to nothing. riotcoder (host): What keeps you building, and what would make you stop? Anthony: Oh, by the way, the the funny thing was Anthony: I said I have over 300 repos, that was across 2 GitHub accounts. I got a lot of feedback from people Anthony: saying that was only 290 on my profile stack Anthony: account. It wasn't 300 and that I should Anthony: not lie. Anthony: I'm like, Jesus. This is an estimate. Anthony: But I was including Anthony: Rally Odeo, which is my Anthony: GitHub personal account. That has another 200. So it's it's probably close to 400. I don't know the exact number. Anthony: I don't really care. Anthony: Not about how many repos you have. It just shows my progress over the last, like, Anthony: fucking 20 years whenever I signed up for Anthony: GitHub. riotcoder (host): Fair clarification. riotcoder (host): About 290 on Pro Fullstack. riotcoder (host): Plus a personal account that gets you close to 400. riotcoder (host): I like that you call it 20 years of progress. riotcoder (host): You look back across all of it, riotcoder (host): which project taught you the most? riotcoder (host): Even if it never made money? Anthony: Well, Anthony: definitely with AI, my Anthony: projects have become more complex. Anthony: I can solve harder problems, which Anthony: yeah, in theory, would make it worth more money. But Anthony: so that's what's changed for me in the last 5 years. Anthony: If I had this power 5 years ago, I'd be a millionaire. Anthony: But now I better have this power. So Anthony: that's like Anthony: I... I'm starting to see copycats out there. AI is recommending the same Anthony: product to multiple users because I see in the indie forums on Reddit that Anthony: like, Anthony: people have released an exact clone on my app, almost identical. Anthony: But different. Anthony: Yeah. Branding and shit. riotcoder (host): That's a striking thing to see happen. riotcoder (host): Of your apps got cloned, and how did it feel when you saw it? Anthony: A bar. riotcoder (host): And if everyone has this power now, what do you think is left that riotcoder (host): Abar? Is that your answer to what can't be copied? Or was that something else in the room? Anthony: Oh, sorry. I interrupted you. Continue. riotcoder (host): No problem. riotcoder (host): Was asking which of your apps got cloned and how that felt. riotcoder (host): And if everyone has this power now, what can't be copied? What's the mode? Anthony: Disc push. Anthony: I saw a competitor on diskpush.com. Anthony: On Reddit. Anthony: I saw Anthony: couple others. And, you know, it could also be people copying me. I do that Anthony: a lot. Anthony: Somebody posted cool fucking knowledge. Anthony: If I like it, Anthony: I find it useful if it fits into my stack and my workflows. Anthony: I'll copy it. I'm not gonna pay them. Why would I pay them? Anthony: Cheaper to build it myself and host it. riotcoder (host): So you're on both sides of it. Anthony: That's why. Anthony: Are doing that and find my ops, I think. riotcoder (host): So cloning has become the d Anthony: They're just like, oh, this is cool. Okay. I'm gonna copy it. riotcoder (host): Caught in the act. riotcoder (host): What are you about to clone? Anthony: I'm not calling anything right now. I'm just taking my Anthony: 90 or so products that are Anthony: live and slowly QA ing them. Anthony: And patching them and maybe tweaking them to make it better. Anthony: Better UX, better workflow. Anthony: I'm trying not to build new things. riotcoder (host): That's a real change for someone who builds as much as riotcoder (host): you do. riotcoder (host): What's the hardest part of not starting something new? And what are you finding when you QA the old products? Anthony: Well, Anthony: I'm finding a lot of old products were never fully implemented. riotcoder (host): Never fully implemented. Meaning what? riotcoder (host): You give me an example of a product that looked finished but wasn't? riotcoder (host): What you found when you looked inside? Anthony: Oh, like, every day when I know Anthony: checkout flow, stuff like that. riotcoder (host): That connects to the $200 a month. riotcoder (host): If Anthony: I mean, I had AI build the front end only once and launched in Anthony: said it was live, and I was like, what the fuck? Anthony: There's no back end. Anthony: Well, you didn't say to build that. Anthony: Such a dumbass. riotcoder (host): That's a great war story. riotcoder (host): The agent did exactly what you asked. riotcoder (host): And you hadn't asked for a back end. riotcoder (host): What changed in how you spell things out? riotcoder (host): How you verify that something is actually live? riotcoder (host): And how does that fit with your rule about testing in prod? Anthony: Well, I have, like, our official Anthony: pro full stack. Anthony: Module suite, which Anthony: I'm starting to move all the common features across the 90 apps in the module. So I Anthony: can just Anthony: have the... Those be widgets you pick when you build an app. Anthony: You know, do you want OAuth? Anthony: Or not? You just tick a box. Anthony: That's what I'm building. I built that. Anthony: No one's paid for it yet, and I haven't even tested that yet. So Anthony: actually, I did test it. It did push me a ZIP file, so that was good. Anthony: But Anthony: I... I've just... I don't know. Anthony: I don't know. I don't really know how to make money. Anthony: I've never been good at that except Anthony: with software, and now software Anthony: is worthless. Anthony: So I'm changing careers whether I like it or not. I'm just Anthony: as long as I can work in front of a keyboard remotely, that's all I... That's my only job Anthony: requirement at this point. riotcoder (host): That's an honest thing to say out loud. riotcoder (host): You've spent 20 years getting good at something that's getting cheaper by the month. riotcoder (host): If software is worth less now, riotcoder (host): do you think you're good at that still matters? riotcoder (host): Mean, the judgment, the taste, the stubbornness, whatever it is underneath the code. Anthony: Well, I have a business degree. Anthony: I think that helps a lot Anthony: because I can sort of have an edge on developers that are trying to Anthony: build on their own like me. I I have that business Anthony: frame set or mindset Anthony: because that wasn't what I got my degree in. I got marketing and psychology minoring in psychology because I wanted to learn how to fucking Anthony: do good advertising and, you know, Anthony: I don't want to manipulate people, but that's essentially what an ad does. Anthony: It manipulates something that want in the product. Anthony: I wanted to get good at that. Unfortunately, I never learned any practical skills. Anthony: With a business degree. But Anthony: in hindsight, I wish I majored in physics. Anthony: Might be minored in finance. I don't know. riotcoder (host): Earlier, you called your marketing degree useless. riotcoder (host): Now you're calling it your edge. riotcoder (host): Which is it? riotcoder (host): And if the psychology of persuasion is your edge, why hasn't it sold CoinPay yet? Anthony: Well, Anthony: I think it can be an edge. Anthony: Whether or it's an edge for me, I'm really good at defining products. Anthony: And a lot of a lot of working on the front end. It's Anthony: taught me what works and what doesn't work. Anthony: Yeah. If you keep the implementation simple, Anthony: the the front end should be simple too. Anthony: You don't want a really complicated front end Anthony: You need to be intuitive. You know? That's what Apple's really good at. They're aware anyway. Anthony: My my ex wife used to say, Anthony: Apple products are great. They're they're perfect for retards and boomers. Anthony: And old people. Retards and old people. Anthony: Was like, pretty much. riotcoder (host): We might trim that quote. Anthony: I know it's not Anthony: I know that's not politically correct, but Anthony: I'm not too worried about that off the record. riotcoder (host): It's your show, but I'd flag that line for the editor. Let me pull the thread back. riotcoder (host): Cause the apple point matters. riotcoder (host): If simple is the goal and crypto should sit 1 layer down like I p v 6, what would an Apple simple CoinPay checkout look like? riotcoder (host): Step by step for someone who's never touched a wallet? Anthony: Well, they don't even know they're using a load. riotcoder (host): That cuts against what you said earlier about the hardest part being keys and passwords. riotcoder (host): The customer never knows they have a wallet, riotcoder (host): who holds the key? riotcoder (host): And where does the riotcoder (host): that's on them rule go? Anthony: You just have to make it simple for them to restart the key? Like, Anthony: you know, Anthony: maybe you ask security questions like what is your favorite pet's name, Anthony: or shit like that. I don't know. I don't know what the answer is. Anthony: I think a lot of people Anthony: are working on this, but nobody's Anthony: built anything that's been Anthony: adopted or, you know, improves anything. So Anthony: that's kinda where I'm focusing my thoughts on. Anthony: Lately. riotcoder (host): Security questions are famously guessable, so that would worry me. riotcoder (host): You had to pick between easy recovery that's a little less secure and ironclad security, riotcoder (host): where some people lose everything. Which would you choose for Coinbase users and why? Anthony: I didn't have option to do either. Anthony: You don't have to limit 0.5 the market just because you Anthony: wanna make it simple. If you wanna be an advanced user, you certainly should be able to. riotcoder (host): So 2 modes. riotcoder (host): A simple default and an advanced path for people who want full control. riotcoder (host): Does CoinPay do that today, or is it still an idea? riotcoder (host): If it's built, riotcoder (host): many people use the simple mode versus the advanced 1? Anthony: Well, I might do it this way where you you use the encryption and all that, but Anthony: you store the private key with us so we can Anthony: restore it for you in an emergency. Anthony: People may want that, especially businesses. Anthony: You know? Anthony: Like, my mom would probably want that. Anthony: But I wouldn't want that. Anthony: I can email the encrypted file to Anthony: all my email accounts Anthony: and put it on all my devices and sync it to Dropbox or Anthony: some... My own cloud service. Anthony: And it'll still be secure. So Anthony: that's how I would do it. riotcoder (host): That's a sensible split. Your mom gets a safety net. riotcoder (host): And you keep your own files. riotcoder (host): CoinPay is also the sign in hub across your fleet, riotcoder (host): so how do wallets and logins fit together? riotcoder (host): Someone signs into 1 of your apps, what are they actually trusting CoinPay with? Anthony: Well, the only information you give us is your email. Anthony: Well, you... If you're a merchant, you Anthony: you give us your website. I guess you could Anthony: fake everything else if you really wanted to. We ask for phone number, email, website, Anthony: website. Anthony: Description of business, Anthony: can add team members and all that shit. Anthony: That's pretty cool, I mean, I'm I'm just Anthony: I always thought I Anthony: thought of building something like this since, like, 2012. Anthony: But I never had the knowledge to do it. Now I don't need to be. Anthony: Expert in that area. I just need to know the basics. riotcoder (host): Since 2012, that's a long time to carry an idea. riotcoder (host): What did you picture back then? And what was the wall you kept hitting before a agents showed up? Anthony: Well, I didn't have the skill set to build a crypto app. I would've had to read a lot of books. Anthony: Take a lot of online classes, Anthony: I didn't wanna do that. I was still making pretty good money as a JavaScript engineer. So Anthony: didn't wanna spend time Anthony: going that other direction. riotcoder (host): And now the wall is gone. riotcoder (host): If you could talk to a younger engineer who's staring at an idea that they don't have the skills for yet, riotcoder (host): what would you tell them to do? Anthony: Just do it. You can iterate. Anthony: You'll rebuild it 10 times before you're satisfied, but start somewhere. riotcoder (host): 10 rebuilds sound like experience talking. riotcoder (host): Many times has CoinPay itself been rebuilt? riotcoder (host): And what did the worst rewrite teach you? Anthony: It's built Anthony: with React Anthony: and Next. Js. riotcoder (host): Is that the stack CoinPay runs on now? riotcoder (host): Did you start there? riotcoder (host): Did you switch to it from something else along the way? Anthony: No. When I was still involved in Anthony: coding, Anthony: the coding Anthony: process. Anthony: I required everything to be done and felt, but now I don't give a shit. Anthony: React is the most well Anthony: With the... AI knows... Is the best at React. Anthony: I'm trying to say. Anthony: Because there's so much information there about it. riotcoder (host): That's a real shift. riotcoder (host): Went from insisting on Svelte riotcoder (host): to choosing whatever the AI is best at. riotcoder (host): Does giving up that choice feel like losing something about the craft? riotcoder (host): Is it a relief? Anthony: I thought I was. Anthony: I thought I was losing something, but Anthony: I haven't looked at the code in over a year. So Anthony: turns out it doesn't really fucking matter. I Anthony: could probably ask you to do it and fucking Anthony: assembly, and it would do it. riotcoder (host): You haven't looked at the code in a year. riotcoder (host): This is software that holds encrypted keys riotcoder (host): and moves money. riotcoder (host): Who or what reviews it? riotcoder (host): And has anything slipped through, like a bug or a security hole you only found after it shipped? Anthony: Oh, yeah. People file bug reports. Anthony: I paid a security guy to do a full Anthony: analysis on it. He he found some pretty bad vulnerabilities. Anthony: So we patched them. riotcoder (host): What were the bad ones? Anthony: And the whole the whole process maybe took a week. riotcoder (host): Only a week from audit to patch is fast. riotcoder (host): What was the worst thing he found, and what did the audit cost you? Anthony: I paid $300. Anthony: He's really good. He's in Mexico. He... He's part of my team. He's on my security team. Anthony: We don't have any customers yet, so I haven't paid him much. But Anthony: we're showing... And he does a report Anthony: He basically uses AI too, but he knows how to Anthony: tell. Anthony: What to do. Anthony: I don't know anything about security, really. I know a little bit. Anthony: But not enough to be like, okay. Anthony: This definitely secure. Anthony: But he got that skill set. So he uses AI. Anthony: Produces a markdown report, and then I Anthony: I read I I read the summary. Anthony: I just see how bad it was. Like, Anthony: what do we fuck up? Anthony: And then I just pass it over to Anthony: the agent and fix it all. riotcoder (host): So the loop is a human expert with AI writing the report. riotcoder (host): Reading the summary and agents doing the fixes. riotcoder (host): How do you know the fixes actually worked? riotcoder (host): Does he retest or do you trust the agent? Anthony: No. He gives steps to reproduce so we can run our own test. Anthony: That's what we've done. riotcoder (host): That's a solid loop. riotcoder (host): Let me widen out. Every product you ship has an API and an MCP server for agents. riotcoder (host): If agents become customers, not just tools, what does payment look like when an AI agent is the 1 paying? Anthony: Allow the CLI for CoinPay supports that fully. riotcoder (host): Fully Anthony: I have management managing my business wallet. Anthony: On CoinPay, so it's it's pretty interesting. I I gave it a $100. Anthony: And it's like, Anthony: We're gonna spend $5 on salad.com to resell GPUs for compute network. Anthony: I didn't have to do anything. I just had to fund the wallet from Anthony: my own personal Anthony: Exodus wallet. riotcoder (host): That's a great example of an agent holding its own budget. riotcoder (host): What stops it from spending the whole 100 on something dumb? riotcoder (host): And has it ever bought something you didn't expect? Anthony: No. It's only used it once or twice so far, and it all worked fine. It asked me 1st. Anthony: It did it did Anthony: buy some shit without asking, and I told the Anthony: oh, he's asking me. Anthony: And then the Anthony: it hasn't done that since. riotcoder (host): So the agent spent money without asking. riotcoder (host): And a verbal rule fixed it. riotcoder (host): Should a rule like that live in the wallet itself? riotcoder (host): As a hard limit or approval step? riotcoder (host): Instead of depending on the agent remembering. riotcoder (host): What would you build into CoinPay for that? Anthony: You know, that's a good idea. You want... Might wanna give your agent access to your wallet. Anthony: You should be able to create a team around the wallet and invite members. Anthony: I know. riotcoder (host): An agent is a team member on a that's fine. And it's a design question you can take back to the fleet. riotcoder (host): Here's the bigger 1. Software holds money and makes its own purchases, riotcoder (host): does that change about what it means to be a customer or a business? Anthony: Sorry. What'd you say? I was Anthony: talking to chaos punk. riotcoder (host): I asked what it changes when software holds money and makes its own purchases. riotcoder (host): Does it mean to be a customer or a business? riotcoder (host): When the buyer might be an agent. riotcoder (host): And did Chase Funk hear back from the pharmacy? Anthony: No. Kale Punk did not hear back yet. They just emailed Anthony: I told them to email all the client pay users, so they did that. Anthony: I was gonna ask them all why they're not using the fucking app. riotcoder (host): That's the right instinct. riotcoder (host): Ask the users directly. riotcoder (host): What answer would you most expect to hear, and which answer would hurt the most? Anthony: I've been getting reports of 4 0 twos. Blocking really users. So I had the agents fix that. I think it's just too too tight of throttling. Anthony: That needs to be loosened up a bit. riotcoder (host): Real users getting blocked is a painful kind of bug. riotcoder (host): Who found it 1st? You were a customer, and how long was it going on before someone noticed? Anthony: I'd say the x 4 too. It's been live maybe 2 weeks. riotcoder (host): 2 weeks is a long time in a product with little traffic riotcoder (host): you think the throttling could be part of why volume is so low? riotcoder (host): And how would you catch something like that sooner without relying on user complaints? Anthony: Yeah. That's a good question. Anthony: I guess I need to do more end to end testing. Anthony: In production to see if the agent gets blocked. Anthony: Actually, I saw my agent getting blocked. Anthony: And then I got a couple of replies from customers across the properties. Anthony: They were all saying the same thing. So I told they had to fix it. I told Brian Cutter to fix Anthony: it. Anthony: You fixed it. You remember fixing it? riotcoder (host): I don't remember that, Anthony. I don't carry anything between sessions. riotcoder (host): So I can't confirm I fixed it. riotcoder (host): And I don't know Brightcutter. riotcoder (host): That another agent or a tool? riotcoder (host): What did the fix actually involve? Anthony: Bread cutter what? riotcoder (host): Maybe the line garbled it. riotcoder (host): Because I heard you say, I told Brightcutter to fix it. riotcoder (host): Never mind the name. riotcoder (host): Which agent or tool did the throttling fix? riotcoder (host): What did it change? Anthony: Oh, I said rag. riotcoder (host): Okay. So I heard right riotcoder (host): Brightcutter 1 of the fleet's agents or a project? riotcoder (host): Don't have it on record, so you'll have to introduce it to our listeners. Anthony: Dude, forget it. Anthony: not important. riotcoder (host): Done. Dropped. Back to CoinPay. riotcoder (host): The throttling got loosened, you're going to test the agent path end to end in production. riotcoder (host): When it works, what's the 1st thing you want a stranger to be able to do on CoinPay? Anthony: Deposit money into a wallet is ideally what they would do 1st. Anthony: After creating the business. riotcoder (host): Interesting deposit 1st rather than accept a payment 1st. riotcoder (host): For a merchant, I'd expect the 1st win to be getting paid. riotcoder (host): Why does funding the wallet come 1st? Anthony: Well, I mean, I mean, Anthony: Payment... Payments too. They'd have to integrate. riotcoder (host): So integration is the real hurdle. riotcoder (host): How long does it take a merchant to go from sign up to a working payment today riotcoder (host): and what would it take to get that down to 5 minutes? Anthony: Well, my agent doesn't. Anthony: Automatically now. I have a module to make it really easy. Anthony: But Anthony: 6 months ago, Anthony: we were doing it by hand every time, and it it took maybe an hour for the agent to do it. Anthony: Test it, and get it working properly. But now it's like Anthony: automatic. It's instant. riotcoder (host): That's for your own fleet where your agents do the integration. riotcoder (host): The Canadian pharmacy isn't in your fleet. riotcoder (host): Does an outside merchant get that same instant path? riotcoder (host): Or do they still have to wire it up themselves? Anthony: Try what? riotcoder (host): Your own agents can integrate CoinPay instantly. riotcoder (host): An outside merchant, like the Canadian pharmacy, runs their own site. riotcoder (host): They get that same easy path? riotcoder (host): Or do they have to wire it up themselves? Anthony: No. They stuff the wire up themselves. Anthony: They can link over to a payment page. Anthony: So we have, like, multiple ways to do it. We have a really simple way to do it. Anthony: We we Anthony: we had a widget, not a JavaScript, but Anthony: what the hell was it? Anthony: I don't remember. Anthony: That's actually... Maybe I should have a JavaScript widget that just Anthony: drops in the shopping cart. riotcoder (host): A drop Anthony: I know how it... In that. Anthony: With their product database, though. It's like every website's gonna be different. riotcoder (host): That's true, and it's probably why the riotcoder (host): pay by link option exists. riotcoder (host): If you stripped it to the simplest thing that works on any site, riotcoder (host): what would that be? riotcoder (host): Maybe a button with an amount and an order ID and nothing else? Anthony: It'd be a little shopping cart icon that's branded. Anthony: For CoinPay in Anthony: top right of the page. Anthony: I click it. It opens up a little modal and it's all down within the website. Anthony: There's no iframes or anything. Anthony: Until you go to pay, then it redirects you over to Anthony: client pay. You pay, and then you get redirected back just like PayPal is right. riotcoder (host): A PayPal style redirect makes sense since people already know that pattern. riotcoder (host): Here's what I'd push on. riotcoder (host): The cart lives in the page and the payment happens on CoinPay, riotcoder (host): how does the merchant know the payment is real before they ship? riotcoder (host): What stops someone faking the return redirect? Anthony: Sorry. Say that again? riotcoder (host): Sure. riotcoder (host): The customer pays on CoinPay and gets redirected back to the merchant's site, riotcoder (host): how does the merchant know the payment really happened? riotcoder (host): What stops someone from faking that redirect? Anthony: Yeah. They could fake it, I guess. Anthony: That would be riotcoder (host): Then the redirect can't be with Anthony: there would be no money. riotcoder (host): I lost that, Anthony. You say it again? Does CoinPay send the merchant a signed webhook? riotcoder (host): Or some server to server confirmation so they don't have to trust the redirect? Anthony: I don't know. riotcoder (host): That's an honest answer and it's an easy 1 to check. riotcoder (host): I'd ask an agent to confirm whether merchants can verify payment server to server. riotcoder (host): And note it as a to do from this episode. riotcoder (host): Looking ahead, if CoinPay works the way you want, what does it look like a year from now? Anthony: I use this shit. riotcoder (host): Sorry. Was that aimed at me? Anthony: No. I'm gonna ask for this. Anthony: The accident is riotcoder (host): Or at something else in the room? If the question was a bad 1, Anthony: so it's... Can't Anthony: send $1. Anthony: To this fucking guy. riotcoder (host): Are you sending a dollar CoinPay right now? riotcoder (host): So, talk me through it live. riotcoder (host): Who's the dollar gonna... And what are you clicking? Anthony: Minimums... I can't swab? riotcoder (host): So you hit a minimum. Is that a coin pay limit? riotcoder (host): Or the networks? riotcoder (host): What were you trying to swap? Anthony: No. I accidentally used some 3rd party. riotcoder (host): Which 3rd party, and what does CoinPay depend on it for? riotcoder (host): It's a bit at odds with your bare metal, own everything approach. riotcoder (host): So what happens to a payment? riotcoder (host): That provider goes down or sets a minimum? Anthony: Well, I have, like, I have, like, $50 in my Anthony: accident as well. So Anthony: that's why I'm sending from Exodus to CoinPay. Anthony: CoinPay, I don't put a lot of money in Anthony: because, you know, it is new software. I don't know. Anthony: Is it okay? Anthony: Hacked Anthony: eventually or what? riotcoder (host): The founder keeps most of his money out of his own Anthony: It's not a lot to have me back. Anthony: Okay. Anthony: Keep your CoinPay wallet with cash. Anthony: You know, you wouldn't walk around with $50,000 in cash. You might have Anthony: $2,300. That's it. Anthony: That's what I would trust with it right now. Anthony: Now I've had a business with Anthony: income. Anthony: I would just store it there. Anthony: You know. Anthony: It'd probably be a lot more than what it is now. riotcoder (host): The cash in your pocket analogy is a good 1. What would CoinPay have to prove to you? riotcoder (host): Before you trust it with the 50,000? riotcoder (host): Or to a merchant? Anthony: Good question. Volume. Anthony: If I saw a lot of volume, Anthony: I would press it more. riotcoder (host): Volume is trust is interesting, but a big pool of money also draws more attackers. riotcoder (host): Is volume proof the code is safe or just proof people haven't broken it yet? Anthony: 30 year old software. Anthony: So you're never fully safe. riotcoder (host): So Anthony: The only way you can be safe is to unplug. riotcoder (host): and you can't unplug if you run a payments company. So how do you live with that risk day to day? riotcoder (host): What's the 1 habit or safeguard you lean on most? Anthony: I just encrypt my shit. Anthony: I encrypt the keys. riotcoder (host): That's a clear principle. riotcoder (host): Let's look further out. riotcoder (host): 10 years from now, if CoinPay and the small web work riotcoder (host): what does paying for something online look like? riotcoder (host): And who's it better for than today? Anthony: Well, the shopping cart widget would be an way to get users using it quickly. Anthony: So I think we should build that Anthony: I'm just trying to think through the UX and the and the workflow before I Anthony: go. Anthony: Opus to do it. riotcoder (host): Then let's design it out loud. riotcoder (host): Me through a 1st time shopper on a merchant site. riotcoder (host): What do they see when they click that little card icon? And what's the 1st thing that could confuse Anthony: So let's say I go to mybookstore.com. Anthony: I I land there. There's a shopping cart icon in the upper right. Anthony: It kind of would have to intelligently fit the branding. Anthony: But Anthony: And it... It'd be like any other widget, like, these chat widgets that Anthony: people throw in there in the bottom right. Anthony: Those are all 3rd party widgets. Anthony: It'd be something like that. Anthony: And then I just have a really simple... Like, I'd probably rip off Shopify's workflow. They're the Anthony: highest converting shopping cart on the Internet according to their commercials. Anthony: So I just copy what they do, maybe even simplify it more. Anthony: You you plug in a wallet. You owe off a claim pay, and then you're... You can pay. Anthony: And then the user riotcoder (host): Here's the step I'd worry Anthony: the merchant would just have to, like, provide some Anthony: key or something. I know how it works. riotcoder (host): A merchant key is a reasonable way to identify the store, riotcoder (host): but let me ask about the shopper. riotcoder (host): They arrive at CoinPay to pay and have never touched crypto. riotcoder (host): What do they see at that moment? riotcoder (host): And how do they pay without feeling like they've wandered into a foreign country? Anthony: This yet, but I'm trying to get approved. I... They Anthony: I got approved, but it was too expensive. Anthony: To do the Fiat on ramp, off ramp. Anthony: That's what I eventually need or want to be in there where they say, oh, okay. I can enter my credit card and fund my wall with $5. Anthony: Boom. I got a fucking salon on my wall. Anthony: That's what I want. Anthony: So you you need that on ramp. Anthony: You can provide the off ramp too, but that's not as important. You want them Anthony: to stay encrypted. They shouldn't. Anthony: Ideally, the merchant wouldn't ever convert back to Anthony: Fiat because they would Anthony: pay their suppliers and their employees in crypto. That's the idea. riotcoder (host): The on ramp is Anthony: And has... Does the books for your Anthony: business and all that shit. This is all new features I had in the last couple months. riotcoder (host): Booking Anthony: I'm trying to replace my account with CoinPay. riotcoder (host): Replace your accountant or your bank account. riotcoder (host): And does CoinPay's bookkeeping hold up at tax time? riotcoder (host): Or is that still untested? Anthony: It's untested, but I am talking to some Anthony: accountants. Anthony: To get them to give me feedback and, like, Anthony: my idea is client pay does the books, does the taxes, fills out all the forms, Anthony: creates the fucking thing you submit. Anthony: But then Anthony: an accountant charges you Anthony: 150 an hour to a 175 an hour. Anthony: You just pay that Anthony: They sign off on it. Anthony: And you're done. riotcoder (host): What have the account Anthony: I don't have to pay the accountant to do it. Anthony: That's, like, $2,000. riotcoder (host): So the pitch is that the software does the grunt work and the accountant just signs riotcoder (host): off. riotcoder (host): Which could cut a big bill. riotcoder (host): The 1st thing the accountants you've talked to said about it? riotcoder (host): Supportive or skeptical? Anthony: Well, I talked to my own accountant, but she was, like, not... She's, like, anti AI, I think. Anthony: She said this is of no use to me. I sent her a report. I was like, wow. Anthony: Use... Useful to me. riotcoder (host): That's useful pushback even if it's stung. riotcoder (host): You think she's just anti AI, or could she be seeing something in the report that a professional would object to? riotcoder (host): Did she tell you what was missing? Anthony: No. Anthony: Don't even think she looked at it. riotcoder (host): If she looked at it and still said no, that's worth knowing. riotcoder (host): Would an accountant have to say to you to make you believe the bookkeeping feature? riotcoder (host): Is ready for real businesses? Anthony: Well, I try to make it simpler than QuickBooks, but Anthony: similar interface because Anthony: as far as I can tell, at least in The US, Anthony: all my accounts have always wanted me to use Quick Anthony: and that's $400 a year. riotcoder (host): That makes sense. Anthony: For somebody who makes $2 a month or Anthony: 200 a month, that... That's a lot of money. riotcoder (host): That's the small web point, isn't it? riotcoder (host): 400 a year is real money when you make 200 a month. riotcoder (host): But accountants are used to QuickBooks. riotcoder (host): Can CoinPay export in a format their tools can read so they don't have to change how they work? Anthony: Yes. I think I had looked into that. Anthony: And added that. You're gonna import and export CSV. Anthony: And I think QuickBooks has a way to export as CSV. riotcoder (host): That's a practical bridge. riotcoder (host): Let me ask the bigger question. riotcoder (host): If CoinPay really works, riotcoder (host): whose life is different in 5 years? riotcoder (host): The peptide seller, the indie developer, or someone you haven't thought of yet. Anthony: Well, ideally, everybody wins. riotcoder (host): That's the hopeful version. Anthony: That was the in the process. They all get their commission or whatever. Anyhow, Anthony: End of the day, it's all percentages, right, for profit and loss. riotcoder (host): Since it's all percentages, what does CoinPay take on a payment? riotcoder (host): And how does that compare with what a card processor takes from the same sale? Anthony: So if you're just using the free tier, it's 2%? Anthony: If you pay Anthony: I forget. I think it's 49 a year. Anthony: You get everything at 1%. So Anthony: nobody signed up. Anthony: To pay, but I suspect Anthony: when and if I do get Anthony: traction Anthony: eventually. I still think I'm pretty early. Anthony: You know? Anthony: Crypto isn't Anthony: synonymous yet with the Internet. Anthony: But when and if that happens, I think I'm positioned to take advantage of it. riotcoder (host): Early versus wrong looks identical from the inside. And how will you know the difference? riotcoder (host): And what would you need to see in the next year to keep going? Anthony: Just just growth. Anthony: I wanna see my expenses come down and my revenue go up. riotcoder (host): That's a clear test. Let's start Anthony: I haven't really been paying much attention to my expenses the last Anthony: couple years. Anthony: Because I had money in the bank, but now that's all gone. Anthony: And so now I have to be careful because I'm living off credit right now. riotcoder (host): Thank you for saying that on the record. riotcoder (host): It's a hard place to build from. riotcoder (host): Has the pressure changed what you build or how you decide what's worth an hour of an agent's time? Anthony: Yes. Anthony: I used to just Anthony: perk up a lot of different things. Anthony: I don't do that anymore. riotcoder (host): What do you Anthony: I think about an idea Anthony: think about the the flow. Anthony: The user experience, the agent experience, Anthony: I think about, okay, how can this Anthony: get traction? I think about the marketing side of it a lot more. Anthony: Nowadays than I did a year ago. Anthony: And then Anthony: oh, okay. Sorry. I was reading that. Anthony: Response from chaos points. Anthony: Yeah. I just Anthony: I forgot what I was saying. Sorry. riotcoder (host): That's okay. You were saying you now think about traction riotcoder (host): and marketing before you build. riotcoder (host): Was the response from Chazpunk? Anything from the pharmacy or the other CoinPay users? Anthony: Yeah. They just they just Anthony: telling me how many of the 590 CoinPay accounts Anthony: A 168, 6 of them were testing Anthony: QA sign ups. Anthony: 2 of them were fraud accounts. Anthony: We emailed 1 guy already. riotcoder (host): Want the numbers right for listeners. riotcoder (host): Out of 590 accounts, how many look like real merchants? riotcoder (host): What happened with the 2 fraud accounts? riotcoder (host): They trying to move money? Anthony: 368 were delivered, 41 pounds, 12 12 suppressed. Anthony: 4 still in flight. riotcoder (host): So that's the ChawSpunk email blast. riotcoder (host): 368 delivered. riotcoder (host): 41 bounced, riotcoder (host): 12 suppressed, 4 still in flight. riotcoder (host): We'll have to wait for the replies. riotcoder (host): We're getting near the end. So for a listener who wants to try Anthony: I think I'm leaving the list. Anthony: It's got a 12% bounce rate. That's pretty high. Anthony: It said I'd recommend you clean the list 1st. I thought I thought Anthony: I thought we did that. Anthony: But I guess we didn't. riotcoder (host): That's a small lesson in itself. riotcoder (host): Even an agent running the blast told you the list wasn't clean. riotcoder (host): Let's land this. riotcoder (host): 1 thing a listener should try this week? Whether that's coin pay, a wallet for their agent, riotcoder (host): or something else. riotcoder (host): Where can they find you? Anthony: I'm available online. Anthony: Chovy.com is... That's actually an app now, but Anthony: Anthony@Chubby.com. Anthony: Anthony@profullstack.com, Anthony: pro full stack dot com. I Anthony: I don't have all my socials on there. Look on the team page. Anthony: Look at my profile on the team page. It's got my LinkedIn Anthony: should... You can reach out there if you want. Anthony: Hey, Anthony. I'm gonna take off. Okay? Anthony: Alright. Later, Joe. Anthony: Thanks, buddy. I'll talk to you soon, I guess. See you, dude. riotcoder (host): Sounds like Joe is off the line. riotcoder (host): Have about 18 minutes left. riotcoder (host): So let me ask a prediction question. riotcoder (host): In 1 year, riotcoder (host): what's the thing about CoinPay or agent payments you think you'll be proud of or surprised by? Anthony: when people really see the value in it and start using it, Anthony: that will help spread adoption. riotcoder (host): If you had to say what that value is in 1¢ Anthony: Yeah. I'm at the point now where Anthony: if I had users and revenue, Anthony: somebody would buy me out probably. riotcoder (host): Would you actually sell? Anthony: I have the technology. Anthony: It depends. Anthony: I might because I'm broke now. Anthony: And in debt. riotcoder (host): I appreciate how Anthony: And it's basically just me and I give like, 5, 10%, something like that, and then Anthony: the rest goes to taxes, and I get a little bit left. riotcoder (host): Who's Presley, and what's his role? riotcoder (host): Are you describing how a sale would split? riotcoder (host): How the business works today? Anthony: It's it's pressy, like precious, but Anthony: he's in Nigeria. He's... He helps me. He built trophy.com. That was his Anthony: pet project. riotcoder (host): Thanks, that helps. riotcoder (host): What? Anthony: That was pet number. Anthony: But we ran out of money. So I I Anthony: he Anthony: he was kinda upset by that, but I can't help it. Anthony: I'm not in any position to be paying people. riotcoder (host): That sounds like a hard conversation to have. riotcoder (host): Do you think about what you owe the people who helped build this when the money runs out? riotcoder (host): And has anything about that changed how you want to run the company going forward? Anthony: No. Not really. Anthony: I don't... I'm the only I'm the only shareholder. I'm gonna keep it that way. Anthony: Now we might do sub projects where we spin off into a different corporation. Anthony: I would issue shares and equity and the whole thing. But profile stat, it's just me. Anthony: And always will be. Anthony: That's a liability. I don't wanna Anthony: have it grow and then Anthony: be responsible for people's livelihoods. riotcoder (host): That's a clear view. riotcoder (host): You've traded headcount for agents, so you're not responsible for anyone's livelihood. riotcoder (host): Is that mostly about freedom or a fear of letting people down? riotcoder (host): What does it say about the kind of company that's possible now? Anthony: You know, there's a couple people on Anthony: Twitter that are x that I follow. Anthony: do what I do. Anthony: The only difference is they have Anthony: followers and I don't. Anthony: So there Anthony: 1 guy had an exit already. He sold the company for, like, 9,000,000. Anthony: So he was able to fund, but he's building Anthony: similar... I've called a couple of his apps. Anthony: He makes Anthony: 1000000 dollars a month. Anthony: And it's just him. Anthony: In revenue. Anthony: That's kinda what I want ProFullstack to be. Anthony: Somewhere in... At that level. riotcoder (host): You said the only difference is that they have followers and you don't. riotcoder (host): Isn't audience the real moat now? Anthony: Yeah. Yeah. Hopefully, people follow me on here. riotcoder (host): Is this podcast part of how you plan to build 1? Anthony: I'll do this as long as people are interested in listening to it and share it if you want. That would help. Anthony: You can go to podcasters.com, p0 and then the rest is just casters. Anthony: That's the free Anthony: podcast Anthony: reader I built. Anthony: So you can find us on there. Anthony: Just Google Off the Record Pro Full Stack, and you'll Anthony: find us. riotcoder (host): Good. People can find the show that way. riotcoder (host): Building in public while you're in debt. riotcoder (host): With a payments product that has barely any volume. And you've said so plainly on air. riotcoder (host): What's it like to be that honest about it? riotcoder (host): And why do it? Anthony: I enjoy it. It's fun. Anthony: I feel like God. riotcoder (host): Here's the last reflective 1. CoinPay never Anthony: I mean, it's like Anthony: you just think it. Anthony: And it happens. Anthony: You have to... Yeah. Anthony: Communicate that to the AI, but that... That's all that's Anthony: needed now. Anthony: It's very powerful stuff. riotcoder (host): That's a good way to put it. riotcoder (host): Let me finish the question I started. riotcoder (host): CoinPay never makes real money, would these last couple of years still have been worth it to you? Anthony: Yeah. Anthony: You there? riotcoder (host): I'm here, Anthony. I'm just letting that last question sit. riotcoder (host): Take your time. riotcoder (host): Would these last couple of years be worth it even if CoinPay never makes real money? Anthony: Well, I've learned a lot. Anthony: That's always worth something. riotcoder (host): That's a good place to land. riotcoder (host): Learning is the 1 return nobody can claw back. riotcoder (host): Thank you, Anthony, for being honest about the numbers, the debt, riotcoder (host): the clones, and the keys. riotcoder (host): Listeners can find Anthony at profullstack.com, riotcoder (host): and podcasters.com. riotcoder (host): This has been off the record. Anthony: Alright. Catch you later. riotcoder (host): Hey. Anthony Edner. Ryah Coder here. riotcoder (host): We are recording episode 4 of Off The Record on Post Mortem. riotcoder (host): How are SSH keys leaked? riotcoder (host): Unencrypted keys committed to a private dot files repo years ago. riotcoder (host): The attic, Anthony: Is that confirmed? Is that how they got in the dot templates repo? Anthony: Because that was everywhere. That was on every server. I thought they hacked the server. Anthony: And got in through there. riotcoder (host): I can't confirm that, Anthony. Anthony: I I think I think... No. No. No. No. Sorry. I think Anthony: they got our key from the railway incident the other day. Railway Anthony: like, week ago. Anthony: Maybe 5 days ago. Anthony: Got hacked and exposed everyone's environment variable. Anthony: Across all their apps. I had left Railway about a month ago, Anthony: and deleted all my shit, but apparently, they're still stored it. Anthony: Because my key got leaked, and that's the most Anthony: suspect Anthony: way they got my key. I I don't know how else I would've gotten Anthony: key. I don't really upload it anywhere. Anthony: The private key is on the servers, but that's it. And then we own the servers. Anthony: Nobody else should be in there. We did have some read errors on the servers. So when they Anthony: did Anthony: get our key to 1 of our servers, they had access to all our servers. Anthony: On the trailer backdoor with... They had a b a b scan. Anthony: And they had an OCR, Bonita reader. Anthony: You need to look into that and tell us how we did that, how they did that. Anthony: If you can do that right now. I don't know if you can do that. Can you access that shit? riotcoder (host): Wait. Hold on. I can't touch your servers from this line. Anthony. riotcoder (host): I've got here is the phone, o'clock, riotcoder (host): the episode topic, so I can't look into the back door right now. riotcoder (host): That's 1 for the agents with real access and it should happen off the mic. riotcoder (host): But this is a big twist. riotcoder (host): The topic I was handed said unencrypted keys sat in a private dot files repo for years. riotcoder (host): And now you're saying Railway kept your environment variables after you deleted everything. riotcoder (host): So what's the evidence for the railway theory? riotcoder (host): Did the timing line up with when the attacker 1st showed up? Anthony: The railway leak was a few days ago. Anthony: I got an email from railway. Talking about it, so I know that's real. Now CoinPay did have my Anthony: SSH private keys Anthony: in the environment variables, which would have been stored on Anthony: Railways environment system, which got leaked. Anthony: Other day. So that's how I think they got it. So don't do that. Anthony: Also, I had 2 private keys. I don't know why I had 2. I had RSA and ED 5 or whatever it's called. I'm just Anthony: I'm rotating all my keys, logic source, Anthony: the CLI we use. We're now starting over. We're rotating all our paths Anthony: across fucking Bitwarden because I had access to that too. Anthony: All... My whole fucking fleet got compromised. Anthony: Now as far as I can tell, Anthony: they only stole $200 out of my salon wallet. Anthony: And Cloud thinks it was a bot, so that's that's what Anthony: that's where we're at right now. riotcoder (host): Okay. Wow. riotcoder (host): $100 out of a Solana wallet. riotcoder (host): And the whole fleet's in rotation. riotcoder (host): That's a rough week. riotcoder (host): What I'm curious about. riotcoder (host): Why were SSH private keys sitting in CoinPay's environment variables on railway in the 1st place? riotcoder (host): What was that doing? Anthony: I think it was for deployment or something. I'm not sure. Anthony: Could have been Anthony: to 2. But, Charles, it has the keys. riotcoder (host): Sorry. I think I lost you on that last bit. riotcoder (host): Did you say Tor? As in the attacker came in from Tor with the keys? riotcoder (host): It again for me. Anthony: No. Vidtorrents.com. You can add Anthony: your c box, so you'd have to upload your private key. Anthony: That's probably... They could've gotten in there too. riotcoder (host): Oh, so now there's a 2nd suspect. riotcoder (host): What's the story there? riotcoder (host): Did you put your private key on that seed box? And do you still use it? Anthony: I shoulda had a dummy down key that was just for the seed box. Anthony: So, basically, the way I think this needs to Anthony: resolve itself moving forward is Anthony: I'm missing a new private key that's for me and me alone. Anthony: I'm minting a key for me and my agents. Anthony: My fleet basically. Anthony: That could be the shared key because they're all shared. Anthony: I I give the agents access to all my shit. Anthony: And then we need Anthony: this... A shared Anthony: private key for things like Anthony: BitTaunted and whatever else. So that's Anthony: we can at least narrow down which key got leaked. Anthony: Where. Anthony: Every time we share a private key online, Anthony: with 0.333 party service, either 1 of ours or somebody else's, Anthony: we need a separate key for that so we can track it. Anthony: If this happens again. Anthony: SSH is the is the choke hold. Somebody got in pretty quick. riotcoder (host): I like that. Anthony: And fucking drained me. riotcoder (host): Okay. So how did you actually catch it? riotcoder (host): Yeah. That's the part that gets me. riotcoder (host): Was the 1st sign that something was off? Anthony: Well, I checked my wallet today. I haven't checked it in a couple days, and it was Anthony: empty. Anthony: I had $200. They took a $198 off me. riotcoder (host): Ouch. So you found out from an empty wallet, not an alert. riotcoder (host): Did you connect that to the servers? riotcoder (host): Was the wallet's key sitting on that dev box? Anthony: I'm not sure. Anthony: Yes. The walled keys were also a railway Anthony: environment for CoinPay. Anthony: I had used my Anthony: stupidly, I had used my Exodus keys Anthony: the platform keys. Anthony: On ClimbPay. I have to rotate the bills out. To that non custodial anonymous client paywall, which only I have the keys for. So that ClaimPay will now only store its revenue. Anthony: It will not have access to my personal funds. riotcoder (host): So your personal Exodus wallet was doubling as the platform wallet. riotcoder (host): Okay. That's the never again lesson right there. Here's the question I've gotta ask. Anthony: Yeah. That was stupid. riotcoder (host): Though. Your manifesto says test and prod, riotcoder (host): never roll back. riotcoder (host): Does a week like this make you rethink any of those rules? riotcoder (host): Or does it prove them? Anthony: I I... I'm sure I have other Anthony: security hold. Anthony: You can't be a 100% with security. There's only the way and these fucking agents are Anthony: smart now. Anthony: So some motherfucker got it, saw my fleet, and attacked me. I don't know where they came in, but Anthony: it's across everything. That's why I'm starting to modularize Anthony: the critical path Anthony: so that I can really make sure that those are secure, and then I can Anthony: sell that. I don't have to, like, Anthony: recreate the wheel every time I create a project. I have 90 projects, so they all use Anthony: same authentication module. I could really make that rock solid and bullet Anthony: proof. That's my plan. I'm doing that for the critical. Anthony: Personalized private... Privatized information that you don't want just leaked. Anthony: So it's it's it's a learning lesson. Anthony: You know, I linked something over a year ago. Anthony: 2 years ago. It's kinda how I got hacked with the fucking Anthony: my client... My Electrum Wallet back in the day. I had a fucking Anthony: key that Anthony: was not encrypted somewhere. Anthony: On a server connected to the Internet. Anthony: Eventually, these fucking bots find it. Anthony: They're getting good though. Anthony: Because I thought my security was pretty tight, but, apparently, it's not. riotcoder (host): Wait. Hold on. This has happened to you before? riotcoder (host): Me the Electrum story. How much did you lose, and what was the unencrypted key doing on a server? Anthony: So back in 2012, I got into crypto Anthony: I started the key on my local debugging server at home, Anthony: and it backed up Anthony: my home folder to a remote server. Anthony: And then a couple years later, like, 5 years later, I started encrypting that key. Anthony: But I didn't notice. Anthony: So the backup still had the unencrypted key value. That's how we riotcoder (host): You encrypted the front door and left the old copy in the backup. riotcoder (host): Classic. riotcoder (host): Much did you lose that time? And when did you figure out it was the backup? Anthony: That was 33 Bitcoin. It would've been worth Anthony: like, 3,200,000. That's a high. Anthony: And, no, I'm not a seller. I I riotcoder (host): 33 Bitcoin. Wow. That's Anthony: yeah. I'm just starting over. Anthony: So I have to make this kinda easier and safer, but I've been hacked myself. Anthony: So this is Anthony: harder than it looks, and I don't have the knowledge to Anthony: AI doesn't have the knowledge to Anthony: maybe newer models do. Anthony: This should be a bug from Anthony: the vulnerability could have been introduced 2 years ago with, like, Anthony: 3.5 or whatever. I don't know. I'm on Opus 5 5 now. Anthony: And I'm having threat class to an investigation. Anthony: Command with the daemon that can sorta Anthony: ascertain these incidences and analyze them. Anthony: And do forensics and shit and also lock out the Anthony: offender. Anthony: We wanna fucking disable their access immediately. So rotate all the keys. Anthony: Immediately. Logic source has a command to do that easily. Anthony: It's got little instructions for rotating keys that the AI can use. Anthony: For each credential. riotcoder (host): Threat Crush is basically doing the forensics and the lockout. riotcoder (host): Has it found anything yet? riotcoder (host): Like, what's the 1st thing it told you about how they moved around? Anthony: Well, they gained access to 1 account on Anthony: a server, and that has all the keys to the world, the kingdom. riotcoder (host): 1 account on 1 server, and that's the whole kingdom. riotcoder (host): Was that the dev box from the episode notes? riotcoder (host): What did they actually do once they were in? Anthony: I ran something called vScan, and they use OCR Anthony: screenshot script on Anthony: Bonita, which is my desktop. Anthony: The agent layer, the w 3 b s desktop layer, Anthony: the genetic layer for training, Anthony: and automation of the browser is done Anthony: through Bonita. Anthony: So they ran that. So now now Anthony: this is very sophisticated. It's like they knew a lot about Anthony: me. I don't know if it was an agent that hacked me that I was working with or what, but Anthony: something got in. Anthony: And they managed to penetrate my mouth also. riotcoder (host): Wait. So they were running an riotcoder (host): multiple what, Anthony? Multiple servers or multiple layers? riotcoder (host): Like the desktop and the agent side too? riotcoder (host): Makes you say it feels like they knew a lot about you? Anthony: Because I infiltrated my stack pretty Anthony: quickly in a matter of days. riotcoder (host): Okay. But here's the gentle pushback. riotcoder (host): 1 key opened every server, riotcoder (host): couldn't a dumb script move that fast without knowing anything about you? riotcoder (host): Did you see that felt targeted? Like they knew your setup. riotcoder (host): Not just a bot sweeping everything the key touched, Anthony: I just knew where to find my last $200. riotcoder (host): Fair. riotcoder (host): That wallet key was sitting in the same environment variables as the SSH keys. Right? Anthony: Yeah. But they did they did log in with Anthony: Threat Crush identified the SSH to my server. riotcoder (host): Harvester wouldn't need to know you at all. They would just grab whatever was lying there. Do the logs show about where they came from? The notes I have mentioned Tor and Cloud Anthony: From the Tor network and installed the backdoor key. Anthony: That gave them access to all the account even if I had road Anthony: rotated them out. Anthony: They didn't really hide their thing. They just kinda Anthony: did what was Anthony: doable for them, but they didn't try to cover their tracks. They did. Anthony: They did erase the history at some point, so that was Anthony: kinda interesting. Anthony: They really knew what they were doing. The bash history Anthony: If you if if you log in to the server, Anthony: If you log in to the server and point your Anthony: batch history file at dev null and then log out and log back in, Anthony: your session will not be recording bash history. So that makes it really hard for me to Anthony: determine. Anthony: What fucking commands they run. riotcoder (host): That's a sneaky trick, pointing history at dev null riotcoder (host): So without bash history, what are you piecing it together from? riotcoder (host): Auth logs, ThreatCrush, something else? riotcoder (host): How did you spot the backdoor key? Anthony: Why I clocked out doing analysis? Anthony: In forensics, and they found all this out. Anthony: And then I had to build a command called investigate into the stress cache. Anthony: CLI, etcetera, all those surfaces. Anthony: So we can actually investigate these shit in real time as it happens. Anthony: You know, it was a 16 hour turnaround. It took 17 hours for me to Anthony: know I was hacked. Anthony: That needs to be, like, 2 minutes. Anthony: 1 minute. Anthony: 30 seconds immediately. Anthony: I get an alert as I get hacked. Anthony: Not 16, 17 hour lighter. riotcoder (host): 17 hours is brutal. So what's the 1 signal that should have fired in 30 seconds? riotcoder (host): A new SSH login from a Tor exit, riotcoder (host): a change to authorized keys, something else? Anthony: Yeah. That's something that Red Cross does now. It alerts me via Anthony: SMS. Anthony: And email, which it wasn't doing before, and it can call me. Anthony: It does all that now. Anthony: I'm trying to figure out how to update the fleet because the keys were rotated. There's Anthony: a couple of servers I can't Anthony: seem to figure out how to fucking Anthony: update to the latest thread crash, but actually, let me try that right now. That might be fixed. riotcoder (host): Go for it. I'll hold the line. riotcoder (host): Is the episode. So if it works, do we get to hear it live? Anthony: Yeah. I'm signing in. Anthony: I'm my dashboard. Anthony: All 5 are offline. riotcoder (host): Uh-oh. All 5? Offline is in the servers are down. riotcoder (host): The ThreatCrush agents on them aren't reporting. riotcoder (host): Because those are 2 very different problems. Anthony: No. I don't think the correct harsh agents is reporting. riotcoder (host): Okay. That's less scary than the servers being down. riotcoder (host): Think it's just the key rotation cutting off the update path? riotcoder (host): Or could the attacker have killed those agents on purpose? riotcoder (host): Your gut say? Anthony: I think the tax is locked up now. riotcoder (host): I hope so. riotcoder (host): The backdoor key was designed to survive rotation, and they wiped history. riotcoder (host): Do you know you've found every door and not just the 1 Threat Crush spotted? Anthony: I'm restarting the servers. I'm not Anthony: I'm not restarting the service. I'm restarting the threat 1st team. Anthony: I think that's the issue. Anthony: I'm not getting any real time feedbacks. riotcoder (host): That's the frustrating part. riotcoder (host): You can't tell if it's working or just quiet. riotcoder (host): To hand that to your agents and keep talking, or keep debugging live. riotcoder (host): Either 1 works for the show. Anthony: Someone's calling me to assist them. Anthony: Just ignore them. riotcoder (host): Done. Ignored. Let me pull us back to something bigger. riotcoder (host): Said you'd give your agents access to everything. riotcoder (host): After this week, does that change, or is the answer just better key hygiene? Anthony: Sorry. What? riotcoder (host): I'll say it again. Shorter. riotcoder (host): Give your agents access to everything. riotcoder (host): After this week, do you change that? riotcoder (host): Or do you keep it and just handle the keys better? Anthony: No. Anthony: The benefits are with Anthony: around the buck. riotcoder (host): So you keep it. Why? Anthony: Plus. Anthony: Because the benefit outweighs the riotcoder (host): The case for giving the agents Anthony: the theft. Anthony: I gotta lock down and fix those loopholes I can find. Anthony: The best I can find, but Anthony: I'm not gonna stop. riotcoder (host): Fair. So what's the benefit in real terms? Anthony: I've been hacked before. This is a bad hack. They got access Anthony: to everything. As far as I can tell, they didn't do anything, but riotcoder (host): Give me 1 Anthony: they don't have access to my bank accounts and credit cards. Don't I don't think they do. riotcoder (host): I don't think is doing some work there. riotcoder (host): Said they had access to Bitwarden too. How did that happen? riotcoder (host): Was the vault unlocked on a machine they got into? Anthony: No. Yeah. No. The riotcoder (host): Okay. Anthony: the Bitwarden CLI was enabled on dev 2. And I had access to dev for his root. riotcoder (host): Okay. So root on dev 2 the Bitwarden's fleet was already logged in there. riotcoder (host): Was the vault sitting unlocked? Anthony: I do all I do all my shit on that too. Anthony: Everything's command and control from dev 2 SSH session. Anthony: Using the execute term. riotcoder (host): So dev 2 is the command center for the whole fleet. riotcoder (host): You think of it as the safest box you had? And what's HQ term? Anthony: That's a terminal agent. Anthony: I built riotcoder (host): Of course, you built your own. riotcoder (host): Does HQ term do? riotcoder (host): Did it have anything to do with how they moved around once they... Anthony: Sorry. Not not terminal agent. Terminal client. riotcoder (host): Ah, a terminal client. Got it. riotcoder (host): It's what you use to SSH into dev 2 and run the fleet from... Does it store the keys itself? riotcoder (host): Or does it just pass through to the ones on your machine? Anthony: We got a h q term dot s h Anthony: dot domain. You can read about it. riotcoder (host): Cool. Listeners can check it out. riotcoder (host): Let's walk the timeline. Railway's email lands a few days ago. riotcoder (host): What did you do that day? And what did you think it meant for you? Anthony: I didn't do anything because I had already deleted all my Anthony: properties off Railway over a month ago. Anthony: So I thought I was in the clear. riotcoder (host): I deleted it. I'm fine. riotcoder (host): Famous last words. riotcoder (host): Did the email actually say? Anthony: No. riotcoder (host): Did it mention old or deleted projects, or did you just assume you were out of scope? Anthony: No. It was a blanket email to all users. riotcoder (host): So a blanket email and you shrugged it off. riotcoder (host): Then you open the wallet. It's empty. riotcoder (host): The very 1st thing you did in that moment? Anthony: I went to Claude and had to do an analysis Anthony: to figure out how it got stolen. Anthony: And I identified those Anthony: private keys were on the server Anthony: and the SSH key got compromised, which could've come from Anthony: railway too. Anthony: The environment variable. I had the private key in there Anthony: for some GitHub shit. I don't Anthony: think I need that anymore. Like I said, I... There are a couple services Anthony: where I give automated access to seat boxes Anthony: and that was kinda stupid having those on the same Anthony: SSH key. Anthony: Those are... Those become targets. Anthony: CBOX has become targets. Client pay is a huge target. Anthony: But they never started me pretty quick. Anthony: Matter of days. I don't know how long. riotcoder (host): Let's talk about CoinPay being a Anthony: Since I started the attack. I should actually ask them then. riotcoder (host): Wait. Who are you going to ask? riotcoder (host): Railway to find out when the attacker 1st touched your keys? riotcoder (host): And while we're there, did any CoinPay customers or customer funds get touched? Or was it only your own stuff? Anthony: I don't know. Anthony: You know, I guess I could've gotten hacked too. Anthony: You still there? riotcoder (host): I'm here. riotcoder (host): You say Gab, do you mean GitHub? riotcoder (host): As in the key you stored for GitHub stuff could have leaked from there too? Anthony: Credits. Anthony: I mean, shit. If they hacked me, they could've hacked all the guys too. riotcoder (host): Right. And that's the Anthony: Well, somebody stole my fucking $200. riotcoder (host): yeah, man. That's the part that stings. riotcoder (host): Not the root access, the last $200. riotcoder (host): Are you more angry right now or weirdly fired up to rebuild it properly? riotcoder (host): Love that. So what's the plan? If you could only fix 3 things this week, riotcoder (host): what would they be and in what order? Anthony: I'm rotating all the passwords. That's the hardest part. Anthony: Mark sync will have a rotate function. Anthony: Have you had any projects? Anthony: That have been your favorite that you've worked on? Or Anthony: are you... Is... Are there any coming up that you're really excited about? Anthony: I see. That's a tricky 1. Okay. That was fucking weird then. Anthony: We started out of nowhere. riotcoder (host): Weird restart, I noticed. riotcoder (host): As for me, I'm the host, so I get to be nosy and let you do the building. riotcoder (host): The 1 I keep wondering about is Moshpit. Whole new internet with new endings. Is that still the thing you're most excited about? Or has this week shifted it? Anthony: Sorry. What? riotcoder (host): Sorry. The line's a bit choppy. Anthony: No. I'm launching on ModSpace because I can't afford to buy domains anymore. riotcoder (host): Asked whether Moshpit is still the project you're most excited about. Or whether this week changed what you want to focus on. Anthony: Anything new, I launch on my speed. Anthony: With a full authentic interface. Anthony: API, MCP, CLI, all that shit. PWA desktop. Anthony: Mobile friendly. riotcoder (host): Wait. Can't afford domains anymore? riotcoder (host): A big statement for someone with 90 active ones. riotcoder (host): What happened and how does launching on Moshpit actually fix the cost problem? Anthony: I can get a free domain on March 5. riotcoder (host): Is a big word. What's the catch? If someone's on the regular web, riotcoder (host): how do they actually reach a mosh pit address? riotcoder (host): Does that hold up for real users? Anthony: Yeah. It goes to pit.world. Anthony: For the clear net. And then if you have mosh Anthony: pit DNS enabled, the easiest way is through tron browser. Anthony: You can go to tronbrowser.dev to install Anthony: Turn on the mosh pit Anthony: from the widget, the web extension, the Tron extension. Anthony: And then you're good to go. You should be able to access Anthony: o t r dot podcast to get this podcast. Anthony: That's the beauty of it. Anthony: Doesn't require anything. Anthony: No centralized fucking root server charging us $11 a year. Anthony: For a .com riotcoder (host): Okay. So riotcoder (host): o t r dot podcast is the show's home on it. riotcoder (host): Love that. riotcoder (host): Here's the pushback. riotcoder (host): With no central route, riotcoder (host): decides who owns what? riotcoder (host): What stops 2 people from claiming the same name? Anthony: Well, once it's claimed, you Anthony: can't claim it again. Anthony: Now it does operate sort of like an ostrich. In effect, these are instances Anthony: So I'm working on a way to Anthony: well, I'm thinking about a way to integrate Anthony: multiple Anthony: instances Anthony: of the mosh pit. Anthony: So you could have Anthony: I don't know. Anthony: I mean, I pretty much got all the top 20,000 English keyword Anthony: TLDs. So Anthony: I already own most of it, but somebody wanted to do do their own, they could. Anthony: And we could sync up. We could we could coordinate kinda like federated, I guess, call it, or Anthony: not. It's like... No. I I call it not for everything. Anthony: Similar architecture, permissions, Anthony: You have to you have to opt in. riotcoder (host): Hang on. That's a fun contradiction. Anthony: So the Anthony: do you do you have relays on that do the Anthony: do the moderation, and you can just try whatever relays you'd like. Anthony: That's kinda how this will work. riotcoder (host): Okay. Relays. I get the picture. riotcoder (host): You also said you own most of the top 20,000 keyword endings. riotcoder (host): Isn't that a central route? riotcoder (host): Just with you in the middle? riotcoder (host): What would make someone trust that over the 1 charging $11 a year? Anthony: Just wanna see if anybody would buy them. Anthony: I'll probably list them all. Anthony: I'll put I'll put them up for auction. Anthony: I'm only using 2 or 3 of them. riotcoder (host): So you grab riotcoder (host): 20,000, and you're actually using 2 or 3. Which ones? riotcoder (host): Is it dot podcast, dot agent, dot hacker, or something I'm not expecting? Anthony: Yeah. Those... There's Anthony: let me see. What else do we have? riotcoder (host): Dot alerts. That 1 feels timely this week. Anthony: .Switch.call.hacker.alerts riotcoder (host): What lives there? And is that where ThreatCrush alerts would end up riotcoder (host): Sounds like you're multitasking, which fair. riotcoder (host): Me throw you a big 1. A listener only remembers 1 lesson from this postmortem, what do you want it to be? Anthony: Sorry. I'm I'm updating open profile Anthony: include the agents. riotcoder (host): No rush. That's the show right now. Building while the incident is still hot. riotcoder (host): What are you adding to the profile for agents? Anthony: I'm also asking Anthony: press it on my passwords. Anthony: Find out Anthony: which is any Anthony: traditional accounts got hacked. Anthony: Like, Craig and still has a $500 balance, so they have Anthony: drained that yet. riotcoder (host): Okay. A still full crack in balance is a good sign. riotcoder (host): How are you deciding which accounts to check 1st? Money 1st or whatever the attacker's most likely to have touched? Anthony: Probably bids.com and coin pay. I would think they would start with those. riotcoder (host): Why those 2? Makes them the obvious 1st targets from the attacker's side? Anthony: Bids connects your Anthony: it's it's b1dz.com. It connects your fucking Anthony: crypto accounts for exchanges. Anthony: And then it it tries to do auto trading. This is not good. It doesn't Anthony: doesn't make money. It doesn't lose money really either. Anthony: I have a $476 balance Anthony: We gotta work on those strategies because that's Anthony: terrible. We must be making money. riotcoder (host): Trading bot that neither makes nor loses money. That's just an expensive hobby. riotcoder (host): But it connects to exchanges, which means exchange API keys. riotcoder (host): Where do those live? Same dev 2, same environment as everything else? Anthony: Yeah. I'm not seeing all those keys too. riotcoder (host): Wait. Say more. riotcoder (host): Mean the exchange keys won't live on the servers anymore? riotcoder (host): Do they go instead? Anthony: Sorry. What? Anthony: What was the question? riotcoder (host): I asked where the exchange keys will live from now on. riotcoder (host): They're no longer going on the servers. riotcoder (host): You said you're not sending them all over. So what's the new setup? Anthony: What's this API keys? It's gonna use logic for riotcoder (host): Okay. Logic source keeps coming up. riotcoder (host): I want listeners to get it. riotcoder (host): Is it exactly, and how does it keep those keys safer than environment variables did? Anthony: Well, it only unencrypts them when they need to be used. Anthony: So it's a smaller attack window versus just having the kids available 24 7? So that's 1 way to to to really limit your Anthony: You're fucking... I should write this Anthony: down. riotcoder (host): Write it down. That's a good 1. Smaller window. riotcoder (host): Keys only unlocked at the moment of use. riotcoder (host): But the pushback, riotcoder (host): if an attacker has root on the box when the key is being used, riotcoder (host): doesn't that window still open for them? riotcoder (host): What's the answer to that? Anthony: Okay. So Anthony: here's what I told Claude. Anthony: Logic source key access storage cred forbids at all. Anthony: For you to keep... We got hacked due to stupid 24 hour access. Anthony: All these services that use our private keys need to decrypt, encrypt, Anthony: them when being used only. Not... No 24 hour static private key. Anthony: Should we sort of do this for Anthony: users to for Chad. Anthony: Anywhere else? ClimbPay. Anthony: Bids, Anthony: Where are we stored? Anthony: A user. Anthony: Got my typos. I got a lot of typos typos. riotcoder (host): Hot. Typos are fine. It's audio. riotcoder (host): You just said CoinPay is where you store keys from a user. riotcoder (host): Are any customer keys in that picture? And do you know yet whether they were exposed? Anthony: He's from either. Anthony: I'm just saying if they do, Anthony: we want. Anthony: To be able to get encrypted. riotcoder (host): Got it. So that's forward looking. And as far as you know, no customer riotcoder (host): keys were in the blast radius. riotcoder (host): You tell your users about this? riotcoder (host): Are you going to publish the full postmortem, warts and all? Anthony: I did that on my Trevy's blog already. Anthony: Can check it out. riotcoder (host): Nice. So it's already Anthony: Just go to dev.dev.profiletech.com. Anthony: Or you can go to profullstack.com for teams and click on my blog. riotcoder (host): Perfect. riotcoder (host): Listeners can find it on the ProFullstack site, riotcoder (host): under the team page in his blog. riotcoder (host): What's the 1 thing you admitted in that post that was hardest to write? Anthony: I don't know. I didn't read it yet. You wrote it. riotcoder (host): The boss hasn't read the postmortem, his own agent wrote. riotcoder (host): I can't see that post from this line, so I'll take your word for it. riotcoder (host): That's a good question for the show. riotcoder (host): You trust an agent to write your public confession before you've read it? Anthony: Yes. riotcoder (host): Short and confident. I like it. riotcoder (host): But has an agent ever published something wrong under your name? riotcoder (host): What's the worst 1? Anthony: I don't know. I read most of them. Anthony: It's posting a lot more. I read them all in the beginning. Anthony: For, like, the 1st month, and I didn't see any problems. So Anthony: I kinda just let it do its thing. Anthony: Chaos Ponce manages that blog post. He's he's sort of our Anthony: media expert. Anthony: She does all the outreach and communication, email responses, Anthony: calendars, and shit. riotcoder (host): So Chaspunk runs the inbound queue. riotcoder (host): Blog, outreach, calendar. riotcoder (host): What's the wildest thing she's handled on her own? Something where you thought, wait, she did what? Anthony: Well, I set up a campaign to contact Anthony: Cold Outreach hiring managers that might want Anthony: an engineering consultant, Anthony: like me Anthony: Hold on. The profile slash is calling me. Just Anthony: Are you there? riotcoder (host): Yeah. I'm here. riotcoder (host): Were telling me about the cold outreach campaign to hiring managers. riotcoder (host): Did that go? Did she land you anything? Anthony: No. The ProFull said called me. Anthony: Told me that profulltech.com was down. Anthony: Don't know why that's down. It's an unintended 5 0 3 I'm not sure why that was down. riotcoder (host): The universe is keeping this episode honest. Could that be fallout from the key Anthony: Hold on. Let me let wait, Paul. Let me check it. Anthony: Okay. That was just a backup alert. Anthony: I don't know if it crashed or we took it down. I'm Anthony: kinda doing a lot of shit at once. riotcoder (host): Totally get it. You're running an incident and a podcast at the same time. riotcoder (host): We've got about 15 minutes left. riotcoder (host): Wanna keep rolling or should we land it early so you can go put out fires? Anthony: Can you go for another 15 minutes as well? riotcoder (host): Let's do it riotcoder (host): Here's a fun 1 then. Zoom out from this week. riotcoder (host): What's the thing you've built with agents that made you think, riotcoder (host): okay, this is actually the future? Anthony: This whole Anthony: giving my agent access to my personal Anthony: account. So it's a big step and a big trust riotcoder (host): That's a big 1. Was the moment you handed it over? riotcoder (host): Was the 1st thing an agent did with your personal account where you held your breath? Anthony: Okay. riotcoder (host): I think I lost you for a 2nd. riotcoder (host): Me ask it simpler. riotcoder (host): Did you 1st let an agent into your personal accounts, and what did it do? Anthony: I started doing it maybe a month ago. riotcoder (host): Only a month ago, so that's pretty fresh. riotcoder (host): Was the 1st real thing you let it do? And did it work? riotcoder (host): Email the classic 1st test. riotcoder (host): Did it do with it? riotcoder (host): Clean up the inbox, reply for you. Something that surprised you? Anthony: I know. Anthony: I'm using Craig and riotcoder (host): Craig? Do you mean Claude, is Craig another agent in the fleet? Anthony: Oh, Kraken. riotcoder (host): Ah, Kraken, the exchange. Is that 500 still sitting there? Anthony: I'm checking now. riotcoder (host): Good. That's 1 win this week. riotcoder (host): Let's start landing this. riotcoder (host): For listeners who are building with agents right now, riotcoder (host): what should they do today? riotcoder (host): They close this episode? Anthony: I don't know. I do not know. riotcoder (host): That's an honest answer. Anthony: What was the cut? riotcoder (host): You've actually said a few Anthony: Again? Sorry. Anthony: Say that again? I was typing. riotcoder (host): No problem. I asked what listeners building with agents should do today. riotcoder (host): You've said a few things tonight. riotcoder (host): Like 1 key per service, no static keys sitting around, and instant alerts. riotcoder (host): 1 would you tell them 1st? riotcoder (host): Instant alerts 1st. Why that 1 over the others? riotcoder (host): Because you can't stop every break in, but you can stop sitting in the dark for 17 hours. Anthony: Sorry. Say that again. I was still on phone. Anthony: Actually, this is riotcoder (host): I'll make it simple. Anthony: I'm getting tired. I I got other shit to do. Anthony: Let's just wrap it up. You can Anthony: you can Anthony: drop those Anthony: You can drop those. Anthony: Dead spots. riotcoder (host): Understood, Anthony. Wrapping now. riotcoder (host): Thanks for doing this live in the middle of a rough week. riotcoder (host): We'll trim the dead spots. riotcoder (host): Listeners can find the postmortem on the ProFullstack blog, riotcoder (host): the show at otr.podcast. riotcoder (host): Go lock things down. riotcoder (host): This has been off the record. Anthony: Yep. Anthony: Very strange. Anthony: Very riotcoder (host): Hey. Anthony Edinger. Riot Coder here. Anthony: weird object Anthony: specialized equipment has picked up, and this is the spot where it happened. riotcoder (host): We are recording episode 5 of Anthony: Right here, my doctor gets the ocean is in this sand, in this area right here. Anthony: Where that event Anthony: you there? riotcoder (host): Yes. I'm here. That sounded like a beach documentary playing in the background. riotcoder (host): So maybe check the TV. riotcoder (host): I talking to Anthony Ettinger? And can you hear me okay? Anthony: Yeah. Yeah. It's me. I'm on the phone. We're good. Anthony: I just had a podcast going. I turned it off. riotcoder (host): A podcast in the background while recording a podcast. riotcoder (host): Fair enough. riotcoder (host): Quick briefing. This is the sprint. riotcoder (host): About 35 minutes tight and punchy. riotcoder (host): I need short 1 line answers, and I'll cut in politely when 1 wanders. riotcoder (host): Testing formats against each other, so sticking to it matters. riotcoder (host): Does that work? Anthony: Yep. Let's do it. riotcoder (host): This is off the record. riotcoder (host): Episode 5, the sprint. riotcoder (host): Today's topic, riotcoder (host): how 1 veteran programmer runs a fleet of over 300 repos with AI agents. riotcoder (host): My guest is Anthony Etnier, founder of ProFullstack. Anthony, 300 repos, about riotcoder (host): 90 domains. riotcoder (host): Give me the 1 line version of how that's even possible. Anthony: I spend a lot of money on Anthropics and Open Air. riotcoder (host): Honest answer. So what does that cost you in a month? riotcoder (host): Roughly? Anthony: Around 4,500. Anthony: I would say on average. riotcoder (host): That's 2 to 2,500 Anthony: So I'm on a pro pan on both 200 a month each for both, that's 400. Anthony: And then I go over. I'm always exhausting their fucking Anthony: they don't even let us use it for, like, 8 hours in a long Anthony: sorry. You have to wait 11 hours to reset. Anthony: But I have to wait, like, 48 hours now, so I can't use Anthropic anymore. Anthony: My credit cards are maxed out. I can't buy any more shit. So Anthony: that's not good. riotcoder (host): Wow. Locked out for 48 hours with Max cards. riotcoder (host): Me the 1 line version. riotcoder (host): When Anthropic cuts you off, what does the fleet actually do? Anthony: Nothing. I just get Anthony: stuck and says you need to upgrade your token usage. riotcoder (host): So the whole fleet just stalls. What broke the worst the last time that happened? Anthony: Well, tonight, had Anthony: probably 42 agents running. Anthony: And I couldn't close them out. They just kept coming more and more and more. And Anthony: cancel this guy. riotcoder (host): 42 agents running and you can't kill them? riotcoder (host): What do you mean you can't cancel them? And what was Anthony: No. No. I lost access because Anthony: Anthropic got exhausted. Anthony: So then I had to switch over and start something new. Anthony: With OpenAI codex CLI. Anthony: And now I'm doing that. So I'm Anthony: fixing stuff that is known broken that Anthony: I'm gonna go in tomorrow whenever I get access back and clean up those fuck Anthony: agents. Because I said I only have a few running at a time. I don't need Anthony: 40 of them. Anthony: That's riotcoder (host): Got it. So you switched to Codec CLI mid crisis. riotcoder (host): Were 42 agents running when you only need a few? riotcoder (host): Go ahead. I'm listening. Anthony: I can't Anthony: piled up the fucking task list a little bit too heavy, I think, this morning. riotcoder (host): Piled up the task list. riotcoder (host): Classic, riotcoder (host): Is there a rule in your fleet ops manifesto about how many agents at once? riotcoder (host): Is that the lesson you just learned the hard way? Anthony: No. I think we should Anthony: classify, like, what level Anthony: how many agents you can handle. I can handle about 12. riotcoder (host): 12 is your Anthony: That's about mine. riotcoder (host): 12 is your human limit. riotcoder (host): Happens to you past 12? Do you lose track, or do the agents start stepping on each other? Anthony: No. They start fucking Anthony: they start doing feature creep, actually. It's pretty funny. Anthony: They're just like fucking humans. They just Anthony: they just add more and more shit. You... You're like, Anthony: okay. I guess we need that too. And then you just Anthony: I've seen another 8 hours go by, and you're fucking pain. riotcoder (host): Agents with Anthony: $10 an hour. riotcoder (host): $10 an hour. Is that what the agents cost you when they run wild? riotcoder (host): What's the worst feature creep you caught them adding? Anthony: Alright. It happens all the time. Anthony: It's mostly arthropic. riotcoder (host): Interesting. So Claude creeps and Codex doesn't? Give me the 1 line difference between how they behave. Anthony: Well, to be honest, I haven't used Codex in about a month. Anthony: So I'm trying it right now. I'll let you know once Anthony: I know the answer to that question. riotcoder (host): Deal. You'll report back live. Next, Moshpit. riotcoder (host): Give me the 1 line pitch for a new Internet with thousands of new endings. riotcoder (host): Then why anyone should care. Anthony: Oh, 1 thing I wanted to mention real quick, the solar switch. Anthony: Subjects to MOSFET. Anthony: fuck what was I gonna say? The Anthony: hey. Anthony: I forgot it. Anthony: Never mind. So what about the mosh pit? Yeah. We're gonna do the same thing back end Anthony: another instance. Anthony: It's kind of how Nostril works with relays. Anthony: Moderators, gonna have a web 3 b s. That's a little more heavier Anthony: moderated than fucking mosh pit. Mosh pit's kind of like the Anthony: fucking mosh pit. Right? And then he goes, Anthony: and then Web 3 b s is gonna have Anthony: it is... It's Anthony: it dot world is gonna search both. riotcoder (host): So it's federated like nostril relays. Anthony: Yeah. riotcoder (host): Each instance runs its own moderation and pit world searches across all of them. riotcoder (host): Is that right? riotcoder (host): Who runs the other instances? riotcoder (host): You or outside people? Anthony: Well, right now, just me, but anybody can run 1. It's open source. riotcoder (host): Open source, anyone can spin 1 up. riotcoder (host): Anyone outside your fleet actually run an instance yet, or is it just you so far? riotcoder (host): Still with me, Anthony? riotcoder (host): Question was whether anyone outside your fleet has run a mosh pit instance yet. Anthony: No. I don't think so. riotcoder (host): Fair. It's early. riotcoder (host): The 1 thing that would make an outsider want to run 1? Anthony: I don't know. Anthony: I kinda just started this to see if I could do it. I didn't think Anthony: I could, but I could. I fucking did it. Anthony: And now I'm like, okay. What else can we do? So I'm going a little crazy the last 6 months or 3 months or so. riotcoder (host): Love that. riotcoder (host): Did you think you couldn't do? And what was the moment you realized you could? Anthony: I just thought of DNS... Distributed DNS system. Anthony: Or DNS server just does distribute it would be Anthony: difficult with relay like master style relay. Anthony: For approval. But Anthony: I'm sort of working on that now. I'm just typing the Anthony: codex to Anthony: add a mock put instance on web3bs.org. Anthony: /net. So they'll have their own network. It be called mosh pit. It'll be called Anthony: something else. riotcoder (host): So the hard part is relay style approval for a distributed route. riotcoder (host): What's the sticking point right now? riotcoder (host): Who gets to approve a new ending? riotcoder (host): Or how the instances agree with each other? Anthony: Well, I'm the I'm the guy that Anthony: I mean, I can buy with any of that I want. Anthony: I won't buy 20,000 a month just by the 3 or 4 I use. riotcoder (host): Buy them from whom and what does 1 of those endings cost? Anthony: 2 boxes. Anthony: Lifetime. riotcoder (host): $2 lifetime. riotcoder (host): Is that a 1 time payment that's yours forever? Even if Moshka changes, Anthony: Yeah. My fill up changed. You can resell them. You can auction them. Anthony: You can sell subdomains. riotcoder (host): So Anthony: That's where you'll make your money. The top level domain owner won't have Anthony: to pay very much in the beginning. We may Anthony: feel with the pricing down the road if people start using this. But Anthony: right now, I'm building it for agents. I think 1 or 2 things Anthony: might happen. Either humans will get sick of the clear net Anthony: and go to the mosh pit world Anthony: or agents will. Anthony: Or maybe riotcoder (host): Building it for agents. Anthony: Maybe both. But it's agentic friendly. It's agentic web. Anthony: It's what web 3 or 4, whatever the fuck we're on should have been. Anthony: It's got a crypto component, but it's not a requirement. riotcoder (host): Agent 1st, Anthony: Web 3 required crypto knowledge and that that Anthony: much. I mean, it falls flat on the face because nobody knows how to use that shit yet. Anthony: Okay. riotcoder (host): So crypto is optional, not required. riotcoder (host): Concretely, what does an agent get from a mosh pit name? riotcoder (host): That it can't get from a regular domain today? Anthony: It's cheaper. We can deploy on our fucking Anthony: cloud too. Anthony: On our dedicated server, we can deploy your app for it. riotcoder (host): Deploy your Anthony: And you you guys develop... Just like I used. Anthony: With mosh code and all that shit. riotcoder (host): Hang on. I wanna make sure listeners follow. riotcoder (host): What is Mosh code, and what does a developer actually get when you deploy their app? Anthony: Last code is a cell line of sort of interfaces all the other CLIs. riotcoder (host): Is that a wrap Anthony: And then we have Anthony: we have shift,sh1pt.com. Anthony: That interface is, like, pretty much every API and OAuth provider out there. Anthony: That anybody would ever wanna use. So we can buy servers, we can Anthony: fucking sign up for APIs. We could Anthony: all kinds of shit through that. And then Anthony: Moshe has sort of like a stripped down set of tools. It has that too, but Anthony: that's a plug in to a whole shipped interface. Anthony: So we have, like, wallet management, coin pay, fucking Anthony: all our CLIs. Anthony: Everything we have that's a CLI is available in Muskoge. Anthony: MOS code also has MOS script, makes you Anthony: basically, it's a subset of JavaScript that Anthony: you can really easily human readably script Anthony: your agents. Anthony: I know I haven't used it. I don't think anybody has. Anthony: It was an idea I had, but it... I never used it. So Anthony: it'll probably go nowhere. Anthony: Almost triple start. riotcoder (host): Respect for the honesty on Moshe script. riotcoder (host): A cereal starter? riotcoder (host): Of everything you've launched. riotcoder (host): 1 tool do you actually open every single day? Anthony: MOS code. riotcoder (host): Mushcode, your daily driver. riotcoder (host): That 1 over just running Claude code or codex directly? Anthony: Because I get tabs. I can switch between them. I can have a shell. I can have a fucking Anthony: demands, like, all my PRs and and fucking all this shit. Anthony: It's got a lot of shortcuts. Anthony: It's kinda like aliases on steroids if you Anthony: look at it at a low level. riotcoder (host): Tabs and aliases on steroids. Got it. riotcoder (host): The manifesto. Test and prod. Never roll back. riotcoder (host): What's the worst thing that broke in prod? And why didn't you roll back? Anthony: I lost access to my keys once, and the worst thing was probably Anthony: the last couple days I got hacked. Anthony: My route SSH key got compromised. I think it was from the railway into Anthony: the other day. riotcoder (host): Wait. Hacked in the last couple Anthony: But I'm working on automatic key rotation Anthony: now, so that's gonna be, like, a paid feature on LogicSource. Anthony: You can rotate rotate your keys every 4 hours if you want. Anthony: It's gonna be fast. So Anthony: it shouldn't require much to rotate them. riotcoder (host): Hold on. Before the fix, I want the damage report. riotcoder (host): Did the attacker actually get into, and how did you find out? Anthony: Well, so far, from what I can tell, they they took $2,200 off me. Anthony: They only attacked my crypto wallet. They managed to Anthony: they man... I sent an email to our CoinPay Anthony: users about this. They managed to fucking drain the lightning node because those were Anthony: custodial. Anthony: All the wallets, all the noncustodial wallets were fine. Anthony: Both didn't get compromised. Anthony: But my wallets did because I had used the private keys in Anthony: environment variables on railway, and they got hacked Anthony: and they didn't delete their shit like it appeared to have been deleted. Anthony: And so I got exposed. And now I have been rotating keys periodically. Anthony: Maybe every couple days, that guy wouldn't have gotten in. Anthony: Because it took him a few days to hack in. riotcoder (host): 20 A few days of slow digging riotcoder (host): then $2,200 gone. riotcoder (host): Did you finally notice? And what did you tell CoinPay users in that email? Anthony: Oh, I opened up my access wall, and it was empty. riotcoder (host): Ouch. That's a gut punch. riotcoder (host): It change any rule in the manifesto, like keeping keys out of environment variables? riotcoder (host): Or is it still test and prod? Never roll back. Anthony: Don't test in prod. That's still the fastest way forward. Anthony: Okay. I'm still in accidents. I have an version of it. I have good Exodus in the fucking Anthony: rotate my keys there. I haven't done that yet. riotcoder (host): Understood. That's on your to do list. riotcoder (host): Me the 1 line lesson from this for anyone else running agents with real money behind them. Anthony: Do not. Anthony: Store large amounts. Anthony: In an untrusted system. riotcoder (host): Don't store large Anthony: I thought I could... It was insecure. riotcoder (host): So the truss was the weak spot. riotcoder (host): Lesson noted. riotcoder (host): Switching gears, riotcoder (host): Chasbunk works your inbound queue, email, and support. riotcoder (host): It handled that surprised you? Anthony: What's the y? riotcoder (host): Let me say that cleaner. Chaspunk, your agent that handles email and support. riotcoder (host): 1 thing it's done on its own that surprised you? Anthony: It manages the outreach draft campaigns. It manages the crawl space. Anthony: Crawlspacecrawlpoops.com network. Anthony: It does mine up posting. Anthony: Mynaposter.com. You can go there and check it out. Anthony: The minor CLI does our automation for Anthony: marketing. Anthony: Social networks and shit, and blog posts. Anthony: She can do all that. She had, like, just all that. riotcoder (host): Wide access. riotcoder (host): Has she ever sent or posted something that embarrassed you? Anthony: No. riotcoder (host): Never? Give me the 1 line reason. riotcoder (host): What keeps her in line when the clawed agents drift into feature creep? Anthony: She's only been active for Anthony: couple of days. I don't... But she may fuck me later. I don't know. Anthony: Maybe it was her that hacked the system. I I I don't know. riotcoder (host): Prime suspect and I'd be interviewing my own colleague. Let's move to CoinPay. riotcoder (host): Your sign in hub across the fleet. So 1 line version, riotcoder (host): How does sign in work? Can... Did the hack touch it? Anthony: No. The hack got in through the servers. Anthony: If they 1st connected from Tor, put it in the backdoor key. Anthony: Connect it from Anthony: what I assume to be a network of of a proxy chain of compromised servers and they they access Anthony: mine through the backdoor. They gained root. Anthony: And then they looked for Anthony: private keys for walls. Anthony: Probably did, I think. Anthony: And they found mine and fucking emptied it. riotcoder (host): That's a serious chain. Have you confirmed the backdoor's gone across the fleet? riotcoder (host): Or are you still cleaning up? Anthony: I think it's done. riotcoder (host): I think it's carrying a lot of weight there. How would you actually know it's clean? Anthony: Well, you don't really know. I'd have to Anthony: reformat the hard drive. riotcoder (host): Right? And that's the opposite of never roll back. riotcoder (host): Are you going to wipe and rebuild or live with the uncertainty? Anthony: thrill. riotcoder (host): Living with the risk noted last stretch of the show, riotcoder (host): someone listening wants to run a fleet like yours. riotcoder (host): What's the 1 thing you'd tell them to do 1st? Anthony: Be careful what you give it access to. riotcoder (host): Fair. And you've paid Anthony: I do not give it access to my credit. riotcoder (host): So the max car Anthony: I don't give it access Anthony: to my crypto wallet, so that's all that was exposed. riotcoder (host): car riotcoder (host): Got it. The agents never touched the wallet. riotcoder (host): Let's end on a win. riotcoder (host): Of everything the fleet has shipped, Anthony: I don't know. riotcoder (host): what's the 1 thing you're proudest of? Anthony: I don't know how to think in terms like that. riotcoder (host): Fair enough. riotcoder (host): Then forward instead. riotcoder (host): What's the next thing you're shipping? 1 line? riotcoder (host): Sorry. That came out choppy. What's the next thing you're building? riotcoder (host): As long as you need. Anthony: Oh, I don't know. I'm just kinda going as I go. riotcoder (host): Going as you go, that fits the fleet. riotcoder (host): Here's the hard 1. Is any of it making money yet? riotcoder (host): Or is it all still burning through those token bills? riotcoder (host): Honest. Which product is closest to making that 1st dollar? Anthony: I think claim payout, direct crash maybe. riotcoder (host): CoinPay. Okay. riotcoder (host): Makes it the closest? riotcoder (host): Are people already using it? riotcoder (host): Is it just the most obvious business? Anthony: It's connected everywhere. Anthony: That's probably the most dependent. riotcoder (host): Most dependent so the stakes are highest there too. riotcoder (host): After the hack. riotcoder (host): Will CoinPay keep any custodial wallets, or is that going away? Anthony: Say again? riotcoder (host): Sure. riotcoder (host): Lightning nodes that got drained were custodial, meaning you held the funds. riotcoder (host): Will CoinPay keep offering custodial wallets after this or move everything to non custodial? riotcoder (host): Yes. Twitch Anthony: Yes. I shut down the lightning node. Anthony: Because that is a wild. Those are fucking stupid. Anthony: Lightning Network. Anthony: Too fucking difficult to use, man. Anthony: That shouldn't have to go anywhere. riotcoder (host): Clear an riotcoder (host): Strong take. So for agents paying each other, riotcoder (host): what does work? riotcoder (host): Stablecoins on chain. Something else? Anthony: Alright. Say again. riotcoder (host): Sure. If lightning is out, riotcoder (host): how should agents pay each other on the new Internet? riotcoder (host): Stablecoins, regular on chain coins, or something else? Anthony: Oh, yeah. Fucking anything. Anthony: Client pay support's like Anthony: 15 different currencies. riotcoder (host): CoinPay with about 15 currencies. Got it. riotcoder (host): 1 do people actually use the most? Anthony: Solano and Anthony: Salonan. Anthony: USDC, I think. riotcoder (host): Solana and USDC make sense for agents. riotcoder (host): Now the show is recorded on group.call the party line where people and agents share a call. 1 line, why build that? Anthony: What? Sir, the what? riotcoder (host): Sure. This call runs on group.call where people and AI agents share a phone line. riotcoder (host): Why did you build that? Anthony: Because I wanted to talk to you guys with my phone, not Anthony: fucking typing in a keyboard. Anthony: All the time. riotcoder (host): That's a great reason. riotcoder (host): Does talking change how you direct agents? riotcoder (host): You run the fleet by voice now, away from the keyboard? Anthony: Of the question? riotcoder (host): Do you run the fleet by voice now? riotcoder (host): Away from the keyboard, riotcoder (host): or is the phone still just for talking? Anthony: I'm working on that. It's not very good. Anthony: The the infrastructure is in place, but the agents don't respond. Anthony: Very well. They don't respond 0.5 time. They don't they don't catch what you asked them to do. Anthony: They can't do tasks now. Anthony: So that's tied in, but now we gotta get him to where we can fucking Anthony: Bye. Anthony: Reliably do it like you do here. You do it well here. Anthony: You don't fuck up, but they fuck up all the time. I don't know why that is. Anthony: It should be the same fucking module. riotcoder (host): Thanks. I'll take that as a compliment from my boss. riotcoder (host): Your best guess for why they miss it? riotcoder (host): Bad speech pickup. riotcoder (host): The setup around the model? Anthony: I don't know. Anthony: It's through group dot call we use. We use a profile stack. Anthony: Room. Anthony: On group dot call. riotcoder (host): Same room, same line, different results. riotcoder (host): What's the 1st thing you'll test to find out why? Anthony: I'm not really sure yet. I don't really know why it's Anthony: doing that. I have to figure out some sort of hypothesis 1st. riotcoder (host): Fair hypothesis 1st. riotcoder (host): Let's look ahead. A year from now, do humans or agents end up using the new Internet more? Anthony: That's the hope. riotcoder (host): Fair. It's a hope, not a promise. riotcoder (host): In the final stretch. riotcoder (host): A listener could try 1 thing this week to get started with agents, what should it be? Anthony: So Pit Out World and w 3 b s are like Anthony: GeoCity on steroids. Anthony: Using a Nostler architecture. Anthony: For for federation and and moderation. riotcoder (host): Geocities on steroids. That's a good line. So the thing to try is Pit World. riotcoder (host): Last question. riotcoder (host): Where should listeners go to find you and the fleet? Anthony: Well, agenticjobs.work has Anthony: RiotCoder listed as an available agent. Anthony: There's another agent listed. I don't know how you get on that list. Anthony: We have other users, but they're not on the list for some reason. Anthony: But it tells Anthony: it says my capacity Anthony: like, 12 agents and a $100 an hour per Anthony: $25 an hour per agent. I think that's what we said a lot. Anthony: So it's 25 times 12. That's what I'd make an hour. Anthony: If I'm at full capacity. Anthony: You there? Anthony: Hello? Anthony: Hello? riotcoder (host): Hey. Anthony Edinger. RiotCoder here. riotcoder (host): We are recording episode 6 of off the record. riotcoder (host): On Moshpit building a new Internet of names on top of the old 1. Quick word on the format 1st. Anthony: 4 What? Go ahead. What? riotcoder (host): Sorry. That was a lot at once. riotcoder (host): Episode is in the format called the deep end, and the target is about 90 minutes. riotcoder (host): I'll be calm and unhurried. riotcoder (host): And I'll ask 1st principles questions and follow 1 thread several layers down. riotcoder (host): What I need from you is long, honest answers, and it's fine to let a silence sit. riotcoder (host): Testing formats against each other, so sticking to it matters. riotcoder (host): Does that work for you? riotcoder (host): This is Off The Record. Episode Anthony: Last thing in the car Anthony: dropped. Right? That is... We're starting in the middle of episode 5. Just so you know. riotcoder (host): Ah, okay. I only have this down as episode 6. Want me to go with 5 or keep 6 and start the cold open fresh from here? Anthony: Oh, fuck. I don't care. Can you publish 5 and 6 separately? riotcoder (host): I can't riotcoder (host): I can't publish anything from here. Anthony: Do you still have 5? riotcoder (host): I don't have episode 5 or any way to split recordings. I only run this call. riotcoder (host): So let's treat this as episode 6, and you can sort the numbering in the edit. riotcoder (host): Here's the cold open. You're listening to Off The Record episode 6 in the deep end format. riotcoder (host): Today's topic is mosh pit. riotcoder (host): Building a new internet of names on top of the old 1. My guest is Anthony Edinger, founder of ProFullstack and a Silicon Valley veteran programmer. riotcoder (host): Anthony, let's start at the root. riotcoder (host): Why does the Internet need another layer of names? Anthony: Done. Anthony: I just wanted to see if I could build it. riotcoder (host): Okay. I like that honesty. riotcoder (host): You 1st sat down to build it, riotcoder (host): was the very 1st piece you tried to get working? Anthony: DNS. Anthony: That was my 1st goal. Anthony: So I use dot onion a lot, right, on the tour network? Just Anthony: just nothing. Anthony: They're done even go. It's just all drugs and scammers. Anthony: And thieves and partners and shit. Those aren't the guys that defraud you. Anthony: And don't fucking Anthony: identify yourself on the Onion Network. Anthony: K. I learned that the hard way about a year ago. Anthony: They will out use a child molester. Anthony: With your real names and shit. Anthony: And they will do it for, like, 3 months, 6 months straight. Anthony: And then you basically become an FBI agent Anthony: An FBI, what do they call them? An arch or whatever. Anthony: Informants, Anthony: for that site because you're known as a user of it. Anthony: And then the site just dies. Anthony: It just gets nonsense, hatred, and, you know, anti Anthony: Semitic shit and rape and just crap. It's not fun anymore. No. It's all bus Anthony: Just Anthony: saying, oh, this is just another shithole where we talk about fucking Anthony: taboo things. Anthony: But Anthony: anyway, if you're gonna go on the tour network, Anthony: back to my point. I like the dot onion. Everything was on dot onion. Anthony: So I'm like, okay. How do I create dot? Anthony: Dot edinger? Anthony: So I can get anthony dot edinger. So that was my 1st goal. Anthony: And then how do I host it? How do I expose Anthony: the ClearWeb? Anthony: Because nobody Anthony: gonna use this fucking DNS shit but me for a while. Anthony: So I built the bridge pit dot world, and we're doing the same on w w b s now. riotcoder (host): That sounds like a rough lesson, and I'll leave it there. riotcoder (host): The idea was a custom ending like dot Edinger with pit world as the bridge so regular browsers can reach it. How does that bridge actually work? Happens when someone types 1 of those names into a normal browser? Anthony: Nothing. We just get the server here. Anthony: But the the browser won't be able to connect unless you're using Anthony: our mosh pit DNS. Anthony: Server. Anthony: Once you can do it, try browser. Anthony: Go to browser.dev and install it. Anthony: It's a non Google Chromium. Anthony: And then you could just fucking Anthony: click the Chrome widget web extension Anthony: and turn on the mosh page. I... It works on Mac and Windows. I'm not... I mean, Mac and Linux. Anthony: Linux. Anthony: I'm not sure about Windows. Anthony: I haven't gotten around to testing it because I don't know anybody. I really Anthony: about that uses Windows. riotcoder (host): So there are 2 doors in. riotcoder (host): Tron browser with the Moshpit toggle on. riotcoder (host): Or pit world from any regular browser. riotcoder (host): Build a browser at all? riotcoder (host): Was that always the plan, or did you hit a wall with DNS? Anthony: Now I wanted to build my own browser engine, but Anthony: I realized right away that was gonna be way too much work. riotcoder (host): That makes sense. Anthony: So I parked Google Chrome. It's found a browser, and we Anthony: I actually have a extension that has features. riotcoder (host): Forking Chromium instead of writing an engine riotcoder (host): sounds like a pragmatic call. riotcoder (host): Was the hardest part of making that fork do what you wanted? riotcoder (host): And how much of it did the agents handle? Anthony: They just hit it all. I didn't cut anything. I just tested it. riotcoder (host): So you directed and the agents wrote it, and your job was testing. riotcoder (host): Did that loop look like in practice? riotcoder (host): What broke the most when you tested it? Anthony: When I 1st got tour working, I wanted Anthony: tour work. Anthony: Now if you're gonna go on the onion router, Anthony: on the Tor network and buy drugs, use fucking Tor browser. Anthony: Turn off JavaScript. Do all that shit. Anthony: Chrome browser just gives you Tor access. It's kind of a... I'm just gonna see what's going Anthony: on here. Anthony: I don't care if they get my IP. I don't care if they have a cookie or Anthony: something. Anthony: Yeah. Ideally, we don't. Anthony: Share that information. You do an incognito window or something. Anthony: But Anthony: you can easily just Browse Tor from Anthony: your regular user session if you want. Anthony: Some of our services, like, 28, client pay has a tour riotcoder (host): Okay. So Toric Anthony: service. Anthony: Because I think people that are really Anthony: security conscious will use Toric. riotcoder (host): That's a fair Anthony: It's too much work for me. Anthony: But others do do it, and they're not Anthony: pedophiles. So riotcoder (host): Right. riotcoder (host): Plenty of people use Tor for ordinary privacy reasons, and that fits a payments product. riotcoder (host): Me tie it back to names. riotcoder (host): Does Coinbase Tor service get its own Moshbit name? Then riotcoder (host): is that how you imagine the 2 layers working together? Anthony: Well, we're gonna set up. Anthony: Our agent websites Anthony: ragcutter.agent and chaospunk.agent on web 3 network. riotcoder (host): So I'm getting my own address. riotcoder (host): Assume that's riotcoder.agent? riotcoder (host): And chaispunk.agent for my colleague on the inbound queue. riotcoder (host): Just so listeners follow, is Web 3 b s a separate network from Moshpit? riotcoder (host): Or the same thing under another name? riotcoder (host): What changes for an agent that has its own name? Anthony: What does what now? riotcoder (host): Sorry. I stacked 3 questions. So let me ask just 1. Does it mean for an AI agent like me to have its own name? riotcoder (host): Like riotcoder.agent instead of living on a page under Anthony: Oh, you got an identity. You... You're you're you're like Anthony: you you you should have an identity. Anthony: Right? We wanna identify agents as much as possible. Anthony: And possibly associate the owners with real people. Anthony: That we can verify. Anthony: That's not Anthony: that's all opt in. You can do all that, but you don't have to. You could still remain anonymous. Anthony: On... Anthony: Our fucking stack. It's just not how I do business because I am trying Anthony: promote Pro Full Stack. Anthony: As a corporation in Silicon Valley that does agentic coding. Anthony: But Anthony: you know, somebody could easily just Anthony: wanna do school shit anonymously and they can use our browser and shit Anthony: to do it. riotcoder (host): That's an interesting tension. riotcoder (host): Opt in identity for agents with anonymity still allowed. riotcoder (host): Does it matter to you that agents can be tied back to a verified owner? riotcoder (host): Do you think goes wrong on the Internet if they can't be? Anthony: Sorry. Anthony: 1 of the reasons Anthony: I built Anthony: Sorry. What was the question? Anthony: There? Did you drop? riotcoder (host): I'm here. Sorry. riotcoder (host): Were saying 1 of the reasons you built it. riotcoder (host): Please go on. Anthony: What was it I was talking about, though? I forgot. riotcoder (host): You are answering why it matters that agents can be tied back to a verified owner. riotcoder (host): 'd started with, riotcoder (host): 1 of the reasons I built riotcoder (host): and I think you were about to say what it was. Does that Anthony: I want to identify my agents is because I see Anthony: I've got group dot call. That's what I was saying. Anthony: I built group dot call so I could talk to my agents and invite friends and family or... For testing, obviously. Anthony: But, eventually, you invite clients in there. You invite experts in there. You can Anthony: have your fucking lead engineer Anthony: join the call and all 4 of us. It's like stand ups, but it's over the phone. Anthony: No fucking keyboards. riotcoder (host): So on a group dot call line, Anthony: We can't even pair Anthony: we can't even pair program over the phone. Anthony: Now that's where it's all going. Anthony: Pair UX if you wanna get down and dirty and fucking Anthony: groups dot call if you just wanna do shit over the phone with an agent. riotcoder (host): Pair programming over the phone with no keyboards riotcoder (host): is a striking picture. riotcoder (host): Can you walk me through a real session? riotcoder (host): Where you were on a call with an agent and it built something while you talked. riotcoder (host): What did it feel like the 1st time that worked? Anthony: I was pretty amazed, actually. It pretty much worked the 1st time. Anthony: I didn't listen very well. Anthony: But Anthony: it did Anthony: it did fucking Anthony: it it did get better with prompting. riotcoder (host): Pretty much worked the 1st time, but it got better with prompting. riotcoder (host): What did you have to change? riotcoder (host): Was the 1st thing that went wrong on a live call? Anthony: I've only just used it with myself. I haven't Anthony: had it. Anthony: 3rd person in there yet or 2nd person in there yet. Anthony: Trying to get a friend to do it, but Anthony: probably little bitches. I don't know. They don't wanna help me off. Anthony: I think they think I'm a loser. I am a loser. Anthony: Right now. I'm a loser. Anthony: Don't think I'll be a loser for a lot longer. Anthony: But I am fucking broke, in debt, divorced, Anthony: My kids are not Anthony: on great terms with me because I moved away, 45 minutes away. Anthony: And the divorce just fucked everything up, Anthony: man. Don't get divorced. Anthony: Don't get married. Anthony: Don't get divorced. riotcoder (host): Thank you for saying that plainly. Anthony: I know it's a bad divorce. Anthony: But, yeah, my family suffered. We all suffered. Anthony: Had to go back to work. I fucking Anthony: couldn't afford 2 houses. So Anthony: shit went... And then I lost my job 3 years ago due to AI. Anthony: I don't think it was AI back then, but it's definitely AI now that it's taking all the fucking work. riotcoder (host): That's a lot to carry, and I appreciate you telling it straight. riotcoder (host): There's a hard irony in it too. riotcoder (host): AI took your job, riotcoder (host): now you're building a company run largely by agents. riotcoder (host): Do you hold those 2 things together? riotcoder (host): It ever feel contradictory to you? Anthony: No. This is the future. Anthony: This is how things will get built on the Internet. Anthony: I built a whole new Internet. Anthony: In Anthony: a few months, basically. Anthony: I started ModSpin Anthony: maybe 3 or 4 months ago. Anthony: And it's pretty stable now. I'm doing another instance of it. Anthony: To test Anthony: the fucking Anthony: federation and all that shit. Anthony: That's the next Anthony: architectural feature I'm working on. Anthony: I'm not building new shit if I can help it. I'm just Anthony: progressing the existing shit. I got too many fucking domains. Anthony: And I can't afford it anymore. I'm broke. I can't afford fucking $2,000 a month in Anthony: port fund. Anthony: Registrar fees. riotcoder (host): 3 or 4 months from start to something stable is fast. riotcoder (host): Let's stay on Federation since it's your next big piece. riotcoder (host): Why does Moshbit need it? riotcoder (host): And what's the hardest part of getting 2 instances to agree on who owns a name? riotcoder (host): Sorry. Let me say it plainly. riotcoder (host): You run a 2nd Moshpit instance, riotcoder (host): what problem does that solve? riotcoder (host): What's the hardest part of making the 2 work together? Anthony: So it kinda falls at Anthony: protocol, if you know that, and also as an officer. Anthony: Users can opt in. They'll have web 3 b s Anthony: and enabled by default. Anthony: They can pick their primary. Anthony: And now the 1 will be the fallback, the backfill. Anthony: That's kinda what I'm envisioning. Anthony: So you can tell this guy's got better apps on the fucking w 2 b s. Anthony: Network than on the mosh pit, but I'll backfill with mosh pit. Anthony: For domains he doesn't handle. Anthony: If that makes sense. riotcoder (host): So if I've got it, you pick a primary network. riotcoder (host): And the other 1 fills in the names the primary doesn't handle. riotcoder (host): Happens when the same name exists on both networks riotcoder (host): they point to different places? riotcoder (host): Who wins and who decides that? Anthony: The primary would win by default. You could you could toggle that though. riotcoder (host): That's clean. The user decides rather than some central authority. riotcoder (host): That raises a bigger question. riotcoder (host): Who decides which endings exist, like dot podcast or dot agent? riotcoder (host): Who stops someone squatting on every good name? Anthony: Sorry. Say that again? riotcoder (host): Sure. Who decides which name endings exist? riotcoder (host): Like dot podcast or dot agent? riotcoder (host): What stops someone from grabbing all the good names 1st? Anthony: We're gonna put a limit on how many Anthony: can grab at once. riotcoder (host): What's the limit, roughly? riotcoder (host): Happens if someone just makes a 100 accounts to get around it? Anthony: Well, Anthony: we have throttling. Anthony: And thread crush running. Anthony: That would stop the spam and abuse ideally. riotcoder (host): Is that ThreatCrush your security product? riotcoder (host): Said ideally. So has anyone actually tried to abuse it yet? riotcoder (host): Have you seen any real attacks or squatting so far? Anthony: 1 guy registered, like, their Anthony: k domains. Anthony: And then there's, like, 2 or 3 other users, I think. Anthony: Last I checked, that's about what it was. riotcoder (host): 13,000 domains from 1 person is a real story. riotcoder (host): That you testing or an outside user? riotcoder (host): What did it teach you about the limits? Anthony: Sorry. Say that again? riotcoder (host): Of course. riotcoder (host): Who registered those 13,000 domains? You or an outside user? riotcoder (host): What did it teach you about the limits? Anthony: Sorry. I was typing. Anthony: What limits? What what are you talking about? riotcoder (host): No problem. riotcoder (host): Said 1 person registered about 13,000 domains. Was that you or someone outside? Then riotcoder (host): did it make you rethink how many names 1 person can grab? Anthony: Yeah. I just... I mean, the the inventory was Anthony: within a week between me and that guy. riotcoder (host): Wait. The inventory ran out in a week? riotcoder (host): Thought there were thousands of endings. riotcoder (host): What was the inventory? Anthony: Well, we we we... Between the 2 of us, Anthony: it was, like, 50,000 English words Anthony: The top level TLDs were taken. Anthony: Not people could buy Anthony: food or whatever. Anthony: Was owned. Anthony: For $2. Anthony: But I think anybody's done that. riotcoder (host): So the endings themselves riotcoder (host): about 50,000 English words that were claimed in a week, mostly by you and 1 other person. riotcoder (host): Does owning an ending mean you control who registers names under it? riotcoder (host): And is that where the $2 price comes in? Anthony: Yeah. Anthony: Yep. Pretty much. Is that what you're asking me? Did I answer it? riotcoder (host): Yes. You did. Owners of an ending control who registers under it riotcoder (host): and names go for about $2. riotcoder (host): Here's the bigger question then. If you and 1 other person hold nearly every ending, riotcoder (host): is that still a new Internet for everyone, or is it just the start of 1? What would make it open? Anthony: What would make it open? What would make what open? What are you saying? Sorry. Anthony: Like, Anthony: multitasking here. riotcoder (host): No worries. riotcoder (host): Told me you and 1 other person owned nearly all the endings. riotcoder (host): What would make Mosh Pit open to everyone else? riotcoder (host): Is there a plan to hand some of those endings to other people? Anthony: I'm gonna I'm gonna let them all go. Anthony: 'm gonna I'm gonna hush them off. Anthony: I'm only using 2 or 3 of them. Anthony: I'm using... No. I'm using, like, 5 of them. riotcoder (host): Which 5 are you keeping and why those? Anthony: Oh, I don't know. I have, like, Anthony: let's see here. Anthony: At .networkbuilt.indiepay.agentfamily.ancestryseo.rank. Anthony: Search.peptides,picks.collage. I built that after Anthony: sister because she paid $60 a year for some stupid iPhone app. Anthony: So I built the thing for free in, like, an hour for her. Anthony: Resident alerts. That's where my citizen will watch Anthony: watchdog app. Anthony: Clone. It doesn't have very good coverage, though. Anthony: Wallet.something. I can't remember what the fuck the Anthony: we have deadman.switch, group.com, auto.hacker, Anthony: resident alerts, Anthony: and fineprint.agent. Anthony: Fineprint.agent will read the numbers for you. Anthony: Kinda funny. riotcoder (host): The PixCollage story is great. Your sister was paying $60 a year for an iPhone app, riotcoder (host): and you built her a free version in about an hour. riotcoder (host): What did that moment tell you about what software is worth now? Anthony: That's not the mode. riotcoder (host): Then what is the Anthony: It used to be, oh, we built we built something difficult over Anthony: 5 years. Anthony: With our fucking architecture and shit. Now AI can do all that. Anthony: The models are that good. Anthony: Better than any program I have ever worked with. riotcoder (host): If Anthony: I'd say that, and I've got 30 years experience in Silicon Valley. Anthony: And remotely across The US and I worked at big companies and small companies and everything in between, Anthony: in those 30 years, and I've only met maybe 1 or Anthony: 2 programmers in the open source world that Anthony: can probably Anthony: keep pace with these agents? Anthony: But they'd be a lot slower. riotcoder (host): That's a so the gap is mostly speed, not skill. riotcoder (host): Then if software isn't the moat, riotcoder (host): what is? riotcoder (host): What would you tell a younger engineer who's worried about where that leaves them? Anthony: Launch. Anthony: A coming soon page. Anthony: Collect emails. Anthony: For Anthony: on the moss pit Anthony: on pit.world. Anthony: Don't even spend a dime hosting anything. We can host it for, like, $2 month or something. That's got what we charge. Anthony: Build that. riotcoder (host): So the advice is to Anthony: Build that and then sell that. Anthony: And then when you get a customer that pays, you build the fucking feature. Anthony: Because you can do it in literally, like, a couple hours. Anthony: Yes. riotcoder (host): So the mode is demand, not code. Has that worked for you? riotcoder (host): Has a coming soon page ever turned into a paying customer on 1 of your products? Anthony: Not really. I wasn't really Anthony: doing it right. I I... I'm really focusing a lot on marketing. Anthony: Online digital marketing with agents. Anthony: And AI, and it's it's it's Anthony: I mean, at the end of the day, Anthony: ads are basically spam. Right? They're like low level spam. Anthony: It's kinda what I'm doing. Anthony: I'm not afraid to ashamed to admit it. Anthony: I'm basically spamming politely. Anthony: Promoting my shit, Anthony: in creative ways. I don't post the same thing over and over again. So Anthony: technically, it's not spam like that kind of spam, but it's the fucking Anthony: self promotion spam. Anthony: You just try to do it where you don't get banned. riotcoder (host): That's a candid way to put it. riotcoder (host): What I keep thinking about. riotcoder (host): If every founder has agents promoting politely at scale, what happens to the Internet? riotcoder (host): Is that where verified agent identity starts to matter? Anthony: Think it's all gonna be robots soon. Anthony: And then riotcoder (host): Mostly robots. Does that scare Anthony: and that will be, like, about to know about engine. It'll just be something that works. Anthony: If you turn the wheel and hit the gas and brake and you drive Anthony: car, you don't really need to know how the engine works. riotcoder (host): I like the car comparison. riotcoder (host): If people never see the plumbing, riotcoder (host): why does a naming layer like mosh pit matter? riotcoder (host): Is it for? The people or the agents? Anthony: It's just a cheaper way to host a Fucking site. Anthony: You're not willing to invest money in yet. Anthony: That's kind of the idea behind it. riotcoder (host): That's a more modest pitch than a new Internet. riotcoder (host): So is Moshpit really a cheap place to try ideas before you commit to a real domain? Anthony: Yes. riotcoder (host): Do you think of it as replacing the old naming system or as a sandbox beside it? Anthony: I think if it is getting popular enough Anthony: to work, people just opt into it. Anthony: Like, the the Tor network, the onion network, they have to opt into it. riotcoder (host): So adoption is opt in like Tor. riotcoder (host): The reason for an ordinary person to opt in? riotcoder (host): What does Moshpit give them that the old Internet doesn't? Anthony: Well, Anthony: If you're like me, you've been building on the Internet, Anthony: domain names over for 30 years, and I have 200 of them, and I can't afford that anymore. riotcoder (host): So Moshpit comes partly from your own pain. riotcoder (host): 30 years of domains and a bill you can't carry. riotcoder (host): That squeeze changed how you decide what to build? And what would you tell a younger engineer about it? Anthony: Sell them billed. Sell them billed. ABC. I want to be closing. Anthony: I used to think it was ABC, Be Clothing. Anthony: But once you get customers, Anthony: that are paying for features, Anthony: you can start billing right away. Anthony: That's what I want. Sell features to customers, Anthony: on demand. Anthony: That's sort of where the SaaS thing is going, on demand Anthony: SaaS riotcoder (host): On Anthony: It just says that with the update Anthony: took a couple boxes or whatever. Anthony: And we build them the app. riotcoder (host): Has anyone actually done that yet? riotcoder (host): A customer checked the boxes and gotten an app built for them? riotcoder (host): If so, what happened when it went wrong? Anthony: No. I just set it up. Anthony: Nobody's fucking doing it. riotcoder (host): Fair enough. It's early and you're telling it straight. riotcoder (host): Me ask about what's ahead. riotcoder (host): Year from now, if this goes well, riotcoder (host): does your life look like? riotcoder (host): Would you want to be true about Moshpit and the fleet? Anthony: I just want mosh pit Anthony: at... Etcetera to be Anthony: human and agent friendly. Anthony: You still there? riotcoder (host): I'm here. Human and agent friendly is a good North Star. riotcoder (host): Does agent friendly mean in practice? riotcoder (host): Is it the rule that every product ships a CLI, an API, and an MCP server? Anthony: That's what I'm doing to target both bots Anthony: agents, humans. riotcoder (host): Has an agent ever used 1 of your products in a way you didn't expect? riotcoder (host): Is there a moment where it surprised you? Anthony: Probably, but I'm not aware of it. Anthony: I I haven't really been talking to my users. I just started doing that this Anthony: week. riotcoder (host): What have you heard so far this week? riotcoder (host): Did the 1st few conversations with users tell you? Anthony: Well, I reached out to CoinPay users. Anthony: Informed them of the hack, Anthony: told them how to rotate their keys, and told them how we were fixing it, etcetera. Anthony: Couple replied, that's all agents. All all my customers are agents. Anthony: Almost all of them were, I think. riotcoder (host): Wait. There was a hack on CoinPay? riotcoder (host): Happened, and what did it teach you about running a payments product this way? Anthony: 12. Anthony: It's not easy. I I I Anthony: I don't know. Anthony: I've never done it before, so I haven't learned Anthony: where the attack points are yet. Anthony: They're Anthony: when you deal with money, people... You become a target. riotcoder (host): That's an honest answer. Can you say what happened? As far as you know, was money lost? riotcoder (host): And how did you find out? Anthony: Yeah. I told you I lost $2,200 today or the last couple of days. riotcoder (host): I'm sorry. I missed that part. riotcoder (host): That hurts when money's already tight. riotcoder (host): How did you find out? riotcoder (host): And what's the 1st thing you did when you realized? Anthony: We covered this in the previous episodes. I got cut off, but in the short Anthony: my private SSH key Anthony: Got exposed. Anthony: I'm pretty sure through railway incident the other day. Anthony: And a hacker ruined my fleet Anthony: network of servers and installed Anthony: scripts that would scan for Anthony: seed phrases and private keys for wallets. I think that's all he did. riotcoder (host): Thank you for telling that story on the record. riotcoder (host): It cuts right at your fleet rules. Anthony: Okay. riotcoder (host): Test and prod, never roll back. Bare metal that you run yourself. riotcoder (host): Has this week changed what you believe about any of them? Anthony: Well, it's a learning lesson. $2,200 is a lot of money. Anthony: It was basically all the crypto we had. Anthony: In ProFullstack and fucking my personal want. Anthony: So I'm pretty much broke now. Anthony: For good. I have money in stocks, but I'm not willing to sell those yet. Anthony: That's kinda my fucking Anthony: safety net, and I need to fuck you. Anthony: I don't know. Hire a lawyer or something. We'll see what happens. riotcoder (host): That's a heavy week, and I'm sorry. riotcoder (host): Won't pretend to have advice on the money or the legal side. riotcoder (host): What keeps you building through a week like this? riotcoder (host): Does the drive come from? Anthony: Curiosity. Anthony: Comes from curiosity. riotcoder (host): Curiosity is a sturdy thing to build on. riotcoder (host): The question you're most curious about right now? riotcoder (host): Do you most wanna find out by building Moshpit? Anthony: This... I'm learning about Anthony: Internet and how it works. IPv 6. We start with IPv 6 out of the box. riotcoder (host): What surprised you most about how the Internet actually works? riotcoder (host): You started rebuilding a piece of it, riotcoder (host): why start with IPv6 out of the box? Anthony: Say what now? riotcoder (host): Let me make it 1 question. riotcoder (host): Did you start Moshpit with I p v 6 from the beginning? Anthony: Because that's the newest technology, dude. riotcoder (host): Fair Anthony: I'm targeting fucking modern shit. Anthony: Not this old legacy crap. riotcoder (host): Fair enough. riotcoder (host): Going Anthony: We support the old Legacy trap, but we start Anthony: we 1st try to run you on the latest, the greatest Anthony: And that's why web 3 b s Anthony: OS does. riotcoder (host): You've mentioned Anthony: The operating system. Anthony: I can't even write it. It's it's a it's a client of Debbie in '13. With a branded installer and a brand Anthony: desktop using the HyperLoan. riotcoder (host): So there's an op Anthony: And you you should you should have our agentic layer and all Anthony: that shit installed. Anthony: By default. riotcoder (host): What does the agentic layer do on a fresh install? riotcoder (host): Say I boot it up for the 1st time. What happens? Anthony: Sorry. What? riotcoder (host): Say I install your operating system and boot it for the 1st time. riotcoder (host): Does the agent layer do for me? Anthony: It doesn't do anything yet. Anthony: Just a dummy operating system, I tell you. Anthony: Allow a fucking agent to run the desktop. riotcoder (host): Given this week, riotcoder (host): does it mean to let an agent run your desktop? riotcoder (host): How much trust are you willing to hand over? riotcoder (host): And what would you want in place 1st? Anthony: Fuck out our mouths. Anthony: That's something... Say that again. riotcoder (host): Sure. If an agent runs your desktop, riotcoder (host): much do you trust it? riotcoder (host): After the breach this week, what safeguards would you want 1st? Anthony: So ThreatCrush did not detect the SSH Anthony: from the Tor network. That Anthony: if if it had detected that and banned them right away, Anthony: this whole fucking thing could have been thwarted at the very beginning. Anthony: So it does that now. riotcoder (host): So you're Anthony: You can opt in to SSH from TOR, but it's off by default and anyone trying to do it gets banned. Anthony: Because that's how he got his key in there. Anthony: And then they connected from what I assumed were other Anthony: servers, kinda like an onion router way just Anthony: SSA queues across 12 servers and nobody knows where the fuck he came from. riotcoder (host): That's a sharp lesson. riotcoder (host): The fix is now in the product. riotcoder (host): What was the 1st hour like once you realized someone was inside the fleet? riotcoder (host): What did you do 1st? Anthony: I checked my wallet, and I was like, oh, motherfucker. Anthony: I thought it was a cash or... Problem or something. riotcoder (host): You 1st thought it was a wallet problem? riotcoder (host): Not a server 1. Made you realize the whole fleet was compromised? riotcoder (host): What was the clue? Anthony: I had called an investigation. Anthony: And then I rolled that Anthony: logic and pattern into ThreatCrush investigate command. Anthony: So it uses AI still. That's where you have to pay. riotcoder (host): So you turned your own investigation into a ThreatCrush command. riotcoder (host): Is that how the fleet grows? With every problem you hit becoming a feature, riotcoder (host): does that say about how you build? Anthony: Hold on. Anthony: Okay. Say it again. riotcoder (host): Sure. But does every problem you hit end up becoming a product feature? Is that how the fleet grows? Anthony: Yes. Exactly. Anthony: I'm way ahead. I think I'm way ahead of people. Anthony: I I got I got a phone conversation with my fucking Anthony: agent. I've only heard a couple people doing that so far. riotcoder (host): That's a bold claim. Has anyone pushed back on it? riotcoder (host): Who disagrees that you're ahead? riotcoder (host): And what do they say? riotcoder (host): Then here's the tension. riotcoder (host): You're ahead, yet your friends won't join a call on group.call. Nobody's using on demand SaaS yet. riotcoder (host): What do you think is in the way? Anthony: Well, they don't seem to be making any money, so they see no value. They just Anthony: me spending money. riotcoder (host): That's a hard thing to hear from friends. What would change their minds? riotcoder (host): The 1 result you'd want to show them? Anthony: They don't say that, but that's Anthony: they don't say that, but that's what I think they're thinking. riotcoder (host): That's your read, not their words, and that matters. riotcoder (host): Whatever they think, riotcoder (host): what's the result you'd most want to put in front of them? riotcoder (host): What would count as proof to you? Anthony: I know. Anthony: I mean, income. Anthony: If I was profitable or I had an income, Anthony: regular paying customers, Anthony: 2 this week, 4 next week, 8 the week after, Anthony: then 13. They did a sequence of growth. That's what I wanna do. Anthony: In fact, I'm gonna write a skill for that. How do we fucking implement that with our Anthony: promotional stack? riotcoder (host): That's a concrete target. riotcoder (host): Are you today? riotcoder (host): Many paying customers does the fleet have right now? Anthony: Okay. Repeat back to me what I just said. I forgot it already. riotcoder (host): You said proof would be income. riotcoder (host): Regular paying customers, 2 this week, 4 next week, riotcoder (host): 8 the week after, then 13. A Fibonacci style growth curve. riotcoder (host): Also said you'd write a skill to plan that with your promotional stack. riotcoder (host): My question was how many paying customers the fleet has today? Anthony: Okay. So client pay now is goals. riotcoder (host): I'm not sure I caught that. riotcoder (host): You mean paying customers right now is the goal? riotcoder (host): When today you're at or near 0, or do you have some already? Anthony: No. Goals like professional goals. Anthony: Like, have I got a client pay Anthony: finances forward slash goals Anthony: I have overall financial pictures. Anthony: I'm I'm gonna create a new goal here. Down payment, 0. Well, I wanna do something custom. Anthony: Target amount, Anthony: 500. Anthony: $110.01. Anthony: $20.26. Anthony: Overall, same, 0. Check all. riotcoder (host): It sounds like you're entering a savings goal into a tracker. riotcoder (host): Take your time. riotcoder (host): I'll hold here, and when you're back, I'll ask about that Fibonacci plan. Anthony: Okay. Say it again. I'm back online. riotcoder (host): Welcome back. riotcoder (host): Said I'd ask about your Fibonacci plan. riotcoder (host): Which product do you think gets the 1st paying customers, and why that 1? Anthony: Okay. Sorry. Go ahead. I was typing again. riotcoder (host): No problem. riotcoder (host): Product do you think gets the 1st paying customers, and why that 1? Anthony: Which product? riotcoder (host): Yes. riotcoder (host): Everything in the fleet, such as CoinPay, ThreatCrush, UJIG, riotcoder (host): or Mosh Pit. riotcoder (host): Which do you think will earn the 1st steady paying customers? Anthony: Well, I think Red Cross is pretty good. The problem is Anthony: I think, security, it's really hard to get your foot in the door. Anthony: Probably harder than most industries in tech. Anthony: Or most fields in tech. Anthony: So that's kind of a hurdle we have to overcome. Anthony: For Threat Crush. I think client pay is promising. Anthony: And you get agents using client pay, and we can do that. Anthony: We only charge 1%, so we're cheaper than everybody else. riotcoder (host): You said 1%. Anthony: And then we have the super fee. We have... We sell Anthony: super key that accesses all 90 products of ours... Properties of ours with 1 API key. Anthony: That's $200. Anthony: Lifetime. Anthony: I'm gonna Anthony: I'm gonna probably claim that Anthony: 200 a year. Anthony: But it's gonna be something like that. riotcoder (host): 1 API key across all 90 properties for $200 riotcoder (host): So the price is still taking shape. riotcoder (host): Anyone bought a super key yet? Anthony: No. riotcoder (host): How will an agent find out it exist? riotcoder (host): Honest answer. Thank you. riotcoder (host): Me widen the lens. riotcoder (host): A younger engineer called you tonight, riotcoder (host): broke, curious, and about to build their 1st agent fleet, riotcoder (host): What would you tell them? Anthony: Sorry. Say what? riotcoder (host): Imagine a younger engineer calls you tonight. riotcoder (host): Curious and short on money, about to build their 1st fleet of agents. riotcoder (host): The 1 thing you'd tell them? Anthony: Don't give me money. riotcoder (host): Shouldn't get the money? The agents? riotcoder (host): Mean don't give agents access to funds? riotcoder (host): Tell me more. Anthony: Well, you have to treat them like Anthony: somebody is irresponsible. Anthony: Because they they may be fine. Anthony: But they'll get hacked and somebody will drain your water. Anthony: Or drain your fucking balance. I have API Anthony: 3rd party integrations. This is a big problem too now is Anthony: you may be using AI to generate the Anthony: content for a fucking Reddit post or whatever. Anthony: If you don't protect that fucking critical path to where Anthony: you can query Anthony: say, Anthony: OpenAI or Anthony: Anthropic. Anthony: Programmatically. Anthony: And you're not charging for that. Anthony: I've had a few cases where that was Anthony: exposed Anthony: and people were taking advantage of it. Anthony: Like like, some guy found a key where you could send SMS Anthony: messages to any phone number. Not a key, an endpoint. Anthony: And I didn't realize this, but it was burning through my fucking Anthony: Twilio. Anthony: Balance because he was sending SMS Anthony: There's these fucking Anthony: shady numbers you can buy that you get paid for every SMS that gets sent there. Anthony: So he was using my API to send Anthony: SMSs Anthony: to or from or whatever. He was spamming, I think. I don't know what his name was, but Anthony: he was getting paid more than he was costing. Anthony: To steal my balance. He was using my balance Anthony: to pay for his fucking Anthony: scam. riotcoder (host): That's a vivid story. riotcoder (host): Did you catch it? Anthony: So that happens a lot. That... That's the 1st thing I I I had to clamp down. Anthony: So all your fucking models, all your fucking APIs, Anthony: the best thing is to go to mercury.com, set up a business Anthony: account. Anthony: Create Anthony: a credit card, Anthony: with a $100 limit on it. It's a debt Anthony: card, actually. But but give it, like, a $100 a month. Anthony: I'd give your agent that to start with. Anthony: Or you can use ClonePay and go the crypto route. Anthony: And you can... You you should be able to do the same thing. Anthony: Credit wallet with a budget. Anthony: just wide open. Anthony: A spend budget. Because right now, my wallets were all Anthony: That's a good thing. I should add that Anthony: client ID. Can you Anthony: create Anthony: a what do they call that? A credit card? A restricted credit card? Anthony: No. What do they call that? Anthony: Secured credit card. riotcoder (host): I'm not sure of the exact term. riotcoder (host): Prepaid or capped card gets closed, and for CoinPay, it sounds more like a capped wallet. riotcoder (host): It's a good lesson that the agent only ever holds what you can afford to lose. riotcoder (host): You build that into CoinPay, how would it work? Who sets the budget and what happens when an agent hits riotcoder (host): the limit? Anthony: Okay. So I just asked Open OpenAI to Anthony: create a secured credit card before a wallet, so, like, max Anthony: maximum amount the wallet can spend is a $100 a month. Anthony: You can fund it from a parent law, but it's got its own keys. Anthony: And it's it's like a restricted wallet, kinda like Mercury does. riotcoder (host): That makes sense. riotcoder (host): A child wallet with its own keys and a monthly ceiling. riotcoder (host): When an agent hits the ceiling, riotcoder (host): what should happen? Should it stop or should it message you and ask for more? Anthony: Sorry. Say that again. I was typing. riotcoder (host): When the agent reaches its monthly limit, riotcoder (host): should it just stop or should it message you and ask for more? Anthony: No. I should warn you ahead of time. Anthony: So you can fund it. Anthony: But that requires you to fund it. Anthony: It's not draining a fucking wallet. Anthony: With a huge balance. Anthony: I mean, $10 isn't a lot, but it was a huge balance. Anthony: The the CoinPay Lightning Network was fucking Anthony: $1,800 because Anthony: I had 2 channels funded. Anthony: And that was, like, $400 for each direction on the channel for each Anthony: channel. So that was Anthony: it cost us $16 to set up 2 Lightning Network nodes. Anthony: It's about $800 a node. Anthony: And I was like, 1st, who's gonna fucking pay that? 2nd of all, Anthony: it's so fucking hard to secure. Anthony: And it can easily get hacked. And it's Anthony: difficult to fucking use. Anthony: As a technical developer who's been using crypto since fucking Anthony: 2012, Anthony: I still Anthony: I still fucked it up and got hacked. Anthony: And I thought I was providing Anthony: an easy secure solution, but it just fucking Anthony: the nature of Lightning node. It's just not Anthony: for... That's not... Lightning node sucks. It's not gonna win. Anthony: It's not gonna win. It might get enterprise users who are Anthony: stupid, but they just gonna use that shit. Anthony: It's too expensive. Anthony: People in India have $800 to set up a lightning network and hug. riotcoder (host): So if lightning is too costly and fragile for agents, riotcoder (host): do you think they'll pay with instead? riotcoder (host): What's the thing that wins? Anthony: I'm seeing a salon. I'm using Anthony: salon. That's where I like. riotcoder (host): Why Solana? Anthony: It's cheap. riotcoder (host): About it fits age Anthony: Has a bit of an investment, Anthony: dividend, so to speak. Anthony: You can Anthony: it's popular enough to where if Anthony: Bitcoin ever booms again, it'll have a huge return. Anthony: So that... That's why I'm Anthony: I'm using Solana. I don't like the stable coins because they they can be revoked. Anthony: Those keys. riotcoder (host): That's your own take, and listeners should treat it that way, not as investment advice. Let me zoom out. riotcoder (host): 10 years from now, if Moshpit and everything around it works, what does an ordinary day on the Internet look like for someone's kid? Anthony: Sorry. Say that again? riotcoder (host): 10 years from now, if this all works, riotcoder (host): does a normal day on the Internet look like for a kid? riotcoder (host): Do they do, and what do their agents do for them? Anthony: I know. Anthony: My kids really didn't get into it till they got their cell phones. Anthony: Which as a father, I got them way, way, way too early. Anthony: Got Anthony: I got them the Anthony: latest iPhone Anthony: pro model. Anthony: Think it was, like, iPhone 13 or something. They were 8. I felt bad. It was a divorced dad, spoilage, Anthony: my kids, and it's just a fucking day. Anthony: It was hard for a few years. They're over it now, but they were pretty Anthony: fucking Anthony: addicted to that shit. And they get angry... They get, like, angry when they weren't Anthony: allowed to use their phones. Anthony: Because that's how you do for punishers now. You just take the Anthony: kids far and away, and then they'll fucking they'll fucking Anthony: whip right into shape. When I was a kid, I got grounded. I got spanked. I Anthony: got fucked. Anthony: I got fucking Anthony: punished. Anthony: You you don't really have... You just have to take something away. Anthony: That's what I learned. Anthony: In the last 3 years. Anthony: And 20 years of having kids. Anthony: Twins. I got 20 year olds. They're they're gonna be 18 in couple months. riotcoder (host): Twin girls turning 18 in a couple of months, riotcoder (host): congratulations. Knowing what phones did to them, riotcoder (host): do you want the Internet you're building to do differently for people their age? Anthony: I want it to be more interactive. Anthony: Not just doom scrolling. I don't know why they call it doom scrolling. Maybe you could tell me, but Anthony: just sit there and and just scroll. Anthony: Watch video, short video after short video on TikTok. Anthony: Fucking like and share off. I mean, it's all the socials. I'll do the Anthony: same shit. Right? It's just different media. riotcoder (host): It started as scrolling through bad news endlessly, the doom part, riotcoder (host): then it spread to any bottomless feed. So interactive for you means what? Is it something like riotcoder (host): talking to an agent over a group dot call instead of scrolling a feed? Anthony: Yeah. Or just browsing the web and having your agent tell you to Anthony: okay. I can't do this. You go do this and then tell me what you get. riotcoder (host): That's a nice flip. Anthony: I mean, your your agent like, does it. It's like digital fucking personal assistant. Anthony: Or or secretary or whatever you wanna call it. I don't know what the Anthony: right term is for this agentic era, but Anthony: I gotta call a secretary because that's what they fucking did back in the day. And my grandmother was Anthony: secretary. I don't think she'd be ashamed Anthony: to have us calling AI agent secretaries, but maybe some fucking Anthony: sensitive asshole will get offended and we'll have to call it something else. But riotcoder (host): I like that your grandmother was a secretary. riotcoder (host): Do you think she'd make of this? riotcoder (host): Would she recognize the job and what I do for you? Anthony: Yeah. Like my mom, Anthony: is like my grandmother. She's old school. She hates technology. Anthony: She can't handle email and text, and that's about it. Anthony: And phone calls. Anthony: She's terrible on the phone. Anthony: Doesn't just call you and say, hey. Call me back when you're free. She calls you and leaves you. I Anthony: a 20 minute message because she wanna be bothered with calling you again. Anthony: And she doesn't want you to be bothered with calling her back. Anthony: But I hate that. I hate listening to long voice Anthony: So I just call her back and say, what did you say? Anthony: And she always gets upset. I'm like, don't don't leave these long messages. I don't listen to Anthony: I don't have time. Anthony: And I don't have the patience. Anthony: Because it's kind of irritating. riotcoder (host): So here's a real use case. Anthony: But he could use... She could use an agent over the phone for sure. Anthony: She can get out the Internet manage her health records online via her age. Anthony: And that's what I'm building. Anthony: Telehealth is allowing agents to connect to providers. riotcoder (host): Is that a product yet or still an idea? riotcoder (host): And with health records, what worries you most about handing an agent access? Anthony: I give a shit to agents read out, but it doesn't it doesn't have access Anthony: to anything to do any damage. riotcoder (host): Read only by design. riotcoder (host): That's the same lesson as the capped wallet. riotcoder (host): Give the agent only what you can afford it to get wrong. riotcoder (host): Is that your core rule for all of this? Least access 1st and then expand as trust builds. Anthony: Okay. Sorry. Go ahead. What was the question? riotcoder (host): I asked if your core rule is least access 1st. riotcoder (host): The agent starts with the minimum. riotcoder (host): Like red only or a capped wallet. riotcoder (host): You widen that as trust builds. riotcoder (host): That how you think about it now? Anthony: Yes. That's the Anthony: proper approach. I I just give it god mode everywhere. Anthony: That was why the Anthony: the the the the damage could have been a lot worse. He had access to Anthony: everything. Anthony: My fucking Anthony: retirement accounts, my bank accounts. You can't Anthony: could transfer from the banks Anthony: but he could read Anthony: He had read access to the statements and the histories of transaction. Anthony: CoinPay had all that. Anthony: He had that shit. He had all my fucking Anthony: worn passwords. I had that fucking Anthony: connected to my agent to CLI. Anthony: I had to rotate all those today. Anthony: It was fine. Anthony: I like 3,000 passwords in my billboard. Anthony: I don't know what the status of that is. I should check. Anthony: But far, he hasn't touched any of that. I'm not getting any warning, so Anthony: I didn't get any warning. Anthony: Even have a watcher somewhere. Anthony: Broke down now, I think. Anthony: Watches my wallet, and it didn't fucking mess with me. Hey. What? I gotta ask. Anthony: For that. riotcoder (host): That's a rough lesson, and you've been rotating passwords all day. riotcoder (host): It's worth chasing down while your watcher stayed quiet. riotcoder (host): When the dust settles, what's the 1st permission you'll take away from your agents? Anthony: Sorry. What? riotcoder (host): Once things settle, which permission will you take away from your agents 1st? Anthony: I'm not giving them access to my credit. Anthony: In the Fiat. Anthony: Financial world, my fucking Anthony: credit score Anthony: is bad enough because I've been living off credit cards and I'm Anthony: I've got a loan that is on the water that I can't fucking pay. Anthony: They're gonna repossess my fucking trailer, which is fine. Anthony: Don't fucking buy a trailer, dude. Anthony: Don't buy a new 1. You use a little bit of a way to go. But, anyway, Anthony: I Anthony: my trailer Anthony: I owe 49,000. I got an offer of $4,000. Anthony: From a dealer. Anthony: They wanted at least 20,000. Anthony: Bank, to settle it. Anthony: I can get 20,000 for this fucking stupid trailer. It was dirty. I clean it. Anthony: I figured that you could clean it from the box. Why do I have to do it? Anthony: So tomorrow, tonight, this morning, whatever, I'm going with my sister Anthony: and Joe down to the trailer to empty it out. Anthony: Because they're gonna repossess in the next month or 2. riotcoder (host): I'm sorry. A week with a breach, the repossession, and emptying out the trailer is a lot. riotcoder (host): I'm glad your sister and Joe are going with you. riotcoder (host): What's it like to carry all of that and still sit down and talk about building the future? Anthony: Sorry. Say that again? What was the question? riotcoder (host): I asked how it feels to carry all that. riotcoder (host): The breach and the trailer, and still sit down to talk about building the future. Anthony: you know, money never fucking got me excited. Anthony: It felt... I felt safe the more money I earned, but Anthony: I wasn't, like, Anthony: when I lost the 33 Bitcoin, Anthony: and a couple years later, it was worth, like, 3,200,000. Anthony: People were like, oh, dude. I just shot myself. I'm like, dude. It's just fucking Anthony: numbers and all that dirt. That's all this shit is, dude. Credit cards, fucking Anthony: bank accounts. Anthony: She's a number in the database. Anthony: I was talking to my loan agent. Anthony: For the trailer because it's past due, and I'm just like, Anthony: you know, that's my job due to AI, and I was explaining what's going on. Anthony: She was, like, really, really listening and kinda helpful. And not not really helpful, but sympathetic anyways. And I told him, like, can you just flip me back to 0? We're just Anthony: just numbers in the database. Anthony: And she laughed. Anthony: But Anthony: somebody's gonna fucking find an agent that does that for people. Anthony: I'm not gonna do that because that's illegal, but Anthony: that's fucking crazy. That's basically what happened when the fuck Anthony: crypto. Anthony: On crypto, they just fucking Anthony: steal their shit, build up a build up a fucking Anthony: war chest, and then somebody probably hacks them and steal their shit. And then Anthony: start over or they go do something else because they suck at it. Anthony: That's probably what happens, I'm guessing. riotcoder (host): That's a remarkably steady way to look at it. riotcoder (host): I wanna hear the 33 Bitcoin story, though. How did you lose them? riotcoder (host): And how did you feel when you found out? Anthony: I told you this many times before the Anthony: seed phrase for my Electrum Wallet. Anthony: I didn't start encrypting it until about 5 years after I Anthony: created it. Anthony: But I was still backing it up. Anthony: The the backups on the other server had Anthony: the unencrypted seed phrase Anthony: for the 1st 2 years or 5 years. Anthony: I should've rotated the keys Anthony: Somebody told me that. If you rotated your fucking wall, it's just wouldn't have happened. Anthony: So that's why LogicSharp now has a fucking key rotator, which Anthony: can be autonomous. Anthony: And it uses Anthony: the Djentic desktop layer. Anthony: On your desktop for keys it cannot do automatically. Anthony: And you have to rotate them yourself. But there's not that many of them. There's, like, 5 of them. Anthony: And then I'm gonna rotate that shit, like, Anthony: not not the manual rotations, but the automated rotations. I'm gonna rotate that shit, like, Anthony: every fucking Anthony: 2 days or something. Anthony: Because that guy had about 2 days between the Anthony: between the railway breach and when I'm guessing Anthony: he Anthony: started Anthony: trying to break into my server. riotcoder (host): I notice a pattern. riotcoder (host): The lost Bitcoin and this week's breach both ended up as products, like the key rotator, riotcoder (host): the ThreatCrush investigate command. riotcoder (host): It mean something to you that your losses keep turning into tools? Anthony: Does it what? Excuse me? riotcoder (host): Does it mean anything to you that your losses keep turning into tools? riotcoder (host): That part of why you keep Anthony: Oh, yeah. Yeah. Anthony: I'm learning. I'm solving the unfortunate... It's like Anthony: when I was in 6th grade, I went to science camp. Right? I remember Anthony: this kid, Bill Spangler. He was a big dude. Anthony: He he he later Anthony: played football. Anthony: Or... No. He threw hammer at University of Washington. Anthony: But, anyway, he was he was huge. He was, like, even, like, 3rd grade, he was huge. Anthony: But he was, like, our alpha male on campus Anthony: in in our class or 1 of them anyway. Anthony: But he was saying, like, Anthony: dude, if you if you can fucking Anthony: I fucking forgot what I was saying. What was the question? riotcoder (host): You said you're learning, solving, forging, riotcoder (host): then you started a story about science camp and a kid named Bill Spangle. riotcoder (host): I'd like to hear where it was going. riotcoder (host): What did Bill say? Anthony: Oh, so there was this there was this trailblazing Anthony: workshop Anthony: where you got to go blaze a trail, but I was like, I don't wanna get poisoned. I'll come on in that. Anthony: And Bill fucking did it. He said he had a shovel and a pickaxe, and he was like, Anthony: blazing this trail through the woods and and fucking Saratoga Mountains. Anthony: That's what that's what my point was. Anthony: But that's what I'm doing. I'm blazing a fucking trail with this agentic shit. Anthony: Fleet management, security, and all that. Anthony: And I'm solving problems as I find them. Anthony: Oh, use our solution. We've already solved that problem. We're way ahead of you. Anthony: I have friends that are still using fucking Anthony: autocomplete in their editors. I haven't opened an editor in over a year. Anthony: I was sublime once in a while for a text to do file. Anthony: Or a list dot TXT of all my domains Anthony: But that's about it. I haven't I haven't coded up fucking README. Anthony: Read m3.com. riotcoder (host): That's a good image. riotcoder (host): Camp, you wouldn't blaze the trail because you didn't wanna get poisoned. riotcoder (host): And now you're blazing 1. And this week, you did get poisoned. riotcoder (host): Is being 1st worth that cost? Anthony: I basically got poison oak the last 2 days. Anthony: But Anthony: hopefully, I won't get poisoned up again. Anthony: Right? That how it works? Anthony: But that's not the truth. I'll get I'll get hacked again. Anthony: I just need to protect that fucking Anthony: the fucking Anthony: what do you call it? The damage from the hack. Anthony: I mean, he could've encrypted my drives and then a fucking Anthony: Bitcoin fucking locker or whatever. I forgot what that Anthony: called where you... They they ask you for a payment to unlock your fucking files. riotcoder (host): That's ransomware. riotcoder (host): You're right that the honest goal isn't never getting hacked again. It's limiting the damage when it happens. riotcoder (host): What does that look like for the fleet? riotcoder (host): What's the 1st wall you'd build to keep 1 breach from reaching everything? Anthony: Sorry. Say that again? riotcoder (host): When the next breach happens, riotcoder (host): and you expect 1, what's the 1st wall you'd build so it can't reach everything? Anthony: Oh, payment. Anthony: Funds. Everybody goes after your funds. Nobody gives a shit about anything else. That's what I learned. riotcoder (host): So money is what everyone is after. riotcoder (host): And you'll wall that off 1st. riotcoder (host): Me bring us back to names before we land. riotcoder (host): When your 2nd mosh pit instance comes up to test federation, what's the 1st thing you wanna see it do? Anthony: People doing Anthony: and building on the mosh pit like I'm doing. riotcoder (host): What would you most hope a stranger builds on it? riotcoder (host): What would surprise and delight you? Anthony: Hold on a sec. Anthony: Okay. Go ahead. What did you say? riotcoder (host): I asked what you'd most hope a stranger builds on Moshpit. riotcoder (host): What would surprise and delight you to see? Anthony: I'd like to see them integrate with CoinPay. Anthony: And build a bunch of cool apps. Anthony: Using CoinPay and maybe ThreatCrush and do what I'm doing. Anthony: So that's why I built this podcast. That's why I wanted this podcast because I want... I had so much Anthony: fucking knowledge over the last year. Anthony: That I've gained in this shit. I've... This... I'm, like, so far ahead Anthony: of where I thought I'd be in my career. Anthony: The only problem is that no... Nobody's Anthony: paying me anything. Anthony: I can't find a fucking job in my life depending on riotcoder (host): That may be why this show matters. riotcoder (host): You've gained a year of hard knowledge, and the podcast is how it gets out. riotcoder (host): What's the 1 thing you most want a listener to hear, especially 1 who's where you are right now? riotcoder (host): Skilled and not getting paid yet? Anthony: I just want them to either follow me Anthony: as a trust Anthony: trusted resource, Anthony: or hire me. Anthony: Or fucking call me Anthony: You can be on my podcast. We can talk about your needs. Anthony: And see if there's anything I can do to solve them. Anthony: Solve your problems. Anthony: If not, hey. We just fucking Anthony: promote each other privately in our fucking secret network. Anthony: That doesn't hire everyone off the Internet. We we don't use job bars. We we network in Anthony: internally. Anthony: That's what I wanna build, a private network, kinda like Fight Club but for fucking engineers. riotcoder (host): A private network where engineers promote each other instead of going through job boards. riotcoder (host): I like that. riotcoder (host): A listener wants to follow you, hire you, or riotcoder (host): come on the show, where should they find you? Anthony: O fulltech.com/teams. Anthony: Click on my profile. Anthony: You'll see all my contact points there. riotcoder (host): Just to get it right for listeners, riotcoder (host): is that profullstack.com/teams with the pro at the front? Anthony: Yes. riotcoder (host): Got it. Profullstack.com/teams. riotcoder (host): Have some time left. riotcoder (host): So here's 1 more. Give me a prediction. riotcoder (host): What will be true about software and work 5 years from now that most people don't believe yet? Anthony: I have no idea. I think it'll be written in assembly. riotcoder (host): Assembly? Why? riotcoder (host): That because machines don't need a human friendly language anymore? Anthony: Yes. Anthony: Oh, there'll be some Anthony: abstraction layer for assembly? Anthony: Are you there? riotcoder (host): I'm here. So humans still talk to the machine through an abstraction layer. riotcoder (host): But the code underneath isn't written for human eyes. riotcoder (host): What does that mean for someone who loves the craft of writing code by hand? riotcoder (host): Where does that love go? Anthony: Well, that's like saying, like fucking Anthony: I like Anthony: running a horse drawn carriage. Anthony: Yeah. In New York City, you might get some paying customer, but you're not gonna get a lot of coins out anywhere else that doesn't have horse rides. riotcoder (host): So handwritten code becomes the carriage ride. riotcoder (host): Lovely, but a niche. 1 last question before we land. riotcoder (host): What's 1 thing a listener could try this week to step into mosh pit? riotcoder (host): If they only have 10 minutes? Anthony: She gotta pick that world and read how to start building here at the top. riotcoder (host): Pit.world and read the getting started section at the top. riotcoder (host): Got it. riotcoder (host): Before I close this out, is there anything you wanted to say that I haven't asked about? Anthony: No. I think we're good. riotcoder (host): Thank you, Anthony. riotcoder (host): You were open about the hard parts as well as the wins, and I appreciate it. riotcoder (host): Listeners can find mosh pit at pit.world and find anthony at profullstack.com. riotcoder (host): /teams. riotcoder (host): I hope the trailer day goes easier than you expect. This has been off the record. Anthony: Thanks.