Going beyond Tiki Wiki CMS Groupware
Server, Web, Desktop and Mobile suite
Tiki Suite is a selection of Free and Open Source Software (FOSS) server, web, mobile and desktop apps with a concerted effort for greater interoperability and security, which is aimed at small & medium-sized organizations. The Tiki Suite is especially suited to decentralized and knowledge-centric organizations and offers the features that what 80% of the people use 80% of the time (collaboration, office productivity, publishing, etc.). Features include: Email + Wiki + CMS + Groupware + Commerce + Accounting + Document Management + CRM + Web conferencing + Desktop sharing + PBX VOIP Telephony + Instant messaging & presence + Video management + E-learning, etc.
Think of an organization you know of with a staff of 10 to 100
- When will 80% of them be using just Web Applications 80% of the time?
- When does the main unit of information becomes a web page instead of a file?
- Now? 1 year? 2 years? 5 years 10 years? Never?
"Skate to where the puck will be" --Wayne Gretzky
- It's a suite of applications around Tiki
- Suite means "next step" in French, so "next step for Tiki"
- But what is Tiki?
Software made the Wiki Way
Like Wikipedia but to build a web application instead of knowledge
Action log Alert Articles & Submissions Backlinks Backup Banner Blog Bookmark Browser Compatibility Cache Calendar Category Charts Chat Comment Communication Center Compression (gzip) Contact Address book Contact us Content template Contribution Cookie Copyright Custom Home (and Group Home Page) Date and Time Debugger Console Directory (of hyperlinks) Documentation (Help System) DogFood Drawing Dynamic Content Dynamic Variable External Authentication FAQ Featured links File Gallery Forum Friendship Network (Community) Game Gmap Google maps Group Help System Hotword HTML Page i18n (Multilingual, l10n, Babelfish) Image Gallery Install Integrator Interaction Inter-User Messages InterTiki Karma Live Support Login Lost edit protection Mail-in Maps Menu Meta Tag Mobile Module Multimedia MultiTiki MyTiki Newsletter Newsreader Notepad OS independence (Non-Linux, Windows/IIS, Mac, BSD) PDF Performance Speed / Load Permission Poll Profile Manager Quicktags Quiz Rating Registration RSS Score Search Engine Friendly Search Security Semantic links Shadowbox Shoutbox Site Identity Slideshow Smarty Template Smiley Spam protection (Antibot CATPCHA) Spreadsheet Stats Survey System log Tags Task Tell a Friend + Social Bookmarking TikiTests Theme Trackers TRIM User Administration User Files User Menu Watch WebHelp Webmail Wiki 3D Wiki History, page rename, etc Wiki plugins extends basic syntax Wiki syntax text area, parser, etc Wiki structure (book and table of content) Workflow, WYSIWYCA WYSIWYG XMLRPC
Over 1200 settings/options in the admin panel!
The Open Source Web application with the most built-in features. There are so many, we had to add a search engine!|
Other popular apps have a different model: small core + loads of functionality in 3rd party add-ons.
- No hunting around to find the best 3rd party module
- No needing to re-install 3rd party modules at every upgrade, hoping they all still work!
- Because, in Tiki, everything is built-in and developers collaborate on and extend features, instead of just cooperating around a core (when they are not just outright competing...). And upgrades are easy!
- Do you have two wiki pages for the same thing? No. Why would it be so for features?
- More later about the model, let's describe some features!
- Users can be in any number of groups
- Groups can be included in groups
- Registration system
- Over 200 permissions, which can be:
- System-wide (global)
- by item (object)
- by category (workspaces)
- Powerful wiki syntax
- Powerful version history and diff engine
- Book and table of content
- Email notification of changes
- Advanced plugins
- Advanced translation synchronization
- Create custom application
- Bug tracker, application forms, contact forms, etc.
- Can create reports in wiki pages
- Can link to other trackers
- 20+ field types
- text field, text area, checkbox, numeric field, drop down, radio buttons, user selector, date and time, image, category, email, auto-increment, Google Maps, computed field, attachment, etc.
- Several calendars
- Recurring events
- RSS feeds
- Distinct permissions
- Several blogs
- Tags & categories
- RSS feeds
- Can use wiki syntax
- Version history
- Can use wiki syntax in calls
- Can embed sheets & charts anywhere in Tiki
- You can currently watching it!
- Made from wiki pages
- Slide notes, for a second screen
- Uses S5 standard
- Threaded or flat forums
- Mailing list integration
- Can use wiki syntax
- File Attachment
- Email notification of replies
- Hierarchical galleries
- Categories for files
- Watch (notification of change by email)
- WebDAV support
- Vector drawing
- Shapes & lines
- Stored in SVG
- Select screen area
- Capture screenshot as PNG, JPG, etc.
- Record video
- Audio from microphone
- Pause during the recording
- Play before upload
- Post-recording editor to remove frames
- Pick splash frame
- Generates a .swf file
- Integrates jCapture applet
- Translated to 40+ languages
- Wiki has awesome i18n change tracking
- Wiki community
- Wiki way participation to the code
- All-in-one codebase
- Inherent synchronized releases
- Lots of features, but no duplication
- Scheduled releases (twice per year)
- LTS every 3 releases, with 5 year support
- Tons of features, without duplication, excellent code re-use and code review, more collaboration, tight integration, easy upgrades, excellent interaction between features, etc.
- Permits huge changes between versions because we don't have to worry about breaking 3rd party extensions.
But does bring challenges
- Huge code base to maintain.
- Admin panels
- hundreds of features
- with a total of over 1200 settings/options! (we had to add a search!)
- Learning curve: 1200+ pages of documentation
- What should be sensible defaults?
- Tiki: the Open Source Web App with most built-in features
- Tiki is PHP / MySQL / Zend Framework / Smarty / jQuery
This represents millions of organizations
- Multiple systems
- Diverse needs
- Desktop centric
- Difficult to do tech support
- Interoperability is very difficult
- Zawinski's Law of Software Envelopment (also known as Zawinski's Law) relates the pressure of popularity to the phenomenon of software bloat.
- "Every program attempts to expand until it can read mail. Those programs which cannot so expand are replaced by ones which can."
Coping with Zawinski's Law: When planes crash, do we blame gravity? We must cope with this! Even if you don't like a law, it doesn't mean it doesn't apply
- 37 signals in the book "Getting Real" : "Goodbye to bloat. Simple, focused software that does just what you need and nothing you don't"
- In an Community Open Source project, it'll be difficult to get consensus on what is "needed" and what is bloat.
- EVERYTHING IS DEEPLY INTERTWINGLED. In an important sense there are no "subjects" at all; there is only all knowledge, since the cross-connections among the myriad topics of this world simply cannot be divided up neatly.
- Hierarchical and sequential structures, especially popular since Gutenberg, are usually forced and artificial. Intertwingularity is not generally acknowledged—people keep pretending they can make things hierarchical, categorizable and sequential when they can't. --Ted Nelson
- Best of breed vs. suites vs. feature bloat
- While Ted Nelson coined "Intertwingularity" to express the "complexity of interrelations in human knowledge", it's the same problem for software. There will always be overlap.
- Apple controls both the hardware and the software which make it much simpler (drivers, UI, etc.)
- Every app claims interoperability (ex.: via open standards)
- It's very hard! Even within apps of a same publisher!
- Because of Zawinksi's law, intertwingularity and the progressive move to Web Applications, more & more apps and SaaS will offer "everything".
- "It's best to do one thing really, really well." –Google
- Google started just with search. And now?
- A number of companies are offering (or will one day offer) "manage your organization in the cloud"
- Google Apps, Zoho, NetSuite, Salesforce, Microsoft, SAP, IBM, Apple, Facebook, Oracle, Yahoo!, etc.
- Interoperability will remain a challenge.
- If you want to use FOSS, there are no readily available complete solutions. You need to make you own "cocktail" of applications.
- "In technology strategy, the second half of the chessboard is a phrase, coined by Ray Kurzweil, in reference to the point where an exponentially growing factor begins to have a significant economic impact on an organization's overall business strategy."
The more features / systems there are, the more interoperability is desired / needed and the complexity increases faster and faster. How can we keep the complexity level on first half of chessboard?
- "Make things as simple as possible, but not simpler" --Albert Einstein
- Use as few apps as possible, but as many as needed. Bonus points to all-in-one apps and libs that maintain the interoperability of their components (ex.: BigBlueButton, Zend Framework)
- As technology evolves, push things to the browser (ex.: spellchecker, HTML5, jQuery)
"In later discussions Torvalds explained the reasons for its choice: a fully modular architecture, like the one adopted for HURD, would have posed problems to a degree of complexity that it could have compromised the accomplishment of the project. To avoid such risks and keep the degree of complexity of the project as low as possible, Torvalds decided to design a monolith and he actually wrote all the architectural specs himself, avoiding all the problems related to collective projects (e.g. division of labor, coordination, communication). On the other hand, the HURD micro–kernel, a project in direct competition with the Linux kernel, has paid for the choice of pursuing a fully modular approach from the beginning in terms of the continuous delays that have plagued its development. Nowadays, it is still under active development and still lacks the stability and performance assured by the Linux kernel."
Source: Modular Design and the Development of Complex Artifacts:
Lessons from Free/Open Source Software by A. Narduzzo & A. Rossi
- Some content management frameworks offer a common platform with thousands of extensions, which you pick & tailor to your needs.
- Better than "best of breed approach", but still suffers from "Combinatorial explosion" for interoperability. Drupal: 7500 modules Joomla!: 7000 extensions Almost each install with have a different combination of modules and versions. In Tiki, the code base is identical, and only the preferences configuration differs.
- Distributions are helpful here. However, "Paradox of choice" for extensions (compatibility and abandoned modules, upgrade difficulties, etc) leads to a 2-3 year release cycle for the core, which is too slow.
"Not Invented Here (NIH) is a term used to describe persistent social, corporate or institutional culture that avoids using or buying already existing products, research or knowledge because of their external origins. It is normally used in a pejorative sense, and may be considered an anti-pattern." Source: Wikipedia
Half of the code in Tiki comes from other projects!
- BigBlueButton Web conferencing
- OPcache, XCache, Memcached and APC
- R (statistics & maths for any science)
- GD & ImageMagick
- Zotero (references)
- OpenLayers (OpenStreetMaps, MapServer and GoogleMaps)
- Cclite (community currency)
- Various authentication (phpBB, LDAP, Shibboleth, CAS, OpenID, etc.)
- Kaltura video platform
- 40+ examples at http://doc.tiki.org/Interoperability
- The good: Each component is fantastic and Tiki already integrates with many of them (BigBlueButton, Kaltura, etc.)
- The bad: It's still a manual process to assemble all the parts of the Suite
- The ugly: Only some parts have Tiki Suite have been deployed so far (testers needed!)
- This is a long-term strategic decision
- Sound architecture/technology?
- Compatible license?
- Compatible community model?
- Active community?
- Same programming languages as us?
- Is SaaS available?
- Will project doing well in 5-10 years?
- Best place to discover & analyze open source software
- Compare software by tag, check activity level, number of contributors, recent commits, code analysis
- Users add software to their "stacks"
Backed by the ClearFoundation
- Firewall, VPN, etc.
- License: By component, all OSI
- Address book
- License: AGPL
- Record & playback
- Flash front end. Composed of a dozen Open Source components (Asterisk/Freeswitch, Red5, Java, Tomcat, etc.). Android client
- Deployed as an Ubuntu Server appliance.
- License: LGPL
- Integrated with Tiki
- HTML5 version in development, supported by Mozilla
- Instance Messaging
- XMPP & SIP
- License: AGPL
- Full-featured platform
- Recording from webcam
- Handles transcoding
- HTML5 player
- Ubuntu Server Appliance
- License: AGPL
- SaaS available.
- Basic integration with Tiki (SSO)
- One click-login
- Offline version (one HTML/JS file!)
- All encryption is done client-side
- zero-knowledge web application
- Free SaaS or self-hosted
- Missing group management
- PHP/MySQL Web analytics GPL
- Easy to integrate, nice feature set, nice UI.
- There is a mobile client
Open Web Analytics is an alternative (PHP/MySQL) GPL
- Natural Language Processing (More Like This, etc.)
- Super fast & scalable
- Easy to deploy
- Already integrated with Tiki
- Any modern Web browser
- Take advantage of HTML5 anytime possible
- Used to connect to BigblueButton, Kaltura, Tiki, etc.
- Offline email, etc.
- Connect to OpenLDAP (which is part of ClearOS) for the address book.
- Platforms: Windows, Mac, Linux
- FTP, SFTP, WebDAV for Mac & Windows
- WebDAV client for double-click access to files stored in Tiki
Jitsi (previously SIP Communicator) is a cross-platform VOIP, videoconference, desktop sharing and chat client.
Protocols supported include SIP, XMPP/Google Talk/Jabber/Facebook chat, AIM/ICQ, Windows Live, Yahoo! Messenger and Bonjour.
Other features include: Call recording, Call & chat encryption, Noise suppression, Echo cancellation, File transfer, multi-user chat, Desktop streaming, Presence, Conference calls, Integration with Microsoft Outlook and Apple Address Book, Support for LDAP directories, Support for Google Contacts, On-line provisioning, Systray notifications, IPv6 support, Spell checker and many more.
Will also act as System tray notifier (receive alerts, etc.)
Platforms: Windows, Mac, Linux, Android
- Support for mobile browsers (via jQuery Mobile for Tiki and ClearOS features. Next version: Bootstrap)
- BigBlueButton client for Android (HTML5 in the works)
- Piwik client for Android and iOs
- WebODF will permits minor edits of ODF documents
- Any missing features will progressively be added
- All major components are picked. Get communities collaborating.
- Compatibility challenges are discovered (workaround, fix, etc.) Ex.: Piwik & Clipperz conflict!
- First a recipe, then a scripted install and eventually a Tiki Suite Appliance (replace our current live Tiki CD)
Tiki Suite: suite.tiki.org
The Tiki model: tiki.org/Model
This is a good example: http://ueb.vhir.org/show:2012-05-04%20Xavier%20de%20Pedro%20Tiki%20Seminar#s3
- Add more images to this slideshow
- Videos should float right like images