#100DaysOfCode - My Journey

 


I completed my first #100DaysOfCode challenge on 27th June 2020. The whole idea of the challenge is that you publicly commit to coding every day for 100 days. During this period, my experience has both been overwhelming and underwhelming. In this blog, I hope to highlight my experience and also to offer advice to others doing it to make it more effective and gain the best out of it.

My Journey

I am a bachelor of marine engineering. My major studied ship design, engine systems, propulsion systems, electrical systems, piping systems, and offshore structure. As you can see, my entire discipline is not focused on learning programming. But where do I start to know programming?

I started programming in September 2017 because there was a course called Computing and Programming, but didn't take it seriously until two years later when I was doing research for my thesis.  

My research is about identifying damage to underwater pipelines using image data. During the model design process, I began to study the implementation of programming logic for my case. Because I have a weak foundation in programming, my one year research time was wasted.

Because of that bad experience, in early 2020 I started planning how to manage my time and how I would learn programming. One day, I shared my story on Instagram about learning programming, and one of my viewers introduced me to the #100DaysOfCode challenge. That's where I started learning what #100DaysOfCode is all about.

So I started the #100DaysOfCode challenge to have a process to help me with my goals and as a way to code daily and do projects. At this time, I had no project on my GitHub that I made.

Going into the challenge, my goals were:
  • Improve my Python skills
  • Improve my Java skills
  • Improve my Android development skills
  • Learn about Artificial Intelligence
  • Learn about Machine Learning and Deep Learning, study case
  • Learn about MLOps
  • Build program. Lots of them!!!!

Challenge Encountered

I discovered a lot of people don't usually talk about this and are quick to list out their achievements but I'm gonna be honest and state the challenges I faced:
  1. Hardware performance: When I learn machine learning through case studies, it takes me one week to do the data training process. Waiting for the results of the process makes my learning time longer and sometimes makes me frustrated. This may not be the case for other people, but I think the hardware specs really influenced my time management and progress while doing this challenge.
  2. Over-coding: At the start of the challenge, I was coding for over 8 hours per day. When I started coding, I felt addicted and more and more I felt tired. From that experience, I started to limit my coding sessions.
  3. Imposter syndrome: I discovered that the times I experience imposter syndrome the most are when I want to start a new project and I'm stranded not because I don't know what to do but because I doubted myself if I can complete it. During this time, I experienced a huge bolt of impostor syndrome because I felt I needed to have projects to show off. Additionally, if I download someone's code from GitHub and examine it, I sometimes feel hopeless because I think I can't write code that way. However, it's vital to know there are other approaches to achieving the same goal.

Projects Completed

As I mentioned before, I had never finished a project before I began the challenge, so I concentrated on that. Ultimately, I was able to finish the following projects:
  • SPECTA -- This project is my thesis research on designing a damage identification system for underwater pipelines using image data.
  • COVID-19 Detector -- This project is a program that uses the Convolutional Neural Network (CNN) method to identify patients with Covid-19 symptoms based on X-ray image data.
  • HealthyMe -- an Android-based application that provides personal health monitoring features, health consultations, as well as disease information and treatments.

What did I gain?

  • During this time, I made my first ever finished project
  • I certainly improved my Python skills. This has led me to write more simple, elegant, and easy to read code.
  • I received comments on my efforts and swift responses to many of my inquires. One of the highlights of challenge was this. Always use the hashtag #100DaysOfCode to ensure you get responses promptly.
  • I started learning Machine Learning. This is something I'm proud and become the basis of all my innovations.
  • I met awesome people who are always ready to give advice or offer help to my code challenges. I also gained followers on Instagram, this may not sound relevant but having a social audience is good as a way to showcase your skills and to network.
  • Finally, during a challenge, I applied for a course at Harvard University. Even though there were several courses that were not in line with the goals I set for the #100DaysOfCode challenge, my basic understanding of programming was getting deeper which unknowingly helped me in completing this challenge.

Completing the challenge

When I finished the challenge, the first two things I felt were feelings of accomplishment and relief.

Thanks to #100DaysofCode Instagram and Discord community, David J. Malan, and CS50 Harvard community members who have been of tremendous help during this period
 

Comments