INTRODUCTION
Reminiscing right now, all Projects came with their challenges and lessons but there is one specific one that I won't forget soon. It was my first React project, after learning the basics I wanted to get my hands dirty and decided to build something to test my skills.
Project
I call this product Fitz, it is a product of my wild imagination on a fitness web app. I didn't want to build something common, I wanted to challenge myself and work on something that I had to do a lot of learning and researching. Fitz is a fitness web app that lets users check their BMI, get healthy recipes and get work out plans that came with images.
Development
Starting out, everything was going well. I had created my user flow, created the landing page, created some components but then I got to the part where I needed to implement some of its functions, suddenly I started to struggle.
Creating the components was easy but building the various states, handling forms and interactions for these components shone a light on my inexperience with react.
That didn't stop me, it only made me dig in more to get to the nitty-gritty of React and figure out the solution. I had other challenges that were not technical and stack overflow couldn't help out, but I found a way around it. Here are those challenges:
Challenges and Lessons Learnt
Motivation
Saying you want to do something is easy but actually doing it is the difficult part. The fact that this was a personal project was all the motivation I needed to go on Instagram and scroll for two hours, Korean movies had a hand to play in making me procrastinate but that's a story for another day. In the end, I had to keep reminding myself why I started this project, what motivated me and what I wanted to achieve. Realising that I was the one holding myself back made me put in more effort and work through it.
Ask For Help
I got stuck at some point during the development process and I learnt that it's okay to ask for help because the possibility that someone has faced the same similar challenge is very high. I also learnt that Google is my friend as I came across solutions on Google and also reached out to other developers.
Inadequate Planning and Research
I failed to do enough research before starting the project. Though I sketched how I wanted my User-Interface to be. I jumped into the code without finding out If I would be able to get an API(Application Programming Interface) for workout images. I couldn't get an API for work out images so I resulted in using gif-workout images. Going forward I have learnt to do proper research and plan before jumping into the code.
Set Deadlines
Since the project was a side project and I could do it at my own pace, I nearly abandoned the project but got motivated by a friend who advised I set deadlines to achieve the user-stories. which helped as I broke down my tasks into chunks.
Maximize Time
Time waits for no one and I can be a procrastinator and that was a big challenge for me because I kept procrastinating to complete it. I saw somewhere that a todo-list helps and it sort of helped me manage my time.
Conclusion
The lessons I learnt from this project was really worthwhile as it has helped me in other projects and would be useful in future projects to come. well as the saying goes
Every project has challenges, and every project has its rewards.
Stephen Schwartz