Deadlines approach fast! In times like these, it's oh so helpful to be able to dig a tunnel from your office to your home so that you have access to the tools that you need! Right now you have images of me under the ground with a shovel slowly scooping through layers of packed dirt. I'm not using shovels. I didn't break a sweat, and I didn't have to use a single gallon of gasoline!
I installed Cisco VPN on Ubuntu 8.04. Essentially, I did create a tunnel from my office to my home, expanding the bubble that is our corporate network to surround my makeshift home office. It was both easier than I thought and harder than I thought. It was easier thanks to the wonderful community of Ubuntu users, yet harder because it required kernel patches and Google searches and a little patience and persistence.
I found a link to fix the Cisco VPN Installation Issue with Ubuntu 8.04 Hardy Heron. There are in fact several of them, which helps to confirm that the steps you follow won't cause your refrigerator to start leaking. A poster in the forum also described my exact problem that I was facing. He was using an older version of the VPN Client, as I was. And according to another poster, it wasn't compatible with the new kernel. He supplies the reader with a link to the patch, which can also be found all over the net.
After pulling our friendly IT Specialist from his episode of Babylon 5, I was able to obtain the latest version of the VPN Client. It was in fact the same version listed in the forum that the poster recommended. After applying the patch to the new version, all was good. Well, almost. I couldn't get the VPN to start. It was complaining that the profile couldn't be found. What it should have done was laughed at me, called me an idiot, and told me to put the profile configuration file in the correct directory! Then it should have shook it's head and told me to try reading the usage instructions more carefully and to omit using the .pcf file extension in the command I was using.
After reading further in the forum, I found that the Ubuntu community was nice enough to remind me of this fact, without laughing at me, and without the shake of a head.
Easy enough. I started the VPN Client and am now on the way to meeting my deadline, all without leaving the house! In addition, I can now login on nights and future weekends, workaholic that I am, and be able to get more work done!
I must say I'm pretty impressed with Ubuntu 8.04! I'm glad I tried it out. I haven't boot into Windows XP Pro in over a month now! And so far there hasn't been a need. Of course, I do have VMPlayer installed on here with a Windows XP Home VMImage, and am kind of cheating, but that's another adventure!
Showing posts with label Collaboration. Show all posts
Showing posts with label Collaboration. Show all posts
Saturday, June 28, 2008
Friday, June 27, 2008
HTML Multiple Reply Signatures for Gmail 1.0.2.3
Don't get too excited. The Multiple HTML Reply Signatures Extension 1.0.2.3 update doesn't include too many new features. I got rid of the red update link that appears in the toolbar. I don't think it was working correctly. In addition, it took up valuable browser real estate. Bad idea.
I did try to see what would happen in Firefox 3. Sadly, the Firefox Extension doesn't work in Mozilla's newest and fastest browser. The problem isn't the editor or even the signature injection. It's the module that reads data from the XML file. This was a hack anyway. I could probably get by with using the Firefox RDF API or perhaps store the signatures using the preferences system.
The good news is, converting to Firefox 3 wouldn't be hard. The bad news is that I don't have time to do it. We just need to fix the mechanism that reads signatures from the XML data file! That's it! Everything else appeared to work when I tested it!
Anyone know any JavaScript who is bored? HTML Multiple Reply Signatures for Gmail is licensed under the GPL! You can crack open the XPI and try to fix this yourself! I'll even tell you what files to modify if you email me!
I did start working on a version for Gmail 2. Interestingly enough, there aren't many solutions out there for Gmail 2, yet there was tons of competition for Gmail 1. I have a prototype that Susan Hemmersmeier has happily tested for me. It's very buggy though. Too buggy to put up on the blog, and too buggy for her to use.
Susan asked me when this will be finished. I hate to keep promising that "I'll eventually get to it.". You see, thanks to this blog, I landed some contract work! It's a lot of fun, but it takes up a lot of time. As a result, it would appear that HTML Multiple Reply Signatures for Gmail may be a (sniff...) dying project...
Do you have the skills to resurrect it from it's ashes? Let me know! I can definitely provide the moral support and answer technical questions, I just can't devote programming time to it at the moment.
James
I did try to see what would happen in Firefox 3. Sadly, the Firefox Extension doesn't work in Mozilla's newest and fastest browser. The problem isn't the editor or even the signature injection. It's the module that reads data from the XML file. This was a hack anyway. I could probably get by with using the Firefox RDF API or perhaps store the signatures using the preferences system.
The good news is, converting to Firefox 3 wouldn't be hard. The bad news is that I don't have time to do it. We just need to fix the mechanism that reads signatures from the XML data file! That's it! Everything else appeared to work when I tested it!
Anyone know any JavaScript who is bored? HTML Multiple Reply Signatures for Gmail is licensed under the GPL! You can crack open the XPI and try to fix this yourself! I'll even tell you what files to modify if you email me!
I did start working on a version for Gmail 2. Interestingly enough, there aren't many solutions out there for Gmail 2, yet there was tons of competition for Gmail 1. I have a prototype that Susan Hemmersmeier has happily tested for me. It's very buggy though. Too buggy to put up on the blog, and too buggy for her to use.
Susan asked me when this will be finished. I hate to keep promising that "I'll eventually get to it.". You see, thanks to this blog, I landed some contract work! It's a lot of fun, but it takes up a lot of time. As a result, it would appear that HTML Multiple Reply Signatures for Gmail may be a (sniff...) dying project...
Do you have the skills to resurrect it from it's ashes? Let me know! I can definitely provide the moral support and answer technical questions, I just can't devote programming time to it at the moment.
James
Labels:
Collaboration,
Firefox development,
Gmail,
Greasemonkey,
HTML Signatures,
JavaScript,
XUL
Sunday, May 25, 2008
Open Source Infections
This article is in response to a comment left on this article.
Below is an excerpt of the GPL from http://www.gnu.org/licenses/gpl.html:
When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things.
The GPL license states that the purpose is to give developers more freedom to use the source code; however, it's not truly free! Here is another excerpt from the GNU FAQ:
If I add a module to a GPL-covered program, do I have to use the GPL as the license for my module?
The GPL says that the whole combined program has to be released under the GPL. So your module has to be available for use under the GPL.
But you can give additional permission for the use of your code. You can, if you wish, release your program under a license which is more lax than the GPL but compatible with the GPL. The license list page gives a partial list of GPL-compatible licenses.
You have a GPL'ed program that I'd like to link with my code to build a proprietary program. Does the fact that I link with your program mean I have to GPL my program?
Not exactly. It means you must release your program under a license compatible with the GPL (more precisely, compatible with one or more GPL versions accepted by all the rest of the code in the combination that you link). The combination itself is then available under those GPL versions.
If so, is there any chance I could get a license of your program under the Lesser GPL?
You can ask, but most authors will stand firm and say no. The idea of the GPL is that if you want to include our code in your program, your program must also be free software. It is supposed to put pressure on you to release your program in a way that makes it part of our community.
You always have the legal alternative of not using our code.
The term "infect" perfectly describes what some open source licenses can do to code. Specifically, any code one writes that uses a GPL library can become "blanketed" by the GPL license. The author of the comment claims that this is FUD. It's not FUD, it's reality. Sure, open source software is great, and I have even written open source software myself. However, I can't use this code in a proprietary project because the license would make the proprietary project non-proprietary. The analogy of an infection paints a perfect picture regarding how the license would spread from the open source library to the proprietary code.
This isn't to say that all open source licenses are bad. It's important to differentiate between the GPL, LGPL, Apache License, MIT License, and other public licenses. To really label a license as giving developers the freedom to use the software however they want, one would need to look at the LGPL, Apache Commons, or another license that allows open source software to be integrated into a proprietary application.
While there is nothing wrong with the GPL, it's important to understand that there is a time and a place to use this license, and that GPL-licensed code may not be good for every project.
Below is an excerpt of the GPL from http://www.gnu.org/licenses/gpl.html:
When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things.
The GPL license states that the purpose is to give developers more freedom to use the source code; however, it's not truly free! Here is another excerpt from the GNU FAQ:
If I add a module to a GPL-covered program, do I have to use the GPL as the license for my module?
The GPL says that the whole combined program has to be released under the GPL. So your module has to be available for use under the GPL.
But you can give additional permission for the use of your code. You can, if you wish, release your program under a license which is more lax than the GPL but compatible with the GPL. The license list page gives a partial list of GPL-compatible licenses.
You have a GPL'ed program that I'd like to link with my code to build a proprietary program. Does the fact that I link with your program mean I have to GPL my program?
Not exactly. It means you must release your program under a license compatible with the GPL (more precisely, compatible with one or more GPL versions accepted by all the rest of the code in the combination that you link). The combination itself is then available under those GPL versions.
If so, is there any chance I could get a license of your program under the Lesser GPL?
You can ask, but most authors will stand firm and say no. The idea of the GPL is that if you want to include our code in your program, your program must also be free software. It is supposed to put pressure on you to release your program in a way that makes it part of our community.
You always have the legal alternative of not using our code.
The term "infect" perfectly describes what some open source licenses can do to code. Specifically, any code one writes that uses a GPL library can become "blanketed" by the GPL license. The author of the comment claims that this is FUD. It's not FUD, it's reality. Sure, open source software is great, and I have even written open source software myself. However, I can't use this code in a proprietary project because the license would make the proprietary project non-proprietary. The analogy of an infection paints a perfect picture regarding how the license would spread from the open source library to the proprietary code.
This isn't to say that all open source licenses are bad. It's important to differentiate between the GPL, LGPL, Apache License, MIT License, and other public licenses. To really label a license as giving developers the freedom to use the software however they want, one would need to look at the LGPL, Apache Commons, or another license that allows open source software to be integrated into a proprietary application.
While there is nothing wrong with the GPL, it's important to understand that there is a time and a place to use this license, and that GPL-licensed code may not be good for every project.
Labels:
Business,
Collaboration,
Open Source Licensing
Saturday, December 8, 2007
Corporate Intranet Blogging
One of my coworkers recently came up with what I thought was a really good idea. He suggested that the company allocate time for us to blog. From a marketing standpoint, this could be good public relations in terms of finding both customers and employees, but from a business standpoint, there is a danger of compromising corporate intellectual property.
A lot of other companies have been successful with this idea, but our management is against the idea because of the fact that company secrets could inadvertently find their way into the hands of a competitor.
Therefore, my solution is corporate intranet blogging. We take the idea and we push forward with it, but only internally. This won't buy us any PR points, but it will provide everyone in the company with a platform where they can keep everyone up to date on any cool technologies, advice, bugs, or projects that they've worked on.
This would be a great extension of documentation. If I spend a few days fixing a nasty bug that I think someone else in the company may encounter, the fix will be documented in my intranet blog. If I know that coworker A has really good suggestions for user interface design, I can periodically review the blog for new advice. Sure, this may not be necessary when everyone works in the same office during the same hours, but suppose most employees work in another office? This is a great way to find out what everyone is working on without having to necessarily ask.
A lot of other companies have been successful with this idea, but our management is against the idea because of the fact that company secrets could inadvertently find their way into the hands of a competitor.
Therefore, my solution is corporate intranet blogging. We take the idea and we push forward with it, but only internally. This won't buy us any PR points, but it will provide everyone in the company with a platform where they can keep everyone up to date on any cool technologies, advice, bugs, or projects that they've worked on.
This would be a great extension of documentation. If I spend a few days fixing a nasty bug that I think someone else in the company may encounter, the fix will be documented in my intranet blog. If I know that coworker A has really good suggestions for user interface design, I can periodically review the blog for new advice. Sure, this may not be necessary when everyone works in the same office during the same hours, but suppose most employees work in another office? This is a great way to find out what everyone is working on without having to necessarily ask.
Labels:
Business,
Collaboration,
Web 2.0
Tuesday, November 27, 2007
A Quarterback's Operating System
"Perhaps this is what needs to happen. Every Linux seller from Novell to Dell (via Canonical) buys air time during the Super Bowl and co-ops a website and a call center phone number for people interested in getting more information."
- Matt Hartley at Mad Penguin dot org
At the beginning of 2007, I was saying the same thing! I was extremely disappointed during the last Super Bowl! Well, not really. The Colts defeated the Bears in an exciting game where the combined efforts of Peyton Manning, Adam Vinatieri, and the Colts offense and defense put enough points up on the scoreboard to defeat the Bears. As one of the only two undefeated teams in the NFL this year, the Colts could end up playing at another Super Bowl game once again.
Although I wrote this article before the Colts loss to the Patriots, the Colts are still in the running and could still defeat the Patriots if they play as aggressively as the Eagles did!
This time, I'd like to see Peyton Manning take his acting career a step further. Last season, Peyton was the spokesman for Verizon. Instead of gaining sponsorship from Verizon, this year I'd like to see Peyton Manning in a Linux commercial. Linux is touted as a geeks' operating system. However, Linux distributions such as Ubuntu are clearly targeting your average home users. So what better way to advertise than to do exactly what Matt Hartley has suggested?
As I mentioned, I didn't see a single Linux commercial during the last Super Bowl, but I totally expected to see one! I was so sure that Linux would make its debut into mainstream media. With Vista looming on the horizon, now is the perfect opportunity for Ubuntu, SUSE, and other Linux distributions to spread the word during the largest televised event during the year.
Novell, you are a corporation. Throw some of those corporate dollars to Peyton Manning! Dell, you already advertise. Help out the open source movement and promote Ubuntu on your laptops! This is what makes you stand out from the crowd! Capitalize on it!
No one ever said it was illegal to make sales from open source software!
Labels:
Business,
Collaboration,
Cross-platform,
Linux,
Marketing,
Operating systems
Sunday, October 21, 2007
PHP Navigational Calendar
I'm working on a project for Edúcate Ya that involves placing a calendar on the home page. The idea is that the calendar will be used to display any public events, classes, guided trips, fund raiser events, and anything else of importance that an organization may want to advertise on a web page.
Each event listed on the calendar would be a hyper link to another page on the website that provides more details about the event. I ran a few Google searches to see if I could find something that would fit. There are of course plenty of HTML, JavaScript, and many other types of Calendars to choose from. However, everything I found either was way more than what I was looking for, cost money, or did not have the navigational feature I was looking for.
Many of the calendars were similar to a web-based Microsoft Outlook, which an organization could use to help employees manage group schedules. Not only did these calendars have way too many features, but also they weren't the features we were looking for.
So, I decided to build a Calendar using PHP. I chose PHP because the Edúcate Ya website was built with PHP, so the server is already configured to use PHP. I started working on this towards the end of August. Yesterday, I was able to generate -- using PHP -- a calendar with a list of events that were pulled from an XML data file.
I chose XML because the list of events for Edúcate Ya is small. However, my plan is to retrofit the application with an abstract class that will allow developers to add different data sources, such as a database. I also designed the system so that a front-end controller loads a "view" based on a parameter passed when calling the controller. Anyone who wishes to use this application could simply replace the view with their own by using the API.
The back end functionality is somewhat in place. The implementation doesn't yet fit the architecture, but I wanted to get this to market for Edúcate Ya as soon as possible. So, as many software development projects go, I took some shortcuts. The abstract class representing the data sources is still visible only on paper, and the APIs required to build the view are somewhat tightly coupled. It's not perfect, but it works for me right now.
The actual HTML and CSS need some major overhauling. That is the next step in this process. However, my hope is that the Navigational Calendar may turn out to be useful to others who wish to have a Navigational Calendar on their website. In order to realize this goal, the final step will involve making it easier to build a view. Currently, a developer would have to first build a static HTML calendar, and then integrate it with the HTML-generating PHP code so that the correct month is displayed with the correct data. This also means that I will need to throughly document everything, which is something that I haven't done much of outside of my full-time employment.
I plan to use the open source cross-platform software Gimp to apply the "chrome" for the calendar.
NavCalendar Application - Navigational Calendar
Each event listed on the calendar would be a hyper link to another page on the website that provides more details about the event. I ran a few Google searches to see if I could find something that would fit. There are of course plenty of HTML, JavaScript, and many other types of Calendars to choose from. However, everything I found either was way more than what I was looking for, cost money, or did not have the navigational feature I was looking for.
Many of the calendars were similar to a web-based Microsoft Outlook, which an organization could use to help employees manage group schedules. Not only did these calendars have way too many features, but also they weren't the features we were looking for.
So, I decided to build a Calendar using PHP. I chose PHP because the Edúcate Ya website was built with PHP, so the server is already configured to use PHP. I started working on this towards the end of August. Yesterday, I was able to generate -- using PHP -- a calendar with a list of events that were pulled from an XML data file.
I chose XML because the list of events for Edúcate Ya is small. However, my plan is to retrofit the application with an abstract class that will allow developers to add different data sources, such as a database. I also designed the system so that a front-end controller loads a "view" based on a parameter passed when calling the controller. Anyone who wishes to use this application could simply replace the view with their own by using the API.
The back end functionality is somewhat in place. The implementation doesn't yet fit the architecture, but I wanted to get this to market for Edúcate Ya as soon as possible. So, as many software development projects go, I took some shortcuts. The abstract class representing the data sources is still visible only on paper, and the APIs required to build the view are somewhat tightly coupled. It's not perfect, but it works for me right now.
The actual HTML and CSS need some major overhauling. That is the next step in this process. However, my hope is that the Navigational Calendar may turn out to be useful to others who wish to have a Navigational Calendar on their website. In order to realize this goal, the final step will involve making it easier to build a view. Currently, a developer would have to first build a static HTML calendar, and then integrate it with the HTML-generating PHP code so that the correct month is displayed with the correct data. This also means that I will need to throughly document everything, which is something that I haven't done much of outside of my full-time employment.
I plan to use the open source cross-platform software Gimp to apply the "chrome" for the calendar.
Labels:
Collaboration,
PHP
Saturday, March 31, 2007
Web 2.0 and Family Networks
We didn't necessarily walk to school uphill both ways in the snow, but Web 2.0 technologies were still a distant dream. Back in the 80's, we didn't have the same technological advances that we have today. As a result, living in Maryland, I didn't see much of my relatives who lived in Delaware.
My grandmother was the first of four children, each of these children has his or her own family, and many of their children have their own families now. I can remember being 6 or 7 years old and having a lot of fun at "The Family Reunion", so titled because it was one of the few large family events I remember that didn't involve a wedding or a funeral. I remember wishing that we had more of these kinds of events when I was little.
In 1987, people kept in touch through the phone lines or by writing letters. Family memories were shared in real, tangible photo albums. Get-togethers and keeping up to date on family events was much more difficult than today as it involved real-time collaboration, a lot of planning, and in some cases, quite a bit of travel.
Now we have virtual photo albums that can be viewed anywhere, anytime, as long as an Internet connection exists. Using such a service offered by a hospital, my sister sent me a link to show off my niece. Through such services, I can view pictures and leave messages and comments. As a result, our lives are less disconnected although we live many states apart. My younger brother and sister both have MySpace pages, as do I, and we can link to each other and our friends simply by adding each other to our "friends list".

