Building Bridges, Connecting CommunitiesBrandon Morrison, Patrick Hayes, Josef Dabernig,Pol Dell’Aiera, Tom Nightingale, R...
05/23/13 Building Bridges, Connecting Communities2 !"#$%#&(!)#%*+,(-.&&*/0#&(-.11"&#0#*+(2#3(%*(!.*)(456789:97;,(:;;8<=7:>...
05/23/13 Building Bridges, Connecting Communities3! "#!$#%$ &()*(+,-&.(*,/01-23++/45(+,-2366+(5(/07895-*3-:3-+//*-;7895-49...
05/23/13 Building Bridges, Connecting Communities4! "#$!#%! &()*(+,-&.(*,/01-23++/45(+,-2366+(5(/0------73-68+9-63*)/0-:;<...
05/23/13 Building Bridges, Connecting Communities5! "#$%#&% ()*+),-./)+-012.34,,056),-.3477(,)6)0189:.4;.89:.84+(*01!"#$%"...
05/23/13 Building Bridges, Connecting Communities6! "#$%#&% ()*+),-./)+-012.34,,056),-.3477(,)6)01869/60/.79:1.;<.=0**4>.?...
05/23/13 Building Bridges, Connecting Communities7! "#$%#&% ()*+),-./)+-012.34,,056),-.3477(,)6)018049)0*+:)0;1<=.804*45>6...
05/23/13 Building Bridges, Connecting Communities8Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities9Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities10Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities11Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities12Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities13Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities14Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities15Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities16Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities17Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities18Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities19Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities20Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities21Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities22Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities23Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities24Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities25Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities26Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities27Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities28Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities29Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities30Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities31Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities32Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities33Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities34Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities35Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities36Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities37Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities38Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities39Thursday, May 30, 2013
Thursday, May 30, 2013
Thursday, May 30, 2013
Thursday, May 30, 2013
The ProblemYou need an interactive map with millions ofdatapoints and these datapoints are continuouslybeing updated. The ...
Now you have two problemsThe first problem is cartographic. How do yougraphically show a user a map with millions ofdatapo...
Thursday, May 30, 2013
The second problem is technical. How do you scale tomillions of datapoint while keeping the map fullysearchable and filter...
(Or Elastic Search)Thursday, May 30, 2013
GeohashImage Credit: http://www.bigdatamodeling.orgExample Geohash: U4PRUYDQQVJThursday, May 30, 2013
Solr index field Countss_geohash_1: U 876,984ss_geohash_2: U4 59,365ss_geohash_3: U4P 2,567ss_geohash_4: U4PR 753ss_geohas...
Request a different geohash field (1 through 9)depending on your zoom level.Use solr faceting or groupingFaceting on ss_ge...
Translate the geohash facets back to latitude andlongitude and map them.Map the facetsFacet Latitude LongitudeU4PRU 57.6 1...
(Live demo later)Thursday, May 30, 2013
Thursday, May 30, 2013
Thursday, May 30, 2013
Thursday, May 30, 2013
Thursday, May 30, 2013
Thursday, May 30, 2013
Thursday, May 30, 2013
Thursday, May 30, 2013
05/23/13 Building Bridges, Connecting Communities60Who Else?Lev Tsypin - levelosLeaflet module maintainerReinier Battenber...
05/23/13 Building Bridges, Connecting Communities61What Else?- Starter kit modules- Mo’better documentation(end user and d...
05/23/13 Building Bridges, Connecting Communities62It takes a village, morethan just seven dudes...We Need You!- Need peop...
05/23/13 Building Bridges, Connecting Communities63YES!!! How Can I Help?http://groups.drupal.org/location-and-mapping- Re...
Building Bridges, Connecting CommunitiesEvaluate this session at:portland2013.drupal.org/schedule.Thank you!What did you t...
Upcoming SlideShare
Loading in...5
×

SHOULD HAVE MADE A LEFT TURN AT ALBUQUERQUE: BUILDING MAPS IN DRUPAL

458

Published on

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
458
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

SHOULD HAVE MADE A LEFT TURN AT ALBUQUERQUE: BUILDING MAPS IN DRUPAL

  1. 1. Building Bridges, Connecting CommunitiesBrandon Morrison, Patrick Hayes, Josef Dabernig,Pol Dell’Aiera, Tom Nightingale, Rik De Boer,Nate ParsonsSHOULD HAVE MADE A LEFTTURN AT ALBUQUERQUE:BUILDING MAPS IN DRUPALThursday, May 30, 2013
  2. 2. 05/23/13 Building Bridges, Connecting Communities2 !"#$%#&(!)#%*+,(-.&&*/0#&(-.11"&#0#*+(2#3(%*(!.*)(456789:97;,(:;;8<=7:>?@A$#&3-.$$*/0#B*((((((((((((((((((((C$#&38/.18D"!"#$#%&#()"*%+,(-!"#$%&"()*+(&*(%*,--$./(-0%1$2$*.2$*31$4%&4/5+(674/8.$6(%.EDB#D0#&(FDG$D&%(9+4/$-*7"#.-:$--".#$5"-"*+(6;$/5%*Thursday, May 30, 2013
  3. 3. 05/23/13 Building Bridges, Connecting Communities3! "#!$#%$ &()*(+,-&.(*,/01-23++/45(+,-2366+(5(/07895-*3-:3-+//*-;7895-49+-:3-89</-;=5:)/0-:3-49+->(4?@!! 5.9*(5(3+9)1-+9<(,95(3+9)! 9.5:! *959-<(09)(095(3+-A-9+9):0(0B/95./0-:3-69:-C9+5@! 953DE336-53-F(5-9))-69.?/.0! 953D4/+5/.-3+-<(0(53.-)3495(3+! )9:/.0-G/H96>)/@-I>/+J(05/K! 69.?/.-43)3.-*(FF/./+5(95(3+! 69.?/.-4)05/.(+,1-8/95-69>0! L9))33+01-59,01-533)5(>0! )(+/0-9+*-L3.*/.0-G>3):,3+0K! M! 69(+59(+/.N0->)9+0-F3.-OP-;Q8/-63L()/-F9453.@!! 63L()(5:! 09L()(5:! >/.F3.69+4/Thursday, May 30, 2013
  4. 4. 05/23/13 Building Bridges, Connecting Communities4! "#$!#%! &()*(+,-&.(*,/01-23++/45(+,-2366+(5(/0------73-68+9-63*)/0-:;<=:758.5->/./?@236A8.(03+-3B-68AA(+,-63*)/0C>55A?##*.A8)D3.,#+3*/#%EFGHGI-----------J84>-63*)/-B3.60-3+/-63K(+,-A8.5-3B-93.-68AA(+,-03)5(3+D-23+5-3+->8K(+,-53-/6A)39-G-53-L-63*)/0DM3-48+N5-436O(+/-8+9-!"#$-P(5>-8+9-!"%!DQ3*)/0-8./-85-K8.(30-)/K/)0-3B-436A85(O()(591-685.(591-B/85./-0/50-8+*-)/+,5>0-3B-(00/-R//0DSI-TThursday, May 30, 2013
  5. 5. 05/23/13 Building Bridges, Connecting Communities5! "#$%#&% ()*+),-./)+-012.34,,056),-.3477(,)6)0189:.4;.89:.84+(*01!"#$%"&!"#&#()*%#+,-%"&!"*.#()*%#+/.#()*%#+01"+.)2"3/,4%"5/!6)1,7,89:;,!"#,4%"5/<=)1/,7,89!"#$%"&,=)1.")$&"*,4%"5/.")$&"*,7,89>,.")$&"*==)1/01"+.)2"3/,7,89!##?&",@%&"/0*A"3,@%&"/0B*1B*,CBDE,"?E.")$&"*,=)3F"3G&B/*"3!6)1,.#()*%#+.)*H.#+?,/*#3)?"4%"5/I,J)&&##+/>$%&*"3%+?>,("+*3%+?EEEK"+"3%+?EEE4%"5/,!"#890LThursday, May 30, 2013
  6. 6. 05/23/13 Building Bridges, Connecting Communities6! "#$%#&% ()*+),-./)+-012.34,,056),-.3477(,)6)01869/60/.79:1.;<.=0**4>.?/(:9*0/1869**.8:46.@A(,B179,9702.C0>.D09*9,+EF!""#$%%&"((&#)"*+)*,-%./&+)012345/.61"$4!""#$%%555*7+)5/.61"*+)8%G/096.39*-9/<.A016)H9*1.@-9701=/9-0/2.39,9+9EF.!""#$%%621"+(62971&"/0(&*+%4!"#$$#%&C4/6I.J<,01)+0.34(,5)*.@*0H0***0/2.KLEF!""#$%%89*,)2"!"9,1&/.1*6)0*:;%4!()*+#($,#-)*./01*234&MN3O.@>0;1791I2.0*-)(7EF.!""#$%%555*(1+0-5*<1%"!18&%0)(;&+71&=7/1(.>#("&>#)&"+).1>0(:1?@AAA!,56)(*78*9:7)(;*87*$#<8&J9/9,64.G04;*4-.@P69*42.P69*<EF4!""#$%%555*/"()8/2)*+)8%61)<()6+8&%/#B()+"/),&B(17(1"A96.J</01.Q4(,69),.)B0.R4(601.@=966</012.KLE$!""#$%%7""921&*+)*:;%NS:*4/0.C4/6I.T0,,),01.@791I0/2.KLE$!""#$%%1C#()21,)2"!#1,,/,1&*)26*:;%/,"12+"/01B8#TOTNMNO.@9*-9U9/912.8:9),E$!""#$%%555*##1(1*1&%Thursday, May 30, 2013
  7. 7. 05/23/13 Building Bridges, Connecting Communities7! "#$%#&% ()*+),-./)+-012.34,,056),-.3477(,)6)018049)0*+:)0;1<=.804*45>6)4,.:)0;1.?.@>A1B0>9*06>,+C!"#$%"&()*"(#+,!"#$%"&(#*-"*.%/,&"*DE>6F1.,46.64.*)G0H"#,0&)+/&&)1"&2"*31*"#&$"#&/*","&3)+&454,"6$)*5)74%"3,/++)*&,#88)&#&"65#*-"*,3%48"9,&*481,:+)%01)8,3,;#+5)6/%",48<)/&;4&2)/&*";)*-481&2"*",&)$0)/*,)%/&4)83#845#&"6=%/,&"*481)$/+&)>???5#*-"*,@)*+),&#%#66*",,",48,&"#6)$%#&<%)81#66AI++/011J)0*+.K.80454+0/@)*7/%-45+)*&)$%)=#&4)8,B"C1C,+*"#6,2""&D#66A.J00+1..........L>1M.7>A.16>/60/.G)6Thursday, May 30, 2013
  8. 8. 05/23/13 Building Bridges, Connecting Communities8Thursday, May 30, 2013
  9. 9. 05/23/13 Building Bridges, Connecting Communities9Thursday, May 30, 2013
  10. 10. 05/23/13 Building Bridges, Connecting Communities10Thursday, May 30, 2013
  11. 11. 05/23/13 Building Bridges, Connecting Communities11Thursday, May 30, 2013
  12. 12. 05/23/13 Building Bridges, Connecting Communities12Thursday, May 30, 2013
  13. 13. 05/23/13 Building Bridges, Connecting Communities13Thursday, May 30, 2013
  14. 14. 05/23/13 Building Bridges, Connecting Communities14Thursday, May 30, 2013
  15. 15. 05/23/13 Building Bridges, Connecting Communities15Thursday, May 30, 2013
  16. 16. 05/23/13 Building Bridges, Connecting Communities16Thursday, May 30, 2013
  17. 17. 05/23/13 Building Bridges, Connecting Communities17Thursday, May 30, 2013
  18. 18. 05/23/13 Building Bridges, Connecting Communities18Thursday, May 30, 2013
  19. 19. 05/23/13 Building Bridges, Connecting Communities19Thursday, May 30, 2013
  20. 20. 05/23/13 Building Bridges, Connecting Communities20Thursday, May 30, 2013
  21. 21. 05/23/13 Building Bridges, Connecting Communities21Thursday, May 30, 2013
  22. 22. 05/23/13 Building Bridges, Connecting Communities22Thursday, May 30, 2013
  23. 23. 05/23/13 Building Bridges, Connecting Communities23Thursday, May 30, 2013
  24. 24. 05/23/13 Building Bridges, Connecting Communities24Thursday, May 30, 2013
  25. 25. 05/23/13 Building Bridges, Connecting Communities25Thursday, May 30, 2013
  26. 26. 05/23/13 Building Bridges, Connecting Communities26Thursday, May 30, 2013
  27. 27. 05/23/13 Building Bridges, Connecting Communities27Thursday, May 30, 2013
  28. 28. 05/23/13 Building Bridges, Connecting Communities28Thursday, May 30, 2013
  29. 29. 05/23/13 Building Bridges, Connecting Communities29Thursday, May 30, 2013
  30. 30. 05/23/13 Building Bridges, Connecting Communities30Thursday, May 30, 2013
  31. 31. 05/23/13 Building Bridges, Connecting Communities31Thursday, May 30, 2013
  32. 32. 05/23/13 Building Bridges, Connecting Communities32Thursday, May 30, 2013
  33. 33. 05/23/13 Building Bridges, Connecting Communities33Thursday, May 30, 2013
  34. 34. 05/23/13 Building Bridges, Connecting Communities34Thursday, May 30, 2013
  35. 35. 05/23/13 Building Bridges, Connecting Communities35Thursday, May 30, 2013
  36. 36. 05/23/13 Building Bridges, Connecting Communities36Thursday, May 30, 2013
  37. 37. 05/23/13 Building Bridges, Connecting Communities37Thursday, May 30, 2013
  38. 38. 05/23/13 Building Bridges, Connecting Communities38Thursday, May 30, 2013
  39. 39. 05/23/13 Building Bridges, Connecting Communities39Thursday, May 30, 2013
  40. 40. Thursday, May 30, 2013
  41. 41. Thursday, May 30, 2013
  42. 42. Thursday, May 30, 2013
  43. 43. The ProblemYou need an interactive map with millions ofdatapoints and these datapoints are continuouslybeing updated. The map should be searchable andfilterable.Thursday, May 30, 2013
  44. 44. Now you have two problemsThe first problem is cartographic. How do yougraphically show a user a map with millions ofdatapoints?Thursday, May 30, 2013
  45. 45. Thursday, May 30, 2013
  46. 46. The second problem is technical. How do you scale tomillions of datapoint while keeping the map fullysearchable and filterable?Thursday, May 30, 2013
  47. 47. (Or Elastic Search)Thursday, May 30, 2013
  48. 48. GeohashImage Credit: http://www.bigdatamodeling.orgExample Geohash: U4PRUYDQQVJThursday, May 30, 2013
  49. 49. Solr index field Countss_geohash_1: U 876,984ss_geohash_2: U4 59,365ss_geohash_3: U4P 2,567ss_geohash_4: U4PR 753ss_geohash_5: U4PRU 156ss_geohash_6: U4PRUY 34ss_geohash_7: U4PRUYD 4ss_geohash_8: U4PRUYDQ 1ss_geohash_9: U4PRUYDQQ 1Use geohash as solr “buckets”Thursday, May 30, 2013
  50. 50. Request a different geohash field (1 through 9)depending on your zoom level.Use solr faceting or groupingFaceting on ss_geohash_5Facet CountU4PRU 1565WP7U 78DDY0R 566SQ2S 238E8RG 17KEV66 1Thursday, May 30, 2013
  51. 51. Translate the geohash facets back to latitude andlongitude and map them.Map the facetsFacet Latitude LongitudeU4PRU 57.6 10.45WP7U -55.6 -12.1DDY0R 15.5 -58.76SQ2S -21.0 -58.58E8RG 21.1 -157.0KEV66 -23.5 30.0Thursday, May 30, 2013
  52. 52. (Live demo later)Thursday, May 30, 2013
  53. 53. Thursday, May 30, 2013
  54. 54. Thursday, May 30, 2013
  55. 55. Thursday, May 30, 2013
  56. 56. Thursday, May 30, 2013
  57. 57. Thursday, May 30, 2013
  58. 58. Thursday, May 30, 2013
  59. 59. Thursday, May 30, 2013
  60. 60. 05/23/13 Building Bridges, Connecting Communities60Who Else?Lev Tsypin - levelosLeaflet module maintainerReinier Battenberg - batjeWMS module maintainerJeff Schuler - jeffschulerViews GeoJSON module maintainerHi! My Name is Lev, and I loveMaps!!!Thursday, May 30, 2013
  61. 61. 05/23/13 Building Bridges, Connecting Communities61What Else?- Starter kit modules- Mo’better documentation(end user and developer)- Module evaluation matrix(Consistent and objectiveways to rate usefulness/relevancy of modules)Thursday, May 30, 2013
  62. 62. 05/23/13 Building Bridges, Connecting Communities62It takes a village, morethan just seven dudes...We Need You!- Need people to document the solutions that areworking for them- Need people to help maintain & expand existingmodules- Need people to help mange issue queues andtrain others on the “way of the mapping.”Thursday, May 30, 2013
  63. 63. 05/23/13 Building Bridges, Connecting Communities63YES!!! How Can I Help?http://groups.drupal.org/location-and-mapping- Reach out and TOUCH!(Everyone mentioned here wouldlove to hear from you)- Download some modules andbuild something- Dive into the issue queuesThursday, May 30, 2013
  64. 64. Building Bridges, Connecting CommunitiesEvaluate this session at:portland2013.drupal.org/schedule.Thank you!What did you think?Thursday, May 30, 2013

×