tecznotes

Michal Migurski's notebook, listening post, and soapbox. Subscribe to this blog. Check out the rest of my site as well.

Jan 8, 2012 9:27pm

take my class at gaffta next month

I’ll be teaching a four-day class at the Gray Area Foundation For The Arts next month, Visualizing and Mapping Data. It’ll be a four-parter, Tuesday and Thursday evenings at GAFFTA’s San Francisco space. I’ll be covering mapping from both a browser and server perspective, focusing the presentation of data.

Go sign up!

Here’s an early draft of my class notes; these will change but not substantially:

This four-day workshop will follow the lifecycle of data, from its raw collection to preparation and presentation for the web. We’ll explore where geographic data originates, how it’s transformed to work online, how to see it flow and move, and finally how to publish a view into that data to the web with simple browser-based tools. We’ll work with data from Twitter and OpenStreetMap, push it through filters and viewers, and publish it to the open web.

This class will cover both browser-side Javascript code and server-side Python code.

Week One: Foregrounds

Meeting 1: Getting dots on maps

We’ll be working with street-level data for the duration of the class, so we’ll start here with some introductory concepts like interactive slippy maps and image tiles. We’ll take Google Maps apart into its component pieces to see how they work, add a selection of point-based data to a map, and finish up with a working example using freely-available Javascript mapping tools.

Meeting 2: Where data comes from

Data can come from all kinds of sources, and frequently it needs to be processed, cleaned, and prepared for use on the web. Become self-sufficient in making location data useful to others. We’ll look at local data sources like 311 calls, addresses, and demographic information and run them through a variety of tools to make them ready for online publishing.

Week Two: Backgrounds

Meeting 3: Choosing your own background

Commonly-available road maps designed for displaying driving directions or finding business addresses don’t always work in combination with arbitrary or complex data. We’ll look at alternate sources of street-level cartography and talk about the ways each might be appropriate to different data sets. We’ll finish up with a dive into the OpenStreetMap data set and the process of designing your own custom cartography.

Meeting 4: Spatial data

Dots on maps are just one of many ways to display data. Heat maps, for example, can be used to show characteristics of large areas of data such as zip codes or census tracts using color. We’ll look at ways to prepare heat map layers and integrate them with our other maps, and finish up with advanced topics like aerial photographs and raster data.

Jan 8, 2012 1:08am

new webgl nokia maps: progress

I’ve been kicking some files from the new Nokia 3D WebGL maps back and forth with Ryan Alexander, and my attempts to pick out the geometry are starting to get some results.

Nokia’s texture files:

My points in those same files—a visual match!

Dumping a bunch of X, Y, Z’s into Mac OS X Grapher.app:

Ryan pushing the whole thing into Blender:

This model is actually two meshes, corresponding to two separate textures:

The first one looks a bit like a post-Tornado city. Now to figure out the mipmaps in the height lookup tables.

Jan 5, 2012 4:25pm

new webgl nokia maps

Nokia’s new 3D WebGL maps are done very nicely. Here’s my house:

Here’s the zoom=16 texture JPEG for the are around my house:

And here are parts of the raw geometry for the same area. I'm thinking to do as Brandon Jones did and figure out the file format here, since I can already see obvious signs of four-byte floating point values:

