lecture slides judicata-slides

Upload: surya

Post on 04-Jun-2018

243 views

Category:

Documents


0 download

TRANSCRIPT

  • 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/overview
  • 8/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.php
  • 8/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]