I am Flavius Aspra, father of one, husband of one, CTO at an e-commerce company, with a lot of programming and e-commerce experience. And yet, still learning.
I would like to keep this site rather professional, so instead of telling you something too personal, I will tell you the story about how I got excited about programming, and what still makes me enthusiastic about my profession.
I was in school, and luckily enough, I was at a school with focus on IT. The school had two IT curricula, one focused on Technology and Multi-Media, and one focused on programming.
I was in the TecMedia one, meaning the “underdogs”, because the other guys were the ones carrying their laptops to every class. Either way, I didn't feel inferior, because I was programming a lot at home as a hobby.
So, being this “high-tech school”, we also had things like an online learning platform, a server room, and a public website.
One evening, I wanted to check when the next vacation will start, so I went to the school's website. Fortunately, I misclicked, and landed on a login page.
It was beautiful.
So I wondered how it's made. I knew html, and I knew it's not possible to achieve that styling with just html. “It has to be flash”, I told myself, “but probably it isn't, because it's a bad security practice, so let's look at the source”.
And naive I was. Of course it was done in flash!
And so I started to dig in, to figure out how it's done. It was bad practice to do log-in forms in actionscript, but I thought that maybe the teacher knew something that I didn't, so I continued to dig in.
After a few hours of reverse-engineering, I managed to log myself as an administrator on the website. I couldn't believe it, but I did it. I was so excited that I couldn't stop.
In the next couple of hours I made some educated guesses based also on my knowledge about the system as a student, and I managed to get in over ssh and become root.
This was amazing. But I also realized that outside the sun would be on the sky soon, it was already almost 6 AM, so I had to prepare for school.
I was dead tired but very excited. Unfortunately I had to go to school.
At school, the math teacher called me to the blackboard to solve an excercise. I kid you not – the story goes akin to the Hacker's Manifesto. I solved it, half asleep, then I went to my seat. The teacher was surprised, because I forgot the second part of the exercise, and asked me “What are you doing, the second part is missing?”. I told him that I'm very tired, so he was sympathetic enough to ask me just to explain how I'd do it. It was in the end just a formality, and he knew that I was good in maths.
Back home, I first needed some sleep. But when I woke up, guess what was the first thing I did? Yes, SSH-ing back into the school server and snooping around.
I had hoped to find there test subjects or anything of help for my student life, unfortunately nothing there. So I sent an e-mail to the root user, documenting the security issue and how to fix it.
Over the next two weeks, every day after school, I would come to check if I can still become root.
Impossible! This guy is not even reading his messages! I thought. It was the informatics teacher with Microsoft certification, teaching the other class programming and “advanced stuff”. I tried to reach him via regular e-mails, nothing.
I lost my patience, so one day in the evening I replaced the starting page of the school's website with a manga image. It was a girl holding a donut, and underneath it said you have a hole in your system.
I was wondering if he'd noticed this one! Next day in the morning, I was waiting on the hallway for my favourite class: computer science, right across the server room. Guess who was running across the hallway with a CD in his hand? Haha. And he was not a small guy, he was huge. Finally! I thought, making him space, turning with my back to him and laughing to myself.
Sure, it was fun then, the memory is fun even now. But more than fun is the rush of adrenaline which I get when I remember this story. This experience has made me so thirsty for knowledge, that since then I could not stop learning and refining my skills.
I don't know if having such an experience is the only way to become excited about something and keep you going for decades, but it has been for me. This experience has taught me that you can do a lot of cool stuff if you understand how things REALLY work.
So I would say: find the things which excite you, pursue them, and let them fuel you. Give your best, improve your understanding, and the rewards will come back to you.