
I'm 16, and need advice - bzupnick
Hi, I'm a 16 year old student living in israel and about 6 months ago, i was approached by a friend with a ridiculous web site idea. while he thought it was a million dollar idea, i saw it as a great opportunity to really get started in web development, something i have been interested in since i started programming at 14.<p>so after some months of my php and mysql for dummies book, yahoo answers, and a lot of google, i finished that website. 2 months later, finished another website for another friend.<p>so currently, i know php, mysql, css, html, and am learning javascript.<p>i have some great website ideas and want to apply to YC after my senior year. but my question is, what should i be focusing on now?<p>I was wondering if you can please give me advice on what to do. Thank you very much.<p>-Binny Zupnick
bzupnick@gmail.com
======
hrasm
I wish I had your line of thought when I was your age.

If I were you, I would focus on the academic commitments at hand. If you are
ahead of the pack, I suggest that you pick up advanced level stuff. Why? It
will really hone your skills at critical thinking. All math problems are
puzzles waiting to be solved; some are interesting and some are rote but
important.

But if you are dead set on jumping right in, try and work out some biz models
on your ideas. "Am I looking to make money? If so, why?" "What would people
pay for?" "Does my idea solve an existing problem" "How/when will my 'great
website idea' make money?" "If I look at this idea as an investor, would I
invest in it?", etc.

------
gord
You sound very self motivated, so I dont think you really need much advice.

If you're already looking into Javascript, I would recommend jQuery for
practical reasons, and Node.js for more subversive reasons. Have a look at
source of some common Node.js modules via github. This may lead onto finding
out a bit more about lisp ideas.. and computer science topics that are both
interesting and relevant.

Maybe at 16 you have time to work on a startup idea in your spare time for
fun, while doing a degree also? Id actually suggest a course on compilers, it
helps you write better programs. Throw in a bit of C programming on unix, and
the basic stuff on algorithm complexity.. and calculus and.. oh dear.. just
follow your interests :]

Theres so much cool stuff to find out about. University might be the best
place to concentrate on hacking code and meeting interesting people, one of
which might be the perfect cofounder for your startup.

Many of the teachers will be so-so.. but then you'll find one or two gems that
really show you something you might not have found on your own - to be
challenged is important.. seek it out.

~~~
raquo
Binny, I'd say avoid stuff like node.js and lisp UNLESS you're actually
interested in CS theory. (is HN not the best place to say that). Learning
these would be beneficial in long-term, but right now better go after lower-
hanging fruit. jQuery is indeed easy and awesome. You can also try CakePHP and
later Backbone.js – these will help you better structure your apps. Just make
sure to understand the distinction between language features and framework
features.

~~~
bricestacey
At 16, it's not necessarily optimal to aim for the low-hanging fruit. It's
very easy to read a few tutorials then squander several years with a poor
understanding of the basics. Once you learn the basics, be sure to continue
learning them deeply.

------
ohadpr
Work on finding like-minded people and start working on projects together.
These people may end up being your co-founders in some future company you'll
start, and the more time you know each other ahead of time the better.

Get a decent amount of knowledge about a broad-range of topics, unless you are
inherently interested in something very specific. This will instill in you a
lack of fear from new subjects that will be one of your greatest assets. Most
people in the world don't do stuff because they are afraid, used to something
comfortable, etc. If you turn 'not knowing' something into a challenge then
you'll be a huge asset to other people, not to mention to yourself.

Don't try to over-think things at this point, you'll earn a lot by simply
creating and improving your ability to create.

Be happy that you found something you love, most people struggle with this for
all of their life.

Israel's a decent place to improve these skills (I came from there, went
through a similar path) so look in your school/neighborhood/university for
peers and go get it.

------
udp
It's not about the languages you know, it's about how you can apply them to
make yourself a living.

If you're confident that your friend is capable of running a business (with
your skills to help him - although I hope you're a fast learner, because two
years of programming isn't very long) - and that his idea will do well enough
to support both of you, then by all means do it. If you're sceptical at this
stage, stay at school and code in your spare time, and then start something
when you're finished or when the right opportunity comes along.

