Coding Yahtzee: Looking back and going forward

Bitcoin Optimist
4 min readNov 25, 2019

--

Looking back at Yahtzee…

Completing the front-end coding of Yahtzee has been quite an invaluable experience. Prior to completion, I lacked confidence diving into new code and learning it on my own. After going through the challenges of building a project from the ground-up all alone, that has changed. I now feel like I can learn to code anything.

The reason I feel this way is because I came across a YouTube coding channel called Net Ninja while searching for a quality React/Redux tutorial video (Technical Sidenote: I see the value of using an overall state management system rather than passing props into each component a zillion times. I also see the value of learning Hooks as well, so I watched that tutorial too).

While watching the Redux video series, I realized everything that came out of Mr. Ninja’s mouth was making sense, and it dawned on me that I finally knew what I was doing. Learning code wasn’t going to take so long anymore.

What made my good fortune even better, was Mr. Ninja including Firebase authentication and Firestore data storage in his Redux video series. This was convenient because Firebase authentication was next on my learning docket, and there was no harm in learning another NoSQL database aside from MongoDB as well.

While watching the videos, I also realized putting up a website with Firebase made sense, since everything needed to launch a website could be done quickly with one reliable party: GOOGLE. More specifically, with Google’s Firebase suite there will be no scaling limitations or unreliability headaches, and I do not need to worry about hosting a server or spend time dealing with those logistics. They do it all for me.

But the real dealmaker is that I trust Google over anyone when it comes to authentication and keeping data secure. They’re the #1 tech company in the world, and I can sleep soundly knowing that the sensitive stuff is in their hands. You never hear of Google being hacked…

With that said, I also see the value in being bilingual, so Net Ninja’s MongoDB tutorial will also be on the docket soon enough. Experience with two back-end databases can never be a bad thing to have.

When that time comes, though, I won’t just watch the videos — I’ll write the tutorial’s code into one of my 5–8 apps instead. Doing > Watching when it comes to learning.

Life after Yahtzee

And going forward, that’s my “coding learning plan.” I have 5–8 apps that all follow a similar design and business model, and I’ll integrate different languages and libraries into each.

For example, in my dietmatador.com app, I am going to rewatch the Redux/Firebase tutorial and use that state management system there. Then in my aletterforever.com app, I will watch the video for React Hooks and use that with the Context API for state management there. And so on…

Aside from the actual purpose of building a commercial application, I’m doing this to expand my coding knowledge base and increase my value as a developer. I think my value would rise significantly if I understood the following topics, so my goal is to do just that.

React’s front-end framework and JavaScript

  1. React state management vanilla style (have experience)
  2. React Redux (watched tutorial series)
  3. React Hooks and Context API (watched tutorial series)
  4. Javascript Application/Logic Flow, Functions, Array Methods, Input Logic Syncing, Conditional Rendering, etc (have experience)
  5. API JSON data retrieval and display (have experience)

Backend Necessities and noSQL database

  1. Firebase authentication (watched tutorial)
  2. Firebase hosting (watched tutorial)
  3. Firestore database (watched tutorial)
  4. MongoDB database (front-end experience, minimal back-end)

Design UI/UX and .css

  1. Tailwind’s utility-first CSS framework (have extensive experience)
  2. Customer-oriented design focus (have experience)
  3. Custom themes — light/dark/other (have experience)
  4. Mobile-friendliness (minimal experience with Bootstrap, media queries, and Tailwind)
  5. Sass and animations (on the docket)

And finally

  1. Draft.js rich text editor (have experience)
  2. API interaction with blockchain technology and micropayment programming (The MoneyButton API: The backbone of each application)
  3. _unwriter’s BSV code (on the docket)

With that skill set I should have an attractive résumé to potential employers; and with the apps, I should be able to make some money on the side. A win-win scenario if such a thing exists…

So that’s the learning path going forward, but if you’re wondering what the first handful of apps will be, you’re going to have to wait. Just kidding, I’ve included four below.

  1. tipgamers.com — A platform where gamers get tipped for content
  2. aletterforever.com — A platform where people pay $.05 to post a letter that will be stored on the Blockchain forever
  3. dietmatador.com — A healthy/natural eating based platform and brand where people post & share relevant content
  4. listoka.com — A list-based, useful-oriented platform, with categories such as “How To’s” and “Book Reviews”

The domains have been purchased, and the github repositories have been created. It’s time for me to get coding, but if you’re interested in helping or doing business, don’t hesitate to send me a message. A micropayments conglomerate needs more than just one person doing everything himself.

Thanks for reading.

Sam

--

--