Minigames Project

--Originally published at GilbertoRogel

For our project we decided to make 2 games, one that will run in the Eclipse console and another one with a graphic user interface. First we decided the two games that we would do, Hangman and Tic Tac Toe. We decided to make Hangman run in the console since Tic Tac Toe would look kind of weird. The Hangman we did can be played by 2 players, in which one chooses the word the other player will try to guess in 6 attempts. The Hangman was pretty easy and we ended up finishing it in 2 days. Then we started doing the Tic Tac Toe, it was overall a kind of extensive process. At first we planned the logic of the game, how to win, etc. We decided that the best option would be to make vectors on the positions that you can put 'X' on 'O' in order to win. Then we thought that it would be better to play vs the computer, since it's really easy to counter the player moves on the game. So basically we did a multiplayer game and a one player one. 

We first tried to make a menu but we didnt know how to link to the minigames so we removed it. This is what it looked like: 

Minigames Project

Hangman: 

Tic-Tac-Toe

In the process of doing our project we learned GUI(Graphical User Interface) implementations, we learned to use arrays, how a GUI works and apply them in the project, also we learned how to divide the work and connect it in Github 

Luis Eduardo Vargas Victoria A01630086

Oscar Ricardo López López A01229116

Itzel cordero Sánchez A01113123

Gilberto Rogel García A01630171

Minigames Project

--Originally published at GilbertoRogel

For our project we decided to make 2 games, one that will run in the Eclipse console and another one with a graphic user interface. First we decided the two games that we would do, Hangman and Tic Tac Toe. We decided to make Hangman run in the console since Tic Tac Toe would look kind of weird. The Hangman we did can be played by 2 players, in which one chooses the word the other player will try to guess in 6 attempts. The Hangman was pretty easy and we ended up finishing it in 2 days. Then we started doing the Tic Tac Toe, it was overall a kind of extensive process. At first we planned the logic of the game, how to win, etc. We decided that the best option would be to make vectors on the positions that you can put 'X' on 'O' in order to win. Then we thought that it would be better to play vs the computer, since it's really easy to counter the player moves on the game. So basically we did a multiplayer game and a one player one. 

We first tried to make a menu but we didnt know how to link to the minigames so we removed it. This is what it looked like: 

Minigames Project

Hangman: 

Tic-Tac-Toe

In the process of doing our project we learned GUI(Graphical User Interface) implementations, we learned to use arrays, how a GUI works and apply them in the project, also we learned how to divide the work and connect it in Github 

Luis Eduardo Vargas Victoria A01630086

Oscar Ricardo López López A01229116

Itzel cordero Sánchez A01113123

Gilberto Rogel García A01630171

Course Review

--Originally published at Hell Yeah

I am currently in the last few hours before the end of the Object-Oriented Programming course, taught by Ken Bauer, with whom I happen to share birthday.

This course was made in such a way that I never saw before. The learning was left almost entirely to us, Ken was more of a guide than a teacher, and I think that was a great way to structure it.

In terms of learning, I went in with little to no knowledge of Java. Object-Oriented Programming in general was an area almost completely unknown to me. With the problems that Ken “assigned” and a few on my own, I was able to learn more about how Java works and why OOP is often used instead of Imperative Programming. Not all of it was practice, the videos that we watched offered interesting perspectives on the theorical side of OOP, along with the opinions of people far above us in knowledge of this topic.

I also learned to use a little of Eclipse, a tool that is used a lot in Java programming. It is, as Ken said at the beginning of the course, a Titan of a program. It has a lot of things that I have no idea what they do or why they are there, but the things I learned to use, I found that were extremely complex but not unnecesarily. What it does, it does not do in a half-assed way, but it can be overwhelming at times.

Also, Github. I have had my Github account for ~2 years, not knowing what it was. I saw on /r/learnprogramming again and again that having a Github account is essential in this line of work, but I never really understood why. Now, I still have a lot to learn and understand about it, hell, I can’t use the terminal commands for git without a guide open in another window, but I know why it is important and what it can do. Github is really the best way to store public code and to manage big projects on a team. It also serves as a kinda-portfolio that gives a testimony of what you know and what you’ve done before.

Talking about the structure of the class, it was a bit “Laissez-faire”. Ken just guided us in the direction we should be going and helped us when we had trouble, but this class did not hold our hand. We were expected to learn on our own and to do our own research about the challenges we faced. I really liked this and I would chose it over the traditional way anytime.

o7


Course Review

Metaobject Protocol

--Originally published at GilbertoRogel

In computer science, a metaobject is an object that manipulates, creates, describes, or implements other objects (including itself). The object that the metaobject is about is called the base object.

metaobject protocol (MOP) provides the vocabulary to access and manipulate the structure and behavior of objects. Typical functions of a metaobject protocol include:

  • Creating and deleting new classes
  • Creating new methods and properties
  • Changing the class structure so that classes inherit from different classes
  • Generating or modifying the code that defines the methods for the class

Source: Wikipedia.

Metaobject Protocol

--Originally published at GilbertoRogel

In computer science, a metaobject is an object that manipulates, creates, describes, or implements other objects (including itself). The object that the metaobject is about is called the base object.

