02 April 2016

I love my life But when I open up my blurry eyes It's not as nice
— K.Flay, FML

NOTE: This is in many ways a rant about fundraising, starting companies and how code/idea quality do not necessarily correlate directly to sucess. To maintain what little sanity I have left this post has been backdated.

I’m tired. I’m really tired. Let me tell you why.

All of this, the entire journey that lead to the creation and failure to further PrintShare, started back in January when I decided to attend a medical hackathon. This story is going to be incredibly long, so let me just say from the onset, if you’re not interested, this would probably be the time to bail.

Anyway, it was the weekend of the 22nd-24th of January and I ventured to New Haven for this seemingly small event: CBIT-YNHHS Healthcare Hackathon. Now to be clear about how ironic all of this is, I almost didn’t go. The night before I was talking with the friends I was staying with at Yale and we almost universally agreed that this was a weird event -- seemingly more of a job fair or idea-jam then the type of hackathon they know I’d usually like to attend. I was partially resolved that night to just skip the event, to just go and write some software by myself and forget what I travelled to New Haven for in the first place. This was only compounded by the fact that a literal blizzard rolled in on Saturday morning and made travel from Old Campus to the medical school nearly impossible. For reference, when I left New Haven to return home on Monday (I got stuck there!) they’d received ~24” of snow. At any rate, Evaline convinced me that even if I was going to skip it I should at least go and see what I was skipping before I left, so, slightly aggravated, I got on the bus and headed over there. This was an atypical hackathon, one that involved a lot of speeches and then for people to pitch the ideas for projects they wanted to build before they could start. I was pretty skeptical during the entire opening ceremony (it didn’t seem like the type of people or format I was comfortable with). When the time came, I pitched what I saw as the overarching problem that encompassed all the other problems: lack of middleware. I then asked for those who had the skills to come work with me on this. That’s how I met Aaron, someone still doing so much I can’t quite pin it all down or come close to understanding it. I’ll talk more about Aaron later but in general, he was the only reason I stayed. He not only had the skills to write software but also had access to the Yale New Haven Health System EMRs/EHRs, what would end up being crucial to the success of our project.

So at this point you’re probably saying to yourself, “Cooper, you said this post was about fundraising, and here you are telling me about a hackathon!” I’m about to get there, just let me keep laying the groundwork!

So this hackathon was rather peculiar, but as hackers we’re peculiar so I figured I’d just roll with it and see how it turned out. No other team there wrote or built an actual product. Everyone else was building mocks in PowerPoint, making physical models using real-world resources, or simply just coming up with pitches to sell their ideas at the closing ceremony. This hackathon, and in hindsight it’s really clear, was more of an idea-jam. They had mentors and people to help us with our pitches, to help us come up with business models, etc. If you condensed an accelerator into a two day weekend and told everyone they didn’t have to build anything real, but instead needed to solidify an idea to work on afterward that was medical related, that would probably bring you as close to recreating this event as possible. So with all that being said, we built something pretty cool.

I’m still undecided about what I want to do with the software, so because of that I’m going to give you a pretty in-depth analysis of what we can do, but I’m not quite ready to fully Open Source (OS) this because I might want to try to apply this again in the future.

To understand our solution you must first understand the problem. Let’s begin. If you’re being treated at a hospital in California and you need to seek treatment elsewhere, say at Yale New Haven (YNHHS), when you get to YNHHS they will call up your California Hospital and request your records. This will then lead to a form being faxed to YNHHS that will authorize the release of the records in a HIPAA compliant manner and when this is recieved the hospital in California will then go and print all of your Electronic Medical Records that were requested from whatever management program they might have (EPIC, Cerner, Meditech), fax them and then shred them. THIS IS LITERALLY INSANE! WHY?!