Coming from someone who quit school at your age and ended up - well,
successful enough :-)

~~~
basicxman
I'm currently 16 and have a job making five figures as a software engineer at
a company making millions. There is no reason to not start right now.

On the matter of education, I'm taking independent learning at home - this
allows me to get my OSSD under my province's Learn to 18 act but not have to
physically attend an educational institute. Check if you have something like
<http://ilc.org> where you live.

I would personally not start my own startup at the moment (however getting
involved in something is a great idea) as I am still building up contacts and
experience. I believe as the founder of a startup you should be the go-to guy,
with only two years of experience in what sounds like L/WAMP stack programming
environments, you need to spend more time.

Of course, learning from a failed startup is good too.

------
michaelpinto
a. There is a strong local tech scene in Israel, if I were you I'd go to every
meetup, conference and social event

b. If you want to be a programmer I'd tackle a new language and try to build
something: But keep in mind you can do other things in the same field be it
information architecture to business

c. If you are getting your college degree in Israel I'd start to look into
that now

------
truthsayer
Finish schooling while you can. You will regret that if you don't. Don't stop
coding, never stop learning, always assume what you know is incomplete or
insufficient. VC funding isn't the only option so make sure you remove the
blinkers. And understand everything about self-motivation.

------
Jach
Do what you want. In order to keep your coding skills sharp you should
probably start building a few of those website ideas now, don't give yourself
any breaks where you just don't code at all for more than a few weeks. Get
some code on github and start making a name for yourself (I wish I had started
doing that much earlier), you might want to learn other languages but the LAMP
stack + JS can take you wherever you want to go for most web things. I second
the suggestion of finding local tech meetups, even if you're antisocial they
can still be interesting.

------
andrewstuart
Finish school. Get a university degree in software engineering. Work hard to
become a great software developer - this will be the foundation upon which you
will be able to build your future ideas/startups.

------
kunjaan
Finish High School. Go to College. Major in Computer Science. Learn Natural
Science. Read literature. Solve Math. Keep coding and dreaming.

------
iterationx
>>i have some great website ideas and want to apply to YC after my senior
year. but my question is,

Just start building your websites now, it will become clear what you need to
work on. You should probably give a good amount of thought to what
technologies you want to start learning in the web dev space, ruby, java,
asp.net?... so many choices so little time...

------
issa
Simple: do something you absolutely love. Learn what you need to learn to
accomplish that thing. Don't worry about anything else right now.

------
pbreit
Try to build something that people want. Better, try to build something that
people would pay for.

------
spitfire
Getting laid.

------
ecommando
Finish high school, but spend every waking minute working on your passion for
software development.

Skip college, you can always go back. Anything you learn there is already 10
years out of date, and anything "new" you learn will be useless by the time
you graduate. Seriously.

If you MUST go to college, DO NOT, I repeat, DO NOT get a CS degree. Go for
finance, or liberal arts, even bio or chem, or some course of study where the
instructors have a clue and have actually done something in that field.

I can't tell you how many BS/CS and MS/CS grads I interviewed that couldn't
code their way out of a paper bag because they spent their college years
writing compilers or some other such nonsense.

Get into a hot startup and listen and learn. The first six months will provide
you with more experience than you'd get in a PhD program at any university
(short of MIT or Stanford).

Cheers!

~~~
kunjaan
Are you a troll? Because that is the most ridiculous piece of garbage of an
advice.

The guy is in high school. You are telling him to skip college because

* "Anything you learn there is already 10 years out of date, and anything "new" you learn will be useless by the time you graduate"

You have got to be kidding me. What you learn in school is not the idea itself
but a method of thinking, method of critiquing and the method of learning. One
of the most effective ways to learn to solve problems is to solve problems
that already have solutions and to learn from those that came before you. Yes
you may learn "stuffs from the 70s" but you are learning them for a reason.
For example, just because NoSQL is in vogue right now doesn't mean that
relation theory should be discarded.

