Skip to content

MonJ0J/CodePath_Glitch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pre-work - Memory Game

Memory Game is a Light & Sound Memory game to apply for CodePath's SITE Program.

Submitted by: Juan Junco

Time spent: 5 hours spent in total

Link to project: https://glitch.com/edit/#!/sixth-inky-child

Required Functionality

The following required functionality is complete:

  • Game interface has a heading (h1 tag), a line of body text (p tag), and four buttons that match the demo app
  • "Start" button toggles between "Start" and "Stop" when clicked.
  • Game buttons each light up and play a sound when clicked.
  • Computer plays back sequence of clues including sound and visual cue for each button
  • Play progresses to the next turn (the user gets the next step in the pattern) after a correct guess.
  • User wins the game after guessing a complete pattern
  • User loses the game after an incorrect guess

The following optional features are implemented:

  • Any HTML page elements (including game buttons) has been styled differently than in the tutorial
  • Buttons use a pitch (frequency) other than the ones in the tutorial
  • More than 4 functional game buttons
  • Playback speeds up on each turn
  • Computer picks a different pattern each time the game is played
  • Player only loses after 3 mistakes (instead of on the first mistake)
  • Game button appearance change goes beyond color (e.g. add an image)
  • Game button sound is more complex than a single tone (e.g. an audio file, a chord, a sequence of multiple tones)
  • User has a limited amount of time to enter their guess on each turn

The following additional features are implemented:

  • List anything else that you can get done to improve the app!

Video Walkthrough (GIF)

If you recorded multiple GIFs for all the implemented features, you can add them here: ![gif showing basic features]https://github.com/MonJ0J/CodePath_Glitch/blob/165b4721b4b736883c93233b64efc40557c17a45/Kapture%202022-03-22%20at%2012.11.28.gif ![gif showing change in speed and user testing]https://github.com/MonJ0J/CodePath_Glitch/blob/165b4721b4b736883c93233b64efc40557c17a45/Kapture%202022-03-22%20at%2012.28.30.gif ![gif changing random pattern]https://github.com/MonJ0J/CodePath_Glitch/blob/165b4721b4b736883c93233b64efc40557c17a45/Kapture%202022-03-22%20at%2012.29.36.gif

Reflection Questions

  1. If you used any outside resources to help complete your submission (websites, books, people, etc) list them here. https://www.w3schools.com/css//css_font_websafe.asp

  2. What was a challenge you encountered in creating this submission (be specific)? How did you overcome it? (recommended 200 - 400 words)

At first, the challenge went as the last item inside my mental queue. Web dev is something I haven't had much contact with in my college journey. However, once I felt a spark igniting my interest in the challenge. I finished it in two rounds. The most significant challenge came when I read the functions given and couldn't understand what was going on. To overcome this challenge, I took a pen and paper and started writing down line by line and understanding the connection with the code and how it was indispensable. Web development is relatively new, so I also had to read through the syntax required to open a loop, the specific keywords like "let" and a refresher in global variables. I had trouble understanding JavaScript rather than CSS and HTML. The former required some specific syntax for variables, constants, and functions. I had to refer back to my notes on Computer Organization as that syntax resembles the assembly language principles. Finally, I had a particular challenge with the logic provided by function the function guess(btn). I had trouble distinguishing between data types. For example, the line "user guessed: " + btn was not easy to decipher as it represents an integer, but the variable is in quotations, which would create a string in python. I overcame this challenge by practicing and going back to the code to find references to the same syntax in functions I had already understood.

  1. What questions about web development do you have after completing your submission? (recommended 100 - 300 words)

In my mind, HTML, CSS, and JavaScript were three different languages related only because they produce effects on the web. However, after this brief introduction, my interest and curiosity grew bigger, leaving me with unanswered questions. First, I would like to understand more event handlers. How can a function written in JavaScript end up calling something in the HTML code? I will also like to dig deeper into the CSS features. Due to previous experience, my intuitions lead me to think that CSS can do more than just styling. I would also like to know which user can access web development features; anyone can inspect the items on a brew browser and thus change the code. I want to know how do ages change the editing privileges for users.

  1. If you had a few more hours to work on this project, what would you spend them doing (for example: refactoring certain functions, adding additional features, etc). Be specific. (recommended 100 - 300 words)

I like to start by sharing my perspective on coding, I see it as a piece of art, and you can never finish a piece of art; you just stop working on it. I will implement all the recommended features even if my submission deadline has passed. I would like to see how I can add a clock to the game to chronograph the specific amount taken. Also would like to display different messages for each of the new sequence patterns. I will also like to add images so that the boxes are not just colors, but the memory exercise also requires association between words and sounds. I will want to make it multiplayer. So that one player chooses the pattern and speed so that the other user guesses it and returns a scoreboard with the winner.

Interview Recording URL Link

My 5-minute Interview Recording

License

Copyright Juan Junco

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

About

Memory game, identifying the color and pattern

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published