Ask HN: What's Your Story?

57 points by fjordan ↗ HN
How did you become interested in computers/technology?

For some of us, it was very early, possibly so early that it may be difficult to remember. For others, including myself, it was a more recent development.

I didn't become interested in computers until high school, when at that time I was so computer illiterate it was almost comical. In fact, it was a specific point in time, I remember, that my older brother made fun of me because I was constantly asking for his help. I decided to make a change and begin teaching myself about these amazing machines and all the power that they possess. After learning the general basics, I quickly picked up a book on C programming and worked my way through it. I now continue to personally develop my knowledge every day, using tools such as iTunesU and MIT OpenCourseWare to supplement my education.

I am now an undergraduate student studying computer science and enjoying every minute of it. So much so, that I wish I had decided to study electrical and/or computer engineering/physics so that I could have a more robust understanding of how these machines work at the hardware level.

The point of my question is to discover others' personal history regarding their venture into the constantly changing world of technology.

Please share.

65 comments

[ 3.5 ms ] story [ 130 ms ] thread
I got my first "real" computer at age 7...an IBM XT. I took it apart the next day just to see how it worked. I spent hours on end on the DOS command line or writing silly programs in BASIC. Upgraded every few years, getting new computers with new features. In 1990, I got a system with a Sound Blaster, so I got into MIDI recording. In 1992 I got a CD-ROM and got into hacking Sierra games. In 1995 I got AOL and got obsessed with chatrooms and warez. In 1998 I started college and was introduced to high speed internet. That was the real defining moment for me. Being able to download any song, movie, or piece of software at will made the internet the most amazing thing in the world. And since the way to access it was through websites, I downloaded Photoshop and Dreamweaver and learned web design. Since the best sites were interactive, I needed to learn web programming as well, so I walked to the campus bookstore and bought Learning Perl by Larry Wall.

In December 1999 I built my first website, Ziggles.com, a comparison shopping site written in Perl that spidered the top 20 online bookstores and displayed the results with affiliate links. I made about $1000 a month in revenue (nearly all profit since I was already living on ramen at the time) and even got job offers from Silicon Valley startups. In another year or two I probably could have gotten hundreds of millions of dollars in venture capital, but the bubble burst and reality set in.

Those all night coding marathons or days spent reading Advanced SQL techniques when I should have been reading Shakespeare (English major) have paid off, since I make a better living as a developer than I could working in an English factory.

Well, that was anticlimactic. Can you change the ending to where you have a multi-million dollar exit?

Work on that, will you? :)

Oops...I left out the final chapter:

After selling my social/search/shopping startup GoogTwitFaceGroupon, I retired at 30 as the world's first trillionaire.

I guess for me it started at around 8 when my dad brought home a ZX81 (which was old then). I spent hours reading the BASIC manual and typing in stuff which never, ever ran. I found the errata for it a few years back so I guess I could go back and fix?

From there I got a C64, which was incredible, and then moved on to the Amiga. 500+ -> 1200. As far as computing goes, the Amiga years were the best of my life. Suddenly everything seemed possible. I was coding in AMOS, C and assembler on that thing - and rendering 3D cars while I ate my tea. That machine could do the lot, and since I've always been rubbish at music the MIDI thing wasn't a problem.

Mid 90's as the Amiga died off, i got access to a 486 and wrote a few things here & there in BASIC. Finally blagged my mum into giving me £3 to buy a magazine that had Borcland C++ 4.5(?) on the coverdisc. Took it from there.

The rest is pretty boring really. Improved at C, took up web dev. Here I am.

Most importantly though - I had a bloody Amiga. Man, I miss those days.

"I had a bloody Amiga. Man, I miss those days."

Amen to that

I can still clearly remember being amazed when I first saw Deluxe Paint running on the Amiga in the late 80's. Poring over the latest edition of Amiga Format became a favourite weekly ritual. Those were the days!
If you are interested in this, you should try this book:

http://www.amazon.com/Unlocking-Clubhouse-Computing-Jane-Mar...

They did a survey of CS students to find out their first experiences. They provide specific quotes in the book, but the gist of it was that men usually were given a computer (or everyone felt that the family computer was "theirs") and they began to tinker around immediately, whether that be with programming or taking it apart. The women's first experiences tended to involve watching a male family member work on the computer.

