weblog dedicated to software development, philosophy, and theology

Leave a comment

Demo #2 – Unit Testing

For Demo #2 the only progress I made was fixing the pop-up bookmark editor and assertion problem. It was kind of discouraging to only have this much progress, but nonetheless I’m taking this opportunity to be more self-aware in my unit testing skills.

System enhancements are difficult to perform testing especially if there is no established unit testing framework. It can be very challenging to manage all impacts made especially if you are unfamiliar with the given code base. But nonetheless, reading and understanding all these impacts is essential in order to properly take the necessary actions.

It’s really a privilege to be in school and have the opportunity to refine your skills and knowledge within a luxurious set of deadlines. For the most part, in the real world deadlines really mean ASAP…Well thats all for now. I’m going to keep you guys posted on my self-learning (or re-learning) and hopefully share more of my experience and lessons learned.


Leave a comment

Demo #1 – Places API BugFixing Project

This blog post seeks to provide an update of my DPS911 project: Places API BugFixing Project. This post also provides a storyboard style description of my progress.

Multi Edit or Bug 412002 -should be able to edit tags for multiple bookmarks at the same time, is the current active bug that I am working on. The official bug title explains what the bug hopes to achieve.

Figure 1 – Firefox 3: Places Bookmarks
The new Firefox 3 contains a significant amount of improvements and changes. One change that I want to highlight is the edit bookmark panel. In the FF3 source it is called editBookmarksOverlay.xul. The above link is showing my bookmarks items in the Bookmarks Menu folder.


Figure 2 – Bookmark Item Selected
When a bookmark item is selected the edit bookmark overlay panel loads text boxes that allow for bookmark attributes to be updated.

Figure 3 – Multi-Bookmarks Selected
When a user selects more than one bookmark item, either by using a ctrl+[mouse click] or shift+[mouse click]. The bookmark edit overlay panel loads only the ability to update the Tags bookmark attribute.

Figure 4 – Updated Tags
Here you can see that I have updated the tags from the bookmark items selected in Figure 4. I included the tag “sports” for the and bookmark item. One of the ways the update tag is triggered, is when anytime the textbox focus of the Tags bookmark attribute field is removed. The textbox focus refers to the event when the cursor is placed and exists within a given textbox.

There are problems with a conflicting event. An event triggers a function to change the edit bookmark panel every time a bookmark item is selected. In my current release I have provided a hack that seeks to ensure that the update tag function is called before the algorithm changes the edit bookmark panel. This hack requires more testing as I have noticed inconsistent results.

Figure 5 – Related Problems 1
The first related problem that I have identified with my patch is with the Bookmarks pop-up editor which is triggered every time a Ctrl + k is issued within the browser. The editor is suppose to be more compressed and the “Folder:” field should contain a bookmarks folder location, like Bookmarks Menu or Unfiled Bookmarks.

Figure 6 – Related Problem 2
Continued from the previous Figure, when a user selects the drop down button from the “Folder:” field an Assertion Failure is issued.

Leave a comment

Mike Shaver, Mozilla, Open Source

Over the last week, Mike Shaver Co-Founder of Mozilla came into class to talk about Mozilla, our student project work here at Seneca and other related open source topics.

First and foremost this was my first attendance of an in-class Mozilla guest speaker session. During DPS909 – Topics in Open Source Development, I was working full-time at RBC GTO for my extended co-op term so therefore I was unable to attend the all star line up. I still find it amazing and a great privilege that Mozilla / Firefox developers and full time workers would come in and interact with students. This is a very encouraging experience and makes me proud of what Seneca and their staff are doing for their computer science program.

During the start of the session, we had a round table discussion where we had an opportunity to introduce ourselves and to talk about our current project. It was very fascinating to actually put the IRC names / projects to the student faces. After the round table discussion we had the opportunity to ask Shaver questions.

The most interesting question was how Mozilla and other open source model their finance. One of their financing opportunities comes from Google, where the a contractual relationship is based on the integrated web search tool (when you press control+k, the cursor will focuses on it). Despite other details mentioned, the striking thing that came out was that the deal was motivated from a growing amount of Firefox users, using Google as their main search engine. I found it very impressive that Mozilla captured business opportunities while trying to keep their services and products community centric.

The community centric theme, later returned from a discussion related to forking. Forking is a term used to describe software that is based on another piece of software – in terms of source code and package but has been modified to be distinct. Examples are Iceweasel and Flock forking Firefox.  During the discussion, David Humphrey shared his open source project experience. Humphrey and Chris Tyler (I believe he is also working on this Project or is at least a major contributor) are attempting to package a Mozilla Development Kit on DVD for future students. This kit comes with everything a student needs to do Mozilla Development. Humphrey informed us about his failed attempts to get help and support from the Visual Studio Team so that their tools could be included into the kit. Essentially, the problem with the Visual Studio Team was over licensing concerns and other related issues.

The point that I got out if it was that with the open source model, the path for innovation is much easier which means the community has the advantage. This reminded me of Bob Young’s discussion over this years FSOSS and how the open source model benefits products and services that reaches out to a large community or that it contains a community centric theme…

So right now I am hoping and praying that the Open Office community becomes bigger and better so that their product line catches up to and increase in quality over MS Office because right now the MS Office market and software is kicking butt!