How Tabili and Level151 died and became Stash / Graph-Rag.com
tl;dr Don’t get into a startup with a random Redditor with a half-baked idea and no real technical skills. Also, yeah, I’m dumb for doing so.
So, a few months ago I was browsing r/boardgames and came across a post where a guy was trying to get feedback on an idea for chatting with boardgame and TTRPG rulebooks. At first, I simply let him know that boardgames would probably work since the creators aren’t really seeking the rules, they are selling the games. We had a bit of back and forth in Reddit DMs and I liked where he was going so I invited him to one of my Discord servers.
This person was Andrew Snyder, a mobile Android developer who worked as a freelancer, so he didn’t really know a ton outside of Kotlin and that world. That was fine, he seemed eager to learn and I’m an accomplished full stack engineer with more than a decade of experience and I like mentoring people. I’m also a huge tabletop gaming nerd, so this was right up my alley.
After probably a week or so of chatting and fleshing out his idea more, at some point we decided to go into business together under Level151 LLC, which was a business he had established for a slightly different idea but targeting video games. The first red flag was I found out that he actually started it with several people he had known for years and they abandoned him. At first, I thought it was because they realized there isn’t much monetization you can get out of video game players since video game companies have bleeding players dry down to a science.
You might be thinking “but the tabletop industry is magnitudes smaller though!” And you’re definitely right. However, tabletop players do buy a lot of games, upgrades, replacements, and other things that enhance the experience. But there still isn’t a ton of money to be made in that sector. It’s just something we were both passionate about and the idea was a good fit for.
Red flag number two was when I tried to explain how we could take this idea and use it to refine the technology so that we could use it to directly target a number of other industries with considerably more money. Industries like Medical, Law, Insurance, or general B2B where they have tons of manuals to wade through. I’m not sure how many times I had to explain this or how many different ways, but he didn’t really get it until one day he sort of logged on and thought he had come up with the idea.
Cool, whatever at least he’s on board now. But, he started to get distracted a little bit and wanted to shift focus to that immediately which I talked him out of. But still, red flag number three.
The cool thing about boardgamers is that, like any nerd subculture... and I say this with love as one of them, they are pedantic as shit. If they used our tool and received bad answers due to flaws in our search or hallucinations from the LLM, we’d hear about it pretty much immediately and probably non-stop too. For a company that consisted of two people that doesn’t have the credentials that a lot of other similar ideas have, like Perplexity or even a lot of the features OpenAI is adding, this was something that was incredibly valuable to what we were building. Plus, it was serving a market that may not be the largest in terms of money spent, but it is definitely a market that spends enough to basically keep the lights on in terms of paying for infrastructure. At this point, with four red flags before we really started building something, I just kept chugging along because he seemed like a good dude who was just figuring out things in his own way.
But then we started ‘building’ things... or at least I did. Within a week or two working in just my free time after work, I had a Remix site deployed on Cloudflare Pages, as well as a few workers boilerplated so they would be ready, a CDN through Digital Ocean (since it’s the most cost-effective), the Neo4j database set up on a Droplet, and a dockerized API. Plus, a deployment pipeline set up for all the above with GitHub actions and DO ‘apps.’ We were pretty much ready to rock. I wasn’t a big fan of the Neo4j choice, but he didn’t budge on that for ‘reasons’ he was never actually able to articulate. Whatever, GraphDBs are cool and I didn’t see it being a bottleneck, plus we could use it for unobtrusive targeted direct affiliate marketing.
Once I had this set up to where it was working and stable, I started building a lot of the fundamentals of the site. Optimizing heavily for SEO, speed, and accessibility. The fourth red flag was when I realized that after him already doing this for 3-4 months at this point. His injection pipeline was still nothing more than unreadable, ChatGPT-written, random-ass Python scripts that only he knew how to use and barely knew how they worked himself. He was supposed to be taking this and either putting it into the API or at least refining the Python scripts to something that was professional in a way that at least other people could work with it or use it.
I have enough experience to know a lot of people reading this may be like “But it’s a startup and they sort of worked right? What’s the problem? Get the data and ship” And if that were the case, you’d be right. But what I mean by ‘something in a way at least other people could work with it,’ I am talking about a several-thousand-line set of scripts that needed parts of it to be toggled on and off by commenting out specific function calls or changing parameters.
...yeah.
On top of that, it only worked as a proof of concept. What he had could not take in content and spit out consistent results. That was part of the effort to move it to the API he was supposed to be working on. Our goal was to get documents, mostly PDFs, into Markdown syntax with a few extra syntax features we needed. This was mostly for ease of use and so that we could have a solid base to build a very accessible (as in web a11y) site.
So, I started jumping in and playing with the injection pipeline and trying to get something working. Let me tell you, PDFs are the worst fucking tech we still use daily. They are digital documents designed for print media and the people who make them (usually) are designing them FOR print media, so standards and content flow in the digital format is not something that is high priority for a lot of designers. I went through about half a dozen methods and got something pretty good by combining a PDF-to-HTML formatter with a post-script that turned that into more semantic HTML, then running it through an LLM to make sure the flow was correct. It didn’t fully work, but it was a good starting place and the best and most cost-effective method I could come up with.
I showed it to him and he didn’t understand. Like... at all. I don’t know where the disconnect was, but in hindsight, I don’t even think he was paying attention, he was just focused on playing around with Python scripts and LangChain. Not really focused on actually producing something useful, just playing around with the technology. At this point, you might be thinking we are kids or college students or something like that. But no, we are both mid to late 30s.
Where are we now? Five? Five red flags?
I have no idea why I didn’t jump ship at this point. I guess it was because he was still enthused and more or less bankrolling the little expenses we did have (less than $100/mo).
I kept going like this until I had a very solid foundation for the part users were going to be hitting. I had alleviated most of the burden that the database was doing through aggressive edge caching and made sure all the little database and object storage duckies were in a row to receive a shit ton of content from an ingestion pipeline. This realistically only took me about another week or so of just piddling around. So I spun up a place for us to put private docs, a blog, and other stuff too. I could have jumped into the data side of things, but he just kept insisting that he had it and was almost there, and I have a full-time job that can be pretty demanding at times, so I mostly focused on that.
At some point during this time frame, he shifted focus because we were accepted into a small incubator local to him that helps startups get off the ground. It didn’t have any investment money, but it gave a lot of pretty good guidance from the virtual meetings I saw. I forget exactly how long this lasted, but I want to say two months or so? But, he kept reassuring me he was working on the ingestion pipeline and I was seeing small improvements and commits sometimes, so kinda just let him do his thing.
But then we got to the final red flag, lucky number six. This whole time, from pretty much the start of everything, we had had a weekly meeting at minimum. While this program was going on, every week the scope and direction of the project changed. They were small changes at first, but then eventually came to the point of him basically wanting to replicate Perplexity, a startup with a valuation of $1billion after less than 2yrs and founders that consist of some of the brightest minds in AI. But even before that ultimate direction shift, I was at my limit and more or less just in my “fuck it” stage and waiting him out to do whatever the fuck it was he was supposed to have been doing.
Honestly, after months of not receiving something that was a level of effort I’ve seen accomplished during a hackathon, I just quit keeping up with the things he was doing. Then when he started going into our project board on GitHub and creating HUNDREDS of conflicting issues that were not fleshed out at all and very reminiscent of that original Python script I mentioned at the beginning. I stopped keeping up with that, too.
Now we get to the last month or so. My grandparents are the reason I am where I am today, and they are old. I live 1,300 miles from them, and my Grandpa (91) had a heart attack but survived with a 40% chance survival rate from the surgery. But before he went into surgery, my grandma had a stroke and was also hospitalized. My Grandpa is tough old fart and he survived and only spent a week or so in rehab and my Grandma recovered as well. They live in a very rural area, so I flew down to help them when they got out of the hospital. I was there for about 3 weeks before coming home.
Shortly before I came home, the incubator program wrapped up. Great right? We can start producing shit! Finally! Let’s get it done! I was also informed that he had brought a designer buddy of his, Loren Johnson back on board because that guy had kind of just flaked out somewhere in the very beginning, but this time he had a full stake in the company instead of just feeling it out. Fucking awesome, I specialize in frontend and I can get by, but I am no designer. We had our normal weekly meeting where I was introduced to “Stash” which was obviously the B2B version of the application. Which I was actually cool with because with what we were working on, this could have easily been done in parallel even with a minimal team. The tech is the same.
Well, this is where the story ends. The other night, he sent me a message on Discord more or less saying that he had lied about giving him the stake in the Level151 LLC company and that they were doing a different business with just the two of them. But he was going to be such a nice guy and raise my stake in Level151 to 50% and that he would be going down to part-time on it in favor of STAAAASH :jazz-hands: and that I wasn’t going to be part of it.
Isn’t that great? I get 50% of nothing functional other than what I had built, so I can keep building the tech to validate the tech for a business I’m not even part of!
Here’s the fun part: I own the domain of the product we were building. This was never in the contract and never formally moved to Level151 LLC.
Their main goal, above all else, is seeking VC money. That’s what the gener8tor incubator program was mostly about. Don’t get me wrong here, I think that program was great and does a lot of great things. But what these guys took out of it was how to scam their way into VC money, without actually being able to deliver on a product.
Graph-Rag.com
Update: It looks like Stash is pointing to GraphRAG API. I would like to take a moment to reflect on what I said about Andrew never being able to actually articulate what a GraphDB did for the project. The best I got from him boiled down to “look at how pretty these graph pictures are!”
Buzz words be buzz wording.
Also something interesting about Graph-Rag.com, was that it was registered on May 21st, 2024. The conversation below took place on May 22nd, 2024. So when he said “We don’t know yet” in regards to what Stash was, he was clearly flat-out lying.