Date: 2006-01-01 17:04:00
Tags: web
Many years ago (november 1997 to be exact), I was home sick from work for a few days, and decided to experiment with some of the new browser-side scripting capabilities that were on the leading edge of browser technology at the time. My project was to implement a game of Othello (or Reversi, also known as many other names) entirely in the browser.

I did this by implementing an Othello playing engine in Java, then loaded that applet into a web page and called methods in it using JavaScript embedded in the page. This worked pretty well; all browsers of that time eagerly supported Java applets without complaint. Because Internet Explorer was the foremost browser at the time, I also used a Microsoft ActiveX control to display an animated "genie" (similar to the infamous "Clippy" paperclip in Office), which did speech synthesis and recognition.

Times have changed, and today ActiveX controls are all but dead and Java applets are no longer acceptable for implementing client-side logic. With modern browsers not even including Java by default, my Othello page sat broken and neglected under the tide of progress.

After eight years of ignoring the problem, I finally decided to rework my Othello game implementation. The new version uses only Javascript (no Java applets), and should work in all modern browsers (I've tested it in Firefox, IE, Opera, and Safari). In the interest of standards compliance, the page also validates as XHTML 1.0 Strict.

Othello Game

Let me know if you have any trouble using this in your browser!
Works great! Now give it some smarts to be a challenge. :)
Did you select difficulty "Hard"? If that's still too easy, I can easily add more levels by increasing the search depth. :)
Greg Hewgill <>