Twenty Time Reflection

  • What did you enjoy about the experience?

Throughout the year I really enjoyed exploring something that was totally new to me which was learning my first programming language. I think what I enjoyed most was simply using the skills that I learned. Once I had gotten a good grasp on python, I really enjoyed programming my game and working with code. It was like solving puzzles! I had a goal in mind, and I just had to be creative and come up with a solution using my knowledge of python. Also, at the end of the year, it was awesome to see all of the diverse projects that my peers had undertaken throughout the school year.

  • What was the most challenging aspect of your Twenty Time project?

The hardest part of my twenty time was the period in which I was actually learning python through Codecademy. I think that it was a very effective tool, but to be honest, it was very frustrating and in a lot of ways and not very user friendly. As a beginner programmer, the syntax and formatting of code was a whole new ordeal, and I had a hard time learning how to identify minuscule errors in long lines of code. For this reason, I was often stuck on activities for 15 to 20 minutes at a time. It was very hard not to just give up. but I eventually learned to use resources such as the blog that is available on the website. Using this, I was able to ask questions to other people like me who are working through the Codecademy program.

  • What is one thing you learned about yourself by participating in your Twenty Time project?

I learned a lot about working through adversity. I’ve always been very determined to solve challenging problems I have been confronted with. In this project, I can’t really say that I discovered that all you have to do is never give up! I already kind of knew that. However, part of the problem I had was that I would just try to keep on working through something and not make any progress because I was completely in over my head. What I learned was that sometimes you have to get help. When I started using the blog and my brother as a resource for learning python, that is when I really had success. I learned another thing too. I have to set reminders in order to actually meet deadlines. For this project, I had to do a lot of work outside of class because Codecademy was taking much longer than I expected. I set goals to meet in order to stay on track. Sadly, I would rarely make these goals because of procrastination on weekends. I learned that I have to set reminds on my phone and change by background on my computer to a reminder in order to finish long term work.

  • What are you most proud of? Why?

I am most proud of not changing my project when I was having trouble learning python on Codecademy. Despite many difficulties and a lot of frustration, once I actually got a good grasp on python I really began to enjoy twenty time. I am so happy that I didn’t quit and that I worked through the difficulties. Now that I have learned a language, I can really have fun making games and exploring computer science. If I had stopped, I might not have decided to take intro computer science next year or continued on with something that I have found that I really like.

  • What lessons did you learn from your successes?

Without success I don’t think I would have realized how fun programming is. It is the most amazing feeling to be working with lines of code for like 20 minutes and finally seeing it carry out its designed task. I also learned that sometimes I succeeded when I just completely restarted my code and took off in a new direction. Sometimes when you look write code out in a new way I would understand it much better.

  • What lessons did you learn from your failures?

The biggest thing I learned, as I stated above, was that when you fail, you have to get help. In some cases, continuing to work through problems relentlessly won’t get you anywhere. By consulting someone else you can learn what you were doing wrong and figure out how to get it right next time. Also, when I was just started my game, I realized that a lot of the stuff that I learned was more to learn the general workings of python. It was specifically how to program a game. So, at first I had a lot of trouble getting started. However, I realized that it is best to not become totally baffled by what you don’t know and just focus on what you do know and start there. That is what I did and it turned out to be very effective.

  • What is one thing about this project you believe you’ll remember for a long time to come?

I will remember everything about my first frustrations and difficulties of python because I foresee that this will be the beginning of a long expedition in computer science. As I said in earlier blog posts, if I were to pick a college major right now, it would probably be computer science. I don’t know if I will go that far, but I will certainly use a lot of programming in my high school years to come. I am especially going to program during summers. Now because I think programming is going to become such a huge part of my life, my first experience with programming will only become a more important memory.

  • What is something the teacher could have done to make this project better?

I thought that overall it was a well put together project, but I think it is something that some people will take advantage of and others won’t. I think I was very productive with my time. However, I also think that there were people in my class that weren’t. In order to avoid this outcome and give everyone help in staying on the right track I think that each student should have to meet with the teacher during tutorial or lunch every two or three twenty time days. This would help people be more productive and make more adaptations to their project in order to create the best possible project.

Twenty Time 4/19/16

We had our 2nd last twenty time and I have pretty much concluded that I am only going to do this first game that I have been working on for my project. I am not completely done and will probably finish after our last twenty time. This is definitely the most fun that I have been having in twenty time all year because I am finally getting to apply the things that I have been learning all year. I can probably just try to enhance it more than I was originally planning to. After the school year finishes I will probably program the other game that I was planning to do. This way I will be able to take my time with the game and really make it as I want to. After next twenty time we will began to assemble our presentations that we are going to make to the class. I think that I am very prepared for this part of the project because I have a lot of material that I have been programming and working with all day.

