SlideShare a Scribd company logo
1 of 24
LEGAL DOCUMENTS 2.0 LEGAL DOCUMENTS 2.0 by Peng Zuo by PENG ZUO SERAVIA.COM December 19,  2009 Beware of bugs in the above code;  I have only proved it correct, not tried it.   - Donald Knuth
LEGAL DOCUMENTS 2.0 by Peng Zuo THE LAWYER
LEGAL CONTRACTS LEGAL DOCUMENTS 2.0 by Peng Zuo http://seravia.com/research/company-setup/legal-contracts-2-0 Paper Digital
LaTeX & TeX Document markup language for the TeX typesetting program TeX created by Don Knuth High quality typesetting Standard for technical fields “ Cross-browser compatibility” TeX on version  3.1415926 Free LEGAL DOCUMENTS 2.0 by Peng Zuo
LaTeX PARTIALS Similar to HTML partials Lawyers create the partial templates System combines TeX files and evaluates all variables Generate pdf from final TeX file LEGAL DOCUMENTS 2.0 by Peng Zuo
LaTeX PARTIALS tex document: ocumentclass[12pt]{article} sepackage{amsmath} itle{aTeX} ate{} egin{document} aketitle  [[partial1]] [[partial2]] nd{document} partial1: aTeX{} is a [[x]] for the eX{}  typesetting program. It offers programmable desktop publishing  features and extensive facilities for automating most aspects of  typesetting and desktop publishing, including numbering and  cross-referencing, tables and figures, page layout, bibliographies,  and much more. aTeX{} was originally written in [[y]] by [[z]]  and has become the dominant method for using eX; few  people write in plain eX{} anymore. The current version is  aTeXe. partial2: egin{align} E &= mc^2   m &= rac{m_0}{qrt{1-rac{v^2}{c^2}}} nd{align} variables: x = "document preparation system" y = 1984 z = "Leslie Lamport" LEGAL DOCUMENTS 2.0 by Peng Zuo
RTeX http://rtex.rubyforge.org RTeX::Document.new(latex_content,{:preprocessor => 'pdflatex', :preprocess => true, :processor => 'pdflatex'} LEGAL DOCUMENTS 2.0 by Peng Zuo
DELAYED BackgroundRB Nanite Delayed Job LEGAL DOCUMENTS 2.0 by Peng Zuo
LEGAL DOCUMENTS 2.0 by Peng Zuo 然后 ?
DIGITAL SIGNATURES OpenSSL (openssl.org) Signer Authentication Document Authentication http://seravia.com/research/technology/digital-signatures LEGAL DOCUMENTS 2.0 by Peng Zuo The Problem
DIGITAL SIGNATURES LEGAL DOCUMENTS 2.0 by Peng Zuo
LEGAL DOCUMENTS 2.0 by Peng Zuo 有些时候 ...
LEGAL DOCUMENTS 2.0 by Peng Zuo
LEGAL DOCUMENTS 2.0 by Peng Zuo SEND HELP
iText Open source library for creating and manipulating pdf files Java LEGAL DOCUMENTS 2.0 by Peng Zuo
iText LEGAL DOCUMENTS 2.0 by Peng Zuo Before Filled After Filled
RJB – RUBY JAVA BRIDGE Ruby Java LEGAL DOCUMENTS 2.0 by Peng Zuo ?
RJB – RUBY JAVA BRIDGE Ruby Java LEGAL DOCUMENTS 2.0 by Peng Zuo 必须把所有代码运行在 JRuby 上
RJB – RUBY JAVA BRIDGE LEGAL DOCUMENTS 2.0 by Peng Zuo Ruby Java 在 Ruby 代码里直接调用 Java Library RJB
RJB – RUBY JAVA BRIDGE LEGAL DOCUMENTS 2.0 by Peng Zuo require 'rjb' str = Rjb::import('java.lang.String') instance = str.new "test" instance.toString #=> "test"
RJB – RUBY JAVA BRIDGE LEGAL DOCUMENTS 2.0 by Peng Zuo load_path = File.join(RAILS_ROOT,"iText-2.1.7.jar") Rjb::load load_path Rjb::import ... #import java package  Have “fun” with iText!
LEGAL DOCUMENTS 2.0 by Peng Zuo STORAGE Simple Secure Speedy S3 Persistence is always a problem.
PAPERCLIP LEGAL DOCUMENTS 2.0 by Peng Zuo http://github.com/thoughtbot/paperclip PAPERCLIP
SUMMARY LEGAL DOCUMENTS 2.0 by Peng Zuo pdf (rtex, iText, rjb, paperclip, s3)  Digital signatures (openSSL) delayed_job, fax TeX/LaTeX

