Thursday, August 04, 2005

A blog long bereft of updates

Wow... it has been almost two weeks since my last update! I suppose that such a gap can be attributed to the fact that I have been up to my face in my final project, however, that still is not an excuse for this procrastination. What have I been doing all this time... I suppose the truth would be that I have been working on the project, and nothing more. It has been unhealthy, but at least the code is starting to take shape! The game engine (the project is to create a text based game) is about 1/3 done at this point, more than enough to demo to my peers, in my opinion. Eventually, I will complete it in my own time, as I have plans for using it to design my own games in the future.

Outside of the computer lab, my time at COSMOS has been especially enjoyable. These types of environments are my bliss, as people are far more sympathetic towards recluses! Until I have a link to the game... PEACE!

Monday, July 25, 2005

Weekly evaluation #2

In the past week, the lecture that spurred sufficient interest was the discussion on the computer game, and its impact on peoples’ attitudes towards computer science. From the speech, there was enough evidence to suppose that the game was the motivation for the explosion in the tech industry. True, the engineer would push forward in the realm of hardware and software to enrich the common person’s life; however, it is the game industry that supplies the realm of computer science with the money that drives us all. Because of such motivation, where will games and computer science land in the future, and will games eventually carry the industry?

One of the most important aspects of games in computer science is their ability to inspire people into dedicating their lives to the industry. Personally, while games were not the end all reason for my passion for Computer Science, they played a huge roll in my coming to embrace it as the one thing that I could spend multiple hours working with at a single sitting. Over time, as my passion for games grew, my skill at creating games and using programs to bolster their complexity grew as well. Before I knew what was happening, I was doing actually productive research in multiple realms of computer science in order to better my game designing abilities! This has happened to others as it has happened to me, and the benefit to computer science in this case is that games, by their very nature, require a very broad knowledge of computer science, forcing the entire industry to move ahead.

In addition to fueling motivation for the computer science industry, games also provide a fantastic way of controlling the minds of the weak. Those who think of this passage as highly pompous and demeaning need to embrace the truth: that the better games control the minds of their players, to the point where the respective companies can ruin and fill their lives with obsession. I speak of this topic because I have been in the situation described. The game replaced social interaction, will and want, and just about everything else. Everyone has different reasons for becoming victim, but everyone comes out of the experience with the same impact done to them. In my case, I strayed into a seemingly innocent game world called Norrath (EverQuest) with the intention of taking from the MMORPG (Massively Multiplayer Online Role Playing Game) industry to refine my own … some day. This goal faded, for the first time in my life. Play passion for designing games was replaced by my will to play them (EverQuest only). I played for 50 days (that is, 50 x 24 hours = 1200 hours) before I could stop myself. To give greater feel for this addiction, it was all done in 6 months (I spent over 1/6 of my life for 6 months playing this game). I suppose that I should be somewhat thankful, though. When I came out of the game, I had more knowledge of game design than I had ever hoped to achieve from a single game. From what I learned, I was able to write up a grandiose ‘wannabe’ game of the same type, adapting my ex-obsession with all of the other games that I had come to know and love. Of course, when others finally leave their obsessions behind, what do they get out of it?

In finality, the game industry has brought the computer science and technology industries higher than many people ever would have thought to have been possible. This has been for a variety of reasons; however, the one that takes the stand above all others is that games are fun. Games are escape. People do not care whether or not they are under some maniacal company’s control. It is only their job to enjoy the product, as is the ‘evil’ company’s job to push the industry to new heights.

Thursday, July 21, 2005

C#

is surprizingly well designed. In fact, it is what programmers have been looking for for a long time. In fact, I believe that its graphical compliment is the next step in high level programming.

What is next? "Computer, please write me a program that does x y z?"

Wednesday, July 20, 2005

The world of the Game

Today's speach was conducted by a guest speaker and concerned the many factors that went into designing a game. I have to say, without any exaggeration, that I had a very good time listening to how monumental the game industry is to the computer inductry, and the inspiration that it creates.

I say this because games are my passion. I can't say that Games brought me into computer science, as that would have to go to wanting to create an AI talk bot (which eventually turned into an English grammar checking agent), but games have pushed me to a level that has sustained my interest up to this point, and most likely will for the rest of my life.

I suppose that I realized that I had a passion for games when I was very young (age 7?). My parents would never buy me a console system, so instead, I bought the player's guides (a book of maps, enemies, and the general database to each game) to all my favorite games and played the games out of those player's guides, complemented by cardboard and pen where I kept track of my progress based on how the console would if I had the actual game.

Later, my passion brought me to designing simple games. This was around the age of 10, and as I was unable to use a computer, all my games were strategy based board games. All of the information concerning the game was stored on paper, and fortunatly, my parents allowed me to use the family MS word computer at the time, which allowed me to docuement everything on actual typed paper.

Later on, before I hit 13, I grew somewhat more high-tech in my approach to designing games and birthed a new project out of love for a different type of game, called the turn based Role Playing Game. Some work in this genre birthed a short lived docuement that I unfortunatly lost interest in. What became of it was a player's guide, structured in much the same way as the first player's guides that I used to play my first games!

After I gave up on the RPG genre, I had begun programming. Through programming, I began to see what designing a game was all about. Namely, balance, and the mathematical trends that make the game fun to play. Several years afterward, around the age of 16, I began work on a grandiose project that was of the MMORPG genre. This was more out of "can I finish step 1???," as a project of this magnitude (as all MMOs are), would be something WAY beyond my ability. I liked the name of my RPG enough to keep it for this game as well, and this is what became of it:

