Update 1: April 9, 2024

by | Weekly Updates

Wow, the very first public Rootabl update!

A long time coming…

If you’re looking for the TL;DR… you won’t find one here.

These updates are for people who are looking for the nitty gritty, behind-the-scenes, “I want to throw everything in the compost-bin” moments of building a company.

Each week, on possibly a set day (?), you’ll get:

  • A not-quick written update from me, Laura.
  • Either a video update or maybe a screenshot from meetings with Christian (Rootabl’s developer), where we talk about Rootabl and not-so-Rootabl things (like his baby or my kiddo or the concept of reality).
  • An update from Christian! (Titled Christian’s Corner™ – he came up with that name himself).

Compost

A not-so-quick update from the conceptualizer of Rootabl, Laura Sprinkle.

This entire project has felt like taking everything I’ve ever created and worked on, smashing it to a pulp, and trying to grow something new.

It’s composting all I’ve done:

Launch management and strategy, affiliate management and strategy, team management, tech workarounds and shenanigans, sales training, mindset work, business partnerships, course creation and training, copywriting, taking thousands of hours of strategy and turning it into frameworks, hundreds of templates, thousands of emails… and so much more.

And turning ALL of that into a platform that can serve more people more better with their affiliate promotions.

While future updates will be focused on the week-by-week shenanigans of Rootabl… this one is a long (year+) time coming, so I’m going to share two things which makes it seem short but they actually allow me to make this update even longer.

1. This document outlines the Rootabl timeline over the last year. (It’s what I shared with folks who had early licenses.) 

An additional nugget I’ll share is this screenshot from the naming process that had 179 semi-random words in it (including macaroniandcheese for who knows what reason):

Anddd…

2. Quite possibly my most embarrassing video.

I kept putting off this first update and it just-freaking-needed-to-happen-already, so instead of taking 15-minutes to write a quick update, I made a 30-minute video where at one point I said “lalalalala” and then just kept going.

If you stay until the end of the video which I don’t recommend you’ll hear the worst tagline I could have come up with on the fly for ending my Rootabl update videos.

Quite Possibly My Most Embarrassing Video

I reserve the right to change my mind, likely via posting an even more embarrassing video in the future.

Have feedback or questions on Laura’s update?

Email her here: laura@rootabl.com 

Christian’s Corner™

An update from Christian Genco, who does the code to make the things happen with Rootabl. (And like all that technical stuff.)

Hi! I’m Christian Genco, the (lead developer? CTO?) of Rootabl. I’ve been working in the software-as-a-service space my whole career and I love it.

What started as a quick consulting project for my team and I last year has turned into a full-on partnership to make Rootabl happen. You’ll be hearing periodic updates from me from the technical (way more fun) side. If you’d like to dig deeper into anything I talk about here let me know! I’d love to chat about it. For other stuff I’ve worked on check out gen.co

For the inaugural post of Christian’s Corner™️ here’s a high level technical overview:

Rootabl is a Next.js app built on Google’s Firebase serverless infrastructure. I cut my teeth on Rails but kept running into devops issues that weren’t very fun to deal with so this has become my favorite tech stack. I like to think of it as hiring Google to be my devops team. There are some annoying limitations with using Firestore but at this point I feel like we’ve got most of them mapped out. On the front end React feels like the obvious choice. It’s a joy to build things in.

The core of Rootabl comprises:

  1. JavaScript tracking code that checks for an affiliate query parameter and listens for email addresses entered on a page. If it finds either, it tags the browser with a unique ID and then reports each page view to Firebase organized as a “lead” (a unique browser session).
  2. A serverless function webhook that records each sale
  3. Code that links the affiliate code found in #1 with a sale from #2.

Sounds easy enough (and the first two parts were!) but that last step was REAL tricky to get right. Once you start thinking about a business having multiple campaigns that only apply for specific products or a particular time period and affiliates having different commission rates and sales potentially being refunded the edge cases start exploding.

When I feel like a problem is too big to fit in my brain all at once I like to practice Test Driven Development (TDD): first write a failing test (ex: when a sale is made and the email matches a lead’s email, the affiliate that sent that lead should get a commission), then make the test pass, then keep doing that until all the edge cases you can think of are covered.

That’s basically what I’ve been working on the past several weeks with rootabl and I’m happy to report the first version of rootabl’s attribution code is deployed and seems to be working! I’m sure there are edge cases yet to be discovered (like “what if last-click attribution is on and a lead clicks on at least five affiliate links across two campaigns but the most recent affiliate codes they clicked on are from affiliates that were deleted”) but TDD can just keep knocking those out as they come up.

That’s all for now! Again, happy to chat with anyone about any of this stuff if you’re curious: I love thinking about it.

Have feedback or questions on Christian’s update?

Email him here: christian@rootabl.com