How to learn tech - My Experience

How to learn tech - My Experience

Curiosity doesn't always kill the cat

day68-happy-cat.png

"It may be hard or it may be easy but you will never know if you don't start"

Learning something takes a lot of discipline and commitment. It requires making sacrifices for comfort sometimes and making sacrifices. It also takes patience and perseverance.

I know this personally because I started transitioning into more practical technology recently. I started as a breeze, I found interest in the various applications of tech. The fancy things caught me. Things like cloud computing, big data, machine learning, robotics, IoT. Although this isn't out of place to be interested in. I wanted to jump right into the deep side of the pool and start swimming, something that I have came to both cherish and regret a number of times.

So how was my journey like?

day66-travel.png

Well it has it up and downs, victories and defeat. That I'm not done with it yet. There is still a lot of things I need to unlearn and a lot of things I need to relearn. So here it goes. It may not really be detailed but I'm going to include some key things.

Just like most people reading this, I'm always looking for ways to improve myself in character, skill, spirituality and relationships. This made me very picky with the kind of friends I kept and somehow open me up more to the outside world (the world beyond myself).

Starting at the beginning

Back in school, I was one of the brightest kids. I was really good at math, physics, chemistry and also computer science. I would usually ace those classes, getting As back to back but it was about the grades for me.

See I didn't come to school to make A and just step out I know nothing practical. I was always trying to relate what was taught in class to things in the outside world. I would watch documentaries and read magazines that were very informative. Anything that had charts, numbers and designs fascinated me.

So as a result, I wanted to be an engineer. Obvious though. I wanted to create machines that were never before thought of. I build make sketches of robots and droids. Paint systems. Create my own mathematical formulas. Good times.

However, I got admitted to study Physics. Although something I didn't offer for, it was what I got. I contemplated changing courses but this was pushed aside when I had I went for the Physics induction organized by members of the student executives of my course. I was told that physics was about solving real-world problems so I stayed. Those words inspiring me to even become an evangelist for my course and gave me some pride though.

Honestly, though, this was not the case. Although I tried to deny it so many times, my course never taught us anything practical in the most part. It more of theories and bombardment of formulas that we had to memorize. But we did have a course on problem-solving, it was called "Introduction to Problem Solving" CSC 129.

This course thought us C and when I learnt that you could apply the same skills learnt to build actual software and robots (my eye-candy), I caught on fast. I will use the computer lab to practice what was taught. I also never joked with my outline. Although my interest was in becoming better with the technology I didn't really learn the more practical aspects of C.

You can't cram a skill

In every way possible, I wanted to learn more about programming and even though my interest was in gaining more knowledge, it was not geared towards putting it to practical use.

So let the confession continue. I enrolled in a Java programming class when I was on holiday at my aunt house. I enrolled because I wanted to learn "whatever it is people are learning these days", so Java was my pick. Don't worry, I'm not about to slander Java. However, I hadn't really understood the key concepts. My goal was "what was my goal again?" Lol! My goal was just to be good at it and have another certificate to say "Java Expert" or "Java Legend".

I signed up for the certification and the cost was ₦95k. That's about $500 (back then). Classes started and at usual I was feeling the usual hype, just one problem. Java wasn't like C. Java was object-oriented, a concept I hadn't grasped well at the time. I concentrated on reading the handouts and memorizing the syntax which was a mistake.

I was about two weeks to the certification exams when I was given some practice questions to go through. My priorities were not well placed. I focused on passing the exam, cramming all the code I saw instead of actually practicing the code. I thought I knew everything I had to know to pass the test but things backfired on me.

The exams were about applied problems and required has on knowledge of code, not someone who could barely remember how to print "hello world". Yep! I failed the test. $500 gone and I still barely knew how to write basic code with Java.

Getting into the practical

Practice may not make you perfect but it will surely make you greater

To be better at anything, you have to do it again and again. It called gaining mastering. In my undergraduate internship, I worked for my State's research institute. Although it was in a dilapidated state, it turned out to be where I had the most exposure to projects that enhanced my skills and my ability to think creatively.

During the internship program, we were often given projects to complete within a particular deadline and each project had a leader. An intern is also expected to build a project of their choice within a month. It was a great way to gain hands-on knowledge.

I made friends with a lot of people during the program among which included Francis and Michael. They were prodigies and great with electronics. I had a particular interest in digital electronics and proposed I build a digital watch. Although looking at the nature of the project, my supervisor designated a moving message display project to me. This project thought me a lot about the practical aspects of digital electronics, especially how to program the machine code.

I also work on a pulse sensor and an automatic door with alarm systems among other projects. At the end of the 6 months, I had a lot of practical knowledge of how to write good machine code for microcontrollers like Microchip, Atmel and Arduino modules. Most of these skills made me learn more for myself and also grew my spirit of teamwork.

Volunteering and helping others

You learn better when you teach others and make them get better.

Back in uni, it was time for our final year projects. A number of students were assigned projects that needed them to work on automated machines so I offered to help. This exposed me to a lot of projects and I started to become popular as the technical guy.

Helping people from circuitry design to actual project implementation for free was never draining for me. It was exciting. It taught me OOP, arrays and data structures. I also learned how to serialize data and a lot more. With these extracurricular skills, I started teaching people how to code their own projects and started giving advice to junior year students.

Above all my earlier years of learning were driven purely by curiosity and my fascination to do something unique and different.

The following years will see me at some of my lowest points but that will be from part 2. If you liked this please do show some love and also live a comment.

Remember to live inspired and have a good one. ❤️✨