« March 2006 | Main

April 18, 2006

Red's Presentation Advice

- right away, say what it is
- who would use it
- why I'm doing it, if I have a passion for the subject, explain
- assume people know what a wiki is, what social software is
- clarity and crispness
- practice flash and keynote on jap room
- plan 12 minutes of presentation, 8 for questions and so on

Posted by msallin at 11:16 PM | Comments (0)

Advice of How to Proceed

DANO:
- put FH on the web already
- get rid of connection lines starting at 0,0
- make it so people can start their own families
- PUT OFF quickening the redraw
- PUT OFF fixing the crowded siblings

RED & class:
- Put effort into making it a good and clear demo of the technology/concept to inspire people to use it
- center the hedge by width, not by who is selected
- make profile live
- add breadcrumming to get back to yourself
- somehow make it clear that the family doesn't end after the 2nd degree, that it keeps going...
- bring back those dots to indicate further relations

Posted by msallin at 10:57 PM | Comments (0)

Feedback from Presentation to Dano's Class

Showed how I'm now able to click on any node and redraw from that node's pov. Rad.

LAMAR
Get rid of the city name in node view, or add the state to give it context, or just put the state instead of the city.

DAN
Add colored bg to to text so that it's readable over other text

DANO
Make it so that you click some topic in the profile and that same info pops up for everyone on screen (cool, but how to show this? is there room?)

DAN P
Show faces on rollover, and change profile on rollover. Maybe use a color other then yellow for hovering over something that's not primary Like profile text is yellow and halo is yellow, but when you rollover someone who's not primary, you get a green halo, and the profile text is green.

DANO
To add a relative from the Hedge view, have user double-click on them.

Posted by msallin at 10:33 PM | Comments (0)

Eureka!

IT FUCKING WORKS!!! Yesssss, I am so happy. The Hedge view redraws when you select a new node. This was hard. But it works.

It's jerky as heck and easing tweens only made it slower so far, but I'll see how much I can speed it up by moving all the nodes once per switch.

Next:
- make profile dynamic
- Fix database to fill in bad data (connect with CocoaMySQL)
- make nodes more button-y, have them depress, have ring appear instantaneously
- get it up on the web
- tweak positioning, especially on siblings
- make data entry interface
- make it add nodes dynamically (WYSIWYG data entry)

Posted by msallin at 02:46 AM | Comments (0)

April 12, 2006

From Profile to HomePage

MySPace's succes is partly because it allowed people to turn their profiles into their own personal webpages, complete with audio, video, photos, and blogs, as well as allowing the users to customize the hell out of the page design. This allowed kids to have their own webpages without the complication of building one from scratch. To foster this, MySpace allowed users to have their own domain directly accessable at MySpace.com/username. Genius.

How about FH allows something similar to that as well? Click a button, and the profile slides up to cover the Hedge and within it is filled with pictures, media, and text and whatever.

Posted by msallin at 12:55 PM | Comments (0)

April 11, 2006

Wrote more people

Gary B. Hoffman, author of Genealogy in the New Times

Brian Schwimmer of U of Manitoba

Gary Boyd Roberts of the New England Historic Genealogical Society
Phone:617-536-5740
He's the one who broke the story on Bush and Kerry being related

David Hey, who wrote The Oxford Guide to Family History

Dear Mr.Hoffman

My name is Matthew Sallin, and I am a graduate student at New York University working on my Masters Thesis, which is a new kind of genealogical application. I found your article, "Genealogy in the New Times" very inspirational for my work, and I would love to get your opinion on my project, which is a new kind of genealogy application.

It's called Family Hedge, and it uses a "Hedge" metaphor rather then a tree metaphor: traditional family trees are vertically oriented, showing a direct line from your ancestors up to you in present day. Such trees are limited in scope because they only consider the direct bloodline that results in you, and siblings and their spouses and children are excluded from this view. Conversely, a family hedge is radially oriented, expanding in all directions. The motto is "Explore the family you know, and discover the family you don't know".

