Page 1 of 1

What is your Age?

Posted: Sun Jun 22, 2014 6:19 am
by Muazzam
I was 11 year old when i wrote my first Hello,World boot loader about 1 year ago (now i'm 12). How old were you when you wrote your first Operating system, and what is your age now?

Re: What is your Age?

Posted: Sun Jun 22, 2014 6:42 am
by max
muazzam wrote:I was 11 year old when i wrote my first Hello,World boot loader about 1 year ago (now i'm 12). How old were you when you wrote your first Operating system, and what is your age now?
Hey muazzam,
I got into programming when I was about 14, and got interested in OSDev when I was 17 or so, now I'm 20.

Re: What is your Age?

Posted: Sun Jun 22, 2014 8:03 am
by Prostyle44
I started ( batch ) programming when i was 14 and I got interested in osdev at 15 years and started learning assembly language ( and have made a lot of beginner`s mistakes ) and then currently ( I`m 16 now) I have developed a stable base for my os. :)

Re: What is your Age?

Posted: Sun Jun 22, 2014 8:12 am
by Marionumber1
I began programming when I was 9, and wrote a basic hello-world OS based off the bkerndev tutorial at age 10. I lost interest in my OS project after I turned 11, then picked it back up in 2013 when I was 13 years old. Now I'm 14, with a much better understanding of OS concepts and an OS project that's doing well.

Re: What is your Age?

Posted: Sun Jun 22, 2014 3:01 pm
by DVicthor
I was around 9/10 when I started programming with python, 12 when i wrote my first bootloader, 13 right now.

Re: What is your Age?

Posted: Sun Jun 22, 2014 4:06 pm
by DavidCooper
I can't compete at the younger age end of things, but maybe I can at the other. I reached 30 without doing any programming at all, but then I acquired a second hand ZX Spectrum+3 for £2 in a jumble sale and spent a week learning to program it in Basic. I found Basic too limited given the small memory on the machine, so I started experimenting with the machine code numbers listed in the back of the manual, poking them into memory and running them to try to work out what they did, though armed too with a little bit of knowledge from a magazine that showed a diagram of the Z80 processor's registers and which explained a few of the most important instructions. Those experiments rapidly evolved into an operating system which I later ported to Amstrad PCWs before rewriting the whole thing to run on the PC, but the original one was done at a time when I had no Internet access at all, so I had nothing to guide me except for my own guesses as to how an OS might be done.

I'm now 46 and still building the OS, but only very slowly - the OS itself was never the main event, so it's being held back while I build something else that runs on top of it.

Re: What is your Age?

Posted: Sun Jun 22, 2014 11:20 pm
by gerryg400
A bit like DavidCooper I first used a computer quite late.

When I was a teenager and into my 20's I had absolutely no interest in any indoor activities. Around 27 I decided to change career and went to university to study Electronics Engineering. Up until then I had heard of computer programming (probably in movies and such) but had no idea what it really was about.

Even now my interest in computers is limited to writing my OS, managing my iTunes library and pretty much nothing else.

Re: What is your Age?

Posted: Mon Jun 23, 2014 4:06 am
by dlarudgus20
I started programming when I was 11. The more I learn, the more programming-field I was interested in, including osdev.

At that time, I tried one, and I stopped and tried another as soon as I felt boring or tiring. (hobby should be fun >o<)

Now, I'm 16 now, and I've resumed my osdev project since the beginning of this year. It goes very well, thanks to these osdever's help!

Re: What is your Age?

Posted: Mon Jun 23, 2014 1:31 pm
by onlyonemac
I'm still a teenager. I started programming in BBC BASIC when I was about 8 - it's still a good beginner's language even today! I then learnt to program an old Macintosh in C a few years ago, and now that I've switched to running Linux on my PC I program that in C as well (I was battling to get a C compiler set up under Windows). Anyway, I became interested in writing an operating system a few years ago, and I set about learning x86 assembly language (I found a few tutorials but I was a bit annoyed that they all made use of various DOS software interrupts). I set myself to the task of writing an entire operating system which would fit in the bootsector of a floppy! That failed when I ended up with mysterious crashes just by changing a segment registers (that was all in real mode - my problem was that I didn't understand how my assembler was handling 8/16 bit words). I've taken up operating system development entirely in assembler from scratch again over the past six months or so - recently I haven't been doing much work on my operating system but I'm still interested in the project. It's good to know that there are others as young as me out there!

Re: What is your Age?

Posted: Tue Jun 24, 2014 8:03 am
by Roman
I was 11, when I started programming in JavaScript, later I started learning C++ and other more "serious" languages. In age of 12 I started developing my OS, I restarted doing it around 3 or 4 times. Now, I'm 13.

Re: What is your Age?

Posted: Wed Jun 25, 2014 4:46 am
by elderK
I was seven when I started learning how to program. :)

Mostly it was just typing in BASIC code read from old magazines and text books I got from the local library. I didn't understand a THING. Not what I was entering did or what any of it meant but it fed the curiosity and fired up the determination to learn what it was it DID do!

I was almost ten when I started writing real "programs." By my standards of today, they were utterly trivial programs. They were written in QBASIC and were mostly bad emulations of GUIs such as Mac OS 7.6 or simple interpreters for imaginary programming languages. There was no mouse in the GUIs and everything was pretty much hardcoded but I learned the value of functions, structures (as far as QBASIC had them) and variables.

When I was eleven, I started learning Pascal. The desire to learn Pascal was motivated by what I perceived to be serious slowness in QBASIC in doing rendering. I didn't know any assembly back then or even know that it existed. Even if I did, I doubt I would've understood how to make use of it within QBASIC. Anywho. Most of my time in Pascal was spent "porting" the small programs I wrote in QBASIC. It didn't take the opportunity to really make use of the "new" concepts Pascal offered such as pointers but the experience did highlight the difference between the general principles and techniques of programming versus the particular syntax or constraints of a given language.

When I was thirteen, I started experimenting with C after getting into a conversation with someone from high-school. She handed me a massive book on C the next day. I had a lot of trouble getting started, coming from Pascal and QBASIC. Including header files and such seemed completely alien to me. Not having all kinds of bells and whistles provided out of the box also seemed alien to me as TurboPascal and QBASIC were pretty "batteries included" for their time.

It didn't really help that I was trying to code on multiple platforms pretty much from when I started learning C. I was experimenting in TurboPascal in MSDOS, Visual C++ in Windows, Watcom in OS/2 and GCC in Linux. My friend was instrumental in my progress. If it wasn't for her, I would've probably given up. She didn't explain things very clearly or simply but she never, ever, got sick of trying to answer my questions or show me how something should've been written. Or rather, how I could accomplish what I wanted.

I started playing with x86 assembly a few months after I started experimenting in C. This might sound kind of crazy but my friend was very much into systems programming. She was writing a kernel herself way back then and naturally I wanted to learn some of what she was doing. And so, I started off in assembly by writing inline assembly graphics routines in TurboC. It was very jarring at the time to me and it certainly didn't click. I didn't understand anything about the stack as previously it was just... magic, automatic. It wasn't until much later that I really started to understand those details.

The next few years were full of learning basic data structures and through implementing those structures growing a rather basic understanding of pointers and how to utilize them. Around this time I swore to never use any extensions specific to a given compiler as I was very annoyed when a large chunk of my TurboC code wouldn't build on BeOS or Linux. I had no understanding of "Standard C" or "Standard C++" back then. It was just C or C++ to me. I thought it was the same everywhere! Well, it wasn't and lesson learned.

More years passed and more advanced programs were written. Basic games, experimenting with OpenGL, learning a little Javascript, PHP and MySQL. It's a large list that I can't remember fully. One thing stands out in my memory and that is that my knowledge of data structures didn't really grow during this time.

Fast forward to me being seventeen, when I initiated my first kernel project. This project more than any other pushed the boundaries of my understanding. It taught me more than anything else I'd ever done with relation to programming. I started researching intensely to achieve the things I wanted, to understand what I couldn't. Data structures, compilers, processors, memory management, parsing. The list goes on and on and on. Many people on the predecessor to this forum helped me. Of them all, Candy was the kindest and most understanding. He was always happy to answer my questions, regardless of how simple or silly they seemed.

Now I'm 27 and while I'll never believe I'm an expert, I've certainly grown skill and understanding. I am where I am because of the people who've helped me and the projects I've done. If it wasn't for the kernel project way back when I was 17, I really wouldn't be where I am now.

Or rather, I'd be one of the "clueless" developers I consider many people I've encountered in jobs to be. Those, who like myself years and years ago, have no real understanding of the architecture of the machine on which they work. No idea of the stack, no real understanding of memory management or what the heap is. Poor understanding of data structures. No understanding or even knowledge of omega notation. The environment they work in and the languages they use make that understanding optional: data structures are provided out of the box and are, in languages like Python or Javascript, an absolute cinch to use. People can use things like associative arrays, etc, without even knowing it.

Things have certainly changed a lot in that sense. Depending on the language you choose, it's trivial to write programs that once would've taken some serious understanding and time!

~K

PS: There were a lot of other people that helped me out, people that seemed to have vanished! They used to frequent #osdev. Names of cippo, ronny, silverfox, etc. I wonder what happened to them.

Re: What is your Age?

Posted: Wed Jul 02, 2014 9:03 am
by tcsullivan
(I could write for a couple pages about this, but I'll keep it short)

I started programming when I was 11, we had a school project that required making a website with Google Sites and I wanted mine to be cooler than everyone else's. I taught myself basic HTML and CSS.

When I was 12 I got a Kindle Fire. I didn't like the interface and learned how to change the launcher which eventually lead to rooting and modding my Kindle Fire. I also became interested in the Android OS which I guess sparked my interest in OS programming. I learned a lot about C, C++ and Linux and programming became one of my favorite hobbies. My friend and I wanted to make an OS, but ended up wiping the hard drive on my old laptop :P.

I got a new laptop when I was 13 and put Linux on it within the first week I had it. I learned how to get the Android source code and successfully built Android for my Kindle. Later I found out about OSDev.org and made a simple "Hello, world!" kernel. I added some more stuff from there (keyboard, interrupts and the PIT), but every couple of months I would reach an unusual error that nobody else has gotten before and take a break from OS developing. I also got 3 Raspberry Pis (I was supposed to get only 1 but there was an ordering problem) and learned a lot from those, mostly about programming for real hardware like LEDs and buttons.

I'm 14 now, and I've mastered C and I've become pretty good with x86 assembly (nasm). I got a programmable watch from Texas Instruments and learned some more stuff about assembly and C. My main project now is making a kernel yet again, I've decided to take my 6th shot at it.

At the rate I'm taking things, I'll probably have a kernel worth sharing after my 10th-20th try :D.

Re: What is your Age?

Posted: Thu Jul 03, 2014 9:53 am
by hometue
Lets see...I was about 9 when I first wrote my Hello World program (In visual basic, I regretted it later on as I realize how bad it affected me when I switched to C++, I was wondering where is my window :P ). Also it is around from then which I got the habit of viewing the source of webpages (which gave me the ability to understand html, not really that good but I was self guided then and didn't know about w3schools so to me its quite an achievement...) And I picked up C++ (and a little C) at about 13. Started getting interested in osdev at about 14 which resulted in the current 15 year old me to be attempting to code some form of OS (which sucks really badly considering I haven't even made keyboard to work). Though I do believe age plays no role in what you are capable in doing.

Hm...looking back I really wonder what drove me to start with visual basic, not saying its bad, but it really wasted me a few years on my basics. Probably would have integrated better with C++ if I didn't have the mindset that it is very similar to visual basic. Also looking at others it seems that what I have achieved is not a lot, neither do I have any hardware to play with which is really a pity I can't experiment with those...

Re: What is your Age?

Posted: Thu Jul 03, 2014 10:13 am
by Schol-R-LEA
I was fourteen when I started programming, some thirty-three years ago, using the BASIC on a timeshared Prime minicomputer. I lost access to this after about six months, and didn't pick it up again until I was seventeen, at which point I got an already outdated Apple ][+ and began working in AppleSoft BASIC, including a high school elective course.

My next language was Turbo Pascal, first on a DEC Rainbow (which ran a version of MS-DOS, but was incompatible with the IBMs of the time) then on the PC. I quickly moved into C in a programming course (using the then-new Turbo C), and learned Modula-2 and a smattering of Ada on my own but had no real chance to work in either one. Oh, and I puttered about with Golden Common Lisp a bit, but never did much with it.

My first paid program, speaking very loosely, was in FoxPro for DOS in 1996 - they deliberately wanted to use this instead of the new Windows version, so they could use older 386 systems as Point Of Sale kiosks. The whole big mess is described here, along with the code, which I got the rights for after it was (partially) finished.

I then got a 'real' programming job, working on a package in MS-Access. The less said about that the better, really, though at least one funny anecdote came out of it.

Over the past thirty years, I have learned dozens of languages, at least to the point of being able to read them. I am solidly versed in C, C++, Java, Python, Pascal, JavaScript, x86 assembly (especially NASM, but I can work in other assemblers), and Scheme. With sufficient references, I could work fairly easily in Ruby, Perl (I actually knew it fairly well, once, but my experience is out of date), Common Lisp, C# (ugh), VB.Net (double ugh), Clojure, Icon, Modula-2, Oberon, and Ada. I can with some effort read Fortran 77/90, COBOL (eek!), SNOBOL, Forth, and other several assembly languages, though I would be hard pressed to code in them.

And I am currently in the process of implementing an assembler, Assiah, and a Lisp family language, Thelema. I am hoping that they will together be suitable for systems programming. This is unusual, I realize, but the way I am implementing Thelema (with many things normally part of the language, such as garbage collection, being implemented as macros and compiler extensions) should make it possible.