My Father, My Mentor, My Teacher

Today, I want to get back into the swing of blogging with a brief overview of my relationship with my father over the past 21 years of my life. More particularly, I want to give an overview of my relationship with my father in relation to the teaching and mentoring he provided me as he guided me through my learnings as a developer and more importantly his firm but guiding hand throughout the entirety of my career. My dad isn’t a developer, he was a Program Manager for a development company for a lot of the time, but during the time line of many of these events but he’s the best development career coach I’ve ever had! I picked some of my favorite moments with my dad as he assisted me through my career as a developer as well as things he’s done to better me as a person.

5: Don’t learn or work with PHP

Calling this moment a favorite is a little bit of a joke. He told me not to learn PHP years and years ago and I switched from PHP to Ruby and I haven’t looked back yet. Of course I will code for a PHP project if that is what is required of me, but I much prefer to stay away.

4: Giving me numerous projects to do

This isn’t a single moment, but a collection of many moments that are all closely related. Over the years, my dad has given me numerous projects that closely correspond to what things he wanted me to learn. When he wanted me to learn about collections of objects, he told me to write “Deal or No Deal”. When I finished, I had used $BOX1, $BOX2, $BOX2, $BOX4… all as separate variables and he taught me to use a collection of objects instead. That refractor made the code much, much cleaner.

3: Great, now implement a database

When I was pretty young, I was writing MS batch scripts that implemented persistent data with my own home grown serialization solution, my ego was huge. I thought there was almost no code situation I couldn’t encounter. Little did I know that I had only experienced the tip of the iceberg. In fact, all my career I have had a huge ego towards the amount of code I knew. Due to more recent events (mostly with my dad), I am starting to understand I will never know everything. Anyway, he said “Great, no implement a database” and I couldn’t understand why I would ever need a database with my own homegrown solution. Now I understand that obviously serialized text files don’t scale (not a direct sham on sqlite, I promise!). Of course, I didn’t know what to make. He recommended I start simple and make authentication. Something I really struggled with is the fact that to me, databases seems like excel databases with an API interface. But little did I know that they are much more powerful than that. As I reflect on this moment, I can’t help but laugh as databasing is one of my specialties.

2: Stay in scouts

When I was a Webelo Cub Scout (8-9 yr old), I was ready to drop out of boyscouts. I felt it was childish at the rank I was, since it was 1 year before crossover so I wanted to do more adventurous things and it felt kind of like a drag to go to meetings. After an extreme amount of convincing from my father, I decided to wait out that year so I could try boyscouts. As usual, my dad was right. Boyscouts rocked! I proceeded to get my eagle scout over the next 4 years, guided by my peers and family.

1: My first HTML lesson

This one is by far my favorite. It’s the moment I first learned how to code. I was with my dad while he was at work and I was particularly bored. I estimate I was a little less than 8 years old. I asked him for something to do and he said “Here, you know what… Let’s teach you some HTML.” I immediately thought “This sounds over my head” and became overwhelmed. He then proceeded to open msnotepad (yes, the crappy version included from Windows) and he wrote some HTML to the affect of:

<html>
<body>
  <h1>My First Webpage</h1>
  <p>This is my first webpage, here's the weather:</p>
  <img src="http://example.com/path/to/weather.jpg"/>
</body>
</html>

I was amazed and intrigued. Not only was it rather simple on the markup level, but we linked to an external resource. I continued to learn HTML at my computer with no internet, for legitimate security concerns for the age. I would look up the docs on a different computer, memorize them, run to my computer and try it until it finally worked. This is the moment I knew I wanted to learn development. Sure, there were some shaky times when we were choosing career paths in school… But in the end, I think from this very moment I knew I wanted to be a developer.

Thank you Dad, for everything you’ve done to make my life more excellent.