The user explores their family using a tree-like "Hedge" visualization that encourages one to surf though their family data in the same way someone surfs through the web. Family members can create and edit eachother's profiles so that everyone can have a presence, even those who are not with us anymore, those who are too young, and those who do not participate. The ultimate goal of this application is to spread as far as possible, revealing how we are all related to eachother, similar to the six-degrees experiments of a few years ago.

I would like to hear your opinion about it, so please visit my mini-site at
http://www.thefamilyhedge.com

You will need to install Flash, which allows you to see animations on web pages. The download page is here:
www.macromedia.com/go/getflashplayer

Thank you for your time.

take care,
Matthew Sallin

Below is a rough draft of what the application will eventually look like.

Brian,

My name is Matty Sallin, I'm a grad student at New York University's Interactive Telecommunications Program. Your website on Kin Diagrams has been enormously helpful in my thesis project, and I wanted to get your opinion on what I am creating. I'm building a new kind of genealogical application called Family Hedge, and it's basically a combination of social software for your family and a data visualization and network theory experiment.

Data viz for family trees has not really changed since the middle ages, except with regards to projects like the Genogram, which are designed for social workers to trace the emotional lives of families. What I'm trying to do is something new:
It's a combination between a social networking application (like Friendster) and a networking experiment using data visualization. It uses a "Hedge" metaphor rather then a tree metaphor: traditional family trees are vertically oriented, showing a direct line from your ancestors up to you in present day. Such trees are limited in scope because they only consider the direct bloodline that results in you, and siblings and their spouses and children are excluded from this view. Conversely, a family hedge is radially oriented, expanding in all directions.

The user explores their family using a tree-like "Hedge" visualization that encourages one to surf though their family data in the same way someone surfs through the web. Family members can create and edit eachother's profiles in a "wiki"type manner so that everyone can have a presence, even those who are not with us anymore, those who are too young, and those who do not participate. The ultimate goal of this application is to spread as far as possible, revealing how we are all related to eachother, similar to the six-degrees experiments of a few years ago.

I would like to hear your opinion about it, so please visit my mini-site at
http://www.mathlete.com/portfolio/familyHedge.php

best,
Matty Sallin


To Whom it May Concern,

My name is Matthew Sallin, and I am a graduate student at New York University working on my Masters Thesis, which is a new kind of genealogical application. I would very much like to make contact with your author David Hey, who has written a number of wonderful books on genealogy.

For my thesis, I'm making a website that is a new kind of genealogical applicatio nand I would love to get your opinion on my program.

It's called Family Hedge, and it uses a "Hedge" metaphor rather then a tree metaphor: traditional family trees are vertically oriented, showing a direct line from your ancestors up to you in present day. Such trees are limited in scope because they only consider the direct bloodline that results in you, and siblings and their spouses and children are excluded from this view. Conversely, a family hedge is radially oriented, expanding in all directions. The motto is "Explore the family you know, and discover the family you don't know".

The user explores their family using a tree-like "Hedge" visualization that encourages one to surf though their family data in the same way someone surfs through the web. Family members can create and edit eachother's profiles so that everyone can have a presence, even those who are not with us anymore, those who are too young, and those who do not participate. The ultimate goal of this application is to spread as far as possible, revealing how we are all related to eachother, similar to the six-degrees experiments of a few years ago.

I would like to hear your opinion about it, so please visit my mini-site at
http://www.mathlete.com/portfolio/familyHedge.php

You will need to install Flash, which allows you to see animations on web pages. The download page is here:
www.macromedia.com/go/getflashplayer

I hope we get to meet one day!

take care,
Matthew Sallin

Below is a rough draft of what the application will eventually look like.

pastedGraphic.tiff

Posted by msallin at 04:27 PM | Comments (0)

Dano: check out Perlin's PAD++ interface

Basically, it's infinite pan and zoom:

PAD++

Posted by msallin at 04:22 PM | Comments (0)

For Next Week...

- finish Hedge visualization code to safely draw from anyone in any family (Kennedys, Carrington-Colbys, Sallins)
- be able to redraw by clicking node, not by changing code
- only draw lines if they _don't_ spring from the top left corner
- begin to check out Ning to handle front end, talk to people who have experience with Ning

