of 32
8/13/2019 Lecture Slides Judicata-slides
1/32
JUD IC ATAStartup Engineering - Guest Lecturecoursera.org/course/startup
Adam Hahn
8/13/2019 Lecture Slides Judicata-slides
2/32
JUD IC ATAMapping the legal genome
8/13/2019 Lecture Slides Judicata-slides
3/32
JUD ICATA
BACKGROUND
Mapping the legal genome
Highly-specialized case law
parsing
Algorithmically-assisted human
review
Turning unstructured court
opinions into structured data
Helping lawyers make sense ofmassive amounts of information
Parsing 21M case law sentences,
77M component attributes
8/13/2019 Lecture Slides Judicata-slides
4/32
ADAM HA HN
Stanford CS 08
Co-Founder & CTO
Involved in every decision
Pre-commit code review
Continuous deployment
Data representation
8/13/2019 Lecture Slides Judicata-slides
5/32
COMMON L AW
Chimelv. California, 395 U.S. 752 (1969)
New Yorkv.Belton, 453 U.S. 454 (1981)
Arizonav. Gant, 556 U.S. 332 (2009)
8/13/2019 Lecture Slides Judicata-slides
6/32
!"$%&' ()* ++, -. /. 0000 123345
67%8%98 9: &;' $9%?' 7=(?&%?' &9 &;' 79%8& @;'=' &;' @(=8%8A) ;(B' C'D
?9E' 7(=& 9: 9 ?&%(8?' 98 ( =' ='J%(8?' 98 &;(& %8K%B%K =%A;&.
L;' K%))'8& (>)9 %A89=') &;' ?;'?M'='K ;%)&9=N 9: &;'
)'(=?;D%8?%K'8&D&9D(==')& 'O?'7&%98. P9>%?' ((?' %8 @;%?; ( >(@: (==')& %) E(K' @()
C=9(K>N ())'=&'K %8 !"##$%B. &%'()* ,("()-F 2"+ -. /. !42
1!42"5F (8K >%E%&'K ( :'@ N'(=) >(&'= %8 .$/0"#( 123$#('%4
5$6 B. &%'()* ,("()-F 2Q2 -. /. HII 1!4H!5F (8K &%'()*
,("()- B. 7)89$:'(;F 2Q+ -. /. I+2 1!4H25. L;' >%E%&%8A
B%'@) 'O7='))'K %8 .$/0"#( (8K 7)8$9:'(; @'=' %8 &K ( )'(=?; 9: ( :9N ( N'(= >(&'= &;'
$93'"%$ B. &%'()* ,("()-F HHI -. /. ,44F "3Q1!4IQ5F ='&='(&'K :=9E &;(& ;9>K%8AF 89&%8A &;(& &;'
)'(=?;D%8?%K'8&D&9D(==')& 'O?'7&%98 %) S( )&=%?&>N >%E%&'KG
98' &;(& ENF 9NF 898' 9: &;' K%))'8&D
'=) %8 5A'2)B 9= &;' ?()') &;(& 7='?'K'K %& (=A
8/13/2019 Lecture Slides Judicata-slides
7/32
8/13/2019 Lecture Slides Judicata-slides
8/32
8/13/2019 Lecture Slides Judicata-slides
9/32
8/13/2019 Lecture Slides Judicata-slides
10/32
JUD IC ATAENGINEER ING
8/13/2019 Lecture Slides Judicata-slides
11/32
DEV TOOLS
MacBook Air/Pro
brew install postgresql htop
parallel tree watch
iTerm (or tmux)
Editor-agnostic (but vimis best)
Chrome +!"J (learn all about it)
New Relic
https://developers.google.com/chrome-developer-tools/docs/overviewhttps://developers.google.com/chrome-developer-tools/docs/overview8/13/2019 Lecture Slides Judicata-slides
12/32
8/13/2019 Lecture Slides Judicata-slides
13/32
8/13/2019 Lecture Slides Judicata-slides
14/32
8/13/2019 Lecture Slides Judicata-slides
15/32
8/13/2019 Lecture Slides Judicata-slides
16/32
BE SKEPT IC AL
8/13/2019 Lecture Slides Judicata-slides
17/32
BACKEND
Python/Django
South (migrations)
tastypie (API)
dse (bulk operations)
networkx (graph analysis)
8/13/2019 Lecture Slides Judicata-slides
18/32
DATA
PostgreSQL + Redis
PostgreSQL
Solr
8/13/2019 Lecture Slides Judicata-slides
19/32
FRONTEND
Django for base template and complex HTML
Require.js
Backbone
backbone-relational
backbone-tastypie
less
8/13/2019 Lecture Slides Judicata-slides
20/32
CONT INUOUS
8/13/2019 Lecture Slides Judicata-slides
21/32
8/13/2019 Lecture Slides Judicata-slides
22/32
CONT INUOUS
Gerrit
ClerkDeploy Test
poll sshMarbury(django)
Apache/
mod_wsgi
Parser
Servlet
container
Katz(solr)
Servlet
container
Lemon(testbot)
8/13/2019 Lecture Slides Judicata-slides
23/32
DATASET
15,000 recent California cases
Criminal and civil
Parsed, with references reconciled
8/13/2019 Lecture Slides Judicata-slides
24/32
DATASET
catlinvthesuperiorcourtofkerncountys16714851cal4th300.xml
8/13/2019 Lecture Slides Judicata-slides
25/32
DATASET
catlinvthesuperiorcourtofkerncountys16714851cal4th300.xml
8/13/2019 Lecture Slides Judicata-slides
26/32
DATASET
Interesting n-grams?
Citation graph
Visualizations
Whats cited most? Why?
What can you tell about cases you dont have?
Judicial bias?
8/13/2019 Lecture Slides Judicata-slides
27/32
DISSENT INGOP IN ION
8/13/2019 Lecture Slides Judicata-slides
28/32
EMBRACINGDIFFERENCES
8/13/2019 Lecture Slides Judicata-slides
29/32
BREADTH &DEPTH
8/13/2019 Lecture Slides Judicata-slides
30/32
SUMMARY
Dont be afraid to be different
Approach frameworks and tools
skeptically
The best code is less code
8/13/2019 Lecture Slides Judicata-slides
31/32
RESOURCES
Law
A Jailhouse Lawyers Manual
The Oyez Project
Engineering
instagram-engineering.tumblr.com
thebuild.com
http://www.oyez.org/http://www3.law.columbia.edu/hrlr/ejlm.phphttp://www.oyez.org/http://www.oyez.org/http://www3.law.columbia.edu/hrlr/ejlm.phphttp://www3.law.columbia.edu/hrlr/ejlm.php8/13/2019 Lecture Slides Judicata-slides
32/32
JUD IC ATA
Adam Hahn ([email protected]
Blake Masters ([email protected])
mailto:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]