Here comes my first app I created from scratch, sort of...
Anytime I work on any project, there's a fighting match between my ideals and objectives of the project in my mind. This time was no exception but I was successfully able to let the objectives win, or I wouldn't be able to make it to the deadline.
Keep it simple
So what my little simple app does is to find a lyrics of the song by entering any keyword into search box, returns a list of 'suggestions', then a user clicks on one of the 'Get lyrics' buttons, it displays a lyrics. Then 'Clear search' button let a user to clear search results.
Even with this simple user story, there were few obstacles that I knew I would have to tackle. so I said 'Fugettaoutit' to myself already have started wanting to make my app fancier, adding another fetch functions to display youtube videos of the songs.
Obstacles
To get my JavaScript right is the biggest hurdle of all.
First, need my API source site to return the data in the way I wanted. I asked a question to my instructor promptly before getting myself into a tunnel of try-fail. Thanks to my instructors guidance for time frame to keep up to speed. I said 'yes!' when I saw those tiny letters of data strings proceeded by a word 'promise' in my dev tool of Chrome.
Second, finding code and constructing them into function to get my app to work. I did good planning and made a list of objectives before starting to write my code. However since I was still not sure what words in what order exactly I can use, none of my code seems working. I got into my mix-and-match game of keywords, reserved words, methods and expressions... Not a good state. So I started to look into my past lecture videos and forked repos of lab. Then started feeling each one of the code pulling me in further study. 'Fugettaboutit! With all these days of juggling classes and work hours dragging my not-so-young body, there's no way at the point I magically understand and memorize them all by cramming them.'
Again thanks to my instructor's advise and Google, I somehow stumbled onto code I can reference and modify to my app. Then I studied and compared to my materials from lectures each code and changed parts to make more sense to myself. Then came the 2nd 'yes!' moment when my Live server displayed 'suggestions'!
Learning curve
I can't seem to point to what problem I had to get project to work. In my case problem resided in managing time. I love learning new things however I tend to overwhelm myself by try to learn more than I can absorb or needs for time being. Tackling one issue leads to another and blocks the flow. 'Fugettaboutit! Why can't you just copy what you've learn and move on? Stop deep digging..'
After all, reviewing through my code writing this, I noticed slight change in my way to read the code. They actually started growing into symbolic state and making sense to me.
Top comments (3)
Thanks for sharing insights on your journey! Wish you the best on your learning!
Thank you for reading my bare bone piece of struggling mind. Hope one day I can look back and smile but for now just thankful for this friendly community of diversity.
You will get there I’m sure! Your piece is a good insight into the real thoughts we have when building things. It’s a place I feel new to as well. Sometimes all you need to identify is to read about other’s experiences with similar struggles of software engineering; so I am thankful for your post.