ReactJS: Sudoku

The “Sudoku” project took me over a month to fully complete. While I wasn’t working on it daily, I persevered in achieving the goal of completion. An important point of this project was that it was not assigned. I did this of my own free will to challenge myself to create different problem-solving and creation algorithms without much help. The project has taught me to take a more visual approach to solving problems and how to break them into really small steps instead of the broad picture. I already learned this before but it was heightened by far this time.

Along with this I also learned how to take a step back from my work. Looking at the same thing for hours on end trying to figure out an error, or create a solution can be hard and can be degrading. Allowing myself to work on something else, or just chat with peers, not even about the program, allows me to not be hyperfocused on something and makes me work better than before. It’s almost the same as working out where you can train hard, but without rest, there won’t be any progress. This happened to the extreme when I originally restarted this project because it was making me mad and I felt I made too much progress to revise everything which I’m happy I did restart it.

The final thing I can take away from this project is that it doesn’t have to be perfect. I didn’t finish this project, yet I’m still proud of my work. I was able to take something that seemed impossible at first because I kept getting infinite loops at every corner, and tried to understand the math and algorithm I made to get it to work. Now it generates a board in a second! I know that not everything on the board is complete, and I know there are some bugs with the difficulties that I haven’t gotten to, but I created my own sudoku board creation algorithm which is massive for what I’ve done in the past. The project was a huge step forward in breaking the wall to further advance my abilities and I’m excited for future years in which I break through more walls and problems that become exponentially more difficult.