Popcorn on a Cob
September 26th, 2008Recently I found this amazing food product: popcorn on a cob. It’s a dried-out ear of corn that you can microwave to make popcorn! I did just that, and recorded the results.
Tea–Can you drink to that?
July 29th, 2008My best buddy made this video for a scholarship about the health benefits of tea. Part of the judging is how many hits the video gets, so watch it a couple times or more!
How to create a ZIP file
July 23rd, 2008It’s easy. Here’s a video showing how:
FRI version 1.4.0.0 Setup & Usage Tutorial
April 23rd, 2008I have been working The Fantastic ROM Indexer (FRI), a multi-emulator frontend/ROM indexer, since last August or so, and it has come to the point where it is pretty easy to use. The problem that it attempts to solve is simple: With thousands of ROMs from a multitude of various consoles, it can get a bit difficult to just pick out a game to play and play it. With FRI, all of your ROMs show up in one list, and finding a ROM to play is as easy as typing in part of the name. For a more advanced search, the user can even filter down the list by platform, language, number of players, ratings that they have given to the ROMs, etc. Starting the game is as easy as a double-click on the ROM, because emulators can be directly integrated into FRI by the user.
So here’s a demo/tutorial:
More information about FRI version 1.4.0.0 is available here.
Maze-Solving Robot
March 13th, 2008Botball is an annual robotics competition. I am part of the Botball club at my high school, and I thought I would share a little project that I just finished.
My goal was to have a generic robot with a camera on it that all of the club members could write code for. First the task was to make the robot bounce around in an arena marked off with red tape, then the goal was to make the robot follow a line (curvy, with sharp edges, with dead ends, whatever), then it was to make the robot solve a maze. It was a lot of fun, and a great learning experience.
One look at the robot shows that I definitely care about software way more than hardware.
![]()
Â
It may not look like much, but surely you know that personality is more important than appearance, and besides this little guy has spunk. If I were to continue this project, though, the next step would be to make him less fat.
Here’s the maze. In theory the robot can solve any maze of this style. (Yes, the end of the maze is a mouse pad.
)
![]()
Here is the robot solving the maze. Keep in mind that the robot can be placed in any part of the maze with the end anywhere else in the maze.Â
I found by experimentation that the longest time it can take the robot to solve this maze, given any start and any end, is 1 minute and 54 seconds.
If there’s one bit of advice that I think new Botball members need to know, it’s to be patient. The first version of my maze-solving code was really just code that made the robot follow lines. A later version would only solve a maze if it never encountered a dead end, and there’s always the version of the code that makes the robot flail about sporadically. So be patient, and don’t try to tackle the whole project at once. Get little pieces to work, and use that to build off of. I in no way assert to be the authority on robotics, but I have learned a thing or two.
Oh, also precise names. Don’t go calling methods “dog” or “cat”.
Here I made a video explaining in general terms how the robot stays on track when following a wall:
So you may want the code to mess around with, and if you do then you’re in luck! Not only is there a link to download the code at the bottom of this post, but I also recorded two videos of me explaining it, or attempting to anyway.
 Warning: It may be a little boring!
In this video I explain the defines, whose values you can change to make the robot behave differently:
In this video I explain how the rest of the code works:
(Note: I found an error in the deadEndInSight method. I fixed it incorrectly on video, but it should be right in the download below.)
« Previous Page — Next Page »

