Schemas for the Real World [RubyConf AU 2013]


Published on


Social app development challenges us how to code for users’ personal world. Users are giving push-back to ill-fitted assumptions about their identity — including name, gender, sexual orientation, important relationships, and other attributes they value.

How can we balance users’ realities with an app’s business requirements?

Facebook, Google+, and others are grappling with these questions. Resilient approaches arise from an app’s own foundation. Discover schemas’ influence over codebase, UX, and development itself. Learn how we can use schemas to both inspire users and generate data we need as developers.

[NOTE: links to Resources are on slide 112. Cheers!]
Conference: RubyConf AU
Date: February 21, 2013
Location: Jasper Hotel
Session length: 45 minutes

Published in: Technology
1 Comment
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Schemas for the Real World [RubyConf AU 2013]

  1. Schemas for the Real World Carina C. Zona @cczonaSunday, February 24, 13[As Keith noted,] in addition to being a developer, Im also a sex educator.
  2. —xkcd #940 @cczonaSunday, February 24, 13I think a lot about how the two overlap.They do. Quite a lot
  3. Imagine walking through the world knowing that everyone’s first assumptions about how you see yourself, who you love, and what feels right for you are completely wrong. Now imagine signing up for a cool website, and then being required to select an option from a drop-down menu that doesn’t include anything that represents you....[Y]ou’ll feel defeated.You’ll want to argue that whatever they think they’re learning from that drop-down menu, it’s not really true.You’ll want to tell them that they’re adding to your humiliation by making you do this.You’ll want to tell them that they’re missing a huge part of you… —Sarah Dopp @cczonaSunday, February 24, 13
  4. Female Male * * @cczonaSunday, February 24, 13
  5. Married Divorced In a Relationship Its Complicated Widowed Single @cczonaSunday, February 24, 13
  6. Straight Gay Bisexual Pansexual Asexual @cczonaSunday, February 24, 13
  7. @cczonaSunday, February 24, 13
  8. @cczonaSunday, February 24, 13Users are giving pushback to assumptions that leave them out. Social apps, in particular, arebeing pressed to adjust. Facebook, Google, and others have been dealing with thesequestions for years and are still working it out. So if you feel out of depth, you are not theonly one.
  9. Sociological Normalization Construction of an idealized norm @cczonaSunday, February 24, 13When developers talk about normalization, were talking about databases. But when dealingwith human attributes, we often wind up pursuing a different cause: sociologicalnormalization. [read]Conflating the two works fine if you only want users from among the select few who belongto the idealized norm. But most of us are going for broad userbase.
  10. Database Normalization Mirror real-world concepts and their interrelationships. @cczonaSunday, February 24, 13What we lose track of is one of the core objectives of database normalization. Were supposedto [read]. When the database is in tension with peoples own, real world -- then its notpeople who need to be flexible.
  11. @cczonaSunday, February 24, 13Why IS this hard? Because at first glance, this stuff looks so easy. Its just forms, right? Wevedone those a million times before.But we get tripped up by some flawed premises:
  12. Gender is one of those things everyone thinks they understand, but most people dont. Like "Inception". — Sam Killerman @cczonaSunday, February 24, 13First, a premise that deeply personal stuff about humans can be reduced to lists.
  13. Hey, this is just a system I can figure out easily! is also a problem among engineers first diving into the stock market. —xkcd #592 @cczonaSunday, February 24, 13Second, assumptions that canonical lists for these exist. Or are at least, SURELY, must becreatable.
  14. <option value="1">Mr</option> <option value="18">Dame</option> <option value="39">King of Kings and Lord <option value="2">Mrs</option> <option value="19">Chief</option> of Lords</option> <option value="3">Miss</option> <option value="20">Sister</option> <option value="40">Conquering Lion of the <option value="4">Ms</option> <option value="21">Reverend</option> Tribe of Judah</option> <option value="5">Dr</option> <option value="22">Major</option> <option value="41">Elect of God and Light <option value="6">Professor</option> <option value="23">Other</option> of this World</option> <option value="7">The Rt Revd Dr</option> <option value="24">Cllr</option> <option value="42">His Own Divine <option value="8">The Most Revd</option> <option value="25">Sir</option> Majesty</option> <option value="9">The Rt Revd</option> <option value="26">Rt Hon Lord</option> <option value="43">First Ancient King of <option value="10">The Revd Canon</ <option value="27">Rt Hon</option> Creation</option> option> <option value="28">The Lord </option> <option value="44">King Alpha</option> <option value="11">The Revd</option> <option value="29">Viscount</option> <option value="45">Queen Omega</option> <option value="12">The Rt Revd <option value="30">Viscountess</option> <option value="46">Beginning with Our End Professor</option> <option value="31">Baroness</option> and First with Our Last</option> <option value="13">The Ven</option> <option value="32">Captain</option> <option value="47">Protector of All Human <option value="14">The Most Revd Dr</ <option value="33">Master</option> Faith</option> option> <option value="34">Very Revd</option> <option value="48">Ruler of the <option value="16">Rabbi</option> <option value="35">Lady</option> Universe</option> <option value="17">Canon</option> <option value="38">MP</option> <option value="49">Dude</option> @cczonaSunday, February 24, 13And the third problem is our faith that the first two problems here can be easily solved. Justadd more list items!
  15. "Seeing more than 20 uncategorized options can be bewildering…" —Smashing Magazine @cczonaSunday, February 24, 13So thats not gonna work.Also, it risks looking like a dumbass...
  16. Social NetworksSunday, February 24, 13So heres the next flawed premise: that we intuitively understand the nature of socialnetworks.Stepping aside from how "social networking" has come to be implemented as technology --what IS a social network? What is it in purely human terms?
  17. Social network Individuals and the dyadic ties between them. Interactions within a social group of exactly two people. @cczonaSunday, February 24, 13[slide] Thats the real life that our apps are meant to replicate and build upon. One-on-one.As personal as our social selves get. In social, identity is a dependency.
  18. Developer & user are in dyad too How can I be better 1:1 partner with this person who… • is a current user • I hope will become a user @cczonaSunday, February 24, 13As developers, we build -- or break -- community with each line of code.What 1:1 relationships are we fostering between the individual and the app? Whatrelationships are we inhibiting between individuals?
  19. In real life "I know your personhood better than you" sounds presumptuous @cczonaSunday, February 24, 13
  20. In real life sounds presumptuous @cczonaSunday, February 24, 13
  21. In real life "Who you are is invalid" sounds arrogant @cczonaSunday, February 24, 13
  22. In real life sounds arrogant @cczonaSunday, February 24, 13
  23. In real life "Your existence isnt possible" sounds clueless @cczonaSunday, February 24, 13
  24. In real life sounds clueless @cczonaSunday, February 24, 13
  25. @cczonaSunday, February 24, 13Its not what we set out to do. Its not the community we seek to build. We want to createthings that feel cutting edge -- not that seem out of touch with modern reality.
  26. Be conservative in what you do, be liberal in what you accept from others. -Postels Law @cczonaSunday, February 24, 13[READ]
  27. How do we bring modern realities into the data, views, logic? @cczonaSunday, February 24, 13How DO we bring modern realities into the data, views, and logic...? We start at the schema.
  28. @cczonaSunday, February 24, 13As developers, were tugged in two directions: keep the codebase manageable, yet design formodern complexity.
  29. Get schemas into alignment. @cczonaSunday, February 24, 13
  30. Mental Schema •Set of pre-conceived ideas •Framework for representing some aspect of the world •System of organizing & perceiving new information. @cczonaSunday, February 24, 13There are two kinds of schema. [read]
  31. Database Schema •Structure described in the databases language •Blueprint for database construction •Describes how the real world is being modeled @cczonaSunday, February 24, 13Database schemas are basically the same thing. Its a mental schema translated intoblueprints for a database.
  32. create_table "users", :force => true do |t| t.string "username" t.string "email" t.string "password" end @cczonaSunday, February 24, 13When you use Rails generate scaffold or Rails generate model, it creates a migration. Maybeyou created something like this, for instance. Those migrations ultimately get translated intoa unified schema to be used by the environments database.
  33. @cczonaSunday, February 24, 13These are, simply, frontend manifestations of someones mental schema.
  34. Schemas are foundation for expressing things deeply intimate. @cczonaSunday, February 24, 13
  35. Schemas are foundation for expressing self-image. @cczonaSunday, February 24, 13
  36. Schemas are foundation for expressing identity. @cczonaSunday, February 24, 13
  37. Schemas are foundation for expressing important relationships. @cczonaSunday, February 24, 13
  38. Schemas are foundation for expressing values. @cczonaSunday, February 24, 13
  39. Schemas are foundation for expressing spirit, creativity, uniqueness. @cczonaSunday, February 24, 13
  40. Schemas define the user experience. @cczonaSunday, February 24, 13Schemas define user experience.
  41. & UX Our schemas are leaving people behind. @cczonaSunday, February 24, 13[read]We can fix that.
  42. "What benefit will the user notice?" @cczonaSunday, February 24, 13When developing a schema thats going to ask a person about their experiences, feelings,sense of self, there isnt a single "right way" I can tell to do this. What we can do is evaluatetradeoffs, and ask "What benefit will the user notice?" Thats not equivalent to "How will theuser benefit?", a question that grants too much latitude for assuming that what we want is ofcourse to their benefit because its gonna help us deliver a product thats Awesome.
  43. Evaluating from user perspective gives us focus. @cczonaSunday, February 24, 13[read]
  44. Coerced Guided Discretionary Restricted Corrective Freeform @cczonaSunday, February 24, 13Theres no point on this chart where everybody is seeing maximum benefit. So lets look atthe choices.
  45. Coerced Guided Discretionary Checkbox Corrective Freeform Radio Select @cczonaSunday, February 24, 13Checkboxs, radio buttons, and select menus imply that all possible values are represented.Hey user, just pick the right one, (or ones). Its real world being rejected because it didnthappen to look like our mental schema.
  46. Coerced Guided Discretionary Checkbox Corrective Textarea Radio Text Select @cczonaSunday, February 24, 13Checking a box is a one step action. Entering a text string is not. So a freeform solutionsuch as a textarea or text field isnt automatically exciting. Nevertheless, a freeform field candeliver striking benefit to users.
  47. 11 years 11 years @cczonaSunday, February 24, 13At MetaFilter, gender has been a text field for over a decade.
  48. …the early crowd at MeFi were often programmers and they hated the idea of "dirty" data collection… —Matt Haughey, founder @cczonaSunday, February 24, 13Initially, there were some who shuddered at the thought.
  49. All girl Dangly bits XY Chicklet Braid runner Innie not outie Fella Convex Fembot Sideburns Alto Ambisextrous It depends Member of the MYOB patriarchy @cczonaSunday, February 24, 13For about 5 seconds. Then they jumped on board. Because they could be creative and silly.
  50. I speak using the 50% quintessential male gender, when tomboy, 50% total required by girly-girl language Gender bo bender M, but known to be banana fanna fo flexible lender fee fi mo @cczonaSunday, February 24, 13AND because they could express this THING about themselves fully. With authentic voice.
  51. …it was one of the earliest indications Id landed in the right place. —MeFi user @cczonaSunday, February 24, 13That text field grew into a beloved institution. What you as a user put into that field sayssomething revealing who you are. That youre allowed to put in anything -- or put in nothing-- says something revealing about what MetaFilter is meant to be for.
  52. 11 years 8 years 11 years 4 years @cczonaSunday, February 24, 13That schemas trust in users was the foundation for the users to ASK to share themselveseven more.
  53. @cczonaSunday, February 24, 13Today MetaFilter users are trusted with many free-form fields, including ones mostdevelopers instinctually constrain or thoroughly validate.
  54. @cczonaSunday, February 24, 13Nonsensical values? Hell yeah, go for it. Field values that blatantly contradict each other? Noobjection to that either. The message is: hey, user, we get that this is YOUR OWN HOME.Make it as comfortable, personal, and messy as you want to. WE, as developers, can workwith that.
  55. Social ResearchSunday, February 24, 13When collecting data on people, youre in a different realm. Social sciences. If you want torun useful analytics about personal attributes and behavior, then data collection needs tomeet at least two minimum criteria:
  56. Exhaustive Every possible optionSunday, February 24, 13A fields values must include every possible option.
  57. Mutually Exclusive No overlap exists between themSunday, February 24, 13And the fields options must be mutually exclusive.How many social apps have both of those bare minimum criteria covered?
  58. @cczonaSunday, February 24, 13Weve seen this one enough. At least that set of values seems covered fully.
  59. @cczonaSunday, February 24, 13But its not.
  60. @cczonaSunday, February 24, 13Still not...Well never get there by adding more list items. But thats fine. Because instead we canchoose to look at human data from a different perspective...
  61. Data doesn’t have to be for analysis. @cczonaSunday, February 24, 13Its easy to get into the habit of structuring data for easy analysis. But step back. Wallow inthe users perspective:
  62. Data can be sheer expressiveness. @cczonaSunday, February 24, 13That data can be sheer expressiveness. Data that has character, individualism,distinctiveness.
  63. @cczonaSunday, February 24, 13
  64. - = select_tag person[profile][gender], options_for_select( ["","Female","Male"] ) + = profile.text_field :gender @cczonaSunday, February 24, 13More recently, years ago Diasporas Sarah Mei turned gender into a text field there too.
  65. @cczonaSunday, February 24, 13Just like on MetaFilter, users had fun with it.
  66. Some developers were not amused @cczonaSunday, February 24, 13Some developers didnt. One of the major complaints raised was the affect oninternationalization of gendered pronouns.
  67. Gendered pronouns are a rat hole. @cczonaSunday, February 24, 13And heres what Ive got to say to that: Gendered pronouns are a rat hole. It gets hella messy,hella fast, when you deal with internationalization.
  68. The role of gender in society is the most complicated thing I’ve ever spent a lot of time learning about, and I’ve spent a lot of time learning about quantum mechanics. —Randall Munroe, xkcd @cczonaSunday, February 24, 13Thats a plan that comes with a level of complexity that English hasnt wrapped its headaround. In a lot of non-English languages, grammatical gender and what you and I would call"gender" are independent of each other. So internationalization based on "Gender" will screwyou over. Think about how to avoid dealing with gendered pronouns at all. If its arequirement, then the way to cope is to ask.
  69. "Which pronouns do you prefer?" (masculine) he/him/himself/his/his (feminine) she/her/herself/hers/her (androgynous) they/them/themself/theirs/their (inanimate) it/it/itself/its/its <full name> <fn>/<fn>/<fn>/<fn>s/<fn>s @cczonaSunday, February 24, 13Randall Munroe, best known for xkcd, has examined the problem several times for Englishlanguage projects. Asking, straight up, "Which Pronouns Do You Prefer?" is truly the best hecould come up with. Oh, and as complicated as THIS matrix it, it grows even BIGGER in manyother languages.Avoid. Or ask. Dont let pronouns become the driving force for bad UX.
  70. @cczonaSunday, February 24, 13As developers, we have a vision of what a good codebase should be and not be.
  71. What we want What we get • Structured • Validations, exceptions • Predictable • Conditionals, partials • Relational • Premature optimization • Indexed • Cultural variability • Exhaustive? • Individual POV • Moving target • Easy analytics • Decisions based on false • Data-driven decisions premises @cczonaSunday, February 24, 13[READ!!]In the most sensible of ways, we often arrive at solutions that are factually truthy while farremoved from real life utility.
  72. "What is your religion, if any?" @cczonaSunday, February 24, 13ARIS is the largest ongoing survey of Americans religious identification. It asks this simple,OPEN-ENDED question: [slide]Which nets over 100 unique answers. Which, if youre making a form based on that, is tricky.Theres no form element that makes it easy for our users to pick themselves out of a list of somany possibilities.
  73. @cczonaSunday, February 24, 13ARIS found, though, that these could be compressed into 13 major categories. Moremanageable list, right? We could use that for a form. But, eh, a lot of those are edge cases.Wed rather want to focus on genuinely major groupings.
  74. What is your religion, if any? Christian 76% Other 4% None 15% Dont Know or Refused 5% @cczonaSunday, February 24, 13Which brings us down to this. At least a quarter of Americans are Christian. Done. Every otherreligion would just be clutter. Edge cases.And then theres this sort of crummy data with it. Wed probably assign nil value for morethan one of these categories, right?
  75. What is your religion? Christian 76% Other 4% n/a 20% @cczonaSunday, February 24, 13Fixed. Which focuses attention on a problem here: 1 in 5 are not useful answers from anadvertisers perspective or for out own analytics. The NILS -- gotta go.
  76. What is your religion? Christian 76% Other 24% @cczonaSunday, February 24, 13So what were left with is a good, clear, list. It covers ALL the big stuff. When you getreductive enough, for Americans: religion it a binary. Which, from a storage standpoint, isgreat. Booleans! Score.
  77. Religion: @cczonaSunday, February 24, 13But we dont do THIS. It covers the biggest categories. But oh how it leaves people out.
  78. People arent edge cases. @cczonaSunday, February 24, 13People arent edge cases.And theyre pushing back on apps that treat them that way.
  79. @cczonaSunday, February 24, 13So reductive has big problems. So does scaling upward:
  80. Balancing between approaches @cczonaSunday, February 24, 13As engineers, its instinctually uncomfortable to step away from this. To deliberately NOTstructure data for easy analysis. I feel ya. I really do. This freaks me too. But, again, thefoundational question is "What benefit will the user notice?"
  81. @cczonaSunday, February 24, 13And if necessary, we CAN strike a middleground. This is where guided response comes in.Autosuggest.
  82. Required Autosuggest Optional Checkbox Alteration Textarea Radio Text Select @cczonaSunday, February 24, 13
  83. Required Autosuggest Optional Checkbox Minimal Suggest Textarea Radio Text Select @cczonaSunday, February 24, 13When theres a subset of values that youre most interested in, do minimal suggest instead.Auto suggest using just the handful of values you care about. Structure from those who wantto give it, free form to incite expressiveness in those who want THAT.
  84. Unguided Text Of those who use MetaFilters gender field, 40% of responses are: f, m, female, male.Sunday, February 24, 13[read]So structured data IS there. This can be a balanced solution in many cases where yourewilling to tolerate some ambiguity. Of course there are tradeoffs.Data quantity is lower. Freed to opt out of proving personal info, many do.On the other hand, data quality should improve.
  85. Optional Select 60% of Facebook users select a relationship statusSunday, February 24, 13Its fine to mix and match here. Find the right approach for your users and your appsbusiness objectives. Facebook, for instance, makes relationship status completely optional,but coercive for those who do opt-in to setting a value. Most users do opt-in. 60% of themselect a relationship status.
  86. We want everyone to feel excited what weve built @cczonaSunday, February 24, 13The bottom line is that [read]
  87. We want users to feel passionate about their involvement @cczonaSunday, February 24, 13[read]
  88. Analytics, investments, & monetization are based on a premise that data is accurate @cczonaSunday, February 24, 13[read!!!] BUT the data has been collected by coercive approaches, the RISK is that--
  89. Garbage @cczonaSunday, February 24, 13this premise is garbage. Some people are lying, because lying has been made requirementfor getting past the barriers. So conclusions drawn from that bad data can misdirectdecision-making about the next stage of development.
  90. Required Guided Discretionary Checkbox Corrective Textarea Radio Text Select @cczonaSunday, February 24, 13The restrictive options, that stuff at bottom left, those dont actually have to be marked"required".
  91. t.string "gender", ! ! ! ! :null => false, ! ! ! ! :default => "female", ! ! ! ! :limit =>6 @cczonaSunday, February 24, 13But the way we setup schema often embeds assumptions that we should, and we will. So wedo. A field thats not allowed to be null is destined to be mandatory. A field that sets a veryshort length is asserting that any reasonable value is going to fit within it. This migrationimplies "Youre either male or youre female. Transgender is not a reasonable value." If youretransgender, youll wind up being coerced into a response thats inauthentic.
  92. t.string "gender" @cczonaSunday, February 24, 13BOOM. This is foundation for a whole different user experience. And the cool ninja movewas that we decided to do nothing.Make this stuff flexible upfront. Optimize storage later. Decide whats valid later.
  93. Required Guided Optional Checkbox Alteration Textarea Radio Text Select @cczonaSunday, February 24, 13So there you have it: a discretionary field. Whether to respond is left up to the user.
  94. t.string "relationship_status", ! ! ! ! :null => true @cczonaSunday, February 24, 13As developers, we may upon THIS expression as redundant, completely unnecessary. Duh,null is true by default. But making that explicit is a communication to the team and to yourfuture self. Its a statement of intent. Its documenting a product decision.
  95. @cczonaSunday, February 24, 13
  96. Facebook Single In a relationship Engaged Married Its complicated Open relationship @cczonaSunday, February 24, 13...What would a canonical set of relationship statuses look like...? Three years ago Facebookfigured this list was pretty good. Arguably pretty progressive too, right? Users disagreed.Strongly.
  97. Facebook Single Widowed In a relationship Separated Engaged Divorced Married Civil union Its complicated Domestic partnership Open relationship @cczonaSunday, February 24, 13Under pressure, Facebook nearly doubled the options in just two years time.
  98. Google+ Single Separated In a relationship Divorced Engaged Civil union Married Domestic partnership Its complicated I dont want to say Open relationship Widowed @cczonaSunday, February 24, 13While Google+ has largely adopted that list, it has not included Separated or Divorced.Notice that they also added something: choice. Opt out of labeling.
  99. @cczonaSunday, February 24, 13Allowing users to identify their relationships with labels of greater personal significance...Thats being drivenby people rejecting a user experience that isnt working for them.
  100. @cczonaSunday, February 24, 13How did some status seem universal, while others werent? Naming a thing creates scope. The assumedvalidity of a fields values get constrained as soon as the field is named.
  101. Marital Status? Single Separated In a relationship Divorced Engaged Civil union Married Domestic partnership Its complicated I dont want to say Open relationship Widowed @cczonaSunday, February 24, 13"Marital status" for instance, might lead to a list such as this. In which one is assumed to beeither unmarried, preparing to be married, currently married, or formerly married.
  102. Relationship Status? Single Separated In a relationship Divorced Engaged Civil union Married Domestic partnership Its complicated I dont want to say Open relationship Widowed @cczonaSunday, February 24, 13Whereas "relationship status" might lead to a list more like this one. In which one either hasa current relationship -- or is defined by the absence of any.But peoples lives arent actually arranged like these. We go through life experiencing many ofthese. And new status doesnt always leave old ones behind.
  103. Singleness Status? @cczonaSunday, February 24, 13If you change the name, you shift the paradigm and possibilities. Theres importantdifference in these what these collect set out to measure. Naming fields -- With greatspecificity, upfront. --Makes analyses more powerful, later.
  104. Frustrating. I like to be truthful, and "Its Complicated" is really deceiving. It is not complicated. I am separated from my husband, who I am still legally married to. —Facebook user @cczonaSunday, February 24, 13And some people really do have more than one relationship status at a time.
  105. @cczonaSunday, February 24, 13Whos already spotted the fatal flaw in this one?This is what happens when we try to throw more labels at the problem instead of examiningthe assumptions in the database schema. An open relationship is definitionally a 1:Many join— WITH the usual engineering understanding, that is: that actual number of relationshipsmay be 0, 1, OR many. This is Facebook failing at modeling relationships in a _relationaldatabase_. The schema forces the user to choose: LOOK evasive or BE inauthentic.
  106. Modeling the real world is complex and thats okay. @cczonaSunday, February 24, 13ONE
  107. Assuming we know who users are surrenders opportunity to learn who they are. @cczonaSunday, February 24, 13TWO [read] Early constraints in schema NET crappy, misleading data.[beat]So keep constraints out of user schema, at least at first. Gather enough initial response to dosome data mining. Watch that data for a while. Keep an eye out for emergent trends. WhatDISCOVERIES can you make?
  108. More freeform wont kill us. @cczonaSunday, February 24, 13THREE
  109. Quality Specificity Loyalty @cczonaSunday, February 24, 13Data quality improves when lies are merely optional, not required.Data thats rich and specific. So we can unearth patterns that are undetectable when data isgeneric. We can discover. We can adapt.When we show trust in people, they feel good about placing trust in us.Their response to all this? Engagement. Passion. Loyalty.
  110. @cczonaSunday, February 24, 13THOSE are foundations for great user experiences.
  111. Image Credits Postsecret Flickr Facebook FetLife OKCupid Kotangle Google+ Metafilter Diaspora xkcd @cczonaSunday, February 24, 13
  112. Resources • “Disalienation: Why Gender is a Text Field on Diaspora” • "Recommendations for Inclusive Data Collection of Trans People" • “Gender & Drop Down Menus” • "Gay Marriage: The Database Engineering Perspective" • “Sex & Gender” • "American Religious Identification Survey, Summary Report 2009" • “Bucket Gender” • "Falsehoods Programmers Believe About Names" • "Linguistic Potluck: Crowdsourcing Internationalization in Rails" • "Your Last Name Contains Invalid Characters" • "Does Facebook Hurt Relationships?" • Spanish Names • "Facebook Adds LGBT-Friendly Relationship Status Options" • Chinese Names • "Facebook Targeting by Relationship Status & Workplace" • Database normalization • "Your Facebook Relationship Status: Its Complicated" • Sociological normalization • "Redesigning the Country Selector" @cczonaSunday, February 24, 13
  113. Many Thanks DevChix Yoz Grahame Michele Titolo Heather Rivers Chiu-Ki Chan Sarah Mei SFSI @cczonaSunday, February 24, 13
  114. Get in Touch Carina C. Zona @cczona @cczonaSunday, February 24, 13