byoung2's comments follows the typical male answer and mine follows the typical female answer. I watched my 2 uncles and uncle-in-law in the computer since they had jobs in tech. Then my grandfather gave my mom and me a computer and showed us how to use it. I mostly just played on it and used programs until high school were I was "formally introduced" to programming.

I've often had similar thoughts about how men and women initially got involved in programming... why do you personally think that is? (I will look into the book.)
For one, it's our male role models who are using computers while our female role models aren't. Children are affected by such gender differences very early. They notice who drives the car when everyone goes out, who cooks dinner, and who works late.

Secondly, there are expectations about it. For example, if a boy takes apart a computer, everyone goes "such a boy", but if a girl does it, people say "hmm, that's odd." (even if it's good surprise, it's still surprise). I know when I was a child I was pushed to do things like ballet and cheerleading and orchestra when what I wanted to do was martial arts and read and become a scientist.

That's very interesting. I will have to take a look.

I think the point you brought up about the observance of younger children of their superiors is very true. I can recall fond moments of watching my father work on our early DOS machine. I used to play Doom II and Duke Nukem on Sunday nights as a kid and seemed to learn DOS quickly. However, as I stated earlier, it wasn't until later in high school that my interest seriously grew.

The BBC Micro!
Hurray for the beeb, because at the time it was probably a better platform to learn on than any other machine available, but it was quite expensive.

My real start was 74 series chips though, and from there the TRS-80, which I was allowed to use at a radio shack, it was cheaper than buying logic parts.

Yes! When I was about 6 or 7 I remember spending hours typing in a BASIC program from a book on a BBC Micro at school. It drew a circle on the screen and flashed different colours which I thought was the best thing ever. I couldn't figure out how to save it to disk after running it so I had to type it all out again the next day.
I wanted to make useful things inside a computer.

Our school ( a pretty good school) had a programming class but the teacher himself never bothered to show up (!), and classes were about databases and Logo rather than making anything we could use.

I was already hacking DOS - which was needed to make DOS do anything useful - from there, DOS to Unix, Unix to shell scripts, shell scripts to Perl, Perl to Python, some C, and some .net.

I got a Power Macintosh 6100/60 when I turned 9 in the year 1994. I loved it and spent the next few years of my life learning to do almost anything with the computer. I didn't realize (or know) that "everything you can do with a computer" actually crossed multiple different kinds of disciplines, but I didn't care at the time. I threw myself into games, desktop publishing, image manipulation, HTML, and a host of other things to whatever extent I could get the software to play with it. (If my parents had the money or the inclination to buy me Photoshop at the time I might have ended up as a graphic designer.)

Actually programming seemed almost intimidatingly challenging to me until eighth grade, when I tried to throw myself into C. At that age, I lacked the discipline and attention to detail to keep going, and was (and remain, to a lesser degree) reluctant to ask for help from others. Eventually I went into cultivating other interests until midway through college, when I realized that aside from a continuing interest in philosophy there was nothing I actually liked enough to make a career out of except maybe technology. I was reluctant to pivot halfway through college, but after a year or two of half measures I dove into CS. And here I am--a bit of late bloomer for sure.

My first computer was a Compaq Deskpro Portable:

http://oldcomputers.net/compaqi.html

It didn't take me long to pimp it up with a custom autoexec.bat file and to start playing in BASIC.

    10 PRINT "RYAN IS GREAT"
    20 GOTO 10
My mom gave me a BASIC manual at some point, and I started working my way through it, learning how to change the screen to paint graphics, load and save data from data files, write subroutines (GOSUB), modularize programs into multiple files, and so on.

Soon I was making cheesy, derivative text adventures and space battle games and creating sound effects. I even wrote a rudimentary text editor for school essays, though I eventually supplanted it with the superior VolksWriter.

I mostly lost interest in computers during the 1990s, aside from playing around with Midisoft Recording Session, a Yamaha TG-100 and a Tascam 4-track. As such, I completely missed the advent of the World Wide Web.

It wasn't until 1999 that I got a laptop and an email address at work, and quickly got excited about this internet thing.

