Archive for the ‘Uncategorized’ Category

Accessibility Project Update

Okay, one month in, and I still feel like I haven’t done enough. I keep hitting the silliest road blocks.

At first, I started working on some front end things and integrating into the chrome browser. Admittedly, I don’t feel like I did enough for a first milestone. I had basic front end functionality and basically no back end functionality.

Milestone 2: ‘Coming Along’

I decided to focus on server side processing and have the client interact with the ‘master server list’ of videos that are problematic. This meant that I could write a server side application that just scrapes YouTube for content and processes each video. Initially, I thought this would be OK. I knew the Python Imaging library existed and so I thought I’d try my hand at it. That was a failing attempt. Not only did I not remember much Python, I couldn’t even get a development environment set up (I’m terrible at that sort of thing). Next, I thought I could do it in Java, since I’m more familiar with Java. Again, I couldn’t get my environment set up. (yes, I’m a failure). The Java media Framework did NOT want to cooperate with me. In the end I turned to Matlab. Trusty, reliable, bloated Matlab. This was because it’s just easier. No environment to set up, it has all the packages I need already so I didn’t have to go out and download/install other libraries. Simple! Also, given that I’d already done this type of thing in Matlab, I had the basic code written up in 15 minutes. *sigh* <– One whole weekend of work….

My Matlab program appears to come up with the same results as the PEAT application, but does not display them as nicely. I look at the average value of each frame and compare it to previous frames. If there is a difference of moret han 100 between a set of frames, then set a warning because this indicates a large change in the sequence of frames. Granted, this is not the most scientific way to detect flashes in a video, but it’s start. To save time, we can stop processing the rest of the video once a warning sign has been detected.

Next I had to set up a local server. I decided to just use my localhost. Googled how to do it, and found IIS simple enough for my purposes. Now my client can connect and read data off my localhost. *good enough*

My new problem is trying to get a modal dialog box to appear in the YouTube window that covers the video and warns the viewer of the video. I can get a regular dialog box, but not the flashy in window frame. I might just stick to this for now.

Next Steps:

Trying to get the server to automatically scrape YouTube for videos to process OR accept requests from the client. Accepting requests however, means that I can somehow automate the process of grabbing videos off YouTube, process it, and return the result back to the user in a timely manner. (not likely to happen anytime soon)

I need to make the client side more usable. Still lots of “features” that need to be attended to. I also need to test on a real server, but I need help setting one up properly and not just hacking together a default localhost.

Canvas For One Note

Just installed office and thought I’d look into Canvas for One Note. I know it’s still in development stages but I must say the interactions are just not agreeing with me.

There is an invisible wall on the upper and left sides of your canvas. Sure, you can grow your canvas out to be as large as you need, but you can only do so and navigate to the right and down. I thought that was a little irking especially because there are no visual clues that you can’t pan above or to the left. A canvas border would be useful here. I then managed to grow my canvas so large, all my content was tiny in the upper left corner when I zoom out. Looking for a “shrink” option, there isn’t one. You have to restart canvas. Sections and pages themselves are also only expandable in the right and bottom directions. I definitely think you should be able to expand and explore everything in all directions and pan and zoom so that your content is framed and centered. Or have canvas view automatically detect where content is and zoom out framing all the content. I don’t need to know that my canvas is gigantic, but only the top left corner is being used.

One click zoom in and out is also sometimes frustrating. If I have many pages in a section without much open space, it’s difficult to zoom in to the section and not a specific page. I think that there needs to be a stage of zoom. So if I click anywhere within a section, then it will zoom into the section and I have to click again to get a specific page. Or have the user double click on the page that they want to see from any level of zoom to zoom into that page.

I think the idea behind this software is really cool and I can see myself using it since I’m a very visual person. However, it has to work out the navigation kinks.

Happy Birthday Me!

I am officially 21, which means I’m legal in all countries now. yay! I want to thank everyone who has and will wish me a happy birthday today. My parents were very happy that I’d be in the country for my birthday. We had Father’s day/Birthday cake yesterday at the restaurant. It was nice to see my aunts, uncles, and cousins again. Actually I see them almost every weekend so it’s going to be sad when I leave and can’t take part in the craziness we call family bonding.

Plans for today:

  • Shopping! Must finally get around to buying work clothes
  • Spend time outside
  • There is potentially more cake to be eaten.
  • Start packing winter clothes in my new Hey’s luggage! :) (Thank you family!)

