Upload
david-simons
View
266
Download
2
Embed Size (px)
DESCRIPTION
A more technologically in-depth look at how we can use Clojure and Neocons to integrate with Neo4j and increase transparency in UK politics.
Citation preview
Election Resultswith Neo4j
Who am I?
• David Simons
• @SwamWithTurtles
• Software Developer
• … for a bespoke solutions provider Softwire (hint: we’re recruiting)
• … for fun
ACADEMIC WEBSITE
CONTAINING POORLY
FORMATTED DATA
DATA SCRAPER(PYTHON)
NEO4J
REST ENDPOINT(CLOJURE)
ring-clojure
(let [env (str (get (System/getenv) "GRAPHENEDB_URL") "/db/data")]
(defn connection-string [] (nr/connect! env)))
(defn run-query [query] (connection-string) (cy/tquery query))
(defn wardResults [year, areaId] (run-query ("MATCH (pa:party)<-[member_of]-(p:politician)-[r:stood_in]->(e:election)-[held_in]->(a:area),(e:election)-[during]->(y:year)WHERE y.name=\"" year "\" AND id(a)=" areaId " RETURN id(p), pa.name AS partyName, SUM(r.votes) AS numVotes")))
github.com/pimterry/national-hack-the-government-2014/