3 ms·
You have it the other way around. Resumes, programming skill, college degrees mean nothing. NOTHING. You should be complaining about your ability to think
by jiggity 14y ago
You have it the other way around. Resumes, programming skill, college degrees mean nothing. NOTHING. You should be complaining about your ability to think up interesting problems and interesting solutions to solve them.
.
Think of programming like Legos. The only fun way to play with Legos is to pick an awesome thing to make beforehand (Say a 3 foot tall T-Rex) then figure out how to put random pieces together until you have what you had in mind. It doesn't matter you don't know fluid dynamics, rigid body mechanics, or structural engineering. You don't need a physics degree from MIT to make something interesting in Legos. In fact, the only real thing that really matters is your ability to pick something amazing to make. You will learn how to make it if you have sufficient motivation. You will get motivated because what you're about to make is incredibly exciting.
Say there was an amateur who managed to make a 3 foot tall T-Rex vs. a mechanical engineer who made a 10-inch high structurally sound lego table. An audience sudden enters and they immediately warm around the T-Rex. "But, but," protests the mechanical engineer, "my chair is built with industry best practices. Look at that T-Rex! It's a mish-mash of random structure. No self-respecting engineer would be seen next to that thing." The audience doesn't care. The T-Rex is cool. The T-Rex is interesting. The T-Rex is fun.
Could the amateur have built a better T-Rex if he knew about some of the engineering principles? Yes. But in the end, it doesn't matter. The mechanical engineer chose to build something stuffy and boring. The amateur, using his superior problem discovery skillset, chose to build something amazing.
There are a million engineers out there who can build to industry best practices. There is only one out of a million who trains up his ability to think of something crazy new and interesting to build.
.
A personal story:
I went to MIT and I still didn't know how to do MVC in php properly until my senior year. What I did know how to do was pick a fun problem then bash my head against it repeatedly until it worked. I would spend hours perusing through the docs and obscure questions on bulletin boards until I found a code snippet that did what I wanted. Even then, I didn't always know how the code snippet worked. I just pasted it in and prayed to god it worked. Sometimes it did, most times it didn't. When it didn't, I fiddled around with the variables until somehow, somehow I made it work. And boy, that felt great!
If a semi-decent programmer had looked at my code, he would've gouged his eyes out. The redeeming factor to all my franken-code was the fact that if I did manage to get everything functional at the end, it was always a fun result. Because it was fun, I did side project after side project. It was an addictive cycle -- with the new skills I picked up, I could envision even more fun projects. During the process, I learned about php, MVC, mySQL, then rapidly accelerated through to Android, ObjectiveC, Flash, HTML5, RabbitMQ, Node, and Redis.
.
Jiggity's Guide to Become a Rockstar Startup Founder
1. Try your best to think of a FUN problem. (Think T-Rex equivalent of something "cool" and "interesting" in tech.)
2. Try your best to think up a FUN solution. (Most people never fully achieve steps 1 and 2, settling for mediocre problems and mediocre solutions.)
3. Figure out what is the minimum set of skills you need to make the solution.
4. Learn those skills while making the solution.
5. Congratulations! You've added a creative product to your portfolio and increased your skillset by X amount.
- brewerhimself 14y agoThanks for taking the time to type that beast. I can see how most people never achieve steps 1 and 2. I find it difficult to come up with an idea that other people think is really cool or, if I do, it's a ridiculously difficult idea that I don't possess ever a fraction of the required skillset. One project that I've considered before is some sort of auto-piloted arduino-based plane that would fly across the US from Jacksonville, FL (where I live now) to Mountain View, CA. I think this might be comparable to your T-Rex example in that, while it has no practical use, it's still pretty damn cool. Thoughts?
- jiggity 14y agoThat's excellent! It certainly had me going, "That's pretty cool." I was checking the arduino docs and it looks like it has a ton of support for connecting the board to the Internet -- even being able to host its own webserver / connect with Twitter / run a Telnet client. If your goal is to learn further web development, try including a net component as a more central piece of your product vision. It's your way of hacking your brain such that you'll have to, want to learn that stuff to achieve your cool project.
- brewerhimself 14y agoI'll keep it in mind! Thanks!