There is a value in going to school, being surrounded by a learning
atmosphere, reassessing yourself every day and learning more about yourself.

* DO NOT get a CS degree. Go for finance, or liberal arts, even bio or chem, or some course of study where the instructors have a clue and have actually done something in that field.

Where did you got to school? Because almost all my CS professors not only had
a "clue" but some even revolutionized the fields in CS. Seriously, you get to
meet people who started fields, who wrote books, who first thought of the
problems in CS schools. Computer Science is still in adolescence. You will
still meet legends.

* how many BS/CS and MS/CS grads I interviewed that couldn't code their way out of a paper bag because they spent their college years writing compilers or some other such nonsense.

So? Just because you interviewed idiots doesn't mean everyone who got a BS/MS
is one. Serious sampling bias there. I am sure YOU attract mediocre people.

* Get into a hot startup and listen and learn. The first six months will provide you with more experience than you'd get in a PhD program at any university (short of MIT or Stanford).

Wait. What? Do you really think 6 MONTHS of startup experience is a
replacement for not BS not MS but a PhD in ANY university. Jesus Christ dude,
how old are you? what is your educational background? What do you aspire to
be?

~~~
ecommando
Am I a troll? Let's see... My software has been used by millions of people,
I've been paid millions, and I've worked with some of the best and brightest
minds on the planet.

I guess I MUST be a troll.

* "Anything you learn there is already 10 years out of date, and anything "new" you learn will be useless by the time you graduate"

This was in the context of CS, not anything else, which is why I suggested he
go a non-CS route if a degree is his goal. I've reviewed some of the best
projects to come out of todays CS programs as assignments, and I can tell you
that they are rote, unimaginative, and lack real-world application value.

* "You have got to be kidding me. What you learn in school is not the idea itself but a method of thinking, method of critiquing and the method of learning. One of the most effective ways to learn to solve problems is to solve problems that already have solutions and to learn from those that came before you. Yes you may learn "stuffs from the 70s" but you are learning them for a reason. For example, just because NoSQL is in vogue right now doesn't mean that relation theory should be discarded. There is a value in going to school, being surrounded by a learning atmosphere, reassessing yourself every day and learning more about yourself." *

I agree completely. Why so defensive? Huge loan payments due? You don't need
to go to an ivy league school to learn ACID compliance, or relational theory
(although relational application is more suitable for real world problems).
You also don't need to go to school to "find" yourself, and to presume with
such conviction that YOUR position is the correct one is just as asinine as if
I were to presume mine was the only correct path.

Some of us are natural problem solvers, who absorb and process volumes of
information quickly. Based on your frustration level, it's probably safe to
assume you are not one of those, and there's nothing wrong with that.

But, ya know, you're right.. clearly there's only one way to go through life,
and yours MUST be the correct way, or why else would people like you sink to
name calling and belittling just because someone has a dissenting opinion?

* Seriously, you get to meet people who started fields, who wrote books, who first thought of the problems in CS schools. Computer Science is still in adolescence. You will still meet legends." *

Seriously? You'd go to college to meet the guy who wrote Pong?, or the guy who
wrote the first ray casting algorithm? Sounds like a rational fiscal decision.
I'll bet Dad was paying the bill. I figured out long, long ago, while you were
still a glint in your father's eye, that I can simply call those people up and
buy them lunch, and they'll impart all their knowledge to me on demand.

* So? Just because you interviewed idiots doesn't mean everyone who got a BS/MS is one. Serious sampling bias there. I am sure YOU attract mediocre people. *

Again with the berating. You must be a stellar human to be able to look down
upon us all. I've interviewed 327 people in my professional career, killed
billion dollar deals because they weren't technically feasible within time and
budget constraints, and made more money writing code than 99% of the people on
this board will ever see.

Does that make me better? No. It simply makes me an individual with a lot of
experience.

* "Jesus Christ dude, how old are you? what is your educational background? What do you aspire to be?" *

