what is new in elgg 1.8?

15
Version 1.8 Kevin Jardine London Elgg Meetup 23 November 2011

Upload: london-elgg-meetup

Post on 30-Nov-2014

9.312 views

Category:

Technology


0 download

DESCRIPTION

Presentation given by Kevin Jardine at the London Elgg Meetup on November 23rd 2011

TRANSCRIPT

Page 1: What is new in elgg 1.8?

Version 1.8

Kevin JardineLondon Elgg Meetup23 November 2011

Page 2: What is new in elgg 1.8?

What is Elgg?

Frameworks Applications

Elgg ?

PHP CakeRuby on Rails

Zend Framework

Content management systems

WordPress

Drupal

Joomla

PhpBBPhoto gallery

Page 3: What is new in elgg 1.8?

Elgg: hybrid

not a framework - you can install it and it does a lot immediately without additional coding

a bit more specialised than a general CMS comes with a core set of plugins to create a

functioning niche social network certain functions (eg. friends) are built into

core but far more extendable than a specific

application like WordPress

Page 4: What is new in elgg 1.8?

Elgg's strengths

Rapid development Ben Werdmuller's original goal: “Elgg should

do nothing” Means that it can be extended in almost any

direction by plugins You need to do very little to set up a plugin

and then Elgg implements a large set of default behaviour

Implement non-default behaviour by overriding

Page 5: What is new in elgg 1.8?

Elgg 1.8

Major goal: make Elgg easier to theme Complete reworking of CSS and view system New user interface Many deprecated or altered functions Breaks most existing plugins in exchange for

more functionality Elgg does more automatically than ever before

Page 6: What is new in elgg 1.8?

Examples of default behaviour

elgg_view_entity() works (sort-of) with no additional coding - uses title, description and tags fields if available

elgg_list_entities() creates full listing pages complete with pagination

elgg_register_entity_type is all that is needed to make the title, description and tags fields of any entity searchable

Page 7: What is new in elgg 1.8?

Menu system

Elgg 1.8 introduces a standard set of Elgg navigation menus, moving navigation away from the previous sidebar focus

site, title, filter, entity, user, topbar, breadcrumbs, footer - many options!

simple tools to add to menus and (since this is Elgg) to over-ride existing menus and remove items

elgg_register_menu_item(), elgg_unregister_menu_item()

Page 8: What is new in elgg 1.8?
Page 9: What is new in elgg 1.8?

CSS

Goal: create a sitewide consistent look and feel

Previous monolithic Elgg CSS file now split into more than a dozen over-ridable component files

Many standard classes for navigation, buttons, form elements - more to learn!

Easier system to add page or plugin specific CSS files but these should be used sparingly

Page 10: What is new in elgg 1.8?

JavaScript

Elgg 1.8 introduces a JavaScript framework built on top of jQuery.

Includes Elgg-specific JS functions like elgg.echo() for language strings and elgg.get_site_url()

elgg_load_js() function for adding page or plugin-specific JS

namespace standards encourages strict separation between JS and

HTML generation

Page 11: What is new in elgg 1.8?

Form management

Elgg 1.8 begins to address one of Elgg's traditional weaknesses - form management

Sticky form system provides a standard way to repopulate forms on error, logout or token timeouts

standard elgg_view_form() system provides a framework for form actions and form over-rides, adds standard XSS tokens

Elgg still needs a more powerful form API in my view

Page 12: What is new in elgg 1.8?

Adding to Elgg's strengths

Elgg 1.8 further enhances Elgg's primary strength as a rapid prototyping and development system for niche social networks

Elgg's default functionality reduces development time and generates a site with consistent behaviour and consistent look and feel

Page 13: What is new in elgg 1.8?

Elgg is not for everyone

Elgg 1.8 introduces even more of an “Elgg way to do things”

You need to like or at least be willing to live with the way Elgg does things

over-riding Elgg's default behaviours can easily customise your site, BUT: over-rides can slow performance, increase development costs, introduce inconsistencies or bugs, and need to be upgraded every time you upgrade core Elgg

Page 14: What is new in elgg 1.8?

Elgg's fundamental issues

Plugins can have unpredictable interactions Some plugins are better written than others Like any complex software, core Elgg has

bugs The core developers are extremely responsive

to bug reports but are more likely to act on them if you supply a patch

Speed controversy - niche social networks typically prioritise a rich feature set over raw speed

Page 15: What is new in elgg 1.8?

Room for improvement Notifications are not scalable and are almost

guaranteed to white out large group forms. Elgg needs more rapid prototyping tools like a

sophisticated drag-and-drop form builder Elgg needs more themes (especially free

ones!) - hopefully the Elgg 1.8 release will help with this

jQuery UI should be fully supported to allow for richer user interfaces

roles and permissions