damn, the new generation kids are getting ipads in highschool!
Post on 21-Oct-2014
282 views
DESCRIPTION
A Google App Engine platform connected to a native iPad solution distributing books and content, presented at the iText Summit 2012 by Kars Veling, Owner Q42 Internet BV.TRANSCRIPT
Damnthe new generation students are getting
iPads in high school
iText, Google App Engine, iPads, Html5
q42.nl Agenda
•About Q42
•The Case
•Demo 1
•Technical Architecture
•Demo 2
•Next
!2
q42.nl Q42
Software Engineers &
Interaction Engineers (40+)
wanting to
make the user kick ass!
q42.nl Q42 Office
q42.nl The Case
Schooltas: Let students learn more efficient
• personal device: a device for every student
• in a classroom
• at home
• traveling
• teacher
• digiboards
!5
q42.nl Numbers2011 Version 1.0, 1.1, 1.2
2012 Version 2.0, 2.1, ...
2000 daily users, 26 pilot schools
20.000+ personal notes
target audience: 900.000 students in High Schools
1.000’s books (for now)
!6
q42.nl Tech stack
•Play framework 1.2.4
•Google App Engine
•iText
•iOS native + Html5 clients
!7
q42.nl Demo
•Demotime
!8
q42.nl Technical Stuff
•Platform
•Datamodel
•Setup
•Learnings
!9
q42.nl Platform
!10
Books: PDF’s Enrichments: a lot
GAE Platform iPad delivery (DRM)
Html 5 delivery (rendering) (tablets, laptop) ... (rest)
1. Encryption
2. Rendering
4. FT search
...
3. CDN
Delivery
q42.nl Data
!11
Book
Bundle
Encrypted Book
Split
iText encryption jobs
iText Rendering jobs
Task Queue’s
Backends
Downloads
q42.nl GAE
•We deploy every day.
!12
q42.nl GAE & iText
•Backends & Taskqueue’s
•BlobStore
•iText encryption tasks
!13
q42.nl GAE & iText•Learnings
•encryption is fast
•in-memory: we need RAM
•BlobStore unreliable and slow
•CDN delivery: oh yeah
•TaskQueue’s to the rescue
•B8’s dynamically (4.8Ghz, 1Gb ram); :)
•Backends: max 10Gb RAM in total
•Play Framework: slow bootup (10 .. 15 s)
•Objectify Play Framework Module: don’t. Use Siena
!14
q42.nl Demo
•Demotime
!15
q42.nl Next
•PDF fulltext search
•Interactive Document Format
!16
q42.nl GAE
•Focus on what you want to do
•Code.
!17
q42.nl GAE
• Taskqueue’s
• Backends
• Bigtable
• Admin
• Deploys
• Traffic Splitting
• Scale up & down
• FT logfiles
• Image Server & CDN
• Cost
• Global latency
• BlobStore, GStore?
!18
q42.nl Tech startingpoints
•http://www.playframework.org
•http://code.google.com/appengine
•@q42 / q42.nl
•@schooltasapp
•schooltas.net
•@karsveling
!19