21
Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University of Cambridge Sakai3 lead Apache Shindig PPMC Member Apache Sling PMC Member

Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

Sakai - OpenSource consumer.

How Sakai works with Open Source projects

Dr Ian BostonCTO, Caret, University of Cambridge

Sakai3 leadApache Shindig PPMC Member

Apache Sling PMC Member

Page 2: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

What is Sakai ?

CommunityDevelopersEducatorsResearchers

Higher EdProduction VLE/VREGlobal, 161 installations

Scalable, 100 - 200K users

Open SourceSakai Foundation (501c)ECL2 (Apache2 like)90% Java

50 - 60 core committers

Page 3: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

History

2004 2009

v1.0 v2.6v1.5 v2.0 v2.4

1.8m loc

Page 4: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

Libraries and IP

GovernanceLicense Clearance

Committer ClearanceCCLA

CLALibrary Selection

v2 Libraries

SpringHibernateApache CommonsApache Tomcat

Page 5: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

Lessons for V2

Code is not the only thing that matters

Someone else has probably written a better implementation already

Great CodeBad Community

Bad CodeGreat Community

Page 6: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

Sakai 3

Only own what we have to

Write less, keep it simple

Select on community, license then code

Engage, contribute, influence

Page 7: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

OpenSocialCampfire Announcement 11/2007

1,000s of DevelopersApp PortabilityFantastic UX

800M users315M app installs

1st Birthday 05/2009

Page 8: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

Sakai Early 2008

Academic Social Networking

Institutional Technical

Federation/Integration

Gen Y/Z

Web NGUX Driven

App Community

Page 9: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

Apache ShindigOpenSocial RI Incubator

Code donated to the IncubatorGrowing Community

Mainly Google

In production

No ContainerUnclear SPI

Page 10: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

Engage

Read and UnderstandAsk stupid questions, listenPatch, bug fix, make mistakes

Trust Read and UnderstandAsk questions, listen

Patch, bug fix, make mistakes

Commit to taking eternal responsibility for every line of code you commit.

Page 11: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

First Contact

Lurkbut not for long

First message“Hi, I am a newbee to Jackrabbit. How

do I ..... “

First Patch Spelling mistake?

Page 12: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

Community Frustrations

“The code is ugly an broken, I wouldn't do it like that”

“It doesn't address my use cases”

“My patches keep breaking and they won’t take them.”

explain, educate, help, support, joke, show humility, no

arrogance, present evidence, move on

Page 13: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

Committer Pain

“I don’t have time to read 10 paragraphs and try and work out what is being said”

“I have a life, I volunteered”

“Not that question yet again”

“I cant take responsibility for THAT! (WTF)”

explain, educate, help, support, joke, show humility, no

arrogance, present evidence, move on

Page 14: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

Apache Invitation

• Trust builds, volume of patches, contributions

• Private PMC Vote or PPMC + IPMC

• Invite, Accept

• Legals

• Commit access

Page 15: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

What then.

• Commit what you like - No

• Nothing changes except your name appears on “svn blame” - Yes

• When the build breaks at the weekend... you feel like you should fix it - Yes

Page 16: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

Apache SlingEnterprise Content Management

Web app framework

The name "Sling" has been proposed by Roy Fielding who explained it like this:

[The name is] Biblical in nature. The story of David: the weapon he uses to slay the giant Goliath is a sling. Hence, our David's [David Nuescheler, CTO of Day Software] favorite weapon.

Page 17: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

Educational Content Management

50% Enterprise Content Management Use Cases50% Educational Use Cases

everyone is an editorgroups

educational apps integration

Sakai 3

50% Sling50% Sakai

UI/UX

Page 18: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

Architecture

logging

Http

config

authn authz JPA

locking cache

personal public presence

resource

event

messaging searchfriends

JR-API

json mime

cron engine httpauth

openid formauth

JR-access JR-user webdav

servlets resolver scripting

Ruby Python

ESPJR-Client Scala

Shindig

Apache Jackrabbit

OSGi/ Apache Felix

JMS

Email

SMS

XMPP

IMAP

POP3

VersionManager

PersistenceManager

IMS CC ICOM Rules Workflow

IMS LIS

LDAP

HTTP REST + JSON

Caldav

Page 19: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

Basic Architecture

HTML/JSUI

HTTP REST Server

HTTP JSON

UX LeadUI Developer friendly

Scalablelightweight

Page 20: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

App Development

UX Research UX DesignUI

DevelopmentServer

Development

Page 21: Sakai - OpenSource consumer.oss-watch.ac.uk/events/2009-10-09/ianboston.pdf · Sakai - OpenSource consumer. How Sakai works with Open Source projects Dr Ian Boston CTO, Caret, University

UI DesignScreens designed as wireframes with interactions.

Implemented as HTML

Integrated into framework

UX Designer, UI Designer

UI Designer, UI Developer

UI Designer, UI Developer

Driving REST API Specification