How Vectorly Joined Hopin

Sam
Vectorly
Published in
21 min readDec 6, 2021

In December 2021, we joined Hopin, where we will be working on integrating Vectorly’s AI Filter technology into Hopin’s suite of Video products.

Vectorly Acqui-hire announcement

This is the story of how Vectorly joined Hopin, and the events that led up to it. As a sequel to “How Dot Learn became Vectorly,” I’ll provide my own personal, candid perspective on how we went from video-compression to AI filters for video conferencing, to the decision to ultimately join Hopin.

I’m sorry it’s taken this long to write about all of this. When you’re in the trials and tribulations of running a startup, being honest and candid can be a liability when talking to investors.

I'm writing this blog post in a personal capacity, and I just want to recount what the last few months and years have been, for closure if nothing else. This blog in no way reflects any view, opinion or statement by or about Hopin.

Author’s note: When I first published this in December 2021, I was asked by the Hopin team to redact the first half of the story (First product as Vectorly, and Video Vectorization) due to an issue in 2019 where some patent troll claimed that our Vectorization Patent infringed on their patent (how is that possible?). As of April 13th 2024, I believe those concerns are no longer valid. The startup journey is hard, and I wish more people would talk about all the ups and downs, so in the interest of transparency, I am re-adding the previously redacted content to provide a more accurate portrayal of what it all actually felt like to run a super-early stage startup.

First product as Vectorly

Let’s rewind the clock back to mid 2019. As mentioned in the last blog post

This week, we begin the NVP Labs accelerator program. Tomorrow, I’m going to head to the NVP office, and without a doubt we have a long road ahead of us. But I’m happy now, because I know we have a real shot of making dot Learn/Vectorly’s vision a reality.

We had just raised ~$600k from prominent investors, including founders of prominent companies like Hulu and Elemental technologies, which gave us 2.5 years of runway to build our vectorization technology.

We had the team, we had the time, and all we had to do was to get to get to work. Things felt good, and we were at a high point.

Our first post-funding outing in Bangalore

Following on from the days of “dot Learn”, we had set our focus on compressing videos for ed-tech companies in emerging markets, to help them save on cloud costs and improve user-experience for their end-users.

Since most of our prospective customers (ed-tech startups in emerging markets) were using platforms like YouTube or Vimeo to deliver videos to their users, we decided to build a video hosting platform (like Vimeo) with extra compression, and settings optimized for low-bandwidth use.

Vimeo for Emerging Markets — our first MVP

We built an MVP in a few weeks, and after cold-emailing literally 200 different potential customers in a list I had been compiling over months, we got a handful to actually try it, even if only for free.

User feedback

It had so many bugs though, and so many missing features that no one actually used it. It took another 3 months of development & feedback cycles to fix bugs and add enough features to convince our first few users to start using our video hosting service.

Number of videos uploaded to the platform (August — Oct 2019)

By September 2019 we had 2 true, real active users (one startup in India, one in Nigeria), each with 1000s of video on our hosting service, and each with 10K+ monthly active users. They were even willing to start paying $50/mo, and we had already begun setting up billing infrastructure. I was super excited to finally have paying users for our product, and it felt like months of work were starting to pay off.

Naturally, now that we had customers, we began looking at what next: how many customers would we need to raise our seed round?

Typically for a SaaS platform in the US, the benchmark is $10K/mo in revenue to raise a seed round of $1m-$3m. Running the numbers…

Running the numbers.

…we would have needed 2000 of these kinds of customers to reach that number. One hand, it was hard enough getting 2 companies (out of 200) to adopt out platform in 3 months. On-boarding another 2000 in 9 months would not only by difficult, but actually impossible because there aren’t even 2000 ed-tech startups at that scale (big enough to have a product and a budget, small enough to not use enterprise-grade platforms).

By October 2019, I knew we needed make another pivotal decision — do we keep going with this product (“Vimeo for Emerging Markets”) or do something else (“Vectorization”).

With funding and proper advisors, I decided to do things the ‘right way’ this time and convene a ‘Board Meeting’ with our advisors, to make a decision. We scheduled it for mid-November at a WeWork in San Francisco. Our advisors had some pretty impressive titles (founders of Hulu, founders of Elemental) so I’m surprised they agreed to it, but they did.

After preparing and sharing a bunch of market research, including market sizing, customer feedback and persona analysis, we sat down in a conference room at WeWork on November 14th to discuss the options on the table.

After an hour of discussion, it became clear that no one else wanted to keep working with ed-tech companies in emerging markets. There were too few, too fragmented, and with too little money to spare.

