

Ask HN: When did you realize your passion for programming? - jiganti

I'm wondering because it seems to have a considerable barrier to entry, at least compared to other less intellectually rigorous fields.<p>So what was the turning point that made you realize that you had a passion for the hacker lifestyle? Or was there no distinct point in time, just a gradual increase of interest?
======
mahmud
I started as a cracker. I cracked sharewares and games for all the kids in
school and was somewhat sought after. I ruled the schools' Novell LAN with an
iron-fist and a well-stocked boot floppy. Sure, I was mostly more talk than
walk, bragged a lot; but on several occasions, I was able to pull off some
stunts before a thankful audience of "cool kids" (you're welcome, Imran ;-)

But as I got better at reversing, I needed more sophisticated tools, and I
needed to write them myself.

I usually did my cracking on request, cobbled up something quickly before
class or early in the evening, and took floppies of keygens and patches with
me to school in the morning. I wasn't exactly a jock, but I was cool; had
gelled hair, baggy jeans, a walkman, wore sunglasses in class, etc. Pretty
much riding on Neo's coat-tails, thanks to the then new movie, The Matrix.

But I distinctly remember one winter when I didn't give a shit anymore. I was
developing my own x86 disassembler and had hand-written opcode tables on my
wall. I remember waking up later and later for school, not bothering to dress,
avoiding friends, and refusing to take crack requests.

I pretty quickly out-grew all my familiar tools and techniques. The official
Microsoft and Intel documentation wasn't cutting it. I was fedup with crap
"popular opinion" in the assembly-programming fora. I realized all the
crackers and black-hats were mostly full of shit and didn't know what they
were talking about. I "felt" my tools were primitive, and there was more to
life than mastering the quirks of crappy compilers and assemblers from MS or
Borland. I had just watched my treasured knowledge of MS DOS go obsolete, none
of the old tricks worked.

So I bought myself a bootleg, Xerox copy of the Dragon Book. Soon after,
Tanenbaum's OSD&I.

Boy met theory, and boy had to grow up fast.

I realized I loved programming when I no longer did anything else :-P

------
jacquesm
For me the turning point was when I realized that programming gave me a nearly
infinite budget in terms of logic components that I could re-use without
desoldering the circuit boards again. Before then it was all 74 series logic
ICs and lots of scratching to break traces on pre-etched boards or routing my
own boards with tape. Software is so much less messy, and you get to improve
the end result without having to turn that neat board in to an ugly one, when
it's done you can't tell how much it was 'refactored'.

It also saved a lot of money in parts, and when you're on pocket money and in
to electronics a computer is actually cheaper in the long run (even if the up-
front was substantial for me at the time, from my news paper route).

------
mishmash
In 2-3 grade, my tiny little school had a single computer. It was a DOS-system
(circa 1989) and although it was cool, we were only allowed a few minutes of
strictly monitored time on it and even then, it was pretty limited.

The next year, I switched to a much larger school and was enrolled in Gifted
class - where they had a Mac with HYPERCARD.

The whole Mac + HyperCard experience was mind blowing. Technology went from
something of limited use that I was afraid of, to this amazing thing you
create with (back then, even changing the desktop icons was a creative art).

The Gifted teacher let me take the 500-page HyperCard manual home and that's
pretty much where I lived for the next few months. A few times a week she
would come get me from normal class where I would then, after sludging through
her regular assignments, get 10-15 minutes to type out my experiments and
ideas.

Til this day, I'm still just that little kid pounding on a keyboard. :D

~~~
TeHCrAzY
You just reminded me of my own awakening with hyper card in early high school.
Until reading this, I considered my first "wow, this is awesome" experience
with programming was simple VB6 apps in late high school. Hyper card rocked my
world.

------
ElbertF
When I entered high-school at the age of 12 (15 years ago) someone in class
showed me how to draw circles on a screen with QBASIC. I was instantly hooked.

    
    
        SCREEN 12
        CLS
        CIRCLE (320, 240), 100, 15

~~~
cheald
Reading this gave me the biggest involuntary grin I've had all week. QBasic
was my gateway drug, too.

------
LeBlanc
In high school I programmed a 1337-speak translator, a hardy-weinburg
equilibrium simulator, and a spaceship game. I really loved building things.

But then in college I stopped programming for whatever reason. I guess I
didn't think it would make a good 'career'. This was a huge mistake. I got a
lot of advice near the end of my education to get a job that I was passionate
about, where what I would be doing was something that I would do if left
alone.

I looked back at my life and one of the biggest things I enjoyed doing was
programming those little applications in high school. All of that programming
was entirely on my own and it was one of my favorite things in school.

So, about 3 months ago, I decided to get back into programming and have been
working a few really fun projects, including an API for the Stanford Parser
<http://nlp.naturalparsing.com>

Lessons learned:

1) go after what you are passionate about (obvious)