Perfect. The true measure of a man is his alma mater. Get serious dude.

I'm 43, and I have a quarter century of rock solid software development
experience, all in real world applications, many of which are still used
today, probably by you without even knowing it, and my educational background
is not germane to this discussion.

What are YOUR qualifications? I suspect you won't post them in public.

And yes, I still sit down and have lunch with people who call me and ask to
meet with me.

He asked for my opinion. I gave it to him.

Crawl back into your hole, troll, and mind your own business.

~~~
kunjaan
What a fucking joke.

>I've reviewed some of the best projects to come out of todays CS programs as
assignments, and I can tell you that they are rote, unimaginative, and lack
real-world application value.

What is with the sampling bias? learn statistic much?

>I agree completely. Why so defensive? Huge loan payments due?

>Some of us are natural problem solvers, who absorb and process volumes of
information quickly.

I am sure you are.

>killed billion dollar deals because they weren't technically feasible within
time and budget constraints,

Yup.

> my educational background is not germane to this discussion.

Your education is important to the discussion.

>Crawl back into your hole, troll, and mind your own business.

Haha fuck off.

Care to comment on this? * Get into a hot startup and listen and learn. The
first six months will provide you with more experience than you'd get in a PhD
program at any university (short of MIT or Stanford).

~~~
ecommando
* Your education is important to the discussion. *

It's only important to you, and only because it's the only measure you have by
which to assign the value of others. Hell, just 128 days ago, you were begging
for advice on which chocolates to get your fellow employees so they would like
you. You don't have experience, but you sure talk a good game.

* Care to comment on this? * Get into a hot startup and listen and learn. The first six months will provide you with more experience than you'd get in a PhD program at any university (short of MIT or Stanford). *

Absolutely.

The first six months of a hot startup is a microcosm or activity. Designs and
ideas flying, deals, market tests, focus groups, venture capital pitches,
startup camps, all night code binges, and more. It's 20 hours on, 4 hours off,
for months at a time, pure adrenaline and pipelined learning at its best.

While you could argue that the VOLUME of information in a PhD program is
greater, it takes six to eight years, and the VAST majority of that
information is forgotten and never used. A bright person could easily pick up
experience in a startup that they wouldn't see for ten years post-grad, if
they just get engaged and pay attention.

Short of Stanford, MIT, and to some extent RIT, there really aren't many
actively entrepreneurial schools that promote technology development from
within. That's why I said "you can always go back". Sure, most choose not to,
but that's a personal problem.

He should take a year off to work at one or more startups, then go back to
school, if school is what he wanted to do.

So, let's take a look at Cornell, one of the top CS schools (#5 I think).

