Thursday, February 16, 2006

Wiki-Constructopedia: Search

UPDATED on February 17.

Since there is no news to report on the Lego Mindstorms Development Program, let's continue to investigate how a Wiki-Constructopedia should work. Finding the right robot within the Wiki-Constructopedia is an important issue. In this article, I will explore the ideal “Search” capabilities, based on the information I currently envision the Wiki-Constructopedia to contain.

Base Information

But first, we need to define what information a robot submission should contain. I'm assuming here that the author is already logged in, and has chosen to either create a new robot, or to branch off at a particular point of an existing robot. Then following information seems right:

Mandatory information per robot:

  • Title for the robot
  • Complexity
    • Possibly adjusted by community if over-/underrated
    • This represents is the skill required to build the robot from the step instructions, not the skill required to invent the robot
    • Jim and I (see comments) propose following options:
      1. Beginner
      2. Experienced
      3. Expert
      4. Master
  • Category. One of the following Lego categories:
    • Vehicles
    • Machines
    • Animals
    • Humans

Optional information per robot:

  • Description. Possibly revised by community if English is hard to read.
  • Tags. One or more tags you want to associate with the robot.
  • List of links to software that runs on this robot.

Mandatory information per step:

  • Image of the step. Either a picture taken with your camera, or advanced users can submit an LDraw image.
  • List of parts used
    • Selected off a list
    • It’s probably a good idea to restrict the number of part choices on the input screen by selecting the Lego boxes you actually have.

Using this information, we can define the following searches.

Simple Search:

  • Keyword in title or description. Full text search of title for given word list. Use the minus sign to exclude words.
  • Complexity. Select one or more complexity ratings.

Advanced Search:

  • Everything from Simple Search.
  • Category. You can specify one or more of the four Lego categories.
  • Use only parts or boxes.
    • A list of individual parts and Lego boxes that the search must restrict to. That way, you only see the robots that you can actually build.
    • Robots that do not use all parts will also be selected (since you can always use less parts than you actually have).
  • Must use parts.
    • A list of parts that the robot must use. Here, it makes no sense to do "must use boxes", because when do you use a box? When you use 1 part of the box? When you use all parts of the box? For boxes, it is better to restrict your search using "use only parts or boxes".
    • The minus sign can be used to forbid using a particular part.
  • Author. An list of authors that must (or may not, when using minus sign) have collaborated on this robot, either by making changes to its construction, or by creating the robot in the first place.
  • Tags. A list of tags that must (or may not) be associated with the robot found.
  • Changed since. The robot must have been changed more recently than the provided date. Useful to find new robots.

I've also been wondering if you shouldn't be able to specify once and for all in your personal information page which Lego boxes and parts you have, so that you can automatically restrict even simple searches to those parts by selecting a tick box.

This is off course a request for comments...


At February 16, 2006 3:20 PM , Blogger Jim Kelly said...

Some really good thoughts here, Filip. You've really put some time and thought into this...

My thoughts:

1. I agree with keeping to existing categories if the LabView software (post-beta) still uses them.

2. Your level of complexity is good, but I'd make one suggestion. A lot of younger people do not like to be 'labeled' as 'teen' or other such things - age might not be the best way to categorize - I'd suggest changing it to simple words like "Beginner", "Experienced", "Expert", "Master", or something along those lines that isn't based on age, but self-assigned experience.

3. If the contructopedia really becomes popular, you'll want to consider a rating system with various characteristics to rate: fun, complexity, unique idea, etc.

4. Whether either of us makes the User Panel or not, I hope that someone will take your ideas here and pass them onto the MUP team.


At February 17, 2006 10:38 AM , Anonymous Filip said...

Jim, thanks for the comments. I updated the original post to reflect your comment 2, so that future readers are immediately up to speed and comment on the new proposal.

I didn't do that for suggestion 3 simply because there is some fleshing out to do. How would a "uniqueness" be assigned, should we maybe talk about the robot of the month?

I also thought about using information such as the number of times a robot is viewed, or similar measures. But I guess I'll have to track the usage a while before I understand which measures are good ones.



Post a Comment

Subscribe to Post Comments [Atom]

Links to this post:

Create a Link

<< Home