
Ask HN: I dropped out of school at 17. Freelance is my only hope. Advice? - 30thousandfeet
So I dropped out of school recently for various personal reasons. I just couldn&#x27;t cope. I can&#x27;t get a job, obviously. So I figure freelancing is my only shot.<p>I&#x27;ve been programming since I was like 12. I&#x27;m primarily a web developer. I know Ruby, JavaScript (Node &amp; client), and the obvious CSS, HTML, et al.<p>How do I actually get clients? I have no portfolio or any real open source contributions. My GitHub profile is pretty empty. And I doubt anyone would hire me due to my age.
======
patio11
Good news: portfolio and real open source contributions are not the primary
channels for selling freelancing gigs. The primary way is finding a business
owner and convincing them that you can build them something which will make
them money. Having something you have made which you can demonstrate is of
benefit (and as sibling comments have mentioned, you should probably get
_something_ which you've made into a showable state ASAP), but mostly, it's
about being able to sell yourself convincingly to people who, primarily, could
not tell you that Baker's Yeast is not a well-known Javascript framework for
building web pages out of REST-over-XML transport engines.

Also, don't sell yourself short with regards to getting jobs. While you likely
can't get hired at a Bank of America or what have you, if you approach a local
e.g. Rails consultancy, not having an Education section on your resume will
probably not be a total disqualifier. Many people don't. You will probably be
able to pass a FizzBuzz test, which actually makes you substantially better
than many people with Bachelors of Science in CS in the hiring pool. I think a
standard W-2 job -- heck, pitch them on an internship and just upgrade after
showing you can do the work -- is likely a better fit given that you do not
have the connections/experience likely to fill a freelancing pipeline at the
moment. You can always revisit that decision when you're 20, at which point
your high school career will never come up at a job interview that you'd
actually want to pass.

~~~
epaga
I have been part of the interviewing process at our company for a few years
now and it still blows me away how the majority(!) of applicants just flunk a
simple FizzBuzz type test. Why in the world are they applying to a programming
job if they can't program?

Being able to program (and being able to show that you can) actually does put
you ahead of most applicants to your average programming job. It shouldn't,
but it does.

~~~
patio11
It's a combination between the Spolskyesque "The hiring pool will always be
sucky because it is, definitionally, always going to be heavily weighted with
people who have not yet succeeded in getting a job" explanation and "At many
firms, actually being able to program your way out of a paper bag is not a
prerequisite for being hired as a programmer."

At my old day job, probably half of our system engineers could not program.
They generally spent their time producing documentation, gathering
requirements, writing emails about requirements that needed more
documentation, and occasionally breaking out Eclipse to spend 6 hours trying
to add an if statement to one web page by patterning it off of parallel
structure in the file they could copy/paste and then random walking through
the space of all possible tokens until they found one where the output matched
expectations.

------
gexla
This is a classic example of where people think that freelancing is a good
idea when in reality it's a horrible idea.

I can't get a job is not a reason to start freelancing.

The mindset which leads you to freelancing needs to look something like "I
love helping people and I believe I have serious value to bring to the table."
You see, one viewpoint is self centered, negative, desperate and looking for a
way out. The other viewpoint is to focus on the potential client and how you
can help that person achieve his or her goals.

If you couldn't cope with high school because of personal reasons, then what
makes you think you can cope with freelancing? Did these problems go away or
are they still present? If they are still present, then they will cause
greater problems with freelancing than they did with high school.

Let me tell you a little secret about freelancing.

Your technical skills mean dick.

There is a long list of critical skills and attributes which you need to be
strong in before you get to anything which resembles writing code. Freelancing
is about people, not computers. You will find that the most successful
freelancers aren't necessarily the strongest developers.

On the other hand, to get what you want out of life, you have to hustle.
People will tell you what you can and can't do. A hustler will get it done out
of sheer will.

Ideally you would be able to get a job doing web development so that you can
see how a successful shop is run. If you can't get a job in your local area,
then ideally you would be able to move to an area with a lot of tech jobs. You
could work remotely, but working remotely is hard, just like freelancing.
Again, your personal issues might be a problem.

Once you have some experience under your belt, then you will have a better
idea if freelancing is for you. Hopefully you find a better track.

The effort you would need to put into snagging freelance client work is the
same effort you would need to put into getting a job. Build your portfolio,
put some stuff up in Github and ship your side project. Find places where
other developers hang out and contribute something. That could be code, help
or just about anything which gets your name out there. As people get to know
who you are, then they may reach out to you for paid help. It's possible that
you still start out as a freelancer by going this route, but deal with enough
people and you will eventually get job offers. Of course, as you build
yourself up, you can apply for jobs along the way.

This is just one route. But starting out, it's the route I would go.

~~~
wikwocket
To add to your "mindset for freelancing" and to address the OP's question of
"how do I get clients," I think one of the big assets for a freelancer is
insider knowledge of how businesses work, and how business processes work.

You don't have to actually be an insider to get this knowledge, but you're
going to have a hard time solving business problems if you a) don't know what
they are, b) don't know the current state of solutions, and c) have practical
ideas on how you can fix this using magic computer sauce.

For this reason, I'd +1 the suggestion to look for a job as a webdev. Could be
great work experience, but more importantly, good experience interacting with
businesses in a B2B setting, seeing how they tick, and learning about the
overall process of selling to a business.

------
mswen
First: if you have been programming since 12 you are probably above average in
intelligence. If you are in the USA you should be able to go take a GED exam
so that you have the equivalent of your high school degree.