So let’s break this down. This begins with a damn phone call, a phone call! They register interest and then send a FAX. As a 19 year old, the last time I saw a fax machine was in 2001 when my father disposed of ours, but as I came to learn over the past 3 months, the government and healthcare systems (in the United States) use fax as a means of secure transfer because they have verified phone numbers and dot-codes meaning it’s very hard to spoof, and it’s low-tech enough that they don’t worry about intercept during transmission. So, you’re a hospital, you receive the phone call, fax your request, and then go and PRINT, that’s right you PRINT everything that’s in your DIGITAL patient management system. I’m getting angry just sitting at my desk. This is so backwards. So now that you’ve printed all your records out, you fax them and then shred the PRINTED paper, effectively creating waste so you can maintain your level of patient security.

Just dwell on how stupid all of this is for a moment.

Okay, we’re back. Now that you can realize how INSANE all of that is, I want to explain why the incumbents won’t change this. So let’s say you’re at that hospital in California, and you’re going to YNHHS, and let’s say you have a cardiac condition. Now when you go to YNHHS and they’re treating you, it’s assumed that they have your entire medical history and won’t glaringly omit anything. For a moment, though, assume that when the person who faxed your history made an error and she left a page of your “comprehensive history EMR” off of the transmission. Let’s just say for kicks this page was the one that detailed your cardiac condition. Now, I’m not a doctor and don’t really know anything about the medical industry (disclaimer), but let’s just say something happened, you were unconscious, and YNHHS was treating you based on this history but they don’t know you have a cardiac condition because that page is missing. This is a goddamn liability nightmare. The reason that none of this system will change is the person liable is the one that sent the transmission, not the hospital. So in the backwards and inefficient transmission system the hospital is protected! Because they’re not complaining and because the incumbents don’t want to work on this, the entire process will never change.

Alright, “Cooper, Cooper, why does any of this matter?!” I’m getting there, geez.

So, we built PrintShare! It was rather simple (or at least I thought): a little piece of Windows software with some outside dependencies that installed itself (without administrator privileges) as a Windows print driver! So now you’re probably saying “How does this solve any of the problems you just detailed above!” Well, what we do is rather simple. When you go to print the documents you were going to send, rather than print them out, fax them, and then shred them, you just send them digitally, in a fraction of the time, and never worry about it again! As I’m writing this now it sounds so, so trivial. In our envisioned flow, when you go to print, a dialog box pops up and it tells you to input either a fax, or an email. You can send the documents per normal via fax (we spoof the number and dot-code) and at this point you’re already ahead because you’re saving money on paper. If you instead choose to send them via email we have a process for verifying what are actual hospital/doctor’s emails, and then you can send the transmission to a verified recipient who will simply receive the scans on her end as a PDF thereby mitigating the time and paper on both ends.

Essentially, what we built is a secure Print-to-PDF driver that handles end-to-end transfer of Electronic Medical Records so they stay electronic. I think this is pretty simple, but apparently it’s not. So, at the hackathon, we got this WORKING. As in we wrote the software, yet we didn’t win. In fact, we didn’t even come CLOSE. Instead, we were told that we were facing major HIPAA violations (of which there are none) and it was strongly implied that while we were the only team that actually built a full product and not some .pptx, it wasn’t impressive enough.

Alright, I’m not a bitter person, so I took this in stride and I got back to work. Aaron and I decided we were going to continue to work on this because we knew that there was a re-pitch and that we could potentially land the Center for Biomedial and Interventional Technology (CBIT) and YNHHS and get ourselves some real funding and a customer. In our minds this was simple: we have a working product, so we just need a logical appeal, a great deck when we re-pitch, and it will work.

We decided to continue work on Tuesday the 26th of January after a ton of back and forth email. On the 28th of January I filed for, and subsequently received a provisional patent on the idea. So at this point Aaron and I decided we would continue development to try and get into Yale New Haven Health system, but we were at the hands of CBIT for scheduling the pitch (the dates were never clear). We filed for and were waiting to receive a provisional patent, and we decided to shop this around (logical, as we have a working product and deck from the hackathon) to some VCs.

Let’s start with the VCs.