00000000  4e334d34 01000000 01000000 28000000  N3M4........(...
00000010  97160000 f4c30100 82120000 00000000  ................
00000020  84330200 a0330200 00d01345 0040f644  .3...3.....E.@.D
00000030  003f3947 00001745 00c02845 00572f47  .?9G...E..(E.W/G
00000040  00a03045 0068e245 006e3947 9e080545  ..0E.h.E.n9G...E
00000050  1a920346 66f33447 00501745 00003442  ...Ff.4G.P.E..4B
00000060  00a93247 00901645 00003442 00b83447  ..2G...E..4B..4G
00000070  00602145 00003442 00164147 00e00a45  .`!E..4B..AG...E
00000080  00c8e845 00272947 00801645 0070f545  ...E.')G...E.p.E
00000090  00994347 00a01245 00982846 004d3547  ..CG...E..(F.M5G
000000a0  00102245 00e43346 00874447 00300c45  .."E..3F..DG.0.E
000000b0  00587346 00fd3047 00c0fc44 00cc7746  .XsF..0G...D..wF

...

00010f20  68cb1f47 07d54c44 89405f47 d4853f47  h..G..LD.@_G..?G
00010f30  42035044 5c405f47 31405f47 b9e8383e  B.PD\@_G1@_G..8>
00010f40  aff0ae3e d4b0533e b0caaf3e c40c443e  ...>..S>...>..D>
00010f50  c944c93e 3003523e 9ee0cd3e c568453e  .D.>0.R>...>.hE>
00010f60  a37ea33e c02c403e a412a43e a1c4203e  .~.>.,@>...>.. >
00010f70  a88aa73e eed86d3e c6bac53e ac8c2b3e  ...>..m>...>..+>
00010f80  cf28cf3e d658563e dac6d93e b140313e  .(.>.XV>...>.@1>
00010f90  e2a4e13e ecd06b3e f068f03e f940793e  ...>..k>.h.>.@y>
00010fa0  f06af03e 8188803e d5b4d43e 898c883e  .j.>...>...>...>
00010fb0  863f063f 8588843e ca84c93e 9040903e  .?.?...>...>.@.>
00010fc0  c7c8c63e a0f09f3e c3bec23e 8a748a3e  ...>...>...>.t.>
00010fd0  c49ec33e 91a2903e bf40bf3e 9028903e  ...>...>.@.>.(.>

...

0001c3c0  8b0b503f c40d053f e87d543f eacce13e  ..P?...?.}T?...>
0001c3d0  91f1583f 034da53e 459e5f3f 917fb93e  ..X?.M.>E._?...>
0001c3e0  98635d3f 6732913e 36d6613f 1fca513e  .c]?g2.>6.a?..Q>
0001c3f0  1e49663f b913ba13 c900b913 c9006213  .If?..........b.
0001c400  b9136213 6113bb13 bd13cb00 bb13cb00  ..b.a...........
0001c410  ca00bd13 be13cb00 be13bf13 cb00bf13  ................
0001c420  cf00ce00 d000ce00 cf00d300 ce00d000  ................
0001c430  d300d400 ce00d400 d300d500 d400d500  ................
0001c440  d600d700 d400d600 d600d800 d700d400  ................
0001c450  d700d900 d900da00 d400db00 da00d900  ................
0001c460  d800d600 dc003802 39023a02 39023802  ......8.9.:.9.8.
0001c470  3b023902 3b023c02 76137713 39027613  ;.9.;.<.v.w.9.v.
0001c480  39023c02 1f032003 21031f03 22032003  9.<... .!...". .
0001c490  23032203 1f032303 24032203 79137a13  #."...#.$.".y.z.
0001c4a0  1a047a13 1d041a04 7a137b13 1e047a13  ..z.....z.{...z.
0001c4b0  1e041d04 71067206 73067406 73067206  ....q.r.s.t.s.r.
0001c4c0  75067306 74061407 15071607 16071707  u.s.t...........
0001c4d0  14071807 16071507 16071807 19071907  ................
0001c4e0  18071a07 d008d108 d208ea13 eb13d508  ................
0001c4f0  ea13d508 d308d608 d308d508 3b093c09  ............;.<.
0001c500  3d093c09 3e093d09 a10aa20a a30aa10a  =.<.>.=.........
0001c510  a40aa20a a20aa40a a50ac30a c40ac50a  ................
0001c520  c50ac60a c30ac50a c40ac70a c40ac80a  ................
0001c530  c70a9513 9613230b 9513230b 210be00c  ......#...#.!...
0001c540  e10ce20c a213a413 ec0ca213 ec0cea0c  ................
0001c550  0a140b14 010d0a14 010dff0c 2c0e2d0e  ............,.-.
0001c560  2e0eb90e d000cf00 b90eba0e d000bf0e  ................
0001c570  d300d000 bf0ec00e d300c10e d500d300  ................
0001c580  c10ec20e d500c30e d600d500 c30ec40e  ................
0001c590  d600c50e d700d800 c50ec60e d700c70e  ................
0001c5a0  d900d700 c70ec80e d900c90e db00d900  ................
0001c5b0  c90eca0e db00cb0e dc00d600 cb0ecc0e  ................
0001c5c0  dc00cd0e d800dc00 cd0ece0e d800210f  ..............!.
0001c5d0  3b023802 210f220f 3b02230f 3c023b02  ;.8.!.".;.#.<.;.
0001c5e0  230f240f 3c027813 3c02250f aa137813  #.$.<.x.<.%...x.
0001c5f0  250fc110 2c0e2e0e c110c210 2c0e2014  %...,.......,. .
0001c600  b9136113 78137613 3c027b13 7c131e04  ..a.x.v.<.{.|...
0001c610  80137f13 55068013 55065606 7f138113  ....U...U.V.....
0001c620  55068313 82137607 82138413 77078213  U.....v.....w...
0001c630  77077607 8f138e13 1d098f13 1d091e09  w.v.............
0001c640  9c139b13 660c9c13 660c670c 9b139d13  ....f...f.g.....
0001c650  660ca313 a213ea0c a313ea0c eb0cbc13  f...............
0001c660  bb13ca00 bf13ce00 cb00bf13 c013cf00  ................
0001c670  c0131014 bc0ec013 bc0ecf00 c100c400  ................
0001c680  0800c600 0800c400 c400c700 c6007613  ..............v.
0001c690  78133e02 76133e02 3d023d02 3e023f02  x.>.v.>.=.=.>.?.
0001c6a0  3f024002 3d023f02 41024002 41024202  ?.@.=.?.A.@.A.B.
0001c6b0  40024102 3f024302 43024402 41024102  @.A.?.C.C.D.A.A.
0001c6c0  44024502 44024302 46024702 44024602  D.E.D.C.F.G.D.F.
0001c6d0  41024802 42025703 58035903 58035703  A.H.B.W.X.Y.X.W.
0001c6e0  5a035b03 57035903 5c035803 5a035c03  Z.[.W.Y.\.X.Z.\.
0001c6f0  5d035803 5a035d03 5c031c13 1b13ae03  ].X.Z.].\.......
0001c700  7c137b13 1c047c13 1c041f04 6e056f05  |.{...|.....n.o.
0001c710  70057005 71056e05 71057005 72057f13  p.p.q.n.q.p.r...
0001c720  80135406 81137f13 54068113 54065706  ..T.....T...T.W.
0001c730  27132813 1d072713 1d071b07 1d071e07  '.(...'.........

...

00023250  08118916 08119d00 86115400 05118611  ..........T.....
00023260  05110611 07110511 5400e211 86110611  ........T.......
00023270  e511e211 0611e511 06117d11 90168b16  ..........}.....
00023280  54009016 54008511 86118511 54008a16  T...T.......T...
00023290  8f160711 8a160711 54008b16 8a165400  ........T.....T.
000232a0  05119c00 9b008916 88169c00 89169c00  ................
000232b0  05118916 05110711 8f168916 07110611  ................
000232c0  9b00af0e 7d110611 af0eb10e 9b009c00  ....}...........
000232d0  b10eb20e 9b00b50e 9c009f00 b50eb60e  ................
000232e0  9c000611 05119b00 88169f00 9c008816  ................
000232f0  8d169f00 8d168e16 b40e8d16 b40e9f00  ................
00023300  03000000 6c000a01 7201b301 0b028f02  ....l...r.......
00023310  ca021f03 8d03d003 5504c904 04055505  ........U.....U.
00023320  9005c205 3906a506 f8067907 da076608  ....9.....y...f.
00023330  98080709 6209c609 fe09510a b00a310b  ....b.....Q...1.
00023340  8f0b4d0c b20c150d 5d0d8d0d cd0df80d  ..M.....].......
00023350  220e460e 680e790e 850eae0e b60ebe0e  ".F.h.y.........
00023360  e60e200f 470f940f af0fc80f 5e10f310  .. .G.......^...
00023370  5011d211 da11e011 f7110d12 28126612  P...........(.f.
00023380  72120000 186d6170 5f31365f 34303231  r....map_16_4021
00023390  325f3130 3531305f 302e6a70 67000000  2_10510_0.jpg...
000233a0  40bf5aba 8940adba 78f89e3a 00000000  @.Z..@..x..:....
000233b0  5a48ce3b c23982bb 00000000 00000000  ZH.;.9..........
000233c0  a8fb1e3b e6d57b3b c3ebbf3b 00000000  ...;..{;...;....
000233d0  456924ca f93382ca 4a546d4a 0000803f  Ei$..3..JTmJ...?
000233e0  00ffff46 00ffff46 00ffff46 00ffff46  ...F...F...F...F
000233f0  00ffff46 00ffff46 5f1d1508 e8574bbf  ...F...F_....WK.
00023400  b648222b 11a855bf 7a5ef80a 0fdf533f  .H"+..U.z^....S?
00023410  00000000 00000000 ed495039 0bc9793f  .........IP9..y?
00023420  a3b5cb31 384770bf 00000000 00000000  ...18Gp.........
00023430  00000000 00000000 5531c6fc 74df633f  ........U1..t.c?
00023440  87457fb4 bc7a6f3f ee042f64 78fd773f  .E...zo?../dx.w?
00023450  00000000 00000000 45b95c93 288d44c1  ........E.\.(.D.
00023460  f1c48f2d 7f4650c1 cd614a3c 89aa4d41  ...-.FP..aJ<..MA
00023470  00000000 0000f03f 00008200 30003000  .......?....0.0.
00023480  0b181a1a 1a14191c 0e0e0e0e 1e1d0e0e  ................
00023490  0e0d0d0d 0dfbfdfd fdfd1325 1b0f1010  ...........%....
000234a0  10100605 05050502 02020202 02020202  ................
000234b0  0c1b1a1a 1a0e1112 0e272727 27261b0e  .........''''&..
000234c0  0e0e0d0d 0f151422 0e0e1a25 25252526  ......."...%%%%&
000234d0  10100606 05050402 02020202 02020202  ................
000234e0  0c1c1c1b 1a0d0d0d 0d27232b 2b33322e  .........'#++32.
000234f0  2e2e2d26 0d131a22 0d0d2224 25252525  ..-&...".."$%%%%
00023500  10060606 05050302 02020202 02020202  ................
00023510  0b3c3a1b 1a0c0c0c 26262331 31322d26  .<:.....&p-&
00023520  2e2c2d2d 28282524 0c0c0c0b 09242515  .,--((%$.....$%.
00023530  07060606 05050202 02020202 02020202  ................
00023540  0a42423f 15100c0c 26262230 31312d22  .BB?....&&"011-"
00023550  22242423 23252726 0b0b1912 0a080807  "$$##%'&........
00023560  06060606 05040202 02020202 02020202  ................
00023570  3c42423e 13110d0b 25252230 312e2121  ....%%"01.!!
00023580  22222324 24222623 0a0a1510 14080706  ""#$$"&#........
00023590  05050505 04040202 02020202 02020202  ................
000235a0  3d42423c 0c0c0b0a 25242222 27262121  =BB<....%$""'&!!
000235b0  21212324 272a2723 24240ae2 e3912106  !!#$'*'#$$....!.
000235c0  05050505 06040202 02020202 02020202  ................
000235d0  0b0b0c0e 0d0b0a1f 25232323 22212121  ........%###"!!!
000235e0  21222522 352d2624 2424e2e3 e3e31e05  !"%"5-&$$$......
000235f0  05050506 07030202 02020202 02020202  ................
00023600  2f2f0d0e 0d0b0923 28232424 22222222  //.....#(#$$""""
00023610  2326302b 322befef 25e2e3e3 e3240605  #&0+2+..%....$..
00023620  05050508 07020202 02020202 02020202  ................
00023630  2f2f2f0d 0c0a0924 2a272626 24232222  ///....$*'&&$#""
00023640  26242324 2eefefef eee3e8e9 24242405  &$#$........$$$.
00023650  05050508 06020202 02020202 02020202  ................
00023660  2e303014 150a0809 22303029 29292929  .00....."00)))))
00023670  28222225 2626efee f0e3e3e3 24242306  (""%&&......$$#.
00023680  06060708 05020202 02020202 02020202  ................
00023690  2e303018 19190809 2330302a 29292930  .00.....#00*)))0
000236a0  28212526 2627e3ee e3e3e324 23230506  (!%&&'.....$##..
000236b0  17060707 03020202 02020202 02020202  ................
000236c0  2c2d2d18 18190808 262f2e2b 2a2b2d30  ,--.....&/.+*+-0
000236d0  2a232627 27e7e6e3 e3e32323 23050606  *#&''.....###...
000236e0  13060605 02020202 02020202 02020203  ................
000236f0  08111318 18180822 292c2d2b 2b2c2e2d  ......."),-++,.-
00023700  272226e2 e4e9eae4 e2232323 05061006  '"&......###....
00023710  07060604 02020202 02020202 02020203  ................
00023720  170b0909 09070708 26292a2a 2a2a2a29  ........&)*****)
00023730  232207e2 e2e2e223 23232306 06091706  #".....####.....
00023740  06060503 02020202 02020202 02020203  ................
00023750  17170a09 08070707 0707070a 27282828  ............'(((
00023760  222108e2 e2cb0d23 23230605 06140706  "!.....###......
00023770  05050402 02020202 02020202 02020204  ................
00023780  1717110a 090c0707 07070707 06060615  ................
00023790  10070706 07060707 05050606 06060606  ................
000237a0  06050302 02020202 02020202 02020204  ................
000237b0  1618190a 091a0d15 1e0d0706 06060606  ................
000237c0  06050505 05050505 06060606 0c070706  ................
000237d0  06050202 02020202 02020202 02020210  ................
000237e0  0a090a0a 0a180f12 1e1e1e0c 07070606  ................
000237f0  06050505 05060606 06060926 23070606  ...........&#...
00023800  06040202 02020202 02020202 02020217  ................
00023810  191f0a0a 0a1a1e0c 1d1d1e1e 1d0a070a  ................
00023820  0f060505 06060606 0708081c 22060607  ............"...
00023830  06040202 02020202 02020202 0202021b  ................
00023840  bf230d1b 140b090a 2a291d1d 1d1dced4  .#......*)......
00023850  d41d0906 06060607 07073009 0706061a  ..........0.....
00023860  1f030202 02020202 02020202 0202021d  ................
00023870  bf281a1b 1b1b0a0e 2a29141c 1d1dd7e0  .(......*)......
00023880  e1d31008 06060606 06060707 0606050f  ................
00023890  05030202 02020202 02020202 0202021a  ................
000238a0  2c2e2c2b 1b1b0e29 31302a0d 09d2dbe3  ,.,+...)10*.....
000238b0  e3d70a08 081c180f 06060606 06050510  ................
000238c0  05020202 02020202 02020202 0202020a  ................
000238d0  2f32302c 2b1a0a2a 31312a29 28d6dfe3  /20,+..*11*)(...
000238e0  e0d20707 11191406 06060605 0505052a  ...............*
000238f0  11020202 02020202 02020202 02020207  ................
00023900  3d33302c 2c0b0b0b 30312929 d1dae3e3  =30,,...01))....
00023910  d91c0808 190f0707 06060505 0505052a  ...............*
00023920  15020202 02020202 02020202 02020207  ................
00023930  4242422d 2c0c1b1b 0e0e0f29 1cdde3e1  BBB-,......)....
00023940  d3080808 15070723 26050505 05050507  .......#&.......
00023950  05020202 02020202 02020202 02020206  ................
00023960  46464242 0d0c1f1d 1b1b131c 3f3de3da  FFBB........?=..
00023970  1e090808 07070622 29050505 05050507  .......").......
00023980  05020202 02020202 02020202 02020206  ................
00023990  47484842 0d1d201e 1b1b1c16 5757571d  GHHB.. .....WWW.
000239a0  09090808 07070706 06060505 05050506  ................
000239b0  05020202 02020202 02020202 02020205  ................
000239c0  0f2c430e 0e1b1c1c 1c1b1b57 5d60570c  .,C........W]`W.
000239d0  0a090908 151b1007 06060605 05050506  ................
000239e0  05020202 02020202 02020202 02020203  ................
000239f0  100f0f0e 1b1b1718 181a165b 5f60570a  ...........[_`W.
00023a00  0a0a090a 141b0c07 07061219 05050506  ................
00023a10  05020202 02020202 02020202 02020202  ................
00023a20  100f0f10 1d1e1e19 191a985c 5e5c0f0b  ...........\^\..
00023a30  0c0b0a13 14100808 0707181c 08050505  ................
00023a40  05030202 02020202 02020202 02020202  ................
00023a50  100f101d 1d1e1d1e 1c97a09f 98570f0c  .............W..
00023a60  230c0b19 27260a09 0707090a 06050504  #...'&..........
00023a70  04030202 02020202 02020202 02020202  ................
00023a80  1510101d 1d1e1d1d 9897a0a0 9a980f0d  ................
00023a90  0d27200c 160b0b1b 1609090a 06050504  .' .............
00023aa0  04040202 02020202 02020202 02020202  ................
00023ab0  15102427 24111d1d 98a0a0a0 9c100e0e  ..$'$...........
00023ac0  0f302811 4c3e0c18 180a0d08 06060504  .0(.L>..........
00023ad0  04040302 02020202 02020202 02020202  ................
00023ae0  1e132527 2725221d 98a0a0a0 960f0e10  ..%''%".........
00023af0  161c120e 362f0e0d 0e1b1b53 09060505  ....6/.....S....
00023b00  04040402 02020202 02020202 02020202  ................
00023b10  26222425 25262828 7f98a198 110f0f0f  &"$%%&((........
00023b20  201d2b19 0f10100f 1d1d5156 54560605   .+.......QVTV..
00023b30  04040402 02020202 02020202 02020202  ................
00023b40  1d151523 24212625 11111411 10101010  ...#$!&%........
00023b50  1e1e1010 11101036 281b5157 61555305  .......6(.QWaUS.
00023b60  05040403 02020202 02020202 02020202  ................
00023b70  12151514 14161511 11111111 11101011  ................
00023b80  32361111 28151240 341b3a53 53530606  26..(..@4.:SSS..
00023b90  05040404 02020202 02020202 02020202  ................
00023ba0  14141414 14131111 11111111 12181112  ................
00023bb0  34371119 293c4d4e 331d0d19 43523436  47..)

Jan 5, 2012 12:12am

blog all oft-played tracks III

These tracks:

  1. were added to iTunes in 2011,
  2. and listened to a lot.

I do these each year, lately. Also: everything as an .m3u playlist.

1. Kanye West: Runaway feat. Pusha T

It’s actually a bit embarrassing how much I listened to this album overall. Runaway, All Of The Lights, and Lost In The World are all amazing tracks, and it all hangs together amazingly.

2. Los Fabulosos Cadillacs: Matador

My roommate in college loved this.

3. Skinny Puppy: Worlock

Rabies (produced by Al Jourgensen) is one of those early-guitar industrial albums balanced right on the edge of dance music.

4. Elbow: Grounds For Divorce

I think this was in Burn After Reading.

5. Paul Simon: The Boy In The Bubble

This year was the 25th anniversary of Graceland. I grabbed a copy, and still remembered all of the lyrics to every song.

6. Skeeter Davis: The End Of The World

7. Adele: Rolling In The Deep

Ubiquitous, amazing voice.

8. Jay-Z: Dirt Off Your Shoulder

Why did I never pay attention to this album when it came out? Dirt Off Your Shoulder is the track from the “milk” studio video with Timbaland.

9. Blamstrain: Ei Voi Olla Tanssimatta

Thanks, Ryan!

10. Technotronic: Pump Up The Jam

September 2014
Su M Tu W Th F Sa
 
    

Recent Entries

  1. making the right job for the tool
  2. the hard part
  3. end the age of gotham-everywhere
  4. on this day
  5. write code
  6. managers are awesome / managers are cool when they’re part of your team
  7. bike seven: french parts
  8. being a client
  9. bike seven: building a cargo bike
  10. blog all video timecodes: how buildings learn, part 3
  11. talk notes, urban airship speaker series
  12. john mcphee on structure
  13. blog all oft-played tracks V
  14. tiled vectors update, with math
  15. disposable development boxes: linux containers on virtualbox
  16. week 1,851: week one
  17. tilestache 0.7% better
  18. south end of lake merritt construction
  19. network time machine backups
  20. week 1,846: ladders

Archives