The Board unanimously voted to go full-force into video-vectorization, and while there was some debate on whether we should try to sell vectorization to large ed-tech companies like Coursera and Byjus, the majority voted to focus on Media and Entertainment (companies like Disney, Netflix and Warner), which was by far the biggest segment available.

⚠️ While all this was going on, I had a baby and top of flying between New York, San Francisco and Bangalore, we all moved from New York to San Francisco in Jan 2020

Vectorization

It was now December 2019, and we had only 2 months until our accelerator’s Demo day in Feb 2020. We were no-where close building an MVP and getting the traction needed to raise funding, so we decided to do the only thing we could: build a demo.

December 2019 was a glorious burst of programming. Flying to India, I spent a few weeks with the team in the zone, hacking away at code, and working towards a demo we could present to customers and investors alike.

A few days before Christmas 2019, we released our first honest-to-god Vectorized video (live demo)In January, Savant and the rest of the team worked on building on the demo, and putting together a solid ~20 second Simpsons clip (live demo), while I worked on our pitch deck and pre-pitched to investors, in anticipation of Demo day.

And then the day came: Feb 4th, 2020 — we pitched in front of ~1000 investors in the Bay Area, complete with demo.

Berkeley Skydeck Demo Day

The weeks after demo day were full of followups with investors, and I think we talked to over 100 different VCs in the span of 3 weeks. While we had some genuine investment interest, we weren’t actively looking for funding as we still had 18 months of runway, and I was adamant that we should first commercially prove our technology with a customer, so we mostly agreed to get-back in touch with these investors after getting more traction.

Towards the end of Feburary 2020, one investor did actually up-front offer us $150k on pretty reasonable terms. Given the looming talk of something called ‘Coronavirus’ that was starting to show up in the news, I decided to play it safe and just take the check, even if we didn’t need the money.

⚠️ I didn’t realize it at the time, but we actually absolutely needed the money. If we hadn’t taken that check in Feb 2020, we would have gone bankrupt in Q3 2021, just at the moment we had released our Virtual Background SDK when Hopin and others became our customers and things finally turned around.

In early March 2020, 12 months after applying for it, my wife got her green-card, so the first thing she did was go back home to Mexico to see her family. None of us knew at the time how quickly the pandemic lock-downs would come, and by the end of March, the border was closed, and Nadia and our 4-month old son were stuck in Mexico.After Demo Day, our goal was to make a sale. We actually had a few leads coming out of Demo Day, and were able to meet with companies like Verizon, NTT Docomo, LG, Huawei and Tencent — all of whom were vaguely interested in video compression.

We wrote up a whitepaper, prepared demos, and pitched to several of the companies (some in-person in February) and others over conference call in March. The following (real) feedback was pretty typical

I read through the updated vectorly white paper and watched the new demo video. It’s more encouraging than the previous demos and definitely a technical feat to accomplish the Simpsons video conversion so congrats to them on the progress. At the same time while file size is reduced by 75% (demo source), CPU usage is increased 10–100x (white paper source). I understand their rationale for thinking that the CPU usage can be optimized but still I’m not convinced that the tradeoff will eventually be worth it for a large number of use cases.

A number of customers had nit-picked on the quality and performance issues in our demos. The feedback was pretty consistent, so we resolved to double-down on improving our technology to address those challenges, hoping that then we could land a pilot.

Vectorized Peppa Pig Cartoon

April to August 2020 were spent heads-down coding. We even brought on several new team members, including one PhD graduate, with backgrounds in Computer Vision and AI, to help us work through some pretty gnarly tech problems and eventually improve both quality and performance of our demos to the point where they were good enough to present to customers.With updated demos in hand, we went back out into the market to try and get interest in doing pilot with our Vectorization tech.

Between August and September 2020, I worked my networks, sending 100s of emails, and expending all of my advisors’ and networks’ good-will to get in front of the right people at YouTube, Netflix, Warner, Crunchyroll and other large companies. Surprisingly, it worked, and we secured meetings with the right people at all of those companies.

How I imagine the VP of architecture at Warner Media, listening to our pitch

After all those months of hard work, all those late nights coding, after actually getting pitch meetings with right people at the world’s largest Media and Entertainment companies, the reaction we got back from those companies was “Meh”.

It turns out that

  • Even if we could help these large companies save money, saving them a few million per year is nice to have, but not a burning problem
  • It’s really hard to combine a video-codec like ours (only good for cartoons) with other codecs for non-cartoons. The overhead and complexity of managing such a system would cost more than any potential savings
  • Our vectorization tech was primarily good for flat 2D animation, which is small. There was a huge gray area of complex animated 3D content which our tech couldn’t handle.

