Main Menu
My name is Philip Guo (also search for me as Philip J. Guo, Philip Jia Guo, pgbovine). I am a Ph.D. student studying Computer Science at Stanford University. I was previously an undergraduate and master's student at MIT.

I created my first personal website in 1997; since then, I've used this website to show off some of my interests ...

In June 2008, I started a small webcomic called pgrind.

I like to write articles on topics ranging from:

I've enjoyed writing in my free time since I was a teenager. My first book, an autobiography of my early life entitled On the Move: An Immigrant Child's Global Journey, was published in 2007.

Before I started sharing my writing, this website was mostly a showcase for my photography hobby. Click on any of the thumbnails on this page to see a gallery of related photos, or reload this page to see more photo thumbnails randomly drawn from my collection.

Some of my favorite photos are from my Summer 2000 and Summer 2005 tours of rural China.

I also enjoy creating and sharing software. My largest hobby project is the web-based XML Photo Gallery; I use it to display all of my website photos, and over a dozen people have adapted it for their own websites.

Back in college (2001-2006), I took some classes, worked on several research projects, created a few short amateur videos, and (most importantly) had an unbelievably wonderful time with my friends doing things like making up inane slang terms.

One of the most rewarding aspects of maintaining this website is receiving email feedback from around the world.

Recently updated pages:

  1. Academic Home Page 2008-07-23
  2. Why Python is a great language for teaching beginners in introductory programming classes 2008-07-02
  3. How good of friends are you with someone? 2008-06-22
  4. On the Move: An Immigrant Child's Global Journey 2008-06-22
  5. Hobby projects as platforms for active learning 2008-06-20

Newest pages:

  1. How good of friends are you with someone? 2008-06-22
  2. Hobby projects as platforms for active learning 2008-06-20
  3. The benefits of object-oriented programming using class invariants (a.k.a. representation invariants) 2008-06-20
  4. The benefits of programming with assertions (a.k.a. assert statements) 2008-06-20
  5. Some Tips for Life 2008-05-24

Last non-trivial update: 2008-07-08