Back in November, my grandmother passed away. Once again, the four families were reunited; unfortunately, this time it was without the company of one of the four eldest members. I saw family whom I hadn't seen in years. I talked to people I barely knew who were friends with my grandfather, whom I never had the opportunity to meet. Some of us exchanged emails; we even spoke for a few months. However, now we've all gone back to continuing our lives.
RememberWell, founded by Heather Swain, is dedicated to end of life issues, celebration, and remembrance. While creating a memorial for my grandmother, I realized that there could potentially be a market for family-centered Web 2.0 websites that provided the means for families to link their trees together. Some websites, such as MySpace, allow members to create groups, which could serve a similar purpose. However, Tom Anderson and Chris DeWolfe have not included this in their marketing efforts. When I think of MySpace, family collaboration is not what comes to mind.

Of course, I'm not the first person to come up with the idea of family-centered websites. I found Geni in my search results for "Web 2.0 family tree", which is one of 15 companies that is part of a $50 million dollar venture capital fund. In just minutes, I created an account and added members to my tree. Each person I choose to add will, upon my request, receive an invite to join the service. They will have the ability to add members to their own tree and connect them together.
The Geni family genealogy is presented to viewers as a tree. As it grows, navigational buttons are provided to allow directional scrolling so that different sections of the tree can be viewed. Geni uses Ajax to send and receive information from the server without needing to reload the entire page. Combined with Flash development, the user interface is smooth and responsive, which once again demonstrates the power of the Web in terms of creating a rich user interface. In addition, users of this website can zoom out to see more of the tree in the browser.