You seem well aware that you have a credibility problem. If you really have
the skills that you say, it shouldn't be very difficult to whip up a website
for your portfolio. The point of this site is to demonstrate to prospective
clients that you can envision and create a complete site, that shows common
elements of business websites, images, maps, sensible site organization and
navigation, user registration, access control, cookies, forms, data capture
etc. At this point you are trying to create something that impresses the
average small business owner not readers of HN.

Creating a portfolio site will help overcome the credibility problem but it is
only a first step to finding clients. I suspect that you will initially need
to find an established small company that builds sites for other local small
businesses and try to become a sub-contractor to them. Freelancing to the end
client at your age and lack of experience will be very hard.

Here is the other thing: if your portfolio site is outstanding and shows lots
of polish and skill then there are start-ups that might take a chance on
hiring you.

------
deedubaya
You're smart. Get your GED.

Get a Junior level position. People have been telling you your whole life that
you can't get anywhere without a college education, which is horse shit.

You're in one of the few industries where the professional work you've done
and the skills you have determine if you can get a job, not what college you
went to.

If a company snubs you because you dropped out, you probably don't want to
work for them anyway.

Source: I dropped out of HS, got my GED, dropped out of college, twice. Fell
back on my Computer skills, now a dev at a startup making more money than all
my friends who went to college.

~~~
matwood
_If a company snubs you because you dropped out, you probably don 't want to
work for them anyway._

Depends on why he dropped out. Could he not get a long with his peers and
refused to do what was asked? Not someone I would want to work with.

Remember, work is called work for a reason. A lot of my job is fun, but work
(and often grunt work) is what carries side projects from toys to releasable
software.

------
imdsm
I am from the UK, not the US, but I finished school at the age of 16, and
didn't do any further education. No college, no university. I have been
programming since I was ten. I didn't learn it from an educational regime. I
don't have any fancy letters after my name. And I work for a well known
company in the UK.

Was it because of qualifications? Nope. Was it because of my education? Yes.

So how did I get educated without going to school? Well, silly, I did what you
-- and most of the other devs here did -- I just wrote code, read blog posts,
read books, watched videos, and wrote more code.

You do not need to go to some rooty tooty university to be a developer. You
just need to be useful, and good.

> I have no portfolio

Then get one.

> or any real open source contributions

Then make some.

> My GitHub profile is pretty empty.

Then fill it.

> And I doubt anyone would hire me due to my age.

Nonsense. If you're 17, your brain is ready for learning. Get an internship,
or a junior position, and in five years time you'll be a valued employee with
lots of experience.

Good luck, 30thousandfeet.

------
esw
Some community colleges allow you to take placement tests (which you would
likely breeze through) in lieu of a GED or high school diploma. Even if you
only end up taking a few classes, you'll still have better luck in the job
market as a college dropout than as a high school dropout. Better yet, you may
actually enjoy college. No one will care that you dropped out of high school
if you have a 4-year degree.

If you decide not to continue with your education, your best bet is to pick up
whatever work you can to build a portfolio. Once you have a portfolio, you'll
be better off trying to get an actual job, as freelancing (at least at the
bottom end) is generally miserable.

------
fit2rule
I've been programming since I was 12, professionally since I was 17. I'm 43
now. I also dropped out of high school.

What I can tell you is this: if you decide not to go to school, be prepared to
work hard. Harder than anyone else. Harder than the day you worked yesterday.
Without this form of ethos, you simply will not make it in the world.

If you do stay in school: work hard. Always try to work harder than the day
yesterday. If you don't, no problems - you have a chance - but by the time you
finish school, you better be prepared to work hard. If, by the time you finish
school, all you've done is party and relax and 'enjoyed yourself' \- you did
worse than if you'd dropped out and entered the work force in the first place.

Life is hard work, is all I'm saying. If you can find someone willing to pay
you to work hard - then you've already made more progress than most of people
who choose to study so long in their lives.

~~~
petercooper
I want to second this as a now 32 year old who dropped out of school aged 16
(to work in the fledgling Web design scene, not because I wasn't doing well at
school).

Freelancing was easy at first but then the dot com boom hit and things were
tough for a few years, but luckily I was living with my parents. Eventually I
got heavily into Rails in 2004/2005, built some apps, sold some apps, and
eventually did very well for myself, but as fit2rule says, it all comes from
working really hard and generally I missed out on 90% of the life that people
in their early 20s tend to live (not a huge deal to me as I'm not the partying
type anyway).

Things are pretty good now and I've just started to do a degree which I'm
finding to be quite enjoyable with the various experiences I have behind me,
so.. it can definitely be done, but it's not going to be a walk in the park.

~~~
circlefavshape
> generally I missed out on 90% of the life that people in > their early 20s
> tend to live (not a huge deal to me as I'm > not the partying type anyway)

OP - before you decide to take this route, make damn sure that you want to.
Fun > work

~~~
VLM
Or more accurately, define fun.

Locally it was defined as drunk driving, 18 years of child support payments,
hangovers, restraining orders, addiction/detox, and one acquaintance who went
to prison for weed distribution. I didn't participate in what they called
"fun" and I don't regret it at all.

------
lewispollard
I was working as a freelance web dev at 17. I just approached local businesses
to see if they needed simple, static websites made, or if they had existing
websites I'd show them how they could be improved and how their presence on
the web is important (even more so now than it was then!). You'd be surprised
how receptive a lot of them are - for many of the businesses it seemed like
'build a new website' had been on their minds for a while but they hadn't got
around to looking for someone to do it yet.

------
rglover
I'd imagine you live with your parents/relatives still?

If you have any semblance of stability in respect to your living arrangements,
here's what to do:

1.) Based on your existing expertise, come up with three projects that you can
create to showcase your abilities. Shoot for things that can be finished
within a few days to a week.