After the last of these conversations, with Warner Media, I felt pretty dejected. I decided to give the idea one more shot: I was selected to present at a major industry conference (Demuxed) in October 2020, where engineers from all of the above-mentioned companies present about the latest developments in video-technology.

After presenting our Vectorization technology to the entire industry, maybe we would find a customer willing to give us a pilot.

After our talk at Demuxed, the general reaction was positive, in that our vectorization technology seemed cool and interesting. As a practical matter however, the same concerns were mentioned.

From when we shut down dot Learn in March 2018, to September 2020, I was absolutely convinced that if we could just get Vectorization to work, it was successful. A full 2 years after pivoting to Vectorly, we actually built it. It actually worked.

And yet, in the span of 2 months in Q3 2020, we invalidated the main thesis of the entire company. What could we do?

AI Upscaling

It November 2020 at this point. We had already tried and failed to develop two products since we raised our pre-seed round in mid 2019. 18 months after raising funds, we had no product, no revenue, no customers and no idea what do do.

I decided to give it one more month (until December) to figure out what we were going to do, and spent it vainly trying to do market analysis on any and every market idea & suggestion our team had come up with, related and unrelated to video compression.

I meticulously considered each idea / market-segment, and talked to hundreds of people from Animators to Hospital IT administrators to the head of CBS Sports, to understand what alternative applications factorization might-have, if any.

As it slowly dawned on me that none of the market-segments we considered seemed viable, I reflected on conversations I have had with the team:

Why not downscale the video, use AI to re-upscale it, and call that compression?

We originally dismissed the idea, as we were still focused on other areas. Now, in November, as we had no other options, I suggested we take another look at it.

There were two other market signals that made me think AI Upscaling was worth looking into.

  1. One of the potential customers was already looking into AI Upscaling
  2. Two projects already existed, with proofs-of-concept of video super-resolution

The idea of AI Upscaling as a form of compression seemed eminently attractive, as it overcame the main barriers we faced with the previous video codec we built:

  • It's not a new video codec. In fact, AI Upscaling works with any video-codec, and doesn't require any change in back-end infrastructure
  • It works on all kind of content, not just ed-tech or animations

A number of team members were skeptical that this was even feasible. My thought process was "Let's just assume it is possible — would there be market demand for it?"

I put together some pitch decks for a hypothetical product, and started sending it out to potential customers for feedback.

Unexpectedly, through one of our advisors, we got in touch with two media-executives who liked the pitch deck, and thought the idea would work really well in emerging markets. With their help, we landed meetings with CTOs and VPs at a number of large media companies including ZeeTV (India), TraceTV (Francophone Africa) and COZA (Nigeria).

Even more surprisingly, the feedback from those potential customers was overwhelmingly positive, and two actually agreed tentatively to set up a pilot, and signed NDAs with us so that we could demo our technology on their content.

It seemed like we finally had the commercial validation that we never had with our last few products, and on December 4th, 2020 — we announced to our investors that we were going full force into 'AI Compression' (AI Upscaling). The only thing left to do was to actually build the technology.

Because of the upcoming Holidays, and because the tentative pilot agreements were with enterprise customers, we knew that nothing was going to actually happen until January, which in-fact was great for us because we had absolutely no way of providing demos, because we didn’t have a product.We essentially had a month to build a new MVP from scratch, at least one that could provide real demos.

Our goal was to build a web-based real-time video upscaler (like this). While several team-members had AI backgrounds, they could only server-side Neural Networks. No one in our team knew how to build a web-based upscaler.

After seeing several existing web-based upscaling projects however (including Anime4K) I knew it was possible. Those projects used hard-coded Neural Networks in WebGL.

As CEO I knew I'm not supposed to be coding, but in the back of my heart, I knew it was doable, so I decided to drop everything on the business front and build a Proof of Concept Neural Network in WebGL.

In December 2020 I did an absolute crash-course in Neural Networks (which I had absolutely no background in), and learned enough to know how the mathematical operations for inference works in a Convolutional Neural Networks.

I asked our AI team members to give me a Pytorch AI model, and by mid-December I reverse engineered the models in pure python as well as in pure-Javascript, to make sure I understood the underlying math operations going at each stage in the Neural Network.

Working through Christmas, I leveraged my WebGL knowledge to build a Neural Network for scratch, layer by layer. By New Years, I was able to verify that our WebGL model was able to output the same result, pixel-for-pixel, as the Pytorch model for any given input.