More Related Content

Similar to Legal contracts 2.0

Hyperledger Fabric and Tools
Hyperledger Fabric and ToolsHyperledger Fabric and Tools
Hyperledger Fabric and ToolsRihusoft
 
Sandboxing WebKitGTK (GUADEC 2019)
Sandboxing WebKitGTK (GUADEC 2019)Sandboxing WebKitGTK (GUADEC 2019)
Sandboxing WebKitGTK (GUADEC 2019)Igalia
 
Connect Everything with NATS - Cloud Expo Europe
Connect Everything with NATS - Cloud Expo EuropeConnect Everything with NATS - Cloud Expo Europe
Connect Everything with NATS - Cloud Expo Europewallyqs
 
Training thethings.iO
Training thethings.iOTraining thethings.iO
Training thethings.iOMarc Pous
 
Using Node-RED for building IoT workflows
Using Node-RED for building IoT workflowsUsing Node-RED for building IoT workflows
Using Node-RED for building IoT workflowsAniruddha Chakrabarti
 
maXbox Arduino Tutorial
maXbox Arduino TutorialmaXbox Arduino Tutorial
maXbox Arduino TutorialMax Kleiner
 
Monitoring Cloud Native Applications with Prometheus
Monitoring Cloud Native Applications with PrometheusMonitoring Cloud Native Applications with Prometheus
Monitoring Cloud Native Applications with PrometheusJacopo Nardiello
 
Arduino LED maXbox starter18_3
Arduino LED maXbox starter18_3Arduino LED maXbox starter18_3
Arduino LED maXbox starter18_3Max Kleiner
 
Kautilya: Teensy beyond shell
Kautilya: Teensy beyond shellKautilya: Teensy beyond shell
Kautilya: Teensy beyond shellNikhil Mittal
 
Call your key to phone all
Call your key to phone allCall your key to phone all
Call your key to phone allGerard Fuguet
 
Distributing UI Libraries: in a post Web-Component world
Distributing UI Libraries: in a post Web-Component worldDistributing UI Libraries: in a post Web-Component world
Distributing UI Libraries: in a post Web-Component worldRachael L Moore
 
Building dsl using groovy
Building dsl using groovyBuilding dsl using groovy
Building dsl using groovyPuneet Behl
 
Presentazione resin.io
Presentazione resin.ioPresentazione resin.io
Presentazione resin.ioGianluca Leo
 
maXbox starter30 Web of Things
maXbox starter30 Web of ThingsmaXbox starter30 Web of Things
maXbox starter30 Web of ThingsMax Kleiner
 
Git for a newbie
Git for a newbieGit for a newbie
Git for a newbieAnuj Sharma
 
Chicago Docker Meetup Presentation - Mediafly
Chicago Docker Meetup Presentation - MediaflyChicago Docker Meetup Presentation - Mediafly
Chicago Docker Meetup Presentation - MediaflyMediafly
 

Similar to Legal contracts 2.0 (20)

Hyperledger Fabric and Tools
Hyperledger Fabric and ToolsHyperledger Fabric and Tools
Hyperledger Fabric and Tools
 
Sandboxing WebKitGTK (GUADEC 2019)
Sandboxing WebKitGTK (GUADEC 2019)Sandboxing WebKitGTK (GUADEC 2019)
Sandboxing WebKitGTK (GUADEC 2019)
 
Connect Everything with NATS - Cloud Expo Europe
Connect Everything with NATS - Cloud Expo EuropeConnect Everything with NATS - Cloud Expo Europe
Connect Everything with NATS - Cloud Expo Europe
 
Training thethings.iO
Training thethings.iOTraining thethings.iO
Training thethings.iO
 
Using Node-RED for building IoT workflows
Using Node-RED for building IoT workflowsUsing Node-RED for building IoT workflows
Using Node-RED for building IoT workflows
 
maXbox Arduino Tutorial
maXbox Arduino TutorialmaXbox Arduino Tutorial
maXbox Arduino Tutorial
 