2) its not always too late to pursue your passion and learn new things (not
always obvious)

------
zaidf
My passion for programming peaked in middle school. I'd pull all nighters
building cool little apps in Visual Basic. I was just amazed I could build
_real_ apps that kinda behaved like other commercial apps.

Few months into high school, I started getting requests for contract work on
RentACoder, a site launched by code sharing site planet-source-code(where I
had a lot of submissions). I still loved programming. But overtime, I became a
lot more conscious of the $ amount and optimizing for making a business versus
learning programming.

Nothing bad, but my passion just diverged significantly. I went from being the
guy who told his first dozen clients he didn't care for the money and probably
worked at a dollar an hour for many of the initial contract projects...to a
guy who was hiring full-time dudes offshore so I could maximize rev.

------
TallGuyShort
When I was 8 or so I found a book in my school's library about making computer
games with BASIC. I tried some of what I learned from the book on our home
computer, and after running into some problems, I asked my brother for help,
and soon discovered that all of my brothers and my father had done the same
thing, and they were all anxious to teach me what they knew. We emigrated and
bought a new computer, and my new school didn't have any books on programming
and our new computer didn't come with BASIC, and so for my birthday I got a
set of C/C++ compilers and some books. Now it's my career!

------
nostromo
I tried to recreate SimCity and ActRaiser in BASIC using ASCII graphics when I
was a kid. My parents bought us a good computer, but would almost never buy us
games. (I played these two games at a friend's house.)

Trying to recreate SimCity was the perfect thing for a 13 year old to do
because it really gets your brain around modeling complex systems -- and sets
the stage for OOP -- even when you fail miserably. :-)

Later my interest was rekindled in college when I tried to create a neural
network in Java from scratch. Again -- failing miserably and enjoying every
second of it.