My boss asked me if I could make a website for our department and I said, "Sure!" Then I called a friend who was taking computer science at school and asked whether it was hard to make a website. It turned out not to be that hard, and so I gradually found myself turning into a web developer.

I remember my boss asking if the site could display summary reports dynamically. I sort-of knew about the existence of server-side preprocessors, so I looked into what we had our web server and discovered ASP. Imagine my surprise to look at the ASP source code and see BASIC staring back at me (albeit with a few objects bolted on).

Just recently I managed to get my old BASIC programs working again via DosBox running on Ubuntu.

lol GOSUB good old gosub...

I was so full of preteen exuberance when I first discovered gosub, totally revolutionized how I thought about computers

I surely wish I'd known someone in KY back in those days that wanted to teach C to a kid :/

When I was 5, my father taught me to program in BASIC on the family's Apple IIe. This kept me entertained through elementary school and into middle school. I remember trying to learn C in junior high, but none of the tutorials I found were all that helpful. None of them ever mentioned what a compiler was or where I could get one, so I was lost as to how to turn source code into an actual runnable program. Junior high math classes led to more problems to play with (and a programmable calculator to use for playing with them). In high school, I took all of the programming classes offered. It wasn't until about then that I decided to go into computer science -- before that, I'd been most interested in biology.
I used to hate computers. Living in the east coast made me want to become a landscape architect so that I could spend more time outside.

When I moved to California I started getting so much sun that I no longer minded sitting at the computer, so I started picking it up. I've always loved designing and building and since a website is never done, the design cycle never ends. Good thing I switched since my thumb was never very green.

FORTRAN IV and IBM/360 :)
The FORTRAN "IV" provided by the IBM 1130, which used 360 components, but the FORTRAN was e.g. lacking logical IF statements.
I was 19 and my sister bought me a computer and I received an AOL CD in the mail. So I got on the net. Then I got a Microsoft VB6 CD. And I learnt to program. I didn't like how difficult the dial-up software was, so I decided to make it easier, and then tried to sell it with Kagi.

Then I got a job taking care of paralysed people in the night, and since I had to stay awake all night in their home (and could not use the net - no flatrates back then), I just fiddled around with Visual Basic all night. So I had a lot of practise, and thought, oh well, I may as well study this computer stuff, seems cool.

So I did.

A dusty old Apple II from my uncle. I was a super-nerd at the time and my parents couldn't afford to buy me a computer. This was around '92? Anyway, it came with a manual for Lisa assembler. It had some built-in graphics subroutines which I thought was pretty neat. I just punched in the stuff not really understanding the implications of it all.

Later we got another second-hand computer, an 80386. It was around '94. For the first time I had a relatively decent computer. That thing lasted me until around '98. I spent summers reading BASIC manuals and copies of Byte and Compute from the library.

I also bought a modem for the thing and started BBS'ing and learning programming from other people. My first email address was through my local BBS which had it's own link. This was my favorite time with computers.

My entire family thought that I would "get into computers."

I never did until I was 23. In high school I had gotten into punk and metal and liked playing in bands. After high school I tried to start a label. I thought I could leverage file-sharing where other labels were trying to shut it down. Well that failed in a big way and I was out of work and living off of coffee and toast in a crappy room in some dumpy part of the city (I had taken off from my small town and moved to the city to put myself through college without any money or a place to stay.. that was tough, but I took audio engineering which turned out to be the wrong thing to do). That's when a friend of mine had a cousin at an ISP who was looking for someone to help maintain their hardware and build websites. I downloaded a few manuals on PHP, read a few tutorials, aced the interview and 5 years on I'm loving my job.

I'm now mainly program in Python and Perl and like to read textbooks on maths and computer science on the weekends. Sort of like I used to when I was a geeky kid that everyone picked on. It took a while, but eventually I got there.

My father worked at Intel pre-Pentium days, and so I grew up around random wafer boards and chips he would bring home to show my brothers and I.

I spent a week when I was in Jr. High figuring out how to network two computers together so I could play Warcraft 2 vs my little brother. It's so darn easy now, it's almost not fair.

I blame Warcraft 2, CompUSA, and AOL for my current tech addiction.