Twenty Time 4/7/16

Today I continued to make a lot of progress in my game. Now, I am really developing the main plot of the game. I think that I have thought of some great interactions with the player, and I think that it seems to be a decently interesting story if nothing else. I am starting to use more of the resources available on the programming website that I am using to my advantage. I have been consulting some of the other things that have been published on the website and have been trying to learn from some of those things so that I could incorporate them into my game. Most of these things are just a few tricks that I am picking up regarding animations and actual moving pictures. I must say, I now have a much greater appreciation for poor graphics in small apps and other such games because I now know how time consuming it is to create a good looking game from scratch. Note: Mine will not be good looking. I think that I am continuing a good pace and have mostly stuck to the plans that I created last time. My goal is to be basically finished by the end of next twenty time!

Twenty Time 3/24

I worked on my game a lot over spring break, but I have probably only finished about half of the whole game. This is not really good news if I am still planning on doing a game after this one. I am not really sure if I am going to have time to finish both. That said, I do think that what I have done so far with my first game is coming along well. I even programmed one little animation that runs throughout my game. I have started to add a lot of stuff that will make my game feel more like a real game. I kind of have a start game screen, and a screen to jump to a checkpoint in the game. I also added a loading screen animation to make it seem more official. However, the loading screen actually isn’t even loading anything. It looks ok though.

I will definitely have to work on my project more often than just on twenty time days. My plan is to work on the game for the first 25 minutes of my homework time. I will do it at the beginning because if I do it at the end it would be easy for me to just skip it. I think this will be good. It shouldn’t be too hard because it will be a nice time to relax and just do some low stress work. I will see where I am after working like this for about two weeks. Then I will finish planning how I am going to spend my last days of twenty time.

Twenty Time #10

This twenty time I actually got a good start on my game. I am doing very well on my own! This class period I set up the beginning of my game. I finished the introduction to the game and made it interactive with the player. I don’t think it is too bad, but someone that doesn’t understand the difficulties of writing code would probably not be too impressed with the product so far. I still have not determined the storyline that my game will follow. So, I have to write it before next twenty time. I am very disappointed that I forgot to do this last time as I said I would. I definitely have determined that I am very bad with loose deadlines like this. I am happy with the effort and progress I have made so far, but I have realized that I always have to make a reminder. Today I starting running with one idea that I had when I was programming, but I mainly just laid down the framework that I will be able build my game around. At this point, there aren’t any plot related things that I have truly set in stone. This is good because the plot I was working with so far is pretty shallow. It really is not easy to come up with a good idea. For it to be good, it has to be deep, surprising, and very engaging. It has to unfold in the same intriguing way that a book makes you keep on turning pages. If done right, I think I can make it really good. I am not totally sure when our twenty time session ends, but I think at max we have 8 session left. Most likely 7 or 6. I am going to figure this out tomorrow so I can properly estimate when I should be done with this game and start my next one. I think it would be reasonable to be finished with this game by the end of spring break. Ideally I would finish before then, and start my next game during spring break!

Twenty Time #9

This twenty time I spent my first day working with my game. I will be honest I got no real coding done. I came into the class with a general idea about what my game was going to be like, but I didn’t really know where to start because I didn’t really have the specifics down. So, what I did was I spent most of the time talking to Mr. Cochran who teaches computer science and game design. He set me up with this new program that will be used in his classes next year. This is awesome because I am one of the first students to try out this programming site. The one he showed me is called trinket. It is really user friendly and fits my needs perfectly. It is basically designed to be a tool for anyone one to write code and to share things that they have written with others. What is probably the coolest thing about this site is that someone like me can look at the code that someone else has written and structure something new off of the work that someone else has done. This creates a whole community of sharing, editing, and learning that is very desirable for what I want to get out of my twenty time. I think that I will plan on being prepared to begin coding my game that is based off of Lifeline for next twenty time. To start next twenty time I need to work on writing the story line for the game. This game is pretty much just an interactive story where the player makes huge choices for the character in the game. They often will be what keeps the character alive. This is in no way a game with graphics or anything like that. I plan on doing that later on. However, the graphics will likely be terrible. Just to put into perspective how long and hard it is to make a game that would be played on the Xbox one or the Ps4, I did some research into how long it might take one person to program one of these games. The amount of time that I came up with for one person to program a game like Fifa 16 or NBA 2k 16 is 40 years!!! Truly mind mind-boggling! I now have a totally new appreciation for all games this extensive. If you are wondering how these games are cerated, the answer is that hundreds of programmers spend over a year or two programming these games! Knowing this my plan is to make this first game. Then work with Trinket and structure my own versions of games off of others. Lastly I will try to program a more extensive game.

Twenty Time Reflection