As a result of my lack of family genealogical knowledge, my tree appears relatively flat when zoomed out, but I'm hoping that the tree will grow -- both upwards as well as downwards -- as new members accept invitations.
In addition to the family tree display, each person has an associated profile to add information. This includes the basics, such as age, height, place of birth, a biography, current occupation, interests and activities, and much more. Furthermore, each profile contains an "immediate family" section that lists the members of that person's immediate family and provides links to their profiles.
Conflict Resolution
After editing my profile, I returned to my family tree to find that one of my cousins had already accepted my invite and has been adding more members to the tree. Alas, a bug of sorts has crawled its way into the tree. While Google Spreadsheets does an excellent job of instantaneously updating a collaborated spreadsheet without conflict, Geni still has some work to do in this area. In the Help section, Geni outlines some of the design challenges their developers face in order to implement a confict resolution feature; they do acknowledge that this is indeed an issue that should eventually be addressed.
Most of these conflicts could be avoided if my changes were instantly recognizable, as is the case with Google Spreadsheet collaboration. Despite the use of Ajax to reduce page reloads, there are now two profiles for my grandmother, mother, and aunt. Apparently, my cousin must have added them and not realized that they were already there due to a delay in the system. Of course, after my changes were recognized she must have realized that there were duplicates and removed them.
Security
When creating a profile, users will notice a status bar which reflects how far he or she is from its completion. Next to this status bar in the top right section of the window, there is a link to add a password to the profile. Afterwards, an additional 10% will be added to the status bar. Just out of curiosity, I wanted to find out what would happen if I logged out before completing this part of the process. If I was able to regain access without a password then this could present a privacy issue, and if I wasn't able to regain access, there could potentially be a lot of new members who would simply go somewhere else, frustrated by the loss of the time spent entering irretrievable data. As competition is almost a guaranteed in this industry, Geni has ensured that these issues are handled appropriately.
I found that if you do disconnect from the system without first creating a password, as long as you've entered an email address you can click the "Forgot password" link on the login page and a temporary password will be issued.
In summary, I'm fairly impressed with this Web 2.0 technology, and now that I've got the ball rolling, I look forward to seeing how my family tree grows.
My grandmother was the first of four children, each of these children has his or her own family, and many of their children have their own families now. I can remember being 6 or 7 years old and having a lot of fun at "The Family Reunion", so titled because it was one of the few large family events I remember that didn't involve a wedding or a funeral. I remember wishing that we had more of these kinds of events when I was little.
In 1987, people kept in touch through the phone lines or by writing letters. Family memories were shared in real, tangible photo albums. Get-togethers and keeping up to date on family events was much more difficult than today as it involved real-time collaboration, a lot of planning, and in some cases, quite a bit of travel.
Now we have virtual photo albums that can be viewed anywhere, anytime, as long as an Internet connection exists. Using such a service offered by a hospital, my sister sent me a link to show off my niece. Through such services, I can view pictures and leave messages and comments. As a result, our lives are less disconnected although we live many states apart. My younger brother and sister both have MySpace pages, as do I, and we can link to each other and our friends simply by adding each other to our "friends list".