2.) Do nothing but work on these projects until they're complete. This might
be hard since you're younger, but if you want to make a living, you'll need a
body of work. It's not _impossible_ to start a freelance career at your age.
It just takes a hell of a lot of determination and focus. Plan on your social
life being flipped upside down.

3.) Write about your work. Make a fuss about your story. Write a blog about
why you dropped out, what you're doing, and blog about every project. Not only
will this draw attention to your situation, but it will also allow you to
articulate thoughts on your process and show potential clients how you think.

4.) Repeat. Don't stop. Keep working.

5.) To find clients, you'll want to start getting your name out there. I've
had a lot of success just from posting on the Hacker News "Seeking
Freelancers" thread that comes out on the 1st of each month. Take advantage of
things like these and email anyone and everyone you know who might be able to
give you work.

Finally, don't mention your age. It's irrelevant. If you can complete the
tasks that a client would ask you in a competent manner, they won't care.

~~~
VLM
"Write a blog about why you dropped out"

Does anyone else in the field identify themselves by high school related
stuff? No, you say? Oh, then I'd do exactly the same. I know for certain that
employers don't care that I got an A+ in HS physics, and I only got a C in gym
because I lifted weights a lot so it was a pity C, and I suspect they're not
going to care much about your experience either.

You want a job as a node.js dev or whatever, fine. Make certain that's the
first google result on your name, not "so I dropped out because ..."

------
jackmaney
This isn't what you want to hear, but you need to hear it: in this day and
age, if you can't cope with high school, then you will very likely never have
a successful career. Bite the bullet and go back to school (or get a GED).

------
27182818284
>I have no portfolio

To put it in psuedo-computer-ish terms, it is premature optimization to not be
in school at your age. If you can work part time and get your GED or back into
school via a community college or whatever, _you should_. You can build your
GitHub, BitBucket, whatever portfolio in your spare time. School will open you
up to new terms you simply haven't heard of, yet, because you haven't had as
much time on this planet as others.

[http://bigocheatsheet.com](http://bigocheatsheet.com)

------
al2o3cr
You've been programming for 5 years and have "no portfolio". What have you
been _doing_ in that time? Presumably you've been building something - unless
it's completely NSFW then that's your "portfolio" until you get something
better. It may not be as snazzy as the professionals, but it will demonstrate
that you can actually carry a project to completion - and that's what the "can
you build me a website for $200" clients will want to see.

------
wellboy
I think lots of web development companies will hire you. Reasons? They can pay
you much less than the normal graduate, but at your age $20/h is awesome and
very cheap for the company --> win-win.

How to apply?

Find a web dev company in your city, write them an email with two things:

1\. You find their company really interesting and the projects you're doing.
2\. You've been programming since the age of 12 and you're super interested to
learn more coding in a cool company.

Be enthusiastic, people like that. :)

------
anon7843
> So I dropped out of school recently for various personal reasons. I just
> couldn't cope.

Hi, 30thousandfeet. Many years ago, I dropped out of high school at about your
age. I remember the feeling; that sinking "well, I guess I did it; here I go"
feeling.

I don't know what your school is/was like, I don't know your situation, and I
don't know how long you've been away from it. But I know this: I have many
regrets about dropping out.

Listen, you sound like a smart person. School was made for people like you.
Find a way to go back and finish. Move in with relatives for a year if you
have to. You don't get these high school years back, and they're more precious
than you realize right now.

 _Edit:_ You said you have trouble coping. This is what psychologists are for.
Talk to your school psychologist, or have your folks make an appointment with
one or two in private practice. It's normal to see a psychologist for these
sorts of things. A good one can help immensely.

And dropping out will most likely put you _years_ behind your peers. Wait
until you hear from friends about who is going to which college; meanwhile
you're trying to get gigs to pay the bills. It will make you feel sick.

It is not too late. Even if you've been out for weeks --- you can make up the
work. You can do it. People care. Teachers care. _I_ care. Find a way ...
_make_ a way to go back. Talk to teachers, assistant principals, parents,
relatives,... sort out your problems --- they're very likely solvable. Be at
graduation. BE THERE. You will thank me later. Really.

------
beepbeepboop
Sup dawg

I'm 22 and was in a situation like yours for a loooong time. I am also a drop
out.

1) yes people will hire you, get over it. post your resume on Dice if you
don't believe me. you'll start getting calls at 9am the next morning

2) stuff is going to be some amount of shitty no matter where you go or what
you do. you may call me crazy, but you'll probably end up looking back on
_now_ as the good times. so enjoy where you are now in addition to where you
are going (see point #1).

3) nothing matters as long as you write code _every day_ and keep your head
up.

also, i saw someone in this thread say "your technical skills mean dick."

fuck that guy and fuck that thought

you have worked hard to learn and develop what you have in your head, and it
is as valuable as you say it is. you have a long road ahead of you.

if you look on the web or talk to friends/family and find a contract (or even
better, a job!) that's great. if you can't, it is equally valid to build
something for yourself.

no matter what, you have plenty of time to figure it out.