I’m 19, I’m a freshman pursuing an undergraduate degree (that’s a topic for a whole other post though) and I like to think I’m pretty logical. I follow things through from inception to closure, and I base my arguments and decisions on what seems rational and attainable. So when I contacted some people at Oak HC/FT (I’ll admit I had some help) I was told I needed a brief 1-2 page explainer of what it was that we did and how (you can read that in the info dump below in the document entitled “Solicit Description”). On a side note, I’d recommend you read everything that’s in there if you’ve come this far. Now, I thought I was very, very clear. I laid out what I’ve explained to you, dear Reader, and I also laid out some future plans that we had. I included the deck from the original pitch (also found below) and I sent it off.

Hook. Line. Miss.

Not far enough along. Not enough of a defined scope. To broad of an idea -- narrow it down, they said! We don’t understand what you’re doing (even though I thought I couldn’t be more clear, but you can decide for yourself).

Failure one. Failure to market ourselves, the problem and the product clearly. This right here, this should have been a bigger eye-opener then it was. I certainly adjusted the strategy and kept this in mind when I made subsequent pitches/decks but it was clear from this point that people either didn’t see the problem, didn’t think it was an issue, or didn’t think this was the right, or far enough along solution.

So I want to be incredibly clear at this point. I LOVED the people at Oak HC/FT. They’re actually honest and did their due diligence on us. I’m not complaining about investors, and I want to be clear: if I ever have another HealthCare or FinTech related business that gets some traction I’ll be going straight to them. It should be abundantly clear that I’m not assailing them.

Instead, I’m assailing the institutional thinking. For a lot of people, what we pitched wasn't so much a product as it was the idea of going digital, of accomplishing everything online -- something that went against established, accepted, tradition that made them uncomfortable. It wasn’t necessarily their age (though most of the people we pitched were older by nature as getting an M.D. and being respected in the medical field takes time) but the fact they’d spent so long in the institution that the institution DIDN’T look as crazy as it did to me, a complete and total outsider. It’s this combination of stagnation of thought, complacency and groupthink that create an intersection by which the insanity of the institution appears normal, and we, as the outsiders attempting to change the system are regarded as assailants and questioned accordingly.

So now for a little technical bit.

I rewrote the API for this 3 times. I started by how I would’ve before this project with my own server implementation in PHP. That initial deploy was pretty large and it took me one month, all of February, to pin down so that this would work properly (note to self, never ever use Phalcon again). Then, when I was back at Yale on March 4th I had some free time on that Friday night and I said, “Meh, I can get better performance, let me do this in Node.js” and that implementation was maybe 1/8 of the amount of code of the original and performed better (written in one(!) night mind you). From there though, and the reason I’m writing about this, I found out about AWS Lambda (thanks to the person who I know is reading this but wouldn’t want to be named), and holy fucking shit is that service amazing. It simply could not be more amazing. In 13 lines, 13 motherfucking lines, I had a working API that was completely built on the Amazon stack. Meaning no longer was I responsible for uptime, reliability or signing, instead that was all on Amazon and that was amazing.

I bring this up for two reasons, one because Lambda is amazing and you should go use it right now, and two because this gets at a bigger issue. For the entire month of February I was spending a sizeable portion of my free time (late nights, mornings, and weekends) pinning down the specification for the API. It gets hard to keep working when you’re team is busy, or it feels like they aren’t engaged. Aaron and I were using Slack, and certainly we were talking regularly but we’re both very, very busy people, Aaron even more so than me. Now, I want to be clear, I really like Aaron (and I might want him to write me a letter at some point, especially when he gets those letters after his name 😁😁!) but it’s very hard for me, at least personally, to continue working so hard when it can feel like I’m the only one driving, when it feels like I’m the only one pushing commits and continuing to drive development.

In the future, if Aaron has more time, and I’m available, I would love to work on another project with him because we think similarly, and yet we approach problems in different ways and it’s for this reason that I think we would write some truly amazing software together. That said, it was just so very hard to continuing developing PrintShare at pace when it felt to me at times like I was the only one that was pushing as hard to keep moving forward.

So this all brings me to this week. I’d been working on the software until the middle of March, and then in my free time began putting together the deck for the CBIT repitch, the one in which we’d hopefully get monetary backing and assistance from CBIT that would put us in YNHHS with real users and get us on a trajectory to success.

