• Save
SHOULD HAVE MADE A LEFT TURN AT ALBUQUERQUE: BUILDING MAPS IN DRUPAL
Upcoming SlideShare
Loading in...5
×
 

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

on

  • 685 views

 

Statistics

Views

Total Views
685
Views on SlideShare
643
Embed Views
42

Actions

Likes
1
Downloads
0
Comments
0

1 Embed 42

https://twitter.com 42

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-NoDerivs LicenseCC Attribution-NoDerivs License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

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

  • 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
  • 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
  • 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
  • 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
  • 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
  • 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
  • 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
  • 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 map should be searchable andfilterable.Thursday, May 30, 2013
  • Now you have two problemsThe first problem is cartographic. How do yougraphically show a user a map with millions ofdatapoints?Thursday, May 30, 2013
  • Thursday, May 30, 2013
  • The second problem is technical. How do you scale tomillions of datapoint while keeping the map fullysearchable and filterable?Thursday, May 30, 2013
  • (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_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
  • 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
  • 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
  • (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 Battenberg - batjeWMS module maintainerJeff Schuler - jeffschulerViews GeoJSON module maintainerHi! My Name is Lev, and I loveMaps!!!Thursday, May 30, 2013
  • 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
  • 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
  • 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
  • Building Bridges, Connecting CommunitiesEvaluate this session at:portland2013.drupal.org/schedule.Thank you!What did you think?Thursday, May 30, 2013