After working with Orchard for 10 months and talking to various people from the community via email and message boards, I thought I would write a post on what I think is missing, and in some places a quick brainstorm on how to implement it.
First I would like to say that the great thing I like about Orchard as a developer is the way the team has taken the time to get the separation of concerns correct from the beginning making the framework hugely extensible. I would say for the separation of concerns issue is very important, though there are certain areas I feel in orchard where they have not stayed true to this design practice, but as the system matures I can see them breaking these things out.
Orchard have started a user voice group here - http://orchard.uservoice.com/forums/50435-general so please visit and vote up ideas, though I feel I kind of wanted to do my own post, so here we go
For me this article says it all http://www.intranetjournal.com/articles/200412/ij1203_04a.html
When implementing a CMS system, you look at how that system can integrate with your company and work to your needs. You implement a CMS for a need, usually to replace a current task that is inefficient, and by that standard you look at how that task can be mapped on to a CMS or any system that you are looking at replacing said task with.
A good CMS system should be able to reduce complexity but still allow internal processes to exist. Adding workflow allows user content to be better managed because you give the employees a clear and visible path thru a system (granted I have seen some bad workflows before – but this is what workflows should allow). With out workflow, I find it hard to see how companies will be able to map workflows or ‘a process of tasks’ on to Orchard.
I'm not sure how workflow could be built in, but what I would like to see is integration with Windows Workflow, or BizTalk (I know I know)… but from an enterprise company's perspective, its a big issue!!
I feel that this missing feature should have been a high ‘Should Have’ from day one when the new content types module was build, and that it could be one of the major disadvantages or headaches to adopting Orchard from a company perspective. (Obviously I know certain people will disagree)
A Form builder in my eyes is something that allows a user to fill in information about ones self, and then save that information somewhere. I think that the task should be done in conjunction with Workflow, why? you might ask – Well, when working for Bath Spa University we needed to build a system that allows staff to edit content, and allows students to fill in forms. The students information would then go through a number of stages of registration until they received a confirmation email that they have been successful or unsuccessful – this in essence is a workflow with a number of forms on the front of it. I feel that If we had a form builder in the system already, life could have been a lot easier, to allow us to build the infrastructure underneath, rather than playing with text boxes and labels.
Could be a quick win for someone to come up with a nice module that either injects Gravatars into the comments module, or overwrites the default Comments module view with a gravatar view. For anyone who doesn't know what a gravatar is visit - http://en.gravatar.com
If anyone has looked at Oxite before (http://oxite.codeplex.com), you maybe able to steal what they have done and integrate it in to Orchard. I previously did this in Orchard for Bath Spa, but forgot where exactly I left the code!!!… Opps.
Note: Initial profiles module brainstorming came from this thread: http://social.msdn.microsoft.com/Forums/en-SG/orcharddiscussions/thread/716799b3-36e1-4e76-99ad-c1d6e57ee369
An Enhanced user profiles module
So at present, quite a few people have been emailing me with ideas on how my profiles modules could be extended, and in the most part I completely agree. I remember when I was first thinking up the ideas and talking to Lou who works for Orchard about the whole user profiles system, and so I decided that at the time… this being January of course that I would evaluate Orchard and see how easy it is to create a module, and hence my user profiles module was born.
As time moved on, my module has not kept up with the natural progression of Orchard and so in real terms, has fallen behind, which in its self is a shame. I would love to see someone take this module taken forward.
Integration with Active Directory (or something along those lines)
From previous experience, I have noticed that a lot of information on staff and the such get wrapped up on systems like active directory - I think it would be nice to have something that would allow you to have a wrapper around AD, so if you are deploying Orchard on an internal system, then it should integrate directly with AD to pull and push information whenever it so needed, rather than have duplicate information which could become stale and out of date quite easily. The same module if written correctly, could also integrate with OpenID or any authentication pattern.
Reputation, points, badges, etc..
I think that a solution similar to stackoverflow or even the MSDN forum should be dreamt up. I think the module should be based around integration with the user content type. The tricky part could be how other modules interact with this module… at this point I'm not sure – possibly though attaching events to content types?
A threaded comments module
I would like to see a module that allows me to do something like cnet.com or stackoverflow where I can see a conversation appearing. This could be done in conjunction with a Q+A module which I know some people have been talking about.