

Ask HN: Should I learn to code first then cook up startup idea or vice versa? - edwardshui

Hi HackerNews Elites,<p>I am a biomedical engineering major, so I only have very little programming knowledges. I sure don't know about any advanced programming skills. But I do have a little bit of experience with languages like MATLAB.<p>As a matter of fact, I have been wanting to start my own startup for quite a while. But I was at the crossroad of not knowing whether I should learn to code first and then think up startup idea, or the other way round. During these past few weeks or months, I have been struggling as to which to choose. But at the same time, I have also been cooking up some startup ideas and reading a lot of Hacker News posts to get a better idea of the startup world.<p>Since Hacker News has the best people in the startup world, I would be really grateful if you could offer some insights so that I could have a better idea of what to pursue.<p>Many thanks!
Ed
======
CyberFonic
Great to read from someone who has startup ideas and is prepared to learn to
program. My two bits worth: It's like a bar stool, best to have three legs.

1\. Choose the startup idea that you feel most passionate about. There will be
others as you progress, but stick to the first one (unless your customers vote
with their money to go for a different one).

2\. Pick a widely used, well documented language. My suggestion would be
Python as it supports most paradigms and comes with a comprehensive collection
of standard and additional libraries. Buy at least strongly recommended book.
I recommend the ones from the O'Reilly series.

3\. Be prepared to go off and explore particular issues with the programming
language as well as your idea. You will probably end up with a lot of small
point solutions. I frequently end up with two or more solutions to specific
problems before selecting the one to integrate into my key project.

Other considerations:

* It's a good idea to establish test driven approach and incorporate your tests from point 3 in your code libraries.

* Use version control, I prefer git, but others are good as well. It's not so much which one you choose, but to use it consistently.

* If your idea is very web centric, then you might have to seriously look at JavaScript and Node.JS. But JavaScript is a difficult first language.

~~~
edwardshui
Thanks @CyberFonic! I am kind of inclined towards building web app in the
beginning as I conceive it as a "broader" user base.

Another great lesson learnt! Looks like I better start picking up some Python
skills asap.

Many thanks for your tips again!

------
fooandbarify
Just do both. Your early code will probably suck. Your early startup ideas
will probably be quite flawed. But working on real project will make coding
more fun, and all your "failed" startups should teach you something for the
next one.

I've been coding for a long time, and sometimes my code still sucks but it's
better than it used to be. I haven't been bootstrapping "startups" for quite
as long but I've already made a ton of mistakes, and learned from them.

PS. Wouldn't call myself an HN "Elite" by any stretch, but my $0.02
nonetheless.

~~~
edwardshui
Thanks @fooandbarify. Looks like I really need to get the coding engine going
now! I certainly think I will have a lot of lessons from my foreseeable
"startup" failures!

------
thatusertwo
I've had no big start-up yet, but I've found mini-start-ups a great motivation
and learning experience. If you have something that you want to make you can
learn while you make it, it will give you the motivation you need to learn
(get your site done) and it will provide a great learning environment
(building your product).

I'm in school for web development, since I got the basics of programming down
in my second semester, I've learnt more from my own projects then school.

~~~
edwardshui
Thanks @thatusertwo. Mini-start-up is surely a great motivation and start! My
present lame startup ideas are all in this category:)

------
slysf
You will gain programming skill far more quickly if you have an idea you're
trying to implement as you learn. Read tutorials and change them to try suit
your needs. It will probably be horribly broken and ugly but you will learn a
lot faster.

~~~
edwardshui
Thanks @slysf. Yup, tutorials is what I need and code implementation too!

------
FirstHopSystems
Do both, They will compliment each other.

~~~
edwardshui
Thanks @FirstHopSystems!