Not too busy. I don’t like to be too busy during vacation.

Exactly 1 month from today…

… I leave for Japan. I’m sorry if people are getting annoyed with all of my updates about that. Mostly on Facebook and Twitter. However, I’m more excited than ever! Knowing the date that I’m leaving has totally amped me up to go. It helps that it was like dirt cheap for my plane ticket too and the company is going to reimburse me for it. Awesome! I should be receiving my certificate of eligibility from the Japan early next week so that I can finally go to the Japanese consulate in Toronto and apply for my VISA.

Things that still need to get done before I leave:

  • Deal with me cell phone: It seems that nobody wants my phone for a year, so now I have to decide whether I want to pay the $500 to cancel my plan and lose my number OR reduce my plan to something like $40 a month and just keep paying it and keep my number in the end. How irritating.
  • Get VISA.
  • Go shopping for business clothes.
  • Prepare for going away parties with family and friends.

It doesn’t seem like too much to do and I have tons of time to get it all done. 3 weeks is more than enough free time for me I think. It might actually be a vacation for once! Outrageous. I think it will be the first time since the start of first year where I actually had time off from school and work. Of course I can see myself popping in on Basie from time to time. I also want to take Basie with me to Japan to work on during spare time there (like the dashboard). I’ll also likely pop in on my replacement at PMH to see how he’s coming along. But I’m definitely going to try and take it easy and relax for once.

That’s really exciting! Can’t wait!

It’s been so long

Hello world!

Everyday I learn that there are more and more people reading my blog. Thanks to everyone who does! I’ve been off the map for a couple of weeks now. I blame exams and nice weather mostly. There are lots of other things that need to get done before leaving for Japan, but everything has to happen one step at a time.

First things first, finishing up my time at the Princess Margaret Hospital. I’ve been cleaning up my files and organizing them so that my successor will be able to comprehend my cryptic labels and filenames. Looking back at my time here, I’ve definitely learned a lot about medical imaging, and working closely with my boss with him being the ‘client’. It’s interesting to see all the features of the application  that are no longer needed, but kept around because we might need it later. I do feel like I learned a lot more about code style, development, and mathematical theories during third year that would have been useful to have prior to beginning this job.

Second, working for Greg and Karen for the next month. Doing UX design is always fun. I’m not entirely sure what I’m going to be working on, but I’m sure it will be interesting. They’ve promised to work me hard, so let’s hope I survive.

Third, preparing and going to Japan. I’ve been waiting for my certificate of eligibiliy from Japan, and I can’t really do much until I get that. So I feel like I’m in limbo. I’d like to get all my preparations done and a flight booked, but I can’t and it’s driving me nuts.