Monitoring Cloud Native Applications with Prometheus
Monitoring Cloud Native Applications with PrometheusMonitoring Cloud Native Applications with Prometheus
Monitoring Cloud Native Applications with Prometheus
 
Arduino LED maXbox starter18_3
Arduino LED maXbox starter18_3Arduino LED maXbox starter18_3
Arduino LED maXbox starter18_3
 
Hyperledger
HyperledgerHyperledger
Hyperledger
 
Kautilya: Teensy beyond shell
Kautilya: Teensy beyond shellKautilya: Teensy beyond shell
Kautilya: Teensy beyond shell
 
Call your key to phone all
Call your key to phone allCall your key to phone all
Call your key to phone all
 
Alfresco Integration
Alfresco  IntegrationAlfresco  Integration
Alfresco Integration
 
Distributing UI Libraries: in a post Web-Component world
Distributing UI Libraries: in a post Web-Component worldDistributing UI Libraries: in a post Web-Component world
Distributing UI Libraries: in a post Web-Component world
 
Lobodms Integration
Lobodms IntegrationLobodms Integration
Lobodms Integration
 
Building dsl using groovy
Building dsl using groovyBuilding dsl using groovy
Building dsl using groovy
 
Advances in Open Source Password Cracking
Advances in Open Source Password CrackingAdvances in Open Source Password Cracking
Advances in Open Source Password Cracking
 
Presentazione resin.io
Presentazione resin.ioPresentazione resin.io
Presentazione resin.io
 
maXbox starter30 Web of Things
maXbox starter30 Web of ThingsmaXbox starter30 Web of Things
maXbox starter30 Web of Things
 
Git for a newbie
Git for a newbieGit for a newbie
Git for a newbie
 
Chicago Docker Meetup Presentation - Mediafly
Chicago Docker Meetup Presentation - MediaflyChicago Docker Meetup Presentation - Mediafly
Chicago Docker Meetup Presentation - Mediafly
 

More from shen liu

A~Z Of Accelerator
A~Z Of AcceleratorA~Z Of Accelerator
A~Z Of Acceleratorshen liu
 
Jquery In Rails
Jquery In RailsJquery In Rails
Jquery In Railsshen liu
 
Rails + JCR
Rails + JCRRails + JCR
Rails + JCRshen liu
 
危机模拟
危机模拟危机模拟
危机模拟shen liu
 
技术周报
技术周报技术周报
技术周报shen liu
 
Hong Qiangning in QConBeijing
Hong Qiangning in QConBeijingHong Qiangning in QConBeijing
Hong Qiangning in QConBeijingshen liu
 
InfoQ China Intro
InfoQ  China  IntroInfoQ  China  Intro
InfoQ China Introshen liu
 
QCon Beijing 2009 Intro
QCon Beijing 2009 IntroQCon Beijing 2009 Intro
QCon Beijing 2009 Introshen liu
 

More from shen liu (10)

A~Z Of Accelerator
A~Z Of AcceleratorA~Z Of Accelerator
A~Z Of Accelerator
 
Jquery In Rails
Jquery In RailsJquery In Rails
Jquery In Rails
 
Rack
RackRack
Rack
 
Rails + JCR
Rails + JCRRails + JCR
Rails + JCR
 
危机模拟
危机模拟危机模拟
危机模拟
 
决策
决策决策
决策
 
技术周报
技术周报技术周报
技术周报
 
Hong Qiangning in QConBeijing
Hong Qiangning in QConBeijingHong Qiangning in QConBeijing
Hong Qiangning in QConBeijing
 
InfoQ China Intro
InfoQ  China  IntroInfoQ  China  Intro
InfoQ China Intro
 
QCon Beijing 2009 Intro
QCon Beijing 2009 IntroQCon Beijing 2009 Intro
QCon Beijing 2009 Intro
 

Recently uploaded

Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 

Recently uploaded (20)

Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 

