Sunday, September 30, 2012

New Game idea #1 - COCKROACH

I have come up several ideas with regard to new games that I would like to create, so I would like to disclose, share it in here, and possibly receive some feedback from anyone reading this blog .. :)

Technology

3D (or 2D)

Player point of view

Cockroach

Story

You are one of the cockroaches here in Hawaii. Your way of living is only eating leftover or some food in the trash bin, on the road, and in people's houses. You will need to survive and live as long as you can so that you can prosper your descendant, which is your aim of this game; to conquer the world with full of cockroaches...

Gameplay

  • Basic aim for this game is to survive and gain more power by eating food. In order to get food, you sometimes need to go some dangerous place, such as kitchens where human beings are there cooking.
  • If any of human beings finds you, they will try to kill you, so your goal is then to escape from them and go somewhere safe and recover yourself.
  • Not only human beings, but sometimes you will need to deal with some animals, insects, and so on.
  • By eating food, you can obtain nutrition and improve your skills; you will be able to move faster, fly, or sneak well as you grow by eating food.
  • Eventually you will be able to scare human beings and expel them from their territories so that you can conquer their spaces and obtain more food to grow...

Again, if there is any idea, concern, or advice, I would love to receive some comments with this idea..

Saturday, September 29, 2012

What I think are the 'Dream Games' - Pokemon and Rockman

Some people say that the goal of the game is to let the user have different options of winning for themselves, as the process of gameplay is great if the users can feel that they are actually in the game, managing the story to move forward by themselves.

I think that Pokemon('Pocket Monsters') and Rockman are the games that seemed to me the closest to what I think is the'dream game'; those two games actually allow its users to whether strengthen their characters even after they manage to defeat the final boss of the game. So there is actually an additional story that users can enjoy after they defeat the final boss (well technically users can fight against some of the characters that come up after the basic story ends). Japanese people sometimes call those characters or enemies 'hidden enemies'; they usually appear if you optionally strengthen your characters and find the additional story of the game by exploring the game.

Since both of the games successfully provide an optional way for enjoying the game even more for passionate gamers, I chose those two games as the closest to the dream games. If you guys have not played those yet, I strongly recommend that you play those.

I have personally played both of the games quite well, and both games are the ones that I really like the most, because those games had never made me tired although I had been playing them for tons of hours! (**warning** this means both games are seriously addictive, so be careful when you play those; I am sure nobody wants to regret after they play the game for a whole day and realize that they have not done anything except for playing games... although playing games is sometimes just as awesome as refreshing by playing sports..)

For those people who are interested in Pokemon or Rockman, the official websites for both games are available below (Both Japanese and English).

Sunday, September 23, 2012

To Become More Productive, To Become a Professional

Programmers

Being professional most of the time requires to fully understand what they are doing with their tools, and be productive in order to get the desired result with the shortest amount of time. This can be especially applied for those 'technical professionals' such as programmers.

Why programmers? Because programmers as a job usually have something that they are asked to create within the specified time, and of course, expected to accomplish it and satisfy their customers or products' users. In that sense, it is reasonable to say that there is no doubt people seek a way to become productive, efficient, and therefore, successful as a professional.

The book called "The Pragmatic Programmer" suggests programmers or students willing to become programmers in their future that one of the shortcuts for becoming more productive and efficient is to choose right, appropriate tools.

As an example of choosing tools for becoming more productive, the book suggests that people try to avoid using GUI applications if possible and rather use Command Prompt(or Terminal for Mac users).

A benefit of GUIs is WYSIWYG-what you see is what you get. The disadvantage is WYSIAYG-what you see is all you get.
As the sentences above explain everything, the advantage of GUI application, such as the simple usage of it, full visualization of its functionality, etc proves that it cannot function beyond what it displays to its users. Moreover, most of the times using GUI applications requires more steps to be done to do an certain action, while command prompt or terminal only requires a few steps for that action. (It is very clear by comparing lists of steps required for each application, GUIs and Command Prompt(Terminal).

I, Mac user, personally rarely use Terminal for any programming process.. (Except for downloading Ruby and so on that is required to use Terminal). The reason why I have rarely used Terminal is because it just seems difficult for me, and as the book points out, I was thinking that using GUI application is easy for me rather than typing texts for doing something on the computer.

Personal Review

After I read the book, however, I began to think that I should be using Terminal by now since I am one of the people who are strongly willing to become a professional in Tech field, and I can at least say that I may have to be a friend of Terminal for work in the future. The book is very persuasive in a way that using Terminal makes you very efficient and productive since it requires fewer steps to do a certain action than GUI applications require. I guess it is time for me to jump in and play with Terminal to discover something new for me. :)

To become more productive, to become a professional . . .

Saturday, September 15, 2012

About the Critical Concept 'DRY' - Don't Repeat Yourself

The book The Pragmatic Programmer introduces this critical that one of the ways to treat our knowledge is not to duplicate your knowledge in your codes, or anywhere else without any sufficient or appropriate reason, so I'd like to kinda share it here.

DRY - Don't Repeat Yourself

It isn't a question of whether you'll remember: it's a question of when you'll forget.

It clearly made an impression on me; It does not just make sense to me what the textbook tells us, such as the fact that duplication later will be troublesome since if you need to change a certain part, then you will need to change multiple places, but it also made me realize that without any sufficient reason, duplication just makes our project or work useless.

Unnecessary Extra Information Causes Only Badness

I remember that many of documents about right ways of mark-up coding tell us that any useless spaces, codings.

Example: CSS Coding

The small careless you leave, such as two characters 'px' can critically make your website slow as well. For example, here is a small CSS code that I am sure you have seen it more than often if you are familiar with CSS.

The code above sets the both margin and padding of the selected area (in this case, 'body') to 0px. Here is another block of code:

Although you do not see much difference between those two blocks of codes, the loading speed varies; the second block of code will definitely be loaded faster than the first one. This is because in the first block of code, there are some useless spaces for making the code look somewhat organized, the words 'px', and an extra semicolon at the end. Whether containing those in your code or not definitely makes the difference in terms of the speed for your website to be loaded.You can find more info about how to optimize your CSS codes here: 5 CSS shorthand tips and how to optimize CSS

Therefore, I thought this is important that we treat our knowledge carefully so that we can prevent any negative effects caused by any misuse or extra-coding of our knowledge