Ra8
Anything basic which involved equations, or command lines...
I will start with mine: Before I was 13 i didn't know much about computers, so in IT class at school, our teacher taught us on Excel how to use equations as A3=A2+A1. I like that, so i went home and discovered more thing about that and then created an excel spreadsheet that calculates my school average.
Edit: I will continue my story then:
The next year I created a more sophisticated excel spreadsheet that calculates averages, then began to create spreadsheets which converts from units to unit. At 14 My uncle introduced me to C#, he helped me to create my first program on C# which was to insert your name in a textbox and you family name in another then when you hit ok your full name will appear in a label, i was very excited that i could actually create a real program myself. After that I started learning HTML and JS and creating .bat and .cmd files which i called viruses. Then came summer 2009, I created many programs and very simple websites; some of them are a calculator and a morse code encoder and decoder. In 2010 I started learning php and now i am reading a book about php and Mysql databases.
mesa177
The easy stuff like Logo and excel spreadsheets (though I don't consider that as programming) were tackled in high school, but it wasn't until I started univeristy and had my first class of C that I considered learning programming seriously.
C opened the door to C++, and some additional courses like introduction to engineering and logic design opened the door to more langauges like VHDL, PIC assembly (MASM), BASIC, etc... Then I started to see what other programming languages were out there, and so I came across PBASIC, microC, and Matlab, and then one of the courses introduced Labview.
Thanks to J4D on Lebgeeks, I got introduced to Arduino, while rahmu encouraged me to learn Python.
PS: How old are you now? If you're 13 or 14 years old, start with Python or Matlab (via Octaviz software).
Kassem
I used to be obsessed with computer games and literally everything that involves a computer. Then I got introduced to HTML back then when there was a site called piczo.com for creating personal light-weight websites. After that, I started using forums and CMS's (mainly Joomla) to build websites for myself.
Some time later, I started taking this stuff seriously. I learned HTML and CSS. Then I started reading a book about PHP and before I got the chance to finish the book, the 2006 war started so I had to move to Beirut and all that crap. When I got back home, I lost interest and then school started and I had my official exams at that time.
Later on when I started doing business administration at the uni (I wanted to go for Marketing) some guy asked me if I know someone who can develop websites. I said I could do that. I built the website using Microsoft Sharepoint (I think that was its name) and from there I got interested in Flash and Actionscript 3.0. One language lead to another, and now I know a bunch of languages but I enjoy working with ASP.NET MVC the most.
Ra8
mesa177 wrotePS: How old are you now? If you're 13 or 14 years old, start with Python or Matlab (via Octaviz software).
I'm 18 and this is the story of how i began being interested in programming (if you don't want to call excel spreadsheets as programming) although i used the IF and other excel commands. I started real programming at 14-15 when i programmed in C# (whit visual studio), my uncle introduced it to me, now i'm learning php and javascipt.
Kassem
Ra8 wrotenow i'm learning php and javascipt.
You won't be able to stick to PHP after you've been using ASP.NET for a while. Rather than learning PHP, I would suggest you learn ASP.NET MVC instead (no dragging controls into a designer, it's all about coding - which I believe is much more enjoyable). Learn the basics of Javascript, but invest your time learning jQuery (a Javascript library) because that's what you'll end up using anyway.
Ayman
At grade 7 in school we studied MS logo I used to enjoy playing with it and I really liked creating complex shapes and stuff but at that time I was still obsessed with physics and electricity till I reached 1st secondary(15) that we learned HTML, that was a turning point for me as it made me get more into web stuff and I started sitting hours learning on my own creating simple static webpages yet I still wanted to learn really how to program as part of my plan to control from LEDs and motors via the printer port on an old laptop.
In the same year in summer I was at City Mall and I saw a book called "Complete Idiot's Guide To Programming Basics" I picked it up and thought I should buy it. The language it teaches was QBasic I learned the basics and from that time on I got hooked into programming and I started creating some CLI programs.
Then I moved to a language called Justbasic which is easy for beginners and quenched my thirst for having GUI in my programs. Concurrently I was also developing my html, css, and javascript very slowly.
When I was in my last year of school I got into Java which I fell in love with ever since and started writing anything that came to my mind in it and at the same time I was discovering more and more about programming and developing my skills. During the month where I had to prepare for the exams, I spent 20 days working on a site for a friend who wanted to have some flash games site online and we did actually have something up and running and this project in specific gave me a huge skill boost in client side web development.
When the exams where over I got an internship at a company that develops software in Java and I was responsible for testing their apps and reporting bugs but at the same time took advantage of some experienced developers who guided me and answered some questions I had. At that summer I worked on 1 or 2 small java projects for fun.
Later when I got into uni I started to work more and more on personal projects and learned some new languages on my own like Php. Many courses at uni had a positive impact on my skills like data structures, database, networking, and system analysis. Recently got into C# and ASP.net and now learning MVC framework in .net and playing with EF for ORM.
xterm
AymanFarhat wroteRecently got into C# and ASP.net and now learning MVC framework in .net and playing with EF for ORM.
Where's Ayman and what have you done with him?
Kassem
xterm wroteAymanFarhat wroteRecently got into C# and ASP.net and now learning MVC framework in .net and playing with EF for ORM.
Where's Ayman and what have you done with him?
I proudly converted him into an ASP.NET MVC fanboy :P
J4D
I never was, and never will be a true programmer.
Ever since i was little, i wanted to know how these programs are made, or at least how do they work . But never really developed an interest in making programs. Instead the interest was resistive and capacitive.
Anyhow, i was exposed to programming in University. I liked it, not love it. I can program using C++ But the more important thing that i learned is not the language itself, its the process and concept of programming.
For hardware programming i use Arduino C, quite proficiently.
Ayman
xterm wroteAymanFarhat wroteRecently got into C# and ASP.net and now learning MVC framework in .net and playing with EF for ORM.
Where's Ayman and what have you done with him?
Well its not that I sold my soul to .net or no more play with Php or other languages but when I first went into asp.net I did because it was required last semester in an eCommerce course that we develop our projects in Asp.net given that the instructor is an MS guy(he works for them actually). I worked on the project in .net 3.0 an used webforms, it was not bad but I didnt like it much, kassem suggested to me I check out MVC and I really liked it.
MVC itself as a design pattern is awesome and the Asp.net MVC 3 Framework makes it even more awesome to develop web apps in it, plus the framework is open source :P. I will still use Php for small and hobby projects and will never sell my soul to any specific language or technology. I find that this period of my life is more about discovering what each technology has to offer and weigh the benefits against the costs of adopting it before I become dedicated to one.
xterm
Here's my story, grab a cup of coffee because this might end up being long. (mind you, i might be a bit mistaken on dates so bare with me)
around the year 1985 or so, (when i was 6), my father came home one day with keyboard, two cables and a book. He said and i quote "I have no idea what this is and how it works". My sister and I thought It was a game of some sort, so we hooked it up to the television (it was a fat ass keyboard), configured the Television until we got a blue screen with a flashing cursor. We started typing "Game" "i want to play game" but no matter what we wrote, all we got was :
Syntax Error
Days went by and everything we did ended up with failure. One day, we ran the machine (It was a Laser700 by the way) and for a change we decided to open up the book and see what it says ( I still have the book ). We saw a bunch of blocks of letters so we decided to just type what we saw. The very first thing we wrote was something like:
10 color 50,60,70
20 run
Instantly, the entire screen went from blue background and white cursor to a totally different color. We jumped with joy, something actually happened! After that, we started typing everything we saw in the book and we got so many amazing results, like ASCII art with colors and even music from the system sound! As you might have guessed, it was the Basic language. For two years i kept doing the exact same thing, copying text from the book and making some small changes to see what happens. I had no idea what anything meant.
Around the age of 9, our school began teaching Pascal! I was so happy that I found something that i can relate to, and instantly i became addicted to programming. At that time, i acquired a Bullfrog computer (286 i believe) that came with DOS pre-installed. Luckily, not only does it come with an operating system, but it also came with GWBasic and the infamous Gorilla and same games. I had a blast, seriously. I started writing programs as if I'm an expert. I'd write a program that takes input and just prints out results.
Around the same time, i kept insisting that my parents enroll me in the after school computer program. I was devastated when i saw that the computer program was merely an hour sitting in the computer lab and playing games.
Fast forward to ~1994, i met this older guy at pretty much the first "network cafe" in lebanon (ZeraW you know who I'm talking about and you can ask him about this later on). We were talking about a bunch of things and i saw that he built this application that would lock the entire operating system and only provide icons for games that are installed on the machine. This was so motivating and i asked him if he could coach me into building something similar. Little did I know that i would be falling into a neverending hole that is programming. He taught me Visual Basic, graphical user intefaces and winsock (Yes, Winsock can you believe it?). I started writing client server applications, building nuking programs, writing backdoors, building anything i could ever think of.
In 1997, i got a hold of a CD from a magazine that had a version of the java sdk (1.0.6 possibly at that time). Curious as i was, i started learning Java and was very happy with what i could achieve. In 1998, college time came and the possibilities were endless. I was so involved that i barely saw daylight. I got employed the very first year of college as a part time computer programmer. I was exposed to so many languages that I can't even begin to start listing, let alone being totally addicted to linux and all the niceties it provided.
Well, that wasn't so bad, i guess i summarized as much as i could, but it shows you how i got started.
Joe
Story time! My turn.
My first contact with programming came rather late, and compared to most of you, I am probably what you would call a late bloomer.
I first got involved with programming at 17. It was the final year (terminale) and math teachers made us buy extra cool Casio calculators (should get my hands on one of these again). I also should mention I hated Chemistry (still do). I knew you could "write programs" on it, so I start playing. It didn't take me long to find out how to store a value in a variable, figure out how "if/elseif/else" and "while" worked. I also was a big math geek. So I enjoyed implementing programs that resolved linear (and 2nd degree) equations, simplified trig expressions, and advanced arithmetics (I don't think I'd be capable to pull it off today). Those programs became insanely popular amongst my friends who could now solve their math homeworks really easily, and spread like crazy. To this day, I think that these were my most successful programs.
What I take from this period is not learning to program at all. I feel like I've learned the basis of algorithmics and imperative thinking.
A year later, I'm studying to become a civil engineer. I love maths and physics, so figure why not? We have a mandatory "introduction to programming" in C++. That course taught me one thing: NEVER teach C++ as a first programming language. Unlike the lightweight fun I was having on my calculator the previous year, programming had become something ugly where you had to memorize a lot of useless sorting algorithms and bla bla bla.
Although I didn't like it, I was good at it. A couple of years later I decide to leave the country and go to France. By chance I get accepted in a prestigious school specialized in "new technologies". I decided to go, and give Computers a shot. We start with a C course, then second semester is Java. By the end of first year I know C and Java, (foolishly thought that'd be enough to know C++). They then went on to teach us JEE, C# and .NET, PHP, Javascript. Some hardcore SQL on Oracle databases (yuk!) too. We coded all sorts of projects, from artificial intelligence, to pacman, a home security system based on facial recognition, an augmented reality project. My final year internship was for a small company operating a 2 million unique visitors per month website. Hardcore web technologies (mainly PHP and Javascript).
Despite all these interesting projects I never really got into programming. I'm much more of a system engineer than I am a programmer. However, real passion occurred last summer, when I was approached by Google.
Preparing for the rounds of interview, I started coding like a crazy person. And although I didn't get the job, it was a very positive experience: It made me love programming again. I realized that what I dislike really are database-oriented applications. I don't care about what DB vendor to use, or whether the next version of IE will abide by the standards. I don't want to read Javascript, it's ugly, stupid and gross. I don't care about how to minimize the load, or use a cache system. I don't care for MVC, really don't.
What I do enjoy on the other hand, are tricky clever mind challenges. I like solving algorithmic puzzles, solve equations, tackle real problems. I also learned to like how cool low-level really is. It's fun, challenging and amazingly beautiful. I started learning assembly for x_86. And combining my passion for Unix systems, I now spend time coding system components. I recently released a first version of my Unix shell. I'm currently working on a bootloader, (old project of mine, I'm hoping to publish one day).
Padre
I'll be rather short, since im on vacation and it's half drunk.
My father tought me BAT scripting when i was 8, then VBDos a year later. Then reference book for C , later a Book for ASM x86 and just before hitting uni, was programming a few micro-controllers and stuff.
now i barely touch any programming ..... best case scenario, a few max scripts.
rolf
Well... although I had an Atari like xterm, with BASIC of course, I never really sat down on it to program it. Too many games :-) to have fun with (montezuma... there was some kind of flight simulator, very primitive but quite annoying - almost impossible to land with the dumb on/off joystick and if your landed anywhere outside the runway you exploded with a horrible cheap 8-bit sound and screen flicker - I also vaguely remember something called gorilla...). Anyway, I started "programming" when I was about 11 and for some reason the computer was set up in my room... I read the BAT files that ran at startup and pretty quickly understood them and modified them for my own personal use. My dad was very impressed (and that doesn't happen very often)...
One of my friends also told me that he did some programming, in pascal I think, and wrote a program that would open the CD tray. I still remember the feeling I think... I didn't even know that the CD tray could be opened from the software, and felt it was impressive that you could control a piece of hardware through software instructions, I guess.
But I did not do any programming until much later, when I was about 18 years old. Again, those damn games... Need for Speed, Doom... I had a crush on a girl (I guess you could call it this way - although back then I thought I had found LOVE) who eventually slipped into a black hole and did not even answer my emails after she had left the country. I think this is vaguely connected to me starting to look into hacking. I still remember finding the debian site for the first time. I still remember how it looked back then, the logo... It was full of optimistic text, but all I wanted to know is if this thing had a GUI (and what it looked like). Naive as I was, I thought that GUI meant that it was useable! And about 1/2 year to 1 year later I started building my personal website in PHP.
PHP and HTML were easy to work with, CSS was the brand new thing :) and frames and Javascript gave me a hard time. I thought that I could do wonders with code, and that in some way it could change my life. I still think that from time to time. In the next 6 years I bought books about assembly, C, Java, Linux Kernel, Embedded Linux, algorithms, and I probably forgot a couple of them (Let me know if you want them). I barely read any of this.
I am not sure what to conclude...yet... but it surely is nice to take the time to look back.
Kassem
Yeh I remember I had this Atari keyboard as well. The interface was in Arabic and I kept trying to find some useful programs or execute some commands but I never figured out. And just like xterm, what really made me fall in love with computers is the fact that my next door neighbor (when I was about 9-11 years old) was a total geek. Because he knew how to format a HDD, I used to look up to him - that was a huge thing back then.
rolf wroteI think this is vaguely connected to me starting to look into hacking.
I think we've all had our "hacker time" when we were a little younger. I remember my best two break-ins were:
1. Hacking into a website using SQL Injection. I hacked into the admin panel and found the jackpot: thousands of credit card info (most of which were expired). But I've used those to buy some software, a domain name and $50 of yahoo credits to do PC-to-Phone calls.
2. Breaking into a computer on my LAN. The guy was actually a hacker himself. I found several hacking software, a credit card validator, hundreds of emails and their passwords, porn videos, and some images of his family.
Unlike all of you guys, I never had any experience with Linux. I used to think it's some ugly overly-complicated piece of crap. The first time I installed Linux was because I was highly influenced by rahmu's discussions of Linux and OSS. :)