Posted by msallin at 03:07 PM | Comments (0)

Finally drawing hedge from "other" side

Ok, after tweaking and refactoring my code exclusively with my Mom as ego (from my Mom's p.o.v.), I have finally had the courage to try it with my Dad as ego! It looked awful, of course, but I soon realized I had to change less code then I thought. It's mostly siblings and mates that need to have orientation change.

Since I originally started with Sandy as ego, and I drew her on the "left" orientation (meaning the ego is on the left side of it's mate, Robert in this case). While I originally planned to keep males on the left side, I forgot that I did this, so rather then reengineer my code (AGAIN), I stuck with it and now all women are on the left. Dan thought this was a slight mistake, as men are traditionally on the left in family trees, but after checking (ok, I only checked one website) Brian Schwimmer's website on Kin Diagrams, he shows all women on the left in couples. Whatever. For now, I have way bigger fish to fry...

Such as: Dan also pointed out to me that I am being inconsistant in my layout concerning males and females as offspring. At some point in the last few days, I chose to have offspring's mates connect to the right, regardless of their parent's orientations. This typically looks good only from the "left" p.o.v., and looks weird from the "right" p.o.v. Consequently, (Dan thinks) it is causing alot of sibling crowding weirdness. I think he's on to something. Instead, I should have female spouses connect to the left, and male spouses connect to the right. That's what I should do today...

Posted by msallin at 01:55 PM | Comments (0)

April 10, 2006

Done Refactoring

So, after a couple of weeks of refactoring my initial Hedge layout code (drawing and positioning both nodes and connector lines and knobs), I have about 300 less lines of code. The quality is varying, but on the whole, things are done in a much more similar fashion then they were before. It's not the most elegant code, but damnit, I have to finish this thing in a few weeks!

Posted by msallin at 11:31 PM | Comments (0)

April 09, 2006

sorted. maybe.

ok, after spending 7 hours agonizing over how the Hedge should be laid out and having major crises of confidance over the Hedge visualization and flirting with new, totally different visualizations, and scribbling drawings on every piece of paper I can find...I think I have it figured out.

The Rules
- in couples, the men are always on the left, woman on the right
- siblings are always laid out in random order (because I can't have them be in order in some places and not in order in others, and because their ages will always be shown anyways)
- in my Hedge example with my Mom at the center, I need to move her to the right to keep with my "women on the right" rule. Wait, actually, it'd be way easier to just keep it as it is, and move the men to the right. Ok, new rule is Men on the Right, Women on the Left
- the secondary children and their family clusters are to be left-aligned if the orientation is to the left, and right-aligned if the orientation is to the right...so they'll just scoot a bit to the left and right if the mom is selected, then the dad.

Posted by msallin at 01:25 AM | Comments (0)

ohhhhhhh lorrrrrrrd

in a rut. trying to figure out my ruleset in preparation of programming the Hedge view to switch orientations, and it's a nightmere.

Rob showed me a screenshot from his Gemerative Theory of Tonal Music software, thinking maybe it could inspire me. It's very cool.
gttm_alpha_scrnsht_small.jpg

Posted by msallin at 12:20 AM | Comments (0)

April 07, 2006

Martin Wattenberg responds

Martin Wattenberg:

I like this idea a lot! It's big and original. Large-scale collaboration around visualizations is becoming an obsession of mine, so I will be completely fascinated to see what happens when you launch your site.

Everything in your site looks extremely well thought out. I'm curious to see what you end up doing with the profiles, though, especially for the dead. I've seen a couple of relatives of mine make sites in memorial of their ancestors. Front and center in these sites are stories, while data like affiliations, schools, and so on are peripheral. I wonder if people would be more drawn in with a more freeform interface for reminiscence. Hm, and maybe when they mentioned other people in the stories, they could have hyperlinks to those people's profiles.

anyway, those are my thoughts. This looks like a wonderful project, and please keep me posted on its progress.

best,

--Martin

Posted by msallin at 10:56 AM | Comments (0)

April 06, 2006

Finally Contacting People

today, I wrote to
- cousin Deborah Friedman
- posters on EdwardTufte.com about genealogy Philip Gatz and Matt Reed
- Sean Kelly at Microsoft Social Computing Research, who made Wallop
- Martin Wattenberg, who created the Map of the Market
Need to write to:
- Lili Cheng at Microsoft Social Computing Research
- Ben Schneiderman, guru of info viz
- Danah Boyd, who made the Friendster visualization program, Vizster
- ID people
- people who wrote those papers I've read
- people who wrote books I've read about traditional genealogy

Below is the email I wrote to Philip...

Dear Phillip,

My name is Matty Sallin and I'm writing because I saw your post on EdwardTufte.com about genealogical visualizations. I'm building a new kind of genealogical application called Family Hedge at my Masters program at NYU. It's a combination between a social networking application (like Friendster) and a networking experiment using data visualization. It uses a "Hedge" metaphor rather then a tree metaphor: traditional family trees are vertically oriented, showing a direct line from your ancestors up to you in present day. Such trees are limited in scope because they only consider the direct bloodline that results in you, and siblings and their spouses and children are excluded from this view. Conversely, a family hedge is radially oriented, expanding in all directions.

The user explores their family using a tree-like "Hedge" visualization that encourages one to surf though their family data in the same way someone surfs through the web. Family members can create and edit eachother's profiles in a "wiki"type manner so that everyone can have a presence, even those who are not with us anymore, those who are too young, and those who do not participate. The ultimate goal of this application is to spread as far as possible, revealing how we are all related to eachother, similar to the six-degrees experiments of a few years ago.

I would like to hear your opinion about it, so please visit my mini-site at
http://www.mathlete.com/portfolio/familyHedge.php

best,
Matty Sallin

Posted by msallin at 09:24 PM | Comments (0)

April 04, 2006

Refactoring my Code

I finally perfected the code to layout and draw the family hedge view, but it took about 700 lines of code to do so. I knew there was loads of repetetive code and it was so overwhelmingly long as to be unreadable, so I planned to refactor it, I just didn't know where to start.

I spoke to my Obi-Wan of coding, Dan, and he saw something I didn't: that the nuclear families that make up the Hedge view are all very similar, but they are just drawn from different starting places. Each nuclear family is a collection of tertiary nodes "sprouted" from a secondary node.
interface-hedge-med_drawn.gif

As you can see in this picture, all the family units are very similar, it's just some of them spawn mates and children, or siblings and parents. Relative to the primary node (or "ego"), both children and siblings sprount mates and children, while mates and parents sprout siblings and parents. The only difference with these is the left/right orientation. So, if a family sprouted to the right and bottom, like Susannah's (daughter of ego Sandy) family does, I gave her a property called unitOrientation at a value of [+1,+1]. The first element refers to the X axis, and the second refers to the Y axis. Since susannah's nuclear family expands to the right to her mate (positive along the X axis) and bottom to her children (positive along the Y axis in the inverted coordinate system of a compter). Similarly, Natalie or Judy, both siblings of the ego Sandy, have families that sprout to the left and bottom, so their unitOrientations are both [-1,+1].

Here's a summary:

[-1, +1]: Siblings's tertirary family, like Natalie/Judy

[+1, +1]: Children's tertiary family, like Susannah

[+1, -1]: Mate's tertirary family, like Bob

[-1, -1]: Male Parent's tertiary family, like Simon
[+1, -1]: Female Parent's tertiary family, like Anna
* this is only when parents have not yet been drawn. If they are already drawn, like Susannah and Tom, their arrangement will not change.

...So anyways, I refactored the code, and though I'm not yet done, the code has shrunk dramatically.

1. drawing lines is now seperate in the drawLines() method, only 70 lines of code!
2. calculatePositions(), which used to be 700 lines, is now three seperate methods: positionPrimary(), positionSecondaries(), and positionTertiaries(). I'm trying to not use them positionTertiaries() at all, and to just use my new methods:
addMatesChildren() -- for primary's siblings and primary's children
addSibsParents() -- for primary's mate and primary's parents

Both are each only 25 lines of code!

Posted by msallin at 05:30 PM | Comments (0)