WebGL Neural Network Code

In late December 202, as I was doing this, Yuvraj, one of our newer Computer Vision Engineers, decided to jump out of his comfort zone and start learning WebGL. Within 2 weeks, he had gotten to my level in WebGL, and by early January, he was helping me write and finish the Neural Networks in WebGL.

With our first neural-network PoC out of the way, we actually needed to build a real demo-quality neural-network, so throughout January Yuvraj, me and the AI team, formed a feedback loop to iterate over several Neural Networks until we finally reached our first good AI Upscaling network "residual_3k_3x" in late January.

By end-of-January 2021, we were able to publish our first demos of practical real-time video AI-Upscaling.

We had done it! We had not only built our first-real-world demos, our neural-networks were actually much faster and better quality than any of the existing open source projects!

The supposed commercial validation, the whole reason we rushed to build our demos, fell through. We weren't that disheartened though, because we were genuinely proud of the demos we had built. I knew we had the world's only practical real-time video web up-scaling library, and there was bound to be opportunity, we just had to go find it.

In parallel with working with the same media executives to find more potential emerging market customers, we decided to hit the traditional startup-trail, pinging forums on reddit, HackerNews and various slack groups. We even gave a talk about our AI Upscaler at SF Video talk (the same community as Demuxed)

We found a couple companies interested in our AI Upscaling library, so by mid-Feburary we turned out code into a developer SDK that anyone could embed into their website / web-app.

At first things were slow, and we had only had a handful of companies that reached out to us over email and who were trying the library manually. Eventually, we put up a full dashboard/web-app where people could sign up on our website and get-started with our upscaler by themselves.

After a few weeks, posting and sharing everywhere that we could, we started getting more and more signups for our SDK.

We followed up with each and every user, running interviews to to understand their use case, and luckily, and by April 2021, we had ~30 signups from kind of company we trying to sell to (big enough to have a budget, small enough to avoid corporate bureaucracy), all with legitimate use cases.

Spreadsheet of the companies we had talked to

Of course we were ecstatic — it was only a matter of time before one or two of these companies actually put us into their production application and started paying us.

As the weeks progressed however, and as we followed up with each potential customer, something always came up and by May 2021, no one had put us into production yet.

I started getting impatient and worried. Some thought I was overreacting, but one of our advisors thought I was right to be impatient. This was, after-all, the same instinct that had motivated every previous pivot. We were far better off than we were in November 2020, but we still had no commercial validation

With less than one year of runway left, with some interest but not enough traction to raise a round, we were left with the prospect of yet another pivot. I was honestly incredibly tired of pivot after pivot, but in May 2021 I decided — let's do one more round of market analysis, one last pivot, to see if we could get to something commercially successful.

Virtual Backgrounds

In May to June 2021, I did one more round of market analysis, analyzing every single plausible market application for AI Upscaling, from Satellite Photography to Police Body Cams to Telemedicine

Another round of Market analysis

One segment that kept coming up in the analysis was video-conferencing. When we originally posted info about our AI Upscaler library on Reddit/HN etc.., about half of the qualified traction we found was for video-conferencing use cases. We had also seen a number of companies in the video-conferencing space (like Agora) play around with AI Upscaling.

That said, AI Upscaling clearly wasn't a huge priority for these companies, so we started having more open-ended user-interviews with the companies we were in contact with.

(1) Video quality was never a perceived issue for those customers

(2) There were plenty of other issues (bugs, stability, feature requests) that always over-rode nice-to-haves like up-scaling

Interestingly, when we asked them about their product road-maps for 2021, a number of them had 'Virtual Backgrounds' (another AI-video-processing feature) on their to-do lists.

This was backed-up by articles like this one, mentioned Virtual Backgrounds as one of the top AI-related features that most companies would be adopting in 2021 and 2022.

The only problem was that the video-conferencing market was much smaller, with at best a few hundred companies we could realistically target, and it would be an up-hill battle to fundraise with this as our primary market.

So, we were left with a decision:

After weighing the options (see our actual notes on this), we decided to pivot to video-conferencing, and specifically to focus on Virtual Backgrounds.

We spent June 2021 building a new version of our SDK, focused on Virtual Backgrounds. To get to market ASAP, we started with Google's open-source Mediapipe model, as implemented by this repo, as a starting point. By the end of June 2021, we updated our website to reflect our focus on Virtual Backgrounds.

