How to build SaaS software
Gavin and Dennis here!
And today, we’re gonna cover building dashboards and building software in general. And if you’ve never built software before, this is a great opportunity to learn from a lot of people. Waste a lot of money trying to build software as entrepreneurs, but they don’t understand things like this three-tier architecture I’m gonna show you.
And I’m gonna show through examples of stuff that we have built for huge companies like Nike and Billy Jean. And Gavin will ask questions along the way. Yeah, Dennis is the expert here. I’m the student. So I’m excited to, learn and. So I’ve built some software for these huge companies and starting from Yahoo 20 some years ago.
And you’re gonna see there’s the same framework. Now, this is independent of whether you’re using Pearl or PHP, Python, angular, JS, go, or whatever your favorite flavor is. This is about building things that actually collect data and actually do things. So Billy Jean came too. A few years ago. And he said, Billy chain, he’s huge on video.
He’s got billions of views. And he said, I’m making all these fun videos and all this. And I’m spending a few hundred thousand dollars a month on ads, but I don’t really know what’s profitable. I know in general I’m profitable, but one day I could be down a couple hundred thousand dollars, or maybe my turn rates are higher, or this new campaign I launch is working or not working.
I need a dashboard that can look at everything. So in the morning, I get a text message and it’s okay, this is how much revenue you have. This is what the lifetime value is. This is what your profitability is. This is how many refunds you have. This is your top campaign, just a few simple things. And he thought that this was a matter of just what most people think. Let’s just pull all this data from Stripe and Kajabi and click funnels and Google ads and Facebook ads. And just put it into a dashboard, should be easy. Something might just take a day or two. Actually, that’s not the case because.
For some reason, I think if I open this up, you actually see that these are all animated. I wonder how I do that? Go to slideshow mode, maybe that’ll work. They’re all like gifts. Yeah. These are all animated. If I can get ’em to work. Whatever. So like anyone else that’s an info product seller or an agency or yeah, selling stuff.
You’ve got lots of systems. So it’s systems for communicating, for buying ads, for CRM stuff, for processing payments. There’s also organic and paid social. So he’s across all these channels. And you guys remember he did a Facebook ads course, a YouTube program start your agency program. But regardless we wanna put it into three layers and this kind of wedding cake 3 0 2 architecture is something that you’re gonna see often.
So this first layer is this data. So let’s get all the data he has in one place. All these different systems, a lot of ’em have APIs. For some of them, you can use API. Some of ’em, you can scrape some of them. You have to build your own integrations to get that data all in one place. And then that middle logic layer is where you’re doing calculations.
So this is metadata formulas, calculating profit calculate, just business, logic, and rules. That is from the raw data all the way up. And then the UI layer is where you’re displaying it. That’s the application where people are clicking on things. Maybe they’re buying things. We have internal people, they’re doing reporting.
We’re refunding people and customer service. People are using the application to integrate with the logic layer, which actually does stuff. The application layer all the way down to the data layer. So anything that goes in and out where a human. talk to the underlying database, and goes through the UI cuz people don’t want to program.
They want to click on a button inside an app on a webpage, that kind of thing. So you have these three different layers and they’re separated. So let’s say we wanted to build a new UI, but we don’t have to rebuild the actual application itself. This is where all the processing occurs and we don’t have to rebuild the underlying databases and all the sources.
Likewise, if we have this three-tier architecture, if we wanted to integrate TikTok ads, we could, that would just be another data source that plugs in and it fits in the overall model. We’d have to adjust our formulas, let’s say, calculating total spending it’d be Facebook plus Google plus email plus whatever, plus TikTok.
So we’d have to have that other source. So other formulas and whatnot can adjust in this logic. independent of how it looks in the UI, like where all the buttons are and the landing page is independent of what happens on the bottom so this is an extensible three-tier architecture, pretty standard, right?
Yeah. Okay. So we put all this data in here that Billy Jean had, and whenever you start building things if you ever built something like this, you’re going to always come into a situation where they say, oh yeah, it’s really easy. I have all the access everything’s already working. It never. It’s always a disaster.
There’s always stuff that’s wrong. The logins are wrong. They keep changing, which breaks our systems. Cause then we’re using a certain login and then the password isn’t working. So it doesn’t bring in the data. So then we’re miscounting because the data are not coming through or there are other systems they didn’t realize they needed to use.
So this whole thing about getting the data in, into one place and the data layer is actually more work than you’d imagine it’s actually the most amount of work, surprisingly least amount of value. The most amount of work is just ugly. Getting all the data in place. A middle layer is the application logic layer.
That’s when we’re calculating profit, that’s when we’re associating money, that’s being spent on a new campaign Hey, start your agency, whatever it is, whatever the name of the new campaign is, right? Oh, we’ll submit, press releases for you, whatever it is, associating the profit with the cost and then the customers that are associated with that.
And then rolling it up, which means aggregating it to the total. So in the UI, you can display how you wanna look at your business. Yeah. By geography, by who’s the most. Profitable sales agent by how many leads are coming in by where the phone calls are. You can put it onto a map, you can do pie charts, whatever kinds of ways of looking at the data.
Yeah. Also oh, our thing died. that’s okay. Hang on. No worries. I can pause it quick, too bun. Okay. Yeah. But here doesn’t even exist. All right. So this architecture. you can see it works for any kind of software you wanna build. Yeah. And a lot of people think you need a high level or click funnels or any software you look at is going to be using this same kind of architecture in some way, no matter what kind of code they have, they just have different data that’s coming in the data layer, different things that’s going on, which is the application layer.
And then different ways of looking at it. And white label software is really. The data layer, application layer, and then a slightly different UI with just a different logo on a different website are all the same. That’s like how you resell the same software, and make lots and lots of money. Yeah. So the software that we build, for example, let’s say we rebuild it for Tony of long line marketing.
For his agency. He can sell it to all the other agencies. Yep. The stuff we built for a clinic works for all 30 locations and 60 and 90 locations. Anyone else who has a health clinic? Med spa would, could use the same. Yeah. It uses blood work, essentially. Those blood work reports. And correct me if I’m wrong, but all software is just code, right?
Like at its base all software. Yeah. That’s a really smart observation. It’s rules for computers. Yeah. It’s telling a computer when this one thing comes in, process it a certain way. Yeah. Charge somebody for it. Yeah. Or credit their account five more whoopsies inside the game or whatever it is. Yeah.
And so it’s just an instruction set. Rules and code logic are software. Yeah. But the same is true for humans. If you have humans that are in a call center and they’re answering phones. Yeah. You’re giving them rules, SOPs procedures on how they need to. Exactly. If you’re Uber and you’ve got all these people that are driving their cars all around, you’re telling them what to do.
That’s the process. So process or SOPs. For humans. Yeah. It’s the same thing as code for computers. Exactly. Because they rule. Yeah. It’s the same thing. So if you can develop rules on exactly what has to happen, you’re a programmer. Yeah. That’s always why you don’t have the so you would technically be a programmer that, yeah.
Oh, interesting. I call that being an architect. Yeah. I always figured you’d have to have some official, background on it. Cause, cause that’s the interesting thing about, being in the agency space, as the hardest part of it, isn’t actual. it’s service delivery, but the delivery in it is scaling humans.
That’s what makes it hard. , cause if you know what works, it’s okay, if we can just do this, but that’s the cool part about the software is it’s you’re essentially just scaling the SOPs almost flawlessly. Of course, nothing’s a hundred percent efficient. Mm-hmm But. , way more than, Hey, if all the SOP and then no one follows it, or you have to force them, then you have to enforce positive action and, make, things happen for negative actions.
And it’s yeah. Okay. That’s cool. So it’s just software that, code that will tell somebody its rules for what happens when data comes in. Yeah. Add it up in this way. Put it over here. Send an email to Billy. Or send an alert, like we’re losing money, turn this campaign off. Yeah. It’s just rules.
It’s logic. Yeah. And when we think about SOPs for humans, what makes a great SOP? One that’s specific enough that they can follow directions. So they’re not confused. And it accounts for the ways they may try to mess things up. Yeah, what happens if people don’t show up? What happens if they, overcharge somebody?
What happens if they run off with the money? What, all the things that could go wrong? So a really good program. Who’s writing code using their favorite application, whatever Pearl PHP? Yeah. Whatever language is exactly the same as a good business logic business strategy person. Because in both cases we’re thinking about what are all the things that could go wrong and let’s design rules.
It’s like designing a video game so that people can’t cheat you. Yeah. So question on that too. And we don’t have to spend a lot of time on this. Cause I know it’s not super important for the overall strategy, but just on the technical aspect, you have different stuff, you hear Python, CS, HTML, you talked about a few others.
Yeah. Lots of languages. Yeah. So when you’re looking to accomplish something, how do you choose? Is it almost like what’s my favorite language and let me work, let me make it work for this, or is it, Hey, here’s the problem? Which language should we choose from to solve this problem? If that makes sense. It works either.
So you want to dig up your garden, you can use a shovel, you can use a backhoe, you can use a fork and you could use all. So there’s no one tool that’s necessarily better because let’s say we were playing golf tiger woods with a rusty used $5 club from the salvation army that could beat you with a brand new set of ping titles, this whatever club.
Yeah. Or, DaVinci with Crayola crayons could beat me. Yeah. With the fanciest set of paint, brushes, and whatnot. Yeah. So it’s not the tool. It’s the user that being said, whoever the business owner, the one who’s paying for it, may have a preference. If they really want to be built in PHP, then we’ll build it in PHP.
Yeah. And there are people that are good at PHP. Yeah. But for some people they really want to use, go and go Lang is their favorite thing to do because that’s how they’ve been doing it. And if they’re your engineer and you’re really loyal to them and they’re your employee, then they can build it in go.
Yeah. If they want someone like me, I’m a little older. I might prefer. Doing it in Pearl, cuz I’ve done Pearl for a long time. Yeah. And with Pearl, the joke is you can do everything, yeah. Which is true. You can build anything. So it’s not the tool it’s whoever the user is. And do they understand the logic?
Understanding business logic is the most important thing. And as you’ll see here, as we go through this. Understanding exactly what has to happen from the user’s standpoint. Yeah. And why the user needs to click on this or do that understanding, like if we’re doing something for a digital marketing agency and how they’re onboarding clients and the work then goes to the VAs or designers or WordPress people, or article writers, understanding it from a business standpoint.
it creates the business logic, which then drives the rules for the computers and drives the rules for the users. Yeah. So SAP makes sense. So PS and code, are the same thing. Yeah. You have to have a vision of how things actually work and then this is all just the form of delivering on. Yeah. Yeah. So great programmers understand that.
Okay. So there’s a login and we won’t reinvent the wheel on what happens in a login and reset your password. Now we’ve reskinned this in many different. So this is similar to Nike dot Content factory.com, Billy Jean Ashley furniture. Yeah. And then we’ll put their face, as you can see on here. Yeah.
Make it look nice, their logos. And it’s ridiculous. How do op clients care about those kinds of things? But you just do it anyway, even though it’s not even 1% of what yeah. It doesn’t actually matter when you get to the dashboard. In this case, on our home screen, we’re showing total revenue. And how many members we have and of course, those go together, net of cancellations, net of refunds that, oh, whatever’s the most important metric.
that people want to be able to see. And in the UI we can choose whatever we want. They can say, instead of making it blue, let’s make it green. Yeah. Let’s make it bar charts. Let’s add this third thing here saying, how many agents we have. Let’s what the most popular courses are. Like.
There are so many different ways that you can recombine the data that you have to be able to display it in a certain way. Yeah. Like the golden state warriors, they wanted to see how many tickets they were selling for their top games. How many season ticket holders do they have, how many corporate members do they have, how much merch do they have, and what’s the parking revenue?
So you guys built software for them like to show that, that’s really cool. Yeah. We built dashboards for Nike and Red Bull and the Warriors and Ashley and Quiznos. And so Lego all these guys. Why is software usually so expensive? Cause we were talking earlier and talking about, you can build some, like really.
Good software for not a whole lot of money, if you’re going to pay somebody or going you always hear, like you have to give the developer equity or it costs like, like $150,000 at least to build something decent and yeah, why is that? Let’s apply. ACAMS razor. Why do you think that is?
I’m thinking it’s because there are people who know something. That the person who’s wanting to pay them knows they know what they want, but they know nothing about how to get there, essentially. So there’s a big knowledge deficit and there’s also a skill deficit. Clearly. There’s not a lot of people who know that so they can charge a lot of money, but B also a lot of times unethically even say, oh, this is gonna be all so complicated, whatever.
And the okay, I guess that’s right. I think it’s a mix of both, but. That’s just a pure guess. Yeah, that’s right. One is because the underlying customer doesn’t understand what they’re. So you can overcharge ’em yeah. Just like a mechanic. Oh yeah. Let’s say oh, you’re gonna have to replace a transmission and you’re low on blinker fluid.
Yeah. Yeah. So I’m not saying all engineers are all technical people of course are scammers. Like I like to think all SEO people are scammers. Yeah. Cuz they’re overcharging relative to what? To the delivery and the results of that. Yeah. So the second thing, the biggest thing is that there’s such a gap between the people of the technical skills to do the building.
And then whoever has an idea of what they want. So when we are meeting with Sam, He thought I wanted to build this whole AI-driven. Like people love to use these buzzwords, like AI machine learning. Yeah. So it was the one. Yeah. And I looked at his stuff and I said based on what you’re trying to build, you need just simple bullying, regular expressions, right?
Yeah. The simple logic of this, then that based on this formula, you don’t need AI. You don’t need giant databases. This is not Cambridge Analytics. This is not talks, newsfeeds or algorithms, trying to figure out what to show like facial recognition. Like none of that kind of stuff. Very simple. Here’s the blood work.
If your cholesterol’s over one 30, then here’s something you need to do. Yeah, that’s simple. Yeah. If this formula is true, then this is the recommendation. Yeah. If this more complex formula that’s based on combining your cholesterol and your age and your testosterone and your blood sugar, if this and this and this minus, that is greater than 25 than recommend.
Yeah. So the formulas can get more complicated, but the actual logic that’s being implemented and the majority of software going forward, which is a whole nother discussion, but yeah, the software that’s being built today, there’s actually less on infrastructure, on databases, on computation, on all the technical kinds of things that you don’t really need that.
And it’s all increasingly in your head and what the rules are and understanding that at the architect level, that’s why we can build software. Reasonably quickly. It makes sense. It reminds me of something like that, it reminds me of a bit of Google Sheets and it is, yeah.
Almost if you get, get the data in, clearly, Google Sheets doesn’t automatically grab it, which is something that’s unique to it. But yeah. Then you could have, add the formulas if this is great and that says this word here, or, you recommend this phrase, which the phrase would be needs more vitamin C right?
And recommended sections. Yeah. You could do macros in Excel. There are all kinds of different ways to make a sheet. interactive. And to automatically let’s say every day, go pull all this data and Google. Yeah. So that’s where you have Zers. And these other tools like data studio does allow you to do that. So you can almost make Google Sheets or Microsoft access an application.
Yeah. I would say the one thing that people miss on this is.