Back in November, my grandmother passed away. Once again, the four families were reunited; unfortunately, this time it was without the company of one of the four eldest members. I saw family whom I hadn't seen in years. I talked to people I barely knew who were friends with my grandfather, whom I never had the opportunity to meet. Some of us exchanged emails; we even spoke for a few months. However, now we've all gone back to continuing our lives.
RememberWell, founded by Heather Swain, is dedicated to end of life issues, celebration, and remembrance. While creating a memorial for my grandmother, I realized that there could potentially be a market for family-centered Web 2.0 websites that provided the means for families to link their trees together. Some websites, such as MySpace, allow members to create groups, which could serve a similar purpose. However, Tom Anderson and Chris DeWolfe have not included this in their marketing efforts. When I think of MySpace, family collaboration is not what comes to mind.

Of course, I'm not the first person to come up with the idea of family-centered websites. I found Geni in my search results for "Web 2.0 family tree", which is one of 15 companies that is part of a $50 million dollar venture capital fund. In just minutes, I created an account and added members to my tree. Each person I choose to add will, upon my request, receive an invite to join the service. They will have the ability to add members to their own tree and connect them together.
The Geni family genealogy is presented to viewers as a tree. As it grows, navigational buttons are provided to allow directional scrolling so that different sections of the tree can be viewed. Geni uses Ajax to send and receive information from the server without needing to reload the entire page. Combined with Flash development, the user interface is smooth and responsive, which once again demonstrates the power of the Web in terms of creating a rich user interface. In addition, users of this website can zoom out to see more of the tree in the browser.

