Tuesday, March 10, 2009

MOUSE Legacy Project - Proposal

I finally finished my proposal for the MOUSE Legacy Project - a three month long gig. As some of you may remember, my project last year was the OLPC wikispace page. Hopefully, this is new endeavour will see much more usage...

The basic premise started off with the creation of a browser. After a week or so of playing around with Xcode - Apple's development software - I finally had one up and running. It was ugly, had no tabs, and couldn't bookmark, but it actually showed the real internet; for that, I was happy.

However, a simple browser isn't going to cut it. While the technical aspects - tabs, bookmarks, design, etc - are to be worked on in the upcoming weeks, the actual core of this project is what, in my opinion, makes this simply shine. The plan is that once a presentable browser is up and running, we then start to create documentation that provide people guides to the code written. The idea is that, by looking at the lines of code we write, and the text, screencasts, or anything else we make to give directions and explanations, people will be able to build upon our work and even make their own.

This concept was inspired by some ideals behind open source and programming languages such as Scratch. I liked the idea of having programs open to change from the public, and languages that were made for the teaching of children, so I attempted to just blend the two together.

Hopefully, this can not only be done, but can be done well and have it catch on. It would be great to see these types of programs more often - those that are built for use just like any other, but also come with something that acts as a programming learning aid. I really do believe that such a thing would help many people who think "This is great. I would love to make my own", actually go out and achieve those goals.


  1. Wow. Sounds pretty kool. Since I've known you u've always had ideas. A lot of good ones and a few not so good ones.

  2. I'll take that as a compliment... mostly.

  3. I hope you'll put the docs on the internet somewhere (maybe google docs or Zoho, or in HTML on some free host site).

    Maybe you should start the documentation process before the coding with a design phase. What you've described sounds a bit like a code review, but it might be interesting to present some diagrams of modules, class hierarchies and class interactions (UML sequence diagrams are particularly illustrative). These diagrams might make the development itself easier, too, since you'd have a better idea in advance of what you need to code. It's a bit tricky to find good free tools for these sorts of diagrams, but Visual Paradigm community edition is worth a look.

  4. I'll definitely post them online - the more feedback the better. I realized that they will probably be aimed for post-beginners, or I should change how I advertise them a bit...

    Anyways, I just downloaded the Visual Paradigm program. I hope to play around with it this afternoon and see what I can do.

  5. Ryan - so, not sure if this is where you finally landed with your project or not so I'll keep it brief. Given that the nature of the project is to address a specific "design need" you've identified, I wonder what the "problem" or "need statement" would look like. In other words - state in one sentence, the need you're perceiving this design will address.

    As a secondary note: I wonder whether this project idea has more to do with your interest in languages (as I was just reminded of through your profile) and also has relation to your OLPC work. If what you're implying is that programming languages are becoming as relevant as spoken languages for young people and that they need to be taught and fostered... interesting. There's some great research in that direction that I can see you getting a lot out of. On the other hand, if this is way off track, I'm interested to hear more about what you're planning.


  6. At this point, I think it would be wise to come up with two projects - just in case one doesn't make the cut again, I'll have a nice little back up plan.

    The first revolves around something that Juan and I were excited about during the unplugged event. It happens to be my personal favorite, but I'm fleshing it out a bit more.

    The second would likely be within the vein you highlighted in your post. I was poking around sugarlabs.org yesterday and perhaps a good Legacy project would be to introduce an elementary school to using sugar and then report and the effects on the student's learning. It appears that Sugar can be loaded on both windows and mac machines.