Exambuff - Open Sourced Startup
Summary
Exambuff was my exam preparation startup. I failed because I didn't know my customers, wrote code too early, tried to sell to institutions and didn't find a co-founder. Please take the code (30k lines, PHP/Flex), design & docs and make a go of the business.
The first business I attempted was Exambuff. It was a service to help university students pass exams. You'd hand-write an answer to an example exam question from your course, upload it to a PhD student, and they'd comment on it and tell you where you were going wrong.
I didn't make a single penny. I've decided to analyse why my hard work came to nothing, and post the whole thing online. Although it didn't succeed, I'm happy I did it. Equally it'd be great if I and other people don't make the same mistakes by learning from it. Better still, perhaps you can make something of it?
Read on to find out where I went wrong, and ideas I've had for more fruitful markets.
Hello world
Exambuff allowed you to upload images of hand-written answers, which the PhD students then annotated and commented upon on screen. The student could then view the commented answers.
The upload/checkout flow, with fancy uploading and 700 never-to-be-used lines of code to take credit card payments (sigh). I added the document (rather than image) upload long after the original coding was done.
I counted the lines of code in the project after cleaning out libraries.
555 text files. 483 unique files. 2280 files ignored. http://cloc.sourceforge.net v 1.53 T=1.0 s (450.0 files/s, 67346.0 lines/s) ------------------------------------------------------------------------------- Language files blank comment code ------------------------------------------------------------------------------- PHP 315 4185 12998 26526 HTML 32 351 144 11181 CSS 9 55 73 4179 ActionScript 49 393 767 2211 MXML 27 253 3 2197 Javascript 15 139 209 1117 SQL 1 56 83 199 XML 2 0 0 27 ------------------------------------------------------------------------------- SUM: 450 5432 14277 47637 -------------------------------------------------------------------------------
That's a lot of code that never saw a single paying customer...
The Story
I had the idea during exams in my second year of university, and immediately asked people what they thought and paid for a Facebook survey. What do you know, people thought it was a great idea, and the survey said they'd pay for help with their exams!
I'd applied for a year in industry at HP, and got offered it on the last day of term. But I immediately started working on Exambuff in the evenings. After a month I handed in my notice to work on Exambuff and complete my history degree, not being able to face the grey cubical in a grey building doing... project management. I coded it in ~6 months - July 2008 until January 2009 when I first promoted it.
I started recruiting PhD students to be the markers early, and it proved to be the easy bit. I had excellent applicants from top universities.
I didn't launch at my campus that year after pitching it as a service to learning support department of my university. They said they'd think about adopting it to offer to students, but asked if I could not launch or promote there until they'd decided. I thought that was pretty exciting, and bought some flyering at a different university instead. It resulted in 0 sales from a handful of visits. I phoned up the university that did the promotion and they promised it had happened. Ouch.
After that I entered a few startup competitions and won around £3,000 to spend on promotion and resources. I spent around £500 on promotion in all. I bought a lot of business and coding books.
During the run up to my exams I had less and less time as my dissertation loomed. Since I couldn't launch at my uni anyway, I thought I'd go with Facebook ads only. I spent my vouchers, got a few hundred clicks: no sales.
On graduating I headed out into freelancing, ending up employing two people full time. Firstly I needed to pay the rent, and secondly there was nothing to do really until next exam season. By the time that came round, my uni had decided not to work with me, I was busy with clients and deadlines, and pretty demoralised that I'd not had a single customer in the two years since I'd started. I threw in the towel.
What went wrong
Looking back I can see so many reasons why a customer never appeared. It'd be great if there were a format for sharing post mortems in startups. I've used a modified list of Paul Graham's The 18 mistakes that kill startups (removing everything about funding, as it played no real part):
Key:
- Explains failure
- Didn't contribute to failure
- Not applicable
- 1. Single Founder
- I distinctly remember thinking "I'll keep all the winnings for myself". Foolish. So much better to have a small slice of something that a big one of nothing.
- 2. Bad Location
- 3. Marginal Niche
- While there are plenty of university students, I'd call this marginal for two reasons: the tiny period in which they are interested in examination services, and the smaller number who'd are interested enough in their studies to pay for help.
- 4. Derivative Idea
- 5. Obstinacy
- 6. Hiring Bad Programmers
- Well, the code isn't pretty but it was hardly the limiting factor.
- 7. Choosing the Wrong Platform
- 8. Slowness in Launching
- I waiting for my uni to buy. I didn't realise that as an institutional customer, their decision process is measured in years.
- 9. Launching Too Early
- Even when I did half-launch, I didn't know anything about the customer.
- 10. Having No Specific User in Mind
- 15. Sacrificing Users to (Supposed) Profit
- 16. Not Wanting to Get Your Hands Dirty
- I was too embarrassed to talk to fellow students about the idea in person, and possibly I didn't want to hear what they'd say. I did research on the project, and found most students would use it if it were free, and quite a lot of lecturers were pro too.
- 17. Fights Between Founders
- 18. A Half-Hearted Effort
- I didn't quit my degree, but like trying to fly without wings, it's wasn't the effort that went in that prevented takeoff.
I'd argue PG's list missed or underemphasises the three factors that best explain my failure in Exambuff, and that are more common than many of the above.
- 19. Not understanding customers
- 20. Harmful ramifications of knowing how to code
- 21. Market or industry forces
Not understanding customers
Not understanding my customers was the killer. From day one, every day I wasn't talking to customers I was risking more and more of my time on unknown foundations. More recently, when I've talked to customers they've shattered my illusions and I've been thankful for it - they've saved me unrewarded toil.
That said - I did do surveys - one on Facebook and a larger one. But I didn't realise how easy it is to get people to say they'd pay for something, and how little that translates into sales. It really doesn't compare to face to face interviews, and trying to gather pre-orders.
I never did get round to interviewing customers, but I'd guess the following (key word: guess):
- Most students don't care that much about their education
- There are a lot of students in the UK, but most are cruising
- Those who do care, wouldn't want help
- I cared about my study, and wouldn't have used the service from pride. I assume I'm not alone
- Practice essays are done late
- Very small sales window
Harmful ramifications of knowing how to code
Hammer nail syndrome
Having technical skills made me want to use them. If I wasn't a coder, I could have run the service as a mail-order one, or via email, or in face-to-face sessions. Additionally I might have made a simple landing page and checked if people bought before I wrote any real code.
Instead I built perhaps the most complex possible version first. Rather than mail order, upload. Rather than documents, images of hand written answers. Since they were images, I wrote an image annotator (from scratch), and, of course, a viewer for the annotations.
Couldn't wait to get started
Startups are online, startups involve code, and I could code! I couldn't wait to start writing it. It's similar to building a bridge before doing a survey: inevitably disastrous.
My over-complex system was never ever tested. The only scaling problem I should have worried about was scaling up the number of customers. I found an email attesting to the dangers of dreaming and the premature optimisation it leads to - in 08/2008, I was worried about scaling the app!
In future I've endeavoured never to write a line of code until the customers are validated and I have pre-orders. I've learned that the code is the last thing I should worry about.
Market or industry forces
The market I aimed at is utterly seasonal. I couldn't run tests or promotions at any other time - no student really cares until their exams arrive. In terms of iteration this was a killer - especially compounded with being a sole founder, one who had the same schedule as the customer. I had to prepare a launch at the same time as preparing for my exams.
Secondly the institutional market - universities - would be a very tough nut to crack and wasted so much time. I didn't realise that institutional customers are pretty well worthless for a startup - their sales cycle will last longer than your company. My own university, which gave me some funds, asked that I waited to launch on my campus if I wanted to sell to them. They after a year they said no. I can't believe I kept going after that really - inspiration really is perishable. I just hoped I'd be able to make direct to customer sales.
What worked
Exambuff demonstrated one thing clearly: there are a lot of extremely bright PhD students without flexible work. There have to be many interesting business based around using this resource. Some of the CVs I received were jaw-droppingly perfect - future academics and clearly high fliers. There must be a startup that could make something with them.
Hindsight proviso.
Whatever I think I know, I'm still unsure why people didn't want the service. I'm embarrassed to admit how little I know about the site's tiny number of visitors. Perhaps the business is quite viable if I hadn't chosen yellow as a colour scheme.
What might work still
A few ideas:
- Overseas students
- Pay significantly higher fees, and more at risk at doing disproportionately badly at UK exams due to less experience with the examination style, and language
- Overseas students' parents
- The ones paying those fees - perhaps it'd not be a stretch to pay a little more
- GCSE & A Level student parents (US - equivalent of high-school and 1st year of college)
- Parents often care a lot more about exam success than their offspring (until university this was true of me. Sorry mum & dad)
- Competing with private tuition. Might be a hard sell, as it won't be perceived as offering anywhere near as much value as face to face tuition, and those who buy tuition are rarely hard up.
- Professional qualifications
- Older students, paying more for their studies, better motivated(?)
Lessons
- Next time I'm going to find out everything about my customers.
- The only metric I care about is pre-orders (and then orders. A big "and then" though :) )
- I'm going to avoid writing a single line of code until I'm forced to. I'll get by with emails and fake any backend processes. What is worth automating till you have traction?
- I'll find a co-founder, and one not like me. If I had a non-technical co-founder I might have had someone to point out we didn't know what to build yet (although actually this didn't happen in practice in my next startup - another time)
- Institutional customers are not easily served by startups.
- Lots of PhD students out there want flexible work - opportunity.
A few thanks
Along the way I met some great people. Thanks to Adam Paulisick who gave me some killer advice that came too late to execute one. Bernard Howard also. The team at RHUL Research and Enterprise. & special thanks to my wonderful GF, for putting up with how much time I spent on it :)
In reading that heap of business and coding books I did find some good ones - here's my list of startup resources.
Fin
So - here's the complete business to download and do what you will with. The platform could be used for a few different businesses, and perhaps you're the person to make something of it. It's technically derisked for one thing :) Let me know how it goes!