Workshop · 2024-09-17
How and when to use AI for sales and RevOps
Horacio Lopez · · Turn your whole team technical with Replit
Horacio owns all things BizOps at Replit, and is passionate about creating products that make work more fluid and free for everyone. Known for his innovative approach to SaaS tools and AI integration, Horacio's joining us to teach:
- How to leverage Clay for enrichment, lead generation, and outreach
- Techniques for using Replit to quickly integrate tools and automate your work
- How to turn your virtual assistant into a technical contributor in < 30 days
Whether you're in bizops, sales, product development, or simply interested in streamlining your work, Horacio's insights are guaranteed to be valuable.
Sign up below to catch this event. Recordings will be emailed to all those registered.
Summary
Using AI in Sales and Revenue Operations: Live Demo with Horacio from Replit
00:00 Introduction and Overview
02:55 Using AI for Outbound Sales
03:35 Setting Up Lead Lists with Clay
05:55 Advanced Clay Techniques and Cost Management
21:09 Generating Inbound Forms with Replit AI
25:49 Testing the Feedback Submission
26:34 Interacting with the AI Agent
27:31 Language Capabilities and Calendar Link Issue
30:09 Debugging with AI Chat
34:19 Deploying the Application
40:02 Future of No-Code and AI Integration
48:39 Q&A and Final Thoughts
Transcript
How and when to use AI for sales and RevOps
===
[00:00:00]
[00:00:00] Horacio: So much for having me ben and thank you all for making time this morning or afternoon wherever you're located in the world so I guess yeah, i'll jump right into My intro.
So today I'm going to be talking about how to use AI in sales and rev ops, but towards the end I will also, yeah, just quick intro first. So I'm Horacio, I work in business operations at Repl. it. I've been here coming up on two and a half years. Biz ops at Repl. it is the generalist role.
So we do everything like marketing, sales, business, data analytics. I led our bounties marketplace. So if you ever use repl. com slash bounties to hire someone for a quick part time project, that's like. Our version of Upwork. So I was a business lead there and now I'm more focused on our revenue operations, our SEO and sales enablement.
So those are the topics I'm going to be focused on since they're top of mind. And then yeah, basically going to be going over how I use AI for [00:01:00] outbound, how I use AI for inbound, and then. And then I, a lot has changed over the past week and a half since if you've been on Twitter and you follow Repl.
it, you might have noticed some news about our AI agent that helps you build software basically with no code. And I added this last little portion, hopefully we'll get into it, to just talk about how AI affects the future of software from, I think, our point of view. And I'm really excited to share with this group because I think rev ops and sales professionals are particularly well positioned to take advantage of some of the things that I think are going to come next over the next year or two.
So yeah, quick intro on myself and then what I got planned for you this hour.
[00:01:42] Ben: That was great. Yeah, I think we I'm interested to to dive in. I think there's a few words that there that scare me, which I assume you're going to debunk and not make me too scared with Python webhooks and APIs. Yeah, looking forward to it.
[00:01:54] Horacio: Yeah, I'll try my best to, I will actually show you how to make [00:02:00] them less scary. But yeah, we're going to be building this stuff live. So you'll see all of the basically how the sausage is made. Also had a quick question. Like Ben, has anyone done like any clay tutorials? Cause I don't want to like belabor that either because I know it's been mentioned a lot and it's like a popular tool for sales and row ops, but just curious.
[00:02:19] Ben: I think we have, we've got one or two tutorials, but not much extensive content on clay. So I think people are excited to see what clay can do actually. Cause I know it's always. One of the most recommended ones of late anyway. So
[00:02:34] Horacio: perfect. Yeah. The tools that I have here on this slide are basically where I spend 80 percent of my time.
So clay and replet it's the most recommended tools I have. Obviously the second one, I'm a little bit more biased on, but really even if I wasn't here it's the glue that I would use for any rev ops or sales ops position going forward, but yeah, let's dive into, I'm just gonna kick things right off.
I'm going to be building this stuff live. So this first part, I'm just going to start by [00:03:00] building an outbound prep. And I'm actually going to do this because of the tasks that I have to do. So right now I'm in Boston for HubSpot's inbound conference. Right now I'm here with my colleague. And so we want to find the best people that we should talk to while we're here.
Who work at RebOps agencies, sales ops agencies, and obviously work with HubSpot. And then an added piece of information that we'd love to have is do they do technical integrations like API set up or just any like technical migrations where they're helping clients move from Salesforce to HubSpot.
So I'm going to be using Clay to go find that information. Number one, the first thing that we're going to do is pull their latest LinkedIn posts to see if they've mentioned inbound. Because a lot of people do mention that they're going to the conference. And then second is we're going to use Clay's, Claygent tool to evaluate like the company's fit to see if they mentioned any technical integrations on their website.
So let's dive in. The first thing that I have here is just like a list of the [00:04:00] companies. That we grabbed from the directory of HubSpot partners. So this will give us the initial thing. So Clay works like any list building tool initially, where you can create lists of accounts. So companies, or you can create a list of leads.
Obviously it's best since we're focusing on like a specific type of specific set of companies first pull the companies, and then we're going to use this list of companies to find people that work there. So here we, we have this clay table. It's just a spreadsheet with, company name, company domain, location.
And then I'm starting to prep this here. All I did here was like, I clicked create table. I'm just hiding like the clay tables that we have in our workspace. And then in terms of the companies that we're going to filter by, I use that preexisting clay table that we already have set up and then going to use the company domain as the matching to find.
The individuals that work there. I'm also going to limit it to [00:05:00] 10 people per company. And then I'm also going to add job title or rather I don't actually have a thesis right yet. So of who would show up to this? I think the precursor that we're going to look for is more of the LinkedIn content.
So I'm actually going to keep this pretty open ended for the demo purposes of just filter by the company and then keep it at 10 people per company since these agencies. Don't tend to be massive organizations. So I'm going to click a preview and you'll probably notice like this is pretty similar to sales navigator if you use that on LinkedIn.
But yeah, here's the full list of people who work at those companies. I'm going to go ahead and just click import into a new table and just continue as it is.
So clay is basically like a spreadsheet. With APIs and webhooks, that's why I put that the title, all these [00:06:00] tools basically, a big part of Rev Ops is like all about, getting data from certain locations or getting data from one place to another, and that all just like behind it.
If you all good. If you get into the nitty gritty of it, it's all webhooks, APIs, and Python. Just a quick, a side note, like if you ever do decide to spend like a couple of Saturdays, like learning Python, learning about APIs and webhooks, it just unlocks so much. So if you just. If you ever do spend time like on YouTube, like looking through tutorials, just focus on any guides I've mentioned, APIs, webhooks and Python.
So that's my like two cents if you ever want to go after, learning how to code and like technically upskilling yourself, but we're just going to go ahead and dive in here. We're gonna go ahead and find posts. So that's the first thing that we're gonna look for. Recent posts by user or company.
So they don't explicitly mention it, but this is they used to have find recent LinkedIn posts, but they can't explicitly mention like [00:07:00] LinkedIn anymore on their enrichment. So just a quick side note, the social URL that they look for is usually a LinkedIn profile URL. So here we have the personal LinkedIn profiles for this, and then they all should have a URL so we can go ahead and just continue to add fields.
And then fields are just going to be basically new columns of data that we want. So we want like most likely the post content or actually I'm, I noticed I missed one key thing. We're actually going to add this filter called keywords, and we're going to start to add things like. Inbound 2024 inbound and then upspot inbound.
So those are just like common hashtags and phrases that I've seen in these announcement posts. We can come back and add more later, but for now we're just going to go forward with these. And then again, it's [00:08:00] the only other attribute that we're adding to this is just the LinkedIn profile that it's going to use to scrape for recent posts.
So we're going to add this post, we're going to add this, the URL to the post, and then add the date. They probably just need the date. We're going to save and run and then it's just going to, I always choose save and run 10 rows clay runs on a program like a usage based billing program. So your subscription comes with a certain amount of credits each month.
And each of these enrichments or most of the enrichments that they have built in uses up credits. So I also just take a quick second to go ahead and check if the if it's working properly but it looks like there's nothing coming through right now for LinkedIn posts that have those keywords.
So let's actually choose a larger group. Let's do a hundred rows or let's do 150 rows and we'll start from around 10 [00:09:00] because we've already around the first 10 rows. And so while that's running I'm going to go ahead and also set up that second criteria that we have, which is going to the company's website and then seeing if that company is even a fit.
Because what I have in mind right now, my plan is, find people who said they're going to inbound and then second layers, like use another column to see, is their company even like going to benefit from replits product, which works well with HubSpot's API. So Clay has this product called Claygent.
And I like this. And it's this top one called Clayton AI web researcher and just a quick side note, like I've talked to executives that used to work at other competitors to clay that are in the data enrichment space or like lead list building. And this is like the number one feature that wows them as as they work for a previous competitor, they're like, this is insane.
Like you could have an AI. And of course it's only brought about because of this new age of LLM where [00:10:00] they're really good at taking all this messy texts. Cause what's it's going to do is just basically go to the website, grab the HTML and just read through and parse the data of what's the actually useful stuff that you've told it to go search for.
This is what is like a killer feature, even for, I come in, I've been lucky, like I found clay right away as my go to for like list building, but even people who came from previous tools I don't want to directly mention those tools, but yeah, people who come from them really find collagen to be especially useful.
So I have a backup one here that I'm just going to grab the prompt and then bring it over to the list that we're building right now. So I'm going to go through this prompt real quick. So I'm going to just in clay the way that it works is if you're familiar with Zapier and how you're able to like comment and reference like a specific field that came higher up in the flow, clay works pretty similar where you can reference a column or a piece of data.
That's somewhere in the table. So here I'm [00:11:00] going to reference the company domain. So this is the company's website and the mission that I'm going to send this agent on is to go to the company website. And see if they offer technical API integrations or services. And then I clarify what this means. I say like anything with APIs, anything that explicitly mentions HubSpot API, CRM API like I mentioned, we want to find those people that are going to do those big technical migrations from like HubSpot to Salesforce or like connecting HubSpot to like other tools.
And then I add an extra emphasis of certainty because. LLMs, they can go off the rails a little bit, especially agents. So you want to add, just be sure you're a hundred percent certain that this offer, this firm offers technical services and then output technical offers as true if it does.
[00:11:47] Ben: So I'm
[00:11:48] Horacio: just going to be,
[00:11:49] Ben: I assume you had some testing to then add that end piece to that prompt. What was it? What was that like to get to do that?
[00:11:57] Horacio: Yeah. I think it's just general [00:12:00] working with other agents. I think. Yeah. Just saying in clay what happened was. It was a while ago, I was prompting it and it would over it would overcorrect and it one mention on a blog about an API, but the firm wasn't like really technical would like basically mark that, like mark the AI as labeling it as true as it, it was.
So yeah, like just. Generally working with LLMs and generally chat GPT, even you can tell like how people prompt it to say make sure you're a hundred percent correct or else a grandma will die or something excessive like that. That's just like the same types of clauses that you have to put in for this agent as well.
So yeah, it's going to go in here. And then because this column, we want it to be a true false. So like a check Mark, yes, it offers technical offers. Or no, it doesn't. [00:13:00] We can change the type that will output to a number of texts. And then for us, obviously, because it's just true false Boolean, we're going to say it should be this type.
So this is really nice feature just for like organization and stuff that clay inputs is like, you can have control over. What the LLM outputs. So it's it's probably some prompt engineering and like a lot of Pydantic in the background that they're doing to make sure the LLM outputs something structured that is expected.
And then, yeah, after that, I'm actually going to put some run settings. Every clay enrichment, like I mentioned, because it costs money, you can put conditions on whether or not it runs based on, that particular row, that particular lead, if a data field is present, run it. If it doesn't then don't run it.
And as you can see, a lot of them are coming back with no posts of mentions to inbound. So I'm just going to say to save us on credits. I'm going to say only run if the post [00:14:00] actually comes back as not empty. And you can use AI again to just create that formula for you. So I'm going to say only run this column if post is not empty.
I'm going to generate this formula. It should be pretty simple, but it gives me a sample outputs. And the first time that we ran didn't come back with any posts. I'm just going to say this output is correct. And then we're going to test it on this one that actually did come back with a post.
Can you actually should have got seven. Yeah.
[00:14:32] Ben: Could you just quickly tell us with the credit system, obviously you've got like a big sheet here. Is it basically a credit on each cell that has like an AI, has AI running to do something on that cell? So I'm going to assume, yeah. Thinking of. The cost is going up massively when you're trying to do like your first lead list, you'd like to do a bunch of this, then it's, yeah, it just gets absolutely rammed with clip credits.[00:15:00]
[00:15:00] Horacio: Yeah, Claygent, this one where you're doing multiple steps to visit a website, then decipher, then put a structured output, that's going to cost you clay credits there. Is a workaround where you can use your own open AI API key. And if you're using GPT 4. 0 mini, it's insanely cheap because, it's a million tokens of input for 15 cents.
Don't quote me on those numbers, but that's a really good point. And I'll actually show you a hack how we could do it, but yeah, so it does cost credits. So there's a lot of videos out there, like the number one thing about clay that people complain about is it's too it's a little technical, a little bit of a learning curve.
And then second complaint is the expensive net, like the expense. So there's a lot of tutorials on like how to use your own API keys to get around the costs.
[00:15:54] Ben: Got it. Yeah, I think Scott said in that formula, you just did, I think he typed is instead of if, [00:16:00] so that might be why it didn't pull up the,
[00:16:05] Horacio: yeah,
[00:16:05] Ben: didn't put up number seven.
Okay.
[00:16:07] Horacio: Okay. Okay, let's try it again. Only run if this post is not empty.
I'm gonna, I'll come back, we can come back and edit this. I just want to see what happens when I do run it on the empty runs and the one that did come back with the with the LinkedIn post. We're just gonna save, run the first 10 rows. Oh, okay. It did run, so I guess their output preview just probably had a front end bug.
Because number 7 should have said, yeah, it will run. And it is, so, it ran, but now there's an error. The nice thing about it too is if it does error out and it doesn't produce a result, then Clay will, obviously won't expend the credits. So,
And then once the rows start to get big and I like ran a bunch of them, [00:17:00] what I like to do is start to add filters. So I'm going to go ahead and just start to filter by any of the posts that did come back as not empty. So I'm just adding this filter. It's not empty. And so this will give us everything.
We did find posts about inbound boom. You could see this and this one's airy now, so I don't know why, but I'm just going to go ahead and just run. All the rows in this view. So once I have a filter applied, I can also just go ahead and just click run all rows and it'll just run the rows that are currently in the view.
Yeah, this one's gonna run a bit so I'll take if there's any other questions check
[00:17:43] Ben: How does it work with when someone I suppose it doesn't matter I was gonna say what about when there's multiple posts found because you can see there's ten seven nine But I guess it's yeah, there is there's a post so check the URL.
So it's just yeah.
[00:17:59] Horacio: [00:18:00] Yeah So it actually pulls all of those into this little object. So each enrichment again, if you it's just an API in the background and the responses get, just get stored as a variable. And so you can see this variable is an array of posts. So we could go through here and examine every single one that it determined had the keyword of.
HubSpot, and I probably should have just excluded HubSpot from the keywords because I'm seeing this one doesn't mention inbound, but it does mention HubSpot. No matter, I'll keep going. So you can get every single post and you can see, I'll use that. I'll use that information for for something in a second, but you can see it's running this, but let's go ahead and just demo what we mentioned earlier about the OpenAI, how to use your own API key.
So if I do generate text is probably the most common one. If you just [00:19:00] search for open AI, click on generate a text, I'm going to go ahead and explicitly set GPT 4 0 mini. And then you can see it's using my API key on the account. And the reason why it's so nice that it pulls all of those posts is we can reference that full array and say anything that we want is just a look through.
And probably that one question that we asked is. Does it actually mentioned HubSpot inbound conference? So I'm going to say, look through these LinkedIn posts and it's going to reference that same array. If I search for posts and I click here, so this is referencing the enrichment column and within here, you can see it has posts as a list or an array.
And I'm just going to say, grab the full thing, insert all 10 items. And so it basically has that full list of array of LinkedIn posts. And then I'm going to say. I'll put true [00:20:00] if you are 100 percent certain that one of these posts is true. Contains information mentions of HubSpot inbound four.
There we go. Um, I'll avoid the I'll just say you are helpful. LinkedIn post analyzer.
And then the fields define column outputs. This is the same thing that we mentioned earlier. We'll say is inbound mention, and then we'll switch this from text to true. And we'll click save. So now when I run it, we're not using clay credits, we're using GPT for a mini and we're essentially going through and having the AI sift through all of that content that it pulled with the HubSpot keywords, with the inbound keywords, and just do one final check to see if it really is.
And since it's only 25 rows, [00:21:00] I'm going to run it on full list here in this view. And then we get the same thing just to double check. But yeah I think I'm going to stop the outbound crap here, like this tutorial on, on just clay and I'll move over to the next section about inbound and probably jump right into creating something with replit AI agent as like an inbound form.
[00:21:23] Ben: Perfect. Any
[00:21:23] Horacio: questions so far?
[00:21:24] Ben: And that's a different inbound. That's not HubSpot inbound, right? That's inbound leads, right?
[00:21:29] Horacio: Yeah. Inbound processes. So moving back over to the slides inbound demo. I'll probably skip the API for now, and then jump right into creating the inbound form on Replication, but yeah.
Now it is an actual inbound form.
[00:21:42] Ben: Cool. Yeah, sounds good.
[00:21:44] Horacio: Perfect. Other than outbound and setting up your lead list, obviously a big part of sales is the leads that come straight to you. Those are awesome. Let's assume, we're a fresh new startup, and we don't even have a website, we don't even have an inbound form.
We, or maybe you're [00:22:00] just testing out a landing page concept, or a new product concept for your team, and you want to see how it performs. So I'm going to go ahead and spin up a landing page that does exactly that. So I'm going to use replica AI agent to just create that website for me. I'm going to go over and actually use the prompt that I use for the, I have a backup just in case it takes a little bit longer, so I'm just going to go ahead and grab that prompt.
Okay. So I'm going to prompt replica AI agent to generate a simple, but modern looking landing page. With the title of Ben's Bites and Repl. it. Subheading, which is a real offer that everyone gets is if you book a meeting with us, we'll give you one month of teams on us for you and up to two other teammates and below that, it'll have a form to enter your first name, last name, email, of course, and just a simple message.
If you have any [00:23:00] questions we're going to use Ben's Bites color scheme based on the website, it's this background color. And the accent blue. And then after someone successfully submits the inbound form, the user should be routed to a different page. Will it be able to book the meeting on the Calendly link that is right here.
So I'm just going to ask the agent to go ahead and build that website. And this is what kicks everything off. So the first thing that the agent is doing is it's going to set up like a full plan. And then it's also going to offer me any extra features that I might have not thought about that it can go ahead and build for me afterwards.
[00:23:41] Ben: You know what,
[00:23:41] Horacio: so
[00:23:43] Ben: you know when it does this, so when I've used it before, like just done. Oh yeah, I want all those things, but let me just do the initial one first. How do you then maybe you can show this later like maybe not selecting all of the additional features And then deciding that you want them later.
I haven't been able to figure that out. [00:24:00]
[00:24:00] Horacio: Yeah, perfect question I will demo that live but just a quick recap is actually Once I build a V0, and I'll show in a sec I lit I ask the I tell the agent this is good. And then I switch over to a more granular mode in AI chat. So I don't use the agent, I switch off of the agent.
And then I go into the AI chat, which I'll show in a second. So Let's see, it tells me it's going to build the initial prototype that we requested, email confirmation, I don't want to mess with email for now, and notifications, don't need an admin dashboard, and I don't really need analytics. I just really want the front end that lets you submit stuff.
So I'm just going to prove the initial prototype and let it go off. And so a preface to, answering that last question that Ben gave because agent is like a multi step chat GBT. So it's just an LLM in the background, but it's going to do a lot of different things. It's thinking it's reasoning through a plan that it's set.
It has a goal, and then it has access to a bunch of [00:25:00] tools that are basically all the replica plumbing. So there's a lot of stuff that's going on in the background. Tools are how LLMs know how to interact with the world. And because Repl. it has all the plumbing compilers, being able to run environments, being able to create databases, that's why if we plug in an AI LLM and give it access to all the same plumbing and tools that Repl.
it has, Then it can go off and build full stack end to end software like it just did here. Other than the nice little front end that it can do it's also building a lot of back end stuff and actually checking each runtime and each compile to see for any errors, to see how it's functioning, etc.
So yeah, now we have our initial page. I'm going to say ratio page replet. And it's, it seems to have missed missed the message field. So I'll go ahead and tell it that feedback. But I'm just going to test submitting this right now. So it's asking, is the landing page for Ben's Bites and Repl.
it displaying correctly? [00:26:00] Can you see the form with fields for name, email, and company? Yes, but can you also include a field or message?
Sorry, there you go. Sorry, I didn't realize I lost the chat. So there you go.
So now again, it's just going to go back and do, last minute edits. What I've realized in interacting with the agent or how it's set up is It has, it does have a very focused checklist of the initial goal that you gave it, it really wants to accomplish it and build that like software ask that you gave it at the very first message.
So I try to just go off of. Any interaction that it sends in these messages because it's its way of checking off items and [00:27:00] knowing that it's either going the right direction or not going the right direction. So just keeping that in mind. Because, like I mentioned before yeah, sorry, I'll actually demo in a second why it's better to switch to the AI chat versus here.
So as a message visible, let me refresh this page. And actually go back. So perfect. So added this rich text field that we can have here, adding a message. And
then I see a question. Do the prompts work in Spanish? As far as I see. Yeah I've seen, I haven't tried it personally. We can try in a second. See if we, if it understands when we switch. languages mid thread. But I do, we do, I do know there's plenty of users in Latin America who have prompted Spanish and that's one of the most common languages that we see in there.
And then I'll just say, hello everyone.
Boom. And [00:28:00] then, Before I check this and move on to that feature of making sure that it's the right Calendly book Calendly link that we told it, I'm just going to answer its question here. Is the message visible in the landing page? Can you submit the form? Yes, I can. Thank you. Perfect. Now it's probably going to ask me about the calendar link.
So that's what I was mentioning before is just going along with the plan of what it's suggesting right now, we're adding improvements to make it a little bit more flexible, but in the early access mode, going along with the questions it's asking et cetera. Then then it's probably best to avoid it going off the rails and starting to hallucinate a little bit.
And there we go. So it looks like it didn't put the right county link. I'm just going to say. You did not.
Awesome. I'm just going to quick look at the questions. What do you recommend for initial replica AI prompts should include a description of the backend logic, or can I add some schemas to illustrate the logic? [00:29:00] I would say it. Has if I wouldn't say you don't have to get as granular as setting up the full schema for it with all the objects and all the potential fields, it works best right now in the early access mode.
It's pretty opinionated on what it thinks is the best path to take for building out an app. So what would probably be best is you just give it a general idea, maybe a screenshot of kind of one page or one feature that you're trying to work on. Okay. And then maybe just listing the objects that you would want for your app.
If you have a social feed, you would have users, you would have company accounts, et cetera. But the schema, it would probably come up with on its own to build out those relationships for itself. Hope that answers your question, Alexander. So it says it just fixed the confirmation page.
So we're going to go ahead and check and nope. Maybe if I open the new tab,[00:30:00]
looks like it hallucinated a different. URL. So this is actually a great example of it going off the rails and where it might be a little bit of an overkill to use an AI agent to debug. I'm just going to go ahead and stop the initial I'm just going to end the session here for the agent.
And then I'm going to open, just going to close the tab and then I'm going to open our AI chat. So as Ben was mentioning earlier, like when is the best time to use the agent versus, what problems are best to like. Not use the agent. And I'd say this is a perfect example where it's just one link, or if you're just trying to tweak the color or just trying to tweak something and get the not last.
Last mile last 10%. That's when I switch off into using AI, the AI chat, then start asking questions on how I can debug or fix some particular part of [00:31:00] the the website or the app that I'm working on. So I'm just going to go ahead and say currently the Calendly link to book meetings. is incorrect.
Where and how can I change it?
And so this chat is not an agent. It's more like chat GPT, except it has full context into your project. So it's ingesting all the code in the project, and it's going to go ahead and look through all the code. Which context. So let me just actually go back and check. I'm going to check some of these files to make sure it's looking through everything.
Look through these files
and tell me where to make those changes
to go.[00:32:00]
So it's telling me, open the confirmation HTML file. So if I, it's navigate to templates directory. So if I open that, go to confirmation. It's telling me to change the age ref link right here to the new link. So right now it's this, which is incorrect. It's sending us to that error page. So the AI is going to tell me exactly where to put it in.
And so now I'm going to add the correct link and I'm going to rerun the project. Go back to it and then refresh it and then now check it out. Sweet. So now we're at the proper book meeting link. So that sort of like answers the question of knowing if you're building out a full feature or like something that requires multiple steps.
That's where an agent really helps out. But if it's something a little bit more granular, then you switch over to the AI chat and start to work through and ask questions about where [00:33:00] to make those like little changes and tweaks to get something to a hundred percent.
[00:33:04] Ben: Yeah. It seems like the counterintuitive is like the harder bits it can do easier than it can the simpler bits.
Like to change that link seems like such a simple thing that it should be able to do. And I assume you're, all of this testing and release is highlighting all of these things that you're like trying to figure out how to get correct as well, right?
[00:33:25] Horacio: Yeah. Yeah. I think it'll pro, it would probably have found the error definitely if I kept chatting with it.
But just for brevity I switched over to the AI chat as like a good example of when to switch. But yeah it's really weird, but it's like that literal needle in a haystack problem where context of all the text of your project and. All the instructions and all the things that's tested starts to get really big, where something's super small, like something so that seems simple from the user experience is actually really hard for the AI, the LLM to go find and like change.
But, as the models get [00:34:00] improved, as context size get bigger. And the models, just the overall performance increases, then we'll definitely have any level of changes available as simple as writing in what's happening and then having the AI go and change them for you. Sweet. So this is our very simple proof of concept.
The last thing that I'm going to do is actually deploy this as a live web page so that we can get our users to just go ahead and start using it. Reserve VM is often recommended if you're building out like a production application that you want up, 24, seven, I usually default to auto scale.
If you're using, if you're building an API or a simple flask app, and in this case it did use flask. You can see in here in the code. So I'm just going to use auto scale, which is a pay as you go model. So it's based on the uptime who's using your product. So based on the amount of traffic, that's how much you end up paying.
And then each account on replit on any of the paid [00:35:00] accounts, you get 10 of credits per month that gets refreshed. And it's very hard to overcome that limit unless you go mega viral or you have a super, super popular app. So I'm just going to go with the default settings and I'm just going to call this Ben's bites.
And replit landing. So it's going to be called Ben's bytes and replit landing dot replit dot app. This is just a placeholder for now. Once I deploy this, I'll be able to come back. And if I wanted to add a custom domain, I can do that with a DNS records and everything. So if I have a custom domain or custom.
com that I want to set up later, I can always come back and add that in later too. So here we go. And in just a couple of minutes. And just those two or three clicks I'll have a live landing page for people to start testing. So
[00:35:57] Ben: yeah, I did this with one of the things [00:36:00] I built and I deployed it on like a streamlit app and had the whole thing and I did the automated VM stuff. It did take a little while to do this bit, but I just, I guess I didn't, I just went with the recommended because I didn't know what was the best way to deploy it.
And it was pulling in loads of live data and stuff from the stock market. So I don't know what was best there, but it was cool to see that it just did the deployment stuff for me. Cause I think This is part of the problem that I've had with working with code. It's what do I do for each bit?
Like how do you like setting up an environment obviously is solved with replit already and I've all of those pieces that People not familiar with code probably don't know. They're thinking well, how do I now see this live? Like where do I do that? Just having all in one place seems really simple.
[00:36:48] Horacio: Exactly. Yeah. I'm totally with you, especially on the deployment side. I spent hours, like when I was learning to code, learning how to do Google cloud, AWS, and like still spend literally two [00:37:00] days. And not get like just a simple URL like we have here. And this is live and hosted and it'll stay up.
So if you go and visit this page now it's there, but yeah, it's been amazing is again, if I, even if I wasn't here at replica, this just for deployments alone, it would absolutely be a product that I would use. Not only for hosting like front end tests like this, like a little micro app that I want to test, but also, like I mentioned, and I don't think we'll have time to go over.
But all of the APIs that I've set up to like transfer information between our rev ops tools right now, like internally, they're all hosted on replica APIs. But even if I wasn't here, I would probably be setting up like all of that glue and all of those APIs and web hooks all on replica, because it just takes a couple of clicks to set it up.
[00:37:44] Ben: So when you're saying that, is that like looking at that clay spreadsheet and if you have Enrichments happening over time. So you're saying that every new thing that happens, put in this thing and enrich it this way. Is that something you're [00:38:00] turning into an API and then using like for.
[00:38:05] Horacio: Yeah. So I don't know if we'll have, we won't have time for this part, but the next piece that I wanted to add to that inbound form was that it's, as soon as it's submitted, we would call the API that this guide will walk you through how to set it up on your own, but we could essentially call that same clay table.
And have it returned the LinkedIn data since we're already paying for clay credits, on a monthly basis, I basically have a lot of our inbound processes, hang some clay table, get the data that we need from all their data providers, and then return it back to that to that inbound flow.
Yeah, and that also helps us avoid, some people will say that seems super expensive or tedious. Like why don't you just set it up? And it's we're already paying for the clay credits. And then I don't have to go and sign up for 75 other data providers, like Prospero or find email or all of those APIs clay comes out of the box with all of them and doesn't.
So I can basically [00:39:00] waterfall all the data providers to make sure I get the LinkedIn data for like the email submission that comes in. Yeah. It makes sense.
Yeah. If anyone's interested, this guide is, so how to set up your own API, where basically if you send it an email address, it'll go through all of Clay's data providers and return the LinkedIn data. You can come back to redbull. com slash guides. And if you just search for LinkedIn, if it doesn't come up at the top, you'll be able to find it and set it up for you and your team.
[00:39:31] Ben: Awesome. It, Alexander said, if my replica instance suddenly goes viral, can I set a limit on how much it scales?
[00:39:41] Horacio: Yes. Yes, absolutely. You can cap it in your usage settings so you can avoid any cloud nightmares.
[00:39:52] Ben: Awesome. Cool. So if anyone else has questions, now is the time to raise your hand and we'll [00:40:00] get you on, talk about it.
But Horacio, you mentioned earlier something around sort of people in your position using like the no code using code for their jobs. Yeah, I was wondering what your thoughts are on that. The whole like way of the world going now, like what everything seems to be on the cusp of changing, but I don't know if it's because we're all on Twitter doing this stuff and we're all looking at it too closely.
What are your thoughts on it?
[00:40:30] Horacio: So I think a perfect example, I think there's two paths. There's definitely going to be the story that you saw with Klarna come out last week, where they basically ripped out Salesforce and Workday because they said, we hate these tools. We're just going to rip them out and build out our own homegrown.
But I actually think. Because AI code is going to make it ridiculously easy. Yes. Hated software is about to get wiped out, but there's also like a big opportunity for [00:41:00] SAS tools that have historically had less technical users that are now about to see like an explosion. Of usage and growth through their APIs.
So I know, APIs and web hooks might sound scary for non technical people right now, but as soon as tools like replit agent are able to read documentation. So if you're trying to connect HubSpot to Apollo or Apollo to Slack, it's going to be as simple as send a link to those docs, send a link to the Apollo docs, send a link to the.
HubSpot, and then write out your idea. It'll just create that integration for you. And then if you get stuck, or you want to visualize, where is the error going wrong, just prompt the AI, hey, visualize it in like this form. And it'll go ahead and visualize it. So I actually think, like for example, the reason I pull up this guide is because I made like a little sales assistant and I'll post a video later on like my Twitter and LinkedIn on how it works, but I've made this sales assistant that's basically just a bunch of APIs and [00:42:00] web hooks of that basically the AI, the, this little bot can go, it pings Apollo to grab leads.
It then pings Clay to enrich those leads, and then it queues them up into a smart lead outbound campaign. So on all those tools, I'm still using all those SaaS tools. Because they actually do have a differentiated use case that I can't really replicate with AI code. On Smartleet's side, I can't really replicate an email tool that warms up my IP addresses and avoids spam inboxes, or the spam filters.
On the Apollo side, they have a moat in the data they've collected. On the Clay side, they have a mode with all the partnerships that they've had with all the APIs that they have out of the box in their tool. And so I think with the more like with all of, coders like us that are in more sales and RevOps positions.
As we're able to have more technical superpowers, these tools might get a lot more usage because there are some technical aspects [00:43:00] that just can't be duplicated. And so as a and the way to glue them together into your own custom apps is always through the API. So I think there's going to be like an explosion of usage based products or revenue for some SaaS tools that were, that are, that have been historically serving, less technical especially in sales and marketing.
So I don't think it's all doom and gloom for all SaaS is going to be wiped out.
[00:43:22] Ben: No, I don't either. Yeah, I think it's interesting to see that the data that tools have already collected and when people talk about data as the moat, it's this. Scenario that you're talking about with Apollo having all of that data, like how else you're going to get that accurate data But what are the tools you're gonna go to otherwise?
Yeah, it's interesting.
[00:43:45] Horacio: Yeah
[00:43:47] Ben: But then it's still there's still a jump from still a jump to the technical side like needing to adopt Like in order to get to this [00:44:00] like you're a better employee because you do things this way There's still a jump to You've got to be comfortable enough, even if it's playing in English or in Spanish to prompt AI to write code and stuff.
And there's still a, there's still a gap there, right? So how do you see that? Yeah. Is everyone going to start to understand pieces of code or work with code in a way that they haven't before, do you think?
[00:44:28] Horacio: I definitely think the basics are there. I actually went through and I gave two operations assistants that I work with.
One is based in the Philippines and one is based in Columbia, both completely non technical and I just had them go through the first 30 days of replits, a hundred days of code. And that was enough fundamentals where they now can go and check out some of our technical content and actually understand some of the Python basics.
You'll have to know like the [00:45:00] basics of functions and like how I mentioned in the beginning APIs, webhooks, oh my if you just understand webhooks, APIs. Python functions, basically the first 30 days of 100 days of code either replit or like other general 100 days of code courses, the amount that you're able to accomplish it just like increases like a lot, especially for just like general rev ops and sales tools if those are the types of sass that you're interacting with, or the workflows that you're trying to build out.
So I do think the basics will be necessary but we'll see.
[00:45:32] Ben: Oh, interesting.
[00:45:33] Horacio: How good are you at it,
[00:45:33] Ben: yeah. Oh yeah, Sean asked, Are there any YouTube channels you recommend for Python, API, and Webhooks? And you just said this, so
[00:45:41] Horacio: yeah.
[00:45:41] Ben: Yeah. Answered that. Yeah.
[00:45:43] Horacio: Yeah. 100 days of code. And then also if you search on YouTube, And search for a hundred days of code, you can find alternatives.
And yeah, I would say the number one recommendation is search for ideas that are somewhat tangential and related to your idea, and then just try to rebuild them and follow them along on [00:46:00] YouTube and then chat with the AI chat to have it guide you through what specific what specific pieces mean.
Ben, you had a really good post a couple of days ago about how to import a GitHub repo. And have the AI basically walk you through the code. That's I would say that's an excellent way to learn how to think the basics that you need.
[00:46:21] Ben: Yeah. Cause I've really struggled to learn to code in the past.
Not that I can now, but I just feel like I haven't got the time now. And we had Sahil from Gumroad on last week who did a learn to code with AI. There's a really different, it was a really different workshop actually. And he started off with. very basic you've got to understand maths first, and then he talked about addition and went through this real basic we all were sitting there thinking, why is he teaching us 1 plus 1 equals 2?
But then there was some, something clicked in how he was teaching how the computer works and how actually, this is what the computer is doing on the back end. Then there's a bit more on that, and that workshop is up, and [00:47:00] I've put a cheat sheet there. So I put the transcript through Chachaputi01, and then made a cheat sheet from that, and that was like, there's something in that's clicked a bit more for me to see oh, this is how that works.
And then he was showing how to use AI encoding to generate some stuff. But it is more about, because I tried this, learn to code, It must be a year or two ago now, and I think I got to day 10 or something, and I was like, Oh, I still don't think I'm like learning the thing. I'm just like going through the exercises, but that's giving up on day 10.
I think having an always on, always patient AI tutor next to you is a much different learning experience. And I think, like you said, I think I need to learn by making stuff that I want to make. So it needs to be, Of all of those basic things I need to cover, which is like an API, Python, webhooks, I should really use [00:48:00] AI to figure out what are really small use cases of these things that I could build, or learn to build.
Then also explain every single line in it. What does that thing do? What does this thing do? What if I want to add this other thing and then just like almost putting together and taking apart projects based off of those things that you're trying to learn.
[00:48:20] Horacio: Yeah, that is a killer. Cause as you, cause it's an idea you'll be motivated to keep wanting to build and that's the ultimate feedback loop.
Once you get like a like a successful run in the project or the webpage shows up, how you intended it to, it's like the ultimate dopamine hit.
[00:48:35] Ben: Yeah, exactly. Alexander's got a questions.
[00:48:38] Guest: Yeah. First of all, thank you for fantastic presentation. Lots of great insights. I have a question. Currently I use popular NOCO tools such as the Make and N eight N. And what do you think currently replicate ai? Is it capable of, rebuilding simple workflows from, let's say, Zaper.
[00:49:00] Let's say when I have a new subscriber in MailChimp it uses MailChimp API and will perform some actions with some web hoops let's say. So what do you think Is it possible to replicate such simple automation? So listen for some events and then automate them. Or it's currently a difficult task for replete AI.
[00:49:26] Horacio: Yeah, right now the early access version will struggle with authenticating with those services. So for example, on the first one on MailChimp, you'll have to sign into your mail service. And right now the AI agent won't know how to set that up or properly prompt you for it. If it involves like some extra steps other than just an API key, like I mentioned the models, this is the worst that it's going to be.
So it's not hard to imagine a world where one day you could just upload a screenshot of your workflow that you have the LLM recognize all the apps [00:50:00] in that workflow, what each one does, and then within a few minutes you'll have it. And then, if we add some authentication things, which I can't say too much about, but if we add some abilities to make it easy for you to authenticate and all those accounts, the AI will just be able to build out the same thing.
[00:50:18] Ben: Thank you. Yeah, this is, that's something like I was thinking about too, which is, We have a bunch of automations running and we've been looking at how many of those can we just get into pure code rather than relying on any of these platforms. And actually when I was building one of those tools that I mentioned earlier, the deployed onto Streamlit, it was like the financial, like find stocks.
And when they hit a certain thing, tell me when I need to buy or sell or something. And they asked me about Gmail, like what I wanted to use for that. And it was like asking me for my, what's my password. To log into gmail. I was thinking that I don't know that's the right this isn't like the proper authentication [00:51:00] thing in replica agent, right?
But obviously it must be coming but I know you can't say too much.
[00:51:08] Horacio: Cool Yeah, the last thing i'll say if you i'll just say if anyone wants to reach out Or book some time again to just get trial teams. Feel free to reach out at her ratio at replica. com anytime
[00:51:20] Ben: Awesome. We really appreciate your time. Thanks so much for showing us all this and I'll have the recording up as soon as possible.
Cheers for ACM.
[00:51:29] Horacio: Cheers everyone. Have a great day.
[00:51:31] Ben: Cheers everyone. Bye.