I have a strange history with computers. In fifth grade I was selected (still now sure how) to go to a week-long summer school class for programming. We used some sort of IBM PCs (I have no idea what they were, I just remember booting them up with a 5.5" floppy and having to punch in the correct time as it booted) and typing in the BASIC commands the teacher wrote on the board.

In eighth grade, me and a buddy spent way to much time programming a 'choose your own adventure' story in BASIC on an Apple IIe. Something from that fifth grade class must have stuck. For some reason though, I never connected what I was doing with computer science. I guess I thought I was just playing around with a toy or something, so when my college adviser suggested I major in Computer Science, I said no way.

At some point during High School I'd gotten my hands on a copy of Photoshop, Version 3 I think. That somehow led me to major in Information Design, which oddly was in the school of journalism. I took classes on print and web design, some flash even, but most of the curriculum was journalism-oriented.

After college I worked in newspapers for about six years, creating info graphics and designing pages, but I was always involved in any IT project that came along. I helped setup a content management system, upgrade servers, etc.

I also started in newspapers right about the time their downhill slide started. The conversation du jour was always about how newspapers could make it online. Eventually I transitioned to working on Flash projects, learning Actionscript 3 (basically ECMA script) and eventually taking some .net classes at a community college to learn about object-oriented coding and all that.

Now I work for the state IT department and have a few side projects going as well. Someday I might actually post one here. I'm more of a designer than a programmer, but I think where I've landed - at least for now - fits my strengths very well. I still wonder what would have happened if I had majored in CS from the beginning, but I would have probably missed out on some fun traveling and great experiences that I had while newspapering.

Exodus Ultima 3
More specifically, Hex Editor, finding character info in the save files and bumping all your stats up to FF.

Then finding the maps and going nuts adding things and creating entire new cities.

Then playing around with other pieces of various files, and finding yourself being attacked by chests, blocks of water, and the letter W.

As far back as I have memory (and I'm told before as well) my family had Macs in the house; our LC575 and Powerbook 150 were staples of my childhood.

I remember one day when I was in my dad's office after school, sitting at his PowerMac 6100/60 ( this would have been about 1998, with me being 8). He was running SoftWindows emulating a 286 running Win3.1, something foreign to me. He showed me around this mysterious "Windows" thing (which wasn't too interesting to me) and then showed me what happened when you quit windows and went into "DOS". A few looks at cd and dir and I was enthralled.

Pre-teen years spend with a string of cast-off 486s and old Macs (and that critically timed slackware 7.1 disc) gave me things to meddle with. Not having broadband Internet until 2007 taught me to delve deep into whatever i had access to, not able to fall prey to flash games and other time wasters.

Basically, being pompous enough to think that I could meddle with things beyond my young age fostered that crucial skill of "I might not know off the top of my head, but I know how it probably works, and I can find out exactly how it works"

My Dad has been a programmer longer than I've been alive, so I've always been aware of programming. When I was 13, some friends and I built a ZX81 with my Dad's help, and then he taught us to program in BASIC. I was fascinated for a month or so, and then I forgot it. I don't think I even tried to program again until Senior year of highschool.

At my highschool, there is a tradition called Senior Projects. Every senior has to spend at least 50 hours (not very much) over the summer, working on a project of their choice.

I chose to make a videogame after talking to one of my cousins (another programmer). He recommended I pick up Python and use the PyGame library. Over the course of the summer I made a simple 2d game. I aced my presentation that fall, and then promptly forgot everything I knew about Python.

However, I enjoyed the project enough that I decided to study CS in college. My first CS class was what really got the ball rolling. Since that class (two years ago) I don't think I've had more than 20-30 days without programming.

Atari 800 XL. Mostly playing tons of games, a little bit of BASIC.

Nice side-effect: I learned English earlier and better than my peers. Being stuck in a game was perfect motivation, dictionary was always at hand (thank you Adventure).

I was always dismantling things as a child. Remote control cars, clocks, lawn mowers, etc. I had a strong desire to just learn how things "worked."

I picked up a Tandy 1000HX second hand when I was probably 9 or 10 years old. I mowed a ton of lawns to get a hard drive for that machine. Shortly thereafter, I received a 486 and a handful of Walnut Creek CDs of various (dated) Linux/BSD distributions. I'm still not sure how those CDs came into my possession, I believe they were passed on to me from a friend.

I spent some time BBSing and learning to write shell scripts. On a couple of BBSes, I read hacking and phreaking text files and started to learn C/Assembly. It was free knowledge as our library was lacking in tech books and I rarely got to go to a bookstore. I also developed a fascination with radio, telephony, and basic electronics.

Three to four years later, the family decided it was time we had a computer (that we could all use). They picked up a 90Mhz box from HP that I promptly installed Linux on and used it to play games, program, and read any sort of documentation I could get my hands on. I also branched out into Perl and started writing small applications with it. We got Internet access about this time and I spent hours saving/absorbing documentation and tutorials from gopher/www/ftp sites.

In my late teens, I took on a job at the local Radio Shack repairing busted electronics. I learned quite a bit there, but electronics these days are disposable, so I had to find other work. I was doing penetration testing on the side for quick cash and ended up getting a contract for the City I lived in. After I finished the job, I got hired on as an intern in the IT department while going through college.

In university, I carried a double major in Computer Science and Pure Mathematics while also attending the local community college for Network Administration. I never finished either degree as I was offered a full time job as Network Administrator at the City. I took the job, quit school, and got married.

During the year or two before I dropped out of school, I learned Ruby with some friends from the ACM at the university and began doing freelance development.

So here I am today, Network Administrator for a small municipality and part time freelance Ruby developer. I'd really like to ditch the ties of my day job and get a full time development job or break out into my own business, but I'm trying to save up some buffer before I decide to take the leap.

Freshman undergrad. So, I'm young.

I've been around computers my entire life. When my father was in college (in the 70s, he's an old fart), he majored in EE/CS (or rather, EE / Math with focus in CS, because CS didn't exist as a separate major in his college). I was raised in Silicon Valley, so I just hold my interest in computers/technology to be a product of both my parents and my environment.

On the other hand, my brother is a musician, and my sister wants to be an artist, so I don't know.

Nothing interesting about my first story: I got a boring cubicle job in a large enterprise that needed 12 programmers to do anything, blah, blah, blah. But I did do some good work for a vice president who remembered me when he moved to another company, which leads to my second story, my real story:

He brought me in to his new company to do a consulting job to answer 2 questions, "What do we have to do to get Order Entry, Shop Floor Control, and Standard Costing written and running?" and "How many programmers do I need to hire?"

They had 400 employees, were missing all of these mission critical apps, and had only 1 programmer. But he was all they ever needed. I worked with him for 3 months and he wrote all of the software needed using tools and techniques none of us had ever seen before.

He did instant analysis and design, wrote disposable apps, did rapid prototyping, stepwise refinement, and extreme programming years before anyone ever heard of these things. He never wrote the same line of code twice, writing standard functions and reusable components. If he knew he needed something twice, he wrote a parameter-driven code generator on the fly and had me collect the parameters for him. He even coded in Boolean algebra and had an engine that converted it into production source code. He threw things into production long before anyone else would, figuring it was easier to just keep reworking them instead of waiting until it was perfect.

He was a one man shop in a $150 million company. He was smart, he worked hard, he loved what he did, but most of all, he didn't know that "it couldn't be done", so he just did it.

Three months watching Dick build stuff, and I was hooked for life. I had to do it, too. And I've been doing pretty much the same thing ever since, pausing only long enough to add a few new technologies to my tool box along the way.

Sometimes I wonder what horrible cubicle I'd be wasting away in if I hadn't met Dick and saw what was really possible.

So now I'm curious, what ever happened to Dick?
Sinclair ZX Spectrum, Christmas 1982.

Shiny.

Commodore vic-20! I still have it, 5Kb RAM teach you how to be efficient
I can fondly remember changing the terminal background and border color for the first time on my C64:

10 POKE 53280, 0 20 POKE 53281, 0

I can still remember working through the BASIC examples in the manual and magazines. Good times.

hah, this is pretty much the only thing I remember from C64. I did it in one line though: POKE 53280,0:POKE 53281,0

53280, was the inside text area, 53281 was the border area, and 0 was for the color black.