11 December 2013

Scientific Computing: Gateway to Human Psychology

A man experiences a virtual environment in the University of Illinois at Chicago.



Computers are powerful tools.  Computers are known for their mathematical proficiency, and have become a staple of engineering.  However, while computers can use advanced mathematics to model the laws of physics, chemical compositions, and manmade structures, computers can also help us learn more about something that is partially intangible—the human mind.  There are two sides to using computers to study the human mind.  There is the neuroscientific side, where the physical activities of the human brain are recorded and analysed, and there is the psychological side, where computers are used in experiments to study the behaviour of human subjects.

While neural computer science is outside of my own field of concentration, it still plays an important part in research.  Computers have reached a point where they can create a map of neurons of a person’s brain.  This is usually achieved by fitting a subject with a cap with neuron sensors, which then records the brain’s activity to a computer while the subjects undergoes an experiment.  From this information, the computer can generate a model of the subject’s brain.  This helps neuroscientists find out how different parts of the brain react to various stimuli.

Psychological computer science, on the other hand, is a part of computer science in which I am interested.  Psychologists can use computer science to study the mind of children by letting the children use interactive software, such as educational video games.  Psychologists can then observe what choices the children make.  In one study that I looked into a couple of years ago (and whose source I cannot link, because the academic journal is not publically viewable), a group of researchers visited an elementary school class and let them play an educational video game.  The researchers noticed certain behaviours, such as female students asking other classmates for help in solving the game’s puzzles, whereas male students tried to solve the puzzles on their own or use the in-game hint system.

Psychological computer science can also be used to study adults via virtual reality.  Dr Jeremy Bailenson, a Stanford University professor who studies virtual computer interaction, went into great detail on virtual reality during his 2011 lecture [1].  His virtual reality experiments range from having subjects walk across a virtual wooden plank, to changing the subject’s race or gender in the virtual world.

From brain scans to virtual identity experiments, computers have a place in the cognitive sciences, as they do in all sciences.

8 December 2013

Computer Graphics: Why Style Matters

a simple illustration of me looking at a C# program.


A little over a week ago, I had written a thank-you letter to a programmer whom I job shadowed, as part of an assignment for one of my university classes.  I wanted to make my letter a bit more personalized, and I wanted to try out some of the Adobe software that I had received earlier in the year.  During my job shadow, the programmers invited me to participate in a C# programming exercise, so I decided to draw in Adobe Illustrator a simple illustration of me in the C# session and include it in my letter.  The illustration itself is simplistic, due in no small part to my elementary drawing skills, but the illustration’s style does say something.  The illustration, for example, lacks colour, so that it does not distract from the rest of the letter.  In addition, while the image is not incredibly detailed, its cleanness is appropriate as a letter illustration and shows that I put in a moderate amount of effort into showing appreciation.

A lot of visuals are made with computers nowadays, and it is justified; from making illustrations or diagrams with simple shapes, to editing photographs, to animation, computers have shown themselves to be versatile.  For many media, using computer graphics is optional; film, for example, can just as likely be done in live actions or with hand-drawn animation, although in the case of live action, advanced visual effects are more likely to be computer generated to save money.  Video games, by virtue of being played on a computer (including game consoles) in the first place, almost always have computer-generated graphics.  This is where the versatility of computer graphics comes into play; computers have multiple ways of rendering visuals, ranging from realistic rendering to more cartoonish cell-shading.

With the amount of tools available, I sometimes see video games not make the most of them.  One of the more commonplace phenomena is known as “Real is Brown”.  A lot of modern action games, in an attempt to look realistic, use muted grey, brown, and beige colours.  One video from Extra Credits points out that in doing so however, the drab pallet conflicts with the action-oriented nature of these games and can potentially ruin the game’s intended tone, citing the forgettable 2008 video game Golden Axe: Beast Rider as an example [1].  Not every game needs to be as saturated as a cartoon, of course, and no amount of anti-aliasing, texture filtering, or shading will make up for poor aesthetics in a computer-generated visual.  Besides, the sheer amount of computer graphic effects is too much for one blog post, and in the end, computer graphics artists need to use their intuition to make things “look just right”.

1 December 2013

Communications: The Mystery of the Strict NAT

You may not be able to join certain Game session or communicate with other Players while playing. Average matchmaking wait time will be adversely affected.


After spending a pleasant Thanksgiving dinner with my extended family, my parents drove us back home. Exhausted from the outing and from the school projects that I had been working on earlier in the week, I wanted to settle in, lie back, and play video games so that I would be refreshed for next week. I set up my gaming system, loaded up the newest Assassin’s Creed, started my first multiplayer game session … and I was immediately disconnected. After being booted back to the game menu, I saw a worrying red circle that said, “NAT”.

According to the game, my NAT rating was “strict”. Because of this, I could not be matched with other players correctly. What did “NAT” mean, and why did this have to get in the way of enjoying my game? Well, I spent the entire rest of the night looking up networking guides and troubleshooting in agony to find out.

To make a long story short, I found out that the problem had to do with a new Internet modem that my father and I had recently installed. Our new modem had a built-in router that could wirelessly connect to computers, game systems, and other electronics. This built-in router had a firewall that automatically blocked certain ports. From what I understand, these ports are points in my home network that are used to send information to and from the Internet. The ports that my video game uses to connect with other players are some of the ports that the new firewall kept closed.

I eventually found out how to configure the new router and lower the security of the firewall so that the necessary ports were open and could transfer information completely. After doing so, the NAT circle in my game went green, and I was able to play without further interruptions.

Open NAT is the optimal setting. You will join Game sessions and communicate with other Players without experiencing any problems.

After thinking things over, it makes sense that the firewall behaved the way that it did. Most people only use their computers to browse the Web and do everyday tasks. For them, it would not make sense to keep open a port that only video games really use, since doing so can leave them vulnerable to hackers. In the end, learning about ports and how software, such as games, interacts with them reminds me of the networking security that some of us take for granted.