------
ambiate
I dropped out of school due to some legal reasons regarding computers and
such. I recommend Pell grants and 2-3 years at a community college. Siphon
every single general credit you can. Aim for an A in every class. Transfer to
a university that will take 60~ hours from a community college. Siphon out
every scholarship in the book for being a transfer student, community college
student, GPA, you name it. If its out of district, apply for in-district
housing after a year. Also, start internships in school. Final advice, once
you get that job, if you can, put 9%-15% into your 401k!

------
davidhariri
You need a portfolio of at least 3 things that show different skills, which
means you should have ~12-15 projects under your belt to highlight from, but
more importantly: go back to school. Cope.

------
jwaldrip
Dropping out or not finishing college may be acceptable in this industry, and
there are many reasons why; Cost, pace of education vs self-teaching, etc. All
that being said, the same does not apply to High School. I recommend at least
getting your diploma or GED. It is unlikely that any tech company will
overlook such an easily obtainable requirement. I don't think freelancing is a
great solution either. If you want to become a good developer, at least work
with a team for a few years that can teach you some things.

~~~
nknighthb
I don't think I've ever seen the subject of high school brought up in a hiring
process at a tech company. I didn't even go to high school. Nobody cares.
Diplomas are kindling.

------
VLM
A disturbingly large fraction of people who call themselves programmers can't
fizzbuzz. Hmm I wonder if someone who didn't graduate HS could lie about that
different topic and get away with it? I think so, as in a quarter century I've
only been asked twice to produce documentation. Of course photoshop could take
care of that too.

A place that's insane enough to ask for a HS diploma, is insane, so you'd be
best off not working there anyway.

You're at a golden age. You're 17, in the incredibly unlikely even they ask if
you graduated HS, duh, of course I haven't yet because I'm only 17. You'd have
a much more interesting conversation at age 20. So fill that resume with
experience to talk about, so no one gets the bright idea to reminisce about
school "a long time ago".

There is no such thing as a moral or ethical vacuum. I'd rather you not lie,
in general. Then again, you need to eat, and everyone would agree they'd much
rather have you lie about some meaningless irrelevant piece of paper than mug
someone for their wallet.

Note that bluffing can only get you so far, you need some "meat" to back it
up. So if you only have 2nd grade arithmetic skills, that would be why you're
screwed, not because you don't have a piece of paper. You seem fairly literate
compared to a college grad so no problem there.

------
chrisgca
I dropped out in the 90's and never went to college. I applied for a linux
admin job and got it. I was 18 and earning more than my father.

Interviewers have usually been impressed when I mention self-taught high
school dropout. I've held positions at fortune 100 companies making 6 figure
salaries until I dropped out of that too and started my company.

Credentials are a distraction. Follow your passion and build something you
love.

------
garydevenay
I dropped out of school at 16, all I knew was I was HTML and CSS (and not very
well). I managed to get a job with bad pay, crap atmosphere.

I'm now 22 and working for one of the top agencies in Scotland. All my friends
are still in university or dead end jobs.

As long as you have passion for what you do, and keep learning new things -
you'll progress faster than you believe.

------
bobfirestone
This sounds a lot like a friend of mines story. At 15 his family life was
spiraling out of control and he dropped out. Until he recently quit his job to
do his own thing he was making just an obscene amount of money.

He started by taking the only programming job he could get as a 16 year old.
As his skills progressed he changed jobs a bunch of times with each one
becoming progressively less crappy.

He got there by working his butt off to learn everything he could about
programming. On his own he learned everything you would expect from a CS
program but was able to go into far more detail than a semester course. I've
seen him talk circles around guys with formal CS training.

There is someone out there who will pay you to program. The pay will be
peanuts and the work will be boring but once you have a job and some
experience on your resume it will get easier.

Also go get your GED. With the GED you can say you graduated from High School
and have the option of other formal education in the future.

------
josh_fyi
Find a famous open-source project that interests you and that is open to
contributions. There are webapps to help you do this.

Contribute to the project, starting with simple bug-fixes. They will be glad
to have your help. You can then say, honestly, that you contributed code to
that famous project, which puts you far beyond most candidates.

------
thejteam
First, are you still 17? If so, then you will have an even harder time
freelancing because your ability to enter into contracts is questionable.
There is established law regarding underage employees but not so much
regarding freelancers.

If you've been programming since 12 I imagine you do have a portfolio, it just
might not be organized as such. So first thing to do is organize it this way.
And if you don't have large enough projects to organize into a portfolio then
you probably don't have the experience to freelance.

If school wasn't for you could you consider a GED? That would at least be
something that could help you find some type of employment even if it isn't
exactly what you are looking for. I don't know what your circumstances are but
I'm sure people with a lot harder situation than you have gone that route.

Good luck either way.

------
theflagbug
I'm in a similar position.

I'm currently in a polytechnic high school (I don't have a high school
degree). This is the third high school I'm in, because I always struggle with
non-programming classes, in which I have absolutely no interest in and in
programming classes I'm far ahead in terms of skill.

Everyone around me says I should get a degree, which I can absolutely
understand, but I just want to get a job in software development, I just fear
that I will later have a hard time without any degree.

