I've always had a fascination with learning how things work, and that definitely latched on to computers specifically.
I wouldn't be able to tell you the number of toys I ruined(and some that I didn't) by taking them apart to see how they ticked. My mom did say recently that, while I did break quite a few things, she wasn't upset about it because it was clear I wasn't destructively smashing them, breaking them on purpose; I was examining them, trying to see how they worked, and putting them back together. I just sometimes couldn't do that last part.
Computers have always just... clicked for me. My first interaction with any computer at all was actually in school, either Kindergarten or 1st grade. Probably Kindergarten, back in 1996. Back then, computers weren't quite yet expected to be in a home, and though many had them, we did not.
I always just loved exploring and playing around on the computers. I would then happily show my teacher what I figured out. This led to a very amusing conversation with my parents on PTC day, in hindsight.
Teacher: "He's very proficient and comfortable with computers, it's good to see someone who grew up using one."
Mom: "Huh? We don't have a computer at home..."
Teacher: "Are you kidding me? He's shown me how to do things on my own computer I didn't even know about!"
Shortly after that, my Dad started getting into computers, and picked up some information on building them. At around the same time, IIRC, my parents picked up a Vtech PreComputer Unlimited. It was a little self-contained PC that plugged into a TV, and could do tons of basic things. See
www.youtube.com/watch?v=uI63JvsrluY (it was called the Vtech I.T. Unlimited in Europe)
According to my research, that system came out in 1998, which I believe matches up with what I remember about it. Among other things, it had a simple BASIC interpreter on it. THAT was my first experience with programming, and I had fun with it, although I didn't truly have an understanding on how things worked back then.
I loved watching my Dad work on the family computer. Windows 98 SE, Pentium Pro, with a Maxtor 720MB hard drive that my Dad was proud to get on sale. I can't remember how much RAM, but I remember the Pentium Pro because it looked large enough to cook a poptart on it. I'm pretty sure that computer is still at my old house, though not in any usable condition anymore. We had MindSpring dial-up internet, and went over to AT&T DSL later.
My Dad had picked up a book to assist him in putting the thing together: The CompTIA A+ Certification Guide, Second Edition. I must've read that book myself at least five times. I absorbed it, and had fun playing around on the family computer. Less fun, when I broke something, and couldn't fix it, and my Dad had to spend the evening when he came home from work reinstalling Windows 98...
And thus it went for the next few years, with my interests bleeding over into video games, as well.
I started middle school(6th grade) in 2001. There, I met someone who would become my best friend through middle school, and happened to be as into computers and video games as I was. It was in late 2004 or early 2005 when I was at his house, and he was showing me a program he wrote to keep track of the points and actions during a Yu-Gi-Oh card game match. I saw it was written in BASIC, and was surprised to see it on a Windows machine. I'd never thought of it being there, having connected it to just the PreComputer. So I looked closer at the program he was using: Liberty BASIC. And I'm pretty sure he was using an old version at that point, either 2 or 3.
I looked into it myself, and installed the evaluation version of Liberty BASIC v4.01. I also found Just BASIC, and wound up joining the JB conforums on March 30th, 2005. I later joined the LB conforums on May 16th. That would've been at the tail end of my 8th grade, my last year of middle school. That matches up with what I remember, as well; I wound up showing another friend of mine in middle school all about LB and JB, and my best friend and I wound up using a program we wrote in LB as part of a class assignment in 8th grade.
The second half of my freshman year of High School, I wound up taking a computer programming class. The teacher of that class was a wonderful and intelligent math teacher, but unfortunately, I got the impression that she wasn't very familiar with the subject in question, and that the main reason she was teaching is because it was classified as a Math class. We used Visual Basic 6.0 in that class, and though I didn't wind up learning very much, I was able to help out a lot, and enjoyed the class, while getting an easy 'A'. It also amused me to slip LB onto the computer I was using, and use
that to write the tons of boilerplate code that VB expected. Hooray for automation!
This whole time, I'm teaching myself various programming languages that I've picked up over the years, and played with projects of different scale. I also got in trouble for messing around too much on the computers at school, and wound up getting banned from them for part of my Junior year, IIRC.
My Senior year, I had a free term to take an Independent Study, which lets you go back to any class you've taken and help out there. Although Programming was a 2-term class, I could still take an IS on the 2nd term only. I decided to go back to see if I could help that teacher out again, since I figured it'd still be fun.
I was right that it was still fun, but I was
completely wrong on the class. Between my Freshman and Senior years, the school had hired someone that actually
did have programming experience, and had a whole new curriculum for the class. He was teaching Java, as well as the foundations of Object-Oriented Programming. THAT was when OOP finally clicked for me, and I learned so much from that class. (I also learned that my poor opinion of one of my teachers was less biased and more justified than I had originally thought, but that's a whole different story. I hope, for her students, that she wasn't a teacher much longer.)
I'll work on all kinds of projects, usually anything that catches my fancy, or makes my life easier. I made a companion to a ticketing system used at my previous job that made gathering customer information much faster. I made a script to check the amount of login attempts my public SSH server gets, just to watch the botnets fail for giggles. The ticketing system was written in C#, the script was first written in C/C++, and then converted to Python.
I added features to a script for managing the root and VPN passwords on a Juniper firewall.
I made sites in HTML/CSS/Javascript, and built a basic MEAN-stack web app. (Basically, a site where nearly the entire thing is written in JavaScript, both front- and back-end.)
I created an Android app in Java that keeps track of and makes it easier to solve the Fallout 3, 4, and New Vegas hacking puzzles.
I made a Java app that loads and displays the seed value for Minecraft saves, back when Minecraft first introduced the ability to specify the seed for the RNG to use to generate the world. I think that was Beta 1.3.
I created scripts to manage the creation, licensing, and removal of user accounts and Office 365 licenses for a company I worked for, in PowerShell.
I once started a project to build part of an actual operating system. I got as far as being able to load code from anywhere on a floppy disk, partial integration of an FAT filesystem to make it easier to update the builds, and being able to echo keystrokes on the screen. That REALLY gave me an appreciation for how much work the OS and higher level languages hide from and do for you. That was in x86 assembly and C.
I've been a part of the LB community since 2005, and while there have been ups and downs(such as a tempban that still makes me cringe when I think of it), I am very glad I was lucky enough to stumble across this community, and very satisfied with the choice I've made to remain a part of it.
I've learned so much more, and know so much more about computers and programming now. And yet, through it all, I've still always had LB installed. It's simplicity for just whipping something up to take care of a task is something I've always enjoyed.