Date post: | 22-Jun-2015 |
Category: |
Documents |
Upload: | guido-stevens |
View: | 2,335 times |
Download: | 0 times |
Plone Open Garden 2013
PloneSocial Roadmap
Guido Stevens
gyst #plone@GuidoStevens Twitter
PloneSocial Roadmap
● Why
– Social Business
● What
– Demo
● How
– Performance
– Philosophy
● Now
– Digital Workplace Vision
– Social Intranet Baseline
Social Business
Systems of Record →
● documents →● procedures →● top-down hierarchy →
Systems of Engagement
● people
● knowledge flow
● grassroots networking
“We estimate that social technologies can raise the
productivity of interaction workers by 20 to 25% if they
become fully networked enterprises”
McKinsey Global Institute
PloneSocial Features
● Microblog status updates
● Activity stream view + portlet
– microblog status updates
– content creation
– plone.app.discussion comments
● Social networking
– personal profile with follow/unfollow actions
– followers/following social graph views
– activity stream filtered by “following”
Demo
plonesocial.*
● plonesocial.suite
– one-click installer
– integrates low-level building blocks:
● plonesocial.microblog
● plonesocial.activitystream
● plonesocial.network
planned:
– plonesocial.content: follow / tagging
– plonesocial.space: community / teamspace
ZODB Performance
● Commit collisions
– out of the box: 10-20 commits/sec
● Drop some ACID
– batched commits once per second● simple threading.Timer() without plone.app.async
– skip ZCatalog indexing● provide own indexes on time, author and tags
● Writes > 1000 status updates /second● read performance scales horizontally, not an issue
Leverage Upstream Performance
● ZODB BTrees
– C optimized dictionary interface
● *BTree.intersection()
– fast Set operations
– filter by: tag, author, following
– killer feature for personalization
● itertools.chain()
– merge microblog + ZCatalog results
PloneSocial Philosophy
● Native Plone
● Full social experience
● Pre-integrated one-click install
● Flexible components
● Scale down
● Scale up
Why not jarncollective.xmpp.*?
● Protocol constraints
– XMPP is a chat protocol, not a social networking API
– no raw datastore access, no logic customization● Plone XMPP Erlang logic Mnesia datastore→ → →
● Loads of dependencies
– Twisted Wokkel, not very actively maintained
– Requires dozens of XMPP protocol extensions● only supported by ejabberd
– Complex deployments & debugging
● Maintenance / community risks
– Too many moving parts
– Too few experts
Digital Workplace Vision
SLATES Enterprise 2.0 Affordances ● Signals
● Links
● Authoring
● Tags
● Extensions
● SearchS
Evolve or Die
Web 1.0 →
● publish + read
● content management
● document tree
● place-centric
● global state
● top-down control
Plone Core
Web 2.0 →● read/write
● social networking
● activity stream
● time-centric
● personal perspectives
● bottom-up sharing
Plone Social
Web 3.0
● big data
● semantic web
● digital workplace
● meaning-centric
● context adaptive
● machine learning
__future__
PloneSocial Priorities
● Social Spaces
– Project Spaces
– Community Spaces
– Local microblogs
● Social Content
– Tagging
– Follow Content
– Like, Share, Save
● User Interface
– “Wow!” User Experience
– Consistent Integration
● Developer Interface
– Activitystream Adapters
– Sane Base Theme
Social Intranet/Extranet Baseline
● Benefits:
– Consolidate Efforts
– Fast Demo
– Easy Customization
● Minimize Dependencies:
– Avoid Archetypes
– Avoid XMPP, AMQP
– Avoid external DB's
● Features:
– Personal Social Dashboard
– Streams, Microblog
– Network, Profiles
– Projects, Communities
Not Invented Here
Not Invented Here
Re-invented Here
Let's Collaborate!
● Collaborate on Social Intranet/Extranet Baseline
– Solid pre-integrated feature set
– Good UX, customize via p.a.theming
● Compete as Plone eco-system against other systems
– Reduce demo & devel costs
– Reduce QA & maintenance risks
– Increase Plone credibility & visibility in social business space
● Maintain other differentiators
– Geography, Delivery Process, Hosting, Support
Use the source, Luke ...
● Installation
– pypi: plonesocial.suite
● Customization
– It's all just Plone
● Extension
– https://github.com/cosent● you'll find all the plonesocial.* packages there● GPL licensed
… or work with us!
● User Research
– to drive design of a cohesive social experience
● Interaction Design
– to drive development of an integrated feature set
● PloneSocial Development
– to leverage PloneSocial in custom development
– and at the same time improve PloneSocial baseline
www.cosent.nl