------
phaedrus
When I was 12 someone gave me a very old Z-80 machine. The only disk I had for
it with a programming language on it was dBASE II which supported scripts, but
the computer also came with a very thin, informally written dBASE II
programming introduction. Although for a proprietary database script language,
the author of the book (alas, I cannot remember the author's name) did a
remarkable job of introducing basic structured programming concepts like loops
and select statements.

I did not so much learn from the book as experience a cascade of Earth shaking
revelations from it; it was as if each concept were something already wired
into my brain, and the words from the book activated mental subroutines that
were waiting to be awakened. (This makes more sense if I point out that I had
spent every waking moment since about age 6 up to age 12 obsessively trying to
work out in my head how computers and programming worked without actually
having access to a machine (my family was too poor to afford a computer in the
80's) and so reading the book was a process of discovering vindication of
things I'd only been able to speculate about.)

------
dougb
My neighbor got a Comodore PET around Christmas of 1979. I was 11, and I knew
the minute I saw it that I wanted to know everything about it. When my
neighbor wasn't home, I would sneak into their house via a basement window,
and teach myself BASIC by typing in programs from various magazines. A few
years later, I convinced my parents to buy me a Comodore 64 for about $600.
This was a ton of money back in the day, it was more than our family's color
TV cost.

When I got to college, I wanted to be a Electrical Engineer, just like my
neighbor, but I didn't do well my first semester. I switched to computer
science because it was easier. 3 years later I was porting VAX Fortran to a
Cray YMP and couldn't believe that people were paying me to do it. I would
have happily done it for nothing, just for the chance to run code on a Cray.

------
j-g-faustus
I was interested in computers around age 17 (when I attended a vocational
electronics school in the mid-80s), we made simple circuits and a few simple
programs in Basic.

I got more interested in my early twenties, a friend of mine was a programmer
and the computers an individual could afford became more powerful. (I was
never very interested in Commodore 64 and its ilk, they seemed too constrained
to be useful.)

I started programming in my late twenties, when I attended university and got
a CS degree.

I'm not still not entirely sure that I have a passion for the hacker
lifestyle. My view today is the same as when I was a teen - computers and
programming can be very useful tools, but I find tools interesting only to the
extent that they can help me solve an interesting problem.

------
Tycho
When I started writing VBA macros for excel spreadsheets at work. The
gratifying thing was that dozens of people were immediately using the things I
built and productivity was measurably increasing - while not having to worry
about rigorous testing or anything like that. Someone on an excel help forum
had told me I'd need to use VBA to do what I was originally asking, and when I
did I seemed to... Excel myself.

I'd been primed by some brief previous experience programming in one year of
highschool and when I was a kid with a ZX Spectrum. Not sure why I didn't get
'the bug' earlier. Probably lack of extrinsic motivation.

------
leed25d
I would say that it was in 1969, although I wrote my first program in 1964 or
1965.

When I was a soldier in the USArmy I spent the latter part of my enlistment as
an assembler programmer on a UNIVAC 1005 computer (4K memory, 80 column cards,
...). At some time during that experience I decided that when I got out of the
Army (in 1971) I would go to school on the GI Bill and study computer science.
That's exactly what I did.

I have been programming professionally since I graduated from UMASS, Amherst
in 1974. If I have my way I will never stop programming.

------
johnnytee
When I was a kid I played with lego's. I followed the instructions line by
line, never missing a step and making an exact replica that was on the box :)
Programming in it's simplest form.

------
AmberShah
In typical girl style I'll say that I never realized I had a passion for the
hacker lifestyle. In fact, if I think about it explicitly, I eschew it. It's
rather that I've fallen into it by being good at programming, enjoying
building something out of nothing and solving problems and also like making
good money. So I code all day and code all night to accomplish these unrelated
goals and fancy myself the unhacker hacker.

------
marktucker
A TI-83+ silver edition was my first programming experience in 8th grade. All
I knew was TI-basic with its 2 character labels for goto and one character
variables. I tried to program a game and filled up a page with notes on what
the code at the 100 different labels did... you can imagine my shock when I
first saw functions and arrays in C!

------
wiebedj
In high school. Actually not in school because school didn't have any
computers.

There was a business machines store with a Commodore PET in the window, and a
Radio Shack with a TRS-80 Model 1 on display. I was allowed to sit and program
on them in return for answering any questions the customers asked of me.

------
Twisol
I loved playing video games and I wanted to write my own. When I was 9 I
learned HTML and took an online C class (which both got me hooked), then I
tried Java and was scared away by the look of the "public static void main" of
all things, so I went with C++.

Yes, I realize how utterly backwards that is.

------
EvanK
In high school. I joined an online community and started building a (hideous)
website related to it on Angelfire. Went from HTML to Javascript to Perl to
the Wonderful World of Linux, all within a year or so. Now I'm primarily a PHP
dev but I tinker in everything from Python to Ruby to plain ol' C

------
modeless
High school, TI-89 graphing calculator. Made some games using the built-in
BASIC, then moved on to C. Twiddling bits to read input registers and write
framebuffers was incredibly educational; that calculator taught me more about
programming than math.

------
silverlake
1981 at age 9. I finished a computer summer camp curriculum in the first week,
then audited college computer classes for 3 years. I still remember late
nights sitting at a giant VAX terminal working on my algorithms homework at
age 10.

------
damoncali
This did it for me:

    
    
      10 PRINT "DAMON"
      20 GOTO 10
    

I think it was 2nd grade at the school library. Both computers constantly had
some witty phrase infinitely looping down their screens...

------
karatchov
It seems that everyone here started programming at the age of 7, reverse-
engineering at 12 and hacking banks by High school

Anybody who started late, and still like it?

------
talonx
After I started working :) (i.e. after I got my job).

------
watty
I created some AOL "progs" in VB6 that did stupid stuff like scroll in the
chat and faded your text different colors.

------
madhouse
I ran out of games on my C+4, when I was six. My father helped me write a
simple BASIC program, and I was hooked.

------
ataranto
HyperCard