Things to do along the way:

  • Extend driver’s liscence (it’s supposed to expire in August, but I’m not going to be in the country. I hate driving)
  • Get VISA from Japanese consulate
  • Book flight to Japan
  • Seeing all my friends before I leave for the other side of the world
  • Go to farewell party for Mrs. Xuereb (I really want to attend this event, but it’s on June 19th and I’m afraid I might not be here for that :’( )

Instapaper-esque bookmarking

I already discussed this in an e-mail thread with Greg and Bill, but I thought it would be relevent to reiterate here. 

Instapaper.com is another bookmarking site only it doesn’t look like it’s for social use (i.e. sharing with others). There are defeinitely features that are really cool though. One feature that I really like is the bookmark toolbar button. What it’s for is for users to be able to browse the internet and when they see a site that they like, they can just click on the button in their toolbar and the site will automatically be saved to their Instapaper account. How cool is that!? Needless to say I was really impressed by this. It makes saving bookmarks so much easier. I don’t even have to copy and paste the URL, give it a name or anything. It just saves right to my account and the next time I log into Instapaper, it’s there! Amazing! Once logged in, users can edit the link descriptions, set stars, delete, and add more bookmarks. 
I think that if Basie can have that kind of toolbar functionality, students will be more likely to use it. The toolbar button could automatically save the page into the user’s project/group and allow access by other members of the project. If a user is in multiple projects/groups, then it should be saved in an “unsorted bookmarks” section, where the next time the user logs in to view their bookmarks, they will be prompted to set a group for those bookmarks. Or, those unsorted bookmarks will be highlighted at the top of all the bookmarks to draw attention to them to let the user know that they are currently unsorted. Once a bookmark is sorted into a project/group it can then be edited and viewed by other members of the group. 
Here are preliminary screens of unsorted bookmarks and sorting them. 

Notice that in the second image, Groups 3 and 5 have been added and the button on the bottom says Next Bookmark. If there are no more bookmarks, then the button should say Done. This way of bookmarking assumes that nobody would bookmark pages for personal use and so every bookmark SHOULD belong to at least one group. I think that it makes sense to make all bookmarks and pages accessibly to at least one group because if a user wanted a bookmark for personal use, it’s more likely that they would use a thirdparty site or just save it in their own browser. 

Please feel free to comment on this and whether there are preferences that perhaps I’m overlooking. Thanks!

Calendar

After looking at the calendar at www.whenisgood.net , this is what Basie 0.3 needs. Well something similar. The main features that we would like is the ease of just clicking times that you’re available and sending it out to other people to get a concensus on when would be most convenient to have a meeting or other group gatherings. If Basie were to pick this up, we would have to determine how the average user would like to use it or design it in such a way that they could use it however they like. The second option would seem more difficult and likely less design and user friendly.

Currently, that calendar gives user the option to select available meeting times and the time chunks can be specified by the user with the 15/30/60/day buttons on the top left. (That actually really confused me for a while and did not catch on that that was what those buttons did)
I like the simplicity of being able to just click on/off a time. I would like a click and drag kind of rectangle to select multiple squares at one time. This way if I have large chunks of time where I’m available, then I don’t have to select each square individually.
In the options menu, I like being able to select dates to show. However, I do feel that option should be visible at all times and not hidden away. I also like being able to adjust the time range display during the day with a separate option to highlist a certain time range.
After at least two users have inputted their availability time, the calendar has green squares and grey square with red dots in them. I think that’s a neat idea because the green squares indicate times when everyone can make it and if you click on a square with a red dot, it shows which users cannot make it at that time. (Thinking back now, this would have made deciding when to have basie IRC meetings much easier).

I just took a look at doodle.com. In my opinion, it was OK. nothing really blew me away and although the process was pretty streamlined, it took way too many steps to complete the creation of an even and too many pages to load as well.

For Basie, I think it’s most important to find out what users will actually be using this for. Would they use it primarily for scheduling a weekly meeting? or will their meetings be determined on a week to week basis? I like the Blackberry calendar application because it allows for re-occurrence of an event. So I can input something like a weekly class and have it re-occur every Monday and Wednesday until a specified end date. This is definitely a useful option when setting schedules. This will also help users plan meetings over the course of the term if the regularly scheduled meeting time is problematic for one or two weeks only. However, if Basie users are only going to use this tool once in the beginning of the term and then never need it again, something more like doodle.com might be sufficient. Just set up the ‘event’ once and everyone remember it. Personally, I’d prefer to have something more like a calendar over a single event organizer.

Suppose we go for a calendar application. Here are some features that I think would be nice/necessary:

- Display on a week to week basis with “->”,”<-” arrows to go from previous or next week respectively.
- Month view should highlight, when the user has an event to attend or assignment due. Should look like a calendar month (no hour scheduling display)
- When viewing days or week, option to chunk time into hour or half hour intervals only.
- re-occurance of events (i e repeat every monday and wednesday until *some day*)
- notification of who has not responded or inputted their availability
- indicator to see which times/dates EVERYONE can attend and indicator to see which times/dates some people cannot (with list showing who is in either category)
Any other thoughts? I’m going to try and have something sketched for this, but want some input first.

Bookmarking Dilemmas…

I’ve been waiting for more comments on the previous posts before I made any more decision just to get some feedback. Got some good comments from Liz (many thanks again).

Some important things of note:

How many different layers of privacy should there be? It makes sense to have personal bookmarks, group bookmarks, and public bookmarks. personal bookmarks are pretty straightforward, and the current sketch of the interface will support that just fine. The group bookmarks are somewhat trickier. I think that if a user selects that, a new selection box or check-boxes should appear of the groups/projects they belong to. Then they can select which project can see that bookmark. Otherwise the public bookmark will be seen by everyone.

How public should public bookmarks be? could unauthenticated users view them? or should that be a separate level altogether? I think that all public bookmarks should be available to everyone, even unauthenticated users. However, they should not be allowed to comment or edit the bookmark. This is similar to a bulletin board where people can see posts, but not reply unless they’re logged in.

Speaking of comments, I will be adding more sketches of what the “Bookmarks” page should look like with comments. I think that if we are going the route of giving users updates upon log in, then any new bookmarks that they can view (but not necessarily edit) should also appear in that list. Also, authenticated users should be allowed to comment on any bookmark they can view and only the person who posted the bookmark should be allowed to change it (i.e. if the link was incorrect or note was wrong, then only the creator could go and change that). Again, unauthenticated users could view public bookmarks, but not comment or edit them.

I’m also thinking of changing the “New Bookmark” button to just a text field where users can just type in a site url and hit enter. That would make it much easier to do, but then we get into privacy setting issues. Should the default be private for the user or public? I think in that case, the default should be private to the user, so that they can create bookmarks fairly quickly and if they decide to share it, then they can go through the extra steps to do so. In that case, should the text field be inside or outside the tabs? If we put it inside the tabs, then the default would be context sensitive depending on where it is. if we put it outside, then the default would be private for the user.

I think I need comments on that. There are so many options. Much sketch and show everyone!

Bookmark Drawings

Those are two images I made about the social bookmarking feature for basie. I went with the tab feature because I thought that would be an easy way to navigate through the bookmarks especially if users have many different levels. The “New Bookmarks” tab is like an update of new bookmarks that the user has permission to see. So either group bookmarks or global bookmarks. This may not be necessary, if we include newly created bookmarks as part of the events log or some other page where the suer can get updates. The “New Bookmark” button will be available in every tab and clicking on it, will cause a dialog box to appear with the appropriate fields to craete a new window. The default “Share with” option will depend on the context in which the “Create Bookmark” button was selected and in “New Bookmarks” I’m not sure what the default should be yet. Right now it says “Nobody” but I think that should be “Everybody”. The options will be “Nobody”, “Group”, “Everybody”.

I haven’t worked out what to do if the user is part of several groups and wants specific bookmarks for each group. I’m also not sure what to do about editing bookmarks either. I think that users should only be able to edit bookmarks that they created, but allowed to comment of every bookmark. This is something I have not included in the above sketches.

This is it for now. Thanks!

Social Bookmarking “Research”

Asked to design a simple bookmarking tool for Basie now. I’ve been looking around for some good examples, and these seem to be the best though I looked through several more.

* Furl
* Del.icio.us
* Google – what doesn’t google have?
* Simpy

The main features in most bookmarking sites:
* URL (obviously necessary)
* title
* description
* tags

Google’s bookmark saver is essentially the most basic one you can have. It only allows you to add, remove, and edit your own bookmarks. So it does not allow sharing and viewing other users’. This feature is tied in to browsing history.

One thing I’ve noticed with many of these sites is that the ability to add a new bookmark is always somewhat hidden away or not noticable at all. I even encountered one site that does not even allow you to add a bookmark! (unless of course I just couldn’t find it, which isn’t any better)

Some sites don’t take you directly to the site when you click on it. It will first take you to a more details view. I’m personally not a fan and I think that in the context of Basie, it would just be easier and more intuitive to make the link take you straight to the page that’s bookmarked.

Simpy has a very simple, yet not very visually appealing, interface. I like the little [+] next to links and notes to add a new link or note. I’m not entirely sure what the purpose of notes are. Simpy also allows users to create a group, watch other users, and see who’s watching them. There is also a “similar users” field that, I’m going to assume, will display users who have similar links as you.

Another feature of most bookmarking sites is the ability to set the privacy level of the bookmark. Most only offer public or private. For Basie, it would make sense to have public, group, and private (though private may not be used very much).

One thing I was thinking about for this feature for Basie is the ability to easily share information among the class from the prof and from students. I am taking CSC318 which is an HCI course, and all the students are given access to all the other group projects. This would definitely make that easier to manage since at the moment, we’re using a wiki page that the TA’s and professor post the projects to. If every group could just bookmark a link to their document or web application, it would make it easier to get information. However, unless the course is designed in such a way where teams are able to see other teams’ work, then there would not be much use for this. I can envision it being used mostly by the professor posting useful links with the occasional student doing so as well. Then in that case, an announcement, blog post, wiki, forum post, or e-mail would be sufficient.

This is it for now. I might edit this in the near future.