Here's their "Practicum in Operating Systems" (CS 4411 Project 1) for Fall
2010:
[http://www.cs.cornell.edu/courses/cs4410/2010fa/CS4411/proje...](http://www.cs.cornell.edu/courses/cs4410/2010fa/CS4411/projects/project1/)

Now, the same course in 2009:
[http://www.cs.cornell.edu/courses/cs4410/2009fa/CS4411/proje...](http://www.cs.cornell.edu/courses/cs4410/2009fa/CS4411/projects/project1.html)

See any difference? Any modifications? Any enhancement or change of any sort?

Nope. None.

It was the same in 2008, but the page has been removed.

Two years of time has passed, new OS architecture designs have been published,
some implemented, new threading paradigms documented, and some are in
production, but the exact same project, with the same code, same requirements,
and same final problem is to be solved, by the same morons that have no
incentive to innovate because they're tenured.

Sure, you could argue "it's the basics, dummy!"... but wait...

It's a SENIOR YEAR project, and they STILL have these poor drones working on
the food service project. This is AT BEST a sophomore project.

Any truly good developer with even a basic interest in OS design should be
able to understand and implement the basics of kernel level pre-emptive
multitasking and cooperative threading in year one of college, but these
geniuses still have you studying the basics of semaphores and mutexes in your
senior year.

Let's look at some of the Cornell senior year projects:
[http://people.ece.cornell.edu/land/courses/eceprojectsland/S...](http://people.ece.cornell.edu/land/courses/eceprojectsland/STUDENTPROJ/)

Seriously? Sound identification of Loons? Arduino-based ANYTHING??? Touch
screen user interface for a car using LabView?

These are the "geniuses" todays top schools are turning out.

It may sound like I'm calling out these specific people for their lack of
imagination, but the fact is that they are the majority, and some of them go
back into the educational system to get their masters in education so they can
teach! Sheer insanity.

I've worked with hundreds of developers and mentored a dozen or so; some
excellent, some not so much.

The one thing I can say without exception is that I have never met a truly
prolific architect level developer that wasn't self taught. Most of them had a
passion for programming, and an education in some other speciality unrelated
to development.

Yeah, you can get some basics, and yeah, there's SOME value in compiler
design, but nothing you can't get from "Dummies Guide to Compiler Design",
which, if it exists, was probably written by a student admin ghosting for a
tenured professor.

What a system.

~~~
kunjaan
You sir have no idea of what a computer science education is. You have no idea
of what a PhD program is .

If you really think that 6 months of startup is comparative to a PhD in
computer science, you are wrong. They both have merits but one is not a
substitute for the other.

>Yeah, you can get some basics, and yeah, there's SOME value in compiler
design, but nothing you can't get from "Dummies Guide to Compiler Design",
which, if it exists, was probably written by a student admin ghosting for a
tenured professor.

What the fuck are you rambling about you ILLITERATE OLD FART. Seriously dude.
Just because you met some people who are not competent. Just because you got
to a point where you think you have made it doesn't mean you can judge things
you have no basis of. I don't even want to argue against the OS design course
that you just said. Jesus Christ.

There is a reason why your original comment was downvoted to oblivion because
those kinds of inane and retarded comments are left in your company and with
your employees not amongst people who know that you are a piece of shit.

And go work on your billion dollar deals rather than going through my history.
What a fucking tool.

~~~
ecommando
LOL... What history? You have none. You've accomplished nothing, and you have
zero social skills. Chocolates. LOL!

Have a great day.

~~~
kunjaan
* A 43 year old guy who claims to have been programming before the compiler, when compilers actually came out in 1957.

* A guy who can't even defend his ideas and gets defensive when his lack of education is called out and resorts to ad hominem attacks.

* A guy who has no clue about what happens in a good CS program disses the program and tries to defend his poorly researched knowledge with attacks on the person.

* A 43 year old who apparently kills billion dollar deals writing LOL on the internet and spending time looking at the user history.

I have never met a bigger jackass than you. I just started out in the industry
but I am more mature, honest and I can guarantee to be a better programmer and
a person than you are.

Fucking illiterate, old blow-hard.

~~~
ecommando
Yeah, you're mature. right.

I suspect that you weren't in the "senior developer" group with your employer,
and you're bitter about only making $8.75 an hour writing crappy code.

I never said I programmed before the first compiler, I said I wrote assembly
before compilers were available. The first compiler was written in 1952, not
'57, but if you had any study skills, you'd have simply googled that.

It's double digit IQ pinheads like you that make this and other sites like it
a colossal waste of time.

Consider yourself ignored.

~~~
kunjaan
It's interesting to see you evade all questions and get to a personal attack.

This is my first job after graduation and I am sure I am earning more than you
did after at least 15 years in the industry.

I know the history of compilers you fucktard. I didn't expect you to program
using Grace Hopper's compiler so I gave you Fortran to play with instead.
COMPILERS WERE AVAILABLE BEFORE YOU BORN YOU ILLITERATE.

Why don't you pick up a programming book, any programming book. A real one.
Not a J2EE one. Pick up let's say Wand et al's "Essentials of Programming
Language" and try to solve f the problems. If you can solve them, come back
and talk to me. Then you tell me the value of concentrated, mentored, rigorous
learning.

