## Fetching static JSON files cross site with jQuery.

Say you have a static JSON file sitting on a web server, e.g. mystaticfiles.com/hello.json on Amazon S3 or a CDN. For the sake of argument, let’s imagine that it’s a configuration file. The contents of the file looks like this:

{"message": "Hello, world!"}

## Reprojecting shapefiles with ogr2ogr

If you have an ESRI Shapefile (.shp) that you want to reproject, you can use ogr2ogr

ogr2ogr -t_srs <EPSG-CODE> newfile.shp oldfile.shp

The EPSG code could be for instance epsg:28532.

## Creating a word cloud from PDF documents

Warning: This is not the hardest way to create a word cloud from pdf-documents, but it’s up there.

Say you have directory containing pdf documents:

$ls a.pdf b.pdf c.pdf ... ## Easy two column layout in latex Include the packages. The blindtext package is just an easy way to type Lorem ipsum etc. \usepackage{multicol} \usepackage{blindtext} Make a two column section of a page. \begin{multicols}{2}[\textbf{Example for a two column text}] \blindtext \end{multicols} ## If only more people wrote like Lamport I’m half way through the Part-time parliament on Paxos article by Leslie Lamport. It is an article that describes a three-phase consensus protocol by telling a story of a (fictional) parliement on the greek island of Paxos, complete with fat priests, busy businessmen, and a vivid description of the parliament hall. The story illustrates how the members of the parliament, who would walk in and out at any time, could pass decrees and agree on what had been agreed upon, decree-wise. ## Show system info on a Mac #### SYSTEM_PROFILER Show a very long list of details about your machine and kernel (verbose output) system_profiler ## How to monitor system stuff on Mac Found this nice post on good commands to know appart from the obvious top Basically they are top and vm_stat 5 ## Finding the most quoted main author using linux command line I have a text file containing article references. It looks like this - Miller HJ (2004) Tobler’s First Law and spatial analysis. Ann Assoc Am Geogr 94:284–289. - Onsrud H, ed (2007) Research and Theory in Advanced Spatial Data Infrastructure Concepts (ESRI Press, Redlands, CA). - Egenhofer M (2002) Toward the geospatial semantic web. Advances in Geographic Information Systems International Symposium, eds Makki Y, Pissinou N (Association for Computing Machinery, McLean, VA), pp 1–4. - Anselin L, Florax R, Rey S, eds (2004) Advances in Spatial Econometrics: Methodology, Tools and Applications (Springer, Berlin). - Wang S, Armstrong M (2009) A theoretical approach to the use of cyberinfrastructure in geographical analysis. Int J Geogr Inf Sci 23:169–193. - Wang S (2010) A cyberGIS framework for the synthesis of cyberinfrastructure, GIS, and spatial analysis. Ann Assoc Am Geogr 100:535–557. - Penninga F, Van Oosterom PJM (2008) A simplicial complex-based DBMS approach to 3D topographic data modelling. Int J Geogr Inf Sci 22:751–779. - Baker KS, Chandler CL (2008) Enabling long-term oceanographic research: Changing data practices, in- formation management strategies and informatics. Deep-Sea Res II 55(18–19):2132–2142. I wanted to find out what the most common first author is in that long list of articles, and this is what I did: cat refs-2009+.txt | \ sed -e '/^ *$/d' -e 's/^- //' | \ cut -d"(" -f1 | \ cut -d, -f1 | \ cut -d' ' -f1 | \ sort | \ uniq -c | \ sort -r > \ sorted-refs.txt

The result is this:

 6 Craglia 4 Wang 4 Rajabifard 4 Onsrud 4 Masser 4 Grus 4 Crompvoets 3 Yang 3 Steiniger 3 Gartner 3 European 3 Anselin 2 Wright 2 Smits 2 Sieber 2 Ramsey 2 Poore 2 Miller 2 Lance 2 INSPIRE 2 Helly 2 Georgiadou 2 Fox 2 Foster 2 Bregt 1 Zhang 1 World ...

## Sticking bicycle paths in CouchDB

In this installment of How To Stick Anything In CouchDB, I’ll take some bicycle path data released by the municipality of Copenhagen and stick them in CouchDB. As always I’m working in Terminal under Mac OS X.

Bicycle paths in Copenhagen, served live by CouchDB:

The data is in shape format, so it’s almost too easy using shp2geocouch. First download the data.

wget http://www.kk.dk/Borger/ByOgTrafik/CyklernesBy/~/media/B12983F7B5E3451F8716F7C072A5B101.ashx mv B12983F7B5E3451F8716F7C072A5B101.ashx bikepaths.zip unzip bikepaths.zip

\$ ls *.shp Cykelmidter_2006_r2_ETRS89zone32N.shp Cykelmidter_2006_r2_WGS84.shp

Create a CouchDB database to hold the data. I’m using my CouchDB installation. You should use yours:

curl -X PUT username:password@gd.iriscouch.com/bikepathscph

Use shp2geocouch to upload the data. It shouldn’t matter which one of the shape files we use, because shp2geocouch does reprojection:

shp2geocouch Cykelmidter_2006_r2_WGS84.shp http://username:password@gd.iriscouch.com/bikepathscph

#### Notes

There is a problem with encoding. If you click on one of the street features on the map above, streets that contain the danish letters [æ,ø,å] are missing those letters. I tried testing a conversion to GeoJSON from the shapefiles with ogr2ogr and it’s the same. God I hate encoding!

By the way, this is how to convert to GeoJSON from Shape using ogr2ogr:

ogr2ogr -f "GeoJSON" cykelmidter.json Cykelmidter_2006_r2_WGS84.shp

If you don’t have shp2geocouch, it’s really easy to install (at least it was on my Mac):

sudo gem install shp2geocouch

There is a “Ruby gem” install home page here, and github here.