+ All Categories
Home > Technology > Using Clojure to Marry Neo4j and Open Democracy

Using Clojure to Marry Neo4j and Open Democracy

Date post: 09-May-2015
Category:
Upload: david-simons
View: 266 times
Download: 2 times
Share this document with a friend
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.
16
Election Results with Neo4j
Transcript
Page 1: Using Clojure to Marry Neo4j and Open Democracy

Election Resultswith Neo4j

Page 2: Using Clojure to Marry Neo4j and Open Democracy

Who am I?

• David Simons

• @SwamWithTurtles

• Software Developer

• … for a bespoke solutions provider Softwire (hint: we’re recruiting)

• … for fun

Page 3: Using Clojure to Marry Neo4j and Open Democracy
Page 4: Using Clojure to Marry Neo4j and Open Democracy

ACADEMIC WEBSITE

CONTAINING POORLY

FORMATTED DATA

DATA SCRAPER(PYTHON)

NEO4J

REST ENDPOINT(CLOJURE)

Page 5: Using Clojure to Marry Neo4j and Open Democracy
Page 6: Using Clojure to Marry Neo4j and Open Democracy
Page 7: Using Clojure to Marry Neo4j and Open Democracy
Page 8: Using Clojure to Marry Neo4j and Open Democracy
Page 9: Using Clojure to Marry Neo4j and Open Democracy
Page 10: Using Clojure to Marry Neo4j and Open Democracy

ring-clojure

Page 11: Using Clojure to Marry Neo4j and Open Democracy
Page 12: Using Clojure to Marry Neo4j and Open Democracy
Page 13: Using Clojure to Marry Neo4j and Open Democracy

(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))

Page 14: Using Clojure to Marry Neo4j and Open Democracy

(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")))

Page 15: Using Clojure to Marry Neo4j and Open Democracy

github.com/pimterry/national-hack-the-government-2014/

Page 16: Using Clojure to Marry Neo4j and Open Democracy

Thanks!

David [email protected]

@SwamWithTurtlesgithub.com/SwamWithTurtles


Recommended