Friday, September 7, 2007

Start of Class - First Ideas

Yesterday (2007-09-06), we had our first DPS909 class.

We discussed what the purpose of the class was (introduce us to Open Source development methodologies).  I've got a few ideas about what project I want to do during this class.  Unfortunately my ideas seem a little bit big to me... comment if you think so (or not).

1) Mozilla Scriptability
- The ability to use the Mozilla browser statefully in a scripting language (such as perl). eg. Scripting language looks something like this (forgive me for using java... its easiest to psudocode in for me... the final product probably wont be a java thing, but a commandline thing for scripting langs like PERL PHP etc)

MozBrowser m = new MozBrowser();
m.setTextBox( "masmullin", 0 ); // put my username in box 1
m.setTextBox( "hahanicetry", 1 ); // put my pword in box 2
m.clickSubmit( 0 ); // click the submit button
String s = m.getHtmlAsString();

Now Gmail is actually an incredibly bad example now that I look at the page... because its AJAXy (view the source for gmail once you log in... you'll notice a lack of HTML code).  But the example is just to give you an idea.

2) Firefox logging
- An extension to log what a person does in firefox to give the ability to easily "record" steps taken during a browsing section.  
This idea is the "opposite" of my first idea, and is complementary to the scriptability idea.  They logging + scripting would allow a non-power user to automate tasks they regularly perform in firefox. eg.

A user regularly logs into their bank site to see their balance.  The user can switch on "logging" and perform the necessary tasks to get to the page which contains their balance.  The output can then be used the scripting idea (idea 1) to gather the text displayed on the balance page... pipe to a regular expression and bam, they can easily automate a little task to grab their bank balance.


dave said...


Interesting ideas. Are you aware of ?

Michael Mullin said...

No I wasn't. I think this is exactly what I wanted to do. Oh well, Im glad its already done, because now I can use it:)

btw, I had problems with your link. This is the site I looked at