We aced the pitch. Not.

Failure two. So at 4:45PM on Tuesday the 29th of March, 2016, after having made the deck and rehearsed my pitch many times over the 2 weeks prior to the event, I let it all go and gave it my best. I thought I delivered the best possible pitch, covering all bases in the 6 minutes I was given and then awaited my Q&A. The HIPAA question. I was not surprised, CBIT was still hung up on how this was compliant, and I tried to make it clear that we weren’t doing anything differently than they currently were, just changing the physical state & process for doing so. Then the IP question asking about how dependent we were on getting the patent to proceed. Time ended.

I felt like I had gotten it, people laughed (this didn’t happen in response to any other pitch) and they liked the deck! But when the results came back we not only didn’t win, but had the same critical feedback that we got initially, evaluators believing we didn’t understand the market, or the problem. I’m a believer in free information so you can also find those linked at the bottom.

This hurt, it really hurt. I don’t know how else to say it. We were the only people there with a finished, fully functioning product. The only people for whom CBIT could see immediate success and not waste years and millions of dollars going through regulatory and IP landscapes to maybe get to market. Yet, despite seeming so logical, and such a good idea it didn’t appear that way to them.

I felt done. I feel done.

Now before I get into the negatives I want to mention that I’m going to Cigna this summer to work with SE&I, and I’m incredibly thrilled about that. The only reason I have this opportunity afforded to me is because I embarked on this journey and I met the right people at the right time, and so, if nothing else, if not for meeting Aaron, learning to write better software and trying and failing at my first real software startup, then at the least I got an amazing opportunity to work with Cigna out of this.

On to the negatives.

First, let me say that I’m sorry if this comes off as being conceited, dishonest or in poor taste, but it’s how I feel and I like to be honest on my own site. I feel tired because I’m done with being the best and not winning. I’m tired of working beyond my limit, of pushing the boundaries, or really and truly trying to be a league above everyone else and yet still losing out to the people who appear to be below me. I’m tired of working on projects that should be winners, but end up as losers. I’m tired of having my success be tethered to the perceptions of the rest of the world, and not to my own ability. I’m tired of losing.

Talking about failure publicly is really important to me. When I wrote about why I was leaving Facebook one of the main factors for me was that people only post the good there, never the bad. For instance people only post when they’re accepted into their reach colleges to celebrate, never when they get rejected and it’s this seemingly jilted dichotomy that bothers me. For every success you tout there have to be an equal number, if not more, of absolutely horrific failures that occurred, and yet we never share them. Instead, if we do decide to talk about failure, we fetisihize it, “Fail quick, fail fast” or “I like failing because it helps me to figure out what doesn’t work more quickly.” No, really? What we never do though is be honest. We, as a society, never just talk about how things make us feel. How absolutely and positively horrible it feels to lose, how worthless it makes you feel to be the one that didn’t get picked or see all of your immense effort expended for naught. I’m done with this.

The reason I’m posting here is because I care about honesty and I don’t care how it makes me look. I don’t care if you think I’m selfish, conceited or just in general a bad person. At the least I’ll know that I’m a person, and not trying to portray myself as anything beyond that. I fail and I’m honest. I feel horrible and I want to tell you about it. It doesn’t benefit me to hide this from you. Instead, by sharing my failures openly, it makes me a better person because I have nothing to hide or fear from the world.

I’m incredibly proud to be a member of the extended Yale community, fortunate for the opportunities that are constantly afforded to me, and for the fact that my I’m privileged enough to even have the focus of this entire post be a problem in my life. So I want you to know that while I’m tired, I still recognize how lucky, how fortunate, how exceedingly rare a position I’m in, and for that I can be appreciative. For now though, I need a break. I need some time to figure out more personally why I failed and how I can come back at a different problem and really solve it.

I’m tired. I’m really tired, but if you have a project you want to work on with me, let me know, because I’m hungrier than ever to win and I’m ready to do whatever it takes to get it.

Click this to download all the files I've mentioned. View/download individual files below.