As a result of my lack of family genealogical knowledge, my tree appears relatively flat when zoomed out, but I'm hoping that the tree will grow -- both upwards as well as downwards -- as new members accept invitations.
In addition to the family tree display, each person has an associated profile to add information. This includes the basics, such as age, height, place of birth, a biography, current occupation, interests and activities, and much more. Furthermore, each profile contains an "immediate family" section that lists the members of that person's immediate family and provides links to their profiles.
Conflict Resolution
After editing my profile, I returned to my family tree to find that one of my cousins had already accepted my invite and has been adding more members to the tree. Alas, a bug of sorts has crawled its way into the tree. While Google Spreadsheets does an excellent job of instantaneously updating a collaborated spreadsheet without conflict, Geni still has some work to do in this area. In the Help section, Geni outlines some of the design challenges their developers face in order to implement a confict resolution feature; they do acknowledge that this is indeed an issue that should eventually be addressed.
Most of these conflicts could be avoided if my changes were instantly recognizable, as is the case with Google Spreadsheet collaboration. Despite the use of Ajax to reduce page reloads, there are now two profiles for my grandmother, mother, and aunt. Apparently, my cousin must have added them and not realized that they were already there due to a delay in the system. Of course, after my changes were recognized she must have realized that there were duplicates and removed them.
Security
When creating a profile, users will notice a status bar which reflects how far he or she is from its completion. Next to this status bar in the top right section of the window, there is a link to add a password to the profile. Afterwards, an additional 10% will be added to the status bar. Just out of curiosity, I wanted to find out what would happen if I logged out before completing this part of the process. If I was able to regain access without a password then this could present a privacy issue, and if I wasn't able to regain access, there could potentially be a lot of new members who would simply go somewhere else, frustrated by the loss of the time spent entering irretrievable data. As competition is almost a guaranteed in this industry, Geni has ensured that these issues are handled appropriately.
I found that if you do disconnect from the system without first creating a password, as long as you've entered an email address you can click the "Forgot password" link on the login page and a temporary password will be issued.
In summary, I'm fairly impressed with this Web 2.0 technology, and now that I've got the ball rolling, I look forward to seeing how my family tree grows.
Labels:
Collaboration,
Family,
Web 2.0
Subscribe to:
Posts (Atom)


