React JS— Learning to Swim
After some thought I took off my armbands and threw away my ever reliant floats, I decided to jump in the deep end of React JS.
Upon completing 1 or 2 crash courses from the likes of Wes Bos https://reactforbeginners.com/ (Highly Recommended) & joining a few developer slack communities I decided to take on a small scale personal project.
Objective — Create a simple open source to-do app. Sounds simple enough right? Yeah if you are anybody else but me.
A Tale of Failure & Success
Only I could take a simple task and over complicate it aiming to recreate the next Wunderlist or TickTick.
I gave myself two weeks, (bearing in mind I was at work during the day, my time was limited). Needless to say my first attempt was a failure, some days I would be stuck fixing bugs, other days I was trying to implement features that were totally unnecessary. When I wasn’t braking things I was researching how I could add Redux to the process… LOL! I was a mess.
Clearly this wasn’t the route to take & I was going against everything I previously mentioned in picking the tech that best fits your needs. I decided to scrap the entire GitRepo that I was working on, I was in over my head.
I took it back to the drawing board, I had a plan!
Create the most simple to-do app so that it can be used by others learning to use React. Features - Add, Edit, Save, Delete. Done!
Why was I complicating things before? Was it ego? wanting to show off my shiny new swimming goggles? Whatever it was I drowned along with it until a rescue boat called ‘simplicity’ came to my aid. Its another classic case of ‘Wanting vs Needing’.
Bliss found in Simplicity
In the end I am proud to say I finished it. It’s not a ground breaking application ready to get shipped to Play store.
It is however an entry point into React JS. I made sure the code was commented quite thoroughly.
It is something you guys can take, and extend to no end, or even just read through and get a feel for React.
You can find the Git Repo here: [ https://github.com/denzBrade/ToDo-MaterialDesign ].