Legal contracts 2.0

  • 1. LEGAL DOCUMENTS 2.0 LEGAL DOCUMENTS 2.0 by Peng Zuo by PENG ZUO SERAVIA.COM December 19, 2009 Beware of bugs in the above code; I have only proved it correct, not tried it. - Donald Knuth
  • 2. LEGAL DOCUMENTS 2.0 by Peng Zuo THE LAWYER
  • 3. LEGAL CONTRACTS LEGAL DOCUMENTS 2.0 by Peng Zuo http://seravia.com/research/company-setup/legal-contracts-2-0 Paper Digital
  • 4. LaTeX & TeX Document markup language for the TeX typesetting program TeX created by Don Knuth High quality typesetting Standard for technical fields “ Cross-browser compatibility” TeX on version 3.1415926 Free LEGAL DOCUMENTS 2.0 by Peng Zuo
  • 5. LaTeX PARTIALS Similar to HTML partials Lawyers create the partial templates System combines TeX files and evaluates all variables Generate pdf from final TeX file LEGAL DOCUMENTS 2.0 by Peng Zuo
  • 6. LaTeX PARTIALS tex document: ocumentclass[12pt]{article} sepackage{amsmath} itle{aTeX} ate{} egin{document} aketitle [[partial1]] [[partial2]] nd{document} partial1: aTeX{} is a [[x]] for the eX{} typesetting program. It offers programmable desktop publishing features and extensive facilities for automating most aspects of typesetting and desktop publishing, including numbering and cross-referencing, tables and figures, page layout, bibliographies, and much more. aTeX{} was originally written in [[y]] by [[z]] and has become the dominant method for using eX; few people write in plain eX{} anymore. The current version is aTeXe. partial2: egin{align} E &= mc^2 m &= rac{m_0}{qrt{1-rac{v^2}{c^2}}} nd{align} variables: x = "document preparation system" y = 1984 z = "Leslie Lamport" LEGAL DOCUMENTS 2.0 by Peng Zuo
  • 7. RTeX http://rtex.rubyforge.org RTeX::Document.new(latex_content,{:preprocessor => 'pdflatex', :preprocess => true, :processor => 'pdflatex'} LEGAL DOCUMENTS 2.0 by Peng Zuo
  • 8. DELAYED BackgroundRB Nanite Delayed Job LEGAL DOCUMENTS 2.0 by Peng Zuo
  • 9. LEGAL DOCUMENTS 2.0 by Peng Zuo 然后 ?
  • 10. DIGITAL SIGNATURES OpenSSL (openssl.org) Signer Authentication Document Authentication http://seravia.com/research/technology/digital-signatures LEGAL DOCUMENTS 2.0 by Peng Zuo The Problem
  • 11. DIGITAL SIGNATURES LEGAL DOCUMENTS 2.0 by Peng Zuo
  • 12. LEGAL DOCUMENTS 2.0 by Peng Zuo 有些时候 ...
  • 13. LEGAL DOCUMENTS 2.0 by Peng Zuo
  • 14. LEGAL DOCUMENTS 2.0 by Peng Zuo SEND HELP
  • 15. iText Open source library for creating and manipulating pdf files Java LEGAL DOCUMENTS 2.0 by Peng Zuo
  • 16. iText LEGAL DOCUMENTS 2.0 by Peng Zuo Before Filled After Filled
  • 17. RJB – RUBY JAVA BRIDGE Ruby Java LEGAL DOCUMENTS 2.0 by Peng Zuo ?
  • 18. RJB – RUBY JAVA BRIDGE Ruby Java LEGAL DOCUMENTS 2.0 by Peng Zuo 必须把所有代码运行在 JRuby 上
  • 19. RJB – RUBY JAVA BRIDGE LEGAL DOCUMENTS 2.0 by Peng Zuo Ruby Java 在 Ruby 代码里直接调用 Java Library RJB
  • 20. RJB – RUBY JAVA BRIDGE LEGAL DOCUMENTS 2.0 by Peng Zuo require 'rjb' str = Rjb::import('java.lang.String') instance = str.new "test" instance.toString #=> "test"
  • 21. RJB – RUBY JAVA BRIDGE LEGAL DOCUMENTS 2.0 by Peng Zuo load_path = File.join(RAILS_ROOT,"iText-2.1.7.jar") Rjb::load load_path Rjb::import ... #import java package Have “fun” with iText!
  • 22. LEGAL DOCUMENTS 2.0 by Peng Zuo STORAGE Simple Secure Speedy S3 Persistence is always a problem.
  • 23. PAPERCLIP LEGAL DOCUMENTS 2.0 by Peng Zuo http://github.com/thoughtbot/paperclip PAPERCLIP
  • 24. SUMMARY LEGAL DOCUMENTS 2.0 by Peng Zuo pdf (rtex, iText, rjb, paperclip, s3) Digital signatures (openSSL) delayed_job, fax TeX/LaTeX