Tuesday, August 11, 2009
Wednesday, January 2, 2008
Hacking Game Teaches Players to Program
It has been a while since I last wrote a blog entry. There are a few reasons for this:
- I was finishing up my university career. I am now (barring any unforeseen circumstances) the proud owner of my very own Bachelor of Computing Honors degree from the University of Guelph.
- I have been quite busy working on the MMO game Hack Wars.
- I have a few jobs and, even without these other distractions, I am usually quite busy.
We are now well into the beta for Hack Wars, and I thought I would take the time to talk about one of the aspects of the game that I am particularly proud of.
I am not a stranger to developing educational games, having helped conceive of the game ‘Speare. Developing the game Hack Wars, however, was a much less bittersweet experience. Granted, Hack Wars is not as explicitly an educational game as ‘Speare. This having been said, Hack Wars is a great and fun way to learn the basics of programming — in an environment that combines aspects of both event-driven and procedural programming paradigms.
Now, don’t get me wrong, Hack Wars is designed from the ground up to be a fun and competitive MMO; it is, however, neat to be able to imbue it with an actual grounding in computer-science — a field I am quite passionate about.
To learn more about programming in Hack Wars, you can read its manual entry on the subject
Oh, and a quick clarification, the programming in Hack Wars is designed to be realistic. The ‘hacking’ on other hand is designed to make for a fun game — as much as I’ve always wanted to run my own digital terrorism training camp.
-Ben
Thursday, July 5, 2007
Web Design Made Easy
Web Design Made Easy
PLink - Search Engine, Blogging, Content Management, and more.
PLink API
PLink Blogs can now be implemented on your website with three lines of code, using the new PLink API. This means portions of your website can be created and edited as the sections of a PLink document, with all of the fancy pants editing features that go along with this: including Textile markup support, tables, images, bibliography entries, etc. Edit your blog on plink-search.com and sections of your site implementing the API will be instantly updated — no need to sift through HTML to find what you want to update, and PLink documents can be edited from any computer! (with your PLink login and password). Sections of a PLink document integrate seamlessly with your new or already established site, as with this example of a PLink document imported into Marie Alighieri’s website.
Using the PLink API your PLink Blog is imported one section at a time. The library is currently available in PHP. Java™ and Ruby versions will soon follow. An example of the PHP library follows:
plinkInclude("username","password","Section Title");
?> Where username and password are your Plink login information, and Section Title represents the name of one of the section in your Plink Blog.
You can use style sheets to modify the style of the imported section, please note that for your convenience images and tables are given the div class ‘figure’. Also the link to PLink at the bottom of the incoming document is wrapped in the div class ‘plink’.
Enjoy the update,
Ben.
Download
PLink API For PHP
PLink API For Ruby
Notes on Ruby
To use the Plink API with your Ruby on Rails application add the file plinkapi.rb to the lib/ directory of your application. To use the API within the application add the following to your application controller or the controller of your choice:
require "plinkapi"
class ApplicationController <>To put the content of a Plink section onto your page add the following line to the Views you want the content to appear in:
<%= plinkInclude( "username", "password", "section" ) %>
Friday, June 22, 2007

PLink - Search Engine, Blogging, Content Management, and more.
DolphinNet™ is an easy to use server and distributed processing library for Java™. Like RMI, DolphinNet™ uses objects to communicate between a client and server. DolphinNet™, however, approaches this task using object serialization over a standard TCP/IP connection.
DolphinNet™ was designed by me for a 4th year research course, and was originally intended for facilitating distributed processing tasks (document clustering to be exact), it has since been put to use in several different ways:
- A chat server/statistics collection system for a marketing research study.
- The back-end for an online applet based poker game.
- The client server system for the partially complete Vulgate MMORPG.
- A P2P web-browser and HTML renderer.
- In conjunction with Tomcat, it provides PLink’s search functionality.
- Including the website indexing, which is done by a client.
DolphinNet™ has been used by me and my peers for several years now, but I have never made it public. I’ve recently decided to make it available with a GPL license, and feel that it could be a useful tool to any Java™ programmers out there, who are looking to add some great OOP client/server software to their programming arsenal.
PLink Textile

PLink - Search Engine, Blogging, Content Management, and more.
Several people have been asking for the ability to perform richer editing on the text in paragraph elements — don’t worry, I’m always open to new ideas. Rather than make a proprietary PLink markup, I have implemented the markup used by Dean Allen’s Textile™. Textile is easy to use, and quite powerful. This having been said, I wasn’t satisfied with the Java™ Textile libraries that already existed, so I have been busy programming my own parser for its specification.
Which brings us to PLextile™, a complete Java™ library for parsing Dean Allen’s Textile which has been implemented by the PLink team. Unlike other existing Java™ implementations of Textile, Plextile™ supports all of its major features:
PLink TextileiPlink for iGoogle

PLink - Search Engine, Blogging, Content Management, and more.
Just in time for iChristmas, we at PLink have thrown together a simple little widget that lets you post notes to any section of your PLink documents from your iGoogle homepage. These notes are inserted as a paragraph element, and are quite useful for roughing out your blogs/documents/manifestos from a remote location – potentially whilst looking up stuff on Google. You can of course use Plextile Textile during these posts.
iPlink for iGoogle
A Techy Blog for the Techy Masses
What started as a CIS project for creating technical documents has – over a span of two years – become PLink. Several months ago a corporeal voice said to me – it might have been my own – “Ben, why don’t you apply some of the research you’ve been doing, and make a search engine?” The idea (essentially) was to make a search engine that relied on voting to rank search results.
A Techy Blog for the Techy Masses