http://cwftp.nrgservers.net/CWF/Productions/Fantasy%20and%20Reality/FantasyReality[main].doc

and its excel database counterpart:

http://cwftp.nrgservers.net/CWF/Productions/Fantasy%20and%20Reality/FantasyReality[database].xls

Over all these years, I have not strayed from the player's guide format. I doubt that the nostalgia from my first years as a gamer will ever leave my blood.

And so I arrive at the present. The more I learn, the more eager I am to create something new. Just in the past several years, I have learned to program at the level that would be required to fashion simple games. In addition, my formatting dream came true! Over all my games, I seeked to find more standarized ways of formatting my player's guides, databases, etc. Up to only very recently, that as been stop and go with MS office products. Lo and behold! LaTeX!

TeX is truly a dream come true. I can fashion professional looking docuements, and utilize programing at the same time! I can compile LaTeX in the Scheme compiler so that I can program the different games' databases into a file, set them to automatically update based on whatever I choose, then automatically upload them into bueatiful PDFs.. Coming from all these years of MS word, all I can say is "COOL!"

Post Grip: The FTP address to the complete listing of these projects can be found: http://cwftp.nrgservers.net/CWF/Productions/

Monday, July 18, 2005

Sorting and Image Recognition

On Monday, Cluster 1 experienced another day packed to the brim with information. In the morning, we were presented with our first taste of algorithm efficiency. Larry Carter guided us through this process, lending a few tricks as to determining the best algorithm for a give situation, as well as putting up with several horrendous student algorithms (mine).

The afternoon lecture was another dive into the swimming pool, and concerned Image recognition. This was a nice change from speach recognition, which was what I had worked with in the past.

cut off due to time, will finish at a later time.

A week in the past, but never Forgotten

This week has honestly been more of an experience that merely an academic summer program. It takes an intellectual environment to realize how utterly exciting the different fields out in the world really are! I will start by linking HW (so I don't forget):

http://cwftp.nrgservers.net/CWF/Cosmos/AIC.pdf

Back on topic: First of all, some believe that the work that was done in the first several days (namely the intro to CS) was a waste of time. I disagree for several reasons. It is impossible to know where everyone was at the start of the program. The best way of ensuring everyone's enjoyment was to bring everyone down to a level where, with little doubt, everyone would be able to grasp the material. Plus, we didn't spend much lecture time on it, and very quickly got into the meat of the program, that was the golden intertwining thread (David Holfstadr?) that is Computer Science. It was fascinating to see the three prosectives on the topic: a more technical approach to where the origins of the study lay by Larry Carter, a philosophical discussion with Joe Pasquale about whether or not intelligence really exists as we know it, and a hybrid of the two with Christine Alvarado's AI.

I can't tell everyone enough how much I am looking forward to this next week of exploration!

Thursday, July 14, 2005

Scheme rants

Ok, so I found the Java.io source code and had a look at it, just to see what all the hubub was about. http://www.docjar.com/html/api/java/io/File.java.html

What the HELL!? Yes, most of it was commented out documentation, but let's be serious.... here is the lisp equivalent in lisp:

;TeX->file: String port -> void
;opens an output port and reads the said string
;through it into the port's destination file
(define (TeX->file TeXstr out)
((lambda (s)
(let loop ((s s)(n 0))
(if (not (= n (string-length s)))
(let ((c (string-ref s n)))
(begin
(write-char c out)
(loop s (+ n 1)))))
(close-output-port out))) TeXstr))

Ok, that is o in io. Now let's do the i: (with-input-from-file x read-func)

Case closed. Sorry world.

Going further: Week 1

Progress thus far has centered around the foundation of Computer Science in several different regards. The first approach was the most general, and most basic: What is it? What are we doing? What are the things that we will be dealing with and how will they be used in conjunction with each other? Moving right along to the second topic of discussion, the evolution of computing power, we reached into greater depth and discussed how computers have evolved with time. This focused on processing power, onboard memory, microprocessor power, and the like. In addition, this talk gave hints to the work we would be doing in the realm of algorithm efficiency, taking the form of how google was to provide for so many people at such a high rate of performance. After this discussion came to an end, we took the next logical step to increase our knowledge base by delving into Artificial Intelligence. Does C Fletcher W sound more human or more AI in the following (he is one or the other)?

C Fletcher W: Hello, what is your name?
gregkentc: I'm Greg. What is your name?
C Fletcher W: Who knows, Greg?
gregkentc: You make no sense
C Fletcher W: Make no sense? Why do you say that?
gregkentc: Because you are a flaming box of crap
C Fletcher W: Don't be so negative.
gregkentc: every0ne hate5 you, Eliza
C Fletcher W: Everyone hate 5 me Eliza?

C Fletcher W was actually being manned by an actual person in this example, namely myself. I guess I am just a good bot impersonator...

This is only cracking the very surface of an immensely complex topic, of course. What if I were to feed the computer this query?

-! \/\/-4-- $ '/0_2 \4/\/\3?
H I! W H A t IS YOU R N AM E?

Although it may seem pointless to program a bot to read such rubbish, it is becoming more mainstream in the world of today's youth. Unfortunatly, any program which could read the above would most likely have to be able to perform character recognition, as there are an infinite number of variations for any given message due to the fact that it is merely structured based on what looks the most correct, using only the number pad + SHIFT.

Tuesday, July 12, 2005

A first lecture in CS

(let ((a '(0 1 2 3 4)) (/ (foldr + 0 a) (count a))) Hmm... now isn't that easier than the 10 line java counterpart?