Let Your Database Update You with EctoWatch
Elixir allows application developers to create very parallel and very complex systems. Tools like Phoenix PubSub and LiveView thrive on this property of the ...
A while ago my colleague Michael suggested to me that I draw out some examples of how my record linkage algorithm did it’s thing. In order to do that, I’ve picked some users from both GitHub and StackOverflow which are big names in the Neo4j community to give you the idea.
For each user in my list of famous Neo4jers I find the user on the other site which my algorithm matches best based on the matching score meeting a threshold.
In that algorithm I match users via attribute pairings (e.g. name
on GitHub and display_name
on StackOverflow).
Below I show how these property pairs contribute to each user’s score.
Below are the users which I selected. I selected a set from both GitHub and StackOverflow so that I could test matching in both directions.
FrobberOfBits | Luanne | Dave Bennett | cybersam |
albertoperdomo | jjaderberg | Nicholas | David Makogon |
Here is a chart which shows all of the users. The total bar size represents their total score while each section represents a pair of properties which were chosen for matching. You’ll notice that seven of the 25 users aren’t matched.
Here I dig down into the nitty details of the values of interest for each user pair and the scores given for matches on those values. For each property pair for each user pair I show:
The weights for each property pair are constant from user to user and are based on an my analysis comparing my human identified results with various weights and thresholds to maximize precision and recall.
The total score for for each user (not shown here) is the sum of the total scores of the property pairs. The user pairs which I am displaying below are considered matches because they have the largest score among other pairs and because they match a minimum threshold.
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | cybersam | cybersam | 1.5 | 1.0 | 1.5 |
name | display_name | Sam | cybersam | 1.5 | 0.0 | 0.0 |
location | location | Silicon Valley | Silicon Valley | 3.5 | 1.0 | 3.5 |
usernames | usernames | [“cybersam”] | [“cybersam”] | 3.5 | 1.0 | 3.5 |
uncommon_domains | uncommon_domains | [] | [] | 4.5 | 0.0 | 0.0 |
blog | website_url | 4.5 | 0.0 | 0.0 | ||
image_comparison | image_comparison | 77601 | 51509 | 4.5 | 0.73 | 3.3 |
login | github_username | cybersam | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | davestern | Dave Bennett | 1.5 | 0.83 | 1.2 |
name | display_name | Dave Stern | Dave Bennett | 1.5 | 0.87 | 1.3 |
location | location | Calgary | 3.5 | 0.0 | 0.0 | |
usernames | usernames | [“davestern”] | [“dave bennett”] | 3.5 | 0.0 | 0.0 |
uncommon_domains | uncommon_domains | [] | [] | 4.5 | 0.0 | 0.0 |
blog | website_url | 4.5 | 0.0 | 0.0 | ||
image_comparison | image_comparison | 76872 | 51521 | 4.5 | 0.0 | 0.0 |
login | github_username | davestern | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | FrobberOfBits | 1.5 | 0.0 | 0.0 | |
name | display_name | FrobberOfBits | 1.5 | 0.0 | 0.0 | |
location | location | East Coast, USA | 3.5 | 0.0 | 0.0 | |
usernames | usernames | [“frobberofbits”] | 3.5 | 0.0 | 0.0 | |
uncommon_domains | uncommon_domains | [] | 4.5 | 0.0 | 0.0 | |
blog | website_url | 4.5 | 0.0 | 0.0 | ||
image_comparison | image_comparison | 51799 | 4.5 | 0.0 | 0.0 | |
login | github_username | 4.5 | 0.0 | 0.0 | ||
twitter_username | twitter_username | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | NicholasAStuart | Nicholas | 1.5 | 0.93 | 1.4 |
name | display_name | Nicholas A. Stuart | Nicholas | 1.5 | 0.9 | 1.3 |
location | location | San Francisco, CA | San Francisco, CA | 3.5 | 1.0 | 3.5 |
usernames | usernames | [“nicholasastuart”] | [“nicholas”] | 3.5 | 0.0 | 0.0 |
uncommon_domains | uncommon_domains | [] | [] | 4.5 | 0.0 | 0.0 |
blog | website_url | https://github.com/NicholasAStuart | 4.5 | 0.0 | 0.0 | |
image_comparison | image_comparison | 64519 | 52854 | 4.5 | 0.0 | 0.0 |
login | github_username | NicholasAStuart | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | lucciano | Luanne | 1.5 | 0.78 | 1.2 |
name | display_name | Luciano Andrade | Luanne | 1.5 | 0.76 | 1.1 |
location | location | Mumbai, India | 3.5 | 0.0 | 0.0 | |
usernames | usernames | [“lucciano”] | [“luanne”, “luannem”] | 3.5 | 0.0 | 0.0 |
uncommon_domains | uncommon_domains | [] | [“thought-bytes.blogspot.in”] | 4.5 | 0.0 | 0.0 |
blog | website_url | thought-bytes.blogspot.in | 4.5 | 0.0 | 0.0 | |
image_comparison | image_comparison | 60299 | 53143 | 4.5 | 0.0 | 0.0 |
login | github_username | lucciano | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | luannem | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | albertoperdomo | albertoperdomo | 1.5 | 1.0 | 1.5 |
name | display_name | Alberto Perdomo | albertoperdomo | 1.5 | 0.99 | 1.5 |
location | location | Las Palmas de Gran Canaria, Spain | Spain | 3.5 | 0.0 | 0.0 |
usernames | usernames | [“albertoperdomo”] | [“albertoperdomo”] | 3.5 | 1.0 | 3.5 |
uncommon_domains | uncommon_domains | [“albertoperdomo.net”] | [“graphenedb.com”] | 4.5 | 0.0 | 0.0 |
blog | website_url | http://albertoperdomo.net | graphenedb.com | 4.5 | 0.0 | 0.0 |
image_comparison | image_comparison | 62234 | 54027 | 4.5 | 0.0 | 0.0 |
login | github_username | albertoperdomo | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | johanlundberg | jjaderberg | 1.5 | 0.77 | 1.1 |
name | display_name | Johan Lundberg | jjaderberg | 1.5 | 0.75 | 1.1 |
location | location | Stockholm | 3.5 | 0.0 | 0.0 | |
usernames | usernames | [“johanlundberg”] | [“jjaderberg”] | 3.5 | 0.0 | 0.0 |
uncommon_domains | uncommon_domains | [“snakedesert.se”] | [“d.phil”] | 4.5 | 0.0 | 0.0 |
blog | website_url | http://www.snakedesert.se | 4.5 | 0.0 | 0.0 | |
image_comparison | image_comparison | 65150 | 55433 | 4.5 | 0.0 | 0.0 |
login | github_username | johanlundberg | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | maxdemarzi | Max De Marzi | 1.5 | 0.96 | 1.4 |
name | display_name | Max De Marzi | Max De Marzi | 1.5 | 1.0 | 1.5 |
location | location | 60601 | Chicago, IL | 3.5 | 0.0 | 0.0 |
usernames | usernames | [“maxdemarzi”] | [“max de marzi”] | 3.5 | 0.0 | 0.0 |
uncommon_domains | uncommon_domains | [“maxdemarzi.com”] | [“maxdemarzi.com”] | 4.5 | 1.0 | 4.5 |
blog | website_url | maxdemarzi.com | maxdemarzi.com | 4.5 | 1.0 | 4.5 |
image_comparison | image_comparison | 60207 | 59296 | 4.5 | 0.0 | 0.0 |
login | github_username | maxdemarzi | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | tbaum | Thomas | 1.5 | 0.0 | 0.0 |
name | display_name | Thomas Baum | Thomas | 1.5 | 0.93 | 1.4 |
location | location | Germany / Dresden | Germany | 3.5 | 0.88 | 3.1 |
usernames | usernames | [“tbaum”] | [“thomas”] | 3.5 | 0.0 | 0.0 |
uncommon_domains | uncommon_domains | [] | [“google.de”] | 4.5 | 0.0 | 0.0 |
blog | website_url | google.de | 4.5 | 0.0 | 0.0 | |
image_comparison | image_comparison | 60777 | 52946 | 4.5 | 0.0 | 0.0 |
login | github_username | tbaum | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | sarmbruster | Stefan Armbruster | 1.5 | 0.78 | 1.2 |
name | display_name | Stefan Armbruster | Stefan Armbruster | 1.5 | 1.0 | 1.5 |
location | location | Munich, Germany | Munich, Germany | 3.5 | 1.0 | 3.5 |
usernames | usernames | [“sarmbruster”] | [“stefan armbruster”] | 3.5 | 0.0 | 0.0 |
uncommon_domains | uncommon_domains | [“blog.armbruster-it.de”] | [“blog.armbruster-it.de”] | 4.5 | 1.0 | 4.5 |
blog | website_url | http://blog.armbruster-it.de | blog.armbruster-it.de | 4.5 | 0.77 | 3.5 |
image_comparison | image_comparison | 60881 | 51506 | 4.5 | 0.0 | 0.0 |
login | github_username | sarmbruster | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | mneedham | Mark Needham | 1.5 | 0.82 | 1.2 |
name | display_name | Mark Needham | Mark Needham | 1.5 | 1.0 | 1.5 |
location | location | London, United Kingdom | United Kingdom | 3.5 | 0.74 | 2.6 |
usernames | usernames | [“mneedham”] | [“mark needham”] | 3.5 | 0.0 | 0.0 |
uncommon_domains | uncommon_domains | [“markhneedham.com”] | [“markhneedham.com”] | 4.5 | 1.0 | 4.5 |
blog | website_url | http://www.markhneedham.com/blog | markhneedham.com/blog | 4.5 | 0.76 | 3.4 |
image_comparison | image_comparison | 60963 | 53357 | 4.5 | 0.0 | 0.0 |
login | github_username | mneedham | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | pombredanne | 1.5 | 0.0 | 0.0 | |
name | display_name | Philippe Ombredanne | 1.5 | 0.0 | 0.0 | |
location | location | 3.5 | 0.0 | 0.0 | ||
usernames | usernames | [“pombredanne”] | 3.5 | 0.0 | 0.0 | |
uncommon_domains | uncommon_domains | [] | 4.5 | 0.0 | 0.0 | |
blog | website_url | 4.5 | 0.0 | 0.0 | ||
image_comparison | image_comparison | 61003 | 4.5 | 0.0 | 0.0 | |
login | github_username | pombredanne | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | jexp | Michael Hunger | 1.5 | 0.0 | 0.0 |
name | display_name | Michael Hunger | Michael Hunger | 1.5 | 1.0 | 1.5 |
location | location | Dresden, Germany | Dresden, Germany | 3.5 | 1.0 | 3.5 |
usernames | usernames | [“jexp”] | [“michael hunger”, “mesirii”, “jexp”] | 3.5 | 1.0 | 3.5 |
uncommon_domains | uncommon_domains | [“jexp.de”] | [“spring.neo4j.org”, “die-buchbar.de”, “mg.mud.de”] | 4.5 | 0.0 | 0.0 |
blog | website_url | http://jexp.de | neo4j.com | 4.5 | 0.0 | 0.0 |
image_comparison | image_comparison | 61063 | 51548 | 4.5 | 0.0 | 0.0 |
login | github_username | jexp | jexp | 4.5 | 1.0 | 4.5 |
twitter_username | twitter_username | mesirii | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | akollegger | akollegger | 1.5 | 1.0 | 1.5 |
name | display_name | Andreas Kollegger | akollegger | 1.5 | 0.75 | 1.1 |
location | location | San Francisco, CA | California | 3.5 | 0.0 | 0.0 |
usernames | usernames | [“akollegger”] | [“akollegger”] | 3.5 | 1.0 | 3.5 |
uncommon_domains | uncommon_domains | [] | [] | 4.5 | 0.0 | 0.0 |
blog | website_url | http://neo4j.com | neo4j.com | 4.5 | 0.85 | 3.8 |
image_comparison | image_comparison | 61069 | 58359 | 4.5 | 0.0 | 0.0 |
login | github_username | akollegger | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | simpsonjulian | 1.5 | 0.0 | 0.0 | |
name | display_name | Julian Simpson | 1.5 | 0.0 | 0.0 | |
location | location | Auckland, New Zealand | 3.5 | 0.0 | 0.0 | |
usernames | usernames | [“simpsonjulian”] | 3.5 | 0.0 | 0.0 | |
uncommon_domains | uncommon_domains | [“build-doctor.com”] | 4.5 | 0.0 | 0.0 | |
blog | website_url | http://www.build-doctor.com | 4.5 | 0.0 | 0.0 | |
image_comparison | image_comparison | 61073 | 4.5 | 0.0 | 0.0 | |
login | github_username | simpsonjulian | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | jakewins | jakewins | 1.5 | 1.0 | 1.5 |
name | display_name | Jacob Hansson | jakewins | 1.5 | 0.0 | 0.0 |
location | location | Sweden | Stockholm, Sweden | 3.5 | 0.0 | 0.0 |
usernames | usernames | [“jakewins”] | [“jakewins”] | 3.5 | 1.0 | 3.5 |
uncommon_domains | uncommon_domains | [“voltvoodoo.com”] | [“jakewins.com”] | 4.5 | 0.0 | 0.0 |
blog | website_url | http://voltvoodoo.com | jakewins.com | 4.5 | 0.0 | 0.0 |
image_comparison | image_comparison | 61077 | 57589 | 4.5 | 0.0 | 0.0 |
login | github_username | jakewins | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | peterneubauer | Peter Neubauer | 1.5 | 0.98 | 1.5 |
name | display_name | Peter Neubauer | Peter Neubauer | 1.5 | 1.0 | 1.5 |
location | location | Malmö, Sweden | 3.5 | 0.0 | 0.0 | |
usernames | usernames | [“peterneubauer”] | [“peter neubauer”, “peterneubauer”] | 3.5 | 1.0 | 3.5 |
uncommon_domains | uncommon_domains | [] | [“mapillary.com”] | 4.5 | 0.0 | 0.0 |
blog | website_url | mapillary.com | 4.5 | 0.0 | 0.0 | |
image_comparison | image_comparison | 61089 | 55637 | 4.5 | 0.0 | 0.0 |
login | github_username | peterneubauer | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | peterneubauer | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | thobe | 1.5 | 0.0 | 0.0 | |
name | display_name | Tobias Lindaaker | 1.5 | 0.0 | 0.0 | |
location | location | 3.5 | 0.0 | 0.0 | ||
usernames | usernames | [“thobe”] | 3.5 | 0.0 | 0.0 | |
uncommon_domains | uncommon_domains | [“journal.thobe.org”] | 4.5 | 0.0 | 0.0 | |
blog | website_url | http://journal.thobe.org | 4.5 | 0.0 | 0.0 | |
image_comparison | image_comparison | 61097 | 4.5 | 0.0 | 0.0 | |
login | github_username | thobe | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | nawroth | 1.5 | 0.0 | 0.0 | |
name | display_name | Anders Nawroth | 1.5 | 0.0 | 0.0 | |
location | location | Skåne, Sweden | 3.5 | 0.0 | 0.0 | |
usernames | usernames | [“nawroth”] | 3.5 | 0.0 | 0.0 | |
uncommon_domains | uncommon_domains | [“anders.nawroth.se”] | 4.5 | 0.0 | 0.0 | |
blog | website_url | www.anders.nawroth.se | 4.5 | 0.0 | 0.0 | |
image_comparison | image_comparison | 61099 | 4.5 | 0.0 | 0.0 | |
login | github_username | nawroth | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | wfreeman | Wes Freeman | 1.5 | 0.88 | 1.3 |
name | display_name | Wes Freeman | Wes Freeman | 1.5 | 1.0 | 1.5 |
location | location | Fairfax, VA | Fairfax, VA | 3.5 | 1.0 | 3.5 |
usernames | usernames | [“wfreeman”] | [“wes freeman”] | 3.5 | 0.0 | 0.0 |
uncommon_domains | uncommon_domains | [“wes.skeweredrook.com”] | [“wes.skeweredrook.com”] | 4.5 | 1.0 | 4.5 |
blog | website_url | http://wes.skeweredrook.com | wes.skeweredrook.com | 4.5 | 0.91 | 4.1 |
image_comparison | image_comparison | 61111 | 53606 | 4.5 | 0.0 | 0.0 |
login | github_username | wfreeman | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | ikwattro | 1.5 | 0.0 | 0.0 | |
name | display_name | Christophe Willemsen | 1.5 | 0.0 | 0.0 | |
location | location | Belgium | 3.5 | 0.0 | 0.0 | |
usernames | usernames | [“ikwattro”] | 3.5 | 0.0 | 0.0 | |
uncommon_domains | uncommon_domains | [] | 4.5 | 0.0 | 0.0 | |
blog | website_url | https://twitter.com/#!/ikwattro | 4.5 | 0.0 | 0.0 | |
image_comparison | image_comparison | 61128 | 4.5 | 0.0 | 0.0 | |
login | github_username | ikwattro | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | subvertallchris | subvertallchris | 1.5 | 1.0 | 1.5 |
name | display_name | Chris Grigg | subvertallchris | 1.5 | 0.0 | 0.0 |
location | location | Brooklyn, NY | Brooklyn, NY | 3.5 | 1.0 | 3.5 |
usernames | usernames | [“subvertallchris”, “subvertallmedia”] | [“subvertallchris”, “subvertallmedia”, “neo4jrb”] | 3.5 | 2.0 | 7.0 |
uncommon_domains | uncommon_domains | [] | [“blog.subvertallmedia.com”] | 4.5 | 0.0 | 0.0 |
blog | website_url | https://twitter.com/subvertallmedia | blog.subvertallmedia.com | 4.5 | 0.0 | 0.0 |
image_comparison | image_comparison | 61285 | 51540 | 4.5 | 0.0 | 0.0 |
login | github_username | subvertallchris | neo4jrb | 4.5 | 0.0 | 0.0 |
twitter_username | twitter_username | subvertallmedia | subvertallmedia | 4.5 | 1.0 | 4.5 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | cheerfulstoic | Brian Underwood | 1.5 | 0.0 | 0.0 |
name | display_name | Brian Underwood | Brian Underwood | 1.5 | 1.0 | 1.5 |
location | location | Travelling | Travelling | 3.5 | 1.0 | 3.5 |
usernames | usernames | [“cheerfulstoic”] | [“brian underwood”, “cheerfulstoic”, “neo4jrb”] | 3.5 | 1.0 | 3.5 |
uncommon_domains | uncommon_domains | [“brian-underwood.codes”] | [“grandadventures-householdchores.com”, “brian-underwood.codes”] | 4.5 | 1.0 | 4.5 |
blog | website_url | http://www.brian-underwood.codes/ | brian-underwood.codes | 4.5 | 0.77 | 3.5 |
image_comparison | image_comparison | 61327 | 51500 | 4.5 | 0.0 | 0.0 |
login | github_username | cheerfulstoic | neo4jrb | 4.5 | 0.0 | 0.0 |
twitter_username | twitter_username | cheerfulstoic | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | moxious | 1.5 | 0.0 | 0.0 | |
name | display_name | 1.5 | 0.0 | 0.0 | ||
location | location | 3.5 | 0.0 | 0.0 | ||
usernames | usernames | [“moxious”] | 3.5 | 0.0 | 0.0 | |
uncommon_domains | uncommon_domains | [] | 4.5 | 0.0 | 0.0 | |
blog | website_url | 4.5 | 0.0 | 0.0 | ||
image_comparison | image_comparison | 61948 | 4.5 | 0.0 | 0.0 | |
login | github_username | moxious | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | 4.5 | 0.0 | 0.0 |
GH Prop | SO Prop | GH Value | SO Value | Weight | Base Score | Weighted Score |
---|---|---|---|---|---|---|
login | display_name | andreasronge | Andreas Ronge | 1.5 | 0.99 | 1.5 |
name | display_name | Andreas Ronge | Andreas Ronge | 1.5 | 1.0 | 1.5 |
location | location | Malmö, Sweden | 3.5 | 0.0 | 0.0 | |
usernames | usernames | [“andreasronge”, “ronge”] | [“andreas ronge”] | 3.5 | 0.0 | 0.0 |
uncommon_domains | uncommon_domains | [] | [] | 4.5 | 0.0 | 0.0 |
blog | website_url | http://twitter.com/ronge | 4.5 | 0.0 | 0.0 | |
image_comparison | image_comparison | 62280 | 55831 | 4.5 | 0.73 | 3.3 |
login | github_username | andreasronge | 4.5 | 0.0 | 0.0 | |
twitter_username | twitter_username | ronge | 4.5 | 0.0 | 0.0 |
Elixir allows application developers to create very parallel and very complex systems. Tools like Phoenix PubSub and LiveView thrive on this property of the ...
(This post was originally created for the Erlang Solutions blog. The original can be found here)
with
It, Can’t Live with
out It
(This post was originally created for the Erlang Solutions blog. The original can be found here)
I’ve been using Elixir for a while and I’ve implemented a number of GenServers. But while I think I mostly understand the purpose of them, I’ve not gotten t...
I love Lodash, but I’m not here to tell you to use Lodash. It’s up to you to decide if a tool is useful for you or your project. It will come down to the n...
I’ve mix phx.new ed many applications and when doing so I often start with wondering how to organize my code. I love how Phoenix pushes you to think about th...
What can a 50 year old cryptic error message teach us about the software we write today?
For just over a year I’ve been obsessed on-and-off with a project ever since I stayed in the town of Skibbereen, Ireland. Taking data from the 1901 and 1911...
Recently the continuous builds for the neo4j Ruby gem failed for JRuby because the memory limit had been reached. I wanted to see if I could use my favorite...
A while ago my colleague Michael suggested to me that I draw out some examples of how my record linkage algorithm did it’s thing. In order to do that, I’ve ...
Last night I ran a very successful workshop at the Friends of Neo4j Stockholm meetup group. The format was based on a workshop that I attended in San Franci...
In my last two posts I covered the process of importing data from StackOverflow and GitHub for the purpose of creating a combined MDM database. Now we get t...
In my last post I said I would “bring in another data source, show how I linked the data together, and demonstrate the sort of bigger picture that one can ge...
Joining multiple disparate data-sources, commonly dubbed Master Data Management (MDM), is usually not a fun exercise. I would like to show you how to use a g...
I have a bit of a problem.
When using neo4j for the first time, most people want to import data from another database to start playing around. There are a lot of options including LOA...
Having recently become interested in making it easy to pull data from Twitter with neo4apis-twitter I also decided that I wanted to be able to visualize an...
I’ve been reading a few interesting analyses of Twitter data recently such as this #gamergate analysis by Andy Baio. I thought it would be nice to have a ...
I am he as you are he as you are me and we are all together – The Beatles
When I told the people of Northern Ireland that I was an atheist, a woman in the audience stood up and said, ‘Yes, but is it the God of the Catholics or t...
“Wilkins! Yes! I’ve considered decorating these walls with some graffiti of my own, and writing it in the Universal Character.. but it is too depressing...