Slashdot Mirror


How Did You Learn How To Program?

theodp writes "'Every programmer likely remembers how they learned to code,' writes GeekWire's Taylor Soper. 'For guys like Bill Gates and Paul Allen, the magic began on the Teletype Model 33 (pic). For others, it may have been a few days at a coding workshop like the one I attended for journalists.' If you're in the mood to share how and in what ways your own developer days began, Soper adds, 'cyborg anthropologist' Amber Case is collecting stories to help people understand what it takes to learn how to code. Any fond computer camp stories, kids?"

623 comments

  1. Basica by ThinkDifferently · · Score: 1

    Basica on DOS on an 8088 clone PC. Then I had to UNlearn that and learn how to really program in college.

    1. Re:Basica by gorzek · · Score: 2

      I hear that.

      My parents bought an Amstrad 286 (12MB hard drive space! 512KB RAM! VGA graphics! 3.5" floppy drive! MS-DOS 5.01!) and it came with this enormous GWBASIC manual. I was 8 years old and had been mildly curious about computers for a couple years, but my dad wouldn't let me touch his TRS-80. My grandfather had a Commodore 64 that I knew enough about to load games, but that was it. Once we got that 286 with the huge GWBASIC manual, I realized that I could tell the computer what to do, too. After that, I was programming on Apple IIs, C64s, and TRS-80s--pretty much anything I had access to with some flavor of BASIC.

      That got me through until high school, when the Web really started to take off, at which point I learned perl. I've since used more languages than I could probably list.

      I'm definitely glad my parents found it worthwhile to get a computer and just let me have at it. They were pretty forgiving when my tinkering screwed up AUTOEXEC.BAT and CONFIG.SYS so badly they had to wipe the hard drive and start over. They didn't really know better at the time, and I didn't know enough to fix it. They sure learned to back up important files to floppies, though.

    2. Re:Basica by davester666 · · Score: 2

      Master Programming in 24 Hours for Dummies!

      --
      Sleep your way to a whiter smile...date a dentist!
    3. Re:Basica by Bengie · · Score: 1

      Just as long as you remembered to "park" your harddrive before shutting down. You didn't want to head-crashing.

    4. Re:Basica by gorzek · · Score: 2

      Oh, yes. We always did that, too. I remember when I later got a 386 and was astonished that it auto-parked the heats when you shut it off. SORCERY.

    5. Re:Basica by gorzek · · Score: 1

      Auto-parked the heads, I meant. I need to proofread more.

    6. Re:Basica by MightyMartian · · Score: 1

      I remember having to do that with MFM drives on our Tandy 6000 mini-computer. That's the beast that I gained my *nix chops on.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    7. Re:Basica by maxwell+demon · · Score: 1

      I started programming on a ZX61 with a whole 16KB RAM (which was a BIG memory expansion pack on the back; per default it came with 1KB). With programs recorded on tape (and not very reliably). And a whopping 32x24 character display (but the bottom 2 lines were reserved for input). It had even graphics: 64x44 pixels, black&white on a TV.

      The next step was learning machine code. Stored in a REM statement in the first line of the BASIC program ...

      --
      The Tao of math: The numbers you can count are not the real numbers.
    8. Re:Basica by Dunbal · · Score: 1

      Yup, I started with BASICA on an IBM PC, took a course at my high school's brand new modern "computer lab" (it had 6-7 PC's and a couple of them even had CGA monitors!). A few years later I taught myself C, ASM, Pascal. With that basic foundation I have no trouble understanding any new language, from Java to Lua to Python. Oh, and I program strictly as a hobby.

      --
      Seven puppies were harmed during the making of this post.
    9. Re:Basica by johnjaydk · · Score: 1

      Same thing here. The thrill of of poking in the stuff you assembled by hand and testing it the hard way. Today, I would have written an assembler for that shit, but I was young and innocent back then.

      --
      TCAP-Abort
  2. Compute! Magazine by Dan+East · · Score: 5, Interesting

    When I was 10 I had a Ti-99/4A and subscribed to Compute! magazine. I'd type the BASIC programs in each month, and through the process of typing in thousands of lines of code, and then wanting to make modifications to the games (adding more lives, etc), I simply began to understand how the software controlled the behavior of the computer.

    --
    Better known as 318230.
    1. Re:Compute! Magazine by cant_get_a_good_nick · · Score: 1

      Another "upvote" for Compute!. Between the magazine and the books, it was the key to 8-bit 6502 geekiness.

    2. Re:Compute! Magazine by StrangeBrew · · Score: 1

      That was my start as well. Enter the lines of code as is, then begin 'tweaking' things to make it more to my liking. Unfortunately I often hit the memory limit before I'd accomplished what I had wanted to.

    3. Re:Compute! Magazine by CimmerianX · · Score: 2

      Yes, Compute Magazine. I remember that fondly. Well, maybe not so fondly as I had to debug my code and find my typo amidst the lines of transcribed code. But it was an awesome way to learn the basics of programming and logic. I never did beat that "Goldminer" game.... i remember that one most of all.

    4. Re:Compute! Magazine by Anonymous Coward · · Score: 0

      I cut my teeth on the TI 99/4A as well. Great little system!! I still have it and it still works. Every now and again when I'm feeling nostalgic I'll fire it up and play.

    5. Re:Compute! Magazine by Anonymous Coward · · Score: 1

      I wrote an algorithm to redefine the TI 99/4A character graphics on the fly so that I could run the Apple / Commodore graphics routines that came in K-Power, Compute and one other I am having difficulty remembering right now.
      I was so excited when I saw the "ripple" or water drop graphics appear on my TI's screen, even if it too 5 times as long to generate the image.

    6. Re:Compute! Magazine by Anonymous Coward · · Score: 0

      I still have my "Mapping the Atari" book.

    7. Re:Compute! Magazine by fermento · · Score: 1

      Same as above, typing in programs from TI-99er magazine and compute. Most of the learning came from debugging them because you most likely typed something in wrong.

    8. Re:Compute! Magazine by Anonymous Coward · · Score: 0

      Ditto! And the Ti-99/4A really was a nice computer... all things considered.

    9. Re:Compute! Magazine by Radtastic · · Score: 1

      The Ti-994a was also my first, and really was a great machine for game programming, considering the era.

      It supported sprites and collision detection. I remember writing a (poor) clone of centipede, and an original, adolescently-influenced game I called "Gasman", where said hero of the game was chased by baddies. You would vanquish said baddies by letting them get close on your tail and then... well, you can figure out the weapon system. I was 13 or 14. :)

      From there came the C64, which will always have a fond place in my heart. Tasting the next realm beyond basic with "Peeks" and "Pokes", and eventually assembly language.

      Great times, indeed.

      --
      You stereotypers are all the same...
    10. Re:Compute! Magazine by orgelspieler · · Score: 2

      Man, that brings back memories. When my brother and I were little (like 6 or 7), mom was getting her education degree. Her professor let us hang out in this room (closet) where they kept their TI-99 with it's tape drive. It had been usurped by some Apple computers in the main computer lab. We would transcribe the programs from 3-2-1 Contact magazine (So it had to have been between 85 and 88).

      We would do the same thing as you, tweaking things here and there. I remember having 100 lives in the snake game. Or making it go slower. There was one ridiculous program that actually included a map of the US or maybe the world. Which meant writing a whole shitload of lines of code, one for each line segment. Man... that was a long time ago. I can remember listening to the tape to make sure we weren't going to overwrite somebody else's program.

      Probably the most programming I did was Pascal in high school. I made a Mandelbrot screen saver and a piano emulator. I could only produce one tone at a time, so for chords, I had to alternate between the different tones. Sounded terrible.

      I feel super old now...

    11. Re:Compute! Magazine by Hamsterdan · · Score: 1

      Amen to that...

      Started on my dad's Apple ][ clone, but when I finally bought my own C64, I was buying Compute's Gazette almost every month.

      --
      I've got better things to do tonight than die.
    12. Re:Compute! Magazine by Anonymous Coward · · Score: 0

      Same here! Compute! and the 99'er were a godsend.

    13. Re:Compute! Magazine by Darkroom · · Score: 1

      I started with Compute! Gazette in the early 80's and then Compute! for my Amiga programs. Spent hours typing in programs for the C64, modifying programs and then adding features and game levels. The C64 machine language listing of pages and pages of numbers were always fun when you FINALLY finished typing them in and it run.

    14. Re:Compute! Magazine by jrumney · · Score: 1

      This. Except the magazine was Byte, and the computer a ZX-81. The most memorable moment was an article that demonstrated how to make sound by messing with the video parameters, which me and my cousin combined with a game to have the gameplay interrupt to make shooting noises. In those days, programming a computer meant understanding how the hardware worked. A lot of that is lost these days, as computers have gotten too complex for the average programmer to understand fully, and powerful and flexible enough that you don't need to.

    15. Re:Compute! Magazine by dudpixel · · Score: 1

      This was me as well, also at age 10, but in my case it was an Amstrad CPC6128 and using "usborne" books I had borrowed from the library, as well as the programming manual (API reference + other material) that came with the computer.

      --
      This seemed like a reasonable sig at the time.
  3. Timex Sinclair 1000 by cant_get_a_good_nick · · Score: 1

    2KB of RAM BABY! Unit with so little processing power, it didn't even have a BASIC tokenizer, you essentially typed the program pre-Tokenized with hard-coded keywords on the keyboard.

    The real one though was the Commodore 64, and the fine line of books from Compute!, including the "Mapping the C64 and C64C" and the "6502 Assembly Language" book.

    1. Re:Timex Sinclair 1000 by stevew · · Score: 2

      You had so much room! I learned to program on an Ollevetti Programma 101 in 1971. It was essentially a programmable calculator with 120 possible instruction locations. It used RPN sort of.. and as you went beyond 60 or so instructions you started eating up register storage in chunks until you used up have the available registers with program storage!

      The language looked something like

      AV ( A label)
      S (Stop for Input)
      M+ (Add the Input register to the Accumulator)
      A This was literally a diamond symbol and meant print the Accumulator
      V - Branch back to AV..

      Does that sound like fun??

      --
      Have you compiled your kernel today??
    2. Re:Timex Sinclair 1000 by Anonymous Coward · · Score: 2, Funny

      Luxury...

      250 of us living in a shoebox in the middle of the road...

    3. Re:Timex Sinclair 1000 by Joce640k · · Score: 1

      2K??? Only a young whippersnapper would think 2K was restrictive.

      PS: Back when it was called the ZX81 it only had 1K and the display could take 768 bytes of that. People still managed to program it...

      --
      No sig today...
    4. Re:Timex Sinclair 1000 by Hoi+Polloi · · Score: 1

      Beagle Bros always had their "one liner challenge" for AppleSoft Basic. People would send in their best programs that would fit in a single 255 char line for the Apple II. Folks did some pretty impressive things in that tiny space, mostly with some very educational memory tricks.

      --
      It is by the juice of the coffee bean that thoughts acquire speed, the teeth acquire stains. The stains become a warning
    5. Re:Timex Sinclair 1000 by SuperGus · · Score: 1

      Early Tweets for geeks :-)

    6. Re:Timex Sinclair 1000 by TheMathemagician · · Score: 1

      Yes you're correct, it was 24 rows of 32 characters. However when nothing was displayed on a particular line it could be represented by a single NEWLINE character saving 31 precious bytes. The system variables took up another 128 bytes too I think. Numbers in BASIC code were stored as 5 bytes but you could use the inbuilt PI value to express 0 as PI - PI or 1 as PI / PI which only took 3 bytes. 1K Space Invaders and Breakout weren't too bad though!

    7. Re:Timex Sinclair 1000 by bored · · Score: 1

      I don't remember that contest being much fun because it didn't take long for most of the code to be something like "call -xxx: rem a,b,c,d,e"

      Where the a,b,c etc was tokenized basic and the call was some rom location that skipped the basic interpreter past the rem, the other option was jumping to assembly encoded in the rem.

      Basically, you needed a disassembler or a applesoft token look-up table to determine what was going on.

    8. Re:Timex Sinclair 1000 by mprinkey · · Score: 1

      Yeah...TImex Sinclair 1000, a hand-me-down BW TV from my grandfather, and my old tape recorder. That was the beginning for me...back in 6th grade. I bought from Hills for $50, I think. I spend many hours on it...until the C64 and floppy drive came a few Christmas' later. I look back on those days and the oceans of free time I had...peeking and poking and disassembling code. I remember spending many hours typing in code from Compute! Gazette...that was all C64. And Transactor too.

    9. Re:Timex Sinclair 1000 by TheGoodNamesWereGone · · Score: 1

      Me as well. The ZX81 made pretty efficient use of its space because those BASIC commands were tokenized. They took up less memory. "1K Chess" remains to this day a remarkable achievement, written in pure machine language.

    10. Re:Timex Sinclair 1000 by SomeoneGotMyNick · · Score: 1

      you could use the inbuilt PI value to express 0 as PI - PI or 1 as PI / PI which only took 3 bytes.

      Awesome trick!!! I never even realized that until now and I had access to a TS1000 when they first came out. However, I would think it's only a speed for space tradeoff. At 1MHz, I wouldn't have relied on that too much for repeated use in loops!

      Then again, I used a VIC-20. At least I had 75%-250% more RAM to work with, depending on the stock Sinclair variant.

    11. Re:Timex Sinclair 1000 by KingMotley · · Score: 1

      Atari 2600 Basic Programming.. fun fun... 64 bytes of memory. Quickly moved on to the Atari 800 when it was released, writing in Basic, 6502 Assembler, Pilot (Yay turtle graphics!), and GFA Basic. Then moved on to an Atari 1040ST, again, Basic and Assembler. Then I got my first full time job coding in FoxPro on Unix (Which we had to self-compile) and some Business Basic. We were brainwashed with COBOL, CICS, IBM/360 Assembly, and JCL. When I graduated college, I went to 8086/8 assembler where I stayed for a long time. About the time windows was released I learned C/C++, and then Visual Basic (DOS and windows versions).

      Since then, I've learned some Java, PHP, Python, VB.NET, C#, and javascript. I dabbled in forth and a couple others, but never got very far with them. Outside of COBOL, CICS and JCL (What junk), I taught myself everything.

      That doesn't count the database stuff.. Dbase, FoxPro, Access, DB2, Oracle, MS SQL, and MySQL/MariaDB.

    12. Re:Timex Sinclair 1000 by mattack2 · · Score: 1

      So, BASICally, analogous to the Obfuscated C contest.

    13. Re:Timex Sinclair 1000 by Egyptoid · · Score: 1

      very much echo this. Atari 1600XL, basic cartridge, cassette drive, typed in junk from magazines. I even ported code from other mags to see what I could borrow. since I was also a D&D geek, I would try to do all I could to do game related printoutsm dungeons,etc.

      --
      == I question your beliefs, makes me a Troll. You insult my beliefs, you are progressive and mainstream. Okay. Got
    14. Re:Timex Sinclair 1000 by jgrahn · · Score: 1

      You had so much room! I learned to program on an Ollevetti Programma 101 in 1971. It was essentially a programmable calculator with 120 possible instruction locations. It used RPN sort of.. and ...

      There's a documentary about that one; it was on .se television a while ago. Hailed as a precursor to the home computers. But it's spelled "Olivetti".

    15. Re:Timex Sinclair 1000 by volmtech · · Score: 1

      I got my ZX81 as a Christmas present from my wife. I would sneak it out of the closet, unwrap it, play with it for a while and wrap it back up. I went through the basic programing book that came with it. I added a 64K expansion pack and full keyboard. I wrote an accounting program for my farm that I used for three years until I got a Tandy model 4p. I still have the ZX81 in a closet. I even have the 4 in thermal printer. Printing out reports would give me a nerdgasm.

  4. Hello world! by Anonymous Coward · · Score: 0

    Good times with a T!-83 in the back of math class...

  5. LibertyBASIC by cosm · · Score: 1

    LibertyBASIC and then moved to game programming with Bloodshed Dev C++. The good old days for me. Now it is mostly business glue in .NET with C# in cubicleville.

    --
    'We are trying to prove ourselves wrong as quickly as possible, because only in that way can we find progress.' RPF
    1. Re:LibertyBASIC by aztracker1 · · Score: 1

      I do a lot of the same for work... Though in my last job got to dabble with NodeJS and MongoDB a bit... now I'm in "Enterprise" development mode, WCF FTW!

      My start was completely different... mostly application macros and shell scripts doing more creative work, until in 1996 I wanted to have some pretty simple interactions in a web design... the staff programmer told me it wasn't possible, I picked up a bit JS book, ate through it over the weekend, and did it myself the following Monday. Kind of fell into doing more after that. Was early on enough that LiveScript was pretty common and ASP was just coming out (JScript and VBScript), from there some VB and SQL. From there C# and a few other languages (Perl, Ruby, Python, F#, etc), did about one a year for almost a decade though don't remember enough of any of them to be productive in without a couple weeks to come up to speed.

      These days it's still mostly C# (mostly ASP.Net and MVC stuff)... I do find the most compelling story is with JS + NodeJS + MongoDB for small-mid size projects (warts and all). Hoping that it gains more traction in corporate spaces.

      --
      Michael J. Ryan - tracker1.info
  6. C64 by gweihir · · Score: 2

    Bought a C64 to find out about this "computer thing". When Basic turned out to be dog-slow, taught myself assembler.

    --
    Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    1. Re:C64 by Anonymous Coward · · Score: 1

      I started off on c64 too. Ours had a tape drive, the kind that stored info on an old audio tape. Learned a lot on a trash-80 too, but I think my breakout to really understanding code was on a tab works system, there was something about .bat files that really spurred my imagination. I miss the good old days when Leisure Suit Larry was considered high end graphics and cutting edge game play.

    2. Re:C64 by OffTheLip · · Score: 1

      C64 for me too but I used mine to telecommute to the local university for my CS degree, which included some programming coursework. Nothing like a 1200 baud modem and software 80 character screen emulator connected to a PDP 11-70 BSD system as a C teaching testbed. Loved it.

    3. Re:C64 by drakaan · · Score: 1

      Loved my C-64 (all $183.00 of it plus 50 for the tape drive).

      Learned on that at home and the PET and CBM machines at my middle school...I still remember thinking that the under-200-line "keyboard" program written in the manual was loooong :)

      For the nostalgic (not syntax checked...just what I can recall from messing with people in the computer lab):

      10 POKE 144,88
      20 ? chr(int(rnd(1)*255)+1)
      30 GOTO 20

      --
      "Murphy was an optimist" - O'Toole's commentary on Murphy's Law
    4. Re:C64 by Intrepid+imaginaut · · Score: 2

      Amstrad CPC6128. I have vague memories of some character in a magazine calling himself "the hairy hacker" too, you don't get columns like that anymore.

    5. Re:C64 by Anonymous Coward · · Score: 0

      Started with C64 BASIC entering magazine and book programs and learning to modify them for my needs.

    6. Re:C64 by borgar · · Score: 2

      My mother bought me C64 when I was about 13 since I was spending all my time with a Dragoon 32 at a local bookstore.

      I started out "playing" with Basic before moving on to assembly when our "group" moved from to game swapping to making demos. It wasn't actually assembly since coding was basically writing opcodes directly into memory using a tool called hexmon. Those where the days...

      I'm not sure I can call this programming though. I didn't learn that before I started on the university. I still remember the first lecture when the professor asked if anyone had previous experience and then told us that we actually where at a disadvantage compared to the rest :-). He might have been right too. I don't think knowing Basic (C64, Amiga and PC) really was much of a benefit when starting on "Object Oriented Programming with Simula".

    7. Re:C64 by Anonymous Coward · · Score: 0

      Yes, remember that one ...I think it was called UP UP and AWAY!

    8. Re:C64 by jandrese · · Score: 1

      I also started out on the C64, but since I lived in West Virginia there was nobody who understood assembler, nor any useful materials. Everything I knew about the machine I got out of the manual. The only assembler I knew was the code for the sprite generator, because that was given as an example in the manual. I sometimes wonder how different my life would have been if I had access to the kind of online resources kids do these days. Nothing quite as isolating as being seemingly the only person in the county with an interest in something.

      I eventually moved on to Hypertalk (Hypercard) when my parents got a Mac LC. Back in the old days Apple would give you the full Hypercard development environment with your mac (System 7.0 days) which made it easy to get started. My mom even found a programming reference for it at the bookstore and it opened up a whole world to me. I'm still annoyed that Apple dumped Hypercard, it was a great gateway programming environment.

      --

      I read the internet for the articles.
    9. Re:C64 by Anonymous Coward · · Score: 0

      I learned also on the C64 on sale at KMart. My high school was connected to a KMart through a short path through the woods. In math class the teacher would give 20 minutes to start on the home work. I would write a basic program to do the homework instead. I would then walk to KMart and enter the program to do my homework.

      One of the employees saw me doing that and said that if I made the computer interactive with customers that he would have me a chair to sit in every afternoon. I wrote a small scrolling program that asked for name and city where they lived and a few other things that the guy wanted. I had a chair waiting for me every afternoon till the end of the school year.

      This is now my 30th year of professionally programming.

    10. Re:C64 by njnnja · · Score: 1

      I grew up with "programming" on the C64 too, and it is funny that it did not seem to help very much when learning to code for real. However, my undergraduate degree is in pure math (not statistics or discrete/applied math) and it's funny that the kinds of things that I learned on that C64 helped me tremendously in mathematics.

      There is a unique blend of creativity and rigor that is very similar when you write a program or write a proof, that you need when you look at the blinking cursor at the top of a blank screen, or a sheet of paper that begins with "Thm:" and ends with a lonely "Prf:". You need to be able to connect what you know, and the tools that are available to you, and have some inkling as to how they might reach the goal at the end. Sometimes it is as simple as unpacking some definitions, or just plumbing together some libraries, but the tough/fun part is when you need to figure out some non-obvious trick that will get you to the other side. And once you have that insight, you are not done; both require a great deal of rigor, such as covering all possible conditions of a conditional branching structure, or making sure that counters and loops start at 0 and go to n (or is that 1 and n+1? :) ).

      Now I work with statistics, and although the work deals with many more numbers, and most people would say that it really is "math," it really doesn't feel the same as the math I did at school except when I have to create some interesting data structure or use some optimization trick to get everything to fit into memory. And those neat coding exercises are more like "math" to me than a bunch of numbers coming out of some numerical method.

    11. Re:C64 by SomeoneGotMyNick · · Score: 1

      My parents bought me one of those new VIC-20 computing machines back when they were newly released.

      Having never really been exposed to BASIC programming, except for many long sessions in front of TRS-80's, much to the chagrin of Radio Shack managers, I found the VIC-20 user manual rather... "light"... in its content.

      Later, I bought the Programmer's Reference Guide, which was an explosion of useful details and information about the VIC-20!!! There was an entire section on memory maps and detailed 6502 assembler codes. Using just that book, I started learning to write and hand compile machine language routines. I would enter the programs via PEEK commands and DATA statements.

    12. Re:C64 by Anonymous Coward · · Score: 0

      Same story...but shared my friend's C64.

    13. Re:C64 by dudpixel · · Score: 1

      Yes, this was my first computer too.

      TWICE the memory of the C64, ah the rivalry was fun.

      At 10 years old, I used to borrow books from the library on programming, then type in the code and modify it to see what happened.

      I look around at 10 year old kids now and it still makes me proud that I taught myself programming at such a young age. Probably doesn't count for much in the long term, although I do still enjoy learning new stuff and I work as a software developer.

      --
      This seemed like a reasonable sig at the time.
    14. Re:C64 by Anonymous Coward · · Score: 0

      I did exactly the same thing. Only I first thought i could change the baloon to a mooncar by changing the word i the code.

  7. I can't but I have a 100k piece of paper saying I by Anonymous Coward · · Score: 0

    I can't but I have a 100k piece of paper saying I can and that is how I got the job said our code is a mess and they keep passing over people who can code and don't have that piece of paper.

    just kidding.

  8. BBC by serviscope_minor · · Score: 5, Funny

    BBC Basic on a BBC and then asm to make it faster.

    Really, BBC BASIC wasn't a bad language. Allowed proper structured programming with functions, procedures, local variables etc.

    I still remember that CHR$(141) does double height text in teletext.

    This has not been a useful thing to remember.

    --
    SJW n. One who posts facts.
    1. Re:BBC by slim · · Score: 1

      Yeah, the BBC was a great place to learn, although I never moved onto ASM.

      I remember writing bouncing ball routines and turning them into games; cellular automata; 3D projections of geometric figures, which you could animate by cycling the colour palette; random walk fractals and mandelbrots (which, being written in BASIC, by me, could take days to render).

      Then I did a CS degree, in which the lecturers expressed a preference for teaching people with no "bad habits" learned from previous programming.

    2. Re:BBC by tom17 · · Score: 1

      I remember being so gutted that my Acorn Electron didn't support that teletext mode :(

      Yeah, my first was the Electron. Saving to tape was sketchy at best, so every program I wrote out would only persist until the next power-down. I think I once managed to get an Elite save game.

      As such, my progression was molasses slow at that point in my life. It didn't capture me as I would spend all my time copying code verbatim and not actually picking away at it & modifying it.

      My progression really started in my DOS days and then I did a 'Computer graphics" module at Uni that was really just a course for this newfangled Java 1.0 thingy.

    3. Re: BBC by Anonymous Coward · · Score: 0

      I've the UK schools BBC-B masterstroke revolution to thank. Started with BASIC aged 9 and it set me on the path to more complex languages.

    4. Re:BBC by Anonymous Coward · · Score: 0

      Heh, I could have written this except some of my programs were in assembly language.

      My tutors were similarly prejudiced, but I got a first anyway so fuck 'em.

    5. Re:BBC by Jahta · · Score: 1

      BBC Basic on a BBC and then asm to make it faster.

      Really, BBC BASIC wasn't a bad language. Allowed proper structured programming with functions, procedures, local variables etc.

      Another thumbs up for the BBC. Like you I learned BBC Basic and 6502 assembler.

      BBC Basic was actually a pretty good language, and the instruction books the BBC provided emphasised a structured approach to programming which gave me a number of good habits which have served me well since. And when I went to college part of the first year curriculum was 6502 assembler, so those projects were a breeze! :-)

    6. Re:BBC by Anonymous Coward · · Score: 1

      I maintain the interface to the teletext system in Westminster (an iMERGE gateway). Not much maintaining these days, but CHR$(141) is still on my cheatsheet taped to my cubicle wall.

    7. Re:BBC by monkeyhybrid · · Score: 1

      Ahhh, BBC BASIC. Fond memories! :)

      I started with the Acorn Electron. Most, if not all, of its keys had secondary shortcuts to frequently used BASIC commands which is what first got me interested enough to investigate further.

      A couple of years or so later, we inherited a BBC Model B followed by a BBC Master 512 and I'd spend many an hour typing in code from Acorn User magazine and the like. At a pretty young age I was making my own programs in BASIC, even making rudimentary educational programs to run in primary school when they started adopting BBCs there. I remember coming across 'cryptic code' embedded within BBC BASIC that I eventually found out to be assembly language, and started to dabble with that, developing some very basic games and drawing programs.

      Somewhere along the line there was a Spectrum and an Amstrad. I can't quite remember where they came from but they taught me that different computers had their subtle differences.

      I always wanted an Acorn Archimedes but never owned one myself, although did have use of them at school. Instead, my parents were donated an early IBM PC (8086 CPU I think) from a relative and I found a copy of Turbo Pascal from somewhere. I think this is the point I started to grasp the fundamentals of 'more serious' programming.

      It was all PCs from then on, using Turbo Pascal and Turbo C++ in DOS at first, to then falling in love with GUIs (yes, and Windows!) and spending a lot of time in Borland Delphi and MS Visual BASIC. As time went by, I realised C++ was what 'serious' programmers were using so figured Visual C++ was the way to go (back in version 1 days). I never really got into that though, much preferring Delphi at the time.

      It was when I first put Linux on my 486 that things really opened up and I started using different languages for different tasks. I started examining other people's code, learning routines and tricks, best practices, getting to know some of the ins and outs of Perl (sadly, mostly forgotten now), Tcl, shell scripting, etc, as well as honing my skills in C/C++ and Java. For my sins, I've also spent a lot of time in PHP for web projects.

      Nowadays, I wouldn't say I'm an expert in any one language, but I have a good enough knowledge and experience of programming in general to get stuff done, hopefully in a reasonably professional manner!

  9. self-taught, of course by kiick · · Score: 2

    I first learned to code by reading the BASIC manual of my Sinclair ZX-81 and laboriously typing out programs one keyword at a time on that little keypad (after assembling it myself). It's amazing what you can do with 1K of RAM.

  10. Commodore Vic 20. by Anonymous Coward · · Score: 0

    Commodore BASIC was bloody horrible even by the standards of the 1980s, but it was my first programming language & I still have a soft spot for it somewhere. I was only a kid though, and my programs were simplistic and crap.

    BBC basic was next, followed by GFA basic on the Atari ST. Then I went to uni, got an introduction to structured programming via PASCAL, taught myself C and eventually learned all the things I was doing wrong.

    I think if I made the mistake of finding any of my early code I would probably end up with bleeding eyes & vomiting :)

    1. Re:Commodore Vic 20. by O-Deka-K · · Score: 1

      Commodore BASIC was bloody horrible even by the standards of the 1980s, but it was my first programming language & I still have a soft spot for it somewhere. I was only a kid though, and my programs were simplistic and crap.

      I did this with my C64 when I was around 8. I remember going through the BASIC tutorials in the manual (when home computers came with programming manuals). Later, I would go down to the library and take out books like "Write Your Own Adventure Programs for Your Microcomputer" and "Write Your Own Fantasy Games for Your Microcomputer".

      I also had a subscription to Commodore magazine. Still have them in a box somewhere.

    2. Re:Commodore Vic 20. by FilmedInNoir · · Score: 1

      Greetings fellow oldster. :)
      Very similar development path only I went from Pascal to Perl (early dot com boom language) and than Java.

      --
      Sig. Sig. Sputnik
  11. Basic Basic by chiangovitch · · Score: 2

    That was the name of the textbook, and we did it on an HP 3000 timeshare minicomputer in 1976. First high school in the city to get its own educational computer system, I think. The class was "Computer Math", and it changed my direction from architecture to computer science. Spent 4.5 years at the state's science & technology campus helping my engineering major friends with their mandatory FORTRAN class. :-P In Computer Science in those days we did a lot with PL/1. Got a job in a small shop after graduation and was in the right spot at the right time just when Unix got commercialized and I got the task of figuring it out. :-D

    1. Re:Basic Basic by stanlyb · · Score: 2

      Now i know who to blame for helping the idiots pass the exams....

  12. A P L \ 3 6 0 by Anonymous Coward · · Score: 0

    Hacking up genetics algorithms, and word processing, Junior High, 1969
    (Before that was a Wang programmable calculator, not sure that's programming :-) )

  13. I was just 10 years old by jimmetry · · Score: 1

    QBASIC on I think a Toshiba T2200. I thought my Dad was a brilliant programmer, but actually he was converting old BASICA games from a different system. I learnt from those snippets.

    1. Re:I was just 10 years old by The+MAZZTer · · Score: 3, Interesting

      QBASIC here, at 8. My dad actually made some brilliant MS-DOS batch file scripts so we could store games in ZIPs on our 80MB drive and only extract them when we played them. Later iterations even scanned the game directory for changes after the game exited and zipped up only changed files into a separate archive. So if you wanted to reset a game just remove the second archive.

    2. Re:I was just 10 years old by dywolf · · Score: 1

      QBasic 4.5 on a (at the time) spanking new Epson Equity LT-286 "laptop"...that weighed ~20 lbs, and had a smokin hot 1 or 10MHz (I dont rememebr exactly) processor and 1 whole MB of ram. i thought it was so cool i was making my own .exe's

      --
      The guy who said the election was rigged won the presidency with the second-most votes.
    3. Re:I was just 10 years old by MightyMartian · · Score: 1

      My first paid programming job was a point of sale system I wrote for my boss, who had just bought a gym. It had basic functionality; a cash register function, inventory function and a Z tape-style dump that they could run at the end of the day. It was good enough to be used to catch one of the employee's stealing protein drinks. I was paid a whopping $250. QBasic was a bit slow and the startup parameters a bit hoakey so I convinced my boss to pick up a copy of QuickBASIC 4.5 and compiled the beast into exe.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    4. Re:I was just 10 years old by jimmetry · · Score: 1

      Ah, QB45.exe ..... I could finally build an executable without having to pay any money! I had a lot of ideas back then. They're coming in handy now that I've realised the world hasn't changed much.

    5. Re:I was just 10 years old by LBt1st · · Score: 1

      How Did You Learn How To Program? ...I never stopped learning!

      I started on a TRS-80. But I too give thanks to my real beginnings to QBASIC. Instead of my dad, it was my older brother that introduced me to it. He eventually gave up programming and became an outdoors man. I on the other hand have been coding for the past 20'ish years :)

    6. Re:I was just 10 years old by jimmetry · · Score: 1

      I feel like we need an IRC channel for people who started in the pre-GUI era.

  14. 3-2-1 Contact by gravis777 · · Score: 2

    On a commodore 64 and later on a pc. After doing a few programs, I started breaking the code down, making changes. I must have been about 7. When I was 9, I took an official BASIC course at the local junior college in their college for kids program. In high school, I took Pascal, then majored in Computer Sciences in college where I learned C, Cobol, Java and Assembly.

    1. Re:3-2-1 Contact by ranton · · Score: 1

      I still remember reading through my computer's manual to try and find out what a Filename was when I was in 4th grade (some article listed the syntax to write a program as QBasic , or something like that). I also first learned to program by writing those little programs in 3-2-1 contact. They sold $5 discs that taught things like Algebra and BASIC, and I spent a good deal of my money from helping on the farm on those $5 discs. I wish I would have kept one of them for nostalgia purposes.

      After those discs taught me enough to write my first tic tac toe program, the QBasic help files did the rest.

      (I'm not 100% sure those discs were sold in 3-2-1 Contact, because I had a few magazine subscriptions back then. My memory is fuzzy after about 25 years)

      --
      -- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
    2. Re:3-2-1 Contact by ravnous · · Score: 1

      I had an Atari computer (1200XL I believe). I remember that 9 times out of 10, the computer program in the 3-2-1 Contact would not have an Atari version. I was always so disappointed. Sometimes they would have a little section that would say, "Take the Apple IIe program and change this line to say this, and that line to say that." Little did I know that you could pretty much do this for every program, that BASIC was mostly the same across the platforms, except for a few differences that you could get around.

      --
      When does this happen in the movie?
    3. Re:3-2-1 Contact by Paul+Slocum · · Score: 1

      I actually sent in a C64 program that was published in 3-2-1 Contact in 1987. They paid me $25! :)

  15. TRS 80 Model I by MyLongNickName · · Score: 3, Interesting

    TRS-80 Model I with 4K of RAM. I was 6 and the thing came with a wonderfully put together BASIC programming manual. The beauty of the system is that you didn't need a lot of theory (any really) to get started.

    10 CLS
    20 PRINT "JOE WAS HERE"
    30 GOTO 10

    This was amazing to me. I ended up writing a few games, some math function and anything else I could do in 4K. Later on I went into programming as a career before turning to the dark side of management.

    --
    See my journal for slashdot ID's by year. Mine created in 2005. http://slashdot.org/journal/289875/slashdot-ids-by-year
    1. Re:TRS 80 Model I by Anonymous Coward · · Score: 0

      Trash-80s rule. Did yours have a hard card? Don't mean to brag, but ours had a 20 meg hard card in it. 20 meg! It was like having an endless storage library.

    2. Re:TRS 80 Model I by BonThomme · · Score: 1

      Same here. I could never get the cassette drive to save my program, but you'd only find that out when you'd try to load it back and discover it wiped out the program in memory with nothing off the tape. After typing the same program (it was a space battle game with ASCII ships) in about 50 times, it all started to make sense.

      Then we got the Atari 400. Color. Glorious color.

    3. Re:TRS 80 Model I by Anonymous Coward · · Score: 0

      The Model IV is the first to come out with a hard card as far as I know.... and yes I had the IV and the 20M card. The Model I, I upgraded to 16K.... as far as I know that was the limit.

      -- MyLongNickName

    4. Re:TRS 80 Model I by invid · · Score: 1

      I tried to write a Dungeons and Dragons game on the TRS-80 at our high school. I quickly lost track of all the GOTOs. Thus began my lifelong hatred of BASIC.

      --
      The Moore-Murphy Law: The number of things that will go wrong will double every 2 years.
    5. Re:TRS 80 Model I by idontgno · · Score: 1

      Similar story, except that the TRS-80 I used was the local Radio Shack's in-store demonstrator.

      I thought it took a lot of nerve on the part of the 14-year-old shoe-gazing math nerd to attract the attention of the store manager and ask if I could interrupt the in-store demo program to type in these programs I found in the Geometry textbook our school was using. And he agreed.

      I think it paid off in the long haul for him; I bought my own TRS-80 from the same guy less than a year later and wound up sinking several thousand of dollars on accessories, peripherals, and software (and other follow-up purchases... for instance my second computer a few years later was a Radio Shack Pocket Computer 2, from the same store).

      For me, that was the turning point between computer science and electrical engineering. I was going to buy a computer, but the question was whether it'd be a pre-assembled computer with a BASIC interpreter or a kit like an IMSAI 8080. If I'd bought the kit computer, the threshold to get to the point of writing software would have been considerably higher, after the effort needed to get a working computer to begin with, so I'm pretty sure my focus would have wound up more hardware-centric.

      --
      Welcome to the Panopticon. Used to be a prison, now it's your home.
    6. Re:TRS 80 Model I by nabsltd · · Score: 1

      Model I as well.

      I didn't own one, but I added features (or fixed bugs) on the BASIC games that they had running on the floor model at the local Radio Shack. The store manager "paid" for specific changes in the form of discounts on purchases.

      I eventually wrote a complete Monopoly game for the Model III, including graphical dice rolling. It wouldn't run on the 16KB version, though, as it was about 28KB.

    7. Re:TRS 80 Model I by gsgriffin · · Score: 1

      Same with me, but I was about 13 and it was a Model 1 Level 2. I thought it was 16k, but could be wrong. The difficulty was that on mine, the k, r, s v, a and many other keys would randomly double or triple itself when typing. Which means I was using the backspace about 5 times per line. I would call it deep training to be persistent...especially the few times I worked all day on entering code I found in a magazine to only sit back, stretch out and accidentally kicking the power supply and deleting all my work. Boy, how disk drives changed my life after tape.

      --
      jsut athnoer menagiensls ltitle psrhae for you to dcoede. Why do we wtsae our tmie dnoig tihs?
    8. Re:TRS 80 Model I by Rob+Riggs · · Score: 1

      Model I and "Creative Computing" books/magazines for me. Amazing that these books are available in eBook format now. Search for "David Ahl" on Amazon. Also here: http://www.atariarchives.org/bcc1/

      Had loads of fun with Lunar Lander, Hunt the Wumpus, Super Star Trek, and many others.

      --
      the growth in cynicism and rebellion has not been without cause
    9. Re:TRS 80 Model I by Anonymous Coward · · Score: 0

      Yeah, I had problems with the cassette too. Once I spent "forever" typing a program from a book, saved it, only to find I intermittently had corrupted data. Apparently the sound of me walking across the floor interfered with the saving. I could reproduce errors by pacing the floor. If I was totally still it saved just fine.

      Glory days.

      -- MyLongNickName

    10. Re:TRS 80 Model I by Anonymous Coward · · Score: 0

      same, TRS-80 with programming manual, this question should have been made poll

    11. Re:TRS 80 Model I by bored · · Score: 1

      Funny thing about those programs...

      A couple years ago I recovered a bunch of my early code and moved it to a apple emulator. While doing that I loaded some of those "huge twisty" programs up in my editor, which has ~250 vertical lines. Its pretty amazing, because the ones with goto's aren't that bad when you can see most of the program screen at once. The ones that are the problem are the ones that are 30% peeks and calls because I no longer remember what all those addresses do.

    12. Re:TRS 80 Model I by Anonymous Coward · · Score: 0

      Same here. At 15-16 I was programming the in-store TRS-80 because it was the only way for me to get access to a computer. The manager was a great guy (and the 18 year-old female sales clerk was HOT). And years later I also bought a Pocket Computer with thermal printer, but that was to help automate quotes for my uncle's insurance office.

      The BASIC manual for the TRS-80 was by far the best intro to computer programming I've ever seen. It was a fun genius piece of work.

      At 16 after helping my Mom all summer with her real estate venture she bought me a Challenger 1P with 8K of RAM from Ohio Scientific which had a nice Microsoft BASIC-in-ROM and allowed calls to 6502 machine code routines (not assembler, but actual hex machine codes you had to figure out by hand).

      If only I'd gone to work for Microsoft way back when...

    13. Re:TRS 80 Model I by Agent0013 · · Score: 1

      Yep, the great TRS 80! I got mine around 6 or 7 also. And I remember the huge BASIC programming book that came with it. I remember having russian roulette programs and some with graphics. It was in color, so maybe another model? I eventually did get a tape recorder to work, but it was slow and clunky and would sometimes fail.

      --

      -- ssoorrrryy,, dduupplleexx sswwiittcchh oonn.. -Quote found on actual fortune cookie.
    14. Re:TRS 80 Model I by Omegaman · · Score: 1

      I recently got an old BASIC program running from Dragon Magazine. The entire thing can be run in a browser today.
      http://randomwizard.blogspot.com/2012/12/the-electric-eye.html

    15. Re:TRS 80 Model I by geminidomino · · Score: 1

      And people thought early the CDRs with little/no buffer invented that problem. ;)

      Damn kids...

    16. Re:TRS 80 Model I by Dunbal · · Score: 1

      Lol! I was always in my local Radio Shack playing around with their TRS-80!

      --
      Seven puppies were harmed during the making of this post.
    17. Re:TRS 80 Model I by Like2Byte · · Score: 2

      Ha! Know the feeling well. I like to think that I hacked and R/E'd my way to computer programming by reading the source to hundreds of thousands if not millions of line of code. I was 9 (1978) when I located this rabbit hole and knew then this is what I'd do for the rest of my life. There was no Google so I largely would trade pirated games or find cassettes that contained programs written in easily translatable BASIC commands which I quickly picked up. Every 'RUN' magazine was read from cover to cover. Learned to type while reading code from it. Began writing my own programs to do whatever because guess what, young-bucks - It hadn't been done much yet and the 'teh interwebs' was another 20 years away - so searching the web for a program to do 'X' didn't exist.

      One day sticks out particularly well with me, too. One day I had a mathematical homework assignment. Math is tedious. Being lazy, I wrote programs to do all my homework assignments for me. My father caught me doing this one day and began to - as he was often want to do - scold me. He said, "Son, if you let the computer do your homework for you you'll learn nothing." I turned and quickly responded, "Wrong, Dad. I have to program the computer to do the homework AND validate that the computer is doing my homework correctly. So, I'm learning twice as much." His eyebrows raised and he turned and walked away.

      That was the first time I knew this US Marine to not pound me into the ground for talking back to him. I knew I was on to something amazing.

      Computer system progression: Commodore PET/CPM VIC20 C64 C64c (VIC20/C64/C128 combined) 8086 (it was a sad beast) 486 $WHO_CARES_AFTER_THE_486 ...

    18. Re:TRS 80 Model I by geoscodin · · Score: 1

      I didn't even have my own TRS 80, but in fifth grade my best friend did, so I would go to his house and we would key the BASIC code from a magazine I don't remember for games like Lunar Lander. That was my pay to be able to play the games. I didn't have full access to be able to toy with the code a lot, but after his family got a Commodore Vic 20, my parents (perhaps in an attempt to see more of me) gave me a C64 for Christmas. I never did have a disk drive back then so we recorded (saved) and loaded (played) everything on tape. In 11th grade I took a BASIC class and a class in PASCAL the next year. It was too fun to even think it could be a career until I went off to college where we focused on COBOL and Fortran. There were no jobs to be found coding COBOL in '91 so I exaggerated my RPG experience to get my first job, left for a job where I confessed I knew nothing about Natural (4GL), and have since been a professional Natural code monkey for about 17 years. I did tinker with html along the way, kind of on a dare, which led me to do some Lotus Domino for a client before starting my own web side business biz.

    19. Re:TRS 80 Model I by SomeoneGotMyNick · · Score: 1

      The only HD solution I was aware of for the Model IV were external units, like this: http://vintagevolts.com/?p=265

    20. Re:TRS 80 Model I by Anonymous Coward · · Score: 0

      I tried to write a Dungeons and Dragons game on the TRS-80 at our high school. I quickly lost track of all the GOTOs. Thus began my lifelong hatred of BASIC.

      Lucky you didn't start with assembler.

    21. Re:TRS 80 Model I by MyLongNickName · · Score: 1

      I am almost positive that the hard card I got was for the Model IV. It is possible that I am confusing it with the Tandy 1000, but I don't think so. I remember getting the "card" which was almost the full length of the case and was heavy enough to kill a water buffalo. Now that i am typing this, I am trying to visualize puting it in the case... maybe it was the 1000 after all.

      I'll have to ask my dad if he remembers.... this is really bugging me now :)

      --
      See my journal for slashdot ID's by year. Mine created in 2005. http://slashdot.org/journal/289875/slashdot-ids-by-year
    22. Re:TRS 80 Model I by MyLongNickName · · Score: 1

      Aren't memories great? My guess is you had the CoCo (TRS Color Computer). Released in 1980. The original models had cassette (if my memory is correct) and a couple years later were offered with disk drive.

      Floppies were a great step forward then... now I'm glad we don't have to deal with them. That is the cure of technology... nothing ever remains great.

      --
      See my journal for slashdot ID's by year. Mine created in 2005. http://slashdot.org/journal/289875/slashdot-ids-by-year
    23. Re:TRS 80 Model I by Deep+Esophagus · · Score: 1

      Similar story, except that the TRS-80 I used was the local Radio Shack's in-store demonstrator.

      Sounds like my story, idontgno. I picked up a copy of Ahl's "BASIC Computer Games" at the library and entered them all into the TRS-80 demo model at the mall's Radio Shack over the course of a summer. When they started throwing me out there, I hung around Foley's where they had that IMSAI alongside the original Commodore PET, which is the one I eventually bought.

      The sales dude at Foley's was always my best programming teacher. I'd go in and he'd show me some cool hack he had figured out and say "I bet you can't do THIS"... so I played around with the program until I figured out how he did whatever it was.

    24. Re:TRS 80 Model I by pscottdv · · Score: 1

      I was lucky. I was able to afford the Model I Level II with 16K of RAM using my baby-sitting money!

      And Radio Shack had more than just the BASIC programming manual. They also had a Technical Reference manual that explained the full theory of operation including the timing, the generation of the video signal, the reading of the character data out of ROM...Everything!

      I learned enough about digital electronics from that single manual to design my own programmable EPROM board that allowed me to rewrite the character font table.

      It also helped me repair the unit after a mouse crawled inside and urinated all over the main board dissolving a number of traces.

      The ATARI 800 I purchased a few years later had great documentation, too. The entire kernel was explained. MAN! What happened? Nothing comes with documentation any more!

      --

      this signature has been removed due to a DMCA takedown notice

    25. Re:TRS 80 Model I by SomeoneGotMyNick · · Score: 1

      Sorry if I threw you for a loop on this one... I remember hardcards going into expansion slots, of which the Tandy 1000 series had (early ISA bus). My uncle had me put a 40MB hardcard in his Tandy 1000 back in the day. I thought they were the greatest thing to be invented because the entire hard drive system resided on a single card and not spread around the innards of the computer in a mass of cabling.

      The Model IV didn't have conventional expansion slots. Nearly everything data I/O related, other than floppies, was done externally. Starting with page 23 of this online copy of a TRS-80 catalog, you'll see what was made for Model IVs

      http://www.radioshackcatalogs.com/catalogs_extra/1985_rsc-12/

    26. Re:TRS 80 Model I by Racerdude · · Score: 1

      10 CLS
      20 PRINT "JOE WAS HERE"
      30 GOTO 10

      30 GOTO 20 ?

    27. Re:TRS 80 Model I by Anonymous Coward · · Score: 0

      Thanks! I've been looking for that bug for 30 years!

      -- MyLongNickName

    28. Re:TRS 80 Model I by Roachie · · Score: 1

      There was this big green paperback book circa 1979( or sooner ) that explained BASIC programming for the TRS-80-ish platform . From that humble beginning I got the spark. This spark in 1989 goaded me to learn C so I could dick around with the current high-tech topics of the day, cellular automata and ant theory via Quick-C. After years of doing sales work that turned from tech support work to into a programming job I made a career out of it. That book... best investment ever.

      --
      This sig is not paradoxical or ironic.
    29. Re:TRS 80 Model I by Roachie · · Score: 1

      Indeed, my friend, indeed. Joe IS here.

      --
      This sig is not paradoxical or ironic.
    30. Re:TRS 80 Model I by Agent0013 · · Score: 1

      No, I'm sure it was a TRS-80. In fact, it looked like this one. It had to be plugged into a TV, and the tape recorder was one my mother already had. I do remember the cable to connect it had 2 or 3 jacks as it may have started and stopped the tape automatically or something. I also remember it had a cartridge slot in the side and I had a few games for it. If you turned it on without a cartridge in the slot it was then in the BASIC programming mode.

      --

      -- ssoorrrryy,, dduupplleexx sswwiittcchh oonn.. -Quote found on actual fortune cookie.
    31. Re:TRS 80 Model I by Agent0013 · · Score: 1

      Oops, now I see that it was also called the CoCo. I never heard it called that before. The label on the machine just called it a TRS-80.

      --

      -- ssoorrrryy,, dduupplleexx sswwiittcchh oonn.. -Quote found on actual fortune cookie.
  16. SOFOR on Punched Cards by Anonymous Coward · · Score: 0

    SOFOR == Southampton University Fortran. It ran on an ICL 1901a and we punched our own cards.

    Then it was An ASR-33 connected to the Open University (UK) or Hatfield Poly DEC-10's and we used Basic.

    Now I write software that runs large parts of an airport.

    1. Re:SOFOR on Punched Cards by justthinkit · · Score: 1

      Same here. Fortran on an IBM 360 mainframe. Typed in from one of those keyboards linked in the summary. Torture. Half way through my Bachelor's thesis (CHML) it became possible to work on a CRT terminal. Massive improvement. Discovered the original usage of "cookie" then. Better times.

      --
      I come here for the love
  17. Typing, lots of typing by CodeheadUK · · Score: 1

    Bashing programs from magazines into Zx81 and Spectrums.

    1. Re:Typing, lots of typing by redfox2012 · · Score: 1

      Did you ever find one that worked?

      It was the same for me with the added thrill that our house's leccy came via a coin fed meter where a day's graft could disappear for want of 50p!

    2. Re:Typing, lots of typing by ProgProj · · Score: 1

      ZX-81 with 16KB RAM (expansion) and ZX-Spectrum here as well.

    3. Re:Typing, lots of typing by Roachie · · Score: 1

      Well I would not call it typing... that is, until you typed an open quote, Careful! don't wiggle the memory expansion cartridge! Thanks for the walk down 'memory' lane.

      --
      This sig is not paradoxical or ironic.
  18. On a CoCo by nefus · · Score: 1

    Talk about an 80's flashback. I learned basic on a CoCo, the color computer from radio shack. Picked up Hot CoCo, Rainbow Magazine and others and my technique improved a lot. Then I got into OS-9 and learning the basics of linux, pascal and a number of other things. Just wish that assembly had made more sense to me at the time. It's also when I started hardware-hacking my machines for better memory and a variety of other things that radio-shack never intended to support. I want to give a shout out to Chris Burke for making the first and best commercial hard-drive interface for the Coco... thanks Chris, you were a game changer. I've often wondered why people made fun of my chicklet-keyboard back then on my first battleship gray coco but now all laptops have them and its considered trendy. *laugh*

    1. Re:On a CoCo by maharvey · · Score: 1

      Me too. 1981 or 82, silver TRS-80 Color Computer, 16K extended. Couldn't afford software but I learned to type by entering listings from Rainbow and Hot CoCo. Upgraded to 64K memory and added composite video output myself, my first hardware hacks, so I could use a "real" monochrome monitor instead of a TV. Bought Leventhal's 6809 book and did a little machine language using DATA and POKE statements, but didn't get too far with that. Always wanted to get into OS9 and get a disk drive and stuff... or even better get one of the 68000-based machines... but it was just an expensive pipe dream.

      After the CoCo I went to college, bought a PC clone and taught myself Turbo Pascal with only 256K and a 1.2MB floppy drive. I remember my first 20MB hard drive, I was so stoked, and it filled up so fast! I moved on to Turbo C++ and the rest is history. Learned to make GUIs and TSRs and text editors and stuff from do-it-yourself books.

      My first real break was in 1989, helping my uncle computerize his business. I talked him into a 386 Dell PC with Unix System V, and tasked myself with writing accounting software for it. I managed to write a mailing list app for his customers with C, curses and db_FILE, but he wisely went with commercial accounting software. He loved Unix and remained a devotee for the rest of his life. If he was still alive he'd probably be a Linux geek now. And having tasted Unix for real, and having bought Tanenbaum's books, I desperately wanted to get my hands on MINIX so I could run it on my 286.

      By 1993, having finally realized I wasn't up to the task of writing business software, I went back to college to get a proper education and a degree.

    2. Re:On a CoCo by OakDragon · · Score: 1

      My first (OK, *only* :)) significant assembly language programming was done on my CoCo. I needed something to push pixels around on the screen faster than BASIC would.

    3. Re:On a CoCo by LodCrappo · · Score: 1

      Me too. The CoCo was a great way to learn. Used to check the mailbox every day for a new Rainbow!

      --
      -Lod
  19. On a ZX Spectrum by Big+Hairy+Ian · · Score: 1

    I got a ZX Spectrum when I was 13 this was when having a home computer was a relatively new idea. So I taught myself on there, then on the shite commodores (Vic 20 and the Pet with the built in casset tape drive) they had in school (I was better at it than the maths teach who taught computer studies though he always beat me at calculus :D). Then I got some actual work experience (Dbase II on a Dec laptop circa 1985) then I went to college and learnt some more (Cobol etc) and I'm going to stop now because this is starting to read like Mien Camp :-/

    --

    Build a Man a Fire, and He'll Be Warm for a Day. Set a Man on Fire, and He'll Be Warm for the Rest of His Life.

    1. Re:On a ZX Spectrum by TyFoN · · Score: 1

      When I was two years old in 1982, my father purchaced the spectrum as he figured that computers would be important in the future.
      He even soldered on a proper keyboard instead of the crappy rubber keys that came with it.

      I started programming on this by typing in the symbols from a computer magazine that listed the basic code when I was around 4-5. Since all basic syntax had it's own key it was not too hard. The reward was a game that sometimes worked and sometimes was a bust.

      I later learned real programming with the C64 and later on Pascal, assembly and C on DOS.

    2. Re:On a ZX Spectrum by cyborg_zx · · Score: 1

      ZX Spectrum +3 for my 7th Birthday. Also had played aorund with batch scripts on my grandmother's Amstrad PC1512 but not much programming there. Typed in the BASIC from the manual, then from library books then from magazine listings - including the obligatory DATA statements containing machine code. By age 12 my Dad had found a book on Z80 assembler and I was using an assembler from a magazine tape cover to do some funky things with the screen but never did much too substantial. (Most I ever did was to hack the type in listing for a clock in order that I could put that clock into an IM2 routine and then overlay it on the +3 BASIC editing mode's black bar so it replicated the look of a PC corner clock and do something similar for a SoundTracker song routine so I could listen to a tune whilst typing as well). Mostly continued along with the hacking stuff during secondary school as I got my first PCs and I wanted to modify Doom, Quake, Duke Nukem 3d and the like - which were readily there for the hacking. Not much proper programming there until Uni and work.

    3. Re:On a ZX Spectrum by Anonymous Coward · · Score: 0

      Me too. My parents bought my sisters and I a bundle of the 48k model, a tape-deck, and maybe 10 games.

      Sadly the tape-deck was dead, so I spent the few days until the shops were open enough to take returns reading the fine orange-manual. My sisters played games, I learned to program. First Basic, then z80.

      I had several POKEs published in Your Sinclair, etc, back in the day. Thanks to Jon North's excellent tutorials.

      Happy days.

      Steve
      --
      http://steve.org.uk/

  20. BASIC Variants, Progress 4GL RDBMS by Anonymous Coward · · Score: 0

    Apple II BASIC, T.I. 99/4A Basic, Extended Basic, Super Extended Basic, GWBASIC - all while in middle school through highschool.

    During my Sr. Year, I started working as an intern for a small company learning to program in Progress 4GL RDBMS (1986), sh, awk, sed on a Burroughs XE-550 running Centix (UNIX that loaded over the top of CTOS).

  21. TRS-80 by somsip · · Score: 1

    Sat in the local Tandys (Radio Shack) all day, every Saturday on their TRS-80 Model I, and later the Model IV. With thanks and much appreciation to the store dude Chris, who allowed me to do this week in, week out, as long as no customers were affected.

    1. Re:TRS-80 by OakDragon · · Score: 1

      I think a lot of TRS-80s made it into the hands of the "less privileged" by virtue of being sold by Radio Shack. For example, I lived in a rural area, but we had a Radio Shack (slash-hardware-store). I can't remember for sure, but I would bet my parents didn't want me to send hundreds of dollars to some fruity computer company in California, but who could go wrong with the "Shack"? So my first computer was a TRS-80.

    2. Re:TRS-80 by Roachie · · Score: 1

      Those jerks that were working the counter at Radio Shack used to kick me outof the store. Not too long after I discovered that my high school had a lab full of Apple IIs. The irony came later as the 'teachers' used to make us leave so THEY could go home and watch TV.

      --
      This sig is not paradoxical or ironic.
  22. College. by Anonymous Coward · · Score: 0

    College.

    1. Re:College. by kermidge · · Score: 1

      I had two classes in "Fortran for Engineers" in '66-'67, but can't say I really learned how to program.

      Later, I helped in a very small way some friends put together, write an OS and some programs for an Altair kit. Later, on our Compucolor, ported games found on mainframes in various languages (mostly Fortran, COBOL, a couple others whose names I can't recall just now). Started learning about program logic and thinking about design, and really learned about bugs and how to stomp them.

      In '81, on an Atari 800, designed, coded, and sold a program commissioned by a small corporation. Had no "ins" and wasn't that bright, so never worked in the field.

  23. QBasic on 486DX by Anonymous Coward · · Score: 0

    I got a diskette with two games (Nibbles and Gorillas) written in Microsoft's QBasic back in the 90ies when I was 8. Got me started... but I wanted something with a compiler so I learned Pascal - Borland's TurboPascal was still around back then and later I used the Delphi IDE for ObjectPascal. Added PHP, Perl, bash and R later, but never quite managed to learn C properly.

    1. Re:QBasic on 486DX by almitydave · · Score: 1

      I messed around with GW-BASIC on my parent's Tandy 1000SX (8086), but it was when they got a 486 with QBasic that I really started learning. I modified Nibbles to add 3 players, special abilities, more levels, random levels, and all kinds of stuff. I basically learned how to program by messing with that game. Now I'm a software dev at a major financial insitution! All you people with a 401k have Nibbles to thank for the success (you're welcome) or failure (Microsoft's fault) of your retirement fund.

      Nibbles FTW.

      --
      my, your, his/her/its, our, your, their
      I'm, you're, he's/she's/it's, we're, you're, they're
    2. Re:QBasic on 486DX by Anonymous Coward · · Score: 0

      Same. GWBASIC, followed by QBasic and modifying Nibbles and Gorilla.

      Now I'm a PLC programmer.

  24. self taught by Anonymous Coward · · Score: 0

    I learned by reading books and self study. My school had a terminal to a mainframe in a collage in a different city, and only seniors were allowed to take a programming class.

    I "borrowed" the programming book for the system and made a copy of it (my dad had a home office with photocopier), and read through the whole thing. I would then "sneak" into the computer room and run games and programs.

    I eventually saved up my summer earnings to buy an Apple IIe to continue learning to program. By the time I got my first official computer class, I was already well versed in basic and assembly, and had even hacked my apple to add new key words to the interpreted basic.

  25. Commodore computers by sa666_666 · · Score: 1

    First a VIC20, where coding a loop to print "Asshole" was the pinnacle of achievement :) Then moved on to C64, where I became more proficient in Basic and some of the graphics and sound stuff. But it was the Amiga (first 500, then later 3000 and 4000) where I taught myself C and later C++. From there about a year using Windows, and then to Linux.

    As I look back, I now notice that almost every system I was ever drawn to was programmer-centric. I never realized it back then, and even into post-secondary education it took a while to realize that CS was my destiny.

    1. Re:Commodore computers by tv+war · · Score: 1

      > First a VIC20, where coding a loop to print "Asshole" was the pinnacle of achievement :)

      I did this too. :)

      At the time, I was trying to figure out how to spam the screen with random curse words and offensive statements.

      > Then moved on to C64, where I became more proficient in Basic and some of the graphics and sound stuff.

      I never picked up a C64. I largely stayed with the vic20 with a 16k ram memory expansion card.

      At the time, I was attempting to write my own video games on the vic20, largely learning from a book with a title resembling something like " Arcade Games on the Vic 20". (It had a full Basic language listing for a game named "moonraker").

      From my many feeble and failed attempts at writing my own video games, I learned a lot about the Basic programing language and algorithms, largely from trial and error.

  26. Ti-82 Pre-Cal math class by ZombieBraintrust · · Score: 2, Interesting

    In high school I took a math course that required graphing calculators. The course tought simple programs to graph curves. Wasn't long before I was doing more complex stuff. Its a shame smart phones don't come with a programming app pre installed.

    1. Re:Ti-82 Pre-Cal math class by Anonymous Coward · · Score: 0

      It is a shame that scripting languages aren't more integrated into modern systems at all.
      Sure, a command line interpreter is nice but the old systems that booted directly into a basic interpreter was a bit more convenient.
      The step between being a user and being a developer used to be so small.

    2. Re:Ti-82 Pre-Cal math class by JTsyo · · Score: 1

      My first experience was with a TI too. Just making simple programs to solve certain types of problems in HS. My tech teacher provided me with a few sheets on programing for the TI, that along with the manual is how I learned. After that in college ended up using MATLAB a bit and took classes for C++ and FORTRAN. Recently learned Python do do user scripts for FEA program.

    3. Re:Ti-82 Pre-Cal math class by linuxgurugamer · · Score: 1

      Modern systems are more than just Windows. Every Linux system comes with a variety of scripting languages. The Bash shell is usually the first you experience, but then there is Python, Ruby, PHP (yes, it has a command-line version), and many more I can't even begin to list

    4. Re:Ti-82 Pre-Cal math class by Anonymous Coward · · Score: 0

      Modern systems are more than just Windows.

      Every Linux system comes with a variety of scripting languages.

      So does Windows. Batch is a joke, but VBScript, JScript, and Powershell are all supported out of the box.

    5. Re:Ti-82 Pre-Cal math class by vidnet · · Score: 1

      It definitely is. The most easily accessible scripting language on Windows 3.11 was DOS batch files, so that's what I started with. If you think C64 and BBC BASIC are slow and inexpressive...!

      Sometimes I wonder where I'd be today if I could have started with a proper language.

    6. Re:Ti-82 Pre-Cal math class by TapeCutter · · Score: 1

      Windows has it's own stable of scripting languages pre-installed, but I would love to see it include python. It's perfect for scripting automated builds and other cross platform tasks (after you get the versioning issues sorted ;). Also I get a kick from telling people I have been "playing with my python all day".

      --
      And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
    7. Re:Ti-82 Pre-Cal math class by drolli · · Score: 1

      If they would then you could not fuck over people into paying 2Euro for an app which does nearly nothing.

      Lets not forget:
      These things were designed as advertisement devices, not as utilities for the user.

  27. I never did by coldsalmon · · Score: 5, Interesting

    What little "programming" I've done (bash scripting, HTML, MySQL, a bit of Scheme from SICP for fun) doesn't really count. What I've learned, I've taught myself based on information found online and in books. I know enough to write some useful scripts for my office Linux server, but I leave the real programming to real programmers.

    1. Re:I never did by slinches · · Score: 1

      My "programming" experience is similar. The closest I've ever come to any formal training is in a numerical methods class in college where we coded some numerical integration and matrix inversion algorithms in Matlab.

      Since then, I've taught myself to do some bash scripting by using Linux but nothing of significant complexity.

      --
      Knowledge Brings Fear
    2. Re:I never did by Anonymous Coward · · Score: 0

      The flip side of this? I learned on a TI (briefly, I hated it) and a C-64. Eventually I moved on to PCs and got into C++, then later C because even before they added templates I thought C++ was too busy.

      At one point, an admin asked me if I wanted root on a box so I could manage it myself. I said "no". I leave the administration to real administrators.

    3. Re:I never did by taiwanjohn · · Score: 1

      Same here (or similar)... I knew enough to write the first version of the newspaper website I created, but after that we hired some "real" IT guys and they took it from there.

      As for how I learned... When I was in about 8th or 9th grade, around 1976 or 77, we had a "unit" in our math class involving pre-punched IBM cards which we used to form BASIC programs which would be batch-jobbed at the local university on their HP1000. The following year, we got a DEC-Writer and an ADS Terminal in the math dept. office, and were thus introduced to "interactive" computing. These were running on 300BAUD modems via the office phone lines, so we would sometimes "prank" each other by picking up an extension phone on the same line and talking into the receiver. ;-)

      It wasn't long before we found the computer lab at the university, and started randomly taking a seat and punching out some cards to feed to the computer. Somehow the grunts behind the window never figured out that we weren't actually "college" students, and had no right to be there. We also noticed that the university had a lot more ADS terminals, which were preferable because you didn't have to wait for results on a dot-matrix printer.

      Soon after that, Apple-II's started hitting the market, and then IBM PC's a couple of years later. But I didn't actually get a PC until the mid-80's, and didn't get back into programming for a while after that. Eventually I found a book on assembly language that really "spoke" to me. I learned a lot from that book, and went on to devour more books about C, C++, etc.. Some years later, I read more books about HTML, SGML, LaTeX, etc... and then came Python, PHP, and Java... and along the way there were also books about TCL, SVG, XML, and other similar buzzwords. (Oddly though, I never learned PERL or EMACS... they both just looked too deliberately masochistic...;-)

      I never actually wrote much code, unless I had to. But I knew enough to know how to look up whatever I needed, and that was enough to get the job done.

      Somewhere in there, around 1995, I started using GNU/Linux. And like many of my brethren, I devoted countless hours toward trying to get the damn video drivers to work with X-windows. Grrrr! (You young whippersnappers don't know how good you've got it these days...;-)

      Honestly, after all that, I can't claim to know much about "computer science"... for example, I can't tell you the difference between a shell sort algorithm and a quick sort. But I know how to look that up if I need it, and I'm confident in being able to "kludge" it together somehow. But in my current position, I'm much more likely to be "riding herd" over other programmers, rather than writing the code myself. So I reckon I have a pretty good background for that. I can read code; I can speak the jargon; and I can visualize various ways to implement a project. From there, it's mostly people skills...

      Although I've never specialized in CS, it has been a constant "distraction" and companion for many years. And it has given me many opportunities. I suspect that puts me in good company on this forum.

      --
      XML is like violence. If it doesn't solve your problem, you're not using enough of it. --AC
  28. PDP 8 field service school, at "the mill" by HotNeedleOfInquiry · · Score: 1

    It was 1972 and I had just gotten out of the Army. DEC hired me to work at their Oakland, Ca. office and had sent me to the mill for 3 months of training. The one-week class on PAL-3 assembler was the best part of it. I also puttered around with FOCAL a bit.

    --
    "Eve of Destruction", it's not just for old hippies anymore...
    1. Re:PDP 8 field service school, at "the mill" by 93+Escort+Wagon · · Score: 1

      About five years after you... on a PDP 11/40, learning BASIC as part of a program somewhat like Running Start (which didn't exist back then). Then, in college, I had a job writing code for a chain of music stores - this time on a TRS 80 of some sort. The computer i learned FORTRAN and a few dead languages on at the university was a PDP 11/70.

      I probably still have some programs on paper tape, somewhere...

      But to be honest - while I learned the languages at school, I learned to program by doing. Usually at a job where I wasn't hired to code, but knowing how turned out to be handy for the boss.

      --
      #DeleteChrome
    2. Re:PDP 8 field service school, at "the mill" by snookerdoodle · · Score: 1

      My first "real" job as a software developer was writing PDP-8 assembler. We had a set of assembler macros that did a lot of the repetitive stuff. Originally, it all ran on actual PDP-8s, then we migrated to a microprocessor that ran the same instruction set.

      Ah for the days when you could actually remember all of the instructions (and not just the mnemonics, either) your processor knew. :)

    3. Re:PDP 8 field service school, at "the mill" by Tim+the+Gecko · · Score: 1

      I also puttered around with FOCAL a bit.

      I was trying to program in FOCAL at a dumb terminal hanging off a PDP mini when I was an undergraduate. Suddenly my screen had muchísimo scrolling text and the other people there had nada. Oops!

    4. Re:PDP 8 field service school, at "the mill" by stevew · · Score: 1

      Yep - you could do that for a PDP-8 or PDP-11. Octal makes sense for the 11's assembly! You could read the machine code just about as readily as the assembler.

      --
      Have you compiled your kernel today??
    5. Re:PDP 8 field service school, at "the mill" by Anonymous Coward · · Score: 0

      Out of idle curiousity, which MOS did you hold? Was it relevant to computing and/or electronics? I was a 33S electronic intel repair tech, and it was invaluable when I got out in the 80s.

    6. Re:PDP 8 field service school, at "the mill" by Technician · · Score: 1

      PDP 11/35.. Assembly using an op code booklet and entering it directly in core memory with toggle switched color coded in groups of three for easy octal entry. 32K of 16 bit core plane memory. About a year later we added an RK05 hard disk..

      You think a 32G thumb drive is expensive? You should figure the cost per Gig for RK05 platters!
      http://www.pdp8.net/rk05/rk05.shtml

      Drive and controller $7900 and $350 installation from DEC in 1974
          74 Dollars per month for maintenance
      Additional drives $5100 and $260 installation
          64 Dollars per month for maintenance
      Disk cartridge $99

      About 0.002 GB of data

      --
      The truth shall set you free!
    7. Re:PDP 8 field service school, at "the mill" by 93+Escort+Wagon · · Score: 1

      You think a 32G thumb drive is expensive? You should figure the cost per Gig for RK05 platters!

      I tried carrying one of those RK05s around on my keychain, but it didn't work so well...

      --
      #DeleteChrome
    8. Re:PDP 8 field service school, at "the mill" by R.+M.+Dasheff · · Score: 1

      1973 DEC 10 (a souped up PDP 6 w/ count 'em 36 bit word length) running TOPS-10 hacking FORTRAN IV on punched Holorith cards. We frosh weren't allowed to use the LA-120 (paper fed terminals). Eventually we learned the amazements of TECO for editing purposes (sort of like sed). Trees were in great supply back then. Of course programs were much, much shorter. Later got to play around with a GT40 graphics terminal with manual boot loader. Naturally it's primary use was to play Mars Lander..

    9. Re:PDP 8 field service school, at "the mill" by Roachie · · Score: 1

      Thats neat, I remember from my youth the psychologists asking me,circa 1984, if I felt as though that I had been born too late. This post makes me think that they might have been on to something. How cool would it have been adept at the art BEFORE the PC generation?? Sadly, I will never know.

      --
      This sig is not paradoxical or ironic.
  29. on an old LGP-30 my high school got donated by Anonymous Coward · · Score: 0

    Here's a picture:

    Picture not unlike it looked

    Learned machine code and graduated to assembler. Those were the days you learned a machine.

    1. Re:on an old LGP-30 my high school got donated by stevew · · Score: 1

      And that is ANOTHER bit of my history. Singer-Librascope was headquartered in my hometown of Glendale, CA. I got a summer internship there in 1978, well after the LGP30 days. At that point, Singer-Librascope was entirely devoted to building systems for various military programs. I worked in the R&D lab and picked up a huge amount of experience in a short 3 months. Got to work riding 10 blocks down the hill from home on my moped! To tie this post back into the thread - I got to do some Motorola 6800 programming. Met my first Exorciser development system in the process.

      Librascope was going to bid on a device that was to be a submarine released aerial land-mine. They were bidding on delivering the canister that would hold the small missile. They needed to gather data on the characteristics of the canister as it floated up to the surface from the submarine. They wanted to graph depth versus time as the canister rose to the top. Initially we looked at different chart recorders. They were to big/bulky/expensive. Eventually they decided to do a custom 6800 chassis based on what I think was the Exorbus at the time (later to evolve into the VME bus during the 68K era). They plugged a 6800 board from Mot in the chassis along with a pressure transducer board and 32k of RAM. They put a set of switches on the box so the software could read about what it should be doing, and a large battery. The whole assembly fit into the cannister tube. They would pull it down several hundred feet in a lake they had access to and let it float to the top.

      When they got it to the top, a program I wrote would play the pressure readings stored in memory out to the cassette port. They would record this onto a cassette for later data reduction. It was a real neat 1 off development effort done in a couple weeks. Lots of fun!

      --
      Have you compiled your kernel today??
  30. R: Tape Loading Error by 16Chapel · · Score: 2

    That's how.

  31. Atari 520ST by revdrmr · · Score: 1

    I learned BASIC by typing out a clock with an hour and minute hand that strobed from a magazine, it was the most disappointing (no minute hand) and yet exciting moment of my childhood. Two days later I was told that Santa Clause was a lie, between Santa and the missing minute hand it was a disappointing year for a geeky 7 year old.

    1. Re:Atari 520ST by Anonymous Coward · · Score: 0

      I learned BASIC on an Atari ST when I was about 7 too! GFABasic was the program I used, it was fun using its drawing and UI functions :)

  32. BASIC Programming in High School by JoeCommodore · · Score: 1

    Started with BASIC programming class in high school on Commodore PETs. While in school got lent a TRS-80 at home for a bit (was a donation they didn't have any use for) so I was reading a lot more books and magazines than the class curriculum. After graduation earned enough for a VIC-20 and started getting into assembly language (ahh. hand assembly, that was fun).. and just kept going from there.

    --
    "Enjoy what you're doing! If it becomes drudgery, you're doing it wrong!" - Jim Butterfield
  33. Cards! by Anonymous Coward · · Score: 0

    FORTRAN on cards in 1980. Before the course was 1/2 over I discovered I could
    use the teletype and skip the cards. Next was Pascal on a CDC-6600, then our school
    got a VAX 750, my advisor and I installed Berkeley Unix, I learned "C" and ...

  34. Atari 800XL by robcfg · · Score: 2

    I got my 1st computer, an Atari 800XL from my grandmother in Germany as a First Communion present. When I got bored of playing Donkey Kong, I took a look at the manual, wrote the first example, and ran it. I was so amazed, that I started tweaking the numbers in the code and saw which effect they had. That's when I discovered the power XD

    1. Re:Atari 800XL by Anonymous Coward · · Score: 0

      130XE here, but more or less the same with a third (improved) revision of AtariBASIC built-in and a few other nice hardware extras.

      But most of the figuring out was with some Atari BBS or user group programming guide an uncle of mine sent on a disk that I had printed out (much more in depth than the included manual, explained peek/poke registers and all kinds of stuff - likely an unofficial condensed version of some programming book) and a subscription to Antic Magazine. Which interestingly enough has its archive available online. Probably worth checking out if really into 8-bit emulation or dusting off an old Atari 8-bit computer that was stashed somewhere in the attic.

  35. Linux Manual and a lot of patience by yuukari · · Score: 1

    I started with a basic linux administration manual and apache2 on a compaq presario 4200. From there I expanded into PHP and then into the real programming languages like C and C++. Anyone remember pico? Yep.

    1. Re:Linux Manual and a lot of patience by Anonymous Coward · · Score: 0

      Remember? A lot of people I know still use pico for some bizarre reason.

    2. Re:Linux Manual and a lot of patience by Anonymous Coward · · Score: 0

      Get off my lawn!!!

  36. Trial and error by Anonymous Coward · · Score: 0

    I picked up coding somewhat by accident. I had access to a C64 and accidentally printed out a program listing instead of a directory listing one day. I realized that, among the symbols I didn't understand, were words that obviously related to how the program appeared on the screen. Making minor adjustments to the code listing altered how the program ran. Statements like "print" and "accept" were pretty easy to figure out.

    After a lot of trial and error I went from making minor mods to existing code to creating small programs on my own. My parents (and an uncle) encouraged me and dug up some BASIC reference manuals for me to try and I found some books in the library which explained a little game making. Eventually, years later, I took formal courses in high school and college which taught proper structure and library usage, assembly, object oriented models, etc, but for the first six years I was self taught by trial, error and some terse BASIC references.

  37. Digicomp I by Anonymous Coward · · Score: 0

    The programmable plastic computer with 3 bits of memory.

    http://en.wikipedia.org/wiki/Digi-Comp_I

  38. this way by zakeria · · Score: 1

    10 PRINT "HELLO WORLD"
    20 GOTO 10
    RUN

    wonders how games are made..??

    1. Re:this way by Roachie · · Score: 1

      Ah, the birth pain of many careers!

      --
      This sig is not paradoxical or ironic.
  39. Pascal. by hammeraxe · · Score: 0

    Enough said.

  40. Apple ][e by drummerboybac · · Score: 1

    Learned AppleBASIC in elementary school from an old comb-bound AppleBASIC manual, then gwBASIC and qBASIC in middle/ early high school, then finally C++ in AP Computer Science senior year of high school, which was actually the first year C++ was the AP language.

    1. Re:Apple ][e by briancox2 · · Score: 1

      Applesoft Basic here also. I knew so many peeks and pokes...

      --
      We should learn what we need to know about issues, before we decide what we need to feel about them.
    2. Re:Apple ][e by SavedLinuXgeeK · · Score: 1

      Almost identically history, AppleBASIC in elementary, onto GW then QBasic in middle school. On to Visual Basic for a few apps in early high school and then into C++ with AP Computer Science. The only difference was that I was the last year of C++ before the transition to Java.

      --
      je suis parce que j'aime
    3. Re:Apple ][e by UnknownSoldier · · Score: 1

      The correction model designations were: Apple ][, Apple ][+, or //e. There was never a ][e as far as I know.

      Alkabeth was Ultima 0. Written in Applesoft Basic and slow but it worked and launched the Ultima series each one refining the previous game. i.e. https://groups.google.com/d/msg/comp.emulators.apple2/2NHj_6azS_g/FQsC_q-JHAEJ

  41. GW Basic + Computer Shopper by ducomputergeek · · Score: 1

    My dad would order disks and little booklets from computer shopper for me that would contain BASIC programs. Plus he taught me what he knew from work, although I think he used a language called JCL there in the limited capacities his job required.

    Then I picked up Perl in middle and high school.

    --
    "The problem with socialism is eventually you run out of other people's money" - Thatcher.
  42. Basic on Sinclair ZX Spectrum at home. by Noryungi · · Score: 1

    And, at about the same time, Basic on a CP/M machine at my high school...

    Later more Basic on Commodore 64, moved on to Pascal and Modula-2 on Atari ST.

    --
    The right to offend is far more important than the right not to be offended. (Rowan Atkinson)
    1. Re:Basic on Sinclair ZX Spectrum at home. by Tapewolf · · Score: 1

      And, at about the same time, Basic on a CP/M machine at my high school...

      Later more Basic on Commodore 64, moved on to Pascal and Modula-2 on Atari ST.

      BASIC on the Spectrum for me as well. I think I was about 8-9 when I started. Did a bit of machine code (numbers, not assembler!) but didn't get into it. Got a BBC Micro, still programming in BASIC, IIRC I had some assembler routines to handle sprites taken from a magazine.

      Things really took off when Dad got a PC around 1991. I started with GW BASIC, but then got my own machine and Borland C 2 a few years later. At that point I bit the bullet and started playing with assembler, and wrote my own graphics library for DOS.

  43. C64 by glsunder · · Score: 2

    I had a commodore 64 and learned from the manual. The earliest thing I remember is copying the balloon sprite code and modifying it to make a simple car game. Then saving it to.... CASSETTE tape!

  44. IBM PC-XT 8088 by rabun_bike · · Score: 1

    The machine was a workstation that I used at my father's office. I think is cost the government something like $8,000 and it had a green screen with something like a 20 MB hard drive and 1 5.25 floppy drive. I went to the DUCK 2 week summer camp (Duke University Computer Kamp) twice in '82 and '83 and that's where I really learned how to truly write software for the first time in BASIC. I was 10 years old. The second time I went to the camp I learned how to program in Pascal using the Borland compiler (Turbo Pascal) which was brand new at the time.

    1. Re:IBM PC-XT 8088 by bytesex · · Score: 1

      Hey - you must be me! (Except for the DUCK). Did you also go on to learn C using the Borland C Compiler?

      --
      Religion is what happens when nature strikes and groupthink goes wrong.
    2. Re:IBM PC-XT 8088 by rabun_bike · · Score: 1

      I did actually but it was a few years later. I did a bit a programming in C/C++ using the Borland compiler and IDE in the early 90's. Looking back on it now, the Borland tools were really pretty good - especially for their time. Sadly, my CompSci program was still teaching Modula-2 with basically no IDE in the early 90's so I had to teach myself C and C++ which was awesome until WinAPI C development came along (and later MFC with C++) and then I ran away as fast as possible. That's about the time Borland's OWL libraries were on the market but unfortunately they were getting little traction. The Windows API sucked all the fun out of C and C++ for me anyway.

  45. Learning to code on computers. HA by Anonymous Coward · · Score: 0

    I learned with a pencil and paper you insensitive clod. The teacher of my C++ class didn't allow computers in the classroom so we had to wright every bit of syntax down, then take it to a computer lab where we did our coding. It was hell. I cried my way through that first class, then changed my major. My second coding class was java script, with the aid of a computer in class, I breezed through it.

    1. Re:Learning to code on computers. HA by Anonymous Coward · · Score: 0

      You've got shit coming out your ear holes.

  46. Chalkboard by Antipater · · Score: 2

    X's and O's on a blackboard. We had to develop our own playbook, with blocking schemes and pass routes included. It turned out to be really easy, because my team had a fullback who could...wait. Uh, never mind; that was football camp, not computer camp.

    --
    Everything is better with chainsaws.
  47. My First Experiences by MightyMartian · · Score: 1

    First experience with programming was my uncle teaching me a few commands in C64 BASIC. Where I really learned to program was on a Radio Shack MC-10 with 4k onboard and a 16k cartridge for a whopping 20k! Say what you will about the quality of the Radio Shack/Tandy computers, but they had some of the best manuals going, and I must have read my MC-10 BASIC manual from cover to cover a hundred times.

    Where I think I really crossed the line and became an actual programmer was when I was loaned a VIC-20 with a bunch of RAM expansion modules and I decided one day, for no real reason that I can remember, to develop my own BASIC interpreter written in Commodore BASIC. I never got it much more complex than being able to do user input, store variables and do some basic branching, but it taught me much of what I know about array handling, string tokenization and even some low level stuff like a pretty primitive stack and program counter.

    --
    The world's burning. Moped Jesus spotted on I50. Details at 11.
  48. Learning to code isn't an event by Anonymous Coward · · Score: 1

    This is like asking a novelist or journalist how they learned to read and write. Even the most basic parts like recognizing the letters and tokens take time. And the higher-order stuff is a skill developing all the time: choosing the scope of your story, knowing your audience, composing an overall written structure, and going back to edit for flow and accessibility. Everything I just described are elements of programming as well as writing natural language. The main additional task of programming is to eliminate groundless arguments and illogical rhetoric that might work to sway human readers but always fails to impress computers.

    1. Re:Learning to code isn't an event by intermodal · · Score: 2

      Learning to code may not be an event, but that first moment when you realize what you've just done with a few lines of code (or other data depending on language of course) definitely is.

      --
      In SOVIET RUSSIA... erm...NSA AMERICA, the Internet logs onto YOU!
  49. Commodore 128 by Anonymous Coward · · Score: 0

    I started to do some minor programming on the MicroBee computer, for later do some real programming on Commodore 128, after that followed Amiga that lead me to a number of different programming languages. And I was stuck, programming on calculators, PCs and what ever I could get my hand on.

  50. MacroQuest by Anonymous Coward · · Score: 0

    I learned to code by writing scripts for the infamous MacroQuest tool for EverQuest. Man, those were the days!

    -Phican, Povar Server

  51. It depends ... by jonathanjespersen · · Score: 2

    on the definition of "program". To preface, I'm not a programmer, but I can write basic code. I did Apple BASIC in elementary and middle school. Dabbled in Pascal, C, and VBA in college. I would plant my "learned how to program" flag in my last year of college, when my roommates and I downloaded Slackware floppy images over a modem, downloaded Merc 2.2 source code, learned to compile it, then rewrote 80% of the code.

  52. By being computer illiterate by Anonymous Coward · · Score: 0

    I failed my "computing workshop" class in highschool on the first month. Where I live, it was pretty common to have had at least some computer exposure by the time you were a teen. Only that I didn't have such experience until I was enrolled in a brand new private school. I was enrolled in this school only for my senior highschool year, so everyone else had a 2 years advantage over me in this particular class. The first month I failed miserably, with a grade of "0". I didn't even knew how to turn on the damn thing, and everyone else was starting to learn Dbase and Clipper to store music playlists. I became so obsessed with learning that I asked my mother's boss directly to give me one of the very old computers they were just about to throw to the garbage. It was an IBM 286, at the time when 486's were starting to pop up on marketing materials. I remember installing the thing in my living room (without an instruction manual, and thinking it was pretty much the same as hooking up the stereo system) and copying MS-DOS and Dbase into a 5 1/4 single density diskette. From there, I learned everything myself by writing the "help" command. With my newly gained MS-DOS literacy, I remember the first time I felt absolute awe when firing DBASE by myself and drawing a screen with one input field for "name". Seeing the program running and knowing I had the actual power to make the computer do whatever I wanted felt like the most mind blowing experience for me at the time. From there, I never looked back. In a matter of days I was already correcting my teacher, and never again I got a lesser than maximum grade in anything directly related to computers or programming.

  53. Applesoft Basic on Apple IIe by way2slo · · Score: 2

    A friend and I wrote a text based Baseball simulator on our own. And we did it without using "GOSUB" because we didn't know it existed.

    1. Re:Applesoft Basic on Apple IIe by Anonymous Coward · · Score: 0

      Did you also write Butterfield Tennis?

    2. Re:Applesoft Basic on Apple IIe by Anonymous Coward · · Score: 0

      I was horrified to learn what I'd missed as a kid when I happened to notice GOSUB years later. It would probably have helped if I'd been learning from a book written in a language I could understand, but English wasn't taught in Swedish schools until 4th form back then.

    3. Re:Applesoft Basic on Apple IIe by Anonymous Coward · · Score: 0

      In Applesoft Basic, hitting the return key will erase any text after the cursor. So if you edited something, you had to arrow to the end before hitting enter.

      That was 30 years ago and I still arrow to the end of the line before hitting enter.

  54. I learned on an LGP-30 by Anonymous Coward · · Score: 0

    You can look it up (apparently anons don't get links), Google images has some nice pictures.
    My high school had one in 1966 as a tax write-off. This was before ASCII; we typed on a Frieden Flex-o-writer.
    It had 16 (and a half) instructions, a 32-bit word -- the least significant bit was cleared when you stored, so 31 bits in memory.
    We first programmed in machine code and only later did we graduate to assembler.
    The extra half-instruction: the conditional jump would jump if the accumulator had the sign bit set _or_ the sign bit of the conditional jump instruction itself was set and the "transfer control" button was on.

  55. Father by Anonymous Coward · · Score: 0

    My father sat me on his knee when I was 3. Then, he typed BASIC into his TRS-80. This was back in the mid 80s. I grew up learning BASIC before I learned algebra in school. I was typing in "LET X = 3" before even understanding what it meant.

  56. Morrowind Modding by Anonymous Coward · · Score: 0

    GhanBuriGhan's Morrowind Scripting Bible

    I started modding Morrowind when I was 13 (around...2002ish). I had wanted to learn something that would allow me to make more advanced mods (instead of just adding static objects), so I decided to pick up scripting. It was tough going at first, but totally worth it. I continued modding for Oblivion, and got over 40000 downloads on the ones I made, which was quite the confidence boost for a high-school nerd.

    I played Morrowind on a single-core 1.0GHz (pretty sure), 256 MB RAM, and a 32MB gfx card. I ran it in the crappiest resolution and got about 20 fps, but I played the hell out of that game. Probably put over a thousand hours into it.

  57. Homebrew 8080 by Anonymous Coward · · Score: 0

    Homebrew 8080 with 1k ram, homebrew TV video with 256 bytes and a converted Selectric typwriter. Later, an Altair then IMSAI with a VDM and a real keyboard to Apple II rev 0 without the chroma blanking. Wirewrapping an 8K ram board for the IMSAI was the last of the homemade stuff, what a pain in the ass.

  58. Apple ][e by Anonymous Coward · · Score: 0

    i played this game called Alkabeth where you could get turned into a Lizard Man and have super abilities if you found a witch or something deep in the dungeon. I hacked it to allow me to be lizard man anytime i wanted.

  59. summer of 7-8th grade middle school. by bored · · Score: 1

    I convinced my mother to buy a Laser 128, which for those not familiar was a apple ][ clone priced more like a C64.

    Anyway, got it home and the only software it came with was a copy of Copy II+, a disk cloning product. It did come with a nice reference manual though.

    Money being tight and all, my supply of games/etc was very limited. So instead I started reading the manual, and trying to understand all basic keywords and technical jargon. By the time I was in HS, I was pretty proficient with that machine having learned enough BASIC and assembly to write my own editor/assembler, and a number of 1/2 hearted attempts at my own games.

    1. Re:summer of 7-8th grade middle school. by Anonymous Coward · · Score: 0

      Anyway, got it home and the only software it came with was a copy of Copy II+, a disk cloning product.

      Did it actually come bundled with the Laser 128? If so, that's hilarious! A copy of a computer bundled with copy software.

      We did some serious damage with Locksmith and Essential Data Duplicator back in the day.. till I read Pirate's Harbor and The Computist... then it got fun.

    2. Re:summer of 7-8th grade middle school. by bored · · Score: 1

      Did it actually come bundled with the Laser 128? If so, that's hilarious!

      At the time, I didn't find it strange, but later the idea that the first and only piece of software you needed for an Apple ][ was a disk clone program seemed amusing. The only thing missing was the stack of blank floppies.

      We did some serious damage with Locksmith and Essential Data Duplicator back in the day.. till I read Pirate's Harbor and The Computist... then it got fun.

      I was always a Copy II+ guy, never got into the other utilities. Probably because I knew how to create new nibble copy profiles for copy II+ and it was usually easier to read the track, look at it and create a new profile than find a preexisting profile some else created. Mostly because, I didn't have a modem for the first few years, eventually saving up my pennies for a 2400 bps. I also cracked a couple games myself. Mostly using a little undocumented "bug" I discovered on the laser that allowed one to press ctrl-enter-reset and drop to the monitor. No need for the fancy debug boards other people put in their apple ][s. I'm sure other people knew about it too, I just never found anyone else talking about it.

    3. Re:summer of 7-8th grade middle school. by tonysg · · Score: 1

      Oh, my old trusty Laser 128! After I took a course in BASIC programming with some IBM 8086 computers at school I was hooked. I was in 8th grade. That Christmas my parents bought me a Laser 128 and for the first time I saw how different computers could be. Back then I had no idea of the many types of computers there were. Trying to do some stuff with BASIC on that computer got a bit boring. In the manual there was some information about something called Assembly. I saw it was more difficult, but the end result was faster and more powerful. I took another computer class, but this time in High School. I got to work with Pascal. Because of these courses (and Star Wars + Star Trek) and my trusty old Laser 128 (which finally died last year) I ended up a Computer Engineer.

  60. Apple ][ AppleBASIC by pink_unicorn_slayer · · Score: 1

    Traded with a neighbor, lawn mowing for programming lessons and computer time.

  61. Right vs Wrong by ImdatS · · Score: 1

    First learned it the wrong way - VIC 20 / C64 - Basic (with the C64 'programming manual')

    Then learned the right way - PDP11/23 at the high school where I started programming first in Pascal and later in C... - in fact, I didn't really study it - It was not mandatory teaching but the school had a PDP11/23 clone and they offered "voluntary" courses for pupil. I couldn't join so I complained so loudly until they gave me an account on that machine "just to shut him up" - and I started learning programming "the right way"... Self-taught.

    1. Re:Right vs Wrong by Anonymous Coward · · Score: 0

      The real right way: took a class in high-school about computers. We wrote programs in Fortran and Basic but that was secondary, the majority of class time covered computer history and how they work: CPU, core memory, gates, machine language. A good understanding of how computers work is essential to becoming a good programmer. Same later on at uni, it was nice to learn C and Pascal, but to me the most valuable courses were Operating Systems, Compilers, DB Management, Real-Time programming. They made me aware of how programs interact with the computer and made it much easier to model the code efficiently and track down bugs later on in my career.

  62. Closed devices by tepples · · Score: 1

    I first learned to program in BASIC on an Apple II.

    I just wonder how kids are going to have the opportunity to learn to code by the time iPads and other closed devices have displaced general-purpose home computers for a large chunk of the population.

    1. Re:Closed devices by Anonymous Coward · · Score: 0

      Will there not be Javascript implementations of BASIC with comparable features to an Apple II?

    2. Re:Closed devices by scuzzlebutt · · Score: 1

      I predict a backlash against closed devices in the future. Things like this are cyclical and when the pendulum swings hard one way, it swings back just as hard in the opposite direction...

      --
      In C++, your friends can see your privates.
    3. Re:Closed devices by NewWorldDan · · Score: 1

      Kids have a thousand times more options for learning to program these days. And iPads aren't displacing general-purpose home computers. Not even close. Tablets are mostly for watching video, facebook, and games. It's quite handy to have the Wikipedia in your living room. Serious work is still done on a proper computer. My kid doesn't do writing assignments on her Nexus 7. She types them up in Word. In any event, if kids want to program, there's no shortage of options and free compilers. There are free versions of Visual Studio, there's Javascript, Java, Ruby, Python, Perl, etc. All free.

      There are learning resources available today that I couldn't even imagine when I was 8 (in 1984). I learned by typing in a program listing (Applesoft Basic) and then experimenting to see what changing different statements did. In some cases, I just guessed as to what other statements might even exist. When I was 13, I was able to get enrolled in an actual programming class at my local community college. Up unti that point, I had no books, no instruction, no place to ask questions, but I was programming every day.

    4. Re:Closed devices by tepples · · Score: 1

      Serious work is still done on a proper computer.

      A business can afford to buy computers for its employees. That doesn't mean household members have to have computers because I'm told that most people don't need any capability beyond "video, facebook, and games."

      My kid doesn't do writing assignments on her Nexus 7. She types them up in Word.

      In your household. In another, someone might do writing assignment in a word processor on a tablet with a Bluetooth keyboard because adding a Bluetooth keyboard to an existing tablet is cheaper than adding a new PC to your network. See betterunixthanunix's comment.

      There are free versions of Visual Studio, there's Javascript, Java, Ruby, Python, Perl, etc. All free.

      And all of which require a computer, with the arguable exception of "Python for iOS".

    5. Re:Closed devices by Anonymous Coward · · Score: 0

      I first learned to program in BASIC on an Apple II.

      I just wonder how kids are going to have the opportunity to learn to code by the time iPads and other closed devices have displaced general-purpose home computers for a large chunk of the population.

      WHAT?? You can put a number of different interpreters on an iPad with a few taps. Why don't kids do that? Because there are thousands of f**king games they'd rather play. THATS why kids aren't learning about computing, because they are dicking with flash games, F2P, etc. Your "closed" devices are TOO open to be auto-educational.

      What you would want is a device that does nothing but run an interpreter, and makes even loading prewritten programs a learning experience.
      And to keep kids from reflashing the interpreter with a better platform for launching prewritten games, you probably want it locked down.

  63. HyperCard, around 1988, at the age of 6 by Anonymous Coward · · Score: 1

    I barely remember. I didn't speak english back then and many things didn't make sense. But gradually I learned english and HyperTalk, HyperCards programming language. The concept was simple enough that even with many gaps in my knowledge, I could build something. My first usable program I completely built on my own was a game, "Memory". The first version took like 20min to shuffle the cards. Over a couple of iterations I got it down to something like 5s and was really proud of that. I even implemented computer enemies which simulated "forgetting" cards, or jumbling up where they saw it.
    All in all, HyperCard was a lot of fun.

    1. Re:HyperCard, around 1988, at the age of 6 by Myopic · · Score: 1

      Mmm hmm. Me too. It was 5th grade for me.

  64. 3-2-1 Contact Magazine by Mystakaphoros · · Score: 1

    3-2-1 Contact Magazine had some little BASICA games and the like in back that you could type up and run... still have a soft spot in my heart the one where you were setting up a sea turtle preserve. After that, I was on to taking a hex editor to Rogue to try to change all monster damage to 0d0. Still didn't beat the damned game.

  65. Dad's old Atari by GameboyRMH · · Score: 1

    When the disk drive broke I started messing around with BASIC.

    --
    "When information is power, privacy is freedom" - Jah-Wren Ryel
  66. UCSD 1972 by MpVpRb · · Score: 1

    on a Burroughs B6700 mainframe, with punch cards, in Algol

    We also had a minicomputer. To boot it, you entered the boot code in binary, with toggle switches. After booting, it loaded the OS from paper tape

    1. Re:UCSD 1972 by uCallHimDrJ0NES · · Score: 1

      Good old Burroughs. My dad worked for Burroughs. I was 8 years old or so, 1977. My first was a B-20 series. I think it was a B-22. There were mainframes in the room with me, and punch cards, but I was never allowed to "play" with them. I had a BASIC book too.

      --
      Cloudiot: A person who does not see offsite storage as a way to lose control over access to his or her own data.
  67. Toggle switches + hex keypad by kimanaw · · Score: 1
    on an ELFII (assembled myself) with the trusty RCA 1802 assembly manual at my elbow.

    BASIC ? Compilers ? pffft, whatta bunch of pussies...

    --
    007: "Who are you?"
    Pussy: "My name is Pussy Galore."
    007: "I must be dreaming..."
    1. Re:Toggle switches + hex keypad by Anonymous Coward · · Score: 0

      IMSAI 8080 kit in 1977-78.
      http://en.wikipedia.org/wiki/IMSAI_8080
      Built it at school with a few other people.

      It worked we could do register to register instructions and rom to register loads but not memory ops.
      We had no memory.

      The school only bought the memory in the next year after we graduated

  68. Graphing calculator by internerdj · · Score: 1

    I was extremely interested in being a Chemist like my father until in 9th grade; we were given our calculators for math and science courses. A couple of kids with older friends shared some very simple games with everyone. Everyone else thought it was cool that they could play games in school. I did to for about 5 minutes until I found I could look at the game as a set of weird psuedotext lines. The cool part came when I changed the numbers then the game changed. At that moment, I went from Chemist to Programmer.

  69. Basic on the ZX-81 by aaaaaaargh! · · Score: 1

    When you accidentally hit the table the 16KB memory extension it used to erase the program before you could save it to tape.

    After that, Basic and assembler on Commodore Plus 4, then Amiga, Macintosh Plus, and Pascal, CommonLisp, and Prolog on various university machines - Sun workstations and Next cubes, if I recall correctly. I've never programmed professionally, though, and am currently being paid for doing logic by hand on paper as opposed to using a theorem prover. :-)

  70. Underway to Wake Island in 1992... by Assmasher · · Score: 2

    I had previously dabbled in logo, basic, Applesoft basic, et cetera.

    Heard we were being deployed to Wake Island for a downed aircraft recovery (interesting term when the aircraft is in 17,000+ feet of water...)

    So, I bought a little book titled "Learn C in 3 days" - http://ecx.images-amazon.com/images/I/61OPqyHTH%2BL.jpg
    Then I bought a copy of Turbo C++.

    Installed it on the log room computer when the Chiefs weren't looking and coded away the long trip to Wake Island from Hawaii at 8-12 knots (and the way back.)

    I'd always been good with computers before, but after this I was totally hooked on coding.

    --
    Loading...
    1. Re:Underway to Wake Island in 1992... by Anonymous Coward · · Score: 0

      I hate cliffhangers! Have you recovered the aircraft or not?!

  71. Apple II by Bob+the+Super+Hamste · · Score: 1

    The good old Apple II (not a GS or C to C+) . My elementary school had an Apple II lab with like 25 machines and everyone learned how to type on the computer and play educational games like number munchers but the lucky ones in the gifted and talented program you got to do all sorts of stuff with them. I lucked out and got to program apple soft basic, logo, and even got exposed to the Lego logo environment. Then my family got an Apple II C+ when I was in 4th or 5th grade and I just ran with it reading all sorts of books and figuring out how to translate QBASIC and Quick Basic programs to run on it and eventually learned 6502 assembly (I still have the book for that somewhere in my collection).

    --
    Time to offend someone
  72. One week turnaround with punch cards by brausch · · Score: 5, Interesting

    My high school was part of a pilot project for rural schools in Minnesota in 196x. We got boxes of pre-punched, numbered (in columns 73-80), FORTRAN statements and would assemble programs from them. The teacher would send the student programs down to the Univ. of Minn. via bus and we'd get the printouts back for the next week's class. It got me hooked for life.

    --
    "Almost every wise saying has an opposite one, no less wise, to balance it." - George Santayana
    1. Re:One week turnaround with punch cards by Anonymous Coward · · Score: 0

      Same here. Rosemount, MN HS 1967-8.

    2. Re:One week turnaround with punch cards by BigFrango · · Score: 1

      For a while in college we had 1 day turnaround; 2 runs in a day if you were lucky. And I thought that was bad. You got me beat.

    3. Re:One week turnaround with punch cards by taniwha · · Score: 1

      I did something similar (in New Zealand in the early 70s) except we used perforated cards for a Fortran subset. Cards were taken to a local bank and run on the machine that processed/reconciled cheques after the night shift was done

    4. Re:One week turnaround with punch cards by Anonymous Coward · · Score: 0

      Your punched card story reminds me of my early experience. The first languages I taught myself were IBM 1401 Assembler and FORTRAN in 1961. I grew up in an IBM town so in junior high I had weekend access through my dad to an IBM customer education center. It has all sorts of punched card machines and a 1401 with a whopping 16K of core memory. In college I was fortunate enough to get summer jobs at IBM between semesters for three years. The first year I was in the "unit record" department running punched card machines and learning to wire the logic boards. The following 2 summers I worked in the computer center as an operator running 1401, 1410 and 7090 machines. In the third summer the night shift manager gave me a programming task. He had major problems measuring and reporting the computer center's machine utilization. The software for doing that was a badly designed, poorly coded, rats nest of a COBOL program. So I learned COBOL and rewrote the program from scratch. If my memory serves, the resulting program wasn't any better than the original mess, but at least I learned get another procedural language.

  73. Logo on an Apple II by lostatredrock · · Score: 2, Interesting

    In 3rd or 4th (1990ish) grade we had an amazing computer teacher, started out just drawing cool designs, then learned more, and ended up making a digital clock from scratch, meaning I had to create procedure to draw the numbers and a control program to trigger the process with time delays.

    1. Re:Logo on an Apple II by afidel · · Score: 1

      Ditto, though it was 5th grade talented and gifted program in 1990 running on Rainbow Computer IIc clones. I then went on to programming QBASIC on an 8088 based workstation with CGA graphics that my uncle handed down to me from his work (the color board had cost as much as a new car when purchased). I remember copying the example programs line by line from BYTE and other computer magazines.

      --
      There are 4 boxes to use in the defense of liberty: soap, ballot, jury, ammo. Use in that order. Starting now.
    2. Re:Logo on an Apple II by Tsiangkun · · Score: 1

      Me too. Then we got to move on to using basic of some kind. When we got the IIgs, arkanoid became a huge distraction from logo and basic.

    3. Re:Logo on an Apple II by aduey · · Score: 1

      Logo was really the basics. Around 3rd grade or so we were rocking Logo on Apple IIe computers in the computer lab. The computer lab instructors I had were mostly clueless about real programming and just handed out the assignments from the lesson plan they got somewhere. Most students spend the entire class (1 hour once or twice a week) doing the assignment, I took maybe 10 minutes, then spend the rest of the class making the project more complex (getting in to recursive sub routines & such). By the time I got to Junior High (aka Middle School now) we were doing far more complex logo on the Mac LCII's (if I remember right). I had fully animated scenes (boats rowing away from sharks as the sun set) and basic music scores (simple two tone JAWS stuff, with some munching at the end). From there we had a couple Pascal (Lightspeed Pascal as I remember) classes and the teacher was fabulous. The teacher was really smart, not a total computer geek but smart enough to 1) keep up with us geeks and 2) smart enough to let us loose on some projects that far exceeded the class curriculum. Those were really the launching points for me. After that there were college programming courses but I was already teaching myself programming languages and had a job as an application developer. So much of what I learned I taught myself, but I had great "teachers" along the way that weren't afraid to just set me free and give me the tools to teach myself (sometimes far beyond their levels of programming competency).

  74. Magazines and an MZ-80K by dw9298 · · Score: 1

    I learned through typing in BASIC programmes from magazines (like Computer and Video Games, Personal Computer World or Practical Computing) into a Sharp MZ-80K. It was a good way to learn how to find typing errors too.

    It also taught me the importance of frequent saves; I tripped over the power cable after 3 hours of typing and no backups. After typing everything in again (and saving every 15 mnutes), the game wasn't worth it (Defender written in BASIC? Not a good combination)

    Ahh, happy days. And the magazines I listed really show my age.

  75. UNIVAC_1108_110-baud_ASR33_ITTRAN/calctran/fortran by Anonymous Coward · · Score: 0

    Jr high - back when Illinois schools rocked.
    The computer was 60 miles away and we "hacked' the phone lock to get more time on the machine.

  76. Well... by Anonymous Coward · · Score: 0

    I first started programming on a TI-85, and later toyed around with perl and Delphi. Took a few HTML classes in highschool.

    When did I actually learn how to program? College.

  77. LOL ... by gstoddart · · Score: 2

    Logo at computer camp when I was 11, followed by basic on a TRS-80 color computer, then eventually basic on a 8088 machine, Pascal, PDP-11 assembly and C in university, and some interesting chances to do some bare-metal programming along the way.

    I still don't meet a lot of people who have done interrupt-level programming and accessing hardware directly via registers and writing your own interrupt handlers.

    Good times.

    --
    Lost at C:>. Found at C.
    1. Re:LOL ... by Anonymous Coward · · Score: 0

      I still don't meet a lot of people who have done interrupt-level programming and accessing hardware directly via registers and writing your own interrupt handlers.

      Sadly, that seems to be a lost art among most software development professionals. There is definitely a niche if you go the embedded software development route, though.

      I can't remember how many times I got to reboot our family's PCjr after making an error coding an interrupt service routine in assembly directly into DEBUG.COM :)

    2. Re:LOL ... by Anonymous Coward · · Score: 0

      PDP-11 vectored interrupts and memory mapped IO, the only way to do ISRs!

    3. Re:LOL ... by Anonymous Coward · · Score: 0

      Mod parent up.

      Well, I would say that wouldn't I. I worked for Dec for 20 years and designed some neat bits of hardware for the UniBus.

    4. Re:LOL ... by Anonymous Coward · · Score: 0

      There are still a few of us out there. I started out on a Wang 2200, and programmed bare metal on 8080 (including building my own computers).

      Nothing like opening the interrupt system on a bare metal machine for the first time! Ah...the memories.

  78. Opened QBasic by Murdoch5 · · Score: 2

    I remember this lol, I was at home on the computer and opened QBasic.exe. I remember looking at the window and being like WTF? So I went out to the library and got a book on QBasic and that was it! I moved from QBasic to ASM and HTML then to C.

    1. Re:Opened QBasic by Anonymous Coward · · Score: 0

      from QBasic to ASM and HTML ....

      Those two do not belong together!

    2. Re:Opened QBasic by Anonymous Coward · · Score: 0

      Ohh god, Gorillas.bas was my introduction to programming and "hacking" at the time.

      Saija.

  79. Ranger Rick by stdarg · · Score: 1

    I wonder if anybody else remembers some issues of Ranger Rick having BASIC program listings? My first program was typing in one of those, which ended up playing a tune from Bach on the computer speaker. I was really blown away by that.

    I made so many typos that it didn't work the first 3 or 4 times I entered it.

    1. Re:Ranger Rick by Mystakaphoros · · Score: 1

      I wonder if anybody else remembers some issues of Ranger Rick having BASIC program listings? My first program was typing in one of those, which ended up playing a tune from Bach on the computer speaker. I was really blown away by that.

      I made so many typos that it didn't work the first 3 or 4 times I entered it.

      Now that I think of it... the Sea Turtles program might have been in Ranger Rick as opposed to 3-2-1 Contact.

  80. Who says I did learn? by Anonymous Coward · · Score: 0

    My first programs were written in BASIC on Commodore PET and C-64 in 1981. Then a Model III TRS-80, 16K with Cassette, BASIC and later a little Assembly. Won a Junior High team programming contest in 1982 or 1983... Up to 48K and 2 Seagate 5 1/4 floppies, and Pascal in High School, all still on the Model III.

    Then I started using PCs, entered college, and I started using software instead of programming. I still fool around with VB in Excel and do the occasional this-or-that.... but I can't say that I 'code' or 'program' anymore to any significant extent.

  81. PDP/8 TSS8 ASR33 110baud dialup by martyb · · Score: 1

    Started in 1972 with 110 (?) baud dialup on an ASR-33 teletype from Junior High to the High School's DEC PDP-8 mini running TSS88. IIRC it had 8K 12-bit words of memory. Had to dial (yes, rotary dial) the phone number and put the handset into the Acoustical Coupler. Off line storage was to paper tape. Started with BASIC, then moved on to assembler and FOCAL. Then in High School they upgraded to a PDP-11 running RSTS/E. Wow -- was that thing FAST! <grin>

    Typed in many, many basic programs from DECUS, and whatever other sources we could find. There were about 4-5 of us who would hang around the "computer room" and grab whatever unused half-hour time slots we could.

    First computer I bought was an Ohio Scientific Challenger 4P. Later purchases included: Atari 800, Commodore 64, IBM Clone 286@10MHz.

    Besides "Compute "magazine, I also subscribed to "Run", "Byte", and later "PC Magazine". Typing and debugging and trying new things. That was key. An insatiable curiosity as to how things worked and how could I make it do what I wanted it to do.

    Ah, good times.

  82. Assembly on a Time Share System 36 by macbeth66 · · Score: 1

    It was 1972 and I was in the 8th grade. Our math teacher thought it would be fun as we flew through the course requirements.

    My first major project was in 1979 and I had to debug a stats suite written in Fortran. Translated that into BASIC for a Tektronic Graphing station and then again to BASICA for the PC.

    Does hard-wiring lab setups count? What language would that be?

    In grad school I used an old PDP8 to control the lab. ( Did anyone ever come across SKED? ) And by then, I was reading every computer book I could find.

  83. The worst way possible... by JDAustin · · Score: 1, Insightful

    ....by debugging Excel macros.

  84. Perl by cod3r_ · · Score: 1

    The best language to start with.

    1. Re:Perl by Anonymous Coward · · Score: 0

      Maybe compared to C or COBOL, but seriously... !

  85. Thanks to wonderful Vtech by Anonymous Coward · · Score: 0

    When I was 9, my mother got a Vtech laptop for me since I was always playing around with electronics stuff previously. (like taking apart a VCR and fixing it, some sort of wizard powers, who knows)

    And on that, it had BASIC. I began playing around with it.
    Year later made a simple database system that could be printed in some sort of encoding system I can't remember now, but I still have the print-outs of the code sitting around somewhere.
    Made a few other things, including a text adventure.

    It wasn't my first exposure to programming, though.
    My first exposure was spectrum a few years previous, and I can only just remember it then. Including playing Dizzy and Trap Door.
    Still not 100% sure which was my first game.

    A lot of my stuff is self-taught, using open source projects, guides and everything else in between.
    Lucky I got in to this, if I went the architecture route in my life, or electronics, or even art, I'd likely be super depressed.
    Why? Crohns disease pretty much wrecked by life. All of these things, along with being out with friends, exercising, parkour, etc. Then life is just "nope".
    This is the only escape I have now, and I guess digital art too. (and games, also gamesdev)

  86. Hypercard by emudoug42 · · Score: 1

    Hypercard and Hyperstudio! I played around making all sorts of silly games, slowly learned how to add in some scripting on my own, tinkering about. Had a course in highschool that went into more depth, and then a class in Java.

  87. Electronics class by Frontier+Owner · · Score: 1
    Z80 processor, machine code for a few weeks. Nothing complex, just adding numbers and displaying them on a 8 segment display.

    couple years later took a Pascal class then a C++ class.

    outside of those it was necessity. I'm doing the same calculation repeatedly, I'll pull together a bit of code to automate the routine.

    lately, my programming has been on PLCs

  88. I feel old. by AdamD1 · · Score: 1

    I first learned *about* programming when I was 10 (1977) by reading a small paperback book about the Basic language. I wrote on paper with pencil to learn some very rudimentary programming. I didn't learn on a real computer until 1979 or 1980 - at my junior high school - and that was originally using an Atari 400 or 800. We also learned on an IBM card reader connected to a university unix server using only a wide-carriage printer as the output, no screen at all. I also learned on a Tandy TRS-80 and an Apple IIe. The first language I learned: Basic, on an Atari computer. The 2nd: Turbo Pascal on an Apple IIe. I remember being taught some very preliminary machine language / assembly at that time as well but that was from fellow students. It never stuck with me.

    I didn't own a computer for most of the time I was most interested in programming one. When I was really eager to learn programming the most (say 1981 - 1984), my parents couldn't afford one and they felt it was a frivolous purchase. It wasn't until 1994 that I dove into programming seriously. That ended up being Perl and Oracle PL/SQL that I learned and used extensively at that time.

    --
    Because I can! [Brainrub.com]
  89. Second that by mrops · · Score: 2

    Grade 5, dad gets an Atari 800XL.

    I asked for games, he bought in few books that had code for games in BASIC, 1000s of lines had to be punched in and saved on cassette tapes.

    Soon enough I learned how to cheat with friends where I would get an unfair advantage during game play, the rest is history.

  90. Why is as important as how by meta-monkey · · Score: 4, Funny

    "The three great virtues of a programmer are laziness, impatience, and hubris." ~ Larry Wall

    Why you learned is as important as how.

    1987, Apple IIe, 4th grade. My brother comvinced my dad to buy one for the house 2 years before and after one of the first "we've got to computers in the classroom!" pushes there was one in every classroom too...collecting dust because the teachers didn't know how to use it.

    My brother had taught me "Hello World" in BASIC, and that combined with the Basic Apple BASIC book let me write terrible programs where the computer would ask you a name, and when you typed it in the computer would say '$name is a nerd!"

    I discovered I possessed at least the first of Larry's virtues in order to avoid boring social studies projects. We'd get week-long projects where you had to "make something" about the states, or the presidents or the biosphere, so kids would make flash cards or a mobile or whatever. I wrote a quiz program ("Name That State!") that would ask you, at random, from a set of hard coded questions (ripped from the book) about the states and then tell you if you got the answer right or wrong and tallied your score at the end. This was wizardry to the teachers and I got an A.

    Well they didn't really understand code reuse, and so when the next week I'd hand in "Name That President!" which was the exact same program with the questions swapped out, A again. That same code got reused for at least four years in different classes. "Name that type of cloud!" "Name that Biome!" "Name that Export of Honduras!" (Hint, it was probably 'bananas').

    You'd think at some point they would have caught on and told me to do something different. Maybe they did but didn't say anything. But I kept getting As so I kept turning in the same stupid project with a 10 minute change. Kind of explains Windows, too I guess.

    --
    We don't have a state-run media we have a media-run state.
    1. Re:Why is as important as how by meta-monkey · · Score: 2, Funny

      After submitting this, I realized that if in 2013 a kid wrote a program at school that asks for a student's name and then calls him a nerd, he'd probably be arrested for cyber-bullying and banned from using computers for 7 years.

      --
      We don't have a state-run media we have a media-run state.
    2. Re:Why is as important as how by ArsonSmith · · Score: 1

      But you didn't realize that your, "being clever and reusing code" was not the big deal. It was the data you entered that was getting you the lessons the teachers were attempting to push. Hell the code would be the easy part for a kid with the smallest iota of basic programing desire.

      --
      Paying taxes to buy civilization is like paying a hooker to buy love.
    3. Re:Why is as important as how by pscottdv · · Score: 1

      similar experience here. I wrote a terrible program that used character graphics to "simulate" a volcano erupting. Great thing about volcano science projects--they always win no matter how silly they are!

      --

      this signature has been removed due to a DMCA takedown notice

    4. Re:Why is as important as how by erickfis · · Score: 0

      sorry but I had to share this......

  91. HP-25. by Anonymous Coward · · Score: 0

    Actual talk in a Brazilian store:

    -- We have these models, the best is an HP-25, which is programmable... and this English one by Sinclair, which just has the four basic operations.
    -- You don't have a less expensive one?
    -- Well, there's another one, but it's from Japan.

    At that time -- 1974, probably -- being from Japan wasn't still a meaningful advantage as today.

    So, the HP-25 won. HP programming is actually great, because it's akin to assembly and, in HP's case, it's stack-based -- just like Forth.

    All in all, I surely can't complain.

  92. Access to college computers by djbckr · · Score: 1

    When I was in high school, I had access to a PDP-11, and when I went to college I worked on a VAX 11/780. The VAX was an amazing machine. It *never* crashed no matter what us college kids would throw at it. Of course, let us never forget that computers of today owe a nod to the VAX architecture.

  93. Soviet Union, 1984-1985 by kaur · · Score: 1

    Writing machine code on our school's Videoton 1010B mainframe.
    Designed in 1971-1972, it took nothing else - no assembler, nor any higher level language.
    The machine is so old that I cannot even get an image of it online.
    (Thus it also breaks rule #34.)
    http://en.wikipedia.org/wiki/Videoton_%28company%29
    The computer was decommissioned from the state-run radio station next door and donated to the school.

    I once forgot to place a boundary check on a hard disk block delete utility I wrote, thus wiping the entire 64 kB disk.
    Sweet childhood...

    Other notable computers we used a bit later - about 1985 and 1986 onwards -
    "Iskra", http://www.wang2200.org/iskra-226.html
    "Agat", http://en.wikipedia.org/wiki/Agat_computer
    Those interpreted BASIC, could do graphics and were really easy to work on, compared to the Videoton beast.

    Then we moved on to a class of MSX Yamaha computers. The bright guys who managed the computers later created Skype.

    However, the eerie feeling of knowing every single byte in your Videoton memory, following through the long printouts of hex code, and working with the heavy-duty 16x80 text terminals is still somewhere in me.

  94. Apple ][e : BASIC and assembly, self taught at 12 by advid.net · · Score: 1

    First with Apple ][e , self taught by books at 12yo:

    In the order:
    - Applesoft BASIC , spaghetti code
    - 6502 Assembly, no assembler, spaghetti code
    - 6502 Assembly with LISA assembler, still spaghetti code

    Then on PC, with school courses at 18:

    - Turbo Pascal: the revelation of structured programming

    Later: OO programming (by courses and books), and then many languages self taught.

    What I see is that I needed a good mentor to get rid of bad habits and silly programming techniques.
    Self taught with language reference books is not enought to do well.

  95. Self taught by Nyder · · Score: 1

    Back in the early 80's, I remember the scene clearly. Math class, there was a computer (TRS-80 Model III) in the back of it one day. Teacher had each of us during class type out:
    10 PRINT "OUR NAME";
    20 GOTO 10

    Needless to say, i was hooked. Started teaching myself basic, and started hexediting. Didn't know what assembly was (wish I did), but I loved looking at programs with a hex editor. Which lead me to being able to copy copy protected samples my typing teacher would get later when I was in high school. She'd give me a disk and say, "Can you make a copy of this? The school won't buy me anymore" and generally it was something stupid like the format wouldn't copy 1 part of the disk, which I could just use a hexedit program to put in the correct value. =)

    During early high school, my parents bought a C64, which I used to type in programs from Compute! and other sources. Wasn't till I was 20 before I got my own computer, and IBM PC, which I then taught myself C on.

    I haven't bothered to learn anything other then C, I don't see the point. Granted I am sort of teaching myself assembly on an apple II.

    --
    Be seeing you...
  96. PDP-11C by Giant+Electronic+Bra · · Score: 1

    Actually maybe even before that, it happened incrementally. Back in the mid-60's my Father and his business partner had a consulting firm they ran out of the basement. They built all sorts of custom hardware for mostly the Air Force. He taught me basic electronics, and then when he went to work for another larger company we'd go into work on Saturday and I'd type in FORTRAN programs onto punch cards for him (but I didn't know what they did exactly). Eventually, sometime circa 1970 he was working for a place where most of what he worked on was software, and I'd play around with the PDP-11C (which had a tty). You could run BASIC and interact, so by age 7 I could use the computer like a calculator.

    It wasn't until later that I really learned to seriously program. In high school we actually had A computer (TRS-80 Model 1 IIRC) which I finagled the librarian to let me play with, and I learned at least a bit. My uncle also gave us a typesetting machine that you could program in assembler using CP/M and reading the PACE assembler book I finally got the key concepts. The year after that I went to college and took FORTRAN. Hard to say in there where exactly i got to "can program" from "cannot program" but I'm sure in this day and age it would be MUCH easier and happen sooner.

    --
    "Malo periculosam, libertatem quam quietam servitutem." -- Jefferson
  97. Get Off My Lawn by Anonymous Coward · · Score: 0

    These young kids and their high level languages! I learned on a home-built (that includes etching the printed circuit board) Z-80 system with 2k of memory and a simple monitor EPROM. Assembly language, hand-coded to produce object code loaded by a keypad, was the only option. Yes, I could blink lights, but that's about all.

  98. ZX Spectrum Basic by macson_g · · Score: 1

    ZX Spectrum Basic. I was 6 at that time.
    First I learned how to create cool looking patterns using series of PRINTs and graphical symbols.
    Then I learned how to use DRAW, PLOT and CIRCLE to create pictures.
    Then one of my parents showed my how to use FOR loop to draw a sinusoid.
    Learning BASIC on Spectrum was quite easy even without any manual. Due to a fancy input system all the keywords and functions were printed on the keyboard. I learned what they do by trial and error.

    1. Re:ZX Spectrum Basic by Pulzar · · Score: 1

      Same here. I was 8 when I got it... I used FOR loops to write my name over and over in different colours. A friend of mine told me about RAND USR, and POKE... that was a fun time-waster.

      Then, my mom got me a "write your own text adventure on ZX Spectrum" book, and I was off to the races...

      --
      Never underestimate the bandwidth of a 747 filled with CD-ROMs.
    2. Re:ZX Spectrum Basic by Anonymous Coward · · Score: 1

      I had a similar experience, albeit with the aid of the manual and a tape of BASIC demo games that came with the machine.

      The first one on the tape was a fairly basic arkanoid-style game, using a paddle to bounce a ball to break bricks. This was my eureka moment: Accidentally pressing break, and being thrown into the program code, most of it in relatively-readable English.

      When someone beside me explained to me that this was what was telling the computer to do all the things it was doing, I was entranced, it had never occured to me that it could be anywhere as simple as basically saying 'hey computer, do this', that you could basically talk to the computer, and as long as you said the right words, it would just follow your instruction to the letter. I don't know that I even fully 'got' that at the time, but I got it enough to read the Spectrum +2 BASIC manual end-to-end. (Incidentally, Steven Vickers, the author of the Spectrum BASIC manual deserves credit for writing what I still believe today to be one of the easiest to understand books on a programming language, and programming in general. I cannot overestimate the impact that one book had on my life.)

      I stuck with the Spectrum till the early 90's, and progressed to the Amiga, dabbled with AmigaBASIC and AMOS. On to the PC, and I tried Visual Basic, then ASP, and finally found PHP. Every year for the last decade-and-a-half has been the year I finally sit down and get to grips with one of the c | c++ | c# languages, maybe next year.

    3. Re:ZX Spectrum Basic by macson_g · · Score: 1

      Cool :)
      Some time in my early teens BAISC was not enough for me any more, so I thought myself Z80 Assembler (from some book, this was before interwebs, kids!). The book had a table of CPU commands and opcodes on the back.
      I wrote my Assembler routines on a piece of paper, "compiled" them manually using the table, ant typed them in with POKE's. I had an electric schematics of the computer; I knew which wire goes 0 or 1 when instruction is executed. Things were simpler back then :)

  99. BASIC on C64 vs PrimeOS6 by deodiaus2 · · Score: 1

    I learned on a C64. I wrote a program in BASIC. Then I ported it to a PrimeOS6 at my school. substr(A, B, C) did not behave identically. on one, SUBSTR(x,a,b) Part of the character string x that starts at the ath character and is b characters long. On the other SUBSTR(x,a,b) Part of the character string x that starts at the ath character and stops before the b-th char. I hated programming for the next 3 years and didn't touch a computer until I needed a job!!

  100. Apple II basic by Dwedit · · Score: 1

    It was Apple II basic. Then QBASIC, then Visual Basic, then ZZT, then Kilk & Play, then Games Factory, then C++ and assembly, then C#.

  101. Build A Computer by snookerdoodle · · Score: 2

    I've taken classes in Basic, C++, Java, other languages. I've read "exceptional" and "effective" and other books to improve my craft over the years.

    But building from the ground up in an introduction to digital logic class way back in 1978 still had the most profound impact on my ability to know what's happening in a computer and on my ability to understand what's really going on "under the hood", even 35 years later.

    It literally started with diodes and transistors. Building 'and' and 'or' and 'nor' (and...) gates. Hooking them together to make a flip flop. Then taking pre-built gates and making a counter. On to a simple cpu (that only knew a couple of 'instructions', IIRC). When I built an 8080 based computer, I actually knew how it worked. There has always been something comforting knowing that, deep down inside even the most powerful processors, it's still just a bunch (ok, a WHOLE LOT) of gates.

    Unless this whole quantum thing gets properly defined and implemented and catches on. Maybe I'll get to start over.

    1. Re:Build A Computer by SoulNibbler · · Score: 1

      I have to agree! I really want to teach a digital logic course to high-school students. My professor was crazy (in a bad way) but it was the most influential course for me too.

  102. Typing in games by clickclickdrone · · Score: 1

    Strictly speaking, I started with a TI 50 step programmable calculator in the late 70's but I would say for me, it really started when I got an Atari 400 and used to type in the game listings from Computer & Video Games mag in the UK. When the game wouldn't work, I'd compare my version with the magazine and after a while got to recognise what commands did what. Then I got a book on Basic and learned it properly. I also picked up 6502 assembler. Then I moved on to Lattice C & 68k assembler on the Atari ST. Having fought off doing IT as a job for 10+ years I eventually went for it and moved on to VB4 then VB6, did my MSCD courses and exams, added maybe 5 or 6 operating systems and at last count about 20 more languages of varying levels of obscurity. Along the way, I've read an awful lot of books, studied other people's code and so on. Apart from the 1 year spent on MCSD/VB6 it was all self taught but I think the amount of experience picked up along the way has meant I'm pretty decent within the areas I work in. I basically write finanancial software - databases, billing systems etc. I *like* documenting, write structured heavily commented and pretty much bullet proof code. Generally, if there's a bug, it's down to vague design or me misunderatanding the design rather than code errors per-se.

    --
    I want a list of atrocities done in your name - Recoil
  103. Watching, and trial and error by Gimric · · Score: 1

    My Mother would drop me off at Kmart in the electronics section every Saturday for a couple of hours while she went shopping. They had a C64 and people would write stupid little programs that printed text on the screen. I watched them, figured out how to stop the running code and get into the editor and by trial and error figured out how to change the text, make it repeat in different ways and add colour.

    Nagged my parents into buying me an Amstrad CPC464 and got a book on how to write text adventure games on the Amstrad CPC464. The first real program I remember writing was a random character generator for Dungeons and Dragons. Never did get it to generate an all 18's character despite running it hundreds of times! :)

  104. GW-BASIC by intermodal · · Score: 1

    GW-BASIC and an old Wang Labs BASIC manual my dad found lying around. That, combined with some friends of similar interests. This was in middle school, back in about 1992-3.

    --
    In SOVIET RUSSIA... erm...NSA AMERICA, the Internet logs onto YOU!
  105. There's no BM like an IBM by redneckmother · · Score: 1

    Dylakor DYL-260 on an IBM System 360/40 running DOS, then IBM Assembly Language on 370's & 4300's running VSE/AF.

  106. Lightning strike by scsirob · · Score: 1

    Video Genie EG3003 here. TRS-80 clone. I was 19 or so and into electronics. Friend of mine had a lightning strike nearby, fried his system. We tried for weeks to repair the machine until he gave up and bought another one. I was stuck with the smoldering remains.

    So I cut each and every TTL chip from the two boards and replaced them one by one. That got it back to life! So once I has a computer, now what.
    Well, my friend was into Z80 assembly programming and after studying his code I made small changes, which became bigger and bigger. Eventually I built my own CP/M system from scratch, wrote my own BIOS routines and built a SASI harddisk interface for it. That experience launched my career as support engineer for a tape drive company, where I taught myself to program in C. I wrote tape drive diagnostics which are used even today.

    Later I got into embedded stuff on Z80 and Atmel microcontrollers, which I still program today.
    That one lightning strike started it all. Thanks Sipke, for allowing me to futz with your system.

    --
    To Terminate, or not to Terminate, that's the question - SCSIROB
  107. 99er Magazine by Kismet · · Score: 1

    I punched in TI BASIC code from the magazine pages and saved my programs on a cassette tape. I also learned some TI LOGO. That was in 1983. In '84, I remember programming in Atari BASIC in a school club.

  108. IBM1401 by schemingmonk · · Score: 1

    In machine language loaded from punch cards. At least once I entered the code using the toggle switches one byte at a time.

  109. TRS-80, basic, then ML by DudeTheMath · · Score: 1

    In '77, my dad got a TRS-80 (model 1, level 2, cassette drive). My brothers and I (well, mostly me) learned basic (Dad would buy us a game at RS if we demonstrated a working program). When my programs started to look more peek & poke than print, he got a debugger so I could edit the machine code directly in hex.

    --
    You save only 59 seconds over 8 miles by going 75 instead of 65. Do you really have to pass that guy? Do the Math!
  110. LOGO on the Apple II by eric2hill · · Score: 1
    --
    LOAD "SIG",8,1
    LOADING...
    READY.
    RUN
  111. VIC20 and Apple ][ by n2505d · · Score: 1

    Started on a VIC20 with Compute! magazine. Got a job a chicken joint when I just turned 16 and the owner had an Apple ][ in the back; he was paying Robotwar and looking for an opponent. Learn to program the Robotwar bots. That led me to take a course in programming at high school on Apple ][e. Still program today: iPhone apps and Arduino.

  112. Several things by wbr1 · · Score: 1
    I am not really a programmer, but I can do some programming. I got started with various forms of BASIC on the following:
    • Apple ][ (+ C E and GS) -- School
    • TRS-80 Model 1 Level 2 (16k IIRC) -- Mine
    • Mattel Aquarius -- Mine
    • Various Commodores (VIC-20, C64 and C28) -- Friends
    • TI-99/4a -- Friends

    I learend some assembly on the Apples but not much. I was always more of a hardware hacker. I could rewire, jury rig, and repair like no ones business. I could get a cranky tape drive or out of speed floppy back in line.

    In middle school we had a small lab of apple 2's, I had class right before lunch. Being largely a hick school, most people went to computer class for games or to slack off. Consequently the hardware was frequently abused. We had several machines that would not read commercially produced floppies, but would read ones they wrote. I did some testing and discovered that they would not read other computers discs or vice versa. My puny brain said the drive is working, it is not at fault, what could cause this.. I serripitously popped a case and saw the trim pots on the drive controller. Then one day I stayed through lunch. The teacher left, I created a small test file on a known good machine, popped the case of a bad one, and started adjusting the pot, fully clockwise then by quarter turns till I found the butter zone. I did not know about the internal timing marks in the drive. Right as I got the file to read, the teacher came back and saw me inside the computer. She flipped, thought I was destroying equipment. Once she calmed down, screaming for me to go to the principal, I explained that I fixed it. She was in disbeliefr, and was not sure it was one of the broken ones to start. So I offered to repeat my feat, which I did. Instead of suspension, I got a letter of thanks (with a reprimand for not getting permission--which I never would have received), and they then sent me around all the schools repairing Apple ]['s that would not read discs and were acting as paperweights. God knows they had to get Oregon Trail and Carmen San Diego back up for the hicks.

    After that I took a short hiatus. Then at the end of high school I got a 486 sx 25. I did not do much programming, but I learned dbase and quattro pro (and a bit later wolf 3d). I then went to community college in 1993, we were supposedly the first in the country (community college that is) to be on the internet. The first computers connected were donated NeXT workstations. 68040 @ 25mhz IIRC. I started learning unix, CSH, TCSH, and SH scripting, as well as helping to administer our first web server (on a NeXT cube), gopher server, and irc server.

    During the day I was working in the labs, helping studnts, at night I was playing with early versions of slackware or hosting Doom LAN parties in the lab, until the governor mandated no games on state PC's except for learning purposes.

    My first attempt at web design for my own personal site still resides in the wayback machine. It is so ugly I am not going to link to it.

    The rest is history.

    --
    Silence is a state of mime.
  113. Nibble for the Apple II by Hoi+Polloi · · Score: 1

    We had an Apple II (then IIe) and my dad subscribed to Nibble magazine. This was also the glory days of Byte magazine and Beagle Bros. Every month I'd take the magazine and type in the programs in it. Then I'd spend hours debugging my code for typos. In the process I learned about program flow, subroutines, memory location calls, etc. It was better than any programming class I've had.

    --
    It is by the juice of the coffee bean that thoughts acquire speed, the teeth acquire stains. The stains become a warning
    1. Re:Nibble for the Apple II by Hoi+Polloi · · Score: 2
      --
      It is by the juice of the coffee bean that thoughts acquire speed, the teeth acquire stains. The stains become a warning
    2. Re:Nibble for the Apple II by YaddaMinski · · Score: 1

      I learned much from Byte Magazine. R.I.P.

  114. AppleBasic on an Apple II by XxtraLarGe · · Score: 1

    Can't remember if it was an Apple c/g/gs, but it was one of the earlier models. I had been playing Zork, Wizardry & The Bards Tale, and thought it would be fun to write my own games. They were all basically of the endless quest variety, with letters in front of the options. Nothing too difficult, just basic GOTO type stuff. If only I had the knowledge I have now back then, or the motivation I had back then now...

    --
    Taking guns away from the 99% gives the 1% 100% of the power.
  115. HP9825 Manual by seven+of+five · · Score: 1

    In the 70s, my dad brought home the manual for the 9825 desktop computer, and it had nifty BASIC tutorials. My school didn't have any computers, so I wrote programs on paper for fun.

  116. Byte and National Computer Camps by Sebastopol · · Score: 1

    I started programming Commodore PETs in 1982, in 5th grade. My teachers had ordered a box full of cassette games and I asked me to evaluate all of them and write a paragraph explaining each game. I wanted to know how the games worked so I started reading the BASIC source code. BASIC is so readable that I was writing my own games in about a month. In 6th grade we had a C64 and I started taking a self directed class for BASIC. My parents bought me an Apple //e (a HUGE fight ensued over the cost). That summer I went to National Computer Camps in Connecticut (back then it was at Westminster Prep School) and learned to program 6502 assembly language.

    The rest is history. All of my learning was self-directed. There were no programming classes anywhere in my elementary school or the nearby highschool.

    I have fond memories of the sound that a Commodore PET makes when you turn it on... *chink chink chink... bzzzzzzt ... POP*

    --
    https://www.accountkiller.com/removal-requested
    1. Re:Byte and National Computer Camps by nozzo · · Score: 1

      oh love that story man. This is how it all began back in the day.

  117. Bell Labs by BigFrango · · Score: 2

    40 years ago when I was 15, I was an Explorer Scout (yeah, I was a bit of a nerd). Bell Labs (now Lucent) opened up their doors every week and taught teenagers how to program computers. I learned Basic, Fortran, some other obscure but similar languages, and even a bit of machine language. As I recall, the computers we used were PDP 11s with Teletype machines for consoles. We saved our work on paper tape. For those of you who have worked with punch cards and keypunch machines, punch cards are a step up from paper tape. I had no idea at the time that it would later become my career.

    1. Re:Bell Labs by Skapare · · Score: 2

      Yeah, punch cards had this feature whereby you could randomize the order of the lines.

      --
      now we need to go OSS in diesel cars
  118. DEC Linc-8 by mspohr · · Score: 1

    Hi, Geezer here...
    I learned to program on a DEC Linc-8 by using toggle switches to load the machine language program into "core" memory (12 bit machine) one step at a time.
    Real men use toggle switches.

    --
    I don't read your sig. Why are you reading mine?
    1. Re:DEC Linc-8 by Anonymous Coward · · Score: 0

      Awesome! That was a great machine! Nothing like 12 bits (and bank instructions) :-)

  119. Timex Sinclair 1000 by dethkultur · · Score: 1

    http://en.wikipedia.org/wiki/Timex_Sinclair_1000

    2k of RAM. Not a typo. The user's manual started with "10 PRINT 20 GOTO 10" and ended with accessing memory with PEEK and POKE. Spent many, many hours with that thing from 12-13.

  120. Start with curiosity, them experiment ... by perpenso · · Score: 2, Insightful

    Personally I don't think the language and hardware are that important. They are "implementation details", important, but perhaps more important for more advanced stages of learning to program. :-)

    I think learning to program starts with picking something you are curious about. Ex: How could I do [insert problem here] on a computer? Then figure out how to do it using the hardware and language at hand.

    For me one example was a blackjack card game. As I learned more, both in a formal CS program and in my own "independent studies", the details of the implementation changed. The hardware and language also changed as appropriate. From a single player game written in BASIC on an Apple II to a real time multiplayer game written in C on MS-DOS using an novell ipx network.

    Another example was more assembly language oriented. Matrix and vector multiplication functions for 3D graphics. 68K, i386, ppc, amd64, ... One of the interesting things here was the different approaches given a RISC vs a CISC CPU. This carried over to C/C++ as well, in general that there is sometimes no universal solution to a problem, that the correct solution depends on one of those "implementation details", the hardware. In short, don't just copy a solution from a book (or in more modern terms don't just cut-and-paste a solution from the web). Take a little time to see what the code you are looking at is doing and think about how appropriate this implementation is.

    1. Re:Start with curiosity, them experiment ... by JMJimmy · · Score: 2

      I couldn't agree more. Once you "get it" the language details are just that - details. When someone says they know ".NET" but don't know how to code Java I think to myself "this person really doesn't get programming". Sure the syntax is different, there are different quirks & ways of doing things but in the end it all boils down to learning the same sorts of details you learn all the time using an API or a new part of the language you've never used before.

    2. Re:Start with curiosity, them experiment ... by DarkOx · · Score: 2

      I have mixed feelings on this one. When it comes to the worlds of Java and .Net "knowing" has more to do with having a good concept of what is in the libraries and how the libraries are organized than anything else. There is something to that. Having a largish portion of that committed to memory both improves ones productivity and impacts ones thinking about how to solve a problem at the same time.

      Though like you I'd expect someone who is really good with one to be able to start working with the other almost immediately and become proficient very quickly.

      --
      Repeal the 17th Amendment TODAY! Also Please Read http://www.gnu.org/philosophy/right-to-read.html
    3. Re:Start with curiosity, them experiment ... by JMJimmy · · Score: 2

      As my professor put it: If you learn 10 methods every day you'll be dead before you learn everything that's in Java.

      I don't know how accurate that is but I agree with the sentiment: a typical programmer simply can't keep that much in memory and remember all the relevant details - the big picture is definitely an asset but that can be learned fairly quickly. Knowing where to start looking and drawing on past experience is definitely an asset, though I think that's part of why older programmers don't fare as well... the more they rely on past experience the less drive they have to learn new things and try new techniques/etc. Obviously this is a generalization and personal opinion not based in anything but conjecture.

    4. Re:Start with curiosity, them experiment ... by Synerg1y · · Score: 1

      I went from Java to .NET and I say I don't know how to code in Java to make people fuck off that think programmers know every language they've (the person) has ever come across.

      I do agree completely also, flow and logic are the why of programming, while the syntax is the how and understanding the why things work will always get you faster further.

    5. Re:Start with curiosity, them experiment ... by oggiejnr · · Score: 1

      In my opinion, the "quirks & different ways of doing things" are a key part of knowing a language and are essential for building large or complicated systems. For example, while I may be able to look in the documentation to find the library classes and methods to open a file and write to it, Java/C#/C++ have quite different idioms and constructs to ensure that handles are properly closed in the presence of exceptions. While it would be possible for me to very easily write something hacky that worked most of the time in Java, there is a good chance I will miss some quirks of the language and runtime which either cause things to break or could have been exploited to make the code smaller and more readable.

      I agree that a lot of the hard work goes into the learning the first language most of which can be reused for subsequent languages, but at the same time I would feel uncomfortable putting myself forwards as a Java programmer despite good C++ and C# knowledge and experience.

    6. Re:Start with curiosity, them experiment ... by JMJimmy · · Score: 1

      That's true but that's also what I do on a daily basis in any language - every day I learn a new quirk/detail of a new API/method/language I'm working with - no matter how much time I spend with a language there's always more to learn about it. I'd write a few hobby programs before I claimed to "know" a language just to get a feel for it but I wouldn't hesitate to jump right in on a project as a code monkey in a language I've just picked up. I wouldn't offer myself as a lead without experience though.

  121. K&R in the early-to-mid 1980s by DdJ · · Score: 1

    My first programming environment was Basic on the TRS-80, but I never got very good with that. I wrote some trivial programs, even a wee bit of hand-assmebled Z80 machine language poked directly into memory, but I couldn't write a program of any real size yet.

    Then I got a disk-based C compiler and a copy of the old 1st edition of "Kernighan and Ritchie", and taught myself elementary C over a three-day weekend. That's when it really took off.

    I got better by continuing to read programming articles in magazines.

    Around 1984 or so I wrote my first really architected programs, with features logically separated into functions, code re-use, separation of code and data, different builds for different deployment environments/feature sets, and an event-driven user interaction model (in some builds).

    (It was a set of programs to help me run 1st edition D&D games, set up so I could run it in different execution environments, eg. with/without graphics, with/without mouse. I named most of the different builds after different witch's familiars from Shakespeare. "Graymalkin" was of course the coolest version, with all the optional features turned on.)

  122. Same as Bill Gates and Paul Allen by talexb · · Score: 1

    I also learned on the same model of Teletype as those famous guys.

    It was Fall 1973 at MacDonald High School in the West Island, and we Grade 10s had access to a PSBGM [1] system over a 110 baud modem. Under watchful eye of Mr. Seddon, we programmed in BASIC and his own invention, MALASIM [2], with its own instruction set. You could also sign up for time after school, and the fights for the time slots were sometimes violent. (You know you're a geek when ..)

    The first major code I actually saw written on this platform was a program that my Dad wrote, to see how the distribution of blood types changed over generations. He's an actuary, so being able to simulate something was fascinating for him. Conway's Game of Life (as first seen in the pages of Scientific American) was also fascinating to him.

    Part of my early fascination in programming was reading through the entire BASIC manual, trying to understand all of the available syntax. Thus, when our assignment was to format our output, I used an IMAGE statement (PRINT USING ..), and was able to get very fine control for an invoicing assignment. Two of the four terms in Grade 11 I got perfect, but due to PSBGM's lame report card application, they'd only left two digits for marks, so it had to be recorded as a 99.

    Good times.

    1. Protestant School Board of Greater Montreal.
    2. MAchine LAnguage SIMulator. It may have been MALASYM, I don't remember.

  123. I learned to program by ... by Skapare · · Score: 3, Insightful

    ... NOT being distracted by Facebook and Twitter. Good thing those and the whole internet were not around back then.

    --
    now we need to go OSS in diesel cars
    1. Re:I learned to program by ... by demoncleaner925 · · Score: 1

      ... NOT being distracted by Facebook and Twitter. Good thing those and the whole internet were not around back then.

      Distractions have existed long before facebook, twitter and the internet, like videogames

    2. Re:I learned to program by ... by houghi · · Score: 4, Insightful

      Distraction will happen regardless of Internet. Before that there was tv, books, radio,
      Facebook and Twitter are not the reason of distraction. They are the result. Distraction happens if what you are doing has no value to you at that specific moment.
      I am sometimes distracted by looking aimlessly outside.

      --
      Don't fight for your country, if your country does not fight for you.
    3. Re:I learned to program by ... by Anonymous Coward · · Score: 0

      I was plenty distracted by IRC and I still learned to program.

    4. Re:I learned to program by ... by TeknoHog · · Score: 1

      Sort of agree, but.. the whole Internet is a nice thing to have when you're programming. Both as a resource and a reason for doing it at all (like-minded people).

      However, I'm glad I didn't grow up with Windows or any other modern GUI. I see it as an artificial barrier between using a computer and programming, which should not exist. It's like saying "OK, so you're a user. You're allowed to do this, this and this. But if you want to write your own code... well, it's not really for everyone. Are you sure you want to do it? You need to buy these special development tools and enter this special development mode."

      In contrast, my first computer booted into Basic, and programming was the natural way to interact with the computer. Of course, you had more refined tools if necessary, but you could basically ;) start programming right away without any fuss. A couple of decades later, the default way to interact with my Linux machines is a shell -- once again, a kind of programming interface without any barriers.

      --
      Escher was the first MC and Giger invented the HR department.
  124. Graal by RedHackTea · · Score: 1

    This was back when it was 100% free. I think it's called Graal Online Classic now. As stupid as it sounds, the in-game language is a great learning tool with instant results of "cool" stuff. Most languages don't give this kind of instant gratification as in-game languages do, and with a good distribution system in place, you can instantly share your "cool" levels with friends (I just used forums, p2p clients, and sometimes email). The language was (maybe still is?) very similar to C/C++. I had no problem transitioning to C++ with a book (either Complete Idiot's Guide or Dummies, can't remember). I got stuck on arrays for a bit (I was young and new), but everything else was a breeze, even classes, polymorphism, and memory allocation. Graal's language really just set the foundation for loops, math in a programming language, rudimentary data structures, and "thinking" as a programmer (e.g., thinking from top-down; from first step to last step. even with threads, you have to think this way within each thread's logic).

    --
    The G
  125. A friend's Apple II+ by mshannon78660 · · Score: 1

    Basic and Assembler there (modifying programs out of Byte magazine). Later got a C64 at home, and my friend's dad got us in to use the Harris 4 mini at his office. Loved writing JCL on that machine - I wrote a routine that gave a quick status of who was logged in to what terminals, and what they were running on the machine - heard that the company was still using that utility about 10 years later!

  126. EXEC. by Anonymous Coward · · Score: 0

    1964 Started with coding sheets for running enquiries in Find on ICT mainframe. Moved on to coding FILETAB screen queries on dumb terminals then used SQL and SOLARIS for database manipulation via VTs.
    Home computing Sinclairs and BBCs basic, assembler - now Linux and Android in my retirement.

  127. C=64 by Anonymous Coward · · Score: 0

    My grandparents had a C=64 at their house when i was 6 or so. My older brother and I would take the (Compute or some sort of C=) Magazine and copy the games out of the back of the magazine. It would take us a LONG time to finish sometimes. We would then play the game for a few minutes. After that we would start looking at the code and changing some of it after we realized things like 'this is the color of the wheels on the car'.

    Great times. I turned into a programmer myself. My brother on the other hand never fell in love with it.

  128. A book from the library, good HELP file by HalAtWork · · Score: 1

    What got me interested in even wanting to program in the first place though was the NES. Because of the tile-based nature of the graphics you could kind of pick the game apart with your eyes, and see how things like collision detection could work, or triggers, simple animations, etc.

    I borrowed a book from the library that had simple BASIC programs, and I learned by modifying parts of the program, which was already simple to understand since it could be typed out as one routine that ran from A to Z with simple GOTO statements and IF THEN logic. I figured out that in QBASIC, you could press F1 on any keyword and it would tell you about the syntax, and would give you an example routine. This was invaluable. Coupled with the Find function in QBASIC, I could type in something that had to do with the functionality I wanted, and the Help system would show me the commands that would let me accomplish this.

    After a few years of doing this, I started Visual Basic, then Delphi, which was great for my job, but I wanted to do more... I was able to download a tutorial by VLA off a BBS that taught me x86 Assembly, and when SDL came out, there were many great tutorials and I started learning that with C/C++.

  129. There was a series of kids books... by Valdier · · Score: 1

    I can't remember what they were called, but every quarter the schools would pass out these book ordering forms and inside them was a series of books that featured a kid named Orion.

    The books were kids adventure novels, but the unique part about the book was that every chapter or two the kid would come across a clue and for you to "learn" what the clue was, you had to type in a basic program and execute it on your computer. This would reveal whatever the answer was and they were generally pretty short 20 lines or so. But having done this for 10 or so books I really looked forward more to the little programs than I did the books after a while. They started me down the line of figuring out what these programs did in 2nd grade on an Apple IIe

    1. Re:There was a series of kids books... by Valdier · · Score: 1

      As an update here:

      http://en.wikipedia.org/wiki/Micro_Adventure

      This is a list of the entire series and I suggest them to anyone trying to get a kid interested in programming even if they are older.

  130. Sinclair Basic by nozzo · · Score: 1

    on the ZX81 in 1982, my first program?

    10 PRINT "CHRIS ";
    20 GOTO 10

    Yay for British computing!

  131. Cracking software on Apple ][ by mveloso · · Score: 1

    I learned to program by reverse engineering software protection schemes on Apple ][.

    1. Re:Cracking software on Apple ][ by bussdriver · · Score: 1

      Me too! To copy games! Then I realized you could make games so I wanted to know how they worked so I could make games! I got hooked and never made any games in the end.

      ][+ LOGO was my favorite, but it was not the 1st.

  132. Apple ][+ by CosaNostra+Pizza+Inc · · Score: 1

    10 years old learning Basic and Pascal on the family's Apple ][+ back in 1980. If I remember correctly, Pascal was available through a special memory expansion card that we added.

  133. The IBM 1620 at the Bronx HS of Science by TwobyTwo · · Score: 1

    By the late 1960s, the US panic over Russia's launch of Sputnik had resulted in a significant increase in investment in science education at all levels. In particular, an experimental program was started at the public Bronx High School of Science in New York City, with the goal of exploring whether high school age students could successfully program computers. (Computers often cost hundreds of thousands or millions of dollars, so this felt a bit like seeing whether students could fly a jetlineer). The school procured a number of small systems including several of the legendary Olivetti Programma 101s.

    The school's main machine, though, was an IBM 1620. It was a decimal (not binary) machine, and the high school's was had the minimum 20K digits (not bytes!) of memory. Originally, input and output was only via punch cards and the built in typewriter, but by 1968 or 1969 an IBM 1311 disk drive, which was itself the size of a small washing machine, added 2 Million digits of persistent storage, and a 1443 lineprinter was also added.

    Students were taught, in this order: machine language, then FORTRAN II, then assembler. That's not a typo. Since the machine was decimal, it wasn't too hard to type in raw machine code onto cards, which could be loaded directly into memory by a short self-booting loader program, which was included on the front of each card deck. There was an assember, but until the hard disk showed up the assembler required that an intermediate deck be punched and loaded each time an assembly was attempted. So, for moderate size programs, it was often easier to write machine code directly. This typically involved manually computing and setting the absolute target of each branch. Here's a picture of the cover of the textbook that students used to learn 1620 programming.

    This experiment was, in my opinion, wildly successful. I'm aware of at least 4 quite well known computer scientists who started their programming careers in the 1960s on that machine at Bronx Science. In general, many programmers from that era learned on 1620s. Like PDP-11s and Apple-2's later, 1620s were machines that an individual could get easy access to, and could learn to program at both a low level (machine or assember) and higher level (FORTRAN, LISP). Famously, the 1620 did not have a general purpose adder implemented in hardware: the add instructions would not produce the usual results until software loaded a table of partial sums into a fixed location in memory. The machine's nickname was thus CADET: Can't Add, Doesn't Even Try.

    1. Re:The IBM 1620 at the Bronx HS of Science by jtara · · Score: 1

      We had a 1620 at Cass Tech in Detroit, as well. We knew that they had one at Bronx HS of Science, and "some high school in Arizona",

      We used the same textbook and same learning sequence - machine code punched on cards first, and we had to key-in the boot sequence by hand on the console typewriter. I still remember at least the first two instructions, I think there are two more, though.

        320003200701320003200702 mumble mumble RELEASE START

  134. Paper Typewriter by smitsco · · Score: 1

    Started in 1981, summer course at a local college, programming BASIC on a typewriter interface using 11 x 17 fan fold paper. No idea what the computer was called. In the following summer, there was a single mono chrome video display. Still remember the noise of the dozen or so kids running the programs.

  135. Code Academy by Anonymous Coward · · Score: 0

    I play around with learning all kinda of stuff. I wouldn't say I've mastered anything, but I really like the material at codeacademy.com. It's a great place for beginners to start IMO.

  136. Olivetti Programma 101; IBM 1130 Fortran by DutchUncle · · Score: 1

    And yes, I *am* old, thanks for noticing.

  137. I started by g0bshiTe · · Score: 1

    Back in the early 90's. I remember using software for games things like map swappers or such or apps that made single player missions into multiplayer missions. I remember thinking "I could write something better". So I sat down and learned. I read anything and everything I could to learn asked those that knew what suggested reading and set about doing it.

    --
    I am Bennett Haselton! I am Bennett Haselton!
    1. Re:I started by g0bshiTe · · Score: 1

      My aha moment when learning was stumbling on Randall Hyde Pierces - Art of Assembly

      --
      I am Bennett Haselton! I am Bennett Haselton!
  138. 1962, IBM 1401 Assembly Language by CAOgdin · · Score: 1

    The world's first "Service Bureau" was reputedly C-E-I-R, in what is now Crystal City, VA. I went to work there in 1962 (or 63?) with no programming experience, but a real grasp of electronics and transistor circuitry. Fortunately, I worked with pioneers in the field of Linear Programming (Bill Orchard-Hays, Eli Hellerman), and with an incredible team of programmers (people like Ed Yourdon) who freely shared code around the offices.

    I'd ask someone how to, for example, write code to read data off a tape drive. They wrote a short subroutine in Assembly Language for the 1401. Then another person needed it, and she added robust code for backup and re-reading in an attempt to overcome errors on the media. Then another guy added another feature. I even, as a novice, added a couple of features, too.

    To my mind, it was that tight team that taught me how to program...and we were all learning from each other.

    That tape drive reading/writing subroutine was the beginning of my learning. We added more and more to that desk of punched cards until it was about 6" thick, and called it CELIB (C-E-I-R Library). It became a mainstay of programming at the company until the S/360 was announced. And, about 10 years later, while I was consulting in Canberra, Australia, I came across a government agency still using CELIB on their now-ancient 1401s!

    I used to take home the 6" thick printout of the kernel of the 7090 IBSYS operating system, so I could read it and understand how it accomplished its' marvels. I learned it before there were any classes, any courses, not even technical schools teaching the field. I learned from close people who were, quite literally, only a month or two ahead of me on the learning curve, and from acknowledged experts who wrote that O.S. What an exciting time that was to be a young geek :-)

  139. Timex Sinclair 1000 by Anonymous Coward · · Score: 0

    My first computer was a Timex Sinclair 1000 with a very useful manual on every command and 2 useful programs explaining each command. In fairly short order I was making up lots of my own programs. Later I was programming a VIC20, then and Amiga1000 (I figured out where to overwrite the addresses for the video and graphics and other useful places). Then PC's, and onto Electronics Engineering and then Computer Science. I wrote my own math libraries (programs to calculate sin/cos/tan/exponents/logs/roots and their arc functions in high precision before I took CS, and likewise didn't have a hard time with artificial intelligence as I had made my own backtracking algorithms years before. I was half was through CS when I compiled my first operating system (LINUX, YAY!) with my own modifications to it (I had to change the interrupt of a CD rom drive, and also patch in drivers for the sound card --that was kernel 1.2.13 back in 1994). Since then I've been writing stuff 'closer to the metal' drivers for a little USB display and also GPU drivers for my video card.

  140. Re:I can't but I have a 100k piece of paper saying by Anonymous Coward · · Score: 1

    Maybe you should have opted for the English degree instead.

    Just sayin'.

  141. (Old) School by Is0m0rph · · Score: 1

    TRS80 and Apple ]['s when I was in 6th, 7th grade. Went to college for electronics but I'm a sr level software engineer today.

  142. Octal Based Navy computer by Anonymous Coward · · Score: 0

    First app was around 1980 on a Navy communications computer (I think it was a ugc20). It was an octal computer. To manually program it, you had to enter each byte by pressing a series of 9 buttonLights; 8 for the byte, 1 to accept the byte. It took 10+ hours to write a simple program. We had to do that to be "combat ready". Normally, to program it, we used a 5 baud punch tape which took seconds to load a program. There was also a cassette tape if the paper tape broke. If neither was avail, you were rewarded w 10+ hours of punching lights.

    After I got out of the Navy, I advanced to MS C++ (4 if I remember). Then branching out to dBase 4, Access2, VB 4-6. Then C#. Now? I'm sick of MS and learning to program on Linux platform.

  143. Apple ][ by Tony · · Score: 1

    An old 16k Apple ][ in 1979, in a logging camp in Southeast Alaska. First integer BASIC, then Applesoft BASIC, then assembly via the Sweet16 mini-assembler. Then Pascal. Then I graduated and went to college and learned how to program.

    And I wrote my "One Time, at computer camp...." a long time ago.

    --
    Microsoft is to software what Budweiser is to beer.
  144. C++ when I was 12 by spiffmastercow · · Score: 1

    My family had moved to a rural area. With no friends nearby and lots of time over the summer in 5th grade, I read my dad's C++ books and started coding on my off-brand 486.

  145. AppleSoft BASIC and Apple Pascal by The+Infamous+Grimace · · Score: 1

    My first program was an HGR of a sword. Plotted the damn thing pixel by pixel because I didn't know about loops; I just sat down and started typing. I later wrote and ran a BBS - The Red Dragon Inn. Tried to write an online dungeon crawler called GrimaceGrounds, but I left the disks in the computer lab one day and lost months of work.

    Then I lost my virginity and my interest in computers went all to hell.

    --
    Ignorance and prejudice and fear
    Walk hand in hand
  146. RSTS/e, TOPS-20, PDP-11... by interval1066 · · Score: 1

    Cutting class in high school and spending my lunches in Butte Hall helping CSUC undergrads use the CSU CDC timesharing system and telling them where to submit their stupid fortran batch job homework probably did more for me than 90% of all the time I wasted in K-9. Wrote a RSTS/e Basic + program to archive files together so that a user account didn't have to waste 80% of its allocation on unused "blocks" (the disk geometry of that machine was described in "blocks") got me in to the same school. Also wrote a MACRO-11 assembler program to give me SU privs. That almost got me kicked out. Fortunately I didn't do anything with it except show it to the instructor, who in turn almost got me kicked out. Luckly the provost was a reasonable sort.

    --
    Python: 'And then suddenly you have a language which says "we're all stuck with whatever the whiniest coder wants".'
  147. Apple II by stanlyb · · Score: 1

    We had a local club, sponsored by the government, where there were many many, oh so many computers :D We waited every early morning, at the entrance, for a chance to laid hands on this wonderful machine. The rest is history.

  148. List of Baby Steps by Anonymous Coward · · Score: 0

    My very first "programming" gig was disguised as a game: It was a maze on a graphing paper with obstacles. We have to write down the direction and steps to get our "character" to move to the exit. Then we moved onto the computer. Same game, different platform.

    Second was LOGO on the computer with shapes that we were told to do, including a circle. After mastering that, we moved to BASIC.

  149. alot by Anonymous Coward · · Score: 1

    Like many others here, started on C64 with BASIC. Really WANTED to learn assembler, but never found any books or software on how to do it on C64. Was a bit frustrated by limitations and slowness in BASIC limiting my designs. Started programming text-based adventure games inspired by magazines with code printed out. A little sprite and sound, but not too advanced. Always doing it my way though, rarely copying code verbatim. Never finished any adventure games.

    Got to play on my dad's laptop in the early 90s. CGA got a bit boring for the games. Decided to learn more programming. My brother recommended Pascal, which I quickly learnt and started debugging. Simple drawing stuff.

    Since I never got to really learn assembler, I decided I wanted to try it out. Loved it. Made libraries of sound (synthesized samples through pc speaker, ad-lib and soundblaster, music (ad-lib), artificial life running live code modifyinf itself and "competing" against other threads in real time (interrupt-based, never got it to do anything complex other than failing on some obscure code that we'ren't trapped), a car-game with perfect vertical synched scrolling, messing with horisontal retrace to create horisontal lines on PC (yay, almost as good as Amiga huh?). Never finished any games and libraries are still rotting in a zip-file in backup.

    When my brother mentioned C++ was too difficult, I quickly learnt C++ and "OO". Loved it. Made libraries for: 3D CPU-based textures, AI (fuzzy neural network of my own design, gave up when I couldn't prove it could converge using college math - which I never truly could stand to learn), standard templates libraries and more. Never really got to USE my libraries for anything worthwhile.

    In college, programmed some areas on some MUDs in LPC (MudOS and DGD). Fun times, but really really alot of work, especially when I tried to make a new text-based MUD which should be like a story, not rooms-based. Proved too ambitious and too hard to "sell".

    All in all, I feel I've done it all. Even several years of software development in the corporate world, which finally killed off all inspiration to do anything with programming computers. Now I use Ruby, ActiveRecord, Postgres, or anything when I _need_ and _want_ to, not for fun anymore. It's been a great learning experience though, and I feel if I really had a great idea I wanted to pursue, I could complete it, if I wanted to.

    The problem is, nothing ever really completes. I easily get bored and move onto new things, and being a perfectionist, I'd rather ditch the project than spend eternity hacking on the same thing over and over. It's been interesting, but I now see the computer more as a tool than trying to shape the universe with it. Some day someone else will implement all my ideas anyways, and that's their headache.

  150. I had a boss... by Anonymous Coward · · Score: 0

    In 1984 I was working between stints in college at a lab that was instrumenting buildings to find out how people used energy. (The local electric utility was trying to figure out if it was cheaper to build new dams or buy people energy-efficient appliances.)

    My boss came into my office one day with an HP 100 'laptop' and told me that he wanted me to program it to get real-time readings from one of our data loggers. "But I don't know how to program, Bill." He didn't blink. "That's ok. You're smart. You're cheap. You'll learn." He put the computer on my desk, walked out, and shut the door behind him.

    I went to the library. Eventually I had the computer sending ASCII control signals and reading responses through the serial port in interpreted BASIC.

    1. Re:I had a boss... by HeckRuler · · Score: 1

      "But I don't know how to program, Bill." He didn't blink. "That's ok. You're smart. You're cheap. You'll learn." He put the computer on my desk, walked out, and shut the door behind him.

      My god... It's beautiful....

      First, that there was someone in power that could recognize talent. Second, that he understood that he could unleash that talent at a new problem and both of you would be better for it. Third, that he got out of the way. And finally, the most glorious part... that college-age technitians would have a door they could close.

      Yeah, contrast that with today where you get managers who think that learning new skills on the job is unethical, and you should go learn out when you're not on the clock. Even though the shop desperately needs unit testing.

  151. C64 by Anonymous Coward · · Score: 0

    Started to experiment with C64 basic somewhere in the 80's using mostly the 3 C64 "programming" books in the local library. I was the only (sad?) kid in our small town to borrow those books.

  152. Getting started by ShieldW0lf · · Score: 1

    I taught myself to program on a VIC-20 when I was 7 years old by reading the manual. First program was a recipe database for my mom that saved its data on cassette tapes. She found 3x5 index cards more practical, so I switched to writing games. Taught myself assembler by reading Byte and Compute! and the like. Taught myself LOGO while visiting family one weekend when I was 8. Learned Pascal in computer camp as a pre-teen.

    My parents had a system for hardware upgrades... if I got straight A's in school with no exceptions, they would pay for half of the next piece of hardware, as long as I worked my paper route and earned enough to pay for the other half myself. That's how I got my floppy drive, and man, did I ever appreciate that thing.

    --
    -1 Uncomfortable Truth
    1. Re:Getting started by bill_mcgonigle · · Score: 1

      Did you have the memory expansion? Our Recreation Dept. held a computer class and the instructor had a VIC-20. He had ordered a memory expansion module for BASIC, but it never arrived, so instead he used an assembly language cart (google tells me it was VICMON and brand new) and so he taught us that. This was a 4th-grade class, maybe 5 weeks. That summer my folks got me a C=64 to hook to the old TV and I was pretty impressed with the BASIC on it.

      It wasn't until I got to college that I learned that assembly is a difficult topic and only for higher-level courses. Thank goodness nobody told us nine to eleven-year-olds that.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    2. Re:Getting started by Arker · · Score: 1

      Indeed. I was doing z80 assembly at age 9 and I didnt think it was difficult, I thought it was fun. Later I went to school and they told me I had to learn high level languages like C, and I didnt find them nearly as fun, so I went into other things.

      --
      =-=-=-=-=-=-=-=-=-=-=-=-=-=-
      Friends don't let friends enable ecmascript.
  153. Shell Scripting by RandomUsername99 · · Score: 1

    Shell scripting, learned out of necessity, working as a sys admin. Now, years later, I am web developer working primarily with PHP and Perl.

  154. Summer school by wytten · · Score: 1

    I learned in summer school in the 1970's on the old MECC timeshare system in Minnesota.
    My kids are now a product of the same school district, and due to a changed world, summer school
    offerings are now limited to remedial courses, and so they have less opportunity to learn programming
    at school than I did.

  155. Logo by Anonymous Coward · · Score: 0

    Moving a silly turtle around lots of years ago to draw silly things. Next question?

  156. Re:TI-57 by hcs_$reboot · · Score: 1

    Oh, here I come in the thread for aged started-on-TI people. Started on a TI-57. That was fun. Amazing what we could do with 50 steps of machine-language like code...

    --
    Slashdot, fix the reply notifications... You won't get away with it...
  157. Define. by Anonymous Coward · · Score: 0

    I'm not sure what qualifies as "programming".

    When I was eleven I had a TI-83. They have crude programming capabilities. Trial and error are an inefficient way to learn vaguely phrased commands, but I did get the basic idea of an if-then flow and what a program/execution *is*. Does that qualify? How about the next school year, where I learned an extremely casual grasp of HTML?

    Pseudocode is used as a shorthand to sketch out structures; often the average Joe can deduce it. Even flowcharts are an algorithm. Does the question refer to learning a little/some/all of the syntax of a "programming" language?

  158. The Wonder Years by Anonymous Coward · · Score: 0

    When I was 8 I started programming in BASIC but I really didn't understand what the hell I was doing. For some strange reason, I thought the Atari BASIC command prompt I was using, was hooked to the FBI / CIA and if I entered correct BASIC commands and the prompt, and the prompt wrote "OK" I thought I was getting closer to hacking a bank or the government.

    Later, when I got more serious about programming (~age of 11), I used to print out the source code for the programs I found written in C/C++ and Amiga E. I would try to memorize the source file (like you memorize a song) without really understanding what the program was actually doing. It was really hard understanding things in the beginning, like hitting your head against a wall because you couldn't understand what all these codes meant. I would force myself to memorize the entire source file and practise writing it out from memory.

    Later, at the age of 14/15 things started to get easier and the concepts of programming started to crystalize in my head, and i was no longer a huge struggle to understand basic program flow.

  159. Assembly first! by WalksOnDirt · · Score: 1

    One of the counsellors at our high school got into programming, and he decided to teach us. This was an after school class for no credit, and our programs were to be run on the school district's IBM 1440 (mostly used for payroll, I think). The only language we could use was assembly, although on our one field trip to see the computer we were shown a huge stack of cards that we were told was a Fortran compiler that they never used. We punched our cards in the evening on the key punches used by the key punch class during the day, then he took the programs to the district center where they were run at night.

    I programmed Conway's game of life and got to run. I felt guilty about how much paper I used. I recall that someone else tried to compute square roots, but was misled by a popular article on how to do it. Starting off using assembly language really helped understand what was going on in there.

    --
    a,e,i,o,u and sometimes w and y (at be if of up cwm by)
  160. PDP-11 and Keypunch by phrostie · · Score: 1

    My dad made a bet with a few of the professors at the University.
    The professors said programming(part of the college of buisness at the time) should be restricted to upper graduate students.
    my dad said he could bring in a dozen elementry and jr high kids and have them coding in under an hour.

    he won.

  161. Paper clips and punch cards by Anonymous Coward · · Score: 0

    In 7th grade, I don't even know what machine it was, it looked like an adding machine (w/paper roll output), but you could program it with punched cards. It had a few registers of memory. Early programs were, e.g., printing a series of prime numbers. Later, in high school, got to program FORTRAN on punch cards one semester, then on terminals the next semester, at Rockwell International via an extension class. They sometimes let us play a dogfight game on a graphics terminal that had Asteroids-like graphics.

  162. ALGO-60 on a vacuum tube computer by Anonymous Coward · · Score: 0

    When I was a senior at a college in China (~1981), our university had a home built computer using vacuum tubes. The language we learned was ALGO-60 and program was loaded by flipping toggle switches and read from paper tape. I have no idea how much memory that thing had. All I remember was that our first and only project was to calculate first 100 prime numbers!

  163. Honeywell DDP-516 anyone? by cpslash · · Score: 1

    I learned to punch in machine instructions on a Honeywell DDP-516 on the console. Coding was difficult as I was performing FA&T on them at their Framingham plant and we had to skip certain instructions that didn't work yet. Also, often, certain bits were either stuck on or off, so you had to figure those in as well. I lament the old days, as programmers today can barely run a GUI/Desktop and are confused by concepts such as memory leaks.

  164. VIC-20 by PmanAce · · Score: 1

    I had a commodore VIC-20 and learned from the manual. Whatever I coded in basic was saved to CASSETTE tape hehe. Ahhh the memories.

    --
    Tired of my customary (Score:1)
  165. Re:TRS 80 Model I (+ Softside Magazine) by OakDragon · · Score: 1

    Good old machines. My first computer purchase was the TRS-80 Level 1 4K, a pretty limited machine for it's time even.

    Who remembers Softside Magazine?

  166. 6502 machine code on a Commodore 64 by optikos · · Score: 1

    After having read several textbooks on BASIC, 8080 machine code, and 6502 machine code before I had access to a computer in rural Indiana, I wrote hand-assembled 6502 machine code by hand and POKED it in as binary numbers into RAM via BASIC. (By that point, I was bored by writing programs in mere interpreted BASIC.) Within a year, I had built my own 8088 IBM PC clone and wrote my own 8088 assembler in Turbo Pascal.

  167. Four things by elistan · · Score: 1

    LEGO Logo
    A PC running DOS
    Turbo Pascal
    Chaos by James Gleick.

    The simple text and graphical outputs of Turbo Pascal and DOS, and the obvious outputs of LEGO bricks, allowed me to focus on syntax and algorithms, rather than window managers, objects and weird system APIs. By programming my own versions of cellular automatons, fractals, chaotic attractors and the like I learned about boundary conditions, debugging, algorithm analysis, recursion, etc... All self-taught by thinking "I want to do X" and looking for X in the index, rather than structured tutorials. I was playing with a fun toy, essentially.

  168. Commodore Pet 3032 by lkcl · · Score: 1

    yep - started with a commodore pet 3032 at school, aged i think it was 8. very unusual that a school actually had a computer. i watched someone type in a program:

    10 FOR I = 1 to 40
    20 PRINT TAB(I), I
    30 NEXT I
    40 GOTO 10

    and the number scrolled 123455bababababa in a diagonal line, and i went, "ah that's obvious".

    from there, i went on to work out how to read the keyboard (GET), we typed in a "would you like a cup of tea?" program (if N goto 10) which explained all about how you needed to make tea. from there i began to write games after someone else brought in an Apple IIe (as a personal computer!) and it had "castle vulfenstein" where you shot german soldiers all very politically correct.

    the games i wrote were much simpler (40x25 screen, go figure) and usually involved drawing and moving of dots as "bullets", which could be stopped by on-screen ASCII characters if you were lucky. we set up 3 sets of keys so that 3 of us could play (wasx and z for fire, tghb and okl,) and soon discovered something called "keyboard matrix scanning limitations" whereby one player could hold down keys that cause the other players' controls to be non-functional.

    by age 11 we'd moved to skelmersdale, where several neighbours had weird machines like superbrains, jupiter aces, tangerines and one guy even had a Z80 that he clocked by hand with LEDs on the outputs just to see what it did. he actually took notes when i explained what i'd been doing with keyboard input (interactive no less!) and things like screens.

    after wrecking my eyes borrowing a neighbour's ZX80 with a ZX81 ROM upgrade, and playing chess in 1k of RAM (unbelievable) and typing in 1-line BASIC programs that would scroll binary across the screen, my parents bought me a ZX Spectrum (and a thermal printer, wow!). and a 16k RAM pack eventually. after several months of typing in games and programs, and playing jet-pac and lemmings, i actually bought my first computer software: a BASIC compiler. it could do 26 variables (A to Z) as integers, no floats, and no strings. cost me 30 quid.

    by school aged 13 to 18 i'd moved to BBC Micros - the school had 6 of them, all connected via Econet. memorable times there included writing a program which sent notes to each computer on the network so that tunes with more than 3 notes could be played across all 6 computers; writing networked games and creating something similar to "Risk" which was stolen by one of the kids, hidden under carpet where feet destroyed the 5.25in floppies irretrievably. the lab also had one of those digital programming interfaces, with GPIO, ADCs and DACs, which i used on a BEEB to do strange experiments out-of-hours.

    so, naturally, when it came to a choice of university and a choice of degree, perhaps unsurprisingly i picked Theory of Computing at Imperial College. there we had a Gould Terminal system that could connect and route over 2,000 VT100 terminals to a configureable array of servers (micro-vaxes, SunOS 4.1.3 and so on). that started to get interesting, especially when someone did "cat /bin/csh | lpr" by mistake. if you're familiar with line printers, you'll now how bloody fast they are and how much of a racket they make. "cat /bin/csh | lpr" churns out 600 pages *real* fast.

    all good fun...

  169. LOGO / TI-Basic by Anonymous Coward · · Score: 0

    I was exposed to LOGO very early on, but only got more serious when introduced to TI-Basic on my TI-81 by a fellow student in high school that had a TI-82. Soon I switched to a TI-85 which was quite a bit faster, then toyed with Z80 asm throughout high school. None of this was structured and I shudder when I see my old code after going to college and learning object oriented languages and programming in C++ these days.

  170. Radio Shack by Anonymous Coward · · Score: 0

    Typed some code in directly from a manual each middle school lunch break in a demo Radio Shack TRS80 Model 1 at the local Radio Shack

  171. Commodore, mostly by Anonymous Coward · · Score: 0

    After taking an IQ test at age 10 in 1980, my school pulled me out class and sat me down in front of a Commodore PET with some BASIC programming books stacked nearby. I stayed after school nearly every day for the next two school years trying out all sorts of stuff. I got a VIC-20 around 1983, then a 64 and my 128 carried me into high school and Freshman year at college. By 1987, I was writing 65C02 Assembler directly in hex on paper. I also took COBOL, PASCAL and Advanced BASIC classes in high school, and took similar classes over the summers at a local community college just so I could skip ahead during the regular school year.

    By the time I got my first PC/AT, I was done programming and understand know that I knew back then that I was destined to design solution architectures, not be a developer. At one point in the late 90s, after going through three Junior Admins, I ended up writing a series of EXPECT scripts that helped me manage my OS/2 environment over the course of about 5 months. I've never served as a professional developer, but I can work my way around various scripting languages and IDEs like Eclipse. In my role I don't need to perform all those roles -- I only need to understand what's happening and how they are meeting the business goals.

  172. Fortran IV on punch cards by gnikhog · · Score: 1

    I first learned to program in a college classroom. Programs were generated at keypunch machines on IBM (Holerith) cards - one line of code per card. Card decks were submitted and and returned with results. It was painful to receive returned decks for out-of-order cards, compile time errors, and eventually run-time errors that had to be fixed for the next submission. Card decks were typically only run once or twice each day at the computer center making program debugging a long, painful process.

  173. I'm a software developer. by neoshroom · · Score: 1

    I'm a software developer. I've written programs for paying customers and a few for fun in Objective-C, C#, C++, C, Java, Object Pascal, Delphi, Visual Basic and Python. I've taught myself based on information found online and in books. Well, that and experimentation ("I wonder what changing this does?").

    If you keep at what you are already doing for a longer period of time and try it with some real programming languages, which are actually easier and less arcane than Bash scripting anyhow, you'll end up being a real programmer yourself too. :)

    --
    Big apple, new Yorik, undig it, something's unrotting in Edenmark.
  174. On The Job by muchtooold · · Score: 1

    Straight from university with a BSc Maths, learning on the job programming a fixed-point division function, I think. An obscure 2k 'words', word length 18bit, computer in an experimental radar system. Programming in assembler. However this was 1965.

  175. Telemate Scripting Language by CryptoJones · · Score: 1

    When I was a teenager the "In" thing was MajorMudd, a BBS Door Game. Using the Telemate Terminal Software's Scripting language my friend wrote a script to walk me around while I was in middle school and level my character. Reading through the code is what inspired awe and the curiosity to get into program. Now I mainly write C# on Windows Systems and occasionally Python scripts in Linux. Ah how times have changed.

    --
    "Chance favors the prepared mind." ~Me
    1. Re:Telemate Scripting Language by bored · · Score: 1

      Hehehe telemate was way cool. I remember writing a little script for some apocalyptic BBS door which hit the spacebar at the correct time during combat to assure I got a perfect hit all the time. Can't remember the door name though, what I do remember is that the game "cheated" by adjusting the delay depending on how deep into the dungeon you were. Then it started adding a randomization function.

      So, I added a bunch of code to compensate for these variations and it allowed me to survive in locations that a normal human simply would be unable to win at combat.

      Anyway, one day I'm walking around on the hardest level, and I ran across another player! I just remember my shock when I realized, those other f**kers must be cheating!

    2. Re:Telemate Scripting Language by CryptoJones · · Score: 1

      Yes, Yes a thousand times YES!

      --
      "Chance favors the prepared mind." ~Me
  176. TI-86 by Lehk228 · · Score: 1

    TI-86 Basic I wrote my own top down shooter, it ran slow but I made it and your ship could shoot lasers or missiles., I cloned a puzzle block game, I wrote a version of minesweeper, I wrote a notes editing program and I wrote a drawing program that could save as images or as sequences of draw commands to save space

    --
    Snowden and Manning are heroes.
  177. TI-85/TI-86 by Thaelon · · Score: 1

    When I was 15 or so I didn't have a PC, so I programmed my TI-85. Then after loading some assembler games onto it that disabled its screensaver and breaking it, I got a TI-86. I wrote a two-player tic-tac-toe game (no computer player), a Chemistry program, a base-10 to binary converter that supported arbitrary length numbers (built in converter was way faster but overflowed on I think 16-bit numbers), oh and a Physics program.

    I even sold a copy of the Chemistry program in High School. So technically I was a professional programmer (got paid for doing it, right?) by 17.

    I'm now have a BS in Computer Science and I've been a programmer ~8 years specializing most recently in Java.

    --

    Question everything

  178. Range of tools, Range of techniques by James+Keane · · Score: 1

    Started with ST Basic on the Atari 520ST, taught me how to control flow and break steps down. Followed with TurboPascal in college, it was ancient then but taught me a lot about strict languages and how to do a lot with a little. University - time for OO. Objects First with Java was a great book, because it taught how to think OO - have since done professional work in C++, PHP, Ruby, Python, Java, C#. I'll never stop learning - if a new tool can do something better than my current toolbox, I need to know it before everyone I know or work with it, only way to stay valuable.

  179. My experience by Chatterton · · Score: 1

    My first experience was with a SHARP PC1500A and a book full of games in BASIC to type and run.
    Then wanting to change these games (more lives, more/less difficulty/speed...) I learned how these programs worked and the meaning of each instruction.
    Later on a Sinclair ZX81 I followed this practice with another book with games in BASIC. Then an book on assembly for the ZX where you did have an example of assembly code equivalent for each BASIC instruction and an explanation for all the Z80 op-codes. From this I started learn assembly.
    With the help of a reference book describing the hardware of the ZX and lot of magazines articles, I started to add memory (2K, 16K, then 128K with a 8K window like EMS for the PC), mechanical keyboard, sound generator, eeprom memory to store code/data between reset/shutdown, logical and analogical I/O, speech synthesizer...
    Years later I received a PC (TANDY 1000 EX) with GW-BASIC, followed by a copy of TURBO PASCAL with its incredible online help and the SWAG archive. With the help of the reference 8086 documentation I began to learn x86 assembly to boost my pascal programs.
    VISUAL BASIC let me create windows easily, but was quickly replaced by BORLAND PASCAL.
    Way more later, at school, I learned C on a HP 9000, Fortran on HP 1000/RTE, 68000 assembly on a development board, IBM S/360 assembly on a VM of a S/390, SmallTalk, Prolog, Lisp (CLISP) and Smeci.

  180. commodore 64 by halsafar · · Score: 1

    I got one in 1988 at age 4 with a dozen games and a book about how to code BASIC. I am now a software engineer. I still have that commodore 64.

  181. Apple IIc by Anonymous Coward · · Score: 0

    My father was gifted an Apple IIc as a retirement gift in the mid 80s. I would bike to the downtown library in Los Altos and check out all (3) of the programming books they had at the time. I'd type in BASIC programs from those books and magazines, initially not understanding the code at all, but just fascinated I could make the computer do something. I remember calling out and embarrassing a classmate in a seventh grade computer class for copying a fractal graphics program and claiming to have authored it himself. I spent a summer writing a Hi-Res BASIC game with a friend. We couldn't figure out sub-routines that would call each other so when the space bar was pressed to fire the missile at the plane, the plane would remain frozen in the air...we were much more devoted to the animation of the plane crash on the edge of the screen. I also remember "hacking" into an Apple IIe at the Monterey Aquarium and typing up a quick BASIC program that would beep and flash a message that the computer was about to blow up and watching elderly people walk by it and freak out.

  182. 1130... get off my lawn by protonbishop · · Score: 1

    I'd bike up to the local Jr High School where there was an IBM 1130 in its air-conditioned room. We'd wait for the operators to reload the OS, and switch the balls on the selectrics and we'd be off programming in APL... 1971. Learned greek symbols at the same time.

    'Mad Libs' was my first program. Took home the printouts and poured over them, writing changes in the margins to update the next day.

    Anyone else remember "domino" commands, i.e., Quad-backspace-divide?

  183. Games by Anonymous Coward · · Score: 0

    tl;dr: Games

    I'd just installed some Slackware build (the one where the kernel was 1.2.13), and I wanted to learn assembly. I'd been told that fast graphic routines were written in assembly. I learned mnemonics, registers, algorithms and some other useful stuff. Then I became a game developer.

  184. HP-9815, HPL etc. by Teun · · Score: 1
    In the late seventies our company build a logging system around the HP-9815 programmable calculators.

    Especially when the 9815S and 9825A came out the increased space for lines of code was an incentive to expand the options of the standard programs.
    We were given some basic instruction on how to use the system en do fault finding in the software but mostly it was a matter of printing it out on the paper roll, cutting it up to subroutines and just trying to figure out what it all meant.
    A problem was the thermal paper would only remain readable for so long in the heat of the African and Middle Eastern deserts

    A productive time with a tool that did not have a very steep learning curve.

    --
    "The likes of Facebook and WhatsApp are free to those whose privacy is of zero value."
  185. From Pascal... by benmk · · Score: 1

    College: Turbo Pascal -> Java -> C/C++ -> Python , Haskell, FP, LISP, Prolog -> Objective-C -> C# -> ... Work: JavaScript, PHP, SQL -> ... -> SAP ABAP

  186. Had a PC Load Letter by Anonymous Coward · · Score: 0

    ...whatever that is. Got pissed at the keyboard, smashed some keys, and bam - paper ejected from the printer.
    When I saw how easy it was to manipulate the printer, I decided to manipulate other things.
    Now I'm a programmer.

  187. By lifting my classmates' Fortran code... by Anonymous Coward · · Score: 0

    and sitting at the teletype of an IBM iron beast, and hacking away!

    Ah, the good ol' days!

  188. What's the period of this pendulum? by tepples · · Score: 1

    I predict a backlash against closed devices in the future. Things like this are cyclical and when the pendulum swings hard one way

    What's the period of this pendulum? Video games in controller-oriented genres, for example, have been most commonly played on closed consoles since 1985.

  189. self taught by frovingslosh · · Score: 1

    Found the computer science center at school on my own, fascinated by the 026 keypunches everyone was using. A class later gave out a name and account number, but then stated we could use it but that they were not going to teach programming. I got a Guide to Fortran IV Programming by Daniel D. McCracken and taught myself. Programming involved punching out a stack of punch cards and them submitting them into waiting trays, Every few hours a trained monkey would wheel in a cart and take away all of the full trays. A couple more hours later the cards and printed output would be deposited in numbered bins. You typically would see an error that the compiler caught, punch more cards, and start the cycle again. I eventually moved up to the much faster ASR33s and KSR33s, where after you edited and submitted it, your job might only wait in the queue for 10-20 minutes before it got a chance to compile (longer if it actually got through the compiler and got a chance to run). I taught myself how to read and modify CDC-6500 assembly code at the octal level for my hacking interests, and could patch existing code for some hacking needs, but it wasn't until the summer when I found a decent library book that really explained machine language well that I was actually able to write my one assembly code (in spite of a poorly presented after-hours free class on assembly for the CDC-6500, which really didn't get the key points across).

    This, of course, was long before the C64 or Vic 20 or other personal computers. My first "personal computer" was a PDP-20, assembled from scrapped boards where I repaired many of them myself. At the time, electrical engineers at the company where I was working would hear about it and ask questions like "You have a WHAT?" and "What in the world do you use a computer for at home?". People who had their own computers at home were strange and to be talked about in whispers.A couple of years later the the first Altair came out and there started to become more of us, although I had already been playing with the 4004 chip by then.

    --
    I'm an American. I love this country and the freedoms that we used to have.
  190. I started young... by mycroft16 · · Score: 1

    I was 6 years old and my older brothers (17 & 19) taught me some basic stuff on their TI-99/4A. Wasn't long before I started experimenting and looking for books in the library on programming it. Wrote games for TI calculators in high school that probably lowered the grades of a number of kids. I was out of the country and away from technology for a couple years right when the internet took off and went from primarily BBS to the WWW. When I came back it was quite a shock. MP3s came into popularity while I was gone... I had a whole new world of programming to learn. Taught myself HTML and ended up in a job cleaning up css on php pages. Taught myself php by going through and fixing their code as I cleaned up the css. Now I have been the senior developer and db admin for several startups.

  191. QBasic by Anonymous Coward · · Score: 0

    QBasic -> pascal -> C++

  192. I'm always learning by Jason+Levine · · Score: 1

    My first programming was on my old Atari, but I never did anything really interesting there.

    Next, in high school, we were told to program a slot machine program. I finished before my classmates did so I added betting on the result and then added a loan shark who would lend you money if you ran out but you'd need to pay him back in a certain number of turns or he'd break your arms and legs.

    In college, I took computer science courses as a minor while pursuing my physics major but switched majors to computer science when I realized that I was struggling in Quantum Mechanics but not even paying attention in computer science and getting straight A's. (Plus, the job market for computers vs. physicists looked better.)

    After college, I continued to learn by teaching myself all I could. That part continues to this day. Any programmer who stops learning risks time passing him by.

    --
    My sci-fi novel, Ghost Thief, is now available from Amazon.com.
  193. I started with what I had... by frank_adrian314159 · · Score: 1

    I first read the only book my small-town high school library had on computers. It had the listing of a FORTRAN II program to (IIRC) calculate the first few digits of pi. I found a book on SNOBOL programming in the library of the large town in my county - I read that cover-to-cover. Then, when a friend three years older than me had his first programming course in college a year later, I had him lend me his intro programming book. I read that cover-to-cover and it sort of clicked. He made me give him the book back at the end of that term because he needed it. Two years later I went to college, finally getting my hands on a computer during my second semester there - well, hands-on is a bit of misnomer, because the only thing we were able to lay hands on was a keypunch, which I used to learn programming in FORTRAN and PL\I and the joys of print statement debugging on an IBM360\195. Next came assembly language programming on a PDP11/05 running RT-11.

    As my college years went on, I supplemented the classes required for my Computer Engineering degree with additional CS and programming classes and read extensively in the CS literature. Being the days of the programming language explosion in the mid-late 70's there was a variety of programming language structures that I learned about. Procedural was well known, modules were coming out, and early AI languages provided a wealth of event-driven languages. In addition to this, I had plenty of exposure to different OS'es, command languages, and editors through my research assistantships and other jobs. During one semester, I figured I was working on about a dozen OS'es, all with their own editors and command languages. One job alone used RT-11 on a PDP-11/10, RMS on a PDP-11/34, JCL and PL\I and FORTRAN on an IBM 360-195, and Compass on a CDC 6600 - and that was only one position (I had two assistantships over two departments every semester to make work a full-time job equivalent) - the other position had just as many different machines (TOPS-10 on a PDP-10 - yum). The first job i mentioned was also where I read my first article (in Datamation - OMG) on Smalltalk and learned about the basic principles of OO programming.

    I could wax on about work, where I read about (and played with) Backus' FP, looked at ICON, Self, etc., took additional classes to learn things like PROLOG, worked with C++ in the cfront 1.0 days, ginned up my own OO system out of a procedural language with procedure pointers, learned about ML and Haskell, and tried to figure out how to put all of these paradigms together. I could talk about how I continue to look at new languages today.

    This is not to mention the numerous frameworks that you also have to learn today. The last thing I've looked at is YUI, the new features of CSS3, and HTML5. It's always at least a bit interesting (if not particularly surprising any more).

    So, how do you learn to program? Like anything else. You learn by doing. You learn by reading. You learn by listening. Keep learning new languages and systems. As long as you make every day a new opportunity to learn something, you're probably on the right track.

    --
    That is all.
  194. CDC Cyber 70 by Anonymous Coward · · Score: 0

    at UNSCC running KRONOS. 60 bit words, non-ASCII character set, MEGABYTES of washing machine sized storage, PPUs more powerful than many competitors CPUs, and an awesome dual persistent CRT console desk.

    We used TTY33 KSR terminals mostly, plus a bare handful of ADM3 glass TTYs, BASIC and MNF (Minnesota FORTRAN) except for a couple of assignments where the instructors made us use the card punches and submit the jobs via batch (hand them to the operator and wait 20-60 minutes for output so we could debug and resubmit).

    There was also a Tektronix 4014 graphics terminal that we snuck time on when we could.

    The system as upgraded to NOS the second year.

    My third year the Cyber was taken away from undergrads (only grad students and official university usage) and we got stuck on a pair of Harris H800 minicomputers running the Vulcan OS. Linking was called 'vulcanizing' (snark). They were ok. By then the labs had many more advanced terminals including DEC VT100s.

    Fourth year we had access to a VAX 11/750 running BSD 4.2 (and internet!) and had our first chance to use a C compiler, and assembly was taught on both the Harris systems and Apple ][s. I had my own Apple ][+ then and did a lot of Applesoft BASIC and 6502 assembly for fun.

    Good times

  195. Intentional limits of the web environment by tepples · · Score: 1
    Anonymous Coward wrote:

    Will there not be Javascript implementations of BASIC with comparable features to an Apple II?

    Even if there are, how well a BASIC interpreter written in JavaScript would run on an iPad or Surface depends on to what extent Apple and Microsoft make the appropriate web APIs available for use in Safari for iOS and Internet Explorer. For example, Apple already refuses to make WebGL available to anything that isn't an Apple-approved iAd. And even those web browsers that support offline web applications already severely limit how much data a web application can store while working offline.

  196. Calculators by Anonymous Coward · · Score: 0

    Back in high school, my friends and I loved to write little text games on our TI-84s, which was my introduction to declaring variables and making if statements. My knowledge was very limited, though one of my friends learned how to do a bunch of other things like basic graph-ics. Except he was like the opposite of the open source movement and wouldn't let anyone know where he learned about it (and I knew not the raw power of googling). One year we were able to take a two-week elective on game programming, where I learned (the basics of) DarkBASIC. In college I decided to take an intro class on Java, found it too easy, and moved on to the more advanced version (which was also my intro to command-line Linux). From there I decided I could at least take a minor in CS, and after my roommate showed me Project Euler and another comrade showed me Python, writing those solutions without worrying too much about syntax rekindled my love of math, so I took a Math major with CS emphasis, and now I show engineering students how not to suck at Matlab. To this day I thank Turing for the TI-84 and Python (and the people who actually made them, I guess).

  197. The Epson Equity II owners manual by JWeinraub · · Score: 1

    My first computer was an 8086 Epson Equity II monochrome screen, dual 5.25" floppy disks, no hard drive so the only thing I can do on it that was worthwhile was make my own text adventure games. I followed GW-BASIC book and had a blast! I made music using sheet music and painstakingly convert notes into Hz and made silly games. Granted I was about 9 or 10 years old at the time, but I was annoyed I couldn't do more. Eventually when I got a colour computer (CGA), I had a blast playing with colours and different graphic modes (or screens as it was in QBasic, I think it was screen 12 that I liked the most. I heard about C/C++ and I thought it was stupid, thought BASIC was the way to go (I was a tween or so), then when I got into high school we started playing with Pascal. I found some site in the Netherlands that was a Pascal god doing crazy shit with assembly and I emailed him for help and he graciously did, and my teacher used my rocket ship as an example of what the students were doing on back to school night (it was the centre piece, other students had theirs up too). It was pretty cool. When I became a senior the college board switched from Pascal to C++ so I retook Intro to comp sci to learn C++ and I am glad I did. Not only do I love the language now, loathe basic (ironic, isn't it?), but it helped learn so many other languages that are C-based. While I never formally learned K&R C, I been meaning to pickup their book for quite some time. I think it'll help with learning Objective C, but anyway, I digress. To answer the question I am self taught to get the basics (no pun intended) and was formally educated after getting a descent elementary grasp. I suppose in Elementary school, we were taught Logo, so I suppose that counted, but I guess I never saw it as programming other than maybe scripting or telling a computer to draw something, so yeah I guess it does count. Though in middle school, we had Lego Logo which was sick, having lego projects interact with the logo code we wrote.

  198. I have computer camp stories! by Anonymous Coward · · Score: 0

    Yes, I started out on a C64 learning to program in basic mainly to run all the pirated games the computer came with. I estimate the C64 my family purchased came with around 500 or so titles all on 5 1/4 disc. Anyhow, later on I was excited to be enrolled at a C/C++ computer camp for kids when I was 13 years old. They locked us in a room and made us code all day. The only readily available drink was Coca-Cola or Mountain Dew mysteriously every drink there had loads of caffeine in it. At the end of the day we stayed up all night in our dorm (it was on a college campus) talking about video games, music, and what we were going to do when we got out of there. While I was there I saw a kid strike another kid in the face with a 25 pin serial connector over losing a Doom tournament. There actually was a 25 pin imprint on his face afterward. We mainly programmed using Borland Turbo C++ but I was one of the few kids that wanted to learn it and not just play games all day. This computer camp experience was the closest thing to working in an office I would ever encounter but I just didn't know it then.

  199. Tandy 1000 EX by Saethan · · Score: 1

    My parents bought one when it came out in 1986, but I didn't start programming it 'til around 1992 (I was born in '86). My brother was studying computer science in college at the time and he'd come home on holidays and in the summer and teach me how to write code in BASIC. :) My parents hung onto that thing until it finally broke in 1995, and they got a Pentium 1, which I started using Visual Basic on. I didn't actually use a bracketed language until C and Java in college. And now I have a job working with VB.NET... hah.

    1. Re:Tandy 1000 EX by Anonymous Coward · · Score: 0

      Tough luck man, sorry about that. :(

  200. Sinclair ZX81 by Anonymous Coward · · Score: 0

    Soldered a Sinclair (NOT Timex-Sinclair) ZX81 kit shipped from England as part of the electronics merit badge in scouts as my dad taught me electronics. The kit contained the case, the board, and bags and bags of individual parts. Got some help from an engineer at Bell Labs to change the video out from PAL to NTSC. Typed lots of code and saved onto tape. Was thrilled when we got the 16K memory expansion pack.

  201. not with books by Tooke · · Score: 1

    I started programming about 7 years ago with visual basic 6, now I'm finishing my sophomore year of college (CS major). When learning new languages, I would start out with beginner tutorials and then move on to writing my own projects as quickly as possible. I would then do all my learning from experimentation and online resources (google, stack overflow, etc). Now I have enough experience that when I learn something new I can jump right in and start making stuff. But I've never learned from books. I tried a few times, but they just seemed boring/slow paced. I learn so much quicker from google anyway. I don't think I'm really missing out on any in-depth knowledge from not reading books--I try to research things I don't understand quite heavily, and works quite well as far as I can tell. I often hear other programmers talk about how they learned/learn from books, but I figure I just learn differently. I never read the text books for my c++/java classes either. I find that half-paying attention in class and then researching anything I don't understand on my own time is much more efficient.

    --
    Anybody want a peanut?
  202. Guru by hacksoncode · · Score: 1
    People can and do learn to write code in numerous ways. However, every really *good* programmer I've ever known (and I've known some spectacular ones), has learned to program at the feet of a guru (or in my case, a string of gurus) that taught them to respect the machine.

    Anyone can learn to optimize algorithms. It takes wisdom to know when and why to do so. Anyone can learn to write a sort function. It takes experience to know which one to choose, and why... and not only that, why it matters. Anyone who programs will eventually learn how to debug their mistakes. It takes insight to learn the Tao of the Debugger.

    It's possible for someone to learn these things on their own (obviously the first hackers did somehow, eventually), but if you learn them early, from someone that you deeply respect, a) the lessons *stick*, and b) you don't have to spend your time and effort learning them on the job later, so you have time to focus on all the other things you need to learn to do whatever you end up doing.

  203. IBM System/3 with card reader by Bearhouse · · Score: 1

    Half an hour to 'boot', then more to load yer pgm & data... I liked the night shift, since you could read a good book whilst listening for the ominous 'clunk' when a card got rejected and everything ground to a halt.
    Mixing up the cards was a traditional welcome for the newbies.

    Things improved when we got a 2MB hard disk. Yup, that "two" whippersnappers.

    What did it teach me that's relevant today? Urm, don't drop a box of hundreds of unnumbered cards into the snow?
    More seriously, carefully planning your logic and data flow (on a piece of paper those days) really helps you create clean and compact code.
    Think about what you want to do before you start on the 'how' bit. /getoffmylawn

  204. Atari 400 by Remus+Shepherd · · Score: 2

    My dad was a big dreamer, and he saw lots of potential in early arcade games. We had a Pong game in our house in 1979, because my dad thought he could rent it out. Eventually he offered to buy me a game system to get me off the Pong game, and I asked for an Atari 400, mostly because I thought it was better than the 2600, so I could lord it over my friends. My friends weren't impressed because of the smaller game catalog, but I nearly melted that chiclet keyboard as I taught myself to program in BASIC with it. By age 13 I had designed my own version of Breakout (better than Pong, because I could play it by myself) and was working on adventure games.

    Buy a kid a computer with any programming language, and they will learn it.

    --
    Genocide Man -- Life is funny. Death is funnier. Mass murder can be hilarious.
  205. basic? by Anonymous Coward · · Score: 0

    Yes, I learned in BASIC on an Apple II in the '80s too. So did most everyone else responding here.

    I would have expected a slew of "html and javascript writing web pages in '00", because that's when everyone and their brother was entering programming due to the dot-com boom. But I don't see anyone saying that. It's all BASIC in the '80s or earlier.

    Um. Perhaps we should give high schools a bunch of extremely limited machines equipped with BASIC compilers, if we want people to get into computer science?

  206. Kitt Peak Observatory by jasnw · · Score: 1

    Started with punch-card (not IBM format) programming a Wang desktop beast, hand-inserting one card at a time. Rebooting (which was needed more often than I care to admit) required walking down the hall to the closet where the "brains" of the thing lived. I then graduated to a PDP-8 that was sitting in a corner waiting to be installed for a remote-access telescope, programming by entering Basic commands via a TTY. Finally they let me at the observatory's new CDC 6600, reading data from paper tapes (down from the mountain) and programs from punch-card decks. That's when I learned Fortran (II), which is still my main language. I also had to walk 12 miles to work in the snow every day (in Tucson). The alternative was to wait for the stage coach.

  207. mIRC scripting by A-Rex · · Score: 1

    As an avid user of mIRC I started out creating handy aliases and snippets. I quickly progressed to automatic chat responses, quiz bots, services that queried websites, etc. I still remember the mIRC help file :)

  208. in school by Anonymous Coward · · Score: 0

    so many say "I figured it all out myself" ... but having good instructors and support in school really got me coding seriously and well with an awareness of CS concepts, too

  209. Compsci 1002 by trongey · · Score: 1

    FORTRAN class.
    After two semesters of that I was able to enroll in the PL/1 class. Programming on a CRT terminal instead of a keypunch, woot!

    --
    You never really know how close to the edge you can go until you fall off.
  210. Big Trak, Logo, illustrated kid's book, VIC-20 by Wraithlyn · · Score: 1

    Thinking back, one of the earliest things that hooked me was a Big Trak they brought into my grade 1 class. I was fascinated by the idea you could give this thing a sequence of instructions and it would carry them out.

    Of course there was Logo on some school computers (Apple II's?) to play around with.

    Then there was an illustrated children's book on BASIC programming from my local library... used robots running around putting things in boxes (ie, memory) to illustrate the concepts. It seems impossible to find similar books these days, which saddens me. I wrote my first programs on paper (we didn't own a computer) based on stuff I learned from that book. My first bona fide code was written on a C64, on display at a K-Mart. (10 PRINT "BRIAN" 20 GOTO 10)

    Later, we borrowed a VIC-20 from a friend for a few months, and I began programming in earnest. Wrote a text-based casino game that quickly exhausted the 5K of user RAM.

    Eventually I convinced my parents to buy a C64. Actually mucked around with assembler on that. Then (much later), our first PC, a 386... GW-Basic, QBASIC, Turbo Pascal (and more ASM), etc.

    --
    "Mind, as manifested by the capacity to make choices, is to some extent present in every electron." -Freeman Dyson
  211. Pascal on an Apple IIe... by Anonymous Coward · · Score: 0

    It is arguable, though, that I actually programmed. We had to come up with a project for the class so I wrote a really simple form that processed responses - however I didn't actually write it. I went into a book store and took some Christmas money my dad had given me and bought a Pascal book that had a simple form processing example. I effectively stole that for the class project and the teacher actually liked it. I can't recall what kind of grade I got but it may have been a "B."

    Mentally I obviously hadn't gotten my head around programming yet.

    My first "real" programming efforts were vague attempts at writing C/C++ apps for OS/2's Presentation Manager - VERY hard to do for an utter novice (try figuring out how to build skeletal code to do the most things in a GUI like draw a window when you barely know how to program!) and then a Visual Basic 4 application to process web form responses. That little app was actually functional but I quickly moved on to Perl/CGI for form processing (here I was, back at form processing) which I created for a signup application for the tiny ISP I worked for - i.e., so we could hand out "signup disks" (yep, actually floppy disks back in the day). It worked and had a very basic database locally (SQLite IIRC) but the ISP never used it. They were always sorely lacking in ambition which kept them very small.

    Later on it was more Perl/CGI stuff then not much later I moved on to the traditional LAMP stack where I've stayed ever since - 14-15 years at least. I've looked at and dabbled in Python and occasionally will use Perl as a sysadmin because sometimes it's the best tool for the job - along with shell scripting of course.

    I eventually got my head around MVC programming so am developing a decent-sized application in CodeIgniter in PHP these days. It certainly saves massive amounts of time and makes the code easier to comprehend. It's worth it on the front-end to learn MVC (be it PHP, Ruby, Python, whatever) to save a great deal more time later on. I had developed pretty good-sized apps - not huge, but a few thousand lines total maybe - that were a mish-mash of PEAR libraries and were very, very messy so MVC is a nice transition to cleaner, more logically segmented code.

  212. Karel the robot! by Anonymous Coward · · Score: 0

    I was very young when I was first exposed to this, and it made a lasting impression. I made some pretty complicated little programs the karel bot would run. Some basic wall following stuff that came up again when I was building simple robots...

  213. Advanced T-Robots by HeckRuler · · Score: 1

    I'm actually way late to this game. We had a Tandy 1000 and TI-99/A4 since before I can remember, but the idea of programming them was foreign. Programs were not something you made at home. You bought them or, well, we got a disk in the mail like a digital magazine (Big Blue Monthly) which was neat. But I dunno, I'm not entirely sure why I never tried programming those machines.

    My first programming experience was on a x86 box running windows 95. I was in highschool and I found Advanced T-Robots. A programming game that took in (it's flavor of) assembly and controlled some tanks to shoot each other. I think the trick was that it had visual feedback. That's what got me hooked. I could see the effects of what I was typing in. My brother had some BASIC programs he copied out of a magazine, but that didn't impress me when I was 8. At 13 though, I could write some cludgy AI for a tank and I could see it trying to launch shells at each other and that was the spark.

  214. Apple ][ by eriks · · Score: 1

    Technically, it was applesoft basic on a Bell & Howell Apple ][ in 5th grade science class. The teacher had written a program in applesoft basic to drill simple arithmetic problems, and another to drill spelling words, both including simple animation and sound. I was enthralled (even before I saw the thing actually do anything, since it sat there for weeks for lack of an RF Modulator to connect to a TV, which the teacher eventually built from simple parts, much to my amazement). I looked at his code and immediately began writing simple games (text adventure, tic-tac-toe, pong, etc.) and even "ported" his original program to the C64 and TI/99-4a -- though I think in many ways my learning to program started much earlier, since I was always taking apart (and sometimes putting back together) various machines, appliances, electronics, what have you, from a young age, and developed a basic empirical understanding of mechanics, electricity and electronics, which translates somewhat into basic logic, and perhaps more importantly the willingness to learn from (and copy) "prior art" and to not be afraid of breaking stuff or making mistakes. There's a (potential) drawback though to empirical learning, in that it makes it more difficult to fall into academia and established theory, since unlearning is sometimes more difficult than learning, though personally, I have no regrets in that regard, since it also makes acquiring new skills much quicker. I wish I could pick up new human languages as quickly as I can pick up new programming languages.

  215. Commodore "Compute's Gazette" Magazines by ZahrGnosis · · Score: 1

    My dad brought home a commodore and I subscribed to Compute's Gazette (I think that's what it was called) -- a magazine with a lot of commodore stuff in it. One thing they had was pages and pages of bytecode that you had to type in with no debugger or syntax to speak of. I learned a LOT from that, and from the built-in basic the OS had. The first thing I really remember programming to completeness was a Julia and Mandelbrot set generator... in Commodore basic. It was not fast; I could see the program drawing pretty much every pixel. Good times.

    I ended up with a degree in computer science, but I'd say that was more an opportunity to practice than it really was how I "learned" to program. Algorithms and Operating System classes had some concepts that I hadn't run across, and every class was an opportunity to learn or find new snippets of knowledge. But the formal things I learned like "Bresenham's circle algorithm" and topological sorts, or anything from the Dragon Book, the volumes of Knuth (ah), or the Numerical Programming books were important conceptually... probably good to make efficient code, and great ways to not recreate the wheel. But the only way to "learn" to code is to code.

  216. VCR by Anonymous Coward · · Score: 0

    After that trial by fire, C++ was a breeze.

  217. Re:TI-57 by wasteofspace77 · · Score: 1

    Tell me about it! And the TI-57 manual Making Tracks into Programming was phenomenal.

    I just wish I knew about the constant memory trick with the infinite loop blanking the display back then. Where *was* the internet!

  218. patch cords by Anonymous Coward · · Score: 0

    patch cords on a card tabulator in the early 1960's

  219. Started it for the wrong reason, on a mainframe! by sisukapalli1 · · Score: 1

    I was 17, just got into an Engineering college in India. Never saw a computer up close till then. We had to take either Thermodynamics or Computers in first semester (and the other in the second semester). Thank God I didn't take Computers in first semester, or else I may have hated it.

    So, during winter time, I went to the computer center (nice, air conditioned place). Outside weather is horrible, and the computer center let us take printouts - that could be used for note books (I was/am a cheap ba*tard). So, it started with writing small math codes (my first program was something like "sin(x**3) = 1; print x", and a guy next to me nicely said, "well, you can write anything you want, but it won't work!". My second program was a =1; b = 3; print a+b!) I've spend hours together to solve problems that would take minutes to do if one read up related stuff in a book! No games, not much fun, just trying to make a piece of mathematical code working -- worked harder, not smarter! Only reason I can think of is that the climate control of the computer center.

    Loved the computers ever since -- been close to 25 years! Was in a different field for majority of the time. Eventually moved over recently to applied computing.

  220. C64 and onward by Vrallis · · Score: 1

    I started off on C64s and Apple ][s in middle school, which upgraded to Mac LCs around 8th grade. Started off in BASIC, fiddled with stuff like Hypercard under the Mac.

    That summer as I was going into high school my parents got me a Tandy PC1000. Family friends helped me with upgrades, software, etc. I eventually got my hands on a full copy of QuickBASIC, Turbo Pascal, and Turbo C. I wrote my own database app, even wrote my own mouse drivers in assembler, linked them in through C and QB, started expanding my own library of that sort of code.

    My first 'paid' gig was for a friend of my father who owned a TV repair business. I wrote a program that monitored a modem to pick up caller ID info and store it in a database; searchable, printed reports, etc. Networked it to pass the caller ID info to PCs in other buildings on his property. My 'payment' was in hardware, software, and 100 packs of 3.5" floppies, which I was more than happy with at the time.

    I went to college for CS, but learned more in my job at a research institute on campus than I did in the classes. I actually had a couple professors who, after the first semester with them, just came to me later with "You know this already, don't you? Here's the test schedule, just show up for the exams if you want." I dropped out after a couple years and managed to get a decent job before the first major dot bomb bust.

    I did some coding for a year or two after that, but mostly moved up the food chain. Most of my coding these days consists of shell scripts, awk, some PHP, but little 'new development.' Today I effectively operate as a liaison between support teams and development teams since I have the skillset to give a better technical analysis of an issue as well as the coding background to debug issues as well as know what is and is not possible on the dev side.

  221. What did you do when you were 11? by davidwr · · Score: 1

    And 100? How about when you turned 101? 110?

    Were you the only kid in class that could count to 11111111 using your fingers and no thumbs?

    Did it impress your teacher or did she give you a pair of F's for being a smarty-pants?

    --
    Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.
  222. Self taught at 9 years old by Anonymous Coward · · Score: 0

    haven't learned much since then and I'm now 35.

  223. "Ready to Program with Java" by wisnoskij · · Score: 1

    Great simple IDE.
    Lacking loads of industry standards, but all those features that come in fully features IDEs are just way to confusing to add on top of learning coding for the first time.

    --
    Troll is not a replacement for I disagree.
  224. FORTRAN in 1968 by riverat1 · · Score: 1

    Our high school got a teletype/paper tape reader/punch in the math lab and all of us who were interested got 5 minutes of computer time on the Cyber over at the Oregon State campus through a 150 baud acoustic modem. I fooled around with FORTRAN a bit but mostly we played a Star Trek game* that one of my classmates had written. When I actually got to OSU I took a regular FORTRAN class where we used punched card decks for our programs. But I didn't really get serious about programming until the early 1980's when I went back to school after my ski bum years.

    *The Star Trek game was a pretty amazing piece of work by a guy who went on to MIT and got a Masters in Aerospace Engineering in under 4 years. It was played in a hemispherical space with stars and gravity in it. There were 4 ships, the Enterprise, the Vulcans, the Klingons and the Romulans. They all had limited fuel and photon torpedoes as well as phasers. Gravity affected the flight of the photon torpedoes as well as the ships. Each team would put in the moves for their ship then the program would take that in and send back a representation of the new situation printed on the teletype and wait for the next moves. We wasted hours on that thing.

  225. VIC-20 by Anonymous Coward · · Score: 0

    On my dads VIC-20 from his computer magazines.

  226. Why, when I was young . . . by Latent+Heat · · Score: 1
    Weee didn't have those fancy punch cards and FORTRAN compilers like you young whippersnappers.

    Weee had to walk 10 miles to the University computer center. And it was uphill in each direction.

    And we had to enter raw machine code in binary using the front-panel switches, which we did until our fingers bled. And we liked it!

    1. Re:Why, when I was young . . . by OhSoLaMeow · · Score: 1

      Young? You call that young?

      We had to wire up these large panels to do the "programming" on the accounting machine
      Interesting factoid: Hollerith card sorters had various speed options. If you paid more on the lease, you could get a faster sorter. The way they sped up the sorter was to change the pulley size on the motor.

      --
      They can take my LifeAlert pendant when they pry it from my cold dead fingers.
    2. Re:Why, when I was young . . . by brausch · · Score: 1

      Well, I did walk up hill both ways to and from the high school! :o) Our house was on a hill and I walked through the valley about a mile and a half to the high school up on another hill. LOL

      Bill

      PS: I did program analog computers in college (you know, plugging in actual wires and turning knobs with the output on an oscilloscope), and also a PDP-8 that required using the front panel switches to bootstrap the loader program to read the paper tape. Can't say that "I liked" either of these but I sure learned a lot.

      --
      "Almost every wise saying has an opposite one, no less wise, to balance it." - George Santayana
  227. Ollevetti! by xanthos · · Score: 2

    I started about the same time on a Ollevetti 401 I believe. A glorified numeric key pad for input and a red light, a green light and a cash register style tape for output.

    I believe you will never really understand how a computer works until you have done two things:
    built a compiler/parser and have done machine language programming (which was what you did with the 401).

    --
    Average Intelligence is a Scary Thing
  228. C64 by AcesDnied · · Score: 0

    I first started learning about programming on my Commodore 64, real minor stuff around 10.

    Then I got a dial up modem, and found a wonderful program called mIRC, and I started learning to script.

    After learning to write scripts in mIRC for 2 years, and transferring to a new school, I tried getting into the AP classes in high school. The only problem is that they only offered the classes to juniors and seniors... Once I was finally able to take these classes (Turbo Pascal and VB) I was finally knew what I wanted to do with my life.

    Luckily once I got to college these classes helped me jump to second year courses and fly by all the BS intro to computer classes.

  229. High shool in 1974 by Anonymous Coward · · Score: 0

    I went to a progressive high school that taught programing BASIC on a WANG computer and COBAL on a Burroughs computer in 1974.
    They also had classes in ALGO and other Computer Languages.

  230. Apple ][ by Anonymous Coward · · Score: 0

    I sat in front of an Apple ][ when I was a kid and just started typing. A friend had a Vic-20 and some magazines with BASIC code in them and we typed them in. By 14 I jumped feet first into C. Not the easiest thing to do but that's where I first did some real original coding. I later learned some Pascal, COBOL, assembly and C++. I gave that up to do sysadmin professionally but I still enjoy hacking together shell script.

  231. Processor Technology SOL-20 by landoltjp · · Score: 1

    1978 - Processor Technology Sol-20
    1979 - 8K Pet
    1981 - 32K Pet
    1983 - IBM XT
    1989 - PC Clone

    Some great stories here! Never too young to start, or old to learn! Very cool :)

    I started on in 1978 (I was 12-13) and my dad bought me a Sol-20 from a colleague of his. It was sold as either a kit computer or a completed system and I remember the dude from whom he bought it, so I think it really was bought as a kit rather than pre-assembled. It came with 8K of static ram, a tape recorder and a copy of their 5K integer (no strings) Basic. Do that math; that left 3K for program space.

    Other than hello world programs, my dad also bought me a copy of Creative Computer's Book of 101 Basic Games. I found a few of the smaller games (many wouldn't fit into 3K), diligently typed them in from the book, and watched them fail (SN-ERROR AT LINE 10). Thus began my world of debugging and adaptation. I learned that this basic would not handle strings, data reads, or matrices (only arrays). But the debugging and modifications gave me the foundation to start writing my own work. Wrote a dice-rolling game, then a horse-racing game (horses ran according to their odds). My dad bought me another 8K S100 card a year later, and I could run the advanced basic on that.

    In high school I sold the Sol-20 and bought an 8K Commodore Pet computer, which was handy since my high school had about six of them, and I could trade programs (Creative computing games!) with the other kids.

    I bought a DEC LA-100 printer cover from a local surplus store in 1981 which had an acoustic coupler built into it. Got a wiring diagram and Steve Punter's modem program (I'm a Toronto boy like Steve, and he was at the TPUG meetings), and I was off to the telephonic races! I quickly became a junkie of the Toronto BBS scene.

    First thing I did in 1983 when I got my IBM XT was to find BBS software (written in basic - sloooow), and re-write it so I had my own BBS software. Found the PC-BBS source (in basic), stripped out everything other than the parts that worked the modem, and wrote the rest from scratch. It was sluggish (interpreted Basic) and not ENTIRELY bug free ;) Dropped messages here and there; we ended up calling our first BBS the Black Hole.

    Re-wrote the entire thing in Borland Turbo Pascal 3.0 in 1984, and it motored! By then my friends and I were running 4-5 Vanguard BBSes in Toronto. This was when FIDONet had started batching mail between their systems, so we set out to design a multi- topology short/long haul mail routing system.

    The rest as they say is history :)

  232. TRS 80 model 3 with cassette storage. by Trax3001BBS · · Score: 1

    Taught myself Basic programing, typing in programs listed in the magazine 80 Micro http://en.wikipedia.org/wiki/8Micro
    Then when the programs wouldn't run, going back and debugging them taught me a lot. I had also taught myself
    Assembly language and was going strong in that direction.

    When I bought my first Amiga, (500), first thing I did was start to write programs in Basic, but none
    ever ran right; in fact I had to quit as it was making me mad enough to toss the Amiga 500 through a wall.

    The Amiga put a screeching halt to my programing; while I speak of the Amiga God machine it really screwed me in that respect.
    I haven't really programed since. I tried AREXX but never went far with it.

    Apparently Amiga's Basic program never did work right and pulled from later upgrades.

  233. MOO by Anonymous Coward · · Score: 0

    It wasn't until the mid-90's when I discovered MOOs (https://en.wikipedia.org/wiki/MOO) that my desire to be a programmer was really ignited. Being an English nerd in high school, MOOs were like interactive fiction, living, breathing worlds made of text. I was intoxicated and so got into programming inside the various MOOs I was inhabiting. To my very great surprise, I found I really enjoyed programming. That interest led me to learn VB, VBScript, Javascript, amongst others and a programming career that is nearing 20 years.

  234. When I was 11 by Anonymous Coward · · Score: 0

    I say with my dad and wrote a Pokedex for the computer in VB 4/5. Then I used the internet to find hackey ways to manipulate Windows and copied other people's code in to my own mash-up of features. Things like Window Enumerators and API calls. I can't count the number of times I ruined his install of Windows. Then I learned what a web-server is and installed Apache and started writing in PHP.

  235. My freshman year of High School by ms4sman · · Score: 1

    I first learned to program during my freshman year of high school. Me and a friend of mine suddenly got an insatiable desire to learn all we could about computers. We did most of our experimentation on school computers for some reason. Every day, we got to first period Computer Apps class 15 minutes early, logged on and started screwing around. We started out with simple stuff. We figured out how to unlock the command prompt and wreak havoc by shutting down networked computers, and we thought we were so smart. Then we got into batch files. We didn't know at the time that we were actually programming however. Later we started tinkering with VBS and we had some good fun with that. Then one day my friend showed up with a CD with something called Python on it. He had been messing with it over the weekend, and started learning it. I thought it was pretty neat, so I started learning it too. And it began a long and wonderful relationship which continues to this day between me and Python, which is still my favorite language.

  236. Like it was yesterday by Anonymous Coward · · Score: 0

    Gosh, I remember like it was yesterday. I had just bought my first Alienware desktop with an intel i7 processor and 64 Gigs of RAM(That was alot back then) and enrolled in an online computer course at my local university. We were using Visual Studio 11 and our first assignment was to create a fullly functional windowed text editor program. I recall distrinctly once I was in the IDE, I could select the option "File > Create a Fully Functional Text Editor". 20 seconds later I was running my first ever program I created by myself! It was a magical experience for me. Programming was tough back then.

  237. Mattel Aquarius when I was by randomErr · · Score: 1

    It was fun to write code that let me print on the thermal printer. The rubber keyboard was such a pain to use.

    --
    You say things that offend me and I can deal with it. Can you?
  238. IBM 1401 yr 1966-67 by Anonymous Coward · · Score: 0

    Tucson Public school district started teaching computer programming (EDP) classes while I was in high school. The 029 keypunch was in an obscure corner of the basement of the school. Punch your program, submit it, and it would be back in two working days.

    The year I took the course, you didn't have to put blank cards behind the code so the the binary could be punched then run into the machine to run. Heaven help the person that didn't put enough cards behind their deck.

    AUTOCODER was the language that I first learned on the IBM 1401. Took me all Christmas break to punch the instructions to play a simple hand of Gin Rummy. Took a half hour to load and run, I was told.

    Fortran IV free course at the University of Arizona was the intro to higher level programming.

    Learn the machine language, as it was, then on to higher levels, the only way to go.

  239. Apple //e by Chelloveck · · Score: 1

    In my high school days I was fascinated by computers and bought myself a brand-spanking new Apple //e. I wanted to use it to write a paper for school but I had no money for software. So I cracked open the BASIC manuals and wrote myself a super-cheesy word processor. Okay, that's too generous. It collected typed characters into one long string, and I could even backspace to delete them. That's it. After entering about a page of text, garbage collection kicked in every couple of characters and froze the machine for seconds at a time. But hey, I got the paper turned in! (And got a decent grade, too, despite having spent far more time coding the program than actually writing the paper.)

    I also wrote a database manager (before I'd ever even heard that term) to store information about my music collection. And I wrote a few little games.

    My school offered a BASIC class my senior year, so I signed up. I already knew way more than the teacher and I blew through the entire textbook in a few weeks. He wanted me to start in on another textbook but I refused. I told him that if he had anything serious for me I'd gladly do it, but I wasn't about to plow through yet another remedial book. We eventually worked something out where a buddy and I did custom programming for other teachers in the district who wanted to try out this new "computer" thing in their classrooms but didn't know what to do with it.

    Then I went to college and ended up learning assembly for the 6502 (my Apple), the 8080 (for a EE course) and the school's mainframe (for a CS course) all in the same term. Good times, good times...

    --
    Chelloveck
    I give up on debugging. From now on, SIGSEGV is a feature.
  240. STD Bus-Based Board and Hex Keypad by Anonymous Coward · · Score: 0

    It was in tech school.

    6800 processor on an STD Bus card.

    It had a VERY EXPENSIVE 256-BYTE (not MegaByte) memory chip installed.

    This card was nailed to a piece of wood.

    It had a hex keypad and a 4-digit LED display hooked up to it (also nailed onto the board).

    We had to map out the hex machine instructions, and punch them in, set the PC to the first one, then hit go.

  241. XCom Apocalypse by fleeped · · Score: 1

    Early nineties, XCom Apocalypse has been announced, so in excitement after playing XCom Terror From The Deep I start up BASIC and start drawing a logo of XCom Apocalypse using line commands.
    Well, I've ended up working as a computer programmer specialized in graphics. But I'm probably still as inefficient in getting the job done :D

  242. basic on a tandy color computer by buddyglass · · Score: 1

    No "computer camp" or even much coding outside school. Was taught BASIC and basic language concepts in the 7th grade, then Turbo Pascal in the 9th and 10th grades. After that I think we were taught a bit of FORTRAN and some x86 assembly in an advanced placement class. In hindsight I wish they'd skipped the Pascal, FORTRAN and assembler and just taught us C. At the time, though, Pascal was the language being used on the AP Computer Science exam, so that's what we learned.

  243. Apple IIe at age of 8 by dewrox · · Score: 1

    I started out at the age of 8. My Dad taught computers in school (not programming) and so he would bring a couple Apple IIe's home on weekends. I too tried the compute magazine programs, but got bored with that and started making my own. I learned from magazines and books but mostly from doing. A few years later I found out that my Dad actually knew "The Dragon" and he lived a 30 minute drive from our home. When I was 10 my Dad was teaching a spreadsheet course at a local college, he had some meetings to go to that week and so my Mom drove me and I answered questions and taught the class while he was away. Not sure if you could get away with that today.

  244. Bah Kids by FredK · · Score: 1

    1958, ALWAC IIIE with 512 byes of memory in a recirculating drum. Huge mass storage of 32K bytes that could be loaded into the 512 bytes in blocks of 128 bytes. Software 32 bit floating point used up 128 bytes of the 512. A good system to learn some good habits and some terrible ones. Of course, there was no assembler at first, but once you learned the hex codes a later assembler forced one to do silly things like not use instructions for data so who needs a higher order language?

  245. esr by arnodf · · Score: 1

    Discovered Eric S. Raymonds 'How to become a hacker' as a 14 year old kid. Then started out with HTML from Dynamic HTML For Dummies, went to C++ and even, contrary to his advice, VB6.

  246. Botball by Anonymous Coward · · Score: 0

    My rural high school's science teacher got a group of us non-athletes involved in the Botball tournament back in 2000-2004. We began learning the Interactive C programming language to navigate our Lego robots around a white game board with black tape. The programs ran on the RCX board and a Handy Board and consisted of various motors, precision servos, light sensors, IR sensors, sonar, and later on a camera. I went on to dabble in HTML and had a high school programming class for qBasic but the Botball stuff really broke me into the inspiration of programming. Seeing your programs execute on a computer is one thing, having them come to life in the real world was entirely different.

    This lead to me and a high school friend going into Computer Science in college where we now have degrees thanks to Botball. Hopefully the robot revolution comes soon so we can get to doing more interesting things beyond the general business app development that most programming careers consist of.

  247. 5 letters by Dahamma · · Score: 1

    EAMON.

  248. NYU Courant Institute High School Summer Program by frallon · · Score: 1

    Any other alumni out there who spent the summers of 1986-1987 in the basement with the mainframes? Do you remember artspeak, prolog, lisp, prolog, C++ and Professor Mullish?

  249. Creative Computing. Bring back BASIC! by Anonymous Coward · · Score: 0

    I loved Creative Computing. It was always a challenge translating BASIC from one machine dialect to another. Apple Basic used to really peeve me off because, you would add all of these nice spaces to make comments readable and without permission it would strip them out, leaving a horrible mess. Basic on the TRS-80 though was a work of beauty. Not only peek/poke/vaptrs that allowed embedding of machine language into basic for the advanced guys, but the language itself was easy to learn, easy to understand and easy to publish in magazines and extendable (as in Chroma-Basic for the TRS-80 which a good friend wrote) The computer language downfall came with PASCAL. It's impractical to teach this to a lay person an make them productive in a 15 minute setting; the whole concept of data hiding used in these structured languages only makes reading the code confusing because stuff is hidden, programs are long, lean and obscured by non-sense data types; like polymorphic ad-hoc virtualization. Try teaching that to a 7 year old.

  250. I learnt code - and then I learnt how to code. by Doghouse13 · · Score: 1

    I was taught CODE at university and on courses my employer sent me on.

    I learnt HOW to code maintaining various business systems - modifying other people's code to do whatever the business now needed, in ways that hopefully wouldn't make it harder for the next guy, sometimes being dragged out of bed at two in the morning to sort out bugs in the batch runs before the start of the next working day. Along the line I got some pretty good ideas of what was good practice and what was awful, that stood me in good stead across numerous languages, platforms and techniques. I got sent on lots of theoretical courses along the line; none of them ever taught me half as much as changing other people's code, both good and bad. And along the line, sadly, I worked with far too many people who never learned the difference.

    TL;DR: Learning a language and learning how to program are NOT the same thing.

  251. C64 - when I was supposed to learn how to type by damn_registrars · · Score: 1

    My first exposure to programming - as well as to how to pause a program - came on the C64. I had a class in middle school that taught us "how to type" on a C64, which bored me to tears. I eventually learned that I could escape out of the typing program and go back to the C64 BASIC environment - I could go back in to the typing program but seldom had the chance to do so.

    Our class was a half-hour of typing, followed by a half-hour of lunch, then another half-hour of typing. I would finish so far ahead of the typing drills on any given day that I would have extra time on my hands before lunch, so I would usually go write a trivial loop before leaving for lunch. Almost invariably I would get back after lunch to find that the teacher had reset my computer. This wasn't all bad, though, as it gave me something to do in the second half.

    --
    Damn_registrars has no butt-hole. Damn_registrars has no use for a butt-hole.
  252. AOL "Hacks" by Anonymous Coward · · Score: 0

    Back in the 1990s there were all of those AOL hacks that allowed you to do crazy things with your fonts, access hidden areas of the program, I forget most of the details... Anyway, someone posted the source code for one of them and it was VB5 or VB6. I downloaded both the IDE and the code and started looking around. At first I could only do things like changing the text of the forms, then I started experimenting with VB6 by itself and doing basic math and making message boxes with the results and so on.

    I'm really surprised I got so far, back then I didn't know how to debug or walk through code, and I always put "On Error Resume Next" at the top on every method. I somehow made things work.

    Wish I was forced to start off with C++, as unlearning bad habits was a pain when I eventually made the switch, but those were the days!

    1. Re:AOL "Hacks" by Anonymous Coward · · Score: 0

      I learned the same way in 1996. Remember AOHell, Magenta, Pepsi, Fate, and Havok? Those were the good old days.

  253. MSX Basic by miknix · · Score: 2

    I started when I was around 12 years old, on a Philips VG8010. I believe my friends had 386 PCs at that time. I did not have a lot of games on tape so I started reading the computer user's manual (which teaches programming). The book was a really good introductory material because I managed to learn pretty much everything by myself ... well except sprites, which was only a few years later that I actually managed to understood how they worked :P

    Nobody else here starting with a MSX ??

    1. Re:MSX Basic by Anonymous Coward · · Score: 0

      Here I am! our stories are almost coincident (same starting age, same machine model, same problem of too few games I bought...).

      I think that the mix of graphics + sprites + music + good manuals of MSX (and Spectrum/C64/other machines as well in that period) was appealing enough to push many teenagers to start programming to make games for theirselves, then for some of them the hobby turned into a real job...

      Being an MSX owner, I also appreciate its active users community and their "dev contests" who are basically a good excuse to build new MSX games. Definitely a die-hard hobby for them!

    2. Re:MSX Basic by Anonymous Coward · · Score: 0

      I did. I bought a Goldstar FC200 when I was 14 yo. Started learning basic using the manual that came with it, then learnt asm.

    3. Re:MSX Basic by Anonymous Coward · · Score: 0

      Hi!
      I first banged out small programs on a ZX81, but thankfully graduated to an MSX after about 2 years of trying to get the little shitty black box to do anything decent. I suspect my parent took pity on me and got me the MSX.
      I would have preferred the C64, since that had games; at school the other kids were swapping cassettes full of games.
      Since the MSX was less popular (only one other guy had one were I lived), there was very little in the way of games available - so there was a lot of time left for coding.

    4. Re:MSX Basic by miknix · · Score: 1

      Pretty cool! One question, do you still have your programs? I always wanted to convert my tapes to flac audio files but I never found the time..

    5. Re:MSX Basic by miknix · · Score: 1

      At least that one had proper directional keys.. Even if I grew up using them, I never got used to it. :P

    6. Re:MSX Basic by Anonymous Coward · · Score: 0

      Actually there's a couple of dusty tapes in my drawer, but those small programs would look embarassingly crappy for today's standards...

      On some rainy weekend I could try the digital conversion, I'd like to try the tape features of OpenMSX ( http://openmsx.sourceforge.net/manual/user.html#tapewav ). Long time ago I successfully tried some converter for MS-DOS (wav2cas? msxtap? msx taper? I don't remember exactly).

      (not sure if you already know them, but I'd like suggest a couple of nice websites to visit: http://www.msx.org and http://ww.nlmsx.generation-msx.nl/ )

  254. curiosity by l3v1 · · Score: 2

    It's really simple: I was curious. The first time I saw a computer I couldn't help myself, I had to find out what you can do with it. And there was no turning back. It also helped that since I was a 6 grader we had after-hours optional computer classes in school, which wasn't usual back then. My first pc was a c64, as fÅ'r many others. I've been using, learning of, or working on computers continuously since then. The point is, you have to make programming interesting for youngsters to care, otherwise they'll just stick to simply using devices. And today this is harder then most would think. We don't have the interesting-factor anymore to make coding fun, since pcs and all kinds of devices are too common now.

    --
    I am putting myself to the fullest possible use, which is all I can think that any conscious entity can ever hope to do.
    1. Re:curiosity by wakeboarder · · Score: 1

      LOGO, BASIC, TI-84, C, Visual Basic.

  255. Apple Suicide Program by Anonymous Coward · · Score: 0

    10 FOR I = 1 to 16384
    20 FOR J = 1 to 16384
    30 POKE J(I)
    40 POKE I(J)
    50 POKE -J(-I)
    60 POKE -I(-J)
    70 NEXT J
    80 NEXT I
    RUN

    Wait for the computer to blow it's brains away (requires hard reset, pulling power plug, waiting for 60 seconds for all capacitors to drain to get it to boot back up).

  256. applesoft basic book by D1G1T · · Score: 1

    My 8th grade shop class had a Bell & Howell "Black Apple" II+. My instructor lent me a really great book on AppleSoft BASIC. I remember sitting at home with the book, my brain on fire, scribbling code on paper, and then taking it in the next day and typing it in expecting wondrous things to happen. But, of course, none of it worked right away. I'd like to find a PDF of the book somewhere. None of the net copies of various AppleSoft BASIC manuals from the day seem to match. I think it had the old multicolor apple logo on it. And I remember it being very fun in it's tone, unlike the very dry business-like manuals apple produced later.

  257. Mattel by Anonymous Coward · · Score: 0

    A Mattel Aquarius- I programmed a star cluster gravity simulation from an article I saw in Scientific American. Dots roaming around a screen. Fun but lost interest trying to get a stable starting config on the stars trajectories.

  258. TUTOR on PLATO 1976, Florida State University by Anonymous Coward · · Score: 0

    TUTOR language on the http://en.wikipedia.org/wiki/PLATO_(computer_system) That's possibly a picture of me at FSU School of Business, or if it isn't, it might as well have been.

    From November 1976 at age 12 all through middle and high school, I literally ran to FSU every day and stayed on their PLATO system until midnight when they shut it off. My first program was to make a frog jump to where the user touched on the screen. The TUTOR language was mainly for educational software but was fully capable of writing fun games, with raster and vector graphics.

    Sorry for AC, don't have my slashdot password here and didn't want to reset it.

  259. LPC by Anonymous Coward · · Score: 0

    I think most of us did some sort of basic, qbasic or off shoot on a commodore or an Atari first, but it wasn't until I was in college and played the first generation MMORPG -> MUDS (Written in C/ LPC) that I received my first experience programming for purpose.

    After reaching the highest level on KOBRA (A Star Wars Mud) you were granted access to be able to program/build monsters, areas, and even parts of the engine (called the MUDLIB (Multi User Dungeion Library)

    Some of the best programmers I have ever known happily donated their time and energy to create a free place for people to gather and spend their time.

    By the way, 20 years later, Kobra Mud is still going strong. Google Kobra Mud.
    ~Stormrider

  260. PDP 11 by Duhavid · · Score: 1

    Started in Secondary school, 8th grade.
    Basic on a school system, not sure what it was, i think an HP for a bit till they delivered the PDP 11. I think it was a /40.
    Teletypes and teleprinters.
    Hello 130, 3
    ( I remember that!!!!! )
    They upgraded to another PDP 11 later, I remember it being a /70, but someone else remembers differently.
    Did the class assignments, learned Basic, Fortran, Pascal, PDP assembly ( won a "write a shorter routine than the prof thing" ).... Did a compiler course.
    Mom got a Vic20 for me and my brother and sister.
    Then I had to enter the real world, worked for a time, then went to Jr College, did pascal and C on Apple II's.
    Moved on to C++ after college, then added VB, C# and VB.net ( where I am currently stuck ).

    --
    emt 377 emt 4
  261. My high school was cool by pjwhite · · Score: 1

    My high school (ca 1972-1975) had a computer lab with 3 or 4 desktop programmable calculators. I think they were CalComp or Monroe. They had a system where you could write a program on one to three punch cards that the calculator would read in and execute. The punch cards were standard IBM size, but they had pre-perforated holes that you would push out with a stylus on a special card holder. You could fix a mis-punched hole by gluing the chad back in place.
    I spent a lot of time learning all about those machines and exploring their limits. I wrote many programs that used the maximum number of instructions possible, and learned a lot about program optimization that way. I discovered some undocumented op codes that allowed some interesting printer operations and wrote a program to print sideways banners on the tape printer.

  262. Comment removed by account_deleted · · Score: 1

    Comment removed based on user account deletion

  263. IBM 1620 by jtara · · Score: 1

    IBM 1620, junior year of high school (1971, Cass Tech, Detroit, MI). I took an elective computer programming class. (And 8 semesters of Electronics, complete with motor-generator lab, so got a wide exposure to then-current and not-so-current technologies...)

    Machine-code punched on punch-cards, one instruction per card. Decimal (BCD, actually) machine. Instructions were strings of decimal digits.

    After we learned machine code, they let us use Fortran II.

  264. Code =/= embezzle. by Anonymous Coward · · Score: 0

    Those guys could prototype the theft of up to 300 dollars from a Scientology Org with cobol or fortran.

  265. Motor-generator lab by jtara · · Score: 1

    BTW, for great fun, put a bunch of high school kids with minimal supervision in a motor-generator lab with the possibility of wiring-up a series-wound DC motor:

    http://www.wisc-online.com/Objects/ViewObject.aspx?ID=IAU12508

  266. CDC, then HP by opentunings · · Score: 1

    I started in a FORTRAN class on the university's CDC-3600, with punch cards and overnight turnaround of course. Eventually I'd spent enough time hanging around the Physics department that they let me try out the HP 9100-series (9100B, I think: I remember it had TWO memory pages of 192 instructions each). In retrospect, the wallet-sized cards to store your programs were very reminiscent of what a lot of subway systems now use for paper farecards. I tried but failed in my attempt to burn out the plotter with my planetary orbits program, for which I was grateful at the time.

  267. Tandy CoCo2 with Basic by zerofoo · · Score: 1

    As a kid - Tandy CoCo2 with Basic - this learning was trial and error learning.

    In High School - IBM PCs with Borland Pascal. This was formal programing instruction with emphasis on algorithms and complexity theory.

    In College - a formal CS curriculum in Java/C/C++ and Sparc assembly.

  268. I pulled a Bart Simpson by rkchang · · Score: 1

    You know that opening scene in the Simpsons intro where Bart is scribbling a bunch of sentences over and over again? My first clue that programming could be profitable was from an incident like that. I had started to learn BASIC on my dad's Apple II+. Due to some stupid classroom punishment, I had to write some stupid sentence 200 times. I went home and put in 3 lines of BASIC code to automatically generate and print that sentence 200 times. This is what I turned in. My neighbor saw this, and a couple days later, he paid me $5 because he had a similar punishment. I happily accepted the cash and punched in the code. The rest is history.

  269. Second-generation by dkleinsc · · Score: 1

    My dad worked on the old-school IBM mainframes (CICS, Cobol, etc), and taught me a fair amount of what he knew for his work, as well as some BasicA and later some C. After that, I was hooked, and started messing around with the IBM PC that my family had lying around but weren't using for anything.

    So I benefited, from the beginning, from parental support and training. I'm not going to demand that any kid I may have in the future gets into it, but I do my best to mentor those of my friend's kids who are thinking about a technical profession.

    --
    I am officially gone from /. Long live http://www.soylentnews.com/
  270. Commodore BASIC by David_Hart · · Score: 1

    I learned using BASIC on a Commodore PET. My dad bought it when I was around 10. It didn't come with any games, but he bought a programming book that listed the BASIC code for a bunch of applications and games. I went right to town programming in the games (i.e. moon lander, hangman, etc.).

    My job doesn't include programming, unless you include configuring routers and switches, but knowing how to program has come in handy for writing scripts, etc.

  271. Atari 800XL by xdor · · Score: 1

    Parents only allowed me play games for an hour. However, if I was programming BASIC, I could use the computer for as long as I wanted!

  272. Danny Dunn and the Homework Machine by chiangovitch · · Score: 1

    "Why", not "how". I read this in 3rd grade, probably around 1967 or '68? Piqued my interest in computers that lasted and that I finally got to explore senior year in high school. One thing I /think/ recall from the plot is suspicion that Danny was cheating by using the computer, but it turns out he needed to undestand the problems & the solutions better than the other kids in class in order to be able to do the programming. http://www.scholastic.com/browse/book.jsp?id=854

  273. HP2100A by spitzak · · Score: 1

    Learned BASIC in high school on ASR-33 teletypes connected to an HP2100A computer with 16k-word of core memory. I believe the machine was already obsolete before I started with it.

    Very primitive BASIC with no string variables, leading to some pretty unintuitive user interfaces, such as picking letters by number to print banners. All 4 teletypes and the "control teletype" (which could not be used, a stupid limitation of the software), and the rack holding the computer were in the same small room, and it smelled of the machine oil and a bit of electrical burning. Storage was paper tape, you had to punch it on the teletypes, but fortunately could read it on the high-speed photo tape reader in the rack. There was also a punched card reader in the rack which was used by exactly one teacher to score tests, this was a big Fortran program I think.

    I also learned assembler on this machine, since that was the only way you could write programs that understood text. It could only run one such program at a time so nobody could use Basic during that time. The best one printed letters as patterns of holes into punched tape. The most complex I wrote actually did cooperative multitasking so that users could run at all 5 terminals, it built a tree of questions that it printed and the user could answer, the answer (well actually whether the first letter was odd or even) chose the next question. When the answer did not exist yet it asked the user to type in a new question, or they could type in a number of another node to make arbitrary graphs.

    Later the school got a PDP-11 with video terminals running RSTE. Also at that time home computers started showing up but my family did not get one for a few more years.

  274. Tenet 210, model 43 teletype by Anonymous Coward · · Score: 0

    My father worked for Pac Bell in the 70's, and I'd occasionally go to work with him. One of his colleagues introduced me to the BASIC interpreter on a Tenet 210, and I got started typing in programs from a book entitled, "My computer loves me when I speak BASIC". Eventually I started playing with 6502 instructions on a KIM-1, and later graduated to a TRS-80 Model II, then Model III, then Model IV, and then CP/M; that's about the time Turbo Pascal came out (for CP/M), and each time Borland put out another compiler, I bought it, installed it, and learned the language. Turbo Pascal, Turbo C, Turbo Prolog (OUCH!), Turbo C++ (anyone remember ddvt's?) incremented me through the languages. I kept waiting for an ADA compiler from Borland because my professors in college said ADA was going to be the only language you'd get paid to program in. But I fell in love with C++ in the late 80's and I've been getting paid to use it ever since. Funny, but its a rare person I run into who has even heard of ADA.

  275. A Little More Circuitous Route by Anonymous Coward · · Score: 0

    As a young lad, I did not have a computer (in fact, I was forbidden by step-father from owning one). I checked book after book out from the local library, and learned to program in that manner. First language I learned was BASIC, then came C.

    In fact, I would write and debug programs on paper. On the rare occasion I was able to have access to a computer, I would type these program in from memory, and found they usually functioned as desired the first time. If only my programs these days were as reliable...

  276. Apple ][+ and BASIC by Philotomy · · Score: 1

    I started off learning BASIC on an Apple II+ in elementary school and on a Kaypro II at home. Went on to teach myself C, C++, Java, et cetera. Was a poli sci major in college (talk about a waste of time and money). In my first job (inside sales), I fell into programming because I taught myself ObjectPAL (for Borland Office) and wrote an order entry and management database app that changed the way the company worked. I decided maybe I should look at programming as a career. Got a job as a professional programmer (working with C/C++) about a year later and never looked back. Never stopped teaching myself new languages, either. Still do it.

  277. Assembler by Anonymous Coward · · Score: 0

    When I was in school my father took an early retirement and brought home a computer as part of his serverance. It had Assembler on it and if I was going to play any games, I had to program them myself. So in 4th grade I had to teach myself Assembler from the included manual.

  278. One time at Band Camp ..... by Cypher,+Lou · · Score: 1

    we set fire to all the computers

  279. Who cares how did we learn, what matters... by Chemtox · · Score: 1

    Who cares how did we learn, what matters is how can be best done today.

    I'm not too fond of the memories of long nights banging my head against the White Book--but then again, it was only a high school hobby. Still, I wish someone would've steered me towards a more friendly introduction (and language), not to programming, but to problem solving with computers, AKA Computer Science. MIT's "Introduction to Computer Science and Programming" looks like a dream come true.

  280. Back of the Timex Sinclair 1000 manual by Anonymous Coward · · Score: 0

    I taught myself around the age of 8 by going through the code samples in the back of the Timex Sinclair 1000 manual, whilst sitting in the garage at night using the Sinclair hooked up to a 13" black & white TV. Once I went through the samples I then started writing my own code to do some animations using the basic graphics capabilities of the Sinclair. One night my older brother walked in to see what I was doing and had me teach him. Once he learned we then started to compete with one another to see who could create the best animation of a tank rolling up to a town and blowing it up, or of a missile flying in and blowing it up ("America, Fuck Yeah!").

    That was enough to get me hooked so I then started scouring libraries for code sample books and my Elementary school happened to get in two books filled with game samples. I went through both of those books before moving to another city. In Middle school my Dad got a 286 at which point I started teaching myself how to create elaborate Batch scripts using the DOS manual and eventually bought a book that covered advanced scripting techniques. Using Batch files my brother and I started competing again to see who could create the best text RPG.

    While in High School iD Software's Doom was released quickly followed by free/shareware editing tools and I got sucked into creating maps which led to an obsession with creating mazes on graph paper and quickly evolved into creating custome dungeon RPGs combining mazes on graph paper with various dice (D4 & D20 mostly). Towards the end of High School I started taking college courses on programming, learned Assembly, C, C++, Visual Basic, and Unix scripting. Then I tried to get a job and couldn't get a single interview anywhere due to a lack of "experience". Instead, I spent 8 years doing temp work before going in to IT administration roles. I haven't written a single line of code in over 15 years outside of the occasional Batch script to automate my work.

  281. Heh... by Svartalf · · Score: 1

    Sinclair ZX-80 basic and Z-80 assembly on one of the first overseas kits from Sinclair.

    --
    I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
  282. I wanted to know how a program was made by Anonymous Coward · · Score: 0

    I asked someone how a program was made and they replied "they write them in progamming lanquage" I had no idea what it was so one day in the book store I was at the computers section and saw they had programming books. I picked up the first one in my hand and it was called "Teach yourself Java 1.2" I asked my mom to buy it for me and when I got it home I started learning Java at first. Then I moved onto C and I also learned BASIC and Javascript and HTML.

  283. In my day... by Anonymous Coward · · Score: 0

    ...we learned to code on the Antikythera Mechanism and we liked it! We LOVED it! Oh, happy day, I'm programming a box full of gears and I couldn't be more elated!

  284. Very Interested, Not Very Good by Anonymous Coward · · Score: 1

    I started with Visual Basic when I was in 10 or 11. Then I used RPG Maker, this Russian program that only worked in English through an illegal translation. I was super into programming, and I made a lot of cool (at the time) things, like an instant message program to use with friends, some incomplete games. Then, I got to private high school and there were no computer classes (despite my public school having a great one). I took college courses -- passed them all with an "A", but soon realized when I went out for a job that my college courses were taught by imbeciles and that getting "A" grades didn't actually teach me anything. Technically I "know" Java, but you wouldn't want me anywhere near your code. I love to program, I love to create games.. I just suck at it.

  285. C64 by Anonymous Coward · · Score: 0

    Started on a C64 with BASIC. Had a fat green book with some code examples and instruction. I toyed with this until I was able to design my own BBS (Cemetery Gates). During this process I also learned asm and ended up writing the file transfer routines with it.

    All in all it was thinking of things to design that offered a challenge, not to mention much trial and error.

  286. Took a class on basic ona tops-20 system by Anonymous Coward · · Score: 0

    I was in high school and somehow heard of this class and took it. My first program was a basic progam which prompted you to guess a random number. If you guessed low, it would print "Higher" and if you where higher it would print "lower". I recall trying to impress a girl I liked with this program :-)

  287. Teach Yourself Cobol + Filetab + RPG + APL by hughbar · · Score: 1

    As an ancient person, I learnt COBOL from a book but I didn't have a computer. Then when I got near a mainframe, I taught myself filetab: https://en.wikipedia.org/wiki/Filetab and later stll I used RPG2: https://en.wikipedia.org/wiki/IBM_RPG, later still Basic on a mainframe via a TTY33 [of course] and also the ineffable APL: https://en.wikipedia.org/wiki/APL_(programming_language) which prepared me for my career in Perl. If you think Perl is unreadable, try APL, but get off my lawn first.

    --
    On y va, qui mal y pense!
  288. Binary on a DIGIAC 3080 by gznork26 · · Score: 1

    It was 1969, and my high school had a desk-sized 'training computer' with bat switches for telling it to load the paper tape with the assembler on it, a card-reader/punch and 4K memory on a drum. After learning binary, the second language I learned was the beast's assembly language. The assembler program backed itself out of memory as it ran so it could load the assembled result. After that, it was FORTRAN, but our teacher had to bring the decks to the college to run them for us.

  289. Low level cycle-accurate assembly by Mask · · Score: 2

    When I was in 7th grade, a friend of mine went to a course. He showed me flow-charts and how to program PL/I. These were the last days of punch-cards where you had all your best to write your code bug free from the start, and flow-charts really helped organize your thought. I was so excited about it that I would draw floating-charts for almost every daily operation, such as using a public phone.

    Every day, on my way from school, I would pass near an electronics store with a VIC20, and later a C64, on display and stare at the window. After saving all the money I could, and after two summer-jobs, I managed to buy a C64 with a floppy disk-drive. Quickly I realized that Basic was too slow for almost anything, so I started programming in assembly. Assembly was great, a bit ugly but fast and compact. Once I knew assembly, I was ready for the next step.

    Both C64 and the floppy-drive came with a basic schematics, so I learned to program both at a very low level. I liked the ability to control the things in an accuracy of one cycle. I remember that C64 had a single-colored frame at the edges of the screen, and using the cycle-accurate documentation I was able to draw stuff on the edges of the screen by flipping the color in-sync with screen's ray. It was very low-res, yet impressive. When my friend demonstrated my program to our computer class teacher, the teacher would not believe him that I wrote the program.

    Nowadays the CPU and the memory units are so complicated that it is impossible to be cycle-accurate like with the 1MHZ C64. Today, with all the abstraction layers and pipelines you never really know what is going on the inside of your hardware. I miss the fun of the old days, but I wish I would had the drive, back then, to meet girls or to hang-out with friends. Instead, I was stuck in front of my computer most of the day trying to write a compiler. I was trying to convert a bit-map to a sequence of assembly instructions that would draw it on the frame, but then era of the IBM-PC clones exploded into existence.

  290. Reading the damn manual by mattmarlowe · · Score: 1

    Back when electronics or anything new/important came with massive well written documentation...
    2nd or 3rd grade, Ti-99/4a, Basic Programming Book that came with the computer
    Litterally the first non-childrens book I ever read
    It took me 2 years to get through the entire book
    By 4th-5th grade, I was programming my own clones of whatever was the popular game of the day on a timex sinclair w/ 16K ram extender
    Compute and similar magazines were a great help
    My dad was disappointed that I had stayed with basic rather than learning assembly language....
    Later got a PC and learned C

  291. Pen and paper by hercludes · · Score: 1

    Back about four years ago or so when I was thirteen, I got a book "C++ all in one desk reference for dummies." I didn't have a compiler or the internet to get one, but that did not deter me from trying to learn how to program.

  292. Survey link by aaronpk · · Score: 1

    If you're up for it, please add your comments to the actual survey: http://caseorganic.com/how-did-you-learn-to-program Commenting on this post will unfortunately not include you in the survey results.

  293. 1983ish by MikeQuickenton · · Score: 1

    Comodore PET in Junior High. BASIC. Pretty progressive for a Junior High School in Cohoes NY. My final project was ASCII art animation. A Spaceship flying across the screen, then finally blowing up.

  294. 1988 by roman_mir · · Score: 1

    Well, 1988, my grandmother sent us another parcel 12000 km across the globe, it had a bottle of sunflower oil, some other stuff and a book. I remember this, because the bottle leaked and that book was smelling of sunflower seeds. It was a story, that a kid would have to read and solve puzzles in it and learn computer programming techniques to solve the puzzles (decode an encrypted paragraph, write an algorithm to jump to the right page, do something not to get killed in the story, etc.etc.) I don't remember the name of the book, but I remember that it was teaching Basic :) I wrote many games completely on paper, I had to wait 3 more years to get my hands on an actual computer.

    1. Re:1988 by Anonymous Coward · · Score: 0

      if you were a kid in 1988 - which would make you roughly 30 today - how have you managed to survive so long without even a rudimentary understanding of math, science, economics, or politics? even more frightening how on earth could a math-flunkie such as yourself manage to con people into paying them to write code?

    2. Re:1988 by Anonymous Coward · · Score: 0

      roughly 30, and you are complaining about somebody else's math skills?

    3. Re:1988 by Anonymous Coward · · Score: 0

      if he was old enough to read in 1988, he would have likely been at least 6 or 7. either of those would put him at around 30 right now. even if he was some kind of wunderkind who could read at age 4 in 1988, he'd be around 28 or 29 today. and of-course those are generous numbers. considering he is a failure of a mathematician and can't understand basic science or economics he was probably more like 12 or 13 in 1988 which means he is in his mid 30s instead.

    4. Re:1988 by Anonymous Coward · · Score: 0

      did this same grandmother also send you the text that led you to accept ron paul as your personal lord and savior, and to look to fascism as the only way forward for humanity?

  295. BBC BASIC by Anonymous Coward · · Score: 0

    I remember our maths teacher showing me, on a BBC Model B:

    10 PRINT "HELLO"
    20 GOTO 10

    and then
    10 A=0
    20 WHILE A 10
    30 PRINT "HELLO"
    40 A=A+1
    50 ENDWHILE

    from then on I taught myself from code in magazines (Acorn User, mostly), and messing about with BASIC on an A4000. Now I program for a living :-)

  296. My daughter wants me to teach her by Mask · · Score: 1

    Now my 7 years old daughter wants me to teach her programming, and I don't know what to do. She is so eager, and I really like to see her eyes shine when she understands one more thing. But if she will start to program she may have the same fate as I, no interactions with the opposite sex before the end of high-school.

    I wanted to joke and say "maybe that is a good idea, she would not meet boys!", but that is so untrue. To be a healthy adult, one must have interactions with the opposite sex in earlier years. Not all interactions are positive, in the short term, but with the right parental support they can build a stable personality. It does not mean that it is easy, but I do believe that it is the right thing to do.

    My love to programming had ruined my adolescent fooling around with girls, which I regret, and I don't want her to do the same.

    1. Re:My daughter wants me to teach her by Anonymous Coward · · Score: 0

      Don't worry about it so much. I started at age 8 and my social skills never lacked. Each person is their own person and regardless what you offer up they are going to figure out the social stuff when they want to figure it out. Just a friendly heads up from one father to another.

    2. Re:My daughter wants me to teach her by hendrikboom · · Score: 1

      With the number of male geeks she'll encounter, ...

  297. Thanks dad. by technomom · · Score: 1

    This is going to date me. When I was somewhere between 8 and 10, my dad took me on my day off to the high school where he taught math. In addition to being the math dept chair, he also was the main computer teacher. Back then, "computer" meant a MARK something or other timeshare computer somewhere offsite, if memory serves correct, somewhere at Rutgers U. It was hooked up to the teletype at the high school.

    Anyway, dad sat me down, showed me how to use the teletype to write some crude BASIC programs. ("End each line with RETURN, BACKSPACE, RUBOUT, RUBOUT, RUBOUT" - let's see if any of you older kids recognize that) I figured out how to get it to do some basic math problems, adding, and then discovered IF-THEN and looping. So, I taught it to count to 10...printing out the numbers from 1 to 10, one for each line on the teletype. So then, I tried to make the limit 100....more paper. Then, I went to do something more fancy and messed up the end condition checking....and the teletype started spewing paper. My first bug. I figured out how to stop the program after a few panicked seconds. Anyway, I did save the program to punched tape and came back weeks later and was thrilled to see that I could load the program up and it still ran. Science!

    Some years later, my dad made sure we were the first family to get a TRS-80. I spent the summer fighting for time with my brother. I wrote a Hangman program from scratch, complete with 500 word dictionary and crude hangman ASCII animation and showed it to my friends. I definitely had the programming bug.

    Thanks, Dad. It's (mumble) years later, and I'm celebrating my 29th year in the IT industry. I'm so glad he taught me how to program before I ever learned that "girls don't code".

  298. Work with me, people by Latent+Heat · · Score: 1

    OK, OK, so you started with a plug-programmed card sorter. Play along here with the Dana Carvey "Grumpey old man." There must be stuff about that system you can think of that resulted in personal injury that you simply shrugged off because it was in "olden times." Maybe something to do with the belt drive on the pulley . . .

  299. A cheap, old Commodore 64 by empty_other · · Score: 1

    Many nice stories here.

    My parents bought me a cheap and old commodore 64 in 1992, with no games and only a user manual. It went the only way it could; i made my own fun (sprites, music, basic games). Later they got me an old IBM pc with MS-DOS, and i used the same knowledge in QBasic. I wanted to learn everything about programming. I searched libraries at school, i joined anything computer related. For this i got a good understanding of VERY BASIC WORD features. Jeez.. Seriously, there was nothing more advanced to be found. Nowhere. And i cursed that small spot of technological backwater internet-free spot of earth, while scouring every computer magazine i found.

    Finally i started in High School in 2001, got internet-access, found how i could make my own Quake mods (i got the game and mapping tools trough a game magazine in my pre-internet era) and laid the foundations for my path of Destiny.

  300. When did policy change to allow interpreters? by tepples · · Score: 1

    WHAT?? You can put a number of different interpreters on an iPad with a few taps.

    Then Apple's policy must have changed sometime in the past four years since it removed a Commodore 64 game from the App Store when it found that the virtual C64 could be rebooted to the BASIC REPL. Because I'm not currently a paid member of the iOS developer program, I'm not privy to changes to the App Store Review Guidelines. When did the Guidelines change to allow things like Codea and Python for iOS?

  301. Qbasic by accident by Spy+Handler · · Score: 1

    Dos 6.0 had a nifty text editor named... EDIT.EXE.However, in order to use it you first had to load Qbasic.sys (or something like that). So I loaded Qbasic to run the text editor (so I could edit autoexec.bat files easier) and then started playing around in Qbasic.

  302. I just DID it. by mha · · Score: 1

    Fortunately I did not know that one can philosophize about the why, how etc. etc. (ad infinitum) of "how to program", so I just DID IT.

    BASIC, then Assembler (hand-coded into machine hex code, I only had a disassembler program but no assembler so could not write text assembler statements). I learned assembler by learning about Boolean logic and the underlying electronic circuits, at some point it just "clicked".

    My advice is the same as with all "how to... (get rich, become successful, find the love of your life, etc.)": If you are reading THIS discussion because you want to know how to program, YOU ARE DOING IT WRONG. You should be DOING IT, RIGHT NOW.

  303. VAX Cluster by Andover+Chick · · Score: 1

    Learned basic on a VAX cluster at Babson College circa 1980. First program was on a green bar paper terminal (no CRT). About the same time did basic on a Trash 80 w/a cassette drive. I'd also consider working on circuitry on bread boards a type of programming. Did that circa 1974 in middle school electronics class.

  304. Learned more important things than programming by Grismar · · Score: 1

    When I first learned to program, I didn't own a computer, nor did I have access to one at home. I wrote GFA Basic programs in a lined paper notebook, saving it up for the rare time I did have access to an Atari 1040 STF at a friend's house. Learning GFA Basic was nice, learning to think about code and imagining how it would work without a compiler on hand taught me much more.

    The first system I had continual access to was a 8086 XT with DOS 4.01. Learning GW Basic was nice, learning how to juggle around code to get the most out of the limited space afforded by the language taught me much more.

    Running out of options on Basic, I started playing around with debug.com. Learning machine code was nice, learning about microcomputer architecture by manipulating it up close taught me much more. In the end, replacing command.com with my own is one of my fondest programming memories.

    You get the idea. MASM taught me assembler, but also the value of a good build and deployment process and the pain of multi-threading in the form of TSR's. Then Borland Turbo Pascal 5.0 taught me Pascal, but also object-orientation and modular software design in the first glimpse of an IDE. Then AutoLisp in AutoCAD 2.something taught me LISP, but also the functional programming paradigm and how math and programming had more in common than I ever suspected. A few more languages got me through the first year of college, finally bringing it all together in a coherent story; filling in the blanks and allowing me for the first time to understand the computer in its entirity, from semi-conductors all the way up through machine code, parsers, compilers, higher level languages and beyond.

    Then Delphi followed and introduced me to rapid application development and visual interface design and I don't think a year has passed since in which I didn't learn at least one new programming language (the latest being Scala). Because if teaching myself how to program (and getting a little help at university later) taught me one thing, it's that you're never done learning in the field of software development. And the true lessons aren't in learning how to code, they're in understanding why someone designed a language and what it tells you about systems, software and their purpose.

  305. BASIC for all by Anonymous Coward · · Score: 0

    After reading the posts, it is clear that BASIC is by far the most succesfull 1st programming language. And people still hates it.

  306. Actually... by fisted · · Score: 1

    this isn't an "Ask Slashdot".

  307. Taught myself Basic on RSTS/E... by bessie · · Score: 1

    When I was around 13 years old (around 1978), my brother took me up a room at his college (UC Santa Cruz) that you needed a special key for, because it held one of the computer terminals spread around campus, connected to the university's DEC PDP-11/45 running RSTS/E.

    It was a dark, mysterious little room, with this mysterious Datamedia terminal wish mysterious glowing characters and flashing cursor on the screen. I was fascinated.

    He showed me how to play some games on it (I think the first one was 'trek', text-based of course). It was amazing, and seemed terribly high-tech and complex to my young mind.

    A year later, someone at my Jr High told me about playing games on the university's computers, and I remembered that time when I'd done that; they told me how to login to the games account:

    HELLO 5,5

    And off I went. The first game I played was "Animal" (you know, it guesses what animal you're thinking of). I played for awhile, but then got bored and wanted to look at other games. But... I couldn't figure out how to end the game! "end"? no. "stop"? no. "quit"? no.

    Frustrated, I told my friends back in Jr High, and they told me of the Magic that was "Control-C".

    I went back, played more games, and decided then and there that I wanted to learn how these things worked!

    I bought a Wiley Self-Teaching Guide to Basic. I bought "Introduction to Computer Logic Circuits and Boolean Logic" (or something like that). I bought "Introduction to Pascal". Off I went. I still like programming, these 37 years later, amazingly enough.

    - Tim

  308. Windows 7 by howdyhooman · · Score: 1

    I've always been a big advocate for programming, I helped program windows 7! how to get windows 7 free

  309. PL/1 by methano · · Score: 1

    We didn't have no stinkin' computers at my high school. But when I got to college, they had one. I took a new kind of calculus course where you used programming to learn the conceptsof calculus. So we learned a little PL/c, a version of PL/1 for sissies, and used it to approximate a Riemann sum. After that the professors didn't quite know what to do, so we didn't program much more for calculus. Then we learned Fortran in p-chem. I became a chemist.

  310. BASIC on TRS-80 by inkswamp · · Score: 1

    A friend and I learned BASIC in 5th grade from older friends using a TRS-80 at a Radio Shack in the local mall. The employees there used to allow the area kids to come in and use the floor models for free (because back in the mid-80s, none of us could afford such a thing.) Eventually, the schools started investing in TRS-80s and set up fledgling computer labs for students to use and that's when things really seemed to take off. I spent a lot of time in front of that green-on-black screen teaching myself how to code and it's amazing to this day how much of what I taught myself is still relevant. Styles and syntax come and go, but the underlying concepts seem to be fairly static.

    --
    --Rick "If it isn't broken, take it apart and find out why."
    1. Re:BASIC on TRS-80 by bessie · · Score: 1

      Object-Oriented Basic! Wait... :-)

      - Tim

  311. 1961 Evening Course in Fortran by wbean · · Score: 1

    In 1961 I took an evening course in Fortran for physics students taught by a volunteer from MIT. We were promised a chance to actually run our programs at the end of the course, but that never happened. I last used Fortran in 1971, when I maintained a subscription fulfillment system for a student-run academic journal. The print routines were in 1401 assembly language, but we'd lost the source and only had a binary deck of cards to work with.

  312. binary in 1972 by epine · · Score: 1

    My father taught me binary in 1971 when I was eight years old. He showed up one evening with black marbles and the bottom half of an egg carton. He had learned this from one of the original APL greybeards who attended his church. My father having himself dropped out of engineering to switch to theology had an interest in these things. Binary itself was easy (easier than learning to read an analog clock face). What took another week or so was puzzling out that binary was just a representation of the abstract notion of the integers. I wanted to learn more about computers, but hardly any books existed. Two years later I had pestered my father enough to bring home four books from the University of Calgary library. He said he had brought most of the books that seemed even valuely accessible. Most of these were stupid books full of pictures of shiny IBM consoles. I pitched them only my bedroom floor in disgust.

    One actually taught some programming, mainly from the flowchart perspective. I tried to write a flowchart of getting up in the morning to go to school and all the decisions involved. This quickly got out of hand (I was fated to never become good at getting up in the morning). I concluded a month later that flowcharts were intellectually damaged: too bushy for the paltry logic they managed to encapsulate.

    In 1976 I got my hands on 8008/8080 datasheets. The dumb thing took three power supplies and was far to expensive for me to ever own. I also soon acquired a TTL data book and realized I could design my own micro-controller from discrete logic. I designed such a thing on paper in the back of English Literature class. I like literature, but she was very boring and she never told my parents when I didn't hand in my assignments, so as far as I was concerned this class was a spare.

    My grade six math teacher had allowed four members of the class to work at our own speed, after testing us with arithmetic quizes on a sequence of recorded tapes. I very nearly finished the last and fastest tape (very fast) but got ahead of myself trying to multitask the current question with a question I had missed. I didn't want less than a perfect score and wasn't mature enough to let that one question go. Then I jumbled five questions in a row trying to remember all five at the same time. I had never experienced not keeping up in math class before.

    It was nice to be left to my own devices, but he compensated for his largess by making us write out in full nearly every darn exercise at the end of every chapter. I could pretty much read a Heinlein book on the side while doing 100 metric conversions long-hand. My progress was rate limited mainly by my pencil. By the end of the year I had completed the grade nine algebra textbook.

    If my grade seven teacher had let me stay on the same track, I would have completely high school algebra by xmas. But he insisted that I stay with the rest of my classmates doing fractions again, or some rot. This bugged the hell out of me because the jocks with talent got special attention, and math is even worse than athletics as something where you can go a lot further if you start young. Just watched Proof the other night. Hopkins: How many days did you lose? How many!!. Days? I lost fucking years.

    In 1978 I finally got my hands on more than a TI-30. My school bought a TRS-80 with 4kB of system RAM and 7/8kB of video RAM (16 rows of 64 characters by seven bits). This was to save ONE whole 1kBx1 memory chip. (The font ROM actually had lower case characters, but the memory bit that drove this pin wasn't there.) If the msb was 0, you got 64 different printable characters (not including lower case). If the msb was 1, the lower six bits controlled a 3x2 pixel block in the font ROM (making 48x128 pixels total, if you chose to treat this as a bit-mapped display).

    I was also given an SC/MP homebrew by a local electronics instructor. He taught me hex in five minutes (but neglected twos complement for negative numbers)

  313. BASIC, LOGO, etc. by antdude · · Score: 1

    When I was a callow ant, I was into Apple BASIC and LOGO, and HTML. I was into simple stuff and modifying. I got older to take computer science courses, but I didn't like coding anymore. I did like breaking stuff for SQA!

    --
    Ant(Dude) @ Quality Foraged Links (AQFL.net) & The Ant Farm (antfarm.ma.cx / antfarm.home.dhs.org).
  314. fruit company by mattack2 · · Score: 1

    We got to take some kind of computer home for a weekend in I think 3rd grade. Maybe a VIC 20. Even when I look at pictures, I can't remember for sure.

    Did some after school BASIC in 6th grade on Commodore PETs. Then in 7th grade we had an Apple II lab. 12th grade had the first Pascal programming class in high school (UCSD Pascal). Only time I remember a class changing times in high school, so I had to drop Spanish AP for programming. Muy bueno! Also dabbled in 6502/65c816.

    Then computer engineering in college. Did some z80 & 8088 stuff in classes. Now I work at this "fruit company".

  315. HTML 3.2 - Manual of Style by jameshuckabone · · Score: 1

    It was a fateful day for your hero, a one James Edward Philip Huckabone, back in 1990-something. Strolling through the Oshawa Centre in Ontario, Canada; his gifted-labelled sporadic senses trained on a book bin rank with book garbage, belonging to the frequently ailing and now amazingly transformed enterprise known as "Grand & Toy". Drawn and imprisoned by the dominant "Garbage-Picking-012-443" gene passed down by his donkey father, he reduced the padding/margin between himself and said bin. Gently cursing aside out-of-print works concerning home improvement, dating advice, car repair, etc., he foraged into an encounter with a title simply named "HTML 3.2 - Manual of Style" by Larry Aronson, and Joseph Lowery (https://www.goodreads.com/book/show/3569748-html-3-2-manual-of-style). He took this deftly priced book home and read the living shit out of it. Blither blather, blah blah blah, I'm now an HTML/PHP/MySQL/AJAX/etc. pro star and am building tools to make a particular company rich. That's what happened. Leave me alone. Leave the craft alone. Nothing to see here. Dinks.

    --
    http://www.accountkiller.com/removal-requested
  316. ZX80, 1k of RAM by Abroun · · Score: 1

    ...typing in machine code from Byte and Personal Computer News. Then a big boy computer - Apple ][+ with 48k, and the optional Z80 2nd processor that ran CP/M.

  317. Converting Between Languages by Fear+the+Clam · · Score: 1

    I first learned how to program by figuring out how to do the conversion from one form of BASIC to another. It's interesting, but I don't recommend it.

    In 1975 my mom bought an IBM 5100 for her office. It came with a cartridge of games that were written in IBM's BASIC.

    In 1985 I bought an Apple ][e to take to college. I wanted to play those old IBM games, so I printed out the code from the IBM and started typing them into my computer. They didn't work, so I bought a book on Applesoft BASIC to see what I was getting wrong. As I figured them out, line-by-line, I also learned how things worked.

  318. Easy answer! by CAIMLAS · · Score: 1

    Long nights, lots of caffeine, and whiskey. Not necessarily in that order, sometimes combined.

    --
    ~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
  319. Eight(?) weeks of lecture and hands on in BASIC by jejones · · Score: 1

    A teacher whose name I've forgotten but to whom I am very much indebted suggested that I go to a series of lectures and hands-on sessions at the University of Oklahoma in the spring of 1971. I was in tenth grade.

    On Saturdays we were guided through BASIC and the fundamentals of numerical analysis by Professor Richard Vernon Andree, and one evening a week we could sit at one of four ASR-33 Teletypes connected to a Data General Supernova running a time-shared BASIC. It changed my life. In my junior year, not having access to a computer, I wrote programs in a notebook, which I wish I still had. As a senior I took vo-tech and learned about unit record machines, the RCA 301, and then RPG on an IBM 370. I never looked back.

  320. Commodore 16 by aleph · · Score: 1

    I think I spent more time copying out BASIC programs from the manual than playing games on it ;-) (I was six or seven at the time).

    My parents noticed my interest and convinced some local guy running a class to take me (normally he only took older kids). He had a room full of Plus4's (going for slightly esoteric Commodore models here...)

  321. Teletype 33 ASR by nico60513 · · Score: 1

    I also learned to program (in Basic) on a remote system using a Teletype 33 ASR with acoustic-coupled MODEM. Where are my billions of dollars? Sigh ...

    1. Re:Teletype 33 ASR by nico60513 · · Score: 1

      And why did I capitalize modem, when it isn't an acronym? Or should it be MoDem?

  322. MicroWorlds and MSW Logo by Arancaytar · · Score: 1

    Later, TI-BASIC on a TI-83. Self-taught, I guess, with some parental instruction.

    That's pretty much all I learned until college (where I got the somewhat odd collection of Python, Java, Fortran, PHP, Haskell and TeX), though I did teach myself a few languages during college too, such as Lua.

  323. Ohio Scientific - OSI Challenger 1P D/C/W/M? by tarpitcod · · Score: 1

    I'd been into computers from a young age - and after looking over things like ZX-81's, VIC-20's, Let alone Drool-Worth Atari 8 bits,
    Dad being a Ham decided to buy a second hand computer that was for sale.

    It was a C1P. Best damn machine he could have bought. It was the original 'hackers' SBC. I mean it came with full schematics and pretty much everyone who had an OSI hacked on it, and especially the Superboard II/ C1P folks. My dads work was getting rid of an ADM-1 (Yes - 1! - uppercase only) terminal, we populated the RS-232, and a few months later I got my hands on a Decwriter LA-36.

    Getting the OSI did a few things - it got me into hardware from a young age. Want joysticks - have at it with the soldering iron wiring to the polled keyboard. Want faster cassette... See those traces hanging off that divider - have at it.

    A standard mod was a 2x performance increase. Just hope that your 2114's can hack it ( Are those 550nS parts really 550nS?) find the divider for the cpu, cut the trace, hook in a switch and hey presto - instant 2x. Oh no your tapes don't load? You should have saved them at 600 bps after you wired in the baudrate switch.

    The 'monitor' was called SYNMON. Two values on the screen. This thing was Primitive. Think of a memory mapped display version of an 1802 or KIM-1.

    0000 4C LDA
    A1 OSI Character graphics white square
    8D STA
    0F LSB of address
    D2 MSB of address - Video mapped memory
    60 RTS

    Hit . again
    Punch in 222 again
    So you see
    0222 A9
    Hit G for Go.

    C gave you a cold start and you got...
    Microsoft BASIC V1.0 rev 3.2
    (c) 197? Micro-soft - memory is fading...
    7423 bytes free

    OK

    LOAD and SAVE just turned ON the redirect from the keyboard to the serial port. So loading a basic program was like watching someone type it in at 30 CPS. Save was like watching a slow 30 CPS list.

  324. HP 2000, advanced BASIC, then CP/M, then UNIX by Anonymous Coward · · Score: 0

    I started programming in junior high school, at the same school that Paul Vixie went to.

    Hoover Junior High, in San Francisco, had a few TTY-33s tucked in a closet in the back of one of the math classrooms. These TTY-33s were connected via 300-baud modems to an HP-2000 timesharing system located on the other side of San Francisco, at a local high school, and used to run a remedial math program that could have been replaced by a piece of paper and a pencil.

    Before and after school, there was a computer club that had access to these terminals. We spent most of our time playing TREK73 (a massive program that exceeded the memory of the HP-2000 and was actually implemented by six separate chunks of BASIC that CHAINed (invoked) one another, as needed, passing control around like a basketball).

    It was possible to view the source code to TREK73 and, with the correct privileges, it was possible to modify the source code so as to grant oneself extraordinary powers; and that was my introduction to programming - modifying source code on BASIC files.

    A few years later I acquired a Digital Microsystems Z80 - about the size of a large suitcase, or a small bookcase, filled with books - 64K of RAM, dual Shugart 8" floppy drives that, together, provided access to over a megabyte of storage, and a few boxes of diskettes.

    This was my introduction to shareware - Chris Seiwald was kind enough to provide me with my first copy of MDM711, I think, a file transfer utility, and, of course, CP/M came with source code and utilities to compile and link assembler source code. I got into UART programming, a little, and learned structured programming from copies of TurboPascal and BDS' ('Brain Damaged Software') C compiler, which I got from my friend, Paul Vixie.

    The company I worked for, at the time, designing fonts and logos - Dahlgren Control Systems, they called themselves, back then - was one of the first companies to buy a Sun Microsystems computer, the Sun 1. I remember seeing it - it was running SunOS 1, and had only a command-line interface (although the display was a relatively high resolution black and white monitor, I recall, and so, even back then, I suspect that it had a graphics card).

    Nowadays I have four daughters, and I am, these days, considered a senior UNIX systems administrator. Everyone has access to a laptop for personal use, and, while my children have not yet learned to program, I am thinking about getting them all Raspberry Pi computers, and providing them with a cheap sandbox, so they can install whatever they want, on the side, while retaining reliable Internet access through their primary machines, until such time as they are capable of choosing what they want, for themselves.

    Let me say, back then, EVERYBODY shared source code. And executables, too, sometimes. It was a special time when we all belonged to a small village - one with just a few hundred or a few thousand residents.

    My captcha: 'iterate'.

  325. PDP-8 by WillKemp · · Score: 1

    In 1979 i was working for Reuters, the press agency, in London. Back in those days, Fleet Street was adopting "new technology" and people were losing their jobs as a result. Reuters had an agreement with the unions to train 4 people a year as computer programmers and i managed to get onto that scheme. We were trained in-house, with a 5 month training scheme, working from 9.30 till 4.30, with an hour and a half for lunch, on full pay! On that course, we were taught programming using PDP-8 assembly language. As far as i remember, it was entirely done on paper and i don't think we ever actually ran anything on a computer during the course. The only thing i remember about it is PDP-8s used octal.

    After the training course, i moved in to a programming job with Reuters - writing and maintaining software for some of Reuters old Ultronics SGS computers - using IBM 360 assembly language, doing the development on a 370. Booting up the SGS consisted of toggling in the paper tape reader bootloader, using the front panel switches, then running that to read in the card reader bootloader from 8 hole paper tape, then running that to read in the o/s from a pile of 80-column punched cards. We debugged stuff via the front panel, changing an instruction into a jump to some free space at the end of RAM and then toggling in bits of program there, followed by a jump back to where we'd come from.

  326. Modifying Machine Language on a Wang by Anonymous Coward · · Score: 0

    No kidding. I worked in an office using a custom program written to run on Wang hardware. The tech support guy showed me how to clone the OS/Application onto an eight inch floppy and use an editor to make changes to the application. He gave me a reference card that translated assembler into machine code and the rest is history. I would read the hex code and translate it into assembler so I could understand what the program was doing and then I could make changes to make it do something else (very trivial stuff).

    I had about two hours of work to do each day in a six hour shift and I learned the greatest lesson of my career playing around editing hex code. The most important thing about programming is getting bits in the right order in the right place to make the machine do interesting things.

    Since then I always have the the thought in the back of my mind that I am writing to the metal somewhere.

    Years later I learned OO in a similar fashion, I got a machine and a basic book and started poking around.

  327. Before home computers by geezer+nerd · · Score: 2

    In 1960, as a freshman at Carnegie Institute of Technology, I was given the opportunity to enroll in the first undergraduate programming class offered there. I thought it would be interesting and something that other people were not doing. The class was taught by Alan Perlis, a well-known thinker about programming and languages. (He later was the first winner of the Turing Award.) We learned to program the school's IBM 650 in SOAP (Symbolic Optimizing Assembly Program), which optimized the layout of the program instructions on the magnetic drum memory so that the next operation was ready to pass under the read/write heads just when the previous instruction had finished (a mind-blowing concept that later was useful when programming CDC machines with multiple functional units and independent execution). Later came an early form of FORTRAN. By the time I graduated, the school had changed machines and was mainly using a form of Algol. I only took the one course as a freshman, but I fell in love with computers and software, and found a way to incorporate programming into my chemistry degree, working with the resident theoretical chemist.

    My graduate work was in computational quantum chemistry, and I had a part-time job in the university computing center. Gave me the opportunity to dabble in lots of different things. We got one of the earliest CDC 6600 supercomputers and learning how to get the most out of that beast was a challenge.

    By the time I was done with my chemistry PhD, it was pretty clear to me that computing was where I should spend my career. The university was starting a Computer Science department in 1968, and I was invited to be one of the first faculty. I taught mainly in programming languages and programming techniques. I was mainly self-taught. I had long-since left academia before I got my first home computer, a C64. In 1984 I had a chance to buy a FatMac at the Apple employee store, and the rest is history.

  328. Conway's game of life. by TapeCutter · · Score: 1

    I left HS in 1976, calculators were banned at most schools but it wasn't much of a problem because they were very expensive. My dad was an engineer and his company bought him a HP21C calculator for work. To use it I had to learn RPN from the manual. Dad recently found it in the back of a cupboard, he cleaned out the mess the corroded battery had made, got it working again, and gave it to me for Christmas, great conversation piece.

    My first "real" computer with a true programming language was a second hand Apple IIe in the 80's, I learned Apple basic from manuals, the library, and magazines (Byte magazine and others published lots of example source code in those days). I think the internet has taken much of the leg work out self teaching all sorts of subjects, information has never been so easy to obtain.

    My initial motivation for buying the Apple was that I had read about Conway' game of life in and old SciAm magazine at the library and was fascinated by it, spending hours and hours "playing" by hand on graph paper, it took me a week to figure out how to get the computer to do it. The guy I bought it from was floored when I showed him what I had done with it in the first week. A few years later he was amongst a handful of workmates at the factory who encouraged me into going to uni and taking up programing professionally. I swapped the factory job for a more flexible (and less profitable) taxi driving job and graduated in 1991, with 20/20 hindsight it's one of the best decisions I ever made. However the fact that I graduated at the perfect time to take advantage of the great IT gold rush of the 90's, was pure luck.

    I think the hardest problem for most people (especially 20-somethings) is figuring out what they want to do for a living, I was in the same boat until I fully realized I could turn my strange hobby into an interesting and profitable career, being treated like a minor celebrity during the boom times of the 90's was an unexpected bonus.

    --
    And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
  329. TI-85/86 by idbeholda · · Score: 1

    The TI-85/86 was the first environment that I actually started programming with. I spent countless hours making games of all types, and different utilities. Quickly, I figured out how to corrupt the memory in TI-85 (rom version 8.0, specifically), and could do interesting things such as edit lock programs without external patching of any kind, and create string variables that contained entire memory dumps. Because of how little TI-85/86 had to offer in terms of a fully robust environment, I grew a deep appreciation for efficient, effective coding.

    At one point, I had 3 of these calculators, each with their own collection of games and/or utilities. When I realized that I didn't want to buy a 4th calculator, I decided to try something new. Since there wasn't any built-in compression with the 85/86 environment, I decided to build an interpreted scripting language from the ground up, with a focus on eliminating code bloat, and as much readable syntax as possible, with only 30% reduction in execution speed (only a few of the games were real-time oriented), with conversion/"compression" ratios averaging around 65-70%. The upside to having that many compressed games (and the interpreter) meant that I could create more games, and also have a reduced transfer time. I also added in cheat codes and easter eggs to all of my games as well.

    Good times. Good times.

  330. Generation Y? by globaljustin · · Score: 1

    Apparently, no one on /. under the age of 30 has ever learned how to program...

    laugh it up you old timers, the jokes on you!

    See, it is *bad* for your industry when it is so dense and esoteric that neophyte workers either chose another profession or get burned out and quit...

    I have theories as to why geeks keep their deep magic under such a stanglehold...but it really doesn't matter. We need to untangle the Kludge of languages running around the web, and work on more standards-based, common sense, best-for-the-job, open, scalable languages.

    --
    Thank you Dave Raggett
  331. Back of an Apple store by Anonymous Coward · · Score: 1

    Back in the early 80's when I was 7 or 8, my parents took me to a computer store where they had, IIRC, Apples set up with programs that taught the fundamentals of programming. I remember I had a few weeks of lessons and finished all the modules. I got a C64 a few years later and played around with some BASIC programming. Even though I never became a serious coder, I think those lessons helped me with structured rational thought throughout my life.

  332. Informatique pour tous by manu0601 · · Score: 1

    I came to programming through France's government Informatique pour tous plan, which installed computers in all schools in 1985.

    The plan was called a failure by analysts, but it was a success for me.

  333. documentation and environment by bzipitidoo · · Score: 1

    I had a TRS-80 for a short while. Was my first computer. But with no programs, no manuals, and no particular liking of the gray monochrome graphics, case, keyboard, tape recorder, and everything, I didn't do much with it. My father tried to interest me in a Vic 20, but at only 5k or RAM, it couldn't do much. What convinced him to stop being such a tightwad was when it ran out of memory trying to load a game on tape that happened to be handy. He finally caved and got what I wanted, an Apple II. Bought it used.

    It was an Apple II+ with a language card, giving it 64k RAM. And it came with a floppy disk drive, not a crummy tape recorder. But most of all, the previous owner had a bunch of manuals and books that he included in the sale. I got Beneath Apple DOS, an Apple Pascal manual, another book about the 6502 machine language which included a schematic of the Apple II and other information such as the existence of the "monitor" (the built in disassembler in the ROM), and of course documentation about Apple BASIC.

    Further, it was crucial that these early computers came with simple programming environments ready to go, and that others had used. Could always break into a game to look at the code and learn. And cheat of course. A look at the code was just a LIST command away, thanks to the built in BASIC interpreter. Copy protection was also educational. Many games, such as Dark Forest (sorry Tom Mornini), were slow and buggy. I fixed and improved some of these. When I realized that finding the Mark of the Snake in Ultima III was a boring find-the-needle-in-the-haystack problem (the clues in the game narrowed it down to the bottom floor of the dungeons, but that was still too much searching to suit me), I searched the disk instead, found the character information, and edited it to give myself the Mark so I could finish the silly game. Later, I did find the Mark the proper way. If I wanted to, I could flip the computer on, and instantly start writing some BASIC program. Wouldn't be able to save it if I hadn't taken the 45 seconds needed to boot DOS, but sometimes I just wanted to bang out a few lines of code to get a quick answer to a simple question. Later, better DOSes cut the boot time to 15 seconds. I never used Pascal, because it was horribly slow, and hardly anyone else used it either. Stuck with BASIC and assembler.

    --
    Intellectual Property is a monopolistic, selfish, and defective concept. It is "tyranny over the mind of man"
  334. TurboC 1.0 on MSDOS by Anonymous Coward · · Score: 0

    A coworker saw potential in me. He loaned me a boxed copy of Borland's TurboC 1.0, and said learn this. I used the company Compaq portable, which looked like a seeing machine with a qwerty keyboard on bottom. I owe Jeff a lot. I've made my existence writing code!!!

  335. COSMAC ELF by Anonymous Coward · · Score: 0

    The first computer I played with was a COSMAC ELF borrowed from the local computer club. It had a video chip and, I think, 1K of RAM. Programs were entered in hex on a 20-key keypad. I keyed in a program (forgot where it came from) that played "Greensleeves" on the speaker. I connected a relay to the phone line and the ELF and wrote my first original program; to generate dial pulses. Used it to call my sister.

  336. With a magazine by Anonymous Coward · · Score: 0

    I didn't have a computer at first. I read a book about programming (I think it was Basic) and started with that. Afterwards some logo at primary school. When my parents bought an XT (didn't have hard drive) I learned a lot of DOS commands and with GWBasic when I bought a hard drive.

  337. Random teacher walked in the room by Anonymous Coward · · Score: 0

    I was sitting in Algebra in high school, and a teacher form another class came in and said they were starting a new class to teach a programming language, Java, and there would be no homework. I was always interested in learning how computers had worked, so I signed up. I was so interested in it, it was the first class that I actually read the book, front to back, and way ahead of the teacher's schedule. I had completed all of the assignments for the year in a month or two, so she gave me another advanced book to read. I got stumped on a case study of the Towers of Hanoi(http://en.wikipedia.org/wiki/Tower_of_Hanoi), and dropped programming for a while. I took Programming 1 in college, and hated it; I didn't learn a single thing (other than how to use the Scanner class). I changed my major a couple of times, but after taking a summer off to think about my future, I went back to Computer Science as my major. I managed to get an internship a couple of semesters before graduation, and now I'm happily employed by the same company. If that teacher hadn't walked in the room at that moment, I have no idea what my life would be like right now.

  338. Through music, and bad Linux audio support by thenextstevejobs · · Score: 1

    I'm a developer, used to work at a big company, now working with mostly startups and earlier companies, sometimes as a consultant, sometimes on salary, doing well for myself.

    I was trying to do multitrack recording on a budget, and couldn't afford expensive music sequencing software. The demos limited the number of simultaneous tracks, etc. Eventually through recording forums I happened upon a few folks who were into a more DIY approach and things like Ardour were starting to become viable options. I knew how to steal the paid stuff for Windows but the alternatives caught my interest. I was a little blown away at the time that this kind of thing was available for free.

    While then and now it was in vogue to shit on all the sound issues on Linux, it was in the process of resolving those through mystical command line invocations that I came face to face with what was running my computer all those years, and was impressed by the power. After that I was hooked on discovering how the pieces fit together, and became a proficient Linux user/admin. Loved the command line since.

    Fast forward a bit through that and I'm a music major trying to weasel my way into DSP classes so I can make my computer make cool noises. It requires a basic CS course (taught in C++, well, basically C with the C++ string lib) as a prereq, so even though I didn't have any interest in learning to program in general, I sign up.

    Most of the kids in the class hate it, are either experienced programmers forced to go through the basics again because they didn't have the fundamentals down, or people who didn't want to program but had to take the class. 50% of the kids are gone before the end of the class (starting with 120+). I seem to be one of the few kids sitting in the front, totally jazzed. I forget about DSP, and end up majoring in CS. Still addicted 7 years later.

    You never know what you've got an aptitude and interest for until you try it. Until something clicked in those early CS classes, I had a few run-ins with programming in the past and it seemed boring as fuck. I thought being a programmer was equivalent in interesting-ness as being an accountant. Dry, stuck in a cubicle, doing something worthless and boring. All the jobs being outsourced. Zero idea it would be something so creative, challenging, liberating. Also gives a decent paycheck, whether you freelance or sign up for a 9-5. Programmer life is good.

    --
    Long live the BSD license
  339. At home... by Anonymous Coward · · Score: 0

    I began "programming" BASIC when I was ~10 with an Amstrad CPC6128 at home... later moved to a 286 PC and GWBasic, and then (I was 15 I think) someone gave me a floppy with an almost complete Turbo C++ installation (I remember it was missing graphics libraries). Didn't know what to do with it, so I bought a C/C++ programming book :)

    And that's how it all begun...

  340. High school math teacher by Anonymous Coward · · Score: 0

    In 1970, my senior math teacher finagled $500 to cover an IBM 029 keypunch, giving his class overnight batch access to the school district's 360/20 "mainframe". (The thing had all of 8K of core, as I recall, and a disk so tiny and precious it could only be used to bootstrap the OS. Compilers and applications were stored on cards.) Withdrawal sent me to the library over the summer to figure out how to build my own machine. Microprocessors came along before my design ever ran. I had a Z80-based S-100 machine that was mostly wire-wrapped. I did D/A audio synthesis and built a dot-addressed vector display for that machine, all programmed in hand-assembled Z80 machine code toggled in on DIP switches and stored on tape. Along the way, college and a job happened, but all of that was just to get access to better computers. Experimented with Minix when it was new, bought my own 386 machine, and used a hacked gcc on an Ultrix VAX to cross-compile the system to run on my hardware. My employers had no idea what I was doing. All they knew was that I was exceeding expectations. :-)

  341. C for Dummies by Anonymous Coward · · Score: 0

    Yeah, laugh all you want. It was the best way to do it when you don't own a computer.
    Paper-based learning at its best.

  342. Without a computer by kubajz · · Score: 1
    I was in a small cottage in snowy Slovak mountains for a skiing holiday with my brother and Dad, twenty minutes walk from the ski lift and from the nearest houses and a small grocery shop. In the evening, Dad cooked some pudding and added canned strawberries, then we sat down and he explained about the importance of having the right programming tools - a sharp pencil and a really good eraser. There, next to the fireplace, he taught me Pascal.

    My first program printed out numbers from one to ten. It was written on large sheet of paper but had to have correct indentation, and the role of compiler, processor and screen was left to my Dad who patiently wrote the numbers next to each other without spaces - just like he should. Thanks, Dad!

  343. TIBASIC, TIBASIC(calc), JAVA, C, Fortran, Python by Anonymous Coward · · Score: 0

    My first experience with programming was when my uncle gave me a Ti home computer that plugged into a television, I programmed it to play 'hot-crossed buns' in the mid 90's. A year or two later, we got our first home PC, though both of my parents write code for a living. I never coded or scripted on that machine and was a dumb-user. In highschool it was a requirement to buy ti-83 calculators, I wrote all sortsa little programs and even developed my own hash algorithm (very naiive but at the time I didn't even know what hashing was) to translate the periodic table into the limited ram and strings. I'm pretty sure that I still didn't have a grasp of arrays at that point. Then I graduated highschool and went into a Computer Engineering program where I took intro to programming and data-structures in Java as well as a little x86 asembler. I then took the C/C++ course where we built a simple ray-tracer, later I discovered that I really wasn't happy with the EE program and switched to physics. Over the next two years I was a focusing in metrology and so learned how to hack in LabView and eventually how to make my own virtual instruments. Then I came to grad school which was light on programming outside of LabView, except durring my last year of classes I took a computational chemistry course. This was in Fortran 77, and made me like programming again because it was functional and supremely interesting. My Doctoral program terminated masters' due to many factors and I moved to Europe to search for a new program.

    I interviewed with an advisor doing FIB simulations mostly in Python with numpy, he tasked me to make a toy simulator and then design an inverse modeler for that. 2 Weeks later I had a functional grasp of Python (barely- but the code worked), after two more weeks I had an inverse modeler for the full simulator. I've been using python since and should graduate in another few months. I still don't consider myself to be a programmer, more a scientist who makes use of computational tools, but it has been an interesting adventure.

  344. Don't touch my computer! by poofmeisterp · · Score: 1

    My father said "Don't touch my *&@$)(ing computer or you'll be beaten to a pulp and grounded for a month".

    After that, guess what I wanted to do more than anything? I skipped days of school pretending I was sick just to mess with his computer. Started with QBASIC, then moved to OS/hardware interests. Moved into debugging others' code later in all languages known to mankind but can't write for crap.

    Yes, I was discovered once and was beaten to hell and back. I think I told him that his 'IF' statement wasn't 'TRUE' when I was grounded for more than a month. That got me belted again. :)

  345. Amstrad users unite by czth · · Score: 1

    It's good to see another former Amstrad user here. I started with a CPC464 with green screen and cassette - I think my dad traded it for a CD player or something - and eventually he got a CPC6128 with the color monitor and disk drive (360k - x2 - of sheer luxury!). I taught myself to program Basic to start then I got the firmware manual and a book of assembler opcodes and started in on Z80 machine code for sprites and such. Eventually I got an assembler, Maxam (sheer luxury again).

    I also got ACU (Amstrad Computer User) with the Hairy Hacker's column in it; and a few years ago I actually contacted him (Vik) to express my appreciation, and he wrote back. His web site doesn't seem to be on the net any more, however.

  346. TRS-80 by Vreejack · · Score: 1

    St Anthony's High School, 1978. Brother Simon was onto computers and had a museum of old donated machines as well as the PDP-8e, Commodore chicklet machines, and a few TRS-80's. There was even a block of old analog computer modules for solving differential equations. An old mainframe with platters.

    I bought a copy of "TRS-80 Assembly Language Programming" $3.95. But tried reading it over and over for months before I figured out that a "register" was part of the processor, not in RAM. Then I wrote simple flight simulators and kept the machine on 24/7 because my tape drive was bad.

    There used to be this wonderful interactive C tutorial in MS-DOS. It really worked you through the gears of C until you understood everything. It must have been on my Amiga, though. ca. 1986

    --
    "Will future ages believe that such stupid bigotry ever existed!" -- Ivanhoe
  347. AppleSoft BASIC by Jim+Hall · · Score: 1

    In 1982, our dad bought a Franklin ACE 1000 computer (an Apple II clone) for us when we were in elementary school. My brother and I experimented with AppleSoft BASIC programming on that, and our parents also bought a book about BASIC. We mostly skipped the tutorials in the book, and jumped right to the reference section, figuring out things on our own by looking them up in the reference then trying them out on our own.

    It didn't take very long to "get" programming. I think after a year of writing programs in AppleSoft BASIC, I was writing pretty advanced stuff. The SIN and COS functions were pretty hard to grasp until I had the math classes (years later) to understand them, but otherwise I "got" it right away. I remember writing several small programs, such as a number-guessing game ("too high" or "too low" until you got it right).

    I figured it would be interesting to write computer programs that mimicked the computer displays from television and movies. So whenever I watched a movie or TV program that featured computers (and it was the 1980s, almost everything featured a computer) I tried to mock up a similar display on our computer at home. It didn't take long to realize that a special effects person was doing the same behind the scenes, rather than the movie or show using an actual program, but that didn't take the fun out of it.

    In 1983, the movie War Games came out, and I decided I wanted to write the nuclear war simulator featured in the movie. It took me all summer, but I eventually wrote something that would draw maps of both the US and Russia, then let you select a few targets and launch missiles. The opposing side would return with a few missiles of their own. It even drew the missile tracks like in the movie. At the end, the program would tally the damage to determine the winner. (I think the "nuclear war is bad" message was lost on me at the time.) It was all in AppleSoft BASIC.

    I used different versions of BASIC until college, when I learned my first compiled language. As a physics student, we needed to write our own data acquisition and analysis programs, so we learned FORTRAN77. It was pretty easy to pick up in class, since it wasn't worlds apart from BASIC. In the summer between my junior and senior year, I interned at a research lab. For half the summer, I took data. By the second half, they realized I was pretty good at FORTRAN, so they asked me to update a FORTRAN-IV program that analyzed ellipsometry data (precise optical measurements using a laser). I didn't expect this during my internship. I enjoyed it a lot, but learned to hate FORTRAN's computed GOTO.

    After FORTRAN, my brother (a computer science student) introduced me to C, and I took to that right away. It was more powerful than FORTRAN, but still easy to write code. My brother taught me the basics of C, then I picked up the rest on my own through books, including Kernighan and Ritchie's book. And C really put me on the path to computing as a career.

  348. 8th grade. TI-83. Bored. by qemqemqem · · Score: 1

    In 8th grade I had a TI-83 calculator. I already knew algebra, so I was naturally bored and restless in math class. Being a bit antisocial, I started reading books in class, which my teacher disapproved of. I figured out that if I was messing with my calculator, it looked like I was paying attention and following along, or at least engaged in math. So I discovered that I could write programs. I still had the calculator manual, so I read that to get an overview of the programming commands, of which the most important to me were commands that would write a letter or a pixel to a location onscreen. At first I amused myself by little graphical programs that just drew things on screen, but I discovered that I could make them interactive, so I made increasingly sophisticated games.

  349. Vic20 basic by chris.evans · · Score: 0

    I taught myself vic20 basic when my mom got me a commodore vic20 in 1988. Then I started to learn turbo c++ 2.01 in 1993 and I defected to turbo pascal 7 in 1994 and now I am a nasm and gcc fan currently.

  350. I learned using... by Peebz · · Score: 1

    Star Trek: Starship Creator. You could script your own missions for your ship to execute. It was pretty fun. I think I was in 8th grade. Anyway, I loved it so I took QBasic and then Pascal and the rest is history... now I'm just a smug Rails guy.

  351. Learn it to use it by petteyg359 · · Score: 1

    Commodore 64 BASIC. If you have to know the simple parts of the language to use the computer, then you have a great incentive to learn. I blame point-and-click for the degeneration of general computer usage skills. There used to be a need for some intellectual grasp of the tool to use it; now we have a bunch of kindergarteners with rocket launchers who never learned to aim away from their own face before pulling the trigger.

  352. In the days before accessible internet by CmdrEdem · · Score: 1

    At 14 I already knew that I would like to develop games. So I bought a pretty lame book about it and coded a bit in C/C++. I could not grasp some concepts so I decided to let it be for the time being. A year later I took classes for Dreamweaver and Flash, and then I finally understood the basic concepts involved in coding. I went to CS college and basic algorithm was pretty straightforward. So yeah... that Flash class taught me how to code.

    --
    This combination doesn`t exist: ETIs that know about humanity and want to see us dead. Otherwise we wouldn't exist.
  353. Commodore Pet model 1 by Vonchor · · Score: 1

    My first PC with BASIC, 8K RAM, Cassette drive, and 40 x 24 display. Pretty hot for those days.

  354. TI-85 User Manual by Anonymous Coward · · Score: 0

    I had to get a TI-85 in 7th grade, and I so wanted to make it do interesting things. So I puzzled over the programming section of the manual all by my lonesome. I remember how long it took me to understand if-then-else, and then how obvious it seemed immediately after :) Shortly after I was making number guessing games and stuff, and laboriously typing them into my friends' calculators who wanted them. Yep, lots of GOTOs, fortunately I made it through without permanent brain damage.

  355. Self taught... by Shirley+Marquez · · Score: 1

    My high school had a computer room with an IBM 1620 (later replaced with an IBM 1130) that you programmed with punch cards. I found it in 10th grade and didn't have room for my schedule for a computer class until 12th grade so I picked it up myself; by the time I reached 12th grade I was well beyond what the class had to offer so I didn't take it. A bit later I got time on the local university's time sharing system: PDP-10 and Model 35 Teletypes.

  356. Two books... by drpickett · · Score: 1
    one called "Basic BASIC" and one called "Advanced BASIC" - My school had a PDP-8e running ETOS and OS/8 - Used an ASR33 Teletype or a DecwriterII if I signed up for it early enough - I used TECO to edit programs and ultimately wound up working for DEC for a few years :) - After BASIC, I picked up FORTRAN IV - Once the AppleII and PET arrived, I learned PASCAL, C, and 6502 assembler - The assembler code made me go back to the PDP-8e and learn that machine code as well.

    That's just the programming.

    Learning to actually write software properly, and not resort to things like self-modifying code, globals, and gotos took real world experience

  357. Also started on the Teletype Model 33 by TerryKing · · Score: 1

    I worked as a Broadcast Engineer and Journalist in the late 60's. I taught electronics part-time at SUNY. Around 1969 They had a Teletype with dialup 110 baud modem to Dartmouth College. Learned BASIC and some FORTRAN from the HELP on Dartmouth, no help from the SUNY Faculty.

    Then they got a grant and a Data General NOVA and 6 Model 33's and students (and I started learning more BASIC).

    I was motivated to really use the thing for electronics design and eventually wrote BASIC that designed various Active Filters that I used in Broadcast applications. At one time the WMCA Good Guys were heard through one of my "Secret" 5-pole Chebyshev filters.

    I was motivated to have a computer at home. So I designed a 110 baud modem, with an ASCII test generator. After I proved I could send FSK data and receive it myself, I scrounged my own Model 33 Teletype by trading an Ampex recording system to the AP Teletype repairman. One day I got it all hooked up, dialed up Dartmouth (fortunately a special local number set up by SUNY) and !!! The Dartmouth prompt.

    Soon my kids were playing Hangman on the model 33 in the living room. And I was designing more electronics stuff.

    But we wanted our OWN computer. The Altair had just come out. Too expensive.

    I called up Intel about the 8008 and the New 8080. I wanted to automate Broadcast Stations. Did they have a version of BASIC for 8080?? They explained to me that these were MicroControllers for equipment, written in assembler and there would never be a high level language on them.

    Later I called up Microsoft when they announced they DID have BASIC for the 8080. $250 for 8080 BASIC. Too expensive.

    Fortunately Tom Pittman wrote TINY BASIC for the 8080 and the new 6502.

    So I called up MOS Technology (remember the TelePhone?/) and talked to Chuck Peddle. He said that the 6502 would cost $25 in a year and I could buy one at that price. It came in a week and I started building right away. Scrounged memory cards from my IBM friends (sshhh!) and made a front panel that could examine and deposit into memory. Got the 6502 on the bus. Everything wirewrapped. Put 16 LEDs on two registers in high memory. Hand-wrote assembler and got BLINK197? running. Got a "TIM" chip from MOS Technology, built a card with the interface and teletype monitor ROM on it (like Steve Wozniak had pitched at the Amateur Computer Club of New Jersey the year before).. and added a 20ma current loop. Wow! the Good Old Model 33 came to life and we could TYPE in programs in Hex. So we wouldn't wear out the thumbwheel switches after all.

    Sent $25 to Tom Pittman and a folded paper tape arrived in the mail. But my scrounged Model 33 came out of a Newsroom at NBC and had no reader or punch.

    Went back to SUNY, printed out the tape. About 4 pages of Motorola Hex Dump. My kid and I typed it into the Model 33. Double checked. Pointed the Reset Vector to it. !!!! BASIC Prompt.

    We finally had a machine with a high level language at home.

    The 110 baud modem I built had audio in and out, so we backed up the BASIC code on a Cassette Recorder. Hey we had our own Tape Storage system. We could now power down the 6502 system and reload BASIC. And save BASIC programs. The kids started writing Space War.

    I wanted to control HARDWARE with computers, and started hooking up relays and stuff. Woweee. Got a job interview at IBM. They were surprised I had built a computer from scratch AND had a clue about "Sensor Based I-O". Got the job and a couple weeks later was writing assembler for the IBM 1800 (Until our new System/7's came in). Started working on automated Chip Fab. Etc. and lots of Etc.

    Now I'm an Arduino weenie. I write the http://ArduinoInfo.Info WIKI and do workshops with kids.

    Good Old Model33 went off to someone who wanted it. Sometimes I wish it was still around.. Sigh...

    Regards, Terry King ...In The Woods In Vermont

    --
    Regards, Terry King ...In The Woods In Vermont
    1. Re:Also started on the Teletype Model 33 by TerryKing · · Score: 1
      --
      Regards, Terry King ...In The Woods In Vermont
  358. Had to build it first by Anonymous Coward · · Score: 0

    After we assembled the boards for the Altair 8800 I learned by flipping the front panel switches. Then we got a Model 33 and I only had to boot the loader program so the paper tape would load.

    First high level language was on a Tektronics 4051 and there were 3 firmware upgrades (when a firmware upgrade was the guy coming out, soldering power and ground of new chips to old chips, cutting old traces on the board, running wirewraps from point to point until they had enough changes to justify new boards) made because of stuff I found.

    I was on active duty then and the sergeant I worked for said something that is still true today - "It's hard to make things idiot proof because idiots are so ingenious - Sgt Day"

    As an aside: the other day a couple of us were talking about the "old days" and one of the younger folks spoke up: "I learned about that in school."

    *sigh*

  359. Sounds to me... by DarionScard1029 · · Score: 1

    Like most jobs, its knowing your resources that gets the work done almost more than knowing what to do. Even if you don't know, knowing where to find out can give big dividends. It also can allow you to construct things in very different ways and leverage those resources better since you're not restricted to 'twmplate logic'.

  360. I guess I'm Old School like Gates/Allen by Anonymous Coward · · Score: 0

    First computer I ever touched: IBM with JCL and paper tape used for building automation (1968)

    First computer I programmed: IBM with punch cards in Fortran (1972)

    Second computer I programmed: HP 1000 timeshare over Chicago Teletype in BASIC (1973-1975) - ka-chunka-chunka-chunka-chunk!!

    Third computer I programmed: IMSAI 8080 with paper tape in 8080 assembly

    Fourth, etc.: Apples, PETs, NorthStars, Cromemcos, then DEC TOP10 and Vaxen, then Mac, Atari, Amiga, PC, then HPUX and Unix of all varieties

  361. I'm disappointed by TIWolfman · · Score: 1

    I really thought this was an interesting question and followed it the throughout the last day, clearly the answers "rising to the top" so far are not curent. Most answers so far have been about "why" and even that is being kind to the sarcasm presented so far. Part of the problem here is that it seems that nobody that's responded so far started their career after 1980 and that's either a sad fact about the business or something that Slashdot should note. Personally, I started writing BASIC in a high school class as my first exposure and then worked in C initially in college before moving to C++. Later in school assembly, Java, and PHP were used and then afterwards I added purpose specific languages like OpenGL, Javascript, "Flash/ActionScript", and JSP/ASP/Python(yes, I include Python there as that's all it's worth). The more worthwhile answer to the question though is that I learned "how" to program, meaning algorithms, style and debugging in my second and third years in college at U of Michigan.

  362. stupid vocational school by Anonymous Coward · · Score: 0

    and thanks a lot.

    learning with FORTRAN really expanded my horizons and prospects.

  363. Ahh the days by Waveguide04 · · Score: 1

    For myself, BASIC on a VIC20 and a TRS-80, then some assembly on a Commodore 64 then Apple with basic and Pascal. Not myself, but an interesting story about a guy I met many years ago was taking a programming class where the Professor said he didnt care what language they used for their projects. So, what he did was write the program in postscript so you would feed the program into the printer and get the result as print output. Kinda clever I thought.

  364. Freshmen Year HS by YaddaMinski · · Score: 1

    Took Computer Programming as freshmen at my high school. The teacher started by talking about the computer, languages, and coding stressing spaghetti code horror stories. We then discussed a sample problem, the flow chart for it, and the code. We then programmed an Apple II. Next we learned the Basic Language. The rest of the class was: pick a problem, flowchart it, write it in pseudo code, program it in Basic, test it, have fun. I wrote a tank program with simple sound and color that hunted down my friend and blew him away for the class project which was the majority of the grade.

  365. Long, weird trip by Anonymous Coward · · Score: 0

    I learned SOAP II before RAM was invented. Then I programmed x-ray crystallography analysis in Fortran, learned from a Fortran manual. Later, I took home a Cobol manual and came back a week later with a complete and complicated payroll system which, to my embarrassment, was still running ten years later. Since then I've learned about 22 different languages, mostly writing compilers and op system code, some AI stuff, some information systems code, some DB system code.

    It was all punishment. I never liked being trapped behind a desk with my nose focused on a coding pad, a screen or a computer terminal. I hated having to compete for computer time. I detested doing code review for others or explaining that the algorithm that I used was more efficient than what the reviewers expected. At one point I walked away and vowed never to do coding again.

    I haven't actually written a program in years, but there is something interesting in Python... and what exactly is Hadoop?

  366. PET 2001 (futuristic!) and a Teletype by kmoser · · Score: 1

    I kept my 7th grade programming notes. Yeah, they were mimeographed. Get off my lawn.

  367. Wiring control panels for tabulating machines. by LaoziSailor · · Score: 1

    I first started with hard iron machines, tabulators, collators, etc.
    They had control panels that were wired to perform accounting functions using punched cards. Logic and selection where an integral part of the deal.
    My next machine was a 1401 and we actually were able to map out memory (4K) and write machine language (this was done mostly for fun).
    Autocoder (a predecessor to Assembler) was used for real applications.

    --
    ~ Artificial Intelligence is better than none! ~
  368. By accident by dont_jack_the_mac · · Score: 1

    My first exposure to programming came from building raw HTML webpages in the 90s when I was barely out of elementary school. I didn't know anything about IDEs/programs and coded by trial and error. Then I took AP Computer Science in school, but I still didn't have a firm gasp on programming then. The class emphasized coding Java on paper. I can honestly say it made me a better programmer. A degree in Computer Science from Georgia Tech later, here I am.

  369. The Internet by peawormsworth · · Score: 1

    I originally learned programming from my family and then taught in school and then primarily from reading books. But now, the majority of languages I (somewhat) know comes from Internet guides, samples, documents and training courses.

    In the future, I expect the majority of the world programmers will exclusively learn to program through Internet based sources. Especially in the poorer coutries around the world.

    The Internet provides more information than any programming book you can buy and you can learn at an excellerated pace and further information and assistance is available to improve your skills. Stackoverflow is one of my primary sources for programming delemas now.

  370. Casio calculator ... by Anonymous Coward · · Score: 0

    I started with, Casio FX502P and FX602P calculators, using the limited programming facilities (loops, goto, gosub, simple logical operation, ...) on these calculators. Wrote some games for fun and programs to solve Mathematical problems. Then I moved on to get a Genie I, a TRS-80 clone, writing games using BASIC. Bought a PC few years later and learn GW Basic, Quick Basic, Turbo Basic, Turbo Pascal & C. Interestingly, it was mostly for teaching. In the 90s, use DBase III dialect - Clipper to write some software for my clients and started to earn money by programming. Moved to Delphi 1, doing software for clients as well. Now moved up to Delphi 2010 (waiting to get XE4). Apart from native apps development. I also play around with PHP, XML, Javascript, CSS.

    I am still using my FX602P at home. I am also running a TRS-80 emulator to show my kids how to do simple BASIC programming. Well, "those were the days" feeling is good for me.

  371. Let me count the ways... by Anonymous Coward · · Score: 0

    It all started way back when with QBASIC and Wolfenstein 3D. I wrote programs in one and modded the other. In high school I got a TI-83, I could barely pay attention in class as I programmed little utilities to help with my schoolwork. I got into assembly programming the same route, and fast forward to college, where I took a class in assembly programming (the professor had a real passion for the Motorola 68k in 2008 of all years). Ended up making a multiplayer Connect Four game using a breadboard with a 68k on it, routing network code through C to another board connected a different computer. ...

    I still program games in my spare time when I'm not doing IT for a space research institute.

  372. CARDIAC by MrRobahtsu · · Score: 1

    I don't see anybody mentioning it yet, so I'll just say my first exposure to programming was a CARDIAC:
    http://en.wikipedia.org/wiki/CARDboard_Illustrative_Aid_to_Computation

    My science teacher in 8th grade (1977) asked me to look at it. I spent an hour doing a tutorial multiplying two integers using iterative adds. I then told the teacher she didn't want to use these in class.

    Later I programmed a Sinclair programmable calculater, BASIC on UGA's Cyber, and finally in 1982, my own Atari 400 (Basic, forth, Action!, assembly).

  373. i modified existing source code by Anonymous Coward · · Score: 0

    is an honest answer allowed?

  374. FIRTRAN II in 1969, on Punched Cards! by bbsalem · · Score: 1

    The very first programming experience I had was with FORTRAN II on an IBM 1620 in 1969. The "Compiler" was a box and your ran card deck, you know, punched cards in two passes, to check for syntax errors, and then to generate an object deck, which is what did the real work on the computer. A couple of years later I had access to an IBM 360/67 at Stanford Univ. with a FORTRAN IV compiler on a drum memory, I think. It wasn't until maybe 1974 that I could use a terminal, a teletype, really, to code via 300 baud dedicated line to a remote computer. Around that time I had some access to DEC small computers and begin to use timeshare under DEC OS's RSX-11 and DEC Fortran. By thet time we had dumb terminals. By about 1976 I got access to my first UNIX system and was amazed at the concise commands of the shell. It wasn't until 1986 that I got to learn C. Lately I've been learning lisp and python and relearnig pHp and javascript on my own Linux Box.

    I realize that having early access to timesharing systems, after 1974 spoiled the personal computer revolution for me. I had access to relatively powerful systems so that PC's seemed too much like toys to me, I had an Apple II, but after finding its limitations, I used to mostly as a terminal to a much more powerful time shared system. It wasn't until 1995 with Linux that I could come even close to the experience I had with a Sparc 5 running Solaris 2.4 on a PC running Linux.

  375. Casio FX-700P Calculator by porjo · · Score: 1

    First thing I ever programmed on was my dad's programmable calculator using BASIC. These came out around 1982 I believe, however I didn't use one until probably '86,'87. It had a 12 digit LCD display, 2KB storage, 2KB RAM

  376. How I learned by brunnegd · · Score: 1

    Programming was part of a numerical analysis course. FORTRAN, punch own cards, submit, then pick up a day later. Later BASIC, as part of a summer job assingment.

  377. Casio 9850 by Anonymous Coward · · Score: 0

    I got a Casio 9850 and programed it in the broken BASIC that it had. No local variables :/ Globals FTY.
    Fist thing I coded was some math formulas I had to use in high school. Couldn't stand to memorize them so I made some little programs to show and resolve them since it they didn't come in the ROM. Up to that point I was a heavy computer user but never was never interested in writing code. From then on I have made a career of it. No money for a decent TI at the time - too expensive compared to the Casio - so I had to make due.

  378. Playing games by Anonymous Coward · · Score: 0

    The first Unreal game was relatively unique at the time, coming with a built-in map editor, and a scripting language, UnrealScript; the former of which I played around with out of curiosity, and the latter of which I could never make any sense of.

    Used to play online a lot (was 13 or so at the time), and someone found a bug/exploit which started to ruin online play; had a vague idea where this might happen, from my previous attempts at reading the code (a masochistic exercise, mentally exclaiming "what the fu-u-uck does that mean?" "what??" "uhgghhgg??", as I re-parse the same line again and again, 10-20 minutes at a time), and eventually managed to strain hard enough through mental constipation, to fudge a fix for the bug, which gained much appreciation online.

    A bit more than a decade later, and I've fudged my way into being a game programmer for a living :)

  379. Old timer by RichardH.C.Seabrook · · Score: 1

    I learned from an IBM 7094 Operations Manual in 1963 at U. MD. I was an operator. There were a few computer science courses but no degree program yet.

  380. Necessity is the mother of invention by Anonymous Coward · · Score: 0

    OMNIMON - Atari 800. Breaking into games, changing addresses, get more lives, repeat/rinse. After a while, learning how to EAEA instructions to not have to change those lives all the time, then learning how to disable the sprite hit/miss return stack so sprites had god mode. I was hooked. Alot of this was from my head and some friends on BBS's that screwed around a little / dabbled. Got a 6502 assembler book, soaked it in. Then played with basic cartridge (used omnimon to look how that cart interpreted simple statements into code (never got far with that but bits and pieces allowed me to progress). Removing protection from games to move the games from the disk to my humongous 1-2 mb CPM hd's attached to the 800 via the box-in-a-box ataricpm disk controller [ATR8000?] (trying so hard to remember what it's called and too lazy to find it in my garage). that got me into trainers later on and a tiny bit of cracking.

    Ended up giving up on assembly for the most part because I could never understand the code when I came back to it weeks/months later. Basic OTOH I had little issues with. A friend, nay many friends said my usage of basic was stupid cause it would never amount to anything, but push forward 15-20 years, it was the defacto scripting language for all the office products (access, excel, word, etc...) and I got good (very) at it. visual basic, databases, and access was my demise tho and after a full year of programming, giving up my IT deskjockey job, I realized my ADHD was not meant for instantaneous programming, that it was more of a "get in the mood" kind of thing that was very dependent on my mood/attitude, and stress/deadlines did NOT help and I could never coerce it.

    So, I went back to IT, got lucky and was able to work with networking (don't count the IT work I previously did with netware :) ) and I was always able to find my early programming talents (what there was) to be of use. Whether it was using linux, which I devoured whole starting in 94 and using bash to make scripts, to html, to wiki's, formatting, IOS, scripts to update code on routers/firewalls, BIGIP/3dns, scripts to update tables, etc etc etc.... I just used it as a tool in my bag of tricks to solve problems and avoid repetition, which, to an ADHD person is the black zone of lost concentration.

    Haven't worked since 2008 (quit right before market tank) and boy do I regret that since I haven't had to the courage to look since and don't think at this point I will. *sigh*. that's why AC. depressing. This whole topic brought back alot of nostalgia.

    Cheers

    M.O.S. forever! :}

  381. Started on HP 1000 RTE by Anonymous Coward · · Score: 0

    Started when I was assembling test equipment which included an HP 1000 computer for the engineer to write programs to control the equipment. Picked up a manual and taught myself basic. Was offered a position in the software group when the department head saw me programming late evening. Started with assembly language(2 registers ), Fortran, to write/enhance device drivers. Converted assembly code to 'C' and changed major to CPSCI and never looked back.

  382. Programming by wiz0690 · · Score: 1

    I was given a book about programming in BASIC and an account on a PDP 11/45 and left on my own. That was about 40 years ago and I've made a good living coding ever since.

    --
    /steve
  383. RE: How did you learn how to program? by Anonymous Coward · · Score: 0

    In college, I took some initial programming classes - in my case, the language was Java.

    Then, after I got into the industry (I'm an admin), some simple visual basic for a few business integration apps. Nothing 'huge' in the sense of complexity but 'huge' in the sense of business process. Two asp webpages with about 20 lines of code between them and the company had automatic tracking number lookups from their desktops whereas before it required bumping the shipping clerk off of their machine to do the same thing.

    It's not about good code, it's about the right code used in the right place.

    Now, it's ..sql, bat and .ps1 scripts mostly but it's for the same effect - email signature automation, logon scripts, printer defaults, etc.,... If you think .sql, .bat and .ps1 scripts aren't 'programming', explain why I am asked to edit/fix the mistakes of my co-workers that do 'programming' of websites and other such 'development'.