I sort of know what the term "startup" means now
I'm just going to sprinkle this post with random photos. Hope you don't mind if they're not relevant.
It seems that the terms "startup" and "entrepreneurship" tend to get thrown around a lot these days. Even though I've interned at a start up before, been involved with the tech community, and "worked" out of a coworking space full of them for the past 2 years, I've never really... felt anything from those terms.
So it finally hit me, codervox is indeed a startup, and with that comes all of the issues, pain, and "good stuff" from running your own business or company.
An analogy to this situation could be... pretend you're a stark ignorant tourist in a foreign country, for some reason you spent the last couple years living there, but you only ate at mcdonalds, western restaurants, and did things that were familiar to you. Suddenly you find a friend native to that country, and when you guys start to hang out, you slowly learn more of the country's culture and language. You start to see things differently, everything that surrounded you, but you ignored in the past come to effect. "Oh that sign says yakitori, and it's fucking amazing." "Oh that sign means don't use the cellphone here, I see... why I got those looks now" This is sort of what I'm going through.
All the jargon, the talks about investment, equity, business, team building... that I largely ignored over the years cause I was too busy caught up with being confused with myself are rushing in and are highly useful to what we're doing.
Here are some things that I've learned so far after only doing 1 run of classes, which are basically points made from any person who has talked about a startup ever. I apologize for any overlap, because largely this post is trying to make sense of a huge jumble of things.
1. Making something out of nothing is incredibly difficult.
I hear a lot of app and business ideas.
To be able to allocate time out of your usual routine to start on something new is hard. After you find the time and motivation, you have to assemble what resources you have(often times just a laptop), attain the things that you don't have, then sit on your ass for a long time in order to mangle together a seemingly working, but slopped together product that people can start using.
What more is, once you make the damn thing, you have to expect that other people will somehow fit the usage of your product into their busy or usual schedule as well, so it has to be seamless and easy to use, something they really want, or just something fucking amazing.
In the case of codervox, it wasn't my idea. I was just roped into the team mainly because of the overwhelming evidence that there is a demand for coding education. As described in my the first post I made about the class, it just turned the resources for making a programming class were available.
- A classroom provided by the coworking space I was a member of
- A teacher who I met playing video games
- Students who I met through the course of college (and video games) and their friends
- A team of mentors who I've surrounded myself with all these past years of not knowing what the hell was going on with my life, whether it be members of Chicon, or just old Comp Sci buddies.
After assembling those components came time to start making all of the curriculum for class, actually running classes, and working around the team's schedule, which consisted of 4 of us, but 3 still had full time jobs.
There's so much variability to it all. Why are we setting the class to 6 weeks? Can we cover all the material we want to in that time? What exactly are students getting out of all of this? There are so many variables, often times you set hard number in the beginning just on a whim or assumption.
In the end I think the most important thing about starting something is, you just have to sit down and start doing it. Pull your resources together fast, get things going fast even if you have no idea what's happening, and see the result, adjust, and keep going. It's often hard to get started since you feel like you have to do things "correctly" the first time. But in reality, it's all about... again, just slopping something together that kind of works, getting feedback, working on the product again, and reiterating until you get something actually pretty good. It takes time and it's hard work.
You often see press about some startup selling for millions or billions, but in reality a lot of hard work and sweat went into making those products from nothing, and in a large part I think they have been rewarded accordingly for putting in the time and hard work.
2. Your team is very important.
My brother always preached to me, "The most important thing is that you value to your team and what you're doing." All of these years, I thought "Okay I can code, that's value right??" But in the case of doing a startup, you quickly realize there's an ass ton of other things you have to do because there are so few of you. You can't just work as just a single cog in the machine like you can at a corporate or large company.
The people on your team need to have a main role, and after that be able to do maybe 3-4 other roles as well.
Having to clean up after class since their isn't an office janitor. Having to go to career fairs and networking events to try and find new students, teachers, and mentors. Having to create advertising. Creating a website, and then maintain it. Having to create a facebook and social media presence and maintain it. Having to meet potential students and convince them your class is worth taking and to get them excited about it. Oh we're taking in money??? What do we need to set up to do that? What forms are there to fill out? Taxes? Employee payment? Managing finances? What's the equity split? How are big decisions made? Having to tutor students who need help for 3-4 hours each on the weekends. Having to create lecture content and actually teach it live to people. Having to create class projects and homework that actually make "basic" programming seem useful. Having to keep up with every student's progress. Having to keep class moral up mid semester when they've been hammered by tough material so long. Shirts(still haven't made them...). Having to create fun and engaging events, plan them out, and actually run them. Having to reach out to influential people for guidance and future planning. Having to figure out how to improve on what we have done and learn from the mistakes of the past. Future growth?? Investment??
So. Many. Things.
Often times a startup is only 1, 2, 3, 4... people, and there's a lot to do.
3. Maintaining what you made is incredibly difficult.
So you made the product, people are using it. What now?
I might have already given clues into this topic with the ramble above, but yeah, once you start rolling, you have to keep the ball moving.
For us these factors include: student motivation and progress, mentor motivation(they're doing this for pizza, can you believe that??), tailoring class material and content according to the pace of the current students... getting everything aligned to make the next run of classes better...
Not to mention, while doing this, you now have to go back and fix all the janky crap you made on the first run and do them right now that you have a clearer view of the monster you're actually dealing with.
For those who know me, I'm incredibly bad with maintaining anything. Which why it's even more important that you have a solid team to carry the company through the low points and difficult times.
4. The weight of the phrase "fail fast."
Often times entrepreneurs throw around the phrase "fail fast" as being something very valuable and a good thing. I agree that it's an amazing thing, and you learn a lot by failing, but thing is... it hurts so fucking much when it's happening.
So much random stuff happens. Weather becomes bad and you have to cancel class. Students bailing and quitting class without ever reaching out to you when you made yourself widely available, students getting into car accidents and can't continue. How do you plan for all of this? You can't. And it sucks.
You give it your all, and these things that you can't possibly preemptively take care of happen out of the blue. Daggers in the heart.
I largely consider our first run to be slightly on the fail side of things. We started off with 16 students, we dropped down to 12, then down to 9. CS major finding the course too easy, car crash, pregnancy, people finding themselves between jobs, people finding themselves hopelessly behind (EVEN THOUGH WE MADE IT CLEAR WE WERE SITTING AT BREW AND BREW FOR HOURS WAITING FOR THEM[I now know how TA's feel in college T_T]).
I would say of the original 16, about 3 students really got something out of it, and one(a brilliant and hard working sushi delivery man) is getting an interview due to his hard work. That's why it wasn't a total fail.
In our break between classes, we're going over our old assignments, making lessons clearer, making videos for all lessons, managing finances better, and learning from all our mistakes in the past. The thing about this is, we're probably going to make many mistakes again, and it sucks that in the case with a 6 week class, the periods of calibration are very far apart. Start in end of Jan, 6 weeks, we're in March, calibrate, Start next class end of March, End that class in May, calibrate. repeat that 2-3 more times and already as year has passed.
Time flies. It's like watching a tree grow. A tree that eats money, demands constant attention, babying, that needs a lullaby to sleep, only eats their eggs over medium, and likes techno music.
5. So if making a startup is so much pain, why are you doing it?
Because it's rewarding. To be able to teach something valuable to people who want to learn it. It confirms that you didn't spend the last 4+ years of your life suffering the computer lab for nothing.
Pretend you had a figure skating class, it's redeeming when you see someone wanting to skate since you've fallen on your butt X number of times in the past years, and still love it dearly. You try to give them all the tips to succeed faster, and not fall on their ass as many times as you, and it means a lot.
The product is yours, you can actually touch it. It reacts to you, it suffers when you ignore it, it can potentially thrive when you put time in it. It's an alternative to playing a game of telephone between 4 tiers of managers saying you need something changed on a website that only used by "internal" users, only for you to return to Reddit and Facebook for the rest of the day, not do anything, and not feel anything get damaged or worsen as a result of it. The mark of success is a successful and thriving business, rather than some behind the scenes diagnostic on how many tickets you completed in the last cycle and not getting fired.
When asking for advice, first google and do research... before doing asking someone out for coffee. It's ironic that we preach that part of becoming a programmer is learning how to google well.. and yet when it comes to anything businessy, we fail to that. Heh.
So yeah, correct me if I'm mistaken.