During twenty time we reflected on what we had done this year, and went over what we might do for the rest of the year. I got to share what I had done with my friends and get their opinion on what I had been doing. I think they were impressed with all the work that I had done in learning python, even though I did not really have anything to show for other than a bar that says that I completed the programming language. I talked about the ideas I had for my game, and I think they were intrigued by most of my ideas. It was hard for them to give me ideas because they did not really know anything about what would be an easy game to program and what would be hard. The most helpful things that I heard were that I should get help from videos, and also from Mr. Cochran. I think some people said that I could have some of them test my games. I think that overall I got some good feedback, but I did not change my plans drastically.

Twenty Time #8

During this twenty time I finished learning python! It has been a long work and progress and it is awesome to have finished learning my first language. I think that Codecademy was a decently effective way of learning programming. Although frustrated on numerous occasions, I was very impressed with the structure of all of the lessons. That said, there are definitely some things that I do not know about python. I feel like at this point I have a good base and am pretty capable at writing code that will carry out some sort task. However, programming a game would be much harder. I could probably write most of the technical material that would compose the game, but I am still completely clueless in figuring out how to make graphics eve as simple as the graphics in flappy bird. So, in order to begin my second part of the project which is to create some sort of game using my python skills, I will probably get some help from Mr. Cochran and watch some youtube videos. Hopefully this will help me figure out how to do the graphics for my game.

There are several ideas for games that I have been playing around with. The easiest game that I had in mind was a game along the lines of Lifeline or A Dark Room that have been on the app store. These games are very easy to program and would be very fun to create. Pretty much they are stories that unfold as the player makes choices and decisions as to what the person in the game should do. There are different outcomes based on what decision the player makes. In Lifeline you make decisions that help the person in the game survive. Other ideas I had for games was to make a simple platformer with a similar style to many of the Mario games, but I would probably more closely model it after this game called “You have to win the game.” Not surprisingly the goal of that game is to win the game… Although simple in design, it is very fun, puzzling, and hard. Lastly, I want to make a simple arcade game that has an infinite gameplay where you try to get as far as you can. These have been very popular and seem pretty easy to make. Although I have heard many times that programming a game is very hard and very time consuming.

Twenty Time 1/12/16

Over break I was going to finish learning the rest of python then jump into programming my game with the beginning of the new year. However, because of both procrastination and an underestimation of the amount remaining, I only managed to get to 75% of python complete before the end of break. Maybe my new year resolution should be to come up with better plans…

Even though I did not complete my goal, it should not be too much of a big deal as long as I finish it by the end of next twenty time period. So, here is my new plan. Since our next twenty time is next Friday, that means I have eight days before class where I can work on python. If I do 2% each day then that will put me at 96% on our next twenty time day. If I can make it to there, then I will probably be able to finish by the end of class. In order to remember to make 2% of progress each day I will make my background on my computer a reminder to complete the 2%. Since I use my computer a lot and like having interesting backgrounds, if I put my background as a reminder then I will likely remember to do it. Furthermore, on school days I will do my 2% during tutorial because it is easy to get caught up in homework and put it off to the next day. So, if I can get it out of the way during the day then I will be less likely to procrastinate.

Today in twenty time I only managed to advance to 80% complete. It turns out that 1% of progress was a lot easier to come by earlier on. Now since the activities are longer it takes much more time to advance 1% in progress. By this point I feel a bit more confident that I will be able to program my own game. With the help of our computer science teacher at DA and youtube videos as a guide, I am sure that I will be able to make my own game. I have several ideas at this point, but I am not sure which ones are most feasible.

Twenty Time 12/2/15

I got a lot done today partly because I did not encounter too many problems. The largest struggle was finding the mistakes that I make in the code and trying to fix them. It is not easy to move on until I fix these mistakes, so sometimes that slows me down. Most of the things that I mess up are simple errors, however, sometimes it is these that are hardest to find. It took me 5 minutes today to realize that I forgot a colon where I needed one in the code. I often make simple mistakes at this point. Hopefully I can get better at remembering all these small things so I don’t have to waste time trying to fix my mistakes.

All this new material really scares me because I don’t know how it is all going to fit together. I know that I will have to recall most of these concepts if I am going to be able to program my own game, but right know, almost near 50% complete with the language, I still have no idea where I would begin to program my own game. It is hard because it is so different from anything else. That said, it feels so amazing and rewarding to complete an exercise. I just can’t wait until the exercises are a little less structured and creativity can really come into play.

As it turns out, there are not nearly as many twenty-time sessions as I thought there were before winter break. I thought that I had enough classes to get really close to finishing with python. However, that was not the case. My original goal was to be finished with learning python by the end of break, and I am going to stick to that plan. I will have both of my brothers who have learned python to help, so it should go well. I can’t wait to start working with some of my ideas for games!