metaobject protocol (MOP) provides the vocabulary to access and manipulate the structure and behavior of objects. Typical functions of a metaobject protocol include:

  • Creating and deleting new classes
  • Creating new methods and properties
  • Changing the class structure so that classes inherit from different classes
  • Generating or modifying the code that defines the methods for the class

Source: Wikipedia.

Course Review

--Originally published at GilbertoRogel

This course is not for the weak nor the procastinators.

I think flipped learning and is good for students who actually want to learn because it gives you the choice to either procrastinate and waste time or organize yourself and your time to do the activities, homework, learn OOP, meet new people who can help you with OOP which is mostly what i did during this course (of course I did procrastinate a little, and by a little i mean ALOT, but I did everything, or at least most of what I was asked to do and some extra stuff which helped me with other courses).

During this course i learned Object Oriented Programming in the almighty JAVA programming language, and how did i did this? Well, first of all, without the help of my classroom partners or Lynda videos/StackOverflow/random websites i wouldn't be able learn the basic concepts of OOP such as what is an object, method, inheritance, polymorphism, delegation, use cases, a little of graphical user interface, etc.

I liked this way of learning mostly because it encouraged me to help myself and not procrastinate, i also liked it because i could ask anyone in the class about any problem i had and i would get help and answers real quick which helped me get my assignments done. I also had a lot of fun reading my classmates blog posts, some of them where funny, sarcastic and they really helped me with my WSQs and learning.

 

Gilberto Rogel García A01630171

sorryforthebadenglish:)

Course Review

--Originally published at tc2016blog

This course was in fact one of the courses in which I procrastinated REALLY hard (which led to a last minute hackaton).

The reason is this one:

There is so much free time and not even a little pressure that I don’t feel like I have to do anything, and don’t take this the wrong way I like the course and Ken is a great and smart teacher, he is certainly one of the best teacher I’ve had so far, but this semester (in comparison with the last one) the Flipped Learning style went a little too far for me.

We didn’t have much practice in coding aside from doing the projects, but mostly those projects were based on Google tutorials and coding in teams, which doesn’t really gives us the knowledge of Java that we will really need in our future courses, and I get that the objective of this course is teaching about Object Oriented Programming and not especifically Java, but I think we could have used a little more programming practice.

In retrospective, this was a good course which gave us the opportunity to make our own choices that could have affected our grade, we had to take responsibility by ourselves and not from the pressure from the teacher, which is really good because in our professional life that is how everything is going to work.

Thank you Ken for such awesome two semesters and for the great lesson you left us all, I like your way of teaching and keep on doing what you do.

 


Course Review

James Gosling deserves a kiss.. but not from me

--Originally published at richardctc201

James Gosling deserves a kiss.. but not from me

The last WSQ of this semester! :’) And to close with a flourish, we had this interview in Triangulation episode 245 to James Gosling. He is nothing more, nothing less than the creator of JAVA. How I hate that guy! Just kidding guys. In my personal view he is the inventor of the most important, the most recognized, and the most worldwide known programming language of the world.

James Gosling said that in college he spent ‘endless’ hours in the computer center’s library, and that’s the way he learned to code. The important thing here is that he mentioned the word ‘library’. This means that he needed to read a lot of books that teach him how in hell he was going to be able to code. Ken’s way of teaching is pretty much in the same path. Ken has said to us that he could give us a bunch of coding assignments for us to spent time making them, but the real knowledge of object-oriented programming is in the books, in the blog posts of other people, in the videos of ‘coding professionals’. This is how I learned to give my codes the most objected-oriented path as possible, by reading and understanding all the complex concepts of OOP (encapsulation, inheritance, polymorphism, etc).

Finally I’ll kept with Leo’s phrase “they were going out to smoke in the back, and you were going to write code”. This is my philosophy in life: at the end, everybody will receive what they deserve. James Gosling may had been a nerd or ‘teto’, but instead of following everybody else examples, he knew what his goals were, and he chased them until he reached them. Now he is famous, and he is going to be remembered as one of the best programmers in the history; while all the other assholes bad students may not be even remembered for any good action in their lives.


James Gosling deserves a kiss.. but not from me

#CourseReview

--Originally published at My Programming Course

Este es mi review para la clase en el curso de TC201. 

Personalmente me parece que el métido de aprendizaje es un tanto único el cual me parece perfecto, a parte siento qe no estaba tan precionado pero a su vez, creo que esto tiene tanto sus pros como sus contras. 

Por la misma razón de que me sentía que tenía tanto tiempo libre, dejé todo hasta el final. Este punto no tiene nada de malo, ya que así decidí hacerlo yo, pero eso no quiere decir que así fue para todos los cursantes.

Siento que al aprender más sobre la teoría me ayudó a analizar mejor los códigos que hice.

Para mi punto de vista, el curso debería seguir tal y como está, ya que aunque asistamos a clases, el aprendizaje es diferente para cada uno de los estudiantes, por lo que si nosotros buscamos información sobre un tema en específico es porque necesitamos saber sobre ello y esto, por ende, hace que nos enfoquemos más en lo que queremos aprender y facilita el entendimiento de las cosas. Como prueba de lo que adabo de escribir. los códigos no me dieron problemas, por lo que el aprendizaje fue un éxito.