Literally 2 days after we updated our website, but before we told anyone about it (we were preparing our e-mail campaign), a company randomly signed up and sent us an email asking us how to pay (we hadn't even set up billing at this point). On July 1st, within 24 hours of that email, we had gotten on a call with the company, helped them integrate our SDK into production, set up Stripe, sent them a payment link, and booked our first real customer payment ever.

Me after our first sale

This was our first real revenue since we shut down our e-learning app in 2018, and the fact that it came so soon after releasing out latest iteration made me optimistic that this latest pivot might actually work.

The next few weeks proved this to be correct. By August 1st, we had our first 3 paying customers (two on enterprise contracts), and had 12 companies actively testing out our product, including Hopin. By September, after releasing our ultra-efficient WebGL Version, Hopin and dozens of other large companies, had committed to paying or put us in production.

Our Team in September

After all those pivots, after all those different failed products, we finally found a commercially successful product, and finally had the commercial validation we had waited nearly 3 years for, to go ahead and raise our seed round.

Fundraising and Acquisition

At some point during this process, after Hopin had tried out our product and were engaging with us on a commercial basis, they approached us about a potential acquisition.

We were interested, but we decided to evaluate both funding and acquisition alternatives.

By the end of September 2021, we had lined up 193 different investors in a spreadsheet, with whom we had talked to over the previous 2 years. We polished our seed round pitch deck, and on September 27th, 2021, we sent emails about our seed round.

The following 3 weeks were incredibly busy, packed with 4 to 8 investor calls per day, and we set up the traditional fundraising pipeline. By mid-October 2021, we had talked to ~50 different investors.

At some point though, the talks with Hopin got more serious, and we needed a no/no-go decision. It's not a decision I took lightly, and I did do an extensive analysis of each option, considering factors such as:

  • Implications of joining Hopin for our investors, us as team members, our customers and other stakeholders
  • What the alternative exit scenarios would be (e.g. IPO or another acquisition in the future) and how likely those would be

I even put together a full flowchart of all the options, with alternative paths and the likeliness of each path succeeding.

Acquisition Analysis Flowchart

Ultimately, we will most miss working closely with our Vectorly customers and partners. This amazing community, including early investors, saw the power of our technology so it was a very difficult decision. We decided to join Hopin because of the opportunity to make impact on a global scale and the incredible growth opportunities for everyone on the Vectorly teams. Personally, I like coding, and dislike admin/sales/fundraising/legal. Being able to focus on engineering and keep working on tech is what I am really excited to do at Hopin.

We joined Hopin on December 1st, 2021 and Hopin announced the transaction on the Hopin blog on December 3rd, 2021.

My own reflections on everything

How do I personally feel about all of this? Honestly, relieved. Relaxed. Happy.

I was burnt out by the end of this process. Not many people know, but I’ve been working nights and weekends on this startup since August 2013, when it began as a Peace Corps side project. By the time we founded the company in 2016, I had already spent 3 years with several failed ideas, 4 major pivots and hundreds of failed pitches. I’ve only ever known this project for my enter young-adult life / early career, and throughout the process I went to the Peace Corps, did an MBA, moved between Boston, Accra, Lagos, New York, Mexico City and San Francisco, got married, had a baby and handled everything from engineering to sales to fundraising to admin, legal and accounting

On one hand, the journey was a failure. My original goal with dot Learn was to make online education more accessible in emerging markets, and despite 5 years of trying, I never did, and I'm not sure I ever will. I tried, I failed, and I'm sorry.

On the other (more pragmatic) hand, the journey was a success. My first startup had an exit. Our team members got great jobs and we get to work on cool technology with very smart people at a fast growing company.

Perhaps more importantly, I achieved a major life goal. When I graduated from college, I set out to spent my early adult life working hard and making the most of my youth. I wanted to be able to look back on this period in my life and have interesting stories to tell, and in the 10 years since I’ve done exactly that.

The future

Our team is going to continue working on AI features(like Virtual Backgrounds and AI Upscaling) for Hopin’s suite of video products. You may see professional talks about our work in various forums, communities or posts.

As for me personally, I plan to stay put in the Bay Area working with Hopin. At some point I'd like to take a year off to do some travel (covid-permitting).

I do plan on working on another startup — making affordable prosthesis in Mexico, at some point in the future.

Until then, I want to spend more time with my 2 year old son who is growing up quickly, as well as to support my wife, who has sacrificed a lot to put up with me over the past few years.

If there's time, I'm interested in working on one or more side projects related to dot Learn's original mission, whether that means contributing to open-source compression projects or volunteering time & money towards teacher-training projects in emerging markets.

Who knows. The future is wide open. Let's see what comes next.

--

--