Roadmap for 1.8 and further

I was looking for an offical roadmap for 1.8 and other versions. Is there anywhere something like this, where i can check the ETA and planned features?

Checked also trac.elgg.org for this but I'm no coder, so i can't check sources and imagine what's coming :-(

  • Some thoughts after mentioning intuitiveness elsewhere (http://bit.ly/a0hKG6).

    After reading through a lot of Elgg documentation, and treating Elgg as both a designer and a newbie end-user, I feel that the roadmap should include the way things are done and perceived in Elgg. I've been a Dephi software developer for some years, and also construct CMS sites in Drupal and Wordpress. None of my previous experience has helped me 'get into' Elgg as quickly as I do with other packages, and rather than try to define why, I think perhaps just pointing out what seems confusing might help as some feedback. (I hope this comes across as constructive, because it's meant to be so).

    I tried out BuddyPress and Pligg for a couple of weeks, and looked at using Drupal for a social network (powerful, but too time-consuming). Then I found Elgg, and my first thoughts were great; members, groups, profiles, messaging, et., and easy to set up in its basic form. Once I got into it, however, I found it less than intuitive to use, as it doesn't appear to follow the usual access role based methods other systems do. That's fine, but it means that a lot of time has to be spent hunting for information. As a developer I don't mind that too much, but from an untrained user's point of view it's perhaps worse.

    Some basic questions don't appear to have been answered up-front with the Elgg system. For example, as new site creator (assuming with little technical experience), I may want to set up all new members so that they can create just one group until they're trusted. I also want them to see things in the same logical and easy to follow way as they move around the site. They expect pages, groups to join, to be able to make friends and keep in touch, etc. But what I see are different looking sections such as the river, the dashboard, et., and no way of simplifying how I lay everything out for an end-user, who basically expects sections as pages, with categories, groups and members. Think WordPress and BuddyPress, which don't quite meet social network needs in the end, but which are so very easy to set up and navigate. A system which says "You can do all these things, and in any way you like" sounds good off the bat, but falls down when doing something simple turns out to be daunting or not feasible.

    Elgg can do anything we wish, of course, but it seems a lot of hard work to make sense of it, and more hard work to make it simple for someone who just wants to do things on a social network in simple, logical steps. I think the '1.8 and beyond' roadmap, as well as including features and bug fixes, should include developer-product interaction and end-user-site interaction basics. In other words, I think the way Elgg does things needs looking at again, rather than carrying on as things are because most in the community are used to Elgg and how to do things with it, along with all the hours and hours of work required to change something which should be simple and intuitive.

  • @Michael - I couldn't agree more. Most of my users are Chinese and they use facebook or other social networking sites like the rest of us. However they come to my elgg site and they get stuck...how to do this, how does that work etc. etc. Suprising since elgg is cloesly linked to facebook et al in general approach i.e. it's a social network system.

    Now don't get me wrong, it's good to be different. No point bringing out a knock-off (www.xiaonei.com) but it's got to be simple to use as well. 

    For example, I have validationbyemail on, but when the users register and return to the homepage, they often don't notice the system message that comes up telling them to check their email. There is no real standard help tool for users. You can see this by the fact that we have a number of different plugins created to offer such services. e.g. faq, sitemap, help widget etc. 

    Half the time with new installs it's not the users who need the help but the admin! Not sure how to do this, how to do that etc. We've got a first-time events plugin made by ejucovy, what about a core module that is a first time (admin only) setup network walkthrough? 

    This software has the potential to blow Joomla (JomSocial), Drupal and the rest of them out of the water for good if we can get back to basics. User-friendly is paramount in this day and age.

  • @Trajan; yep, it is good to do something different, or at least try something different to see what neat things we find discover in the process. While Elgg is beautifully simple in letting new admins create a social network, it falls down in 'simple to understand and navigate' terms, and also in administrative control over what new members can do, and how new sites are presented to potential members.

    I think it's all about looking at process rather than content. Rather than looking at the interface and theming, enhancing the Admin and Profile areas, etc., the developers would do better looking afresh at how a new admin is going to set up site access for new members, and in particular, how members (and admins, come to that) perceive the site navigation. For example, most people new to a site expect sections as pages; information pages, category pages, profile pages, etc. Of course any look and feel can be applied with a lot of time and effort, but it should be intuitive out of the box.

    I don't think I'd be mistaken in thinking that a new admin wants to; create a front page, add some other sections, add a river/group and profile sections, etc. All with the same 'feel' to it, and without looking at top-bar menus and thinking, "Whut??" Then the very next thing is; what permissions will I give my new users, and what other roles might I want to give them, or allow them after a certain time, number of posts, etc. Ok, people can write plugins, and so far there isn't a free one that's of any use in this respect, but it should do these things by default.

    Having built some pretty complex things in other systems, I know from experience that nothing matches Drupal - it beats everything hands-down. The problem is that because it's so powerful and flexible, it takes a lot of time to build something and test it. It's not that it's too complex, just that anything you want to do has to be built with lots and lots of parts, just like a car engine. Elgg really does have an edge over other systems in that it's relatively easy to set up and use as a social network, but, not as a functioning and intuitive to use website in the eyes of most new visitors.

    I agree with what you say about 'getting back to basics' Trajan. That doesn't mean anything needs a huge re-write, but that the process new admins and users follow is easier, the layout more logical, and options relevant to the process/task in hand. And I have to add that I'm in love with Elgg already.

  • 1.5 to 1.6 required no changes for plugin developers (themes that overrode the html head broke due to a new version of jQuery - but themes should not need to override the head view).

    1.6 to 1.7 required developers to add action tokens to their forms. Developers should have known about this since 1.5. It was trivial to add the action tokens. The deprecated methods did not need to be changed. The procedure is deprecate in one version and do not remove until some future version so developers have time to update.

    1.8 has some significant changes in the views system. I'm not sure how much work this will cause plugin developers.

    Overall, we are caught with the problem of fixing issues that have been lingering in Elgg since 1.0 while trying to minimize the amount of work required by plugin developers. 1.5 to 1.7 has been a huge improvement in the quality of Elgg's core without requiring much from plugin developers.

  • I don't know if this already had been suggested somewhere and how difficult it is to implement it in the plugin repository.

    On the "Upload a new plugin" page is the "Elgg compatibility" item. Right now only one version can be selected. But even this version information is not shown in the description/info area of a plugin. It might help a lot and would also avoid the usual "Does it work with Elgg X.X.X?" questions, if this information would be shown.

    If it would be possible to select more than one version (but to select at least one version should be mandatory) during the upload of a plugin, it would be even better.

    There could be a small info table on the plugin pages with entries like "Compatible with Elgg 1.7.X | Elgg 1.6.X | Elgg 1.5.X | Older versions". Maybe Elgg 1.8 could already been included in the list. Just a simple "X" shown in the table for the corresponding Elgg version the plugin is compatible with would be enough.

    It won't help for older plugins that are no longer maintained. But maybe active plugin developers would update the information also for already available versions of their plugins.

    It would help a lot now for the transition to Elgg 1.7 due the possible adjustments necessary for Elgg 1.7 compatibility. And if Elgg 1.8 makes adjustments in the plugin code necessary again, it might help to introduce a version system for the plugin repository before its release to make the upgrade easier when it gets released in a few months.

  • @iionly; WordPress plugins have a 'Compatibility Box' on the right-hand side which does exactly as you say. Adding something along these lines will take work and time though.

    PS. Regarding the layout and navigation; I just downloaded 1.8 for a quick peek. It looks much simpler and easier to navigate - well done devs.

  • Yes, a certain amount of work and time will be necessary. How much exactly I can't guess. It seems to me that the basics are already available, i.e. in the plugin upload dialog is the question about compatibility. Only this information isn't show on the plugin pages. If all compatible versions could be selected, it would be even better. First of all, the plugin developer might already know best which versions a plugin support. Additionally, the developer could update the information if he gets feedback from users.

    Addtionally, if the compatibility information is not available, it doesn't save work and time. Each user has to test the compatibility to find out if an update to a newer Elgg version is possible. Then it's quite frustrating to find out that it doesn't work.

  • @Michael I'm liking the sounds of easier navigation in 1.8. At the moment, my users are having trouble trying to decide which page is their "home page" to navigate from. Is it the index, the dashboard, the profile...? Not to be like facebook (god forbid) but they manage to combine dashboard and profile together I think using tabs. Would make things easier perhaps. Anyway just thinking out loud.

  • @Trajan; yeah, 1.8 looks much better to me, and I'm sure will remove the confusion you mention for most users and site developers.

  • This has been a good discussion!  Here's a whirlwind of replies to some of the questions and comments.

    The core devs (ie, those with full SVN write access) are Dave Tosh, Pete Harris, Nick Whitt, Cash Costello, and me.  Many people/projects supply patches on trac--Keetup, Coldtrick, Evan Winslow, Hedgehogs, and Kevin Jardine to name a few.

    1.8 is an attempt to rectify the UI/UX problems in Elgg.  We're aiming for more consistency and ease of use throughout.  I'm glad there are some active eyes looking at 1.8-Sometimes we get so caught up in it it's hard to see flaws.  More eyes help to keep it objective!

    It is always a very hard balance to strike between ease of use and power features.  Some of the things @Michael mentioned are being incorporated into core plugins in 1.8.  Using plugins instead of pulling everything into core is part of Elgg's design philosophy to keep core trim.  1.8 includes improved plugin systems that enabled and then hide most of these helper plugins under an "advanced settings" section.

    Givers vs takers, thankfulness, and politeness is something every FOSS project deals with.  Elgg's community is still relatively young, so there will be growth.  Best advice is for everyone to be respectful, helpful, patient, and focused.  Many OSS projects ask their users to give back 1% of their time to build the community by helping someone else, adding something missing to the documentation, submitting a patch on trac, etc.  1%  isn't much, but if everyone does it, it will make HUGE differences.  There are quite a few members who give much more than that right now, and to them I'm very appreciative!  (Fun fact: 1% of 40 hours is 24 minutes.  If your organization uses Elgg, can you spare 24 minutes a week to document the solution to a problem you had?  To help a new user install Elgg?  To point a newbie to the FAQs in the wiki?  To make a patch for that annoying typo in the groups plugin?)

    Also a hard balance to strike is making progress but being backward compatible.  Sometimes decisions need to be made to deprecate features.  When possible, I make sure there's a wrapper in place to ease the transition.  Unfortunately, it's not always possible, and plugin authors must be expected to maintain their plugins.  In the next revision of the plugin repo there will be a way for authors to mark their plugin abandoned, so everyone knows not to expect any more updates.  The more serious plugin authors actively keep up with the upcoming version of Elgg to make sure their plugins are ready to go.

    There are plans to improve the plugin repo.  The first rewritten version that launched a few months ago was a combination of many different plugins and was used to solve an immediate need.  Cash has done some great work on it to bring it up to standards and has tightened up the code so we can start building on it.  We have plans, but there are only a few of us...please be patient.  (And for the coders out there: http://code.elgg.org/plugins/trunk/community_plugins Patches welcome :) )

Feedback and Planning

Feedback and Planning

Discussions about the past, present, and future of Elgg and this community site.