

Ask HN: How did you get started with programming? - fadelakin

I got started because I always wanted to make games. I was just wondering how other people got started.
======
pwg
I no longer remember exactly how, given it was so long ago. But for some
number of years prior to 1982 I had coaxed my parents into getting me a
subscription to Popular Electronics. They often had "computer" articles where
one could build one's own computer from discrete components and a CPU. This
was the days when an 8080 or a Z80, a breadboard, and a few misc. TTL logic
chips could almost suffice to build an actual computer.

Then for Christmas of 1980 or 1981 (I no longer remember which) a Sinclair
ZX-81 was under the tree. If it was 1980 I would have then been 13. The ZX got
a bunch of usage, but being chained to it's audio cassette tape interface for
storage (read: didn't work so well....) meant most of the usage was pure play,
like printing 1-100 to the screen and so forth. Which when one is 13, and
"programming" a computer for the first time, seems magical.

1982 plays a key role because in 1982, my parents (well, more my Dad, but)
decided to get an Atari 800. Auspiciously the reason was so that Dad could
automate the weekly task of computing the score-sheet for his bowling league
(he was secretary of the league at that time, and one of his tasks was
calculating up the weekly averages, scores, handicaps, etc.) Well, Dad wasn't
(and still isn't) any form of a computer programmer, so the reality was that I
was "volunteered" to write the program that would automate the league
calculation work.

That "task", which I gladly took up, so I voluntarily volunteered myself,
would be how/why I got my "start". And I've been at it ever since.

In any case, I'd probably have taken up the craft one way or the other, it
just so happens that this way turned out to be the how/why.

------
atsaloli
When I was 12, I was in Vienna for a month. My family and two other families
of Soviet immigrants were sharing a flat, waiting for our paperwork to clear
so we could move on to our final destination.

My family had been trying to get out of Russia for 10 years, so I'd been
taking English lessons since I was three.

The head of one of the other families was a programmer from Vilnius.

I taught him English and he taught me how to program in BASIC with pencil and
paper. We did it at the kitchen table as I recall.

I saw a computer in a store window but we couldn't afford to buy it.

Next month we were in Ladispoli, Italy, and I had access to a Commodore plus
4. That's when I got a chance to try out my programs and learned about
debugging.

------
skierscott
My AP Calc teacher gave me Scratch[1] and told the class to make a game as our
final project. IMO, I made a fairly cohesive game (shown here[2]). There is
still some room for improvement, but it's fairly complete and functional.

Oh, and the first (and only) comment (by my best friend)?

> you should consider computer programming as a career

Yup, that plus math.

[1]:[http://scratch.mit.edu](http://scratch.mit.edu)

[2]:[http://scratch.mit.edu/projects/1108096/](http://scratch.mit.edu/projects/1108096/)

------
pharaohgeek
My dad had purchased a Commodore 64 back in 1984 (I was 6). He bought it so he
could create spreadsheets, etc. to track his budget or other household things.
It came with a book on BASIC, which was built into the computer (in lieu of an
'operating system'). I began reading and copying the sample programs in the
book, and slowly taught myself how to program.

One day, I was being punished for something, so my dad took away the external
floppy drive for a week so I wouldn't be able to play any of my games. I
remembered that I could just write my own, so I wrote a simple Hangman game.
It took me 2 days, but I still did it. (Again, I was 6) Although, Hangman is
not much fun when you're the one who wrote it an you know what the words could
possibly be. But, I digress...

Anyway, my parents were very impressed that I had taught myself how to do this
all on my own. Years later, in high school, they bought me my own PC (an IBM
clone with a 386DX-40 processor, 4MB RAM, etc.) that I used to learn Microsoft
QuickBASIC (a more advanced version of BASIC than came with the Commodore), C,
and eventually C++. From there, I studied Computer Science in college, and the
rest is history.

~~~
jacquesm
> Although, Hangman is not much fun when you're the one who wrote it an you
> know what the words could possibly be.

Priceless. As someone whose first program calculated the value of a pair of
resistors I can only conclude you were way ahead of me at 6 when I was 12...

------
AnimalMuppet
Well, my dad was a computer programmer, and there were conversations about
computers over the dinner table, but my real start came with a half-year
Fortran class in high school. It was kind of a pain - punch out the cards,
wait for them to be taken to the real computer (which happened twice a week,
then get the results back, change a card, wait for them to be taken again,
etc. _Not_ fast turnaround.

Then the school got five TRS-80s. I grabbed one of the Basic manuals and read
it in an hour while I was supposed to be paying attention in calculus class
(it was pretty thin). I thought "Hey, this is just like Fortran, except the
words are different." So then I knew Basic, at least well enough to play with
a TRS-80.

Then my dad brought home K&R, and I read it over a Thanksgiving weekend. I
understood it all except for argc and argv. The rest was clear, just from
reading the book, but argc and argv required being able to experiment to see
what they did. My dad tried it at work on Monday, and explained the results to
me.

------
edavis
Worked through a "teach yourself HTML" tutorial on AOL. This must have been
early 2000s. I remember being fascinated from the get-go. The concept that
_this_ was how you build web pages was just incredible to me.

To practice, I built all kinds of toy sites. Fan pages for bands I liked.
Homepages for myself. I would take a site and try to duplicate it. Anything.

Then I learned about servers and hosting so other people could view my sites.

Eventually I picked up PHP which really opened my eyes to what could be done
with websites.

Somehow or another I found Python. Mark Pilgrim's "Dive into Python" made the
language click in a way other tutorials never did.

Found Django shortly thereafter (2007-ish) and the rest is history.

------
mlitchard
Someone donated pet commodores to all the libraries in my county. My mother
would go visit my sister at work every Sunday. across the street was one of
those libraries. My mother happily dropped me off as trying to keep a 12 year
old boy from being annoying was a tall order, and I certainly had no trouble
being a whiny brat when bored. Along with the computers were some games, one
of them being a roguelike. The librarian knew the load and run commands,
enough to get me started. I discovered the break key, and list command on my
own. I had an intuition that the code listed could be manipulated, therefore
if I learned BASIC I could rule the game. There was a manual on PET BASIC on
the shelves, and that was that.

------
pcmonk
When I was thirteen, the dad of one of my friends was a software engineer, and
he liked to tell stories about cool stuff he did (he's a pentester). I was
interested, so he gave me a CD (7 or 8 years old, though I didn't know it) of
Knoppix Linux and told me to look up C tutorials. I did, and was hooked. I
still remember my first two compiler errors: (1) the version of gcc was old
enough that it required a newline at the end of the file, which I had
neglected, and (2) I thought I understood the idea of a function well enough
to know that it didn't really matter what you called them, as long as you were
consistent; turns out "main" is actually an important name.

------
Steveism
I was eager to grow into being more than a web designer so I began watching
Tuts+ courses on Ruby and PHP. Then, my employer needed a small web app to
share documents with clients. I volunteered and the rest is history. Looking
back I guess I just decided it was something I wanted to do and I dove head
first. Everything I know is self taught and I try to learn something new
everyday. It has been very rewarding for me. My boss has trusted me with more
projects and I'm more involved in the success of our company.

------
OWaz
I started to learn programming at college in the US. I lived in a developing
country prior to college, and access to computers was limited. When I started
college I didn't know much about computers so I figured it would be a good
time to learn and majored in CIS. I've been working as an engineer since then.

------
louthy
When I was 10 years old (1985) my mother bought me a BBC Micro Model B, and I
vividly remember her saying "You're not going to just play games on it!", so I
started reading the manual, which was pretty much completely about how to
program in BBC Basic (there was 6502 assembler in there too).

Never looked back after that!

------
zachlatta
Way back when, I played a game called Club Penguin with my friends. As we
played more and more of it, we discovered easter eggs, bugs, and other little
oddities. At lunch we were talking and decided that we wanted to make a
website about Club Penguin. That night I wrote my first line of code.

------
callmeed

        READY
        10 PRINT "My parents bought me an Atari 400 with Basic in the early 80s"
        20 PRINT "It had a cassette drive and a membrane keyboard"
        30 PRINT "You kids these days"
        40 GOTO 30

------
iandanforth
I was doing QA and needed to automate my work. (Because I am lazy) Selenium
was the best tool to use at the time and it was a PHP shop so I picked up
enough to write test scripts. Later I discovered Python and fell in love :)

------
Fenicio
Ultima Online private servers, it is/was an obsession

[http://www.sphereserver.com/](http://www.sphereserver.com/)

------
barakstout
I had a very good teacher in high school. Years later, it seems like a second
nature that was always there.

------
bluerail
back in second year of my CS class, my professor showed an sample HTML program
that marquees text from left to right.. Decided!!!

