This project is read-only.

Barrier to Entry with Orchard

Topics: General
Jun 11, 2013 at 3:38 AM

Now that we've embarked on a real-live project with Orchard, I'd like to offer up some comments for improvements. I won't talk about the features compared with other CMSs; I don't know them that well, but focus on operations and barriers to entry.

The barrier to entry to using Orchard, even with 1.7, is still quite high (i.e. the learning curve is very steep). I recently reported several issues with import/export, a key feature for team development. No disrespect to the developer of this module, but it's clear that he doesn't use it extensively on a day-to-day basis.

Now I realise that writing import/export modules, improving documentation, providing examples, etc. isn't glamorous work, but Orchard has one huge advantage here in that it has paid developers on staff and typically you have to pay people to write code that's not 'fun'.

I thought I'd start this discussion with the hope that the next release, perhaps 1.7.2 can focus on usability rather than adding blinking lights or spinning wheels (I'm speaking metaphorically here). As a start:
  1. Re-write import/export/recipe
  2. In-place upgrade of versions
  3. Documentation, examples, tutorials
  4. A re-think/re-write of Admin. It's good now, but WordPress is still far ahead
Once the barrier to entry is lowered, it will be easier for people to 'sell' Orchard internally, adoption will increase, the community will get bigger, etc.
Jun 11, 2013 at 4:06 AM
I'll put in another item for refactoring: error handling. Seems that a large majority of the exceptions that I've encountered aren't handled, leading to either silent failures, unexplained failures or, if lucky, a note that something unusual happened, but no clue how to fix it or where to report it. Here's an example from just now when using the taxonomy editor:
Oops. Something went wrong ... sorry

An unhandled exception has occurred and the request was terminated. Please refresh the page. If the error persists, go back

The given key was not present in the dictionary.
How about a 'report this error' dialog that will send some kind of trace back to the developers and allow the user to file a bug report at the same time?
Jun 11, 2013 at 9:10 AM
Hi Thanks for the feedback, we are looking at focusing on usability for 1.8. I believe, though because we have finished 1.7. we are not 100% sure what will be in 1.8. (or even if there will be a 1.8. : ) )

Documentation is a very important subject to people it would appear. Adrain Nobel has been working on this in his free time.

The Admin area is something that hasent changed at all since 2010, this is something that other people have brought up to. I believe there is a Twitter Bootstrap version in the wild somewhere.
Jun 11, 2013 at 10:43 AM
That's great to know!

While we're refactoring and revisiting old modules, I'd love to see ShapeTracing 2.0. That would be an awesome module.
Jun 11, 2013 at 2:49 PM
Edited Jun 11, 2013 at 2:49 PM
Nice feedback, thank you. Orchard actually has one paid developer, Sebastien Ros. Others just devote their free time :-).
  1. I guess you explained the specifics in your bug reports.
  2. In-place upgrade was discussed before and the general opinion was that it's not the right thing to do (CMSes written in script languages like PHP have a distinct difference here compared to Orchard that can - and this is advised - be compiled to binary). You don't want upgrades to happen in production with code you haven't tested and if you use Orchard locally you're supposed to use the source. And you can update the source any time, especially if you check out from the Orchard repository.
  3. Fair point. FYI if there's a new tutorial it's always published on the Orchard home page as well and there's the Training Demo module what is a big, commented example.
  4. Another fair point.
  5. What do you mean by Shape Tracing 2.0?
Jun 26, 2013 at 8:02 AM
"it's clear that he doesn't use it extensively on a day-to-day basis." <- I find this quite funny.

While the suggestions are always welcome, my own suggestion would be to offer to contribute some of your time to participate in the resolution of the (very real) issues you raise. This is open source ;)