00:00:04.160 --> 00:00:05.630 But we will.
00:00:05.680 --> 00:00:09.206 We will then go to talking about some pretty interesting
00:00:09.206 --> 00:00:11.310 individual areas of the business.
00:00:12.100 --> 00:00:15.537 So I just wanna make sure that everyone who's lined up for that
00:00:15.537 --> 00:00:16.450 is sort of ready.
00:00:17.260 --> 00:00:18.180 So I'm just.
00:00:18.320 --> 00:00:21.630 Gonna let you know we're gonna be going over Phoenix.
00:00:22.170 --> 00:00:26.647 And if you guys are ready for it blegg, we'll probably talk about
00:00:26.647 --> 00:00:30.921 that first as we sort of go into specific areas and all right,
00:00:29.070 --> 00:00:30.050 Well, I'm ready alright.
00:00:30.921 --> 00:00:31.600 all right.
00:00:32.270 --> 00:00:36.477 And then connect common model for JLR and I just wanna make
00:00:36.477 --> 00:00:37.880 sure everybody's OK.
00:00:37.890 --> 00:00:38.620 I see you're on here.
00:00:38.630 --> 00:00:38.970 Tayler.
00:00:38.980 --> 00:00:43.939 Good job, Eric and Daniel on some of the architecture and
00:00:43.939 --> 00:00:47.360 discovery as well as the dev lead role.
00:00:47.690 --> 00:00:48.550 So and then.
00:00:49.870 --> 00:00:51.360 Hopefully this is getting you guys.
00:00:51.370 --> 00:00:54.539 If you're not familiar with these areas, hopefully it's
00:00:54.539 --> 00:00:57.651 getting you interested in listening to these different
00:00:57.651 --> 00:01:01.159 updates, and then Phil and then Ron and that order going over
00:01:01.159 --> 00:01:04.724 some of the new pricing and then I'll sort of direct you guys,
00:01:04.724 --> 00:01:08.120 but also going into the payments and the partners etcetera.
00:01:08.130 --> 00:01:08.700 So does.
00:01:08.710 --> 00:01:10.580 If that sounds good to you guys, that's the plan.
00:01:11.230 --> 00:01:12.160 I will start out.
00:01:12.470 --> 00:01:14.120 You're welcome to leave your cameras on.
00:01:14.250 --> 00:01:15.970 Don't feel like you need to have your camera on.
00:01:15.980 --> 00:01:17.460 You can kind of listen and relax.
00:01:18.010 --> 00:01:22.538 I will be showing my screen while I'm presenting and we'll
00:01:22.538 --> 00:01:24.380 just dive right in here.
00:01:25.130 --> 00:01:28.740 So the first thing that I wanted to talk with you about is just I
00:01:28.740 --> 00:01:32.023 I wanted just keep this part pretty short, but just kind of
00:01:32.023 --> 00:01:33.500 talk about why are we here?
00:01:34.000 --> 00:01:35.380 Like what in the heck are we doing?
00:01:35.870 --> 00:01:39.677 And I thought it might be a kind of a fun adventure to go on to
00:01:39.677 --> 00:01:43.544 just kind of explain to you what it was like in the beginning of
00:01:43.544 --> 00:01:44.020 clarity.
00:01:45.300 --> 00:01:47.050 So let me see if you can.
00:01:47.060 --> 00:01:48.160 Can you guys all see my screen?
00:01:49.650 --> 00:01:50.480 The mural board.
00:01:50.260 --> 00:01:50.460 Yep.
00:01:51.070 --> 00:01:51.520 OK, cool.
00:01:52.980 --> 00:01:54.370 So this is kind of funny.
00:01:54.680 --> 00:01:59.463 This was our first site and you can actually go to the Wayback
00:01:59.463 --> 00:02:03.943 machine and you can see the site, but back when we started
00:02:03.943 --> 00:02:04.930 in 2006 2007.
00:02:05.780 --> 00:02:09.503 Umm, you know, I used to tell people that it was me and Chad
00:02:09.503 --> 00:02:09.870 Perry.
00:02:09.880 --> 00:02:13.074 We both went to UT Austin for aerospace engineering and we met
00:02:13.074 --> 00:02:15.710 there and we fell in love and the rest was history.
00:02:15.810 --> 00:02:18.960 Full tonic, of course, but we decided to start clarity
00:02:18.960 --> 00:02:22.225 together and we were just a couple of knuckleheads, just
00:02:22.225 --> 00:02:25.891 basically trying to figure out what a big problem in the market
00:02:25.891 --> 00:02:26.120 was.
00:02:27.300 --> 00:02:29.040 And we did some pretty complex things.
00:02:29.050 --> 00:02:32.418 Some pretty interesting projects, but for the first six
00:02:32.418 --> 00:02:36.207 years, 6 to 7 years of clarity's existence, we didn't have any
00:02:36.207 --> 00:02:40.056 products and I'm going to sort of like, tie this into why we're
00:02:40.056 --> 00:02:41.440 doing what we're doing.
00:02:42.610 --> 00:02:46.558 Umm, what we noticed was a lot of pain, so we were doing this,
00:02:46.558 --> 00:02:50.193 you know, management and IT consulting is kind of what we
00:02:50.193 --> 00:02:50.820 called it.
00:02:50.830 --> 00:02:54.565 We we developed this and matured it so it was more specialized,
00:02:54.565 --> 00:02:58.301 but ultimately we were doing a lot that was just trying to find
00:02:58.301 --> 00:03:01.220 where the pain was and we were pretty successful.
00:03:01.230 --> 00:03:05.809 We grew the business typically at about 50%, sometimes more top
00:03:05.809 --> 00:03:07.240 line revenue growth.
00:03:07.250 --> 00:03:10.070 That's pretty easy when you're small to grow that fast.
00:03:11.010 --> 00:03:15.496 Umm, we actually met several of our several of our clients that
00:03:15.496 --> 00:03:18.160 are still with us during that period.
00:03:19.030 --> 00:03:21.989 Ron was kind of a unique situation and Ron feel free to
00:03:21.989 --> 00:03:23.680 speak up if you want about this.
00:03:23.690 --> 00:03:28.560 But on in several clarity team members, we all met where Ron
00:03:28.560 --> 00:03:33.270 was a client and I guess this is about 13 or 14 years ago.
00:03:33.280 --> 00:03:35.310 So we were still just doing consulting work.
00:03:36.120 --> 00:03:36.630 Umm.
00:03:36.920 --> 00:03:39.823 And we were starting to realize there was a big need for
00:03:39.823 --> 00:03:42.829 ecommerce and I would love for you to share, Ron, what the
00:03:42.829 --> 00:03:45.885 issue was that you guys were dealing with maybe some of the
00:03:45.885 --> 00:03:48.280 background too of like how you engage clarity.
00:03:50.060 --> 00:03:53.453 Yeah, I mean, fortunately back then, Chris knew a little bit
00:03:53.453 --> 00:03:54.010 about SEO.
00:03:54.020 --> 00:03:58.286 So we were looking for someone at the time for DNN services and
00:03:58.286 --> 00:04:02.219 we were switching our CMS at pervasive to DNN and we found
00:04:02.219 --> 00:04:06.218 them and they came over and I, Chris, Chad and Jeff I think
00:04:06.218 --> 00:04:10.218 came over right back then in the day and because we were in
00:04:08.960 --> 00:04:10.270 Yep, that's right. Yep.
00:04:10.218 --> 00:04:14.417 Austin, they drove over to the office and and so I got to meet
00:04:14.417 --> 00:04:18.483 him in person and kind of met the team and we had a bunch of
00:04:18.483 --> 00:04:20.950 DNN needs and 1st that's all it was.
00:04:20.960 --> 00:04:24.083 It was just we need somebody that can do DNN and as we met
00:04:24.083 --> 00:04:27.471 them and learned that they could do ecommerce and they could do
00:04:27.471 --> 00:04:30.541 integration, it was like, oh, we've got these other needs
00:04:30.541 --> 00:04:33.876 because I we just went out and we had purchased 2 licenses for
00:04:33.876 --> 00:04:37.316 znode for 30 grand a piece to do this new marketplace because we
00:04:37.316 --> 00:04:40.492 were in integration company building our own connectors and
00:04:40.492 --> 00:04:42.610 we wanted to put them on a marketplace.
00:04:42.620 --> 00:04:44.900 And so we're like, can you guys build that?
00:04:44.910 --> 00:04:45.740 And they're like, Yep.
00:04:45.790 --> 00:04:47.869 And then we're like, oh, I'm also trying to build a sales
00:04:47.869 --> 00:04:48.120 portal.
00:04:48.130 --> 00:04:48.710 Can you build that?
00:04:48.980 --> 00:04:49.370 Yep.
00:04:49.380 --> 00:04:50.440 And he put Craig on that.
00:04:50.320 --> 00:04:51.120 The answer to everything.
00:04:50.450 --> 00:04:53.244 I worked with Craig on right and it was just like we started
00:04:53.244 --> 00:04:55.810 building all these projects and they did our Salesforce
00:04:55.810 --> 00:04:58.788 integration and we just kind of became friends and Chris used to
00:04:58.788 --> 00:05:01.674 come over to the office and he and I'd states till 2:00 in the
00:05:01.674 --> 00:05:04.606 morning, working late together and it's kind of how we were our
00:05:04.606 --> 00:05:05.110 friendship.
00:05:05.610 --> 00:05:05.790 Yeah.
00:05:05.940 --> 00:05:09.629 And you know, part of the thing was, is that we were trying very
00:05:09.629 --> 00:05:12.240 frantically with clarity to get Zeno to work.
00:05:13.040 --> 00:05:15.250 And it was a POS and would not work.
00:05:15.360 --> 00:05:18.587 And so Chris kind of came back and said, well, we we can kind
00:05:18.587 --> 00:05:20.670 of use our technology, we can build it.
00:05:20.680 --> 00:05:23.457 And so we ended up building and I think we called it Galaxy,
00:05:23.457 --> 00:05:24.550 right, pervasive Galaxy.
00:05:24.170 --> 00:05:25.130 Yep, Yep.
00:05:25.040 --> 00:05:26.330 We built our marketplace.
00:05:26.340 --> 00:05:29.615 It was a great little marketplace and did very well
00:05:29.615 --> 00:05:32.576 and that was built on the clarity CEF platform
00:05:32.576 --> 00:05:36.418 theoretically, or at least the guts of what would ultimately
00:05:36.418 --> 00:05:37.930 become the CEF platform.
00:05:37.940 --> 00:05:38.670 Clear back.
00:05:38.840 --> 00:05:42.245 I mean almost 14, probably 13 years ago by at the time that
00:05:42.245 --> 00:05:43.040 was happening.
00:05:43.610 --> 00:05:46.745 So I mean, we were doing ecommerce together clear back
00:05:46.745 --> 00:05:50.279 then and we worked together for 2 1/2 years before I ended up
00:05:50.279 --> 00:05:51.990 joining the team 11 years ago.
00:05:53.220 --> 00:05:53.670 Yeah.
00:05:53.680 --> 00:05:55.350 And I mean it was.
00:05:55.000 --> 00:05:55.960 Point point of sale.
00:05:55.360 --> 00:05:56.230 So it was.
00:05:56.660 --> 00:05:57.190 Yeah.
00:05:57.200 --> 00:05:58.230 I mean, one of the things that I.
00:05:59.620 --> 00:06:03.120 Back in the day, right, one of the things that I thought was so
00:06:01.660 --> 00:06:01.940 Yep.
00:06:03.120 --> 00:06:06.730 interesting about that was there was this off the shelf ecommerce
00:06:06.730 --> 00:06:10.066 platform and whenever we were running this services company,
00:06:10.066 --> 00:06:13.402 we just assumed that there was a lot of value that came from
00:06:13.402 --> 00:06:15.590 these off the shelf ecommerce products.
00:06:16.560 --> 00:06:20.075 And I think there's a that is seem assumption with Sass
00:06:20.075 --> 00:06:22.460 offerings of ecommerce today as well.
00:06:23.860 --> 00:06:27.982 In a similar vein, I pass system integration platform as a
00:06:27.982 --> 00:06:29.240 service and so on.
00:06:29.670 --> 00:06:33.774 And what we discovered was as soon as our clients started
00:06:33.774 --> 00:06:38.020 using these software platforms, they would run into issues.
00:06:38.530 --> 00:06:43.240 And you know, it would take 80 plus percent of the effort to
00:06:43.240 --> 00:06:47.950 get the last five or 10% of customization done on a project.
00:06:49.200 --> 00:06:52.498 So most of the budget was just the last little bit of
00:06:52.498 --> 00:06:56.163 customization and in many cases clients were painted into a
00:06:56.163 --> 00:06:59.950 corner like what happened with pervasive when we were working
00:06:59.950 --> 00:07:00.500 with Ron.
00:07:01.560 --> 00:07:05.220 And one of the things that was so compelling about deciding to
00:07:05.220 --> 00:07:08.415 build our own ecommerce platform, which really started
00:07:08.415 --> 00:07:11.785 back here and you can kind of see here, we weren't really
00:07:11.785 --> 00:07:15.387 doing just ecommerce, we our number one thing on our site was
00:07:15.387 --> 00:07:18.060 talking about website design and development.
00:07:18.070 --> 00:07:22.466 It wasn't talking like ecommerce was like down the list here, so
00:07:22.466 --> 00:07:26.456 I guess my point is just to say that we discovered a major
00:07:26.456 --> 00:07:30.379 problem and then started building the ecommerce platform,
00:07:30.379 --> 00:07:32.070 not the other way around.
00:07:33.170 --> 00:07:37.527 And I just think that's helpful for everyone to understand that
00:07:37.527 --> 00:07:41.407 we, we have been continually focusing on delivering this
00:07:41.407 --> 00:07:45.832 product to solve a problem that we knew that we validated and we
00:07:45.832 --> 00:07:49.645 continue to validate every single day is a it's still a
00:07:49.645 --> 00:07:53.866 massive issue in the market, a lot of clients, especially the
00:07:53.866 --> 00:07:57.882 clients and our niche focus areas, they don't have a great
00:07:57.882 --> 00:07:59.040 solution to this.
00:07:59.240 --> 00:08:03.420 What basically we've figured out how to solve in the market.
00:08:03.810 --> 00:08:07.000 Now you might say, OK, well, tell me more.
00:08:07.010 --> 00:08:09.880 Like what exactly are the problems that we're solving?
00:08:10.770 --> 00:08:14.848 Well, I'm glad that you asked that question as I like to
00:08:14.848 --> 00:08:19.141 infamously say, like basically the the biggest thing that I
00:08:19.141 --> 00:08:22.575 would say in general is a philosophy that we're
00:08:22.575 --> 00:08:26.510 approaching this pain in the market with is we want to
00:08:26.510 --> 00:08:31.232 deliver the best solution in the niches that we're focusing on by
00:08:31.232 --> 00:08:35.525 its nature being a bootstrap company, we're not going to 10
00:08:35.525 --> 00:08:39.890 toward being able to do that and really competitive markets.
00:08:40.240 --> 00:08:44.910 So there's a visual and let me share this link to this board.
00:08:45.440 --> 00:08:47.470 Anyone with the link can?
00:08:47.980 --> 00:08:48.860 I'll say it can comment.
00:08:49.740 --> 00:08:53.392 Feel free to leave any comments if you have them and I'll put
00:08:53.392 --> 00:08:57.162 this in the chat, so hopefully you can see this mirror board if
00:08:57.162 --> 00:09:00.873 you want but and anyways the the thing that I would just point
00:09:00.873 --> 00:09:04.701 out here is that we wanna be in a part of the market where there
00:09:04.701 --> 00:09:06.410 isn't a bunch of competition.
00:09:06.700 --> 00:09:09.554 There aren't a lot of people that are solving the problem
00:09:09.554 --> 00:09:10.490 that we're solving.
00:09:11.080 --> 00:09:14.952 That's the general idea, and then we can sort of build from
00:09:14.952 --> 00:09:19.019 this niche that we're in into a bigger part of the market that
00:09:19.019 --> 00:09:20.310 is more competitive.
00:09:20.320 --> 00:09:23.648 But we just continue to have more clout and that's basically
00:09:23.648 --> 00:09:25.830 what we've done over the last 10 years.
00:09:26.560 --> 00:09:31.626 We've built from a ecommerce focus to a integrated ecommerce
00:09:31.626 --> 00:09:36.360 focus and then we built an integration platform with our
00:09:36.360 --> 00:09:40.596 ecommerce and now we have specific focus areas for
00:09:40.596 --> 00:09:45.580 ecommerce within payments within HIPAA auction marketplace.
00:09:46.120 --> 00:09:50.337 There are other sort of niche areas that we focused with our
00:09:50.337 --> 00:09:54.692 platform and so anyway, my point in saying all of this is that
00:09:54.692 --> 00:09:58.633 this what we're doing is a company is actually solving a
00:09:58.633 --> 00:10:02.850 pain that customers have in these niche areas that we focus.
00:10:02.910 --> 00:10:06.680 They don't have a great solution that is customizable.
00:10:07.170 --> 00:10:10.495 Whenever the companies that they're operating are scaling,
00:10:10.495 --> 00:10:13.934 they typically need to integrate to some back office system,
00:10:13.934 --> 00:10:16.020 maybe a front office system as well.
00:10:16.030 --> 00:10:20.769 So this would be an ERP and accounting software as well as a
00:10:20.769 --> 00:10:22.790 CRM or marketing software.
00:10:23.690 --> 00:10:27.352 And they also typically are going to need specific business
00:10:27.352 --> 00:10:30.953 rules, so they need their platform to match their business
00:10:30.953 --> 00:10:34.370 instead of them having to adapt their business to their
00:10:34.370 --> 00:10:34.920 software.
00:10:35.560 --> 00:10:37.580 And so that's what we allow.
00:10:37.590 --> 00:10:40.260 We allow these companies that we work with to scale up.
00:10:41.550 --> 00:10:45.503 No, I will spare you going into more detail on that last time
00:10:45.503 --> 00:10:49.393 these sort of spoke about some of the like tangible benefits
00:10:49.393 --> 00:10:52.900 like within the medical field and within other fields.
00:10:53.250 --> 00:10:56.890 I will just note that the product is cliche as this may
00:10:56.890 --> 00:10:57.280 sound.
00:10:57.670 --> 00:10:59.940 It truly does change peoples lives.
00:10:59.950 --> 00:11:04.366 With what we're doing, the end customer that uses the products
00:11:04.366 --> 00:11:08.853 that we sell, uh, and basically the ability to deliver for some
00:11:08.853 --> 00:11:13.199 of our clients, it does make a big difference for many of our
00:11:13.199 --> 00:11:13.760 clients.
00:11:14.550 --> 00:11:18.200 Some of them, it's a literal game changer for now.
00:11:18.210 --> 00:11:22.836 The other sort of big focus for the company over the years has
00:11:22.836 --> 00:11:27.536 just continued to develop around not just our clients, but just
00:11:27.536 --> 00:11:31.795 understanding this really powerful process where you sort
00:11:31.795 --> 00:11:36.348 of have a feedback loop where, umm, building a solid team and
00:11:36.348 --> 00:11:40.827 having the team get the top priority and this is always easy
00:11:40.827 --> 00:11:45.600 to talk about, not so easy to do but having basically alignment,
00:11:45.600 --> 00:11:49.639 ownership and effectiveness within the team, basically
00:11:49.639 --> 00:11:53.825 making team #1 and that breaks down to individual career
00:11:53.825 --> 00:11:57.570 development being a high priority for the company.
00:11:58.100 --> 00:12:01.912 That then helps to build a solid foundation so that clients get
00:12:01.912 --> 00:12:05.248 successful delivery and then ultimately the business is
00:12:05.248 --> 00:12:07.810 successful with revenue growth and profit.
00:12:08.480 --> 00:12:12.259 So this to me is one of the other big things that I always
00:12:12.259 --> 00:12:16.359 want to highlight whenever we're meeting together is that this,
00:12:16.359 --> 00:12:20.587 this is something that should be very tangible for each person in
00:12:20.587 --> 00:12:24.687 the meeting that if you aren't already pursuing it consistently
00:12:24.687 --> 00:12:28.594 with your quarterlies and your quarterly career planning and
00:12:28.594 --> 00:12:32.502 then the biweekly reviews, I would really strongly encourage
00:12:32.502 --> 00:12:36.217 you to just take a minute, make a note, make it to do for
00:12:36.217 --> 00:12:39.612 yourself to take time and methodically plan out your
00:12:39.612 --> 00:12:43.456 career and your career growth with some of the team members
00:12:43.456 --> 00:12:47.043 that are in this meeting and that also will be in those
00:12:47.043 --> 00:12:47.620 sessions.
00:12:48.970 --> 00:12:53.295 My personal commitment to you is that this company will continue
00:12:53.295 --> 00:12:57.288 to foster an environment where your career growth is a very
00:12:57.288 --> 00:12:58.220 high priority.
00:12:58.750 --> 00:13:00.760 That doesn't mean, though, that it's going to be perfect.
00:13:00.770 --> 00:13:03.000 And it's really tough whenever we're all remote.
00:13:03.830 --> 00:13:07.912 So I just want to encourage you to be as proactive and assertive
00:13:07.912 --> 00:13:11.993 about that as you can with these different meetings and sessions
00:13:11.993 --> 00:13:12.810 that we have.
00:13:14.880 --> 00:13:17.614 And you know, if you if you don't have a clear plan to
00:13:17.614 --> 00:13:20.547 develop your career over the next year, year and a half, I
00:13:20.547 --> 00:13:21.890 just want to encourage you.
00:13:21.900 --> 00:13:23.430 That's what we want to get to.
00:13:24.080 --> 00:13:27.895 We we literally want to have a career plan and career growth
00:13:27.895 --> 00:13:30.710 plan for every team member that's listening.
00:13:30.720 --> 00:13:33.941 If you can hear my voice, you should have that so that you can
00:13:33.941 --> 00:13:37.162 build your career while you're building this vision that we're
00:13:37.162 --> 00:13:38.390 all working on together.
00:13:39.290 --> 00:13:42.620 And OK, I just have one other topic that I wanted to cover.
00:13:42.630 --> 00:13:45.699 Any comments or questions on that so far and feel free if
00:13:45.699 --> 00:13:48.080 anyone wants to chime in to comment on that.
00:13:48.090 --> 00:13:48.680 I would love it.
00:13:55.940 --> 00:13:56.480 All right.
00:13:57.830 --> 00:14:00.370 Give you another couple seconds to chime in if you want.
00:14:00.380 --> 00:14:03.590 Feel free and I'm going to show a visual for this next part.
00:14:04.550 --> 00:14:09.843 So if you have moved away from your screen, pull up your screen
00:14:09.843 --> 00:14:10.340 again.
00:14:10.350 --> 00:14:12.548 If you would and then it, someone doesn't mind just
00:14:12.548 --> 00:14:14.620 letting me know if this if you can see this, OK?
00:14:16.080 --> 00:14:16.970 It's a little big.
00:14:17.010 --> 00:14:21.535 Might wanna zoom out a little, but I would say that that was
00:14:18.620 --> 00:14:20.540 Thank you as that.
00:14:18.630 --> 00:14:19.040 Mm-hmm.
00:14:21.535 --> 00:14:25.245 one of the things that definitely attracted me to
00:14:25.245 --> 00:14:29.770 clarity ventures is the high priority and emphasis on career
00:14:29.770 --> 00:14:30.290 growth.
00:14:30.920 --> 00:14:34.579 In my initial conversations with Caroline and with the rest of
00:14:34.579 --> 00:14:37.891 the team, and just actually looking into the company and
00:14:37.891 --> 00:14:38.530 everything.
00:14:38.540 --> 00:14:41.560 So I will say thank you for that as well.
00:14:39.810 --> 00:14:40.320 That's awesome.
00:14:41.640 --> 00:14:43.070 Yeah, absolutely.
00:14:43.400 --> 00:14:48.387 Yeah, I mean, just to kind of just reinforce what you just
00:14:48.387 --> 00:14:48.810 said.
00:14:48.820 --> 00:14:53.485 Cassie Umm, one of the things that can happen whenever you're
00:14:53.485 --> 00:14:54.840 learning anything.
00:14:55.110 --> 00:14:58.100 And for me, it's been a learning process.
00:14:58.190 --> 00:15:01.801 You know, learning how to best operate this company in this,
00:15:01.801 --> 00:15:05.708 you know, within this team, umm, there's always an opportunity to
00:15:05.708 --> 00:15:07.070 improve and get better.
00:15:07.080 --> 00:15:09.642 And sometimes, if you don't learn a lesson, you have to keep
00:15:09.642 --> 00:15:11.280 repeating the same thing until you do.
00:15:12.160 --> 00:15:16.065 And one of the things that I found is that really focusing on
00:15:16.065 --> 00:15:20.096 individuals growth, even though again like I, I can't emphasize
00:15:20.096 --> 00:15:22.490 this enough, we're not perfect at it.
00:15:22.500 --> 00:15:26.070 So it requires you know a two way St and there does have to be
00:15:26.070 --> 00:15:28.790 some until we get better and better and better.
00:15:28.800 --> 00:15:31.692 You know, you're gonna have to put forth some effort to help
00:15:31.692 --> 00:15:34.110 drive the process on your end individually, right?
00:15:35.960 --> 00:15:39.919 But with that said, at least there is a stated intent and
00:15:39.919 --> 00:15:41.490 there is a focus on it.
00:15:41.680 --> 00:15:45.129 So you know that it's an opportunity that is encouraged
00:15:45.129 --> 00:15:49.010 and there are some mechanical pieces that we put in place that
00:15:49.010 --> 00:15:49.750 are working.
00:15:50.420 --> 00:15:53.886 And as soon as we started focusing on career growth in
00:15:53.886 --> 00:15:57.983 career development, the business had gone through about eight or
00:15:57.983 --> 00:15:59.370 nine years of staying.
00:15:59.480 --> 00:16:02.090 We grew pretty fast for the first seven years.
00:16:02.420 --> 00:16:05.619 Then we just stated about 3,000,000 a year for about 8 or
00:16:05.619 --> 00:16:08.819 9 years and over the last several years we've come out of
00:16:08.819 --> 00:16:10.750 that and we've been growing again.
00:16:11.390 --> 00:16:16.303 Umm, it's not like growth is the goal, but it is sort of a good
00:16:16.303 --> 00:16:20.910 you know side effect to see from having things figured out.
00:16:21.440 --> 00:16:25.170 And so I think it's really powerful evidence that focusing
00:16:25.170 --> 00:16:29.280 on individual career growth can help drive the overall business.
00:16:29.350 --> 00:16:32.090 So, OK.
00:16:32.100 --> 00:16:34.810 And then that's awesome, man.
00:16:35.480 --> 00:16:36.630 Thanks for the comments in the chat.
00:16:37.260 --> 00:16:38.760 Umm yeah.
00:16:38.770 --> 00:16:41.730 And so the other thing, one of the other tenants is
00:16:41.730 --> 00:16:42.470 transparency.
00:16:42.900 --> 00:16:47.285 And one of the hard parts about transparency is sometimes it
00:16:47.285 --> 00:16:51.239 hurts, you know, sometimes we're, you know, we're very
00:16:51.239 --> 00:16:53.180 human and we make mistakes.
00:16:53.230 --> 00:16:54.680 And that can be expensive.
00:16:54.990 --> 00:16:56.880 And so being able to be transparent.
00:16:57.640 --> 00:17:01.552 Umm is really foundational so that there's trust and
00:17:01.552 --> 00:17:02.290 otherwise.
00:17:02.300 --> 00:17:05.906 I mean, you know, one of the things that I like to say to all
00:17:05.906 --> 00:17:09.221 the leaders is don't think that you can hide what you're
00:17:09.221 --> 00:17:11.780 actually thinking from anyone on this team.
00:17:12.620 --> 00:17:16.575 And I suppose that maybe on some some companies it would be
00:17:16.575 --> 00:17:20.860 possible depending on, you know, the sophistication of the team.
00:17:21.590 --> 00:17:24.560 But I would just say is like a minimum common denominator.
00:17:24.570 --> 00:17:28.320 Pretty much everyone on this in this team, if not literally
00:17:28.320 --> 00:17:30.570 everyone, they can just about tell.
00:17:30.580 --> 00:17:35.600 I mean they they're just high, a very capable team and you're not
00:17:35.600 --> 00:17:37.350 going to hide anything.
00:17:38.730 --> 00:17:42.991 So just be honest now, there's a balance with transparency where
00:17:42.991 --> 00:17:46.728 you don't want to like freak people out out telling them
00:17:46.728 --> 00:17:47.450 everything.
00:17:47.460 --> 00:17:49.010 You're thinking every second, right?
00:17:49.830 --> 00:17:54.090 And So what I wanna do is just kind of give you a summary of
00:17:54.090 --> 00:17:58.141 really the last 10 years and I've been wrap up my portion
00:17:58.141 --> 00:17:58.840 with this.
00:17:58.850 --> 00:18:00.050 So stick with me if you can.
00:18:00.810 --> 00:18:03.540 Umm, but what happened over the last 10 years?
00:18:03.590 --> 00:18:05.540 And I'm really gonna focus on the last three years.
00:18:05.550 --> 00:18:08.310 And so I've sort of got a visual here that shows that.
00:18:09.260 --> 00:18:09.800 Umm.
00:18:09.980 --> 00:18:11.010 But with that said.
00:18:13.200 --> 00:18:15.670 Yeah, exactly it is.
00:18:15.680 --> 00:18:20.244 It is the PM teams jam for either so about the last 10
00:18:20.244 --> 00:18:24.726 years we've been building this ecommerce product, our
00:18:24.726 --> 00:18:28.710 integration platform more recently and pay hub.
00:18:28.760 --> 00:18:32.745 Even more recently, we've been focusing on niche markets for
00:18:32.745 --> 00:18:36.992 about the last five or six years as we've been building that and
00:18:36.992 --> 00:18:41.043 some of the niche focus areas have cost a lot to invest in as
00:18:41.043 --> 00:18:41.370 well.
00:18:41.820 --> 00:18:44.696 Now the really unique thing about clarity is we made a
00:18:44.696 --> 00:18:46.370 choice not to be venture backed.
00:18:47.600 --> 00:18:52.804 This is very painful in the near term, and it can be a very
00:18:52.804 --> 00:18:55.060 powerful in the long term.
00:18:56.550 --> 00:19:00.625 So there's a tradeoff there that we made umm, we are literally
00:19:00.625 --> 00:19:04.765 self funded and there's a lot of capital investment that's gone
00:19:04.765 --> 00:19:08.840 into building our products and I've estimated and just kind of
00:19:08.840 --> 00:19:12.980 gone through and looked at what I think the investment has been
00:19:12.980 --> 00:19:17.055 and it's probably been north of 30 or $40 million of effective
00:19:17.055 --> 00:19:21.130 capital that's gone in most of that being profited that's been
00:19:21.130 --> 00:19:25.011 reinvested and then sort of like a composite of some of the
00:19:25.011 --> 00:19:28.957 client work that's overlapped with work that we needed to do
00:19:28.957 --> 00:19:29.410 anyway.
00:19:30.360 --> 00:19:34.649 And so that's kind of how we funded this business is by doing
00:19:34.649 --> 00:19:37.140 work that aligned with our product.
00:19:37.270 --> 00:19:37.470 OK.
00:19:38.340 --> 00:19:42.624 So the point in saying all that, and this is what I want you to
00:19:42.624 --> 00:19:46.976 take away from this part of the conversation, is that for really
00:19:46.976 --> 00:19:50.859 the last 10 years we've been operating this business as a
00:19:50.859 --> 00:19:53.470 break even is good break even is good.
00:19:53.900 --> 00:19:56.230 And you might say, why would that be good?
00:19:56.620 --> 00:20:00.462 Because we're bootstrapping and normally to build a product like
00:20:00.462 --> 00:20:04.364 what we've built and now a suite of products, it would cost us, I
00:20:04.364 --> 00:20:07.969 mean, we literally have to give up control of the company in
00:20:07.969 --> 00:20:08.620 most cases.
00:20:08.680 --> 00:20:08.870 This.
00:20:09.580 --> 00:20:09.950 OK.
00:20:09.960 --> 00:20:13.196 So we would end up going out raising venture capital hoping
00:20:13.196 --> 00:20:16.378 that we would get multiple rounds not knowing for sure and
00:20:16.378 --> 00:20:19.560 almost guaranteed we would give up control of the company.
00:20:20.600 --> 00:20:22.590 And you might say, well, that doesn't sound that bad.
00:20:23.580 --> 00:20:26.799 You can talk to folks in this meeting who have been in
00:20:26.799 --> 00:20:30.370 companies that did that, took that route, took that approach
00:20:30.370 --> 00:20:34.117 and all of the all of the words and even all of the good things
00:20:34.117 --> 00:20:37.980 that were stated about where the company would go could literally
00:20:37.980 --> 00:20:41.434 like that be just erased because the venture Capital Group
00:20:41.434 --> 00:20:45.122 decided that they wanted to sell the company or they wanted to
00:20:45.122 --> 00:20:47.230 change management or what have you.
00:20:48.150 --> 00:20:52.845 Uh, so we decided to sort of take the the lonely Rd of
00:20:52.845 --> 00:20:54.040 bootstrapping.
00:20:54.550 --> 00:20:59.456 OK, now I'm going to focus on the last three years roughly, I
00:20:59.456 --> 00:21:01.830 guess 3 1/2 years technically.
00:21:02.910 --> 00:21:06.240 And I'm I'm showing 2019 in here just to give some perspective.
00:21:06.250 --> 00:21:10.832 But basically, around 2019, we started growing out of three
00:21:10.832 --> 00:21:15.415 million a year in top line revenue, but really 2020 through
00:21:15.415 --> 00:21:19.769 2022, we just about doubled the top line revenue for the
00:21:19.769 --> 00:21:20.380 company.
00:21:20.610 --> 00:21:22.150 You can see it's not quite a doubling.
00:21:22.900 --> 00:21:23.410 Umm.
00:21:23.620 --> 00:21:27.914 And I'm showing here as well some data points that I'll kind
00:21:27.914 --> 00:21:32.138 of outline what those are, but the big green bold per year,
00:21:32.138 --> 00:21:34.110 that's our top line revenue.
00:21:34.570 --> 00:21:37.961 And then I'll talk about what these other numbers are to the
00:21:37.961 --> 00:21:41.185 left of that, but just just to kind of give you a few key
00:21:41.185 --> 00:21:41.630 bullets.
00:21:42.360 --> 00:21:47.640 Basically, in 2020, uh, we we basically started doing some
00:21:47.640 --> 00:21:53.367 pretty substantial investing, a lot of pilot level investing as
00:21:53.367 --> 00:21:58.916 we went into the end of the year into some of our products in
00:21:58.916 --> 00:22:03.480 2021, we invested substantially into our products.
00:22:03.990 --> 00:22:09.178 So you might say back for the first seven years 2019 and back,
00:22:09.178 --> 00:22:14.284 there wasn't as much resource there to invest, but we through
00:22:14.284 --> 00:22:19.473 different means and I won't bore you with all the details, but
00:22:19.473 --> 00:22:24.661 this was both financing profit potential profit and it all got
00:22:24.661 --> 00:22:28.450 used to put into investing into our products.
00:22:28.690 --> 00:22:31.854 You know, we invested millions of dollars a year into our
00:22:31.854 --> 00:22:33.600 products from 2020 through 2022.
00:22:34.730 --> 00:22:39.541 Umm now 2021 was very was was not only a very large amount of
00:22:39.541 --> 00:22:44.276 investment, but we also had a very large amount of growth as
00:22:44.276 --> 00:22:45.440 you can see on.
00:22:45.450 --> 00:22:46.480 And So what?
00:22:46.490 --> 00:22:51.057 What I'm showing here on the left for each one of these is
00:22:51.057 --> 00:22:55.934 and let me know if that zoom in is too much, but I'm basically
00:22:55.934 --> 00:23:00.734 showing the expenses on the left in yellow and then the total
00:23:00.734 --> 00:23:02.360 revenue on the right.
00:23:02.710 --> 00:23:04.300 And this is very ballpark.
00:23:04.970 --> 00:23:08.900 So like, please don't show this to our CPA, they would, they
00:23:08.900 --> 00:23:10.640 would not be happy with me.
00:23:10.710 --> 00:23:12.330 This is just ballpark numbers, OK?
00:23:13.080 --> 00:23:17.516 Umm, but then in 2021 we had a small profit again investing
00:23:17.516 --> 00:23:22.100 literally millions of dollars of resources into our products.
00:23:22.930 --> 00:23:27.391 And then 2022, you can see we didn't grow as much, but we were
00:23:27.391 --> 00:23:31.499 projecting growth and we invested a lot of resources into
00:23:31.499 --> 00:23:32.420 the business.
00:23:33.240 --> 00:23:37.369 Umm, so that and we've we've had talks about this before and I've
00:23:37.369 --> 00:23:40.748 kind of talked with you about what this meant, but we
00:23:40.748 --> 00:23:44.502 basically decided at the end of last year that we wanted to
00:23:44.502 --> 00:23:44.940 invest.
00:23:45.750 --> 00:23:48.990 We wanted to invest really heavily, in particular into
00:23:48.990 --> 00:23:52.349 payment hub and our common model because there was a big
00:23:52.349 --> 00:23:53.410 opportunity there.
00:23:54.430 --> 00:23:58.636 Uh, so we did financing at the end of the year and ultimately
00:23:58.636 --> 00:24:02.775 that basically allowed us to finish making some of the major
00:24:02.775 --> 00:24:06.710 investment we needed that we finished at the beginning of
00:24:06.710 --> 00:24:07.660 this year, OK.
00:24:08.290 --> 00:24:13.173 So just to kind of wrap this up, we essentially by making all
00:24:13.173 --> 00:24:18.057 these investments into our into our products, we were able to
00:24:18.057 --> 00:24:23.098 get the company value that we're delivering in the market to go
00:24:23.098 --> 00:24:23.650 way up.
00:24:24.460 --> 00:24:27.794 And I think that most people would agree that especially that
00:24:27.794 --> 00:24:31.290 we're here, you know, ten years ago, even five or six years ago.
00:24:31.940 --> 00:24:35.784 I'm sure you would agree that the quality of the delivery, not
00:24:35.784 --> 00:24:39.567 just the products, definitely the products included, but also
00:24:39.567 --> 00:24:43.351 the overall delivery for clients actually needs a really high
00:24:43.351 --> 00:24:46.951 standard compared to where it was three or four years ago,
00:24:46.951 --> 00:24:49.880 five or six years ago, God forbid 10 years ago.
00:24:50.340 --> 00:24:52.050 I mean, we're running around with our hair.
00:24:52.060 --> 00:24:53.150 Yeah, even four years ago.
00:24:53.160 --> 00:24:56.330 Yeah, it's is a very different company.
00:24:58.160 --> 00:25:01.807 And so I guess my point is that we felt like it made sense to
00:25:01.807 --> 00:25:05.514 keep investing heavily to get to that certain standard that we
00:25:05.514 --> 00:25:06.750 knew we could get to.
00:25:07.670 --> 00:25:11.381 And I'm not saying that we're there and that we're finished
00:25:11.381 --> 00:25:12.000 investing.
00:25:12.010 --> 00:25:13.770 We never will be, umm.
00:25:14.110 --> 00:25:17.512 There are some areas that are sort of like bleeding edge, like
00:25:17.512 --> 00:25:20.860 AI that we've got to invest in because it's a paradigm shift.
00:25:20.870 --> 00:25:23.394 And if we're not part of it, we will just lose all of our
00:25:23.394 --> 00:25:24.570 investment that we've made.
00:25:25.330 --> 00:25:28.580 Umm, there are other areas where we can really deliberately plan
00:25:28.580 --> 00:25:31.630 and invest like what we're going to talk about with Phoenix.
00:25:32.660 --> 00:25:33.140 Umm.
00:25:33.560 --> 00:25:37.036 Ultimately, though, what's really exciting about the
00:25:37.036 --> 00:25:40.970 business is the value of our product is to a point where we
00:25:40.970 --> 00:25:42.020 can charge more.
00:25:42.490 --> 00:25:46.378 We can have more reliability with our overall cash flow from
00:25:46.378 --> 00:25:49.948 a business perspective and we don't have to put as much
00:25:49.948 --> 00:25:52.180 capital in to get the same output.
00:25:52.750 --> 00:25:55.661 Some of it isn't just a measure of how much capital you're
00:25:55.661 --> 00:25:58.720 putting in, and I'm sure anyone in the development team would
00:25:58.720 --> 00:26:01.385 agree with this and probably many others in the group
00:26:01.385 --> 00:26:01.780 overall.
00:26:02.610 --> 00:26:06.670 But sometimes you get orders of magnitude more efficiency with
00:26:06.670 --> 00:26:10.602 just one or two people working on something that are really,
00:26:10.602 --> 00:26:14.470 really committed and believe in it and become or are highly
00:26:14.470 --> 00:26:18.530 skilled versus a group of people that are less serious or less
00:26:18.530 --> 00:26:20.400 committed and less organized.
00:26:21.450 --> 00:26:25.749 So the power is within the team, just like I showed earlier, but
00:26:25.749 --> 00:26:29.916 because of this team and because of what we've accumulated to,
00:26:29.916 --> 00:26:33.951 we're in a position where the business is really able to not
00:26:33.951 --> 00:26:38.118 just break even as a standard and that being good and now it's
00:26:38.118 --> 00:26:41.822 building value in the company by breaking even and then
00:26:41.822 --> 00:26:43.740 continuing to invest profits.
00:26:43.750 --> 00:26:47.632 But we're actually to a point where we can organically start
00:26:47.632 --> 00:26:51.196 having profit and really stabilizing the company around
00:26:51.196 --> 00:26:52.660 that profitability, OK.
00:26:52.970 --> 00:26:58.198 So just a couple of notes in and this will just kind of be I
00:26:58.198 --> 00:27:01.970 think of really positive thing around that.
00:27:02.950 --> 00:27:05.370 Umm, we basically made a major effort.
00:27:06.850 --> 00:27:11.285 That as a as a result of that major effort at the beginning of
00:27:11.285 --> 00:27:15.861 this year and really through the end of last month's making some
00:27:15.861 --> 00:27:19.662 pretty tough decisions throughout that process, we've
00:27:19.662 --> 00:27:23.605 been able to reduce our financing overhead and just get
00:27:23.605 --> 00:27:28.181 ourselves into a position where the business is teetering on the
00:27:28.181 --> 00:27:32.405 edge of being literally based on our actual revenue, not an
00:27:32.405 --> 00:27:36.840 optimistic view of revenue, but our actual revenue rolling for
00:27:36.840 --> 00:27:40.923 the last six months including holiday months and you know
00:27:40.923 --> 00:27:45.499 spikes and dips that are natural if you take our actual revenue,
00:27:45.499 --> 00:27:49.794 the company is literally bright at being profitable and then
00:27:49.794 --> 00:27:53.384 moving into being very profitable as we get rid of
00:27:53.384 --> 00:27:56.130 financing that's on our balance sheet.
00:27:56.640 --> 00:27:59.977 Now remember I mentioned that we took on a lot of financing at
00:27:59.977 --> 00:28:01.090 the end of last year.
00:28:01.820 --> 00:28:04.330 This was around September and October of last year.
00:28:04.340 --> 00:28:07.590 Well, we're getting to, you know, after July, August,
00:28:07.590 --> 00:28:11.261 September, October, a lot of our short term financing was 12
00:28:11.261 --> 00:28:15.173 month term and so a lot of that financing had a cash flow impact
00:28:15.173 --> 00:28:18.603 and it's getting removed from our balance sheet as we go
00:28:18.603 --> 00:28:20.650 throughout the rest of this year.
00:28:21.660 --> 00:28:26.341 So what this means is that as we go from here into October, just
00:28:26.341 --> 00:28:31.022 at our current average revenue, so October is 3 months from now,
00:28:31.022 --> 00:28:34.911 we're going to be without changing anything else, you
00:28:34.911 --> 00:28:39.017 know, literally keeping our payroll allocation this same
00:28:39.017 --> 00:28:43.554 just noting that of course any eating ping increases, you know
00:28:43.554 --> 00:28:47.947 bonuses, role changes that have pain increases cetera, those
00:28:47.947 --> 00:28:49.820 will all be accounted for.
00:28:49.830 --> 00:28:54.020 But I'm just generally speaking, without any changes we will be
00:28:54.020 --> 00:28:56.640 at 10% profit in the next three months.
00:28:57.530 --> 00:29:00.240 10% profit is nothing to, you know, celebrate.
00:29:00.250 --> 00:29:03.080 But it's way better than focusing on break even.
00:29:03.090 --> 00:29:05.666 As a company, we're gonna be focusing on hitting our profit
00:29:05.666 --> 00:29:06.010 numbers.
00:29:08.100 --> 00:29:11.735 I don't want it to become, you know, like like a company that's
00:29:11.735 --> 00:29:15.370 public where we just, like, have to hit a certain profit level.
00:29:15.820 --> 00:29:19.134 But I just think it's a standard that we're changing that, hey,
00:29:19.134 --> 00:29:22.190 we need to tend toward hitting a certain amount of profit.
00:29:22.960 --> 00:29:27.374 It's not the end of the world if we don't, but it's just a more
00:29:27.374 --> 00:29:31.375 stable place to operate from then if you go another three
00:29:31.375 --> 00:29:35.375 months as we make it into January, again without changing
00:29:35.375 --> 00:29:39.790 anything without increasing our revenue without changing any of
00:29:39.790 --> 00:29:43.998 our allocation that we have toward expenses and overhead, we
00:29:43.998 --> 00:29:46.550 get to 20% profitability in January.
00:29:47.590 --> 00:29:50.825 And so if you were to summarize it, we took on a lot of
00:29:50.825 --> 00:29:54.349 financing overhead that's going away and it's gonna be going
00:29:54.349 --> 00:29:56.660 away over the next three to six months.
00:29:56.710 --> 00:29:59.500 And this is gonna leave us in a really positive position.
00:30:00.050 --> 00:30:03.918 And so you can see that represented here I've just kind
00:30:03.918 --> 00:30:08.409 of ballpark and it for 2024, if we had a 10% growth in 2024, you
00:30:08.409 --> 00:30:09.860 know what would that?
00:30:09.870 --> 00:30:14.129 And this is actually slightly less than 10%, but if we had
00:30:14.129 --> 00:30:18.315 around 10%, we'll we'll be looking at roughly 1.5 million
00:30:18.315 --> 00:30:22.935 profit and this is with slightly increasing our team size as we
00:30:22.935 --> 00:30:25.390 go throughout the year next year.
00:30:26.310 --> 00:30:30.480 Umm, so I'm interested if anyone has any questions.
00:30:31.050 --> 00:30:34.282 The main point here is that we have made a lot of changes in
00:30:34.282 --> 00:30:37.515 the beginning of the year, the sort of the first half of the
00:30:37.515 --> 00:30:37.780 year.
00:30:38.230 --> 00:30:42.107 And I just wanted to speak to the fact that because we've been
00:30:42.107 --> 00:30:46.108 able to, you know, make some of the tough decisions that we made
00:30:46.108 --> 00:30:49.431 and get ourselves into a position where a lot of this
00:30:49.431 --> 00:30:53.185 financing that we took on a lot of the capital investment is
00:30:53.185 --> 00:30:56.140 sort of getting removed from our balance sheet.
00:30:57.260 --> 00:31:00.286 We're going to continue to be in a healthier and healthier
00:31:00.286 --> 00:31:01.210 position as we go.
00:31:02.000 --> 00:31:05.370 There's gonna be continued investment into our products.
00:31:05.820 --> 00:31:10.548 I just think what's really powerful about operating from a
00:31:10.548 --> 00:31:15.436 not break even is good, but profitability is where we can be
00:31:15.436 --> 00:31:17.360 and where we need to be.
00:31:18.180 --> 00:31:19.490 It changes the game.
00:31:20.360 --> 00:31:24.190 We're going to be much more proactive in planning things and
00:31:24.190 --> 00:31:27.644 being able to be a really aggressive with parts of the
00:31:27.644 --> 00:31:31.663 market that we want to go after and it'll just give us a deeper
00:31:31.663 --> 00:31:33.170 war chest to be able to.
00:31:33.320 --> 00:31:36.386 I I think one of the things that's challenging is we make
00:31:36.386 --> 00:31:39.558 sporadic investments into our products and I think a lot of
00:31:39.558 --> 00:31:41.620 the product team will agree with this.
00:31:41.950 --> 00:31:46.005 It'll be like two to four months of focus on products and then
00:31:46.005 --> 00:31:49.611 it's like OHP, never mind you know, we need to focus on
00:31:49.611 --> 00:31:53.731 clients now and it's like ohh I was so close to getting this to
00:31:53.731 --> 00:31:57.851 work, you know and I think with some of the marketing and sales
00:31:57.851 --> 00:32:00.040 processes is the same thing, umm.
00:32:00.340 --> 00:32:04.489 And you know, there's almost a feeling of, like, if I don't do
00:32:04.489 --> 00:32:08.310 this now, even if it's not perfect, it'll never get done.
00:32:08.720 --> 00:32:11.428 And I'm sure some of you would agree with me about that, that
00:32:11.428 --> 00:32:13.350 you've probably even said that to yourself.
00:32:13.480 --> 00:32:17.093 If I don't do this right now, it's not gonna happen, and I
00:32:17.093 --> 00:32:20.952 think that being in a position of operating company profitably
00:32:20.952 --> 00:32:22.790 isn't just about being stable.
00:32:23.160 --> 00:32:27.047 It's about putting ourselves in a position where we can be
00:32:27.047 --> 00:32:31.132 smarter, and that's just gonna be more self reinforcing as we
00:32:31.132 --> 00:32:31.330 go.
00:32:31.340 --> 00:32:35.656 So anyway, I see some folks commenting by the The thing is
00:32:35.656 --> 00:32:39.826 and we'll dive into the individual team members that are
00:32:39.826 --> 00:32:43.850 going to speak to areas within the business with this.
00:32:43.860 --> 00:32:47.118 But and these numbers do not account for the fact that I'm
00:32:47.118 --> 00:32:50.487 gonna, I'm gonna tell you three things that I think are huge
00:32:50.487 --> 00:32:51.040 tailwinds.
00:32:51.690 --> 00:32:54.810 Number one, we just increased our rates effectively.
00:32:55.860 --> 00:32:59.128 I'm currently our average hourly rate for our services work,
00:32:59.128 --> 00:33:02.128 which is most of our revenue composition comes from our
00:33:02.128 --> 00:33:02.610 services.
00:33:04.180 --> 00:33:07.997 It's roughly 85 and 90% of our top line revenue comes from
00:33:07.997 --> 00:33:08.580 services.
00:33:10.090 --> 00:33:14.930 That average rate is about 1:45 an hour $145.00 an hour.
00:33:16.690 --> 00:33:20.945 The rate we are expecting that to go to 175 an hour before the
00:33:20.945 --> 00:33:25.268 end of the year and it will most likely be at about 200 an hour
00:33:25.268 --> 00:33:26.890 at this point next year.
00:33:27.750 --> 00:33:31.890 Umm, just composite average rate across the entire company?
00:33:32.780 --> 00:33:36.695 Umm, that alone is a huge change that will literally change the
00:33:36.695 --> 00:33:38.530 profitability of this company.
00:33:38.940 --> 00:33:43.025 And again, give us more resources, we can invest umm and
00:33:43.025 --> 00:33:43.240 it.
00:33:43.250 --> 00:33:47.664 And it's not just about the profitability for having profit,
00:33:47.664 --> 00:33:51.860 it's it's being able to do things that individuals within
00:33:51.860 --> 00:33:56.491 the team know we need to do in order to be more valuable and to
00:33:56.491 --> 00:33:58.590 solve problems better, right.
00:33:59.060 --> 00:34:01.944 And of course, we should be profitable as a result of
00:34:01.944 --> 00:34:03.120 delivering that value.
00:34:03.880 --> 00:34:08.460 The second thing that's really, really powerful is we have a big
00:34:08.460 --> 00:34:12.336 opportunity just overall with how we're presenting our
00:34:12.336 --> 00:34:12.970 products.
00:34:13.440 --> 00:34:17.547 We've really changed the positioning of our products so
00:34:17.547 --> 00:34:21.949 that we're showing that we can really get the off the shelf
00:34:21.949 --> 00:34:25.690 delivery done very quickly and very inexpensively.
00:34:26.460 --> 00:34:30.538 So this is presented as a SAS offering or a lower cost license
00:34:30.538 --> 00:34:32.610 than we traditionally presented.
00:34:33.420 --> 00:34:35.210 That is a huge win.
00:34:35.820 --> 00:34:39.185 I mean, it's hard to really assess it accurately right now
00:34:39.185 --> 00:34:42.779 because we haven't completely rolled it out 100%, but it seems
00:34:42.779 --> 00:34:46.488 like as we're rolling it out and I'll let Phil and Ron elaborate
00:34:46.488 --> 00:34:47.800 on this when they talk.
00:34:48.490 --> 00:34:50.680 But it does seem like it's very successful.
00:34:50.890 --> 00:34:53.809 And then finally and this, of course, isn't all of the
00:34:53.809 --> 00:34:55.030 tailwinds that we have.
00:34:55.040 --> 00:34:59.105 But finally, we also have a part of our business where we're
00:34:59.105 --> 00:35:02.305 getting a basis points percentage of all of the
00:35:02.305 --> 00:35:06.503 payments for many of our clients going forward that use us for
00:35:06.503 --> 00:35:08.170 their payment processing.
00:35:08.880 --> 00:35:09.290 Umm.
00:35:09.740 --> 00:35:11.910 And so, without boring you with the detail.
00:35:11.920 --> 00:35:15.836 And I think Ron's gonna hit on the really exciting parts of
00:35:15.836 --> 00:35:20.013 this and show you some visuals, but we are projecting that, you
00:35:20.013 --> 00:35:24.059 know, probably about 10% of our top line revenue by this time
00:35:24.059 --> 00:35:28.236 next year could be coming from just recurring revenue from that
00:35:28.236 --> 00:35:29.020 being added.
00:35:29.760 --> 00:35:30.140 Umm.
00:35:30.560 --> 00:35:33.703 And we have some clients that I'm sure Ron will talk about
00:35:33.703 --> 00:35:37.113 that are already signed up and in the process of signing up for
00:35:37.113 --> 00:35:37.380 that.
00:35:38.220 --> 00:35:41.871 So those are tailwinds that I haven't accounted for in these
00:35:41.871 --> 00:35:42.350 numbers.
00:35:42.360 --> 00:35:47.475 So if you're to sort of take a big, you know, take away from
00:35:47.475 --> 00:35:52.590 this, it's that we, we grew a lot and we really just messed.
00:35:52.600 --> 00:35:53.490 I mean, we messed up.
00:35:53.580 --> 00:35:54.410 We made a mistake.
00:35:55.290 --> 00:35:55.650 Umm.
00:35:55.850 --> 00:36:00.957 Thinking that we were going to grow as much in 2022 as we did
00:36:00.957 --> 00:36:05.900 in 2021 and that was expensive and a lot of different ways.
00:36:06.320 --> 00:36:07.140 And I'm just.
00:36:07.190 --> 00:36:09.300 I'm just saying, you know, there's a mistake.
00:36:09.750 --> 00:36:14.011 One of the big things that I'm taking from it is the latency
00:36:14.011 --> 00:36:14.920 was too high.
00:36:15.290 --> 00:36:19.485 With understanding, you know where we actually were versus
00:36:19.485 --> 00:36:21.050 what we were thinking.
00:36:21.060 --> 00:36:22.640 We were going to accomplish.
00:36:23.170 --> 00:36:27.496 I also think that there was just just sort of a level of break
00:36:27.496 --> 00:36:31.136 even as good enough that added to that latency being
00:36:31.136 --> 00:36:31.960 problematic.
00:36:32.780 --> 00:36:36.316 So you add latency and this mindset of it's good enough to
00:36:36.316 --> 00:36:39.732 just break even and you know you get into this knee jerk
00:36:39.732 --> 00:36:41.830 situation whenever you're growing.
00:36:42.670 --> 00:36:45.520 And so I think that as we continue to grow.
00:36:45.690 --> 00:36:49.395 It's gonna be a lesson that we need to make sure you know, not
00:36:49.395 --> 00:36:53.159 just the leaders, but everyone who's, you know, in the team and
00:36:53.159 --> 00:36:56.276 you're really serious and committed about, you know,
00:36:56.276 --> 00:36:59.510 building your career here that you know that we're not
00:36:59.510 --> 00:37:01.510 intending to revisit this lesson.
00:37:02.430 --> 00:37:06.414 So anyway, OK, now with that said, if anyone has any comments
00:37:06.414 --> 00:37:08.920 again feel free to put them out there.
00:37:10.480 --> 00:37:12.290 I just wanted to share all of that with you.
00:37:12.300 --> 00:37:16.583 So you kind of see where we're headed, where we've been and
00:37:16.583 --> 00:37:20.867 some context on some of the decision making really over the
00:37:20.867 --> 00:37:25.150 last six months and it really things are looking very solid
00:37:25.150 --> 00:37:29.577 for the business, not just based on projections, but based on
00:37:29.577 --> 00:37:31.790 actual numbers that we've seen.
00:37:31.800 --> 00:37:34.130 So I think it's a really positive maturing of a business.
00:37:34.520 --> 00:37:38.315 Now, with that said, we are making some pretty major
00:37:38.315 --> 00:37:43.040 investments into different areas of the business still in part of
00:37:43.040 --> 00:37:47.695 the process part of our goal is to be very methodical about sort
00:37:47.695 --> 00:37:51.848 of getting proof of concept in different areas that we're
00:37:51.848 --> 00:37:56.287 working on, of finding a few very select team members who are
00:37:56.287 --> 00:38:00.798 really passionate about an area of focus who can put in really
00:38:00.798 --> 00:38:02.660 focused time on that area.
00:38:03.250 --> 00:38:07.766 And then get us to a point where we can then build out a much a
00:38:07.766 --> 00:38:09.460 very detailed plan, umm.
00:38:09.470 --> 00:38:13.294 And then bring in more of the team into that now more
00:38:13.294 --> 00:38:14.640 validated approach.
00:38:15.180 --> 00:38:20.439 And so with that, one of the big opportunities that we have is to
00:38:20.439 --> 00:38:25.380 upgrade our ecommerce back end to the latest versions of net.
00:38:26.060 --> 00:38:30.768 Currently, the versions of net that we're running on is James
00:38:30.768 --> 00:38:31.680 and Brendan.
00:38:31.690 --> 00:38:35.212 I'm sure you can clarify, but I think it's like four or five
00:38:35.212 --> 00:38:35.790 years old.
00:38:37.070 --> 00:38:40.891 Possibly older, and it has updates and patches, but you
00:38:39.020 --> 00:38:43.550 It yeah. Yep.
00:38:40.891 --> 00:38:43.280 know we've gotta upgrade it, yeah.
00:38:43.710 --> 00:38:47.568 We're on .net 4.8 with the latest Seth build that has not
00:38:47.568 --> 00:38:48.500 been released.
00:38:48.510 --> 00:38:50.190 It is 4.7 dot two before that.
00:38:51.070 --> 00:38:51.400 OK.
00:38:51.610 --> 00:38:55.793 So we basically want to get on the latest versions of net and
00:38:55.793 --> 00:38:58.290 and I'm guessing it'll end up being.
00:38:58.360 --> 00:39:02.594 Will it be .net 7 or is it gonna be at and and we're really with
00:39:02.000 --> 00:39:03.480 Where it's.
00:39:02.594 --> 00:39:02.920 that?
00:39:02.930 --> 00:39:05.439 I wanna turn it over to you guys to talk about what you're
00:39:05.040 --> 00:39:07.280 Yeah. Yep.
00:39:05.439 --> 00:39:06.800 working on, why you're doing it.
00:39:07.100 --> 00:39:10.883 And as I dropped my pen again, I would just love for you guys to
00:39:10.883 --> 00:39:14.260 elaborate on what the vision is and where we're at on it.
00:39:15.090 --> 00:39:16.170 Yeah. So.
00:39:15.740 --> 00:39:19.453 It's it's 7 right now and it'll be 8 when eight releases in
00:39:19.453 --> 00:39:20.010 November.
00:39:20.530 --> 00:39:21.020 Yeah.
00:39:20.860 --> 00:39:21.380 OK, awesome.
00:39:21.030 --> 00:39:24.863 So I've been I've been kind of working through and every time a
00:39:24.863 --> 00:39:26.660 new version of .net comes out.
00:39:26.830 --> 00:39:30.232 Kind of immediately going upgrade packages and stuff and
00:39:30.232 --> 00:39:33.933 make sure that everything still works just to kind of keep up
00:39:33.933 --> 00:39:37.694 with it as it's rolling so, but on that note, uh Phoenix, so a
00:39:37.694 --> 00:39:41.335 lot of you have probably heard this term, there's probably a
00:39:41.335 --> 00:39:44.260 lot of you that hasn't have not heard this term.
00:39:44.800 --> 00:39:48.408 I made a PowerPoint and I just wanna forewarn everybody that I
00:39:48.408 --> 00:39:50.070 made some of the transitions.
00:39:50.080 --> 00:39:54.661 Intentionally stupid because it's funny and so on that note,
00:39:54.661 --> 00:39:59.242 I will begin sharing my screen and also for those of you who
00:39:59.242 --> 00:40:03.823 have heard my woes, my Internet is still not fixed, so I may
00:40:03.823 --> 00:40:08.480 disappear every now and then, but I'll be right back if I do.
00:40:10.160 --> 00:40:10.850 All right.
00:40:10.940 --> 00:40:14.236 So Phoenix, I tried to think of a tagline for this slide,
00:40:14.236 --> 00:40:17.873 something cool and slide, but I couldn't think of anything that
00:40:17.873 --> 00:40:19.010 didn't sound cheesy.
00:40:19.020 --> 00:40:19.790 So I just put this.
00:40:22.310 --> 00:40:30.030 Umm so it's future, so uh, there we go.
00:40:23.780 --> 00:40:24.500 That's amazing.
00:40:30.270 --> 00:40:30.820 Love it.
00:40:30.830 --> 00:40:32.870 I made that slide take way too long on purpose.
00:40:34.200 --> 00:40:35.610 So what is Phoenix?
00:40:35.820 --> 00:40:37.990 Phoenix is an in development upgrade of CEF.
00:40:38.000 --> 00:40:41.490 Like uh, Chris was saying a long term goal of Phoenix.
00:40:41.500 --> 00:40:45.185 Is that it can be a shared core code base for both CONNECT and
00:40:45.185 --> 00:40:48.520 CEF, so that the common components that both of them use
00:40:48.520 --> 00:40:52.088 can be shared and we no longer have to reinvent the wheel in
00:40:52.088 --> 00:40:55.891 two different places and we get a lot better cooperation between
00:40:55.891 --> 00:40:56.710 the two teams.
00:40:56.720 --> 00:41:00.104 So that's just a really nice long term goal and side effect
00:41:00.104 --> 00:41:01.740 of this modernization effort.
00:41:03.160 --> 00:41:06.779 The upgrade process involves modernizing the tech stack and
00:41:06.779 --> 00:41:10.397 and our practices, with the focus on keeping things modular
00:41:10.397 --> 00:41:12.750 and maximizing developer productivity.
00:41:13.100 --> 00:41:16.450 So really, a lot of that kind of boils down to.
00:41:17.520 --> 00:41:22.321 Umm, trying to make it as easy as possible to work with and to
00:41:22.321 --> 00:41:24.150 complete any given task.
00:41:24.720 --> 00:41:28.340 So, umm, a lot of developers.
00:41:28.390 --> 00:41:31.060 I'm sure every developer in here can tell you that there's some
00:41:31.060 --> 00:41:33.605 task that they were like that should be only like 30 minutes
00:41:33.605 --> 00:41:35.900 and then they dug into it and they're like ohter mind.
00:41:35.910 --> 00:41:38.060 That's actually really difficult.
00:41:38.070 --> 00:41:40.071 Unexpectedly, because there's, you know, for whatever reason,
00:41:40.071 --> 00:41:41.750 there just something that made it more complicated.
00:41:42.750 --> 00:41:45.300 Umm, so uh.
00:41:45.310 --> 00:41:48.757 The upgrade process involves some some general improvements
00:41:48.757 --> 00:41:52.031 to the architecture and functionality that open a lot of
00:41:52.031 --> 00:41:53.640 very interesting doors, but.
00:41:56.330 --> 00:41:57.550 What a great transition.
00:41:58.360 --> 00:42:00.670 Uh, but why?
00:42:01.100 --> 00:42:02.210 Why are we doing this?
00:42:02.220 --> 00:42:06.175 Is is a great question and one that is is rightfully asked
00:42:06.175 --> 00:42:10.332 often, and the answer starts with what Chris was mentioning a
00:42:10.332 --> 00:42:11.070 moment ago.
00:42:11.760 --> 00:42:14.150 Seth runs on an older version of NET.
00:42:14.440 --> 00:42:18.314 Specifically, it runs on NET Framework Forward 7.2 right now
00:42:18.314 --> 00:42:21.300 and it will be forward .8 on the next release.
00:42:22.170 --> 00:42:26.791 Uh, but ultimately it being on that older version imposes some
00:42:26.791 --> 00:42:31.266 limitations on us and will only continue to become more of a
00:42:31.266 --> 00:42:35.594 bottleneck as time goes on as more developers sort of jump
00:42:35.594 --> 00:42:39.849 ship and stop developing extensions, plugins etcetera for
00:42:39.849 --> 00:42:41.170 NET Framework umm.
00:42:41.180 --> 00:42:44.853 And so as a result, that's already had some some impact on
00:42:44.853 --> 00:42:48.589 certain things for us where we've had to sort of break into
00:42:48.589 --> 00:42:52.574 the code of certain things that we use and try to fix issues in
00:42:52.574 --> 00:42:56.684 the ourselves or diagnose issues at least to know what we need to
00:42:56.684 --> 00:43:00.420 do because there we just don't have any other way to do it.
00:43:01.350 --> 00:43:03.080 Umm, so that's a big reason.
00:43:03.090 --> 00:43:06.458 Is it just gets us in a much more up to date version and with
00:43:06.458 --> 00:43:09.229 the newer runtime comes all kinds of benefits like
00:43:09.229 --> 00:43:12.489 theoretically faster runtime we can host in a significantly
00:43:12.489 --> 00:43:15.694 larger variety of environments as well as develop in other
00:43:15.694 --> 00:43:17.270 environments besides Windows.
00:43:18.260 --> 00:43:20.470 Uh, and uh.
00:43:20.480 --> 00:43:23.365 Theoretically, faster compile times, and there's just
00:43:23.365 --> 00:43:24.380 countless benefits.
00:43:26.030 --> 00:43:29.588 And then additionally, by modernizing, we can take better
00:43:29.588 --> 00:43:33.637 advantage of modern technologies that are difficult or impossible
00:43:33.637 --> 00:43:37.440 for us to use today, such as containerization, something that
00:43:37.440 --> 00:43:41.182 we are working on in current CEF, but we just due to the way
00:43:41.182 --> 00:43:44.802 things work with NET Framework, it's just something that's
00:43:44.802 --> 00:43:46.520 really difficult to support.
00:43:47.400 --> 00:43:52.924 Umm, and props to to Ben and to James for finding a way because
00:43:52.924 --> 00:43:54.910 it's not an easy thing.
00:43:54.990 --> 00:43:58.690 But, but theoretically, the upgrade makes that process.
00:44:01.480 --> 00:44:03.000 So much easier for us.
00:44:03.680 --> 00:44:07.690 So, uh, so moving on.
00:44:09.740 --> 00:44:10.630 Ohh man, it didn't do it.
00:44:10.640 --> 00:44:10.910 Hold on.
00:44:10.920 --> 00:44:11.980 I think it's cause I clicked something.
00:44:13.160 --> 00:44:14.010 Ah man, it didn't.
00:44:14.020 --> 00:44:14.550 Sorry, hold on.
00:44:14.840 --> 00:44:15.260 There we go.
00:44:17.300 --> 00:44:17.780 Alright.
00:44:19.370 --> 00:44:19.870 I love that.
00:44:21.010 --> 00:44:25.282 So, so just jumping into a couple of these uh concepts, so
00:44:25.282 --> 00:44:29.990 a lot of you that have listened to me monologue about Phoenix in
00:44:29.990 --> 00:44:34.407 the past have probably heard some of the word salad and word
00:44:34.407 --> 00:44:36.870 salad is a funny way to say it's.
00:44:37.060 --> 00:44:41.730 I have a lot of terminology that I use when I talk about Phoenix.
00:44:41.740 --> 00:44:45.300 That doesn't maybe align with how we do things in current
00:44:45.300 --> 00:44:48.370 stuff, or that you may just not be familiar with.
00:44:48.900 --> 00:44:51.858 So I wanted to cover a couple of the the kind of general concepts
00:44:51.858 --> 00:44:54.726 of Phoenix and the and then I'll get into why those make things
00:44:54.726 --> 00:44:55.040 better.
00:44:56.050 --> 00:44:59.574 So some of those concepts are the two main ones that I'll talk
00:44:59.574 --> 00:44:59.910 about.
00:44:59.920 --> 00:45:03.487 Here are plugins and pipelines plugins allowing us to group
00:45:03.487 --> 00:45:06.935 common functionality and pipelines, giving us the ability
00:45:06.935 --> 00:45:08.660 to extend that functionality.
00:45:09.190 --> 00:45:11.800 So getting into more detail, we'll start with plugins.
00:45:13.290 --> 00:45:14.960 Uh, I love that.
00:45:15.550 --> 00:45:19.316 So in in Phoenix, the core Phoenix in and of itself is
00:45:19.316 --> 00:45:23.220 nothing more than a set of tools providing common needs.
00:45:23.230 --> 00:45:26.833 So for example, that's database access, the ability to define
00:45:26.833 --> 00:45:30.147 endpoints, authentication, authorization pipelines which
00:45:30.147 --> 00:45:33.576 we'll talk about a moment, a scheduler, notifications, all
00:45:33.576 --> 00:45:37.180 that kind of stuff is sort of built into the core of Phoenix.
00:45:37.190 --> 00:45:41.294 But outside of those general tools, the Phoenix core itself
00:45:41.294 --> 00:45:41.500 is.
00:45:41.510 --> 00:45:42.380 That's all it is.
00:45:42.390 --> 00:45:43.610 It's just a the toolbox.
00:45:44.670 --> 00:45:46.490 You could think of the plugins as.
00:45:49.400 --> 00:45:49.940 Lost you?
00:45:57.070 --> 00:45:57.640 He'll be back.
00:45:58.390 --> 00:46:03.010 What timing, what timing, though we'll never know.
00:45:58.500 --> 00:45:59.090 He gone.
00:46:00.840 --> 00:46:02.050 I know it's good timing.
00:46:02.420 --> 00:46:04.860 I'll be back in like a couple of seconds so.
00:46:04.270 --> 00:46:05.580 I think you did it on purpose.
00:46:04.290 --> 00:46:06.540 He became unplugged when talking about plugins.
00:46:05.970 --> 00:46:07.220 I think you did it on purpose.
00:46:07.230 --> 00:46:08.120 Just leave us on the edge.
00:46:07.500 --> 00:46:10.760 Yeah, think about the plugins as.
00:46:08.260 --> 00:46:08.660 There.
00:46:08.670 --> 00:46:08.910 Right.
00:46:08.920 --> 00:46:09.630 There we go.
00:46:09.640 --> 00:46:10.250 I'm back.
00:46:09.650 --> 00:46:11.260 There he is. Uh-huh.
00:46:10.260 --> 00:46:11.130 I'm back.
00:46:10.560 --> 00:46:11.820 He's alive.
00:46:11.380 --> 00:46:12.030 I wish.
00:46:12.040 --> 00:46:15.839 I wish I could say I did do that as a cliffhanger, but I don't
00:46:15.839 --> 00:46:18.070 know where I cut out, but I'll just.
00:46:18.080 --> 00:46:21.920 I'll just say that, uh, I think I I think, OK, alright.
00:46:19.050 --> 00:46:20.330 Plugins as.
00:46:19.110 --> 00:46:21.760 We haven't heard you for, like, 10 minutes, Justin.
00:46:21.930 --> 00:46:25.850 So you can think of plugins then if the core is the toolbox.
00:46:25.860 --> 00:46:28.725 So you can think of the plugins as the House we build with those
00:46:28.725 --> 00:46:28.990 tools.
00:46:30.160 --> 00:46:33.503 So the plugins are built on top of the core and they could take
00:46:33.503 --> 00:46:36.376 advantage of any and all components from the core that
00:46:36.376 --> 00:46:38.831 they need to do whatever functionality they're
00:46:38.831 --> 00:46:39.510 implementing.
00:46:39.860 --> 00:46:44.070 So plugins can be something as large as ecommerce.
00:46:44.080 --> 00:46:47.488 The entire functionality and as granular as a customization on
00:46:47.488 --> 00:46:50.896 top of ecommerce like minimum shipping, dollar amount, umm and
00:46:50.896 --> 00:46:54.305 clients can build projects out of compositive plugins that are
00:46:54.305 --> 00:46:57.442 all customizable in and of themselves through a very cool
00:46:57.442 --> 00:46:58.200 system called.
00:47:01.220 --> 00:47:02.830 Pipelines.
00:47:03.670 --> 00:47:08.994 So pipelines are a structure in Phoenix that basically defines
00:47:08.994 --> 00:47:11.530 every operation in the system.
00:47:11.540 --> 00:47:15.374 Can take UM everything that the system does is part of a
00:47:15.374 --> 00:47:15.980 pipeline.
00:47:17.480 --> 00:47:17.980 Umm.
00:47:18.660 --> 00:47:22.029 Pipelines are built to be extendable, so if you have a
00:47:22.029 --> 00:47:25.827 pipeline that does any given thing and you have a client that
00:47:25.827 --> 00:47:29.380 says I wanna add behavior onto that, I wanna change that.
00:47:29.390 --> 00:47:31.900 I wanna do whatever pipelines are built to just.
00:47:32.130 --> 00:47:34.530 There you go, you can just add a behavior onto it.
00:47:35.720 --> 00:47:39.137 So if you want to think of it kind of like a checklist that an
00:47:39.137 --> 00:47:41.850 operation might follow, that's a a decent analog.
00:47:42.150 --> 00:47:46.717 And as a specific example, the way that shipping is built right
00:47:46.717 --> 00:47:47.930 now is this step.
00:47:47.940 --> 00:47:53.376 One of that process is to go grab your rate quotes from your
00:47:53.376 --> 00:47:55.070 different provider.
00:47:55.080 --> 00:47:56.850 So let's say that you're using UPS and FedEx.
00:47:56.860 --> 00:48:00.106 Step one is to go ask UPS and FedEx for rate quotes for the
00:48:00.106 --> 00:48:01.730 product you're trying to ship.
00:48:01.940 --> 00:48:06.080 Step 2 might be that you've got your minimum dollar amounts, so
00:48:06.080 --> 00:48:10.090 if UPS came back and said that UPS ground is only 795 but the
00:48:10.090 --> 00:48:13.777 clients like I never want to charge less than $10.00 for
00:48:13.777 --> 00:48:17.723 shipping, then you can attach a hook onto that pipeline that
00:48:17.723 --> 00:48:21.540 sets the minimum the dollar amount on all of those to $10.
00:48:21.960 --> 00:48:22.160 Yeah.
00:48:22.170 --> 00:48:25.567 If it's less than that, and that's actually functionality
00:48:25.567 --> 00:48:29.315 that James built already as part of our ongoing process sort of
00:48:29.315 --> 00:48:32.420 validating the architecture as it's built right now.
00:48:32.970 --> 00:48:37.814 So we have a really cool, robust shipping rate, quotes customizer
00:48:37.814 --> 00:48:41.999 type of thing built into a plugin that allows you to set
00:48:41.999 --> 00:48:46.550 uh, minimum and maximum amounts and you can scale by percent.
00:48:46.560 --> 00:48:49.973 You can scale different percents per different shipping providers
00:48:49.973 --> 00:48:51.370 and all that kind of stuff.
00:48:51.420 --> 00:48:54.210 And it natively supports every shipping provider.
00:48:54.440 --> 00:48:57.662 So in current CEF, if we wanna support something like a minimum
00:48:57.662 --> 00:49:00.583 rate quote or anything like that, we would either have to
00:49:00.583 --> 00:49:03.856 change how we build, change how we save those to implement it at
00:49:03.856 --> 00:49:06.878 that point, which would be complicated or build it manually
00:49:06.878 --> 00:49:10.000 into every individual provider that we wanna support that in.
00:49:10.250 --> 00:49:12.792 In Phoenix, the concept of pipelines makes it something
00:49:12.792 --> 00:49:14.880 that's natively supported for every provider.
00:49:15.250 --> 00:49:18.166 We never have to touch this and minimum rate quotes system
00:49:18.166 --> 00:49:21.082 again, this plug in it just works and you can add whatever
00:49:21.082 --> 00:49:23.850 pipelines or plugins or shipping plugins that you want.
00:49:24.500 --> 00:49:29.639 They'll hook into that process and just it feeds it all through
00:49:29.210 --> 00:49:32.676 And it can do parallelization with the rates request so that
00:49:29.639 --> 00:49:29.960 umm.
00:49:32.676 --> 00:49:36.142 they're all happening at the same time, as opposed to having
00:49:35.800 --> 00:49:36.010 Yep.
00:49:36.142 --> 00:49:39.778 to do them individually and take that much longer to go through
00:49:39.778 --> 00:49:43.130 234 different shipping providers just to get all the rates
00:49:43.130 --> 00:49:44.210 collected together.
00:49:44.600 --> 00:49:45.150 Yep.
00:49:45.190 --> 00:49:48.109 So yeah, that kind of feeds into this next bit here that, uh,
00:49:48.109 --> 00:49:49.710 there are two kinds of pipelines.
00:49:50.360 --> 00:49:53.791 There are serial and parallel pipelines, a serial pipeline,
00:49:53.791 --> 00:49:57.050 all the extensions of the pipeline run one at a time and
00:49:57.050 --> 00:50:00.310 the results of the last step are fed into the next step.
00:50:00.320 --> 00:50:03.639 So you can sort of alter that result as it flows to the
00:50:03.639 --> 00:50:06.070 pipeline, add on to it, removed from it.
00:50:06.080 --> 00:50:06.670 Do whatever.
00:50:06.980 --> 00:50:07.450 Uh.
00:50:07.460 --> 00:50:10.313 And then the ultimate final result is whatever every step of
00:50:10.313 --> 00:50:11.810 the pipeline did to that result.
00:50:12.340 --> 00:50:16.537 And then the parallel pipelines are all of the attached
00:50:16.537 --> 00:50:21.259 extensions run together at the same exact time, and the result
00:50:21.259 --> 00:50:25.756 of that pipeline is all of the results of each extension or
00:50:25.756 --> 00:50:28.380 hook and in an array or in a list.
00:50:29.160 --> 00:50:29.710 Umm.
00:50:29.800 --> 00:50:35.810 So umm, that's kind of one of the biggest concepts here.
00:50:36.360 --> 00:50:40.622 And I'll I'll touch a little bit more on some of the some of the
00:50:40.622 --> 00:50:44.622 fun stuff that that allows us to do umm and some of the neat
00:50:44.622 --> 00:50:47.180 things that are built along with that.
00:50:47.390 --> 00:50:51.762 But moving on for now, you get to see my my awesome analogy
00:50:51.762 --> 00:50:53.730 that hopefully is readable.
00:50:54.000 --> 00:50:55.720 I forgot I made this one take 10 seconds.
00:50:58.330 --> 00:51:02.500 Uh, OK, so how does it come together?
00:51:03.230 --> 00:51:06.208 Plugins allow us to define functionality in discrete
00:51:06.208 --> 00:51:09.636 pieces, and pipelines allow us to extend that functionality,
00:51:09.636 --> 00:51:12.840 whether for an individual client or from another plugin.
00:51:12.850 --> 00:51:15.717 Altogether, all these things give us a very flexible system
00:51:15.717 --> 00:51:18.633 that makes it easier to group functionality together and opt
00:51:18.633 --> 00:51:21.070 into or out of it as an individual client needs or
00:51:21.070 --> 00:51:22.170 doesn't need something.
00:51:22.360 --> 00:51:25.503 So that's a big difference compared to how it works in
00:51:25.503 --> 00:51:28.875 current CEF, where things are sort of everything you could
00:51:28.875 --> 00:51:32.304 need is already there and we sort of opt in or opt out with
00:51:32.304 --> 00:51:33.390 different settings.
00:51:33.880 --> 00:51:37.503 But you still have the compilation cost of compiling
00:51:37.503 --> 00:51:38.460 all that code.
00:51:38.470 --> 00:51:42.134 You still have the the disk space of and the memory space of
00:51:42.134 --> 00:51:45.859 actually having that stuff on disk and loaded into memory and
00:51:45.859 --> 00:51:46.460 et cetera.
00:51:46.830 --> 00:51:49.448 Even if you don't need it and you're not using it, and
00:51:49.448 --> 00:51:52.447 additionally opting out of some of that functionality, you can
00:51:52.447 --> 00:51:55.446 sort of think of it like a game of Django where you, if you're
00:51:55.446 --> 00:51:58.444 like, I don't need this thing and you pull the Jenga block out
00:51:58.444 --> 00:52:01.348 and you didn't realize it was the only thing holding the top
00:52:01.348 --> 00:52:02.110 of the tower up.
00:52:03.020 --> 00:52:05.010 Uh, and down it goes.
00:52:05.580 --> 00:52:08.140 So, not quite so apocalyptic, really.
00:52:08.150 --> 00:52:09.620 But you get the you get the picture.
00:52:09.960 --> 00:52:10.380 Umm.
00:52:11.100 --> 00:52:14.055 Whereas with Phoenix the the analogy I like to use is the the
00:52:14.055 --> 00:52:14.770 Phoenix burger.
00:52:15.080 --> 00:52:16.020 UM where?
00:52:17.080 --> 00:52:20.366 Uh, you can think of it as all the different pieces are just
00:52:20.366 --> 00:52:23.653 ingredients you could add to your burger and you know it's a
00:52:23.653 --> 00:52:24.030 burger.
00:52:24.040 --> 00:52:27.113 Whether you have all of these or I don't, it's probably not a
00:52:27.113 --> 00:52:27.460 burger.
00:52:27.470 --> 00:52:30.328 If you don't have any of them but umm, but you get the
00:52:30.328 --> 00:52:33.551 picture, you can opt into and out of the ingredients that you
00:52:33.551 --> 00:52:36.722 want on your burger in your instance of Phoenix, rather than
00:52:36.722 --> 00:52:40.152 being given an everything burger and then picking off the Pickles
00:52:40.152 --> 00:52:41.400 if you don't need those.
00:52:43.460 --> 00:52:48.095 So just generally a much more kind of streamlined way of
00:52:48.095 --> 00:52:53.056 approaching, uh, the composition of a of a any given project
00:52:53.056 --> 00:52:56.390 which just makes makes life easier. Umm.
00:52:58.930 --> 00:53:01.689 They're kind of is a I think it's supposed to be Mayo and
00:53:01.689 --> 00:53:02.070 ketchup.
00:53:02.110 --> 00:53:02.660 I don't know.
00:53:02.670 --> 00:53:06.507 This was the only this was the only unwatermarked royalty free
00:53:06.507 --> 00:53:10.283 image that came up when I typed in exploded view of burger on
00:53:10.283 --> 00:53:11.380 Google Images. So.
00:53:14.210 --> 00:53:15.030 That's brilliant.
00:53:15.710 --> 00:53:19.520 So anyway, uh so with all that said?
00:53:19.840 --> 00:53:20.430 Umm.
00:53:21.460 --> 00:53:21.930 What?
00:53:22.740 --> 00:53:23.930 What's done so far?
00:53:24.500 --> 00:53:27.307 Ohh I didn't have a ohh I do have something on this page so
00:53:27.307 --> 00:53:28.150 we'll get to that.
00:53:28.720 --> 00:53:29.610 So what's functional?
00:53:29.620 --> 00:53:31.860 So far, we've built pipelines.
00:53:31.870 --> 00:53:32.830 Those are already working.
00:53:32.840 --> 00:53:37.889 We have database functionality working where plugins can define
00:53:37.889 --> 00:53:39.230 their own tables.
00:53:39.880 --> 00:53:43.565 James has been working on a system that allows plugins to
00:53:43.565 --> 00:53:45.790 actually extend individual tables.
00:53:46.600 --> 00:53:48.090 We haven't fully settled on it yet.
00:53:48.140 --> 00:53:51.050 We're still kind of iterating a little bit and playing around
00:53:51.050 --> 00:53:53.820 with it, but that's something that could be there as well.
00:53:54.170 --> 00:53:55.220 We have a scheduler.
00:53:55.230 --> 00:53:57.000 We have a custom mapping system.
00:53:57.570 --> 00:54:01.741 We've built a caching system that's built into pipelines,
00:54:01.741 --> 00:54:06.128 which is pretty cool, and we have the plugin system working,
00:54:06.128 --> 00:54:10.515 so these are all pieces of the Phoenix core that are already
00:54:10.515 --> 00:54:14.974 functional and we've, like I said, James and I have been in a
00:54:14.974 --> 00:54:19.290 process where we're sort of porting some of the current set
00:54:19.290 --> 00:54:23.893 functionality into Phoenix as we speak to sort of validate that
00:54:23.893 --> 00:54:28.136 our uh architecture ideas are sane and functional and that
00:54:28.136 --> 00:54:32.020 they will work as well as we as we believe they will.
00:54:32.030 --> 00:54:35.664 So and it's been a really cool process because it's shown us,
00:54:35.664 --> 00:54:38.360 number one, that we were pretty much correct.
00:54:38.370 --> 00:54:41.504 Everything has worked really well, but #2 it's also given us
00:54:41.504 --> 00:54:44.433 a lot of really fun ideas of like, oh, but this actually
00:54:44.433 --> 00:54:46.540 shows that we could have done it better.
00:54:46.850 --> 00:54:49.547 And that's actually James had the idea for parallel pipelines
00:54:49.547 --> 00:54:51.983 when he started pulling the shipping functionality into
00:54:51.983 --> 00:54:54.550 Phoenix, and it was something I hadn't even thought about.
00:54:55.030 --> 00:54:57.370 But now it's like that makes perfect sense.
00:54:56.270 --> 00:55:00.853 And the the way that we designed and built the parallel pipeline
00:55:00.853 --> 00:55:04.378 went through like 8 different major iterations of
00:55:04.378 --> 00:55:08.538 functionality on how it was going to work until we finally
00:55:08.538 --> 00:55:13.050 settled on something like what we did now where the pipeline is
00:55:13.050 --> 00:55:17.563 a series of pipes, a series of steps, one of those pipes is the
00:55:17.563 --> 00:55:18.550 parallel pipe.
00:55:18.630 --> 00:55:21.663 And then we started trying to like incorporate more and more
00:55:21.663 --> 00:55:23.950 plumbing technology like terminology into it.
00:55:23.960 --> 00:55:28.760 So like a pipe fitting and junctures and and joints and all
00:55:28.760 --> 00:55:29.640 that stuff.
00:55:29.650 --> 00:55:31.697 And we were like, OK, we're going a little too far with
00:55:31.697 --> 00:55:31.880 this.
00:55:31.890 --> 00:55:32.430 Let's calm down.
00:55:33.010 --> 00:55:36.844 Uh, so that we weren't blowing everybody up with with too much
00:55:33.620 --> 00:55:34.050 Yeah.
00:55:34.240 --> 00:55:34.550 Yeah.
00:55:34.560 --> 00:55:37.930 So yeah, yeah.
00:55:36.844 --> 00:55:37.210 stuff.
00:55:37.940 --> 00:55:40.673 So you can you can probably remember, like I said earlier,
00:55:40.673 --> 00:55:43.500 one of the biggest goals for this is developer productivity.
00:55:43.720 --> 00:55:47.570 And so whenever we start digging into fun stuff like this, a lot
00:55:47.570 --> 00:55:50.710 of the times will go all in on it and make it crazy.
00:55:50.720 --> 00:55:54.949 And then we're like, OK, now how many people, how many people are
00:55:54.949 --> 00:55:57.000 gonna be able to work with this?
00:55:57.060 --> 00:55:59.879 Like if I get hit by a bus, is somebody gonna be able to fix
00:55:59.879 --> 00:56:00.110 this?
00:56:00.850 --> 00:56:03.986 And then we kind of scale it back from there where it's kind
00:56:03.986 --> 00:56:07.379 of like we're trying to find the simplest way to implement things
00:56:07.379 --> 00:56:10.310 where we're not writing intentionally slow, crappy code,
00:56:10.310 --> 00:56:13.240 but we're also not writing something that's a jet engine
00:56:13.240 --> 00:56:16.120 that only a certified jet engine technician could have.
00:56:16.130 --> 00:56:20.380 Any clue how to touch umm so that kind of thing?
00:56:21.850 --> 00:56:23.400 So what's coming up next for us?
00:56:23.410 --> 00:56:27.354 Right now we're working on some some front end architecture
00:56:27.354 --> 00:56:31.233 using a lot of the similar concepts, so we want plugins to
00:56:31.233 --> 00:56:35.177 be able to define front end components and things like that
00:56:35.177 --> 00:56:39.187 and pull those in, umm, and then porting, continuing to port
00:56:39.187 --> 00:56:43.263 current set functionality into Phoenix as plugins and uh, you
00:56:43.263 --> 00:56:45.170 know, all that kind of stuff.
00:56:45.500 --> 00:56:47.890 We've already been working on shipping.
00:56:48.050 --> 00:56:50.805 We've got a couple other ones that that probably make a lot of
00:56:50.805 --> 00:56:53.649 sense to start pulling in around like pricing logic and all that
00:56:53.649 --> 00:56:54.480 kind of stuff, but.
00:56:57.270 --> 00:56:59.110 I got one last silly thing here.
00:57:00.620 --> 00:57:04.483 Uh, just, you know, thought it was kind of hilariously on the
00:57:04.483 --> 00:57:08.159 nose for for me specifically and for, I guess, software in
00:57:08.159 --> 00:57:10.340 general, but you know, it's funny.
00:57:10.640 --> 00:57:12.470 Yeah, like estimating, yeah.
00:57:11.160 --> 00:57:12.690 Uh, yeah.
00:57:14.280 --> 00:57:19.481 So but one last quick example, I wanted to give to sort of sell
00:57:19.481 --> 00:57:24.683 the the the neatness I guess of this system, umm, and this is a
00:57:24.683 --> 00:57:29.560 thought process I had a long time ago that kind of explains
00:57:29.560 --> 00:57:33.380 why the plugin and pipeline system is so cool.
00:57:34.700 --> 00:57:39.421 So let's say that a client comes to us one day and for some
00:57:39.421 --> 00:57:44.300 reason, uh, they say hey, so I want to be able to set a stock
00:57:44.300 --> 00:57:49.100 threshold on on every product, and if there's less than that
00:57:49.100 --> 00:57:54.136 number of that product in stock, I want to mark up the price by
00:57:54.136 --> 00:57:56.890 50% or something like that, right?
00:57:56.940 --> 00:58:02.160 For whatever reason, that that would be pretty difficult to
00:58:02.160 --> 00:58:03.900 implement right now.
00:58:04.870 --> 00:58:08.098 It would have to be probably its own pricing provider or we would
00:58:08.098 --> 00:58:10.836 have to build it on top of whatever pricing provider we
00:58:10.836 --> 00:58:14.015 currently use and that's how we would build that in current step
00:58:14.015 --> 00:58:17.048 is you if they were like we're using price lists or whatever,
00:58:17.048 --> 00:58:19.200 but we also want this markup functionality.
00:58:19.410 --> 00:58:22.909 Well, then we'd have to go into the price list provider and add
00:58:22.909 --> 00:58:26.353 this into that, or if they're using price rules that into that
00:58:26.353 --> 00:58:29.688 and then if somebody else two years from now came and said I
00:58:29.688 --> 00:58:33.023 want stock based markups, but they're not using price rules,
00:58:33.023 --> 00:58:36.412 well then we'd have to at best copy paste it and hope it just
00:58:36.412 --> 00:58:38.490 works in the other provider at worst.
00:58:38.560 --> 00:58:41.324 Effectively, we're rebuilding it a second time, even though we
00:58:41.324 --> 00:58:42.070 already did this.
00:58:42.260 --> 00:58:45.410 So that's kind of part of the part of the thing that we wanted
00:58:45.410 --> 00:58:46.010 to overcome.
00:58:46.180 --> 00:58:50.522 So on Phoenix, you would have a plug in that's just called stock
00:58:50.522 --> 00:58:50.990 markup.
00:58:51.440 --> 00:58:54.955 You know, like product price, stock market, whatever you wanna
00:58:54.955 --> 00:58:58.414 call it and it would hook into the pipeline for calculating a
00:58:58.414 --> 00:59:00.200 products price in that pipeline.
00:59:00.210 --> 00:59:02.888 We would check we would calculate the stock for that
00:59:02.888 --> 00:59:06.173 product and then we would check if it's underneath threshold for
00:59:06.173 --> 00:59:09.307 that and if it is then we would just return the same price we
00:59:09.307 --> 00:59:12.592 had already calculated increased by 50% or whatever their markup
00:59:12.592 --> 00:59:13.300 percentage is.
00:59:13.590 --> 00:59:17.289 We could make the entire system customizable with its own
00:59:17.289 --> 00:59:20.989 individual settings and longer term, we wanna build those
00:59:20.989 --> 00:59:24.944 settings into their own pages in the administrative portal so
00:59:24.944 --> 00:59:28.580 that they're, you know, nice and organized and editable.
00:59:29.600 --> 00:59:33.599 But then that logic exists for any pricing logic that ever
00:59:33.599 --> 00:59:35.700 comes along, because it's just.
00:59:36.670 --> 00:59:37.720 Here's a price.
00:59:37.790 --> 00:59:42.112 Feed it into the next step and if the client wanted additional
00:59:42.112 --> 00:59:46.023 pricing customizations after that, after the 50% or even
00:59:46.023 --> 00:59:50.140 before the 50% markup, we could apply additional plugins in
00:59:50.140 --> 00:59:54.600 whatever order we want to apply those modifications to alter the
00:59:54.600 --> 00:59:58.717 price down the line and that level of sort of modularity is
00:59:58.717 --> 01:00:02.834 just really cool and it has a lot of great implications for
01:00:02.834 --> 01:00:03.040 us.
01:00:03.050 --> 01:00:07.435 Being able to truly reuse what starts as a client customization
01:00:07.435 --> 01:00:10.655 for a much larger set of possible later client
01:00:10.655 --> 01:00:14.971 customizations without having to kind of boil the ocean all at
01:00:14.971 --> 01:00:18.876 once and try to build it in a lot of different places or
01:00:18.876 --> 01:00:23.056 significantly alter existing architecture to support that as
01:00:23.056 --> 01:00:25.180 just a thing the platform does.
01:00:26.220 --> 01:00:29.870 So that's uh, that's it.
01:00:29.920 --> 01:00:33.418 I could talk for another hour, probably as most of you have
01:00:33.418 --> 01:00:33.710 seen.
01:00:34.520 --> 01:00:34.870 I'll.
01:00:38.160 --> 01:00:39.770 I I love your monologues.
01:00:39.830 --> 01:00:44.654 They're very enjoyable and just to kind of, but wrapped together
01:00:44.654 --> 01:00:45.990 here for a second.
01:00:46.450 --> 01:00:50.030 Umm, so basically the next steps in general would be that we're
01:00:50.030 --> 01:00:53.274 planning out and this is something that's gonna take some
01:00:53.274 --> 01:00:56.407 time, but there will of course be more proof of concept
01:00:56.407 --> 01:00:58.980 validation that you and James are working on.
01:00:59.390 --> 01:01:03.029 But we're planning out, you know, the sort of the same
01:01:03.029 --> 01:01:06.933 architecture process that we've been going through for our
01:01:06.933 --> 01:01:10.771 client projects doing the same thing for Phoenix and then
01:01:10.771 --> 01:01:14.873 starting to roll in additional time for the overall team once
01:01:14.873 --> 01:01:16.660 we get certain areas ready.
01:01:17.520 --> 01:01:19.973 And so did you want to speak to that at all for a couple of
01:01:19.973 --> 01:01:20.300 minutes?
01:01:21.940 --> 01:01:22.670 Uh, yeah.
01:01:22.680 --> 01:01:25.778 So if I'm understanding you talking about like the the sort
01:01:25.778 --> 01:01:29.032 of architecting it out and and getting the requirements set in
01:01:29.032 --> 01:01:31.150 stone and all that kind of stuff, right?
01:01:31.470 --> 01:01:31.810 Yes, Sir.
01:01:32.350 --> 01:01:32.820 Yeah.
01:01:32.870 --> 01:01:38.256 So a lot of what we've done thus far has been very kind of
01:01:38.256 --> 01:01:39.260 grassroots.
01:01:42.330 --> 01:01:43.800 What's the word I'm looking for?
01:01:44.290 --> 01:01:47.710 Exploration, I guess of of ideas and.
01:01:49.150 --> 01:01:51.530 So there hasn't really been a lot of planning to it.
01:01:52.030 --> 01:01:55.280 The code base is actually fairly large now and we're getting to a
01:01:55.280 --> 01:01:57.250 point where most of these concepts are.
01:01:58.070 --> 01:02:02.129 Tested and validated well enough that they're pretty well set in
01:02:02.129 --> 01:02:06.125 stone and we're going to a point where we need to define those,
01:02:06.125 --> 01:02:09.810 document them and determine instead of it just being like,
01:02:09.810 --> 01:02:13.619 uh, we'll go add this at some point, we'll actually start to
01:02:13.619 --> 01:02:17.116 nail down what are the requirements for pipelines, what
01:02:17.116 --> 01:02:18.490 do we need them to do?
01:02:18.880 --> 01:02:23.060 What are the requirements for our custom scheduler and the
01:02:23.060 --> 01:02:27.241 Mapper and what do plugins need to be able to do and start
01:02:27.241 --> 01:02:28.800 isolating out what is?
01:02:28.850 --> 01:02:31.380 What is important for us to focus on now versus what's a
01:02:31.380 --> 01:02:33.200 stretch goal and all that kind of stuff?
01:02:33.770 --> 01:02:38.590 UM and that should really help to kind of refine our focus on
01:02:38.590 --> 01:02:43.255 the development process and hopefully get this in the hands
01:02:43.255 --> 01:02:46.210 of more people sooner than later, so.
01:02:47.260 --> 01:02:48.010 Very awesome.
01:02:48.320 --> 01:02:52.576 Umm, I also believe that there may be A and I'm saying it this
01:02:52.576 --> 01:02:53.590 way on purpose.
01:02:53.600 --> 01:02:57.087 I I know there is one, but maybe an architecture diagram that
01:02:57.087 --> 01:02:59.450 would be ready for sharing at some point.
01:02:59.780 --> 01:03:02.935 Do you all wanna share that Miro link with the group or you wanna
01:03:02.935 --> 01:03:04.800 wait till it's a little further along?
01:03:06.060 --> 01:03:07.660 It only has one thing in it right now.
01:03:06.580 --> 01:03:08.820 Uh, yeah.
01:03:08.920 --> 01:03:12.070 The main architecture diagram, ironically, is the Phoenix
01:03:12.070 --> 01:03:12.450 burger.
01:03:12.770 --> 01:03:14.180 That's the that's.
01:03:14.530 --> 01:03:15.290 That's amazing.
01:03:15.730 --> 01:03:18.360 That's the main diagram that I have right now.
01:03:18.540 --> 01:03:20.791 Uh, that sort of illustrates the, you know, the fact that
01:03:20.791 --> 01:03:23.197 it's each layer sort of builds off of each other and all that
01:03:23.197 --> 01:03:24.090 kind of fun stuff, but.
01:03:26.640 --> 01:03:27.690 But yeah, I mean, I would love to.
01:03:26.810 --> 01:03:30.898 We need to put that on our website, the Phoenix Burger.
01:03:28.800 --> 01:03:29.020 Yeah.
01:03:29.830 --> 01:03:30.580 Yep.
01:03:30.898 --> 01:03:31.190 Umm.
01:03:31.670 --> 01:03:35.269 But yeah, I would love to go through and and and make a a
01:03:35.269 --> 01:03:39.178 kind of more, uh, presentable diagram as part of what I wanted
01:03:39.178 --> 01:03:43.212 to do in this in this meeting or in this presentation is to kind
01:03:40.250 --> 01:03:40.520 I'm.
01:03:43.212 --> 01:03:46.624 of start to make everyone familiar with these terms so
01:03:46.624 --> 01:03:50.596 that it's something we can all sort of speak to and understand,
01:03:50.596 --> 01:03:52.830 especially once it starts becoming.
01:03:51.680 --> 01:03:53.570 And if you want to throw it up, I just put it in your chat.
01:03:52.030 --> 01:03:52.470 You know.
01:03:55.460 --> 01:03:55.950 Wait, hold on.
01:03:56.300 --> 01:03:58.710 Yeah, I can put it out there. Thanks.
01:03:59.270 --> 01:04:03.580 I got teams on my main screen actually, never mind.
01:04:03.590 --> 01:04:04.420 I'm missing that screen.
01:04:04.430 --> 01:04:04.800 That's good.
01:04:05.360 --> 01:04:09.510 I got you, but that's the that's the Phoenix burger light.
01:04:09.640 --> 01:04:13.568 And then the Phoenix burger full is on your screen, but just in
01:04:13.568 --> 01:04:17.312 case folks wanna see that Miro Link as well and feel free to
01:04:14.970 --> 01:04:15.090 Yeah.
01:04:16.090 --> 01:04:16.660 Yeah.
01:04:16.890 --> 01:04:19.340 And let me put that in the chat as well.
01:04:17.312 --> 01:04:18.110 check it out.
01:04:18.900 --> 01:04:22.771 So the the reality of it is actually a blend between these
01:04:22.771 --> 01:04:24.740 two versions of the documents.
01:04:26.250 --> 01:04:28.337 The one on the left is when I eventually written one of the
01:04:28.337 --> 01:04:30.285 right is more accurate, but there's a little bit of the
01:04:30.285 --> 01:04:32.511 stuff that's on the left that is actually supposed to be on the
01:04:32.511 --> 01:04:32.720 right.
01:04:32.730 --> 01:04:37.713 So this isn't perfect, but it is the idea behind how the shipping
01:04:37.713 --> 01:04:38.770 process works.
01:04:38.780 --> 01:04:41.630 So if you wanna zoom in to the right side client layer.
01:04:42.150 --> 01:04:42.500 Hold on.
01:04:42.510 --> 01:04:43.680 I'm remembering how moral works.
01:04:42.930 --> 01:04:45.190 Umm yeah.
01:04:43.690 --> 01:04:44.050 There we go.
01:04:44.000 --> 01:04:47.206 Ohh sorry guys, I just modified the permission so now everyone
01:04:47.206 --> 01:04:48.530 should be able to view it.
01:04:48.540 --> 01:04:51.070 Try it again if you don't mind, OK.
01:04:49.440 --> 01:04:49.770 Oh yeah.
01:04:49.780 --> 01:04:50.280 No, no problem.
01:04:56.290 --> 01:04:59.780 And then we'll we'll wrap up with just any other comments.
01:05:00.030 --> 01:05:02.030 Just last comments from James and Bill.
01:05:02.760 --> 01:05:03.050 Yeah.
01:05:03.060 --> 01:05:05.090 And and also if anybody has questions.
01:05:04.000 --> 01:05:04.180 Yeah.
01:05:05.100 --> 01:05:05.390 Uh.
01:05:05.440 --> 01:05:08.773 More than happy to answer, I know we're also at like 20
01:05:08.773 --> 01:05:11.511 minutes left and there's multiple people at a
01:05:11.511 --> 01:05:12.880 presentation, so sorry.
01:05:11.560 --> 01:05:14.160 Yeah, well, this is a good one.
01:05:14.220 --> 01:05:15.130 This is a good one.
01:05:15.380 --> 01:05:18.592 We may run out of time for some of the other talks, but we will
01:05:18.592 --> 01:05:20.600 loop those back in on the next meeting.
01:05:22.000 --> 01:05:23.010 I think this is great.
01:05:23.020 --> 01:05:26.375 Kudos to you guys for pressing on this and if anybody does
01:05:26.375 --> 01:05:30.127 wanna get, you know, involved in this, hands on and you'd like to
01:05:30.127 --> 01:05:30.810 participate.
01:05:30.820 --> 01:05:34.010 Once we're ready, feel free to message.
01:05:34.070 --> 01:05:38.918 I mean, I would say where would they message, would that be to
01:05:38.270 --> 01:05:38.760 It would.
01:05:38.890 --> 01:05:39.420 It would.
01:05:38.918 --> 01:05:42.150 Brandon and Daniel were planning or yeah.
01:05:39.790 --> 01:05:43.410 It would probably be it probably to like Brandon, Eric.
01:05:44.430 --> 01:05:45.090 OK, perfect.
01:05:44.600 --> 01:05:45.550 Yeah, Brendan.
01:05:45.620 --> 01:05:46.770 Yep, me and Eric would be good.
01:05:46.780 --> 01:05:49.357 And then I know the PM were paying close attention to all
01:05:49.357 --> 01:05:49.580 this.
01:05:49.590 --> 01:05:50.860 There will be a pop quiz.
01:05:50.870 --> 01:05:53.780 So you know, just wanted that out there.
01:05:52.350 --> 01:05:54.080 Yeah, yeah, I know. This was.
01:05:54.090 --> 01:05:57.557 Yeah, this was probably a very enthralling yeah, it was very
01:05:54.890 --> 01:05:56.470 Ah, you have to remember it's Benix burger.
01:05:57.557 --> 01:06:01.195 enthralling for all the people that will never actually see the
01:06:01.195 --> 01:06:01.480 code.
01:06:01.910 --> 01:06:05.536 And it's just, again, a bunch of word salad, but hopefully it was
01:06:05.536 --> 01:06:08.942 at least somewhat interesting, and if not, I hope at least my
01:06:08.942 --> 01:06:10.810 goofy transitions made you laugh.
01:06:12.270 --> 01:06:13.040 Good job.
01:06:13.230 --> 01:06:16.640 Thank you guys for really putting all this effort in.
01:06:16.650 --> 01:06:20.199 So we can keep delivering the best solution out there.
01:06:20.199 --> 01:06:20.780 Possible.
01:06:20.790 --> 01:06:21.560 That's awesome.
01:06:22.250 --> 01:06:24.400 Speaking of the best solution possible.
01:06:24.810 --> 01:06:26.500 Thanks again to James and Brendan.
01:06:27.470 --> 01:06:32.616 JLR, if you were ready to, you know, just kind of talk about
01:06:32.616 --> 01:06:36.160 what is common model, why did we make it?
01:06:36.250 --> 01:06:38.560 What was the pain that we're trying to solve with it?
01:06:39.010 --> 01:06:42.903 What exactly is it and what's the output from our having built
01:06:42.903 --> 01:06:46.240 common model and kind of the game plan going forward?
01:06:46.250 --> 01:06:46.940 That would be awesome.
01:06:47.550 --> 01:06:48.470 Yeah, yeah, I'd be happy to.
01:06:48.900 --> 01:06:49.360 Umm.
01:06:49.360 --> 01:06:49.830 OK, awesome.
01:06:49.920 --> 01:06:53.347 So yeah, so for the common model, you know it's it's funny
01:06:53.347 --> 01:06:56.310 because you talked about career progression stuff.
01:06:56.320 --> 01:06:59.186 And I've I've seen it come first hand and sent come full circle
01:06:59.186 --> 01:06:59.410 here.
01:06:59.680 --> 01:07:02.660 When I started it connect, it was pretty painful to write to
01:07:02.660 --> 01:07:05.200 integrations and I think Clint would speak to that.
01:07:05.940 --> 01:07:08.210 Most of our integrations took over very, very long time.
01:07:08.610 --> 01:07:09.100 Umm.
01:07:09.430 --> 01:07:12.532 The projects were shaky at best in terms of getting them
01:07:12.532 --> 01:07:14.220 launched and getting them live.
01:07:14.890 --> 01:07:17.826 Things have really come a long way in the last six months and
01:07:17.826 --> 01:07:20.572 it's it's really credit to the entire team, the work that
01:07:20.572 --> 01:07:22.940 they've done on the the COM model is just insane.
01:07:23.130 --> 01:07:27.708 So I will share my screen and show you this is sadly my code
01:07:27.708 --> 01:07:29.660 when I first started here.
01:07:29.670 --> 01:07:30.060 Clarity.
01:07:30.810 --> 01:07:33.640 But this is what a customer sync would look like before.
01:07:34.190 --> 01:07:37.565 This is several 100 lines of writing code and writing
01:07:37.565 --> 01:07:41.627 mappings and writing like these are just mappings that we'd have
01:07:41.627 --> 01:07:44.190 to write on every single project we did.
01:07:44.680 --> 01:07:47.190 Every time we did a project for every system you worked on.
01:07:47.200 --> 01:07:50.258 So if we had five developers on the team, five guys all had to
01:07:50.258 --> 01:07:53.366 write this and figure out where these fields went to and we had
01:07:53.366 --> 01:07:56.376 to wait for the documents from the client that may or may not
01:07:56.376 --> 01:07:56.910 be correct.
01:07:56.920 --> 01:08:02.423 And this it's about 400 lines of code to do a simple customer
01:08:02.423 --> 01:08:05.530 sync for an old style integration.
01:08:05.540 --> 01:08:08.970 So that's where we came from about two years ago.
01:08:09.900 --> 01:08:13.481 So what we decided was we come up with a common model and what
01:08:13.481 --> 01:08:16.948 the common model does is we've identified all of the systems
01:08:16.948 --> 01:08:19.790 that we work with or at least the the major ones.
01:08:19.960 --> 01:08:24.140 And we've tried to communize those things as much as we can.
01:08:24.150 --> 01:08:28.590 So think of it like, umm, similar entities on either side.
01:08:28.600 --> 01:08:30.220 So say we had butter and ghee, right?
01:08:30.230 --> 01:08:31.030 They are similar.
01:08:31.520 --> 01:08:34.200 We can now swap those two things in and out with our recipes.
01:08:34.210 --> 01:08:34.360 Right.
01:08:34.370 --> 01:08:35.030 You can cook with butter.
01:08:35.040 --> 01:08:35.700 You can cook with ghee.
01:08:37.340 --> 01:08:40.161 We can use those in in swap between them, but they're not
01:08:40.161 --> 01:08:40.550 perfect.
01:08:40.560 --> 01:08:44.107 So what I want people to understand is the common model
01:08:44.107 --> 01:08:48.225 itself is a mapping between two systems, so it would allow us to
01:08:48.225 --> 01:08:52.216 translate a HubSpot contact and company into a clarity account
01:08:52.216 --> 01:08:55.700 and customer umm or user and and whatever it might be.
01:08:56.200 --> 01:09:00.418 It doesn't, though it does not allow us to do the workflows
01:09:00.418 --> 01:09:00.840 right.
01:09:00.850 --> 01:09:03.348 It doesn't allow us to to write the custom logic in between
01:09:03.348 --> 01:09:03.890 those things.
01:09:03.900 --> 01:09:06.586 Those two things still have to be figured out, so the amount of
01:09:06.586 --> 01:09:09.231 butter you might cook with in one recipe and the amount of the
01:09:09.231 --> 01:09:10.910 you might cook with in the same recipe.
01:09:11.140 --> 01:09:13.579 While they are interchangeable, the amounts you're gonna use in
01:09:13.579 --> 01:09:15.180 the way you use, it's gonna be different.
01:09:15.190 --> 01:09:17.807 So that's been one big distinction I want to make in
01:09:17.807 --> 01:09:20.818 terms of the common model, just understanding what it is and
01:09:20.818 --> 01:09:21.510 what it isn't.
01:09:21.600 --> 01:09:24.498 So what it is and what it does for us though, is it allows us
01:09:24.498 --> 01:09:26.930 to very quickly swap between two different systems.
01:09:27.060 --> 01:09:31.093 So whether this is HubSpot on this side or sage 100 or this is
01:09:31.093 --> 01:09:34.871 woo commerce or big commerce or clarity whatever it is, we
01:09:34.871 --> 01:09:38.969 should be able to swap between those two things very, very fast
01:09:38.969 --> 01:09:43.066 and it's been a lot of work to try to get us there and not only
01:09:43.066 --> 01:09:46.780 get us there in a way that allows us to swap between them
01:09:46.780 --> 01:09:50.045 cleanly, but allows the developer experience to be
01:09:50.045 --> 01:09:51.710 manageable as well, right.
01:09:51.720 --> 01:09:55.188 So it's it's one thing to write code that allows you to do a
01:09:55.188 --> 01:09:55.530 thing.
01:09:55.760 --> 01:09:57.210 It's another to consider.
01:09:57.290 --> 01:09:59.608 What does that look like to bring on a new team member and
01:09:59.608 --> 01:10:00.590 have them write the code?
01:10:00.600 --> 01:10:01.930 And what does the code look like? Right?
01:10:01.940 --> 01:10:05.568 Because if you consider where we came from in that that customer
01:10:05.568 --> 01:10:08.695 sync learning how to write this 400 lines of code, it's
01:10:08.695 --> 01:10:09.700 complicated right?
01:10:09.710 --> 01:10:11.680 Bringing someone on board to this is very, very difficult.
01:10:11.880 --> 01:10:16.435 If I look at the current state of connect umm with a customer
01:10:16.435 --> 01:10:20.843 sync or invoice sync, this is a a order sales are sync that
01:10:20.843 --> 01:10:25.104 includes a customer sync in production live right now for
01:10:25.104 --> 01:10:29.586 WINCO and it is about 50 lines of code and it does more than
01:10:29.586 --> 01:10:33.260 that 400 lines that you saw in a cleaner fashion.
01:10:33.430 --> 01:10:37.129 So it's really just stepping up the efficiency across the board
01:10:37.129 --> 01:10:40.887 for the Connect team and making it so that we've abstracted away
01:10:40.887 --> 01:10:44.297 all of the hard bits about the connectors to the connector
01:10:44.297 --> 01:10:44.760 experts.
01:10:44.940 --> 01:10:47.469 And it was one of those things that we didn't have when we
01:10:47.469 --> 01:10:49.570 started on connect to where the experts weren't.
01:10:49.580 --> 01:10:52.655 The ones being consulted every time we had, when these projects
01:10:52.655 --> 01:10:55.298 we had to keep learning relearning these systems every
01:10:55.298 --> 01:10:56.980 time we'd build a build a project.
01:10:56.990 --> 01:11:00.980 So having this abstracted away to where all I have to do to get
01:11:00.980 --> 01:11:04.722 a customer from Bigcommerce to say get common customer, get
01:11:04.722 --> 01:11:08.650 common order and all of the hard work is just somewhere off in
01:11:08.650 --> 01:11:12.454 the distance would allow us to build these client projects a
01:11:12.454 --> 01:11:13.140 lot faster.
01:11:13.350 --> 01:11:17.422 So what that means in terms of the common model is we've built
01:11:17.422 --> 01:11:21.172 out all these systems to have the ability to get from the
01:11:21.172 --> 01:11:25.439 system itself to map over to the common entity and to push into a
01:11:25.439 --> 01:11:26.150 new system.
01:11:26.160 --> 01:11:29.246 So we've done that for customers, orders, products,
01:11:29.246 --> 01:11:32.807 invoices and payments where applicable and having this kind
01:11:32.807 --> 01:11:36.309 of spelled out to where we know exactly the state of these
01:11:36.309 --> 01:11:38.030 connectors at any given time.
01:11:38.260 --> 01:11:41.422 And we know exactly what we're able to do with these connectors
01:11:41.422 --> 01:11:43.250 is a big shift from where I started.
01:11:43.260 --> 01:11:46.381 So if you remember connect two years ago it was a bit of a
01:11:46.381 --> 01:11:49.450 crapshoot whether you could actually do the thing you set
01:11:49.450 --> 01:11:50.350 out to do or not.
01:11:50.800 --> 01:11:54.053 That's gotten considerably better in the recent future or
01:11:54.053 --> 01:11:57.586 the recent last year to be able to say, you know what, we have
01:11:57.586 --> 01:11:58.540 these connectors.
01:11:58.810 --> 01:12:00.660 The sales team has now been looped in.
01:12:00.770 --> 01:12:04.213 The sales team knows this is what we have available and we
01:12:04.213 --> 01:12:07.714 have other documentation that supports this to say hey, you
01:12:07.714 --> 01:12:10.340 guys wanna do order updates into Epicor E10?
01:12:10.450 --> 01:12:12.495 That's going to be a customization and we have
01:12:12.495 --> 01:12:15.192 documentation to support right away with what that would look
01:12:15.192 --> 01:12:15.410 like.
01:12:15.650 --> 01:12:18.368 So the name of the game across the CONNECT team has been just
01:12:18.368 --> 01:12:21.042 efficiency increases and making sure that we can spend these
01:12:21.042 --> 01:12:22.620 projects up really, really quickly.
01:12:22.630 --> 01:12:27.083 So with that being said, what we can do is actually see what that
01:12:27.083 --> 01:12:31.132 looks like with the the tooling that we have on the CONNECT
01:12:31.132 --> 01:12:31.470 team.
01:12:31.840 --> 01:12:36.078 If I use Maestro, which is the tool at jail has made to spin up
01:12:36.078 --> 01:12:39.919 a new connect instance, I can on the call live bring in a
01:12:39.919 --> 01:12:42.370 NetSuite connector a self connector.
01:12:42.520 --> 01:12:46.757 It's gonna build out everything that I need to have this project
01:12:46.757 --> 01:12:49.560 ready to go, and I can just bring this in.
01:12:52.550 --> 01:12:56.052 Just as a side note, can we have jail name all of our products
01:12:56.052 --> 01:12:56.830 going forward?
01:12:57.160 --> 01:12:57.630 Right.
01:12:57.670 --> 01:12:58.240 He's the best.
01:13:01.620 --> 01:13:07.119 So here we have a new project spun up ready to go, and we have
01:13:07.119 --> 01:13:12.269 the basics of a scaffolded job to where it's gonna grab 11
01:13:12.269 --> 01:13:12.880 system.
01:13:12.890 --> 01:13:16.132 One thing from one system and sync it over right, so all I
01:13:16.132 --> 01:13:19.540 would have to do is call the different services and I'm ready
01:13:19.540 --> 01:13:19.870 to go.
01:13:20.130 --> 01:13:21.600 So I could take this project.
01:13:21.670 --> 01:13:25.272 I could write a few like you said, like I saw 50 lines of
01:13:25.272 --> 01:13:29.061 code right and publish it and we're good to go and we've got
01:13:29.061 --> 01:13:31.360 the the phase one stand up complete.
01:13:31.370 --> 01:13:35.650 So what we've been seeing with this and the common model is
01:13:35.650 --> 01:13:40.215 we've seen projects that used to take months to deploy the very
01:13:40.215 --> 01:13:41.000 basic sync.
01:13:41.650 --> 01:13:44.254 I mean, honestly, if there's no distractions of developer can
01:13:44.254 --> 01:13:46.060 get a project done in a single day, right?
01:13:46.190 --> 01:13:49.485 Then afternoon and publish it up and we have phase one ready to
01:13:49.485 --> 01:13:49.640 go.
01:13:49.810 --> 01:13:52.827 The client can see data moving back and forth, and it's been
01:13:52.827 --> 01:13:55.646 just absolutely massive for these projects to be able to
01:13:55.646 --> 01:13:58.515 have our clients come in and say, wow, you guys, you, you
01:13:58.515 --> 01:13:59.900 guys weren't kidding, right?
01:13:59.910 --> 01:14:01.010 You actually can stand this thing up.
01:14:01.020 --> 01:14:04.997 You actually can do this very, very quickly, so having that has
01:14:04.997 --> 01:14:08.975 been huge in and taking that one step further and say, you know
01:14:08.975 --> 01:14:12.953 what, we can add customizations really fast with the ability to
01:14:12.953 --> 01:14:14.010 have these hooks.
01:14:14.020 --> 01:14:16.120 So it kind of goes hand in hand with what we did for Phoenix.
01:14:16.130 --> 01:14:19.417 There having these customer hooks or or entity hooks to
01:14:19.417 --> 01:14:23.174 where we say you know what when you try to resolve the customer
01:14:23.174 --> 01:14:26.930 key execute this logic instead or when you try to map something
01:14:26.930 --> 01:14:30.570 across tag this map in there and do this extra stuff instead.
01:14:31.110 --> 01:14:31.560 Umm.
01:14:31.920 --> 01:14:35.530 Having the ability to do that is is huge, right?
01:14:35.540 --> 01:14:39.073 So having the client architecture the code that a
01:14:39.073 --> 01:14:42.959 developer writes on a daily basis with having this umm
01:14:42.959 --> 01:14:47.411 client layer be simplified has been absolutely massive for the
01:14:47.411 --> 01:14:48.330 CONNECT team.
01:14:48.370 --> 01:14:52.736 So kudos to those guys and kudos to the team for pressing on this
01:14:52.736 --> 01:14:54.060 and pushing into it.
01:14:54.070 --> 01:14:57.902 I know I've been pretty hard and you guys and making sure that
01:14:57.902 --> 01:15:01.673 the client layer stays clean because we just want the ability
01:15:01.673 --> 01:15:05.627 to come in and say, OK, I have a connect project right here if I
01:15:05.627 --> 01:15:09.459 wanna do some custom stuff, I can get the customer, I can push
01:15:09.459 --> 01:15:10.250 the customer.
01:15:10.260 --> 01:15:13.785 If I wanna do anything custom, I can just type on and I have the
01:15:13.785 --> 01:15:16.986 ability to map resolve the account, throw errors, whatever
01:15:16.986 --> 01:15:19.752 I want to do here, handle mappings for the logins,
01:15:19.752 --> 01:15:23.061 everything right here from the client later, and my projects
01:15:23.061 --> 01:15:24.580 themselves stay super clean.
01:15:24.590 --> 01:15:29.260 This is a customer sync inside Zoho in NetSuite right.
01:15:29.430 --> 01:15:31.060 The ability for anybody to jump in here.
01:15:31.170 --> 01:15:32.900 Read this code and understand what's going on.
01:15:33.210 --> 01:15:34.270 Has been the primary focus.
01:15:36.600 --> 01:15:38.760 Very awesome, yeah.
01:15:36.700 --> 01:15:39.670 So yeah, yeah, that's that's the common model.
01:15:39.680 --> 01:15:41.250 Nutshell, it's the Connect team and nutshell.
01:15:41.360 --> 01:15:44.562 It's what we've been working on trying to get things to where we
01:15:44.562 --> 01:15:46.090 can just just move fast, right?
01:15:46.100 --> 01:15:50.663 The ability to spin these up quickly and have have working
01:15:50.663 --> 01:15:55.071 sinks for a customer that are easy to to modify, easy to
01:15:55.071 --> 01:15:58.010 understand where the codes happening.
01:15:58.700 --> 01:16:00.490 You can see here this is a pushing an order.
01:16:00.590 --> 01:16:02.340 This is how we resolve the order subject.
01:16:02.350 --> 01:16:04.350 This is what happens when account isn't resolved.
01:16:04.520 --> 01:16:07.925 Is what happens in a product isn't resolved and this is now a
01:16:07.925 --> 01:16:11.220 sales order sync from the 400 lines of code you saw before.
01:16:14.960 --> 01:16:16.690 So what does that mean going forward?
01:16:16.700 --> 01:16:19.030 Because I mean, that sounds like that's a game changer.
01:16:19.200 --> 01:16:20.000 What's next?
01:16:20.900 --> 01:16:21.670 Yeah, it's huge.
01:16:21.680 --> 01:16:25.883 So what we want to do with this is we want the ability to push a
01:16:25.883 --> 01:16:27.370 lot of licenses, right?
01:16:27.380 --> 01:16:30.301 So the CONNECT team, you know we've we've dropped into the SAS
01:16:30.301 --> 01:16:30.950 based pricing.
01:16:30.960 --> 01:16:34.435 So the ability to spin these projects up quickly, get these
01:16:34.435 --> 01:16:35.710 clients moving across.
01:16:35.860 --> 01:16:37.680 We saw it with a client call.
01:16:37.690 --> 01:16:41.097 We were on today where we were able to demo the common model
01:16:41.097 --> 01:16:44.616 and say, hey, you know what, we don't exactly know what you're
01:16:44.616 --> 01:16:45.510 looking for yet.
01:16:45.600 --> 01:16:46.840 But here's zoho.
01:16:46.850 --> 01:16:47.790 Here's NetSuite.
01:16:47.800 --> 01:16:49.810 Here's a common model mapping across the two.
01:16:49.980 --> 01:16:53.310 Create that product inside Zoho and let them see it.
01:16:53.500 --> 01:16:54.430 Show their customers.
01:16:54.440 --> 01:16:56.130 Show their client, show their team.
01:16:56.280 --> 01:16:58.040 Hey, these guys really do know what they're doing.
01:16:58.050 --> 01:17:01.122 They can move things across and then use that as a jump off
01:17:01.122 --> 01:17:04.400 point to determine what kind of customizations they wanna make.
01:17:04.440 --> 01:17:07.320 So before it was like this kind of ambiguous.
01:17:08.690 --> 01:17:09.380 Theoretical.
01:17:09.390 --> 01:17:09.620 Yeah.
01:17:09.630 --> 01:17:11.517 When we get the customer over there, what kind of
01:17:11.517 --> 01:17:12.800 customizations do you want to do?
01:17:12.950 --> 01:17:15.994 But nowadays it's more of you have a customer here that was
01:17:15.994 --> 01:17:16.400 created.
01:17:16.410 --> 01:17:19.000 Here's the fields that we have and we can call out.
01:17:19.140 --> 01:17:22.072 This one isn't mapped properly or we want to bring this kind of
01:17:22.072 --> 01:17:24.500 information over and make those changes really fast.
01:17:27.980 --> 01:17:28.370 Awesome.
01:17:28.380 --> 01:17:32.583 Well, Speaking of SAS, pricing is now a good time to transition
01:17:32.583 --> 01:17:35.210 to talking about that and thank you Jr.
01:17:34.130 --> 01:17:34.810 The perfect time?
01:17:35.220 --> 01:17:36.010 That was awesome.
01:17:36.630 --> 01:17:37.010 You bet.
01:17:36.980 --> 01:17:42.121 Umm yeah, and kudos to the Connect team and as well to
01:17:42.121 --> 01:17:45.860 jail's naming convention and Esperanto.
01:17:46.320 --> 01:17:46.810 It's awesome.
01:17:48.720 --> 01:17:49.350 We love it.
01:17:49.720 --> 01:17:50.210 Yeah.
01:17:50.220 --> 01:17:54.654 So we won't have time to cover all of the team members who I
01:17:54.654 --> 01:17:56.690 was expecting to talk today.
01:17:56.700 --> 01:17:58.800 So we'll bring the remaining.
01:18:00.180 --> 01:18:04.153 Those folks in on the next session and then also additional
01:18:04.153 --> 01:18:08.259 topics and I'll just take it as feedback for where to put the
01:18:08.259 --> 01:18:08.590 time.
01:18:08.850 --> 01:18:10.590 I know I spoke quite a bit as well.
01:18:11.340 --> 01:18:16.128 So anyways, thank you again, JLR great job and I'm curious if
01:18:16.128 --> 01:18:21.149 Phil you can help lead but then leave some time for Ron to spend
01:18:21.149 --> 01:18:25.706 a few minutes and sort of do five and five, something like
01:18:23.250 --> 01:18:24.570 Yeah, now.
01:18:25.706 --> 01:18:28.950 that and just talk about the SAS pricing.
01:18:28.290 --> 01:18:29.720 You know, I'm going to take all this time.
01:18:29.810 --> 01:18:30.710 I'm gonna take all this time.
01:18:31.270 --> 01:18:32.340 OK, alright.
01:18:32.470 --> 01:18:32.970 I like it.
01:18:36.340 --> 01:18:38.910 Dude, I can't even sneeze in less than 5 minutes.
01:18:38.920 --> 01:18:39.150 Go ahead.
01:18:39.260 --> 01:18:40.190 I know, I know.
01:18:40.460 --> 01:18:41.950 Yeah, I was gonna say good.
01:18:41.960 --> 01:18:43.390 Ross's gonna take 5 minutes.
01:18:43.400 --> 01:18:44.510 Come on, I'll do two.
01:18:44.520 --> 01:18:45.210 He can do stuff.
01:18:45.220 --> 01:18:48.250 He can do eggs. Ohh.
01:18:47.530 --> 01:18:50.093 Well, well, you guys, you we probably won't be able to cover
01:18:50.093 --> 01:18:52.825 everything, but I I really think it would be good for you all to
01:18:50.920 --> 01:18:51.890 Yeah, I.
01:18:52.825 --> 01:18:53.960 talk about the SAS pricing.
01:18:53.970 --> 01:18:56.817 And then just mention the payments and we'll cover it more
01:18:54.050 --> 01:18:54.670 I'll just do it.
01:18:56.120 --> 01:18:56.410 Yeah.
01:18:56.420 --> 01:19:00.544 Yeah, I'll do like a quick just kind of assass update, you know
01:18:56.817 --> 01:18:57.300 next time.
01:19:00.544 --> 01:19:04.346 and kind of things we're doing, I I don't know if a lot of
01:19:04.346 --> 01:19:08.341 people who you know, I assume everybody knows that we've kind
01:19:08.341 --> 01:19:12.143 of moved to the SAS pricing and within that you know we've
01:19:12.143 --> 01:19:16.202 basically started offering the you know the options on all our
01:19:16.202 --> 01:19:18.780 products with this new monthly pricing.
01:19:19.190 --> 01:19:22.284 And we have done this major shift, you know, for the
01:19:22.284 --> 01:19:25.495 business which we've been wanting to do for quite some
01:19:25.495 --> 01:19:29.290 time and it's really allowed us to open up a huge segment of the
01:19:29.290 --> 01:19:32.852 market that we've just never historically been able to serve
01:19:32.852 --> 01:19:36.471 just because not everybody can just say, yeah, here's $80,000
01:19:36.471 --> 01:19:38.340 and you know that kind of thing.
01:19:38.350 --> 01:19:41.866 So we started marketing, is that really it was a couple months
01:19:41.866 --> 01:19:42.090 ago.
01:19:42.740 --> 01:19:45.565 You know, we've started to really seen some exciting
01:19:45.565 --> 01:19:48.070 momentum already on this segment, I would say.
01:19:48.080 --> 01:19:51.712 And as we've been pitching over the last couple months, the new
01:19:51.712 --> 01:19:55.061 pricing option, I think we're finding the clients fee very
01:19:55.061 --> 01:19:55.970 receptive to it.
01:19:57.280 --> 01:20:00.156 I think you also see as these leaves have kind of worked
01:20:00.156 --> 01:20:03.033 through the pipeline, you're you're starting to see them
01:20:03.033 --> 01:20:03.790 stack up a bit.
01:20:04.160 --> 01:20:07.815 I know this month alone we are already like negotiating
01:20:07.815 --> 01:20:12.058 agreements with three SAS deals that we're looking to close this
01:20:12.058 --> 01:20:12.450 month.
01:20:12.540 --> 01:20:18.790 And I think we've done one or two in the last two years.
01:20:18.840 --> 01:20:22.270 So it's it's really kind of very exciting what's happening and
01:20:22.270 --> 01:20:25.483 obviously there's something we've been looking to do for a
01:20:25.483 --> 01:20:25.810 while.
01:20:26.040 --> 01:20:29.672 And so we're just kind of coordinating the organic traffic
01:20:29.672 --> 01:20:33.674 in the Google ads, you know, in concert to to really try to give
01:20:33.674 --> 01:20:34.290 that push.
01:20:34.660 --> 01:20:38.352 And and I'm looking to actually expand the Google ads to further
01:20:38.352 --> 01:20:41.931 go into the SAS market with the auction in the marketplace and
01:20:41.931 --> 01:20:42.840 stuff like that.
01:20:43.870 --> 01:20:47.766 And just really quickly, one of the last things I'll say here is
01:20:47.766 --> 01:20:51.183 the the nice thing too is obviously just trying to drive
01:20:51.183 --> 01:20:54.600 the, the, the, the licensing revenue that we're getting.
01:20:54.780 --> 01:20:57.670 And so we've really seen that start to increase.
01:20:57.680 --> 01:21:01.886 I mean the the very first quarter, you know we had we had
01:21:01.886 --> 01:21:05.947 a solid 177,000 or just over that the second quarter we
01:21:05.947 --> 01:21:07.760 increase it even further.
01:21:07.770 --> 01:21:12.345 We have the 256,000 and now we're tracking quite a bit over
01:21:12.345 --> 01:21:16.386 300,000 for Q3, which is typically our slower period
01:21:16.386 --> 01:21:20.808 because of the summer and everybody's vacationing and and
01:21:20.808 --> 01:21:23.630 so it it's pretty exciting actually.
01:21:23.640 --> 01:21:26.428 But anyway, that's kind of a a quick rundown on what we're
01:21:26.428 --> 01:21:29.263 seeing with the SAS and kind of the exciting stuff going on
01:21:29.263 --> 01:21:29.830 right there.
01:21:31.470 --> 01:21:32.760 Yeah, that's really exciting.
01:21:32.770 --> 01:21:38.095 So just to confirm am if we end up hitting 300,000 per quarter,
01:21:38.095 --> 01:21:42.837 that's 100,000 a month in license revenue and all of the
01:21:42.837 --> 01:21:48.162 projections that I was showing earlier, it's not accounting for
01:21:48.162 --> 01:21:49.910 that with our growth.
01:21:49.980 --> 01:21:52.370 So I just, I just put that into the chat.
01:21:53.280 --> 01:21:56.660 I think that's healthy, you know, until it's stable to not
01:21:56.660 --> 01:21:57.520 account for it.
01:21:56.840 --> 01:21:58.170 Umm yeah.
01:21:58.970 --> 01:22:02.112 But the other thing too, that sort of happened, and this might
01:22:02.112 --> 01:22:05.105 be a good transition over to you, Ron, and thank you, Phil,
01:22:05.105 --> 01:22:07.400 by the way, great job on these landing pages.
01:22:07.410 --> 01:22:08.230 There are beautiful.
01:22:08.240 --> 01:22:11.018 Would you mind putting the link into the chat for some of the
01:22:11.018 --> 01:22:12.900 landing pages, or at least the HIPAA one?
01:22:12.740 --> 01:22:13.310 OK.
01:22:13.680 --> 01:22:14.780 Yeah, yeah, yeah, yeah.
01:22:13.810 --> 01:22:19.104 OK, so we decided to update our hourly rates along with offering
01:22:19.104 --> 01:22:23.583 sort of two options that were lower cost up front than
01:22:23.583 --> 01:22:28.062 previous, which we're referring to the previous as our
01:22:28.062 --> 01:22:29.610 enterprise pricing.
01:22:30.560 --> 01:22:33.079 And Ron, why don't you take it away and just kind of talk about
01:22:33.079 --> 01:22:34.260 what we did with that pricing?
01:22:38.570 --> 01:22:39.480 Oh, your mic is muted.
01:22:44.030 --> 01:22:44.340 Awesome.
01:22:45.150 --> 01:22:46.800 I was doing it via.
01:22:45.200 --> 01:22:45.770 There you go.
01:22:45.840 --> 01:22:46.440 Now I can hear you.
01:22:47.010 --> 01:22:49.000 I was doing it via telepathically.
01:22:49.010 --> 01:22:52.603 I was hoping you were with me, but so this is our historic
01:22:49.190 --> 01:22:49.820 I like it.
01:22:52.603 --> 01:22:56.440 pricing, the same pricing we've done since the day I got here.
01:22:56.490 --> 01:22:59.742 So we still offer that and the way we do it in sales is you can
01:22:59.742 --> 01:23:02.080 buy the car now you can lease the car, right?
01:23:02.190 --> 01:23:05.143 We have 1/3 option which is you can finance the car and we have
01:23:05.143 --> 01:23:06.620 a third party financing company.
01:23:06.630 --> 01:23:09.560 So if they want to buy the car and get the one time pricing and
01:23:09.560 --> 01:23:10.980 finance it, they're welcome to.
01:23:10.990 --> 01:23:14.391 So those are the three pricing options we sell, but the new one
01:23:14.391 --> 01:23:16.890 is now the out of the box SAS monthly pricing.
01:23:17.640 --> 01:23:21.698 And so basically what we've done is we've broken it into the
01:23:21.698 --> 01:23:23.760 basic product offerings, right.
01:23:23.770 --> 01:23:28.049 So we have connect CEF, HIPAA, CEF, auction, CEF Marketplace,
01:23:28.049 --> 01:23:29.430 CEF and payment hub.
01:23:29.860 --> 01:23:33.132 Then we've got some different add-ons that we have the
01:23:33.132 --> 01:23:36.999 capability and with the add ONS before we really didn't have the
01:23:36.999 --> 01:23:38.070 SAS based pricing.
01:23:38.080 --> 01:23:41.340 So this is something we met with a smaller team yesterday kind of
01:23:41.340 --> 01:23:42.230 went through them.
01:23:42.240 --> 01:23:44.590 And so this is we, Kyle and I did this last night.
01:23:44.600 --> 01:23:47.526 So hopefully you guys can kind of look through this section and
01:23:47.526 --> 01:23:48.670 see if you agree with it.
01:23:48.680 --> 01:23:51.931 But basically what we wanted to do is the way things are is
01:23:51.931 --> 01:23:55.074 you've got a one time price, you've got a other price and
01:23:55.074 --> 01:23:58.596 then the hours that are included because it's sass because we're
01:23:58.596 --> 01:24:01.684 hosting it because we can containerize it, we can deploy
01:24:01.684 --> 01:24:03.310 it, we can do it a lot faster.
01:24:03.530 --> 01:24:07.135 We're only giving them half the hours included in the product
01:24:07.135 --> 01:24:07.600 project.
01:24:07.610 --> 01:24:09.770 If they go sass, that's kind of what you're seeing here.
01:24:09.780 --> 01:24:13.084 So it's 2010 for this one was the only one that I don't know
01:24:13.084 --> 01:24:15.360 why I'll have to take a look at this one.
01:24:15.370 --> 01:24:19.744 This one should have been 4020 and then 6030, so I don't know
01:24:19.744 --> 01:24:23.977 because he's just should be 2030, so not sure what happened
01:24:23.977 --> 01:24:24.330 here.
01:24:24.340 --> 01:24:27.073 I'll have to take a look at that, but for right now
01:24:27.073 --> 01:24:30.175 everything should be half the hours that's on the one time
01:24:30.175 --> 01:24:33.487 license because we have to deal with potentially their hosting
01:24:33.487 --> 01:24:36.904 their credentials, setting it up in their environment and things
01:24:36.904 --> 01:24:37.430 like that.
01:24:37.440 --> 01:24:41.181 So we threw extra hours over there, but we've now got a SAS
01:24:41.181 --> 01:24:43.550 based pricing for every one of these.
01:24:43.560 --> 01:24:45.790 Now some of these could have an offering.
01:24:45.800 --> 01:24:49.145 If I had Seth and this is something that we got from, I
01:24:49.145 --> 01:24:52.789 think Brandon and Eric and a couple meetings we were talking
01:24:52.789 --> 01:24:56.671 about the difference potentially between multicellular and multi
01:24:56.671 --> 01:24:57.030 brand.
01:24:57.040 --> 01:25:00.962 Historically, we've always just said Ohh that's a $5000 add on
01:25:00.962 --> 01:25:02.270 and then it's hourly.
01:25:02.280 --> 01:25:06.023 Well, we've changed it now and now it's a $10,000 add-on or
01:25:06.023 --> 01:25:08.830 it's a 399 add-on and they can be different.
01:25:08.950 --> 01:25:12.051 So I could have clarity ecommerce and then I could add a
01:25:12.051 --> 01:25:15.533 multi seller add-on or I could add the branded add-on and there
01:25:15.533 --> 01:25:17.220 are different different prices.
01:25:18.010 --> 01:25:18.500 Umm.
01:25:18.930 --> 01:25:24.390 And so these are add ONS that could be then added on to any of
01:25:24.390 --> 01:25:24.910 these.
01:25:24.920 --> 01:25:29.100 So somebody could put together and say, hey, I'm RX1, I want
01:25:29.100 --> 01:25:33.280 HIPAA, CEF, but I wanna do multi branded and so we have that
01:25:33.280 --> 01:25:37.050 option right and they can plug it and put it together.
01:25:37.060 --> 01:25:39.910 So this is what we've done as of literally last night.
01:25:40.720 --> 01:25:45.068 But it's, it's hitting pretty well again, using the analogy, I
01:25:45.068 --> 01:25:49.140 think people understand, you know, buying a car, leasing a
01:25:49.140 --> 01:25:50.590 car, financing a car.
01:25:50.600 --> 01:25:53.443 I think they understand those three options pretty easily, so
01:25:53.443 --> 01:25:55.140 that's usually how we talk about it.
01:25:55.720 --> 01:25:59.524 Umm, historically we, because we only had buying the car, we
01:25:59.524 --> 01:26:03.579 really pitched that heavily as a a benefit that they didn't have
01:26:03.579 --> 01:26:05.450 to keep paying forever, right?
01:26:05.540 --> 01:26:09.245 But it was a CapEx cost and if it was 8090, a 120 grand, once
01:26:09.245 --> 01:26:13.010 they got out of rediscovery, a lot of clients were like man, I
01:26:13.010 --> 01:26:16.775 had no idea we don't have 120 grand to spend and they couldn't
01:26:16.775 --> 01:26:18.090 get into our projects.
01:26:18.100 --> 01:26:19.230 Matter of fact, we had one.
01:26:19.240 --> 01:26:21.989 A HIPAA CEF deal this morning and I said, are you interested
01:26:21.989 --> 01:26:22.800 in buying the car?
01:26:22.810 --> 01:26:23.080 He goes.
01:26:23.090 --> 01:26:23.530 No, no, no, no.
01:26:23.540 --> 01:26:24.610 We don't wanna spend that much money.
01:26:24.620 --> 01:26:25.310 We'll just lease it.
01:26:25.730 --> 01:26:26.900 I'm like, that's awesome.
01:26:27.050 --> 01:26:30.044 So they're probably going to spend some, you know, a grand
01:26:30.044 --> 01:26:33.343 plus a month, but that's forever now because they're leasing the
01:26:33.343 --> 01:26:33.800 solution.
01:26:33.810 --> 01:26:38.062 And so in the long run, it's going to be a lot bigger than 25
01:26:38.062 --> 01:26:40.120 grand, which would be 2 years.
01:26:40.130 --> 01:26:42.687 It's gonna be a grand a month and it's going to be for five
01:26:42.687 --> 01:26:45.372 years, six years, seven years, because we're going to continue
01:26:45.372 --> 01:26:47.716 to support them and maintain them and have them on our
01:26:47.716 --> 01:26:48.100 platform.
01:26:48.370 --> 01:26:52.432 And I also sold them and said your merchant account is built
01:26:52.432 --> 01:26:56.361 in and this one is one that could potentially grow big and
01:26:56.361 --> 01:26:57.160 become huge.
01:26:57.250 --> 01:26:59.620 So payments, that's the last thing.
01:26:59.630 --> 01:27:00.840 Got one minute left?
01:27:01.030 --> 01:27:02.500 Clarity now offers payments.
01:27:02.510 --> 01:27:06.323 We have relationships with numerous payment providers, so
01:27:06.323 --> 01:27:10.137 any of your clients and I literally finished today just a
01:27:10.137 --> 01:27:13.819 couple hours ago, a new white paper for clarity payment
01:27:13.819 --> 01:27:15.200 processing solutions.
01:27:15.740 --> 01:27:18.606 I'm going to have this up on the collateral worksheet soon, so
01:27:18.606 --> 01:27:21.290 for all you project managers I'm going to have a training.
01:27:21.710 --> 01:27:25.394 We're going to talk to every client and talk about being able
01:27:25.394 --> 01:27:27.890 to swap to process payments with clarity.
01:27:27.900 --> 01:27:30.744 We can save them money, we can give them cash back towards
01:27:30.744 --> 01:27:31.130 support.
01:27:31.220 --> 01:27:34.183 We can get them competitive rates, we can make sure that
01:27:34.183 --> 01:27:36.990 they get a payment solution that matches their needs.
01:27:37.000 --> 01:27:42.425 So it's a benefit for them and best yet, we make 80% of the
01:27:42.425 --> 01:27:45.590 processing fees for these clients.
01:27:45.600 --> 01:27:47.880 For example, we just signed up Aqua salts client.
01:27:47.890 --> 01:27:49.390 We've been working with for 10 years.
01:27:49.460 --> 01:27:50.420 We just signed them up.
01:27:50.430 --> 01:27:55.989 They got approved yesterday and we're going to be making $5200 a
01:27:55.989 --> 01:27:58.640 month free money 5200 * a year.
01:27:58.810 --> 01:28:01.280 That's 60, something grand a year.
01:28:01.630 --> 01:28:05.669 In order to make 60 grand, even if we were and I don't think we
01:28:05.669 --> 01:28:09.709 are 20% profitable, that would mean that for every one of those
01:28:09.709 --> 01:28:13.748 clients that we flip, if they're about that same size, we would
01:28:13.748 --> 01:28:17.220 have to sell a $300,000 deal to make that much profit.
01:28:17.390 --> 01:28:18.860 And we don't have to do any work.
01:28:19.330 --> 01:28:23.828 We flip them over and without doing the work of a $300,000
01:28:23.828 --> 01:28:28.631 project, we make $60,000 a year profit per client that we sign
01:28:28.631 --> 01:28:28.860 up.
01:28:29.370 --> 01:28:30.540 That's where we scale.
01:28:30.590 --> 01:28:32.660 That's where we become really profitable anyway.
01:28:32.670 --> 01:28:34.820 We'll cover that more in detail in the next meeting, but.
01:28:34.800 --> 01:28:37.982 Yeah, we'll spend more time on the payment processing and some
01:28:37.982 --> 01:28:41.266 of the topics that we didn't get to and I'll just allow for more
01:28:41.266 --> 01:28:44.095 time because I think it's helpful to have some dialogue
01:28:44.095 --> 01:28:44.550 about it.
01:28:45.140 --> 01:28:49.540 I put a link to that leave behind into the chat and like
01:28:49.540 --> 01:28:54.327 Ron said, you can also find it on the CVI marketing game plan
01:28:54.327 --> 01:28:55.640 once he posts it.
01:28:57.150 --> 01:29:01.499 Thank you to everyone who presented Ron and Phil at the
01:29:01.499 --> 01:29:01.810 end.
01:29:01.820 --> 01:29:03.400 Thank you guys for adapting to that.
01:29:04.960 --> 01:29:06.110 Happy Friday guys.
01:29:06.120 --> 01:29:08.270 I hope everyone has an amazing weekend.