I'm programming since I was 13 or 14 and since then I've invested most of my
free time into open source projects (this is my Github profile:
[https://github.com/flagbug](https://github.com/flagbug))

------
ozh
You'll need an avatar with a beard to look geeker & older. Seriously.
[http://www.wired.com/wiredenterprise/2014/01/odesk/](http://www.wired.com/wiredenterprise/2014/01/odesk/)

------
j45
I started freelancing when I was around your age. I have written a fair bit on
my HN account about freelancing/consulting but feel free to contact me.

The main thing I wish I knew at your age was the difference (and progression)
between the stages of freelancing, contracting, consulting and beyond.

I've helped several of my friends start their own freelancing businesses who
are full time now, I'll echo what's been said many times on HN:

It's not what your education makes of you, but what you make of your
education.

With the below, you can embark on a path of adding value to the world with
your skills in a disciplined way to find long term clients whom you can help
grow, and you can grow yourself.

The below only has value if it's contemplated, practiced, and reflected upon
regularly. You'll find other things to add to the list but I think the list
below is my first principles list of being successful, freelancing or
employed.

The below, also, is how I approach anyone, and it turns into leads and work on
it's own.

By remaining genuinely curious, thoughtful, and interested in how people are
solving their problems (including excel sheets, access databases, or doing it
manually), customers are validating the need for software in their lives and
you need only pay attention and support them along.

I'll share with you the business model I was given at 18:

Find 10 customers who are willing to pay you $1000 a month for basic app
support or development. If they won't spend $500-1000 a month making their
business better, they're not a customer, but someone who wants to hire a free
student. I was able to start in this way in the late 90's to 2001, and had a
foundation from which to explore, maybe do more work in one place than
another. Today, everyone's online and expects for software to exist for them.
The key here is many places that can't hire a full time developer or person
can probably afford a part time one who creates value for them.

Things that I wish I understood deeply much sooner:

Solving B2B problems solves the cash flow issue: Businesses that make money
every month have money to spend. Getting people to spend their own money can
be quite different.

Discipline: This will decide how our lives will go. It is the single most
important master skill. The more we work at developing and keeping discipline
in more and more areas of your life, the more successful we are.

Self-educate: The fact that you can self-educate is the single biggest skill
that is needed in terms of your technical ability. This means learning things
that weren't in my core, but rather becoming an extremely strong problem
solver, which made me attract lots of interesting (and paying) problems to
solve for which there might not be a lot of solutions.

Nothing gets easier: You just get better, if you want to.

Self-directed: Contemplate this phrase -- you'll be self-directing and self-
educating for a long time, and it's the best journey you can imagine to get to
know yourself in the midst of any uncertainty.

Date before you get married: You'll be hired in the beginning by people who
will be taking a chance on you or simply like you because you're young,
ambitious and have a positive attitude. So, do fixed fee projects for $1-3000
that cover risk for both you and the end user, even if you have to break down
a big project into small $1-3K phases. This is a huge trust building technique
with customers.

Value: This is the word I had to learn when I was 18. If I couldn't generate
more value than what I was paid, I wasn't rehired. Value is saving or making a
customer time or money. So I learned to find and be good at what was valuable
to a customer, that I could do. What you're selling is helping the customer
add value to their company in a way they can measure and is meaningful to
them, which you can do for them.

Networking: This word looks like it's foreign sometimes. My networking is
simple, before receiving, there must be giving. Help, help, help, share,
share, share. You're not just out for a quick hit contract, but any long term
ones you can find that are meaningful for both parties.

Track Record: Your education, and experience are second to the track record of
solving problems you can build up. I spent 10 years working in as many
industries as I ended up in, sometimes at the same time because I liked the
variety. I aimed to get 20 years of work experience in 10 years of living.
Now, on the flip side, I have more experience than what I know what to do with
and it helps me understand anything I face more and more, it's the best
snowball effect.

Attitude: I know we like to do things that interest us. If you can find
helping improve the quality of others lives greatly by using a tiny bit of
your skill and writing the software they need, for example, never saying no,
and saying "let me think about it", those 5 words have gotten me more work,
introductions and opportunities than anything.

Problem based thinking: Never, ever think solution first. Learn the problem
and know the data better than anyone else before writing a single line of
code.

You're not alone: I went through starting a freelancing life largely alone and
endured a good 5-7 years of doubters and supporters. It's good you're putting
yourself out there, and that there's a place like HN to put yourself out
there.

Don't let others self-doubt infiltrate your mindset. Creativity and innovation
happen in a mindset of possibility, not shooting ourselves down or letting
others.

------
innertracks
What a lot of great advice!

Personally, I'm getting back into the field after a lengthy hiatus. Hopefully,
a bit wiser after recovering from burnout in 2005 and subsequent
entrepreneurial adventures in other fields.

One thing I've started doing is volunteering a few hours a week doing tech
related work for causes I support. One benefit of which is getting my
confidence back. My age, 47, combined with having a lengthy period of time off
can inspire self-doubt at times.

Problem solving and people skills though are turning out to be key and
evergreen assets to bring to the table. Thankfully, those are also continuing
to improve with age.

Never give up. Ever.

------
tessierashpool
You absolutely can get a job, kid. You've been programming since you were 12,
you're primarily a web developer, and you know several languages? You
absolutely can get a job.

Work on your your portfolio, your GitHub profile, and your open source
contributions, and understand that finding a job _is_ a job. You might want to
send a lot of resumés, but that's not where you begin. First, research
companies. Find companies that were founded by college dropouts who did well.

I don't think freelancing is a bad thing, but if you believe it's your only
option, I disagree.

------
joeevans
Feelancing is your only hope?

Take a look at the fine print of IT/programming jobs ads:

Master Degree in Computer Science blah blah blah... or equivalent experience.

If you translate 'equivalent experience' into it's true meaning, it reads: you
are able to do the work.

Companies know as much as anyone that it's a crap shoot whether an engineer
with a degree will do any better than one without.

The owner of the near 30 person company I work at, a very capable and
respected programmer himself, dropped out of high school, and does millions of
dollars in business.

As far as your age? That makes no difference whatsoever these days.

------
Sindrome
I was just interviewed for a front end position with a guy who didn't even
graduate high school. He was tattooed like a felon but works at one of the top
startup in the 'area'. He's a really smart guy with a few really high rated
github repos. He's probably pulling 120k which is worth 140k out here compared
to SF. So, I would say that he is doing pretty damn good considering he
doesn't have any 30k+ loans to pay back.

------
FaisalAbid
Dropout here also, why don't you send me an email and we can talk about what
I've done in the past to build a portfolio and get some credibility.

faisal.abid@gmail.com

------
Dirlewanger
If you dropped out of high school, what makes you think you can handle
freelancing? Freelancing is, to the surprise of more than it should be,
largely about dealing with people. Stupid people. People that don't understand
how the Internet works and how much work goes into an easy-to-use website. You
need to be able to communicate this to them and be able to walk them through
that if you want their money.

------
nolite
I'm looking for an extra pair of hands for a month or two on some development
projects - Ruby and Nodejs. Feel free to email me at nolite@rcpt.at

~~~
akhilcacharya
I've actually been looking for Node work - I'm also OP's age, and have been
immersed in Node for about 8 months now.

Mind if I email you as well?

~~~
nolite
go for it!

------
Spooky23
Figure out how to hang out with the right crowd. If you're hanging around
drinking beer and playing video games outside of the context of school, you're
doing it wrong.

Get your GED, get an AA in something at a community college (they have open
enrollment in most cases) and transfer to a decent school. You can (and
should) get a job, but being the guy without a degree will always make it more
difficult for you.

------
jackgavigan
(Disclaimer: I am not a developer but I did drop out of university and ended
up getting work doing web design and network/sys-admin work.)

Firstly, freelance is not your only shot. It's entirely possible that there is
a company out there looking for a junior web developer, so don't discount that
possibility.

Secondly, try to find some more experienced web developers to advise/mentor
you. Where are you located? There may be an appropriate location (e.g. Hacker
Dojo in Mountain View, the Noisebridge Hackspace in San Francisco) or a meetup
(check meetup.com for Meetups aimed at Ruby, JS or web developers in your
vicinity). Having someone who can advise you face-to-face will be better than
relying purely on our advice here on HN, and there's the possibility that
they'll be able to point you in the direction of potential clients/employers.

Thirdly, think about what sort of work you want, then create a showcase web
site/app to demonstrate the fact that you have the skills necessary to do that
work. Put all the source code on Git so people can review it if they want to,
then approach potential employers and clients with the following approach:

Potential employers: "Hi, I'm a self-taught programmer. I'm looking for an
opportunity to use my Ruby/JS/web skills. Here's an example of the sort of
work I can do. Could I come in to meet with you to discuss whether there might
be a position for me with your company?"

Potential clients: "Hi, I'm a freelance website designers. I think I could
design a great website for your business. Here's an example of the kind of
work I can do. Could we arrange a meeting to discuss?"

Fourthly, expand your skillset by learning how to do more stuff that will
improve your chances of getting hired. For example, if you don't know anything
about databases, then learn how to set up MySQL and use it to store data as
part of a webapp.

Finally, don't worry. All web developers were self-taught until comparatively
recently. There's plenty of scope for a young, enthusiastic, self-taught
developer to build a career without having finished school!

Feel free to contact me directly (e.g. via
[http://jackgavigan.com/contact/](http://jackgavigan.com/contact/)) if you'd
like to discuss your situation in more details without posting personal
information publicly.

------
blueprint
I would recommend either focusing on back-end dev with Ruby or learning iOS or
Android development. Those skills are in high demand now and if you're
effective, diligent, and have a high standard for build quality, you should
have little trouble getting a job that will before long pay well.

------
gkwelding
I started out in the web development game with no qualifications and no
previous experience. I like to think that I've made a pretty decent job of it.
If you want to chat some more then please feel free to email me on
gkwelding@gmail.com.

------
hellweaver666
Drop me an email on andy.warburton@booking.com we're hiring talented web
developers and we don't discriminate on age. I'll take a look at your CV and
have a chat with our hiring team to see if we can find something for you.

------
frankphilips
Go to your local library or BN and learn everything you can about
sales/marketing. Work for free. Under promise over deliver. Build up your
portfolio. Ask for referrals.

Your skills mean nothing if you can't sell your skills.

------
MrMeker
I am in between high school and college right now on a bit of an unplanned gap
year. Coming out of school, I figured it would be easy to get a job in
technology, programming, welding, machining, glassblowing, or some other hobby
of mine. It wasn't.

I turned in applications to many different businesses, telling each one that I
would "add value" to their company. I was laughed out of a computer repair
shop, told that in my rural area, it is impossible to find tech jobs.

The first place that called me back was McDonald's. I told them that I would
take the job, but then Taco Bell also responded. Taco Bell was closer to my
house, so I called McDonald's and told them sorry, but I had a better offer.

I worked two shifts at Taco Bell, proud in my uniform, making tacos and
burritos as fast as I could, before a local hardware store invited me in for
an interview. After passing a drug test, I was working in retail. Hardware,
building real things and the like is a passion of mine. I started at $8.50/hr,
better than minimum wage. The hours piled up fast, and before I knew what was
going on, my bank account had 4 digit numbers on the statements.

My mom also helped me get another job at the restaurant where she works. I
washed dishes. Me, with a 4.9 GPA, selected as "Super Student of the County"
or some award I can't even remember, was elbows deep in dirty water for 8
hours a night after a 6 hour shift selling nuts, bolts, and brooms. It was
hard work, I could barely stand after unloading the dishwasher for the last
time, mopping the floors, taking out the trash, polishing the glasses and
silverware, locking up, and driving home.

This may sound like it's beneath you because "you can code". So can I. But
working for minimum wage at one job and barely above at the other, I made
about $100/day, not counting tips from the restaurant (which have since payed
for a new laptop) and before taxes.

I met some great people at the hardware store, and although I had to give it
up when I took a few math and language classes at the local college, I loved
it. I still work at the restaurant and I am typing this after a shift. My arms
smell like funky dishwater and my feet still hurt. But I worked six hours
today for $48, and probably $40 in tips. I don't know about you, but $14/hr is
good pay for unskilled labor, even though I can hack or code. I could give
freelancing a try, but I am pretty sure it would end in the failure this echo
chamber loves so much. Instead, every other Saturday I take home a paycheck
and deposit it on Sunday. If I decide to pick up my floor where I throw my
tips at the end of the night, I am rewarded with a few hundred dollars. This
will easily pay for gas and other expenses. A large portion goes to savings
for my next 4 year which will be largely income-free. The leftovers go
wherever I want. I decided to learn electronics, so I bought an arduino and
some components for about $100. 6 months ago I couldn't have imagined going to
Radio Shack and laying 5 Jackson's on the counter to walk out with something
that fits in the palm of my hand and will let out the "magic smoke" if I mix
up GND and RAW.

The majority of comments have told you to build your portfolio and find pain
points of businesses around you. Instead, I urge you to find a job, be it at a
McDonald's or a 5-star cafe. Perhaps at a Walmart. You are young and you don't
need to work for a living wage.

I used to think that the only thing I would have to do with my hands after
school was type. Now, I scrub dishes. But I also have 35 hours a week where I
am forced to be away from HN, Facebook, and Reddit. I get to shoot the shit
with my coworkers or daydream about how we are all machines behind an elastic
load balancer and if anyone of us were to cut our hand off, the kitchen would
experience a cascading failure and it would be a very long night.

My job provides structure to my life, something I am terrified I will lose
next year when I go across the country to be a freshman again. It also has a
guaranteed income of $8/hr. Tips are good. The meal at the end of each night
is great.

Instead of spending hours hounding LinkedIn, Fiverr, or ODesk, I drive 12
miles and put on nonslip shoes. It's easy, it pays well, but most of all, its
fun.

My advice: bootstrap your career with the MVP of jobs: anything with regular
hours. Pay doesn't matter as the hours will melt away. I would stay away from
programming or IT for minimum wage, as that will probably poison your passion
for computers.

------
degroat
Step 1: Find a meetup in your area for startups

Step 2: Begin Networking w/ Attendees

Step 3: Make it known to these people that you're a cheap coder and know Ruby
and Javascript

Step 4: Offer to be an intern if you have to

------
esammer
I dropped out of school when I was 17 as well (for reasons I won't go into
here). I wound up doing well: I work at Cloudera, I wrote a book for O'Reilly
([http://oreil.ly/LrD1FL](http://oreil.ly/LrD1FL)), I speak at conferences,
I've run data centers for small and large orgs, I've built a distributed
system or two (or twenty)... point is that you aren't necessarily screwed, but
you've absolutely picked, by choice or otherwise, a really tough path. You're
going to hate it at times, but you don't have to eat beans out of a can for
the rest of your life.

0\. You're in it now. No matter what happens, no matter how unfair, this is
your life now, and you're up to your neck in it. It's entirely up to you how
this turns out, and it's going to suck.

1\. Get your GED. One more test isn't going to kill you. Find the time, study,
pass, get on with life. Yes, you need to do it. Yes, it gives you other
options. Yes, if you don't do it now, you'll forget absolutely everything and
never be able to do it later.

2\. It's all about experience. I hire engineers for a living. The importance
of your education is inversely proportional to the amount of experience you
have. Ok, so that's not universally true; no one wants a self-taught doctor
performing brain surgery, but you get the idea. From now on, your life will be
about optimizing for the experience you'll receive. You need to collect it via
self-generation (see later) or otherwise.

3\. Mentors are paramount. Find a smart person, attach yourself to them like
the leech you now must be, and drain them of their smarts. You are now an
information parasite. Go forth and feed. When you enter a room, start a job,
work on an open source project, your first task is to find someone that knows
something (pretty much anything) and force them to teach you what they know,
immediately. Give them a reason to do it. Show them you're worth it.

4\. Become a voracious reader. I learned everything (technical) I needed to
know for my first job from O'Reilly books. I lived on them. Steal them if you
have to (I'll give you a PDF of mine for free, if you want it - see below).
Read them, do the examples, build something that teaches you something. Once
you've decided the system can't teach you, you become your own teacher. Sorry,
but that's what you've signed up for.

5\. Learn how to learn. Similar to the reading thing, figure out how you learn
new things, and get insanely good at teaching yourself what you need to know.
This is now your life. I found I was not so great at frontend work, but I
could wrap my head around how distributed systems, especially data
infrastructure, worked. Find what's intuitive to you and then figure out how
you taken in new information. Then go do that. A lot.

6\. Be your own cheerleader. Very few people are going to invest in you. It's
going to hurt. You need to build your network (see below) but you're going to
have to rely on yourself.

7\. Build a network. One of the main things you need is a solid network of
connections. These can be people you've worked with, want to work with, know
from the open source world, meet at conferences and other events, and so on.
Shake a lot of hands. Smile and nod. Be charming. Impress the living shit out
of people without being a tool.

8\. Generate a body of work. If you don't have anything to point to, no one is
going to hire you. Freelance is just a series of micro-jobs (hint: it's harder
than finding a job because you're effectively constantly applying). Join an
open source project and become prolific. Fill github with evidence you know
what you're doing. Join mailing lists and answer questions endlessly (we've
hired people at Cloudera because of their participation in the Hadoop
community alone). When you get tired, see #0 above.

9\. Never let anyone tell you who you are or what you can do. For example,
what makes you think you can't get a job? If you're starting with "I doubt..."
you need to take a serious look in the mirror. I had a teacher in high school
tell me I would never be anything, that someone had to pump gas in the world.
"I'll show you," should be your new motto. Live by it, die by it, show them
they're wrong.

10\. Overcompensate. While not exclusive to someone in our shared position,
make sure you push harder than anyone else around you. Learn more, think
harder, be more tenacious, be more memorable. You'll always find people
smarter than you, and that's OK, but you shouldn't ever stop _trying_ to be
smarter than them. It will make you better.

11\. Hustle. You're already playing by a different set of rules. Always be
hustlin'. To my earlier point about a free copy of my book, if you want it,
come find me.

12\. Give them a reason. You need to find someone who will take a chance on
you. I got a job once by emailing the CEO and saying, "I want to work at XYZ,
and here's why you're going to hire me." It worked. Stand out. Give them a
reason to take that chance.

You can decide this is feel-good drivel, or you can trust that this is what I
do (or at least try). I am not some beautiful and unique snowflake; if I can
do it, you can. Go find a job. Screw freelancing. Don't talk yourself out of
something because the rules say you can't have it. I believe in you. (I'm also
pretty pissed off that you got me to post something on HN. Way to go, jerk.)

-es

------
YuriNiyazov
I am pretty sure you can get a job; however, you seriously need to get your
GED (or whatever the equivalent is wherever you are).

------
qwerta
Take 2 years and study yourself.

------
jayhuang
Heading out soon so I'll give you a bit to go off on in the time I have. Feel
free to reach out to me (profile) for more info.

Since you've been programming since 12, I can say you are far far better off
than many of us already. I for instance, got my first computer around 15 and
had to learn how to drag a mouse around a screen, touch type, and use the
internet.

What you need to realize is while you also need technical skill, when you're
starting out, that's really not the most important thing. Very quickly you
will learn that many people are looking down on you or see you as an
incredibly cheap deal. You're a dropout, and it may sound crude, but no one
cares about your life or your problems. They really don't. They probably think
you're some lazy kid who is money hungry. But it doesn't matter. Most of these
people will NEVER hire you. And that's okay; ignore them. Many people still
need the skills you have, no matter how refined those skills may be. Now you
have 2 main barriers to getting them to pay you.

1\. How do these people find you? Do they type into "the Google" and find your
beautiful portfolio and contact you? At this point, perhaps not. Perhaps you
need (shocking, I know), to get off the internet and meet them before they
even do that.

2\. Can you solve their problem? You may not have a portfolio, and it wouldn't
matter, except how do they know whether you can solve their problem? I don't
care how you accomplish this, but that's all really all they want to know.
You'd be surprised how a simply/ugly static HTML page can blow the mind of
certain people. Many do not even know what they need to be able to hire
someone online to do it for them. Just using email is enough of a hurdle.

Some information about myself. I got my first computer around 15 years old,
learned to use it, and was interested in web development, so by 16 I was doing
simple websites in PHP/HTML/CSS along with small bits of copy/paste
Javascript. I moonlighted during high school (at which time my poor family got
sued for no legitimate reason), paid off a lawsuit, and started 2 small side
businesses.

One was a private server for a small online game. A small online game you say?
What does that have anything to do with web dev? It doesn't, I enjoyed the
game and did it. But it did help me immensely with not ending up on the
streets, I used my web dev skills to improve it and built a community around
it, and made a bit of money. Most importantly, I met many people who could
later act as testimonials to their friends and family of my web development
skills. Most of this stuff happened the same time I was refining my technical
skills.

The second venture was started because of one of the players on the server. He
referred his friend to me who had a business idea but was unable to execute
without programming knowledge. We built 2 large online communities and made a
portion of a million dollars in advertisements and sponsorships. This later
allowed me to officially start the freelance business I have now (I just
turned 21). Which allowed me to secure multiple full-time offers at reputable
companies despite my (lack of) credentials, speak at some local events, and
charge significantly more (aka bring more value) than I ever imagined I would
back at 15.

Enough about me, let's get back to you. At this point, the biggest skill you
need to learn is not technical, it's learning how to influence, persuade, and
prove to potential clients that you can do the job. I have to get going so I'm
going to stop here, but you most definitely have everything you need to be
successful as a freelancer, don't let anyone tell you you don't.

But it takes a heck of a lot of determination and hard work.

P.S: If you're really unable to find your first client, I do have a small
project making doing some front-end work for a website. Very simple
HTML/CSS/JS stuff that I was planning to give off to a friend to learn. But
please, do everything and anything you can to find that first client yourself.
It will help you a lot more in the long run than people on HN feeding you
projects. Good luck!

------
wehadfun
elance.com

