Groups implementation

Groups implementation

by Martin Dougiamas -
Number of replies: 110
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
One of the major priorities for Moodle 1.1 is the implementation of groups (cohorts) within courses.

http://moodle.org/doc/?frame=future.html

http://moodle.org/bugs/bug.php?op=show&bugid=20

I haven't looked at competing products to see how they do this (except for WebCT years ago).

I'd like to have a discussion here to gather ideas for how the first version of this will look. I'd rather start with a simple, effective solution first, and keep developing it in future versions.

Here's my picture so far (you can use the numbers to refer to specific points if necessary):

  1. By default there are no groups, courses are the same as now.

  2. Teacher has a "Groups" admin page on which they can define a number of group names.

  3. On this page, teachers can assign students to groups manually (or they can press a random button to have them assigned automatically).

  4. If at least one group is defined, then all those NOT in a group are automatically placed in a default "unassigned" group.

  5. Courses have a new setting: allow groups to see each other in a course / keep groups invisible from each other.

  6. The participants listing page uses this setting to switch the display to show the whole class or just the current group.

  7. This course setting may also affect activity settings, or perhaps just the default values.

  8. If groups are defined in the course, then modules have a new option with this menu: "whole class/combined groups/individual groups/specific group".

  9. "Whole class" works like it does now.

  10. "Combined groups" adds a page (where appropriate) with all the group names, that leads down to a normal-looking module for that group. Group members could read but not write in other groups.

  11. "Individual groups" - the teacher view is just like "combined groups", butgroup members only see their own group - it looks like a normal activity otherwise. eg a normal forum.

  12. "Specific group" - means the module only allows a specific group to use it. For example, you might make an extra assignment just for one group.


That's about it. I think this should cover most people's needs. Please respond if it doesn't (or even if it does!).

I'd particularly like some thought about how individual modules could use these settings. That is, how should the GUI look?

One little problem I can see is: what to do with activities when a group is deleted or changed?
Average of ratings: -
In reply to Martin Dougiamas

Re: Groups implementation

by Sabine Revers -
Thank you for all the good ideas big grin
This is what i need most! For sure i do not want to delet a group, even it is nessesary i would delete all activities first.

Please stay on your brilliant idea!!
Sabine
In reply to Martin Dougiamas

Re: Groups implementation

by Greg Barnett -
Additional bits I'd like to see:

If there are multiple teachers assigned for a course, the individual teachers can be assigned to one or more of the groups. If a teacher is assigned to more than one group, they should be able to switch between which group they are currently active in.

In addition to a page where students can be assigned to groups, I'd also like it to be scriptable. Perhaps define an XML format that it can import to enroll students into a course, assign the teachers, and then put them in their proper groups.
In reply to Greg Barnett

Re: Groups implementation

by Mark Berthelemy -
Hi,

Greg wrote: "Perhaps define an XML format that it can import to enroll students into a course, assign the teachers, and then put them in their proper groups. "

I know I'm on my hobby-horse again, but this is exactly what the IMS Enterprise specification is already designed to do.

You might be interested in what the UK Further & Higher Education community is doing with the Enterprise spec - see: http://www.cetis.ac.uk/members/enterprise/

All the best,

Mark
In reply to Mark Berthelemy

Re: Groups implementation

by Ger Tielemans -
Enterprise model is an interesting approach to the problem: It tries to look at your local admin on a more abstract level, what makes your situation better comparabel to others... The companion of this approach is the LIP, for learner profiles:
 
-----Original Message-----
From: IMS Global Learning Consortium, Inc. [mailto:IMS@imsglobal.org]
Sent: Thursday, June 12, 2003 4:27 PM
To: CMAnnounce@imsglobal.org
Subject: IMS Press Release: Growing international convergence on LIP 1.0 specification for exchanging learner information

Growing international convergence on LIP 1.0 specification for exchanging learner information

BURLINGTON, Mass. - June 12, 2003 - - Developers in the UK, Europe, the U.S. and elsewhere are adopting Learner Information Packaging 1.0 (LIP) for use in e-Learning software, utilizing LIP's capability to exchange learner data between computer systems. Experience of implementers is now providing valuable feedback, giving rise to new extensions and functions for future revisions of the specification.

"One of the major strengths of LIP is its flexibility," said Schemeta's Mike Collett, Chair of the CEN/ISSS Learning Technologies Workshop and the UK standards body, BSI IST 43. "Several committees are using LIP as a basis for standards and specifications that are being created with a country-specific, European-wide and worldwide scope."

UK implementations
A leading force behind several pilot LIP implementations has been the Joint Information Systems Committee (JISC), an ICT strategic advisory service funded by the British government (www.jisc.ac.uk). Developers in two JISC programmes led by CETIS and the Centre for Recording Achievement created the UK Learner Profile 1.1, which maps the UK higher education transcript, and the European Diploma Supplement to LIP.

Enhancements for UK LP 1.2 are underway that will expand learner-related data to include not only "traditional" items such as a transcript, but also newer elements, such as personal development planning documents (www.recordingachievement.org ). Peter Rees Jones, Project Team Secretary, University of Leeds, said: "By establishing fuller learner profiles across further education and higher education, the revision supports the development of students as autonomous lifelong learners and supports a model of shared learning and transitions centered upon the learner."

European initiatives
In Europe, the CEN/ISSS Learning Technology Workshop (www.cenorm.be/isss/workshop/lt) have a project team that is adopting LIP and mapping documents to it, including the European CV Format. Several LIP adaptations have been identified and will be made to tailor LIP to European training and education needs. "We plan to build a language module into LIP," said Daniel Gondouin, Technical Director, Adelink (www.adelink.com). "Not only will the profile allow learners to record their oral, written and reading proficiencies with different languages, but it will also allow LIP documents to be translated and mapped to other languages."

Next steps: ePortfolio 'Best Practices'
IMS facilitates the extension of LIP through a Special Interest Group (SIG) that scopes and documents new features and functions such as the ePortfolio.

"The excellent work in the UK suggests that LIP will be a central part of the 'best practices' application profile we will develop to support ePortfolios," said Darren Cambridge, ePortfolio SIG leader, Director of Web Projects for the American Association of Higher Education, and Educause NLII Initiative Fellow for 2003.

About IMS
IMS is a non-profit organization supported by members of a worldwide consortium that includes 57 Contributing Members and affiliates and 60 Developers Network subscribers. The IMS in Europe Foundation supports activities among European members. The IMS Global Learning Consortium develops open technical specifications to support distributed learning. Its specifications are accessible to everyone at no charge from its website (www.imsglobal.org) and require no licensing fees to implement.

For Information:
Caroline Oldershaw, IMS Global Learning Consortium
+1 608-233-3277 (voice)
coldershaw@imsglobal.org
http://www.imsglobal.org 

.

In reply to Ger Tielemans

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
Okaaay, settle down, guys. big grin

Yes, using "standard" formats for importing/exporting is a good idea (assuming there will one day be other applications that also support IMS in this way wink), but I think this is much better done a) later and b) in the enrolment process (which is due to be expanded as a modular plug-in-based process similar to authentication, supporting things like external databases, Paypal etc).

In the meantime, there needs to be something to connect standards to. I think we (and by that I probably mean I) need to develop the basic interface first so at least something is working.
In reply to Greg Barnett

Re: Groups implementation

by Ray Kingdon -
Yes, here "Groups" does really mean "Teachers", each group shares a common pool of resources but with each group (of students) doing assignments under the direction of an individual teacher (and in isolation from the other groups). Ideally there's a course "super-teacher" (locally know as a "course leader") who can view the grades by group for all groups. (I'm not sure whether the individual teachers should see all the grades or just those of their group. It may have to be a course option.) I don't think we would want the groups to have their own resources (although there's no reason why they should not be allowed to do) but we do need this strong group separation in the assignments.

In Blackboard the "Course" discussion groups, chat areas, etc, are open to everyone but groups are allowed to create to have their own (private) discussion groups... That's a reasonable approach.
In reply to Ray Kingdon

Re: Groups implementation

by Mark Berthelemy -
Hi there,

It sounds like, to make the groups implementation work to suit everyone, we'll need to work towards a roles-based permissions structure, with the roles being as configurable as possible.

Any thoughts on that? It's quite a major departure from the three current preset roles in Moodle.

Mark
In reply to Mark Berthelemy

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
Heh .. IT people loooove having fine-grained control over other people (I know from experience!) but I can't help thinking there are often social ways to solve the same problems (if indeed the problems are there in the first place). Witness the success of Wikis in some environments.

That said, there is some work coming up on better defining access-rights:

http://moodle.org/doc/?frame=future.html (2.0)
http://moodle.org/bugs/bug.php?op=show&bugid=308

In reply to Ray Kingdon

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
In your classes there, Ray (and Greg), how much of a problem is it if teachers can see grades or assignments from other groups within the same class?

I was assuming teachers would not need to be restricted within groups, that they would be able to "do the right thing" as agreed among the teachers.

On a pedagogical note it might even be advantageous to allow this so that teachers can see what other teachers are doing and learn from each other. Assuming they even have the time for it!
In reply to Martin Dougiamas

Re: Groups implementation

by Greg Barnett -
The lack of separation between multiple groups taking the same course is the root cause of the majority of complaints I hear from instructors.

Class size is small at Crown College, and we usually have multiple groups taking the same course at the same time. Some courses are also offered very frequently. In some cases that means that an instructor is only working with 10% or less of the students who have enrolled in a course. It isn't so much that teachers need to be restricted, as they would appreciate only being shown the students that they are responsible for.

Currently, I've given them some separation by giving each group their own unique live-audio chat rooms and whiteboard.

Instructors have taken to putting their names, or the group name into the titles for the items they've added to the course that only apply to their students.
In reply to Greg Barnett

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
It isn't so much that teachers need to be restricted, as they would appreciate only being shown the students that they are responsible for.

Fair enough. Perhaps the notion of a "current group" variable would be useful for teachers - a bit like the "zoom" variable on the course page, which when set would automatically default to just displaying that group in modules, etc

Ah, I just noticed Ray mentioned this already.. cool
In reply to Martin Dougiamas

Re: Groups implementation

by Ray Kingdon -
Yes, I see where you're coming from big grin

Here's a group scheme which gives equal rights to ALL the teachers. (Hi, I'm in pain here black eye )

  1. Courses have a three value switch - no groups, site wide groups or course specific groups. (By "site wide groups" I mean the groups and group membership which may usefully apply to a number of courses in a Moodle site.)
  2. Students allocate themselves to a group, one of groups could be nominated as a default group.
  3. Teachers can list/change the group membership of the students.
  4. In group-enabled courses, teachers have the new concept of a currently active group. This is saved across sessions.
  5. The following modules are "group-aware" - assignment, forum, journal, workshop.
  6. The following modules do not need to be "group-aware" (I think) - choice, quizzes, resources, survey. (For the "interactive" modules, (choice, quizzes,survey) it would be nice to see the group included in the results (as an extra column) when appliable, i.e. when they used in course which uses groups).
  7. Group-aware modules have an additional switch option. When they are added to a course they are either in class-mode or in group-mode. (A better terminology could probably be used here.)
  8. When in group-mode the group-aware modules restrict their universe to just a group of students and those teachers currently active in that group. The actual group is determined by either the student's group or the teacher's active group. (When in class-mode they function on the whole of the class and all the teachers, i.e. as they work now.)

I think there's a need for a site variable called "site wide groups used" - yes/no. Locally these site wide groups would be possibly all we would need and all our courses would use this grouping. In general, however, groups would be different in different courses. In such courses they would have to set up they own groups from scratch. If the "site wide groups used" variable is on then students would be asked for their (site-wide) group at registration time. If a course uses "course-specific" groups that students must be asked for their (course-specific) group when they enrol on that course.

The interface stays the same although the group aware modules might have a flag next to them to indicate their mode. (For example a large single circle to indicate all the class is involved, a number of small circles to indicate the module is in group-mode.)

A teacher has the extra option "change active group" in courses with groups. This allows them to freely rove through the various groups seeing how the assignments, forums, etc., are progressing in groups which they do not "own". (Note that that ownership is NOT defined in Moodle. I would say a teacher "owns" the group if they are the one normally do the grading in that group.)

I think this is implementable. Obviously it needs a group names table and either an expansion of the user_students and user_teacher tables or a new group membership table with columns userid, courseid and groupid, courseid=0 gives the site wide groups(?) OR probably something completely different!. The default site-wide group could be flagged in the site variables and the default course-specific group in the course table OR, again, somewhere completely different. I haven't put the teacher's active group anywhere but that it goes somewhere as well wink

And to answer your question I don't think it's a problem (letting teachers see grades... from other groups). All teachers are equal, outch! This is where I came in big grin

In reply to Ray Kingdon

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
Good ideas.

I'm not sure about site-wide groups in this first version. It feels like it will complicate a lot of things when there is so much else to sort out. But it's a good thing to keep in mind for the next version.

I can now imagine a popup-menu (similar to the new one for course topics) for teachers at the top of every activity module, listing all the group names as well as "All". Choosing a setting here sets the persistent "active group" variable ... this would make it easy for teachers to roam over the course looking at activities and zooming in on groups at whim.
In reply to Martin Dougiamas

Re: Groups implementation

by Ray Kingdon -
If course-specific groups is simpler then go for that. It still gives the functionality that's needed. Site-wide groups are icing...

"All" is an interesting group, it's turning the activity from group mode to class mode on the fly so to speak. It means I think that all activities operate by default in group mode and there's no need for my additonal option (group-mode/class-mode) when adding them into a course.

If the function get_course_students knows about groups and does the decent thing then making the activities group-aware shouldn't be too bad.

It's looking cool
In reply to Martin Dougiamas

Re: Groups implementation

by Ray Kingdon -
Ah, thinking further on the "All" group, that's only open to teachers(?). Students, I assume, would not have the luxury of group hopping and the All group. From the student point of view it would be useful to have some activities which are class-based and some that are group-based. Forums are an obvious example. So I would think that the option "class-based or group-based" is still necessary on activities. (Got a bit over-excited by the All group, I'm afraid wink )
In reply to Ray Kingdon

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
Oh yes, the "group hopping" menu is only for teachers. There would still be different fixed modes for students (Points 8 to 12 on my list)
In reply to Martin Dougiamas

Re: Groups implementation

by Ger Tielemans -

If you create groups people also want the option to sent one email to all the members of a group.

By the way, how sent I now an email to all members of a course? (Because systems like Moodle are pull-systems: only if you visit the site you get news, teachers want a way to push: invite students to come to the site etc

 

In reply to Ger Tielemans

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
This is exactly what the News forum is for (and the force-subscribe option on every forum).
In reply to Martin Dougiamas

Re: Groups implementation

by Ger Tielemans -

yes.. I missed the forced subscribe point.

Martin, is there somewhere a note wehere you describe why you designed things in the first place...

..a kind of thinking-line for first-time-Moodle-course-designers? 

In reply to Ger Tielemans

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
Most of the recent features have some discussion about it buried among these forums - such as this one about groups (I'd really like a google-like advanced forum search - someone want to find one?) This process will be more formalised in the "tracker" module I am planning.

The earlier features however were developed by trial and error while observing real classes using Moodle, and the documentation is patchy (some is in the thesis).

I would like, someday, to really expand the teacher manual into something fantastic, and also to add "set up wizards" that explain things from a pedagogical point of view.

BTW, have you seen this yet?

http://moodle.org/doc/?frame=other.html
In reply to Ray Kingdon

Re: Groups implementation

by Ger Tielemans -

NOT all teachers are equal...

If you use a problem centered approach, you work often with TUTORS, mostly trained students with complete teacher-rights with exception of the GRADING.

Problem here is that you want them to look at the assignments, give feedback with exception of the grading..

 

In reply to Ger Tielemans

Re: Groups implementation

by Ray Kingdon -
And not all institutions are equal...

The tutors here are mostly reserach students and they do do grading (we call it marking). The course teacher is expected to blind grade a sample of the tutor's assignments to check validity... It does happen too, we've got quality prcedures in place to make sure the course teachers do the "cross-marking".
In reply to Ray Kingdon

Re: Groups implementation

by Ger Tielemans -

If you deliver courses to external companies, you ask someone from the institute to coach "his" groups. If you are the institute that has to certify, for example certifying for security courses, it is not acceptable for the accreditation institute that someone in the company that needs these certificates can influence the tests...

having not the role of a teacher with limited rights, you end-up with a no-in-company-coach...

 

In reply to Ger Tielemans

Re: Groups implementation

by Ray Kingdon -
We have a similar situation here where we "franchise" our courses into other colleges. (It's an important busness for us.) We treat your "coaches" (in the colleges) as fully autonomous teachers (and in this context would have no problem giving them full rights to look at other groups). There is, however, a raft of quality control checks and procedures in place to monitor their performance. It's not a question of trusting them and hoping for the best wink
In reply to Ray Kingdon

Re: Groups implementation

by Greg Barnett -
re #6:

I think that pretty much everything needs to be group aware. I know that choices, quizzes and resources are items that instructors at Crown want to be group specific. We haven't used survey, but I suspect that if we did, the instructors would want to be able to only have a certain group take the survey, or have each particular group take the survey at a specific date/time.
In reply to Martin Dougiamas

Re: Groups implementation

by Sean Keogh -
Woohoo, groups!

smile

A couple of thoughts based on teacher thinking here at our place. Firstly I don't think there would be a problem here with teachers seeing things like grades from other teachers' groups.

But secondly, the default action on a teacher entering a course, to look at, for example, quiz results, assignments, the gradebook, etc, should be to show only the groups that are assigned to that teacher. That way they can be looking at, say 40-50 students, rather than 370.

It would be nice if students could belong to more than one group, so there might be a group called B3, which is the 16 students in our B3 group, but there might also be four groups called B3a, B3b, B3c and B3d, which are the four mini-groups that the group is split up into during small group sessions, where they work as four small teams, each working together on a problem.

As to the GUI, for assigning students to groups, or removing them from groups, something like the system used in most webmail systems, where you have a list of records (in this case students) each with a checkbox next to it, and then some buttons (probably at the top *and* bottom of the list) with a "select all" button, an "Assign to group" button, and a pull down list of available groups.
In reply to Martin Dougiamas

Re: Groups implementation

by Stig Bjarne Haugen -

You've said it all!

Now I can only lean back and wait for the wonderful result of all your thinging, tweaking, moodling and work! (All of you, not just (but also) Martin!) tongueout.gif 

In reply to Martin Dougiamas

Re: Groups implementation

by Przemyslaw Stencel -
Wow, this looks impressive!

A few thoughts from our perspective here:
The groups stuff seems to be aimed at managing several cohorts sharing 'static' content and working in their own, separate 'interactive' modules. In our case, we do not need this kind of groups. What we'd be interested in would be more dynamic groups. I'll try to explain the reasoning:

1. We would like to be able to release activities to specific group(s) only, as "extra assignments" in #12. However, there should be a possibility for any given student to be a member of a few groups, depending on which extra assignment the teacher would like to issue to him/her.

2. We would like to be able to use different groupings for different activities. For example, in topic 1 activities students would be grouped differently than for topic 2 activities.

Will these two be possible to achieve with the group management you're thinking of, or would it be better done another way?
In reply to Przemyslaw Stencel

Re: Groups implementation

by John McDermott -
This very much like what I need. I need different groups to see different topics, though. That is group A might see 1,3,4,5,6 while group B could see 1,2,4,5,6. Also, that way a topic could be added for a particular group.
In reply to John McDermott

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
I think groups are only really useful when the course structure is more or less the same.

If the course structure is different then you might be better off creating different courses.
In reply to Martin Dougiamas

Re: Groups implementation

by Ray Kingdon -
I agree. I've just finished a couple of (Moodle) courses and here the students who don't pass (note the PC terminology) get a chance to "resit". So I'm building a new course for them with appropriate assignments. Even if I had groups I don't think I would put these students into a "Resit" group and give them a extra set of assignments in the original course. It's better for future re-use to have THE COURSE and THE RESIT COURSE, things are much cleaner that way. The alternative approach would be to have one course and hide the extra assignments when its running in normal mode and hide the ordinary assignments when it's running in Resit mode, but why fiddle about, it's easier to have two courses. Also given their own course these students are more managable and wouldn't get lost in a cast of hundreds, hopefully.
In reply to Ray Kingdon

Re: Groups implementation

by Przemyslaw Stencel -
Right, but having a separate course is only OK if your students haver to 'resit' the course. In our college, students may have to 'resit' particular activities, so that e.g. student A has to resit activity 1, students B, C and D have to resit activity 2, students A, D and E have to resit activity 3, etc. This is what I meant in option 2 in my message. It seems to me that groups will not be particularly useful in this situation, right? Maybe a different tool ('selective release'?) would be better for this purpose?
In reply to Przemyslaw Stencel

Re: Groups implementation

by Ray Kingdon -
The situation you describe certainly fits my "resit" course in theory. I ought to tell the students which activities they need to do. That said, most will probably go for the full set (as mentioned elsewhere in this tread) and those that don't will get confused by their peers and start to panic... It would be a lot simpler just to pretend that everyone must do everything and let nature run its course. Ah, for the ideal world approve
In reply to Martin Dougiamas

Re: Groups implementation

by John McDermott -
Then I have to deal with forums (fora?) that span multiple courses, etc. That seems pretty complex. The reason for having some groups do activities others don't is because some may not have the same backgrounds as others and some may come already knowing some of the content (so there is time for them to do more advanced material).
In reply to John McDermott

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
Implementing things that way would also be quite complex at this stage.

What you could do is make a topic for the advanced groups and in the summary for it simply say, "these are the advanced activities for groups A, B and C only".

If this doesn't work then I think the access control stuff will be able to to do this (similar to the 'selective release' that Przemyslaw mentioned in this thread). But it's a big job in itself.
In reply to John McDermott

Re: Groups implementation

by kees koopman -

You can set up one course with material for 3 levels: elementary - basic - extra (more advanced). Idea?

In reply to Przemyslaw Stencel

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
No, in the first instance each student is in one group, and groups are constant throughout a course.

Assigning groups per activity, which I think is what you're asking, will have to wait for a future version - that could get complicated.
In reply to Martin Dougiamas

Re: Groups implementation

by Gustav W Delius -
The groups implementation that you are planning meets our needs perfectly. I also like your approach of concentrating on the essentials in the beginning and leave the icing for later. Let me nevertheless describe some icing that could be added on later:

We like to start out with assigning students to the groups ourselves. But then we allow students to change from one group to another if that does not create a large imbalance of numbers. So a student interface where they can see which groups they can change into (in our case all groups that are not already too big, others might have other criteria) would be nice. A student's choice to move from one group to another would then be accompanied by automatic emails to the student and the teachers involved.
In reply to Martin Dougiamas

Re: Groups implementation

by Alexander Biedermann -

Is there already something finished with groups? I do have the problem now to seperate two groups on the same course and it´s really complicated without groups. --> You need two courses.

Why can´t one copy one course at least by clicking e.g. a button like "copy" and get the request for the new name?

In reply to Alexander Biedermann

Re: Groups implementation

by Randy Vermaas -

Hi,

You can do this by making a back-up of the course and then put it back with a different name.

In reply to Randy Vermaas

Re: Groups implementation

by Alexander Biedermann -

tried it - worked - thank you!!!!!  Also found the entry under backup now that i know it.

But groups really would be great - it´s hard to always sort people out after their names.

Nevertheless moodle is top. And I´d like to thank you all, because I´m programming myself I know how much work this all must have been and will be...

www.biedermanns.com

www.musikimspiel.com

www.kis-info.at

www.vrmillennium.com

etc....

 

In reply to Alexander Biedermann

Re: Groups implementation

by Ger Tielemans -

Rethinking the groups-idea:

When LDAP is working we will swap all the registrated students and teachers in one Moodle.
When a teacher creates a course he must also create a key and send it to the students he wishes.
We use this now in a test situation and it works great: No extra admin handling, no waiting times, teachers feel in control, great. Forget all my other wishes about technical coupling (except LDAP)

You could organise groups the same way: The teacher creates for every (parallel)course a key and gives it to the students in the different subgroups. The only thing is that groups should not see each other in the same course... (Or a switch for the teacher to choose see eachother: yes/no?)

Moving to another group? - I saw it in the discussion somewhere else - can be based on the same key-idea: when all the students are in you change the key and give the new key only to the student(s) who you allow to change groups.

I agree with others that fine tuning a course to individual threads only leads to the situation that the teacher looses the overview. It is better to use the new backup-mechanism to clone a course and finetune it for a smaller group. (By the way: Your manager will count and appreciate the enormous number of courses you create this way) 

 

In reply to Martin Dougiamas

Re: Groups implementation

by Joe Griffin -
This sounds exactly like the functionality I would require.  Like other contributors my students work in small teams of upt 6 on group assignments (up to now I have used Bb).  I hope to be able to use Moodle from after Christmas.  Any update and when 'groups' might be implemented -  even in a early state?

Will teachers have full access rights to each student group?
In reply to Joe Griffin

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
I'm hoping it'll be done by Christmas too ... I'm actively working on it when I can, though my development time is dwindling to almost nothing these days. Currently the plan is that "editing" teachers can see everything, but that "non-editing" teachers assigned to a group can only see that group.
In reply to Martin Dougiamas

Re: Groups implementation

by Sean Keogh -
Sounds good (not the lack of time, but the details of groups :-} ). Will it be possible to assign teachers to several groups, so that for example, teacher J. Smith can see and work with groups A1 A5 and B6, for example?
In reply to Sean Keogh

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
Yes, it will be now.  smile
In reply to Martin Dougiamas

Re: Groups implementation

by Sean Keogh -
I just thought of something else, and I can't remember if I mentioned it in one of our discussions in bugs, ages ago.

These groups...do they exist only within a single course, or is it possible to make them system-wide?  Or if not, then is it possible to save the group definitions and then apply them to other courses?  Or copy a group definition from one course to another?

The reason for this is that our system may end up with, say, a dozen courses, all on different subjects (in order to keep each course fairly small...for speed and ease of navigation) but the student groups that are participating will all be the same for each course (at least in the first two-thirds of the academic year, before they choose their elective subjects).

I really don't want to have to shuffle 350 students into a dozen groups...and then have to do it again for another double-handful of courses.

I can see this being pretty important for any sites that have more than a small number of students.

[Oxford Beardie]



In reply to Sean Keogh

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
Site-wide groups are a bit hard for now, there's so much to do ... the database structure will support it but all the logic will have to come later.
In reply to Martin Dougiamas

Re: Groups implementation

by Sean Keogh -
That's fair enough of course.  As long as the basic structure will support it at some point then that's all that ultimately matters.

Still, a way of copying group definitions...group *lists* if you like, would be handy at some time.
In reply to Martin Dougiamas

Re: Groups implementation

by Ray Kingdon -
Any chance of sneek preview of the API routines for groups? (I assume there may be some or possibly just mods to existing routines.) I would really love to get the Workshop and Exercise modules group-aware early in the New Year for my own local courses.
In reply to Ray Kingdon

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
Yes, soon, soonish ... I'll present a more detailed plan here before I get too deep into it.
In reply to Martin Dougiamas

Re: Groups implementation

by Gustav W Delius -

Hi Martin,

can you give us your current plans for the groups implementation? Just in broad brushstrokes: what are the planned features (and for the hobby developers among us: what will the database structure look like)? That would be a great Christmas present smile.

In reply to Gustav W Delius

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers

Well, I'm hoping the implementation can be a Christmas present for us all but here's how it's shaping up:

http://moodle.com/development/plans/groups.html

This document is of course subject to change. There are quite a few needs to balance - I think this provides the most usefulness to the widest array of people, while keeping coding and interface as simple as possible. We can even use it on this course, for example, identifying some people in a "developer" group, say.

If anyone really wants to help, they can come up with:
  • a cool icon for groups to fit in with "user" and "users" (under People sideblock)
  • A nifty interface for the group editing screen (just attach an example HTML document here)

In reply to Martin Dougiamas

Re: Groups implementation

by koen roggemans -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Translators
First attempt for group - icon, a little to small for 3 persons, I think. Just an idea
Attachment group.gif
In reply to koen roggemans

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
Thanks, Koen.  Perhaps the "participants" icon could be three people, while the group icon is two people.

I would still really like to hear everyone's ideas about interfaces for assigning people into groups.
In reply to Martin Dougiamas

Re: Groups implementation

by Ger Tielemans -

group icon: maybe two people with the contour of a house around them?

Groups, to keep it simple smile:

  • a group lives in a Moodle-course
  • if a faculty or school works with groups you get groupname + members form the connected database
  • a group gets its own "room" where they can
    • discuss in a privat forum,
    • can share annotated files
    • can store files: a modified dictionary? or a modified forum?
    • can organise several workflows: modified workshops, self controlled?
  • a group has a groupscalendar: appointments, notes, tasks
  • each groupmember has access to three zones:
                                          privat <> inner-circle=group <>public
  • your privat desk (privat zone) is inside your group: would be nice to have on that desk , your bookmarks to all your Moodle-courses, your view on your privat calendar and these from the others on transparants, like in WebCalendar?.
  • also on your privat desk: your privat resource-store: dictionary style?   
In reply to Martin Dougiamas

Interface for Groups

by Przemyslaw Stencel -
Sorry, I couldn't think of a one-screen interface. It seems (to me) inevitable that we first have to generate the groups and then assign members to them. Here's my attempt at the first screen.

By default, there are five fields. If not all of them are filled in, fewer groups will be generated (3 groups in the screenshot). If 5 is not enough, each time a user clicks on the "More groups" button, the page will be reloaded with 5 more fields. After naming the groups, the teacher decides how the users will be assigned (automatically or manually) and pressing the "Generate groups" button generates the groups and opens the screen where users can be assigned. This screen will be different, depending on whether "automatically" or "manually" was selected.

I'll post my suggestions of the two "Assign users to groups" screens in a few minutes.
Attachment groups_start.gif
In reply to Martin Dougiamas

Interface for Groups 2

by Przemyslaw Stencel -
I've changed my mind in the meantime - three screens instead of two, but the screens do not differ whether automatic or manual assigning has been selected.

Here's the second screen - Assign students to groups.

Actually, I'm now wondering if this automatically/manually choice is necessary on the first screen. Student might always be assigned automatically, but the teacher can change it before accepting the groups (Save button)
Attachment groups_students.gif
In reply to Martin Dougiamas

Interface for Groups 3

by Przemyslaw Stencel -
And the last step - assigning teachers.

Checkboxes rather than drop-down lists are used to allow the same teacher being assigned to a few groups and a few teachers working together in one group.
Attachment groups_teachers.gif
In reply to Martin Dougiamas

Re: Groups implementation

by Sean Keogh -
How about this as a starting-off point for a student group assignment gui?

The idea being that you have two different ways to assign group membership.

For each student entry you can select which group you want to assign them to using the pull-down on the right, and then click the submit button.

*Or*, you can use the check boxes on the left to select multiple students (or all of them using the "select all" box) and then choose the group you want to assign them to using the pull-down at the bottom.

I think this might work later as well, once the ability to assign students to multiple groups makes it into moodle, as you could ctrl-click to select multiple items from the pull-down.  (Assuming that's possible in HTML and PHP of course).

What do you think?


Attachment group-gui.jpg
In reply to Martin Dougiamas

Re: Groups implementation

by koen roggemans -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Translators

I can agree with that, but than the icons of two and three people can't be based on the icons you use right now (as I did). It would mix up those who use Moodle right now.

Also I don't like changing icons.  (I'm a faithfull win2k-user. If I have to change some settings in a winxp, it takes me twice as long by searching the system or software icon verlegen)

In reply to Martin Dougiamas

This forum post has been removed

The content of this forum post has been removed and can no longer be accessed.
In reply to Martin Dougiamas

Re: Groups implementation

by Gustav W Delius -
The interface does not currently allow one to assign a single teacher to several groups. But  if I add a teacher to several groups in the database by hand, will everything work as intended?
In reply to Gustav W Delius

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
Currently, no.  For this version I'm working right through with the assumption of one group per user.
In reply to Martin Dougiamas

Re: Groups implementation

by Joe Griffin -
I've been reading all I can find here (in this forum, other forums, the implementation plan etc.) on groups for the past two hours and now the old brain is getting a bit overloaded mixed.  Hopefully it is not too late to describe what I do in my classes and therefore what I would like to see implemented and what is going to happen with the groups facility when it goes live.

I have previously (with Blackboard) used a method whereby a class of 180 have a common forum but they do assignments in groups of 6.  Groups collaborate to produce a report (or submit their threaded discussions instead of a report) following a period of debate. Each group has its own forum and access to all group forums is given to all teachers on the course.  Students can only see and post to their own forum but teachers can see and post to all forums.  Occassionally a student may be in two groups.  How much of this will I be able to achieve with the new groups facility?

Thanks

Joe



In reply to Joe Griffin

Re: Groups implementation

by Bryan Williams -

Joe,

I hope you can appreciate that the Groups function in Moodle has been evolving over many months and that Martin has received much feedback into how it should operate. We can be sure there will be a few "can it do this" subsets, as your needs suggest, that undoubtedly will not be in the first implementation.  User deadlines are not much of a motivator for a person who is working FREE.  Let's all take a deep breathe and just hang in there for a bit longer, Groups are on the way!

In reply to Bryan Williams

Re: Groups implementation

by Joe Griffin -
Bryan

I am sorry if my last email was not clear about my awareness of the long development process that has so far taken place blush.  I obviously did not make myslef clear on that. As a newbie to Moodle I have spent a lot of time reading the massive amount of material on this site and still I have questions thoughtful.  But please do not take these questions to be an attempt to speed up the process or to change the direction of developments.  They are just questions that a new guy is trying to get some answers for.  Perhaps I need to explain why just a bit.

I am in the middle of a PhD (I am evaluating the learning that takes place in multi-institutional multi-cultural collaborative learning groups) and I have used Blackboard for the past couple of years.   I am now switching to Moodle.  However I only have one chance per academic year to undertake empirical research and my students only have one opportunity of taking this course.  I, as a teacher, need to ensure that my students are not disadvantaged and I, as a researcher, would not like to loose a once a year opportunity.  It looks like neither of these situations will arise  if  I continue with the switch to Moodle.  But I hope you can understand that I do need to know certain things at  this stage.

Thanks for taking the time to reply

Joe
In reply to Joe Griffin

Re: Groups implementation

by Bryan Williams -

Joe,

Most of what you need to do is available now, if you have the latest version of Moodle. Let's take a look at this one step at a time.

  • I have previously (with Blackboard) used a method whereby a class of 180 have a common forum.... No problem. The "News Forum" is available to all group members within a course.
  • ....but they do assignments in groups of 6. Groups collaborate to produce a report (or submit their threaded discussions instead of a report) following a period of debate. Each group has its own forum.... Not a problem here. You can now assign students to a group and each group can see only other group members forum posts.
  • ....and access to all group forums is given to all teachers on the course. Students can only see and post to their own forum but teachers can see and post to all forums. Not a problem if you give teachers "Creator" privileges in the sites Users Administration properties screen (see below).
  • Occasionally a student may be in two groups.  This is where things get a bit dicey. It does not appear that in first release, Groups in Moodle will allow a student to belong to more than 1 group.  However, suppose these occasional students used an alias login that was obvious to a teacher, allowing them to essentially be two students so they could each be assigned to a separate group.  For example; Bryan Williams is in Group 1 and BC Williams is in Group 2.  Not pretty from a tracking standpoint, but the alias option does allow the same student to participate in more than one group.

creator

 

In reply to Bryan Williams

Re: Groups implementation

by Joe Griffin -
Bryan

I have followed your guide and have successfully set up groups in various ways . But how do I assign activities to particular groups? E.g. I want each group to have its own forum. I have tried numerous permutations of settings (visible, separate, foced and not forced) at course level and also clicked on the Group icon next to a specific forum but nothing seem to happen except the icons toggle between No Groups, Visible Groups and Separate Groups. Have you already done this?

Joe
In reply to Joe Griffin

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
You don't need to set up separate forums.  Just set up one forum and make it separate - the groups can't see each other.
In reply to Martin Dougiamas

Re: Groups implementation

by Joe Griffin -
Thanks.  What other activities have the group feature implemented at this stage?
In reply to Martin Dougiamas

Re: Groups implementation

by Joe Griffin -
Great.  I'll keep checking the forums for latest info.  I need this for my PhD research.
In reply to Martin Dougiamas

Re: Groups implementation

by Mike Churchward -
Picture of Core developers Picture of Plugin developers Picture of Testers

I don't know if this the route you're going, but what I would like to see is a hierarchical goup system and a hierarchical privilege system (I saw some comment about power-hungry IT guys; yes I'm one of them wink).

In my case, I'd like to have a system that allows me to put all individuals into groups not directly related to any course they're taking. In my specific case, generally these groups are countries (but not necessarily). I could then create courses available only to members of those groups. I'd also like to be able to group the groups, or assign a course to multiple groups.

Is that something that can be done, or worked towards?

mike

In reply to Martin Dougiamas

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
Thanks a LOT, guys, for the interface ideas - really helpful in getting some ideas going.

Based on those I've attached my current effort which I think shouldn't be too hard to implement with a few bits of Javascript here and there. Buttons which change membership in some way would refresh the page, but sinply clicking on a group, say, could update the list of group members dynamically.

Would this be usable enough?
In reply to Martin Dougiamas

Re: Groups implementation

by Dave Ray -

Martin--

this type of administrative control will do wonders. Thanks again!

In reply to Martin Dougiamas

Re: Groups implementation

by Ger Tielemans -

Yes I like this column approach.

  • (Can I also import groups - from external databases - with their members in this screen?)
  • (How do I move a student from one group to another? Do they jump back to the left column if I remove them from a group?)
In reply to Ger Tielemans

Re: Groups implementation

by Tom Murdock -
re:
#1. Probably not, since the groups are course-based.
#2. Yup, see the note below the third column.
In reply to Martin Dougiamas

Re: Groups implementation

by koen roggemans -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Translators
Are the left collum students from a course or students from the site ? Or can that be chosen ?
In reply to koen roggemans

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
This first version of groups will be course-level only.
In reply to Martin Dougiamas

Re: Groups implementation

by koen roggemans -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Translators
definitely a good interface. I like the amount of info, right on the page (and not behind a helpbutton no-one uses triest)
In reply to koen roggemans

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
Actually, I only put the info on the page to explain the prototype ... in my experience (and Ger just proved it wink ) people don't generally read help text even displayed on the same page.
In reply to Martin Dougiamas

Re: Groups implementation

by Tom Murdock -
At the risk of being obvious, this three-block-system-interface might work for the "add teacher" and "add student" interfaces in the other parts of Moodle, too.

Available Teachers / Current Courses / Teachers of Selected Course

and

Available Students / Current Courses / Students within Selected Courses

In the case of each of these, it might be nice to toggle whether the names in the columns are sorted by last name or by first name..
In reply to Tom Murdock

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
Certainly some variation on this interface would be a better way to do the user assigning too.  Using the scrolling list boxes is a lot more scalable than the current lists.

I'll add name sorting to the groups interface (latest version is always here).
In reply to Tom Murdock

Re: Groups implementation

by Dale Jones -
Oh boy, I just noticed all this activity concerning groups and got excited.  I ought to check the Developers' Forum more often!
For us in a secondary school, it would also be useful to sort by some means that references the school year that students are in (birthdate?).  For us, sorting by username would do the trick since we account for year of entry in the username, but I'm sure that's fairly specific to us.

Great work people - I'm humbled but I eagerly await the implementation of groups. 

Dale
In reply to Dale Jones

Re: Groups implementation

by Art Lader -
Yes, I am also excited by the groups implementation. It will be a great leap forward for Moodle!
In reply to Tom Murdock

Re: Groups implementation - sorting students

by Anthony Borrow -
Picture of Core developers Picture of Plugin developers Picture of Testers
I'd like to resurrect a little conversation on how the list of students are sorted for being assigned to groups. Currently it is by firstname which I find awkward at best. It would make more sense to me to sort by lastname; however, I like the idea of having an option (possibly a course setting around groups) to sort either by lastname, firstname, or username.

Another topic of conversation may be to standardize how to select a group of students. I like the interface used for assignments and quizzes of having the alphabet generated to filter the list based on firstname and lastname. I'm not sure if this is standardized throughout Moodle but I think it should be. This would add consistency for how to select the users. In any case, I hope this serves as food for thought on improving Moodle just a little. I'd be interested in feedback from other Moodlers. Peace.
In reply to Anthony Borrow

Re: Groups implementation - sorting students

by A. T. Wyatt -
Yes, yes, yes! There are some places where you are forced to work with large numbers of students sorted by first name, and it is very hard! I would think it pretty standard procedure in Western countries to use the last name as the primary sort field. Is that true? Or am I missing something?

It was difficult to sort 150 students into 5 groups for one teacher who elected to have one moodle course for 5 sections of a class. This is what you describe. We had a hard time checking off the list because one was alphabetized by first name and one by last name.

It isn't hard unless you start getting more than 5 or 6 in a group, but for those folks using groups to manage larger groups of students, it is much more difficult.

If you file this in the bug tracker, I will vote for it! I would like this to be a site wide default sort setting (i.e. admin) just like the one that lets you decide how to display the name. At least in our situation, I can imaging instructors sorting by a lot of things (access time, grade lowest, grade highest, etc.), but I can never imagine them sorting by first name. We always change that (or wish we could).

atw

In reply to A. T. Wyatt

Re: Groups implementation - sorting students

by Anthony Borrow -
Picture of Core developers Picture of Plugin developers Picture of Testers
You describe our difficulty precisely. We use groups to separate the sections in a metacourse. Our student lists are always sorted by lastname. I know that I could change the site setting to lastname firstname and then the groups would be sorted correctly; however, usually folks prefer to see their firstname and then lastname (at least in the US). Of course I want to be able to do both - display firstname lastname as the fullname but sort by lastname, firstname. I have submitted MDL-7163
for consideration should anyone wish to vote on it. Peace.
In reply to Anthony Borrow

Re: Groups implementation - sorting students

by Rick Barnes -
I agree, i would like to see the names first name, surname but sorted by surname.
Having the option to change the sorting or even fileter users in the same way that admin users can when looking at the user lists would be excellent. I would also love to see more than 10 students at a time. 10 fit nicely on a screen but with the order not matching my paper lists ect, I end up changing to page 2 or 3 and back again regularly. Having the choice to choose 10, 20, 30 etc like in my web mail would be helpful (especially for the groups of 12 to 15 i have)
In reply to Anthony Borrow

Re: Groups implementation - sorting students

by A. T. Wyatt -
Actually, we tried that:
Even though the names were DISPLAYED lastname then firstname, they were still being alphabetized by firstname in the student enrollment section
AND
in places like assignment and gradebook, where the text "firstname" and "lastname" were over the first and second columns, the last name showed up under first name and lastnames show up under first names.

Once I found some directions (but they were from quite a long time ago):

change
if ($sort == "name") {

 $sort = "firstname";

}

to

if ($sort == "name") {

 $sort = "laststname";

}
But thought this occurred in more than one file (index.php, admin/users.php?) and I wasn't sure, so I just stopped working on it and hoped for a global switch to alter the order.

atw
In reply to A. T. Wyatt

Re: Groups implementation - sorting students

by Anthony Borrow -
Picture of Core developers Picture of Plugin developers Picture of Testers
I looked at the code in course/groups.php (revision 1.24) earlier and at least in 1.6.3 it sorts based on whatever the value of fullname is. I just tried on my production site to switch the display of the name to surname + firstname and it did sort the members by lastname but I switched it back because I do not want it to continue to appear that way.

I have gone in and played with the /course/groups.php file and it functions as I suspected.

If I comment out line 174 (the original)
// $nonmembers[$student->id] = fullname($student, true);

and insert a modified version of the line:
$nonmembers[$student->id] = $student->lastname.', '.$student->firstname;

I am able to get the behavior that I want. Similarly, if someone want to sort by username they could instead use:
$nonmembers[$student->id] = $student->username.' ('.$student->lastname.', '.$student->firstname.')';

For consistency the same procedure should be applied to the teacher array on line 185
commenting out line 185
// $nonmembers[$teacher->id] = $prefix.fullname($teacher, true);

and replacing it with either (to sort by lastname)
$nonmembers[$teacher->id] = $prefix.$teacher->lastname.', '.$teacher->firstname;

or (to sort by username)
// $nonmembers[$teacher->id] = $prefix.$teacher->username.' ('.$teacher->lastname.', '.$teacher->firstname.')';

I'm going to add this post to the tracker as a comment since it points the way to the desired solution.
In reply to Anthony Borrow

Re: Groups implementation - sorting students

by Dale Jones -
Anthony, that has solved a huge problem for me. It makes the adding of users to groups so much easier from teacher lists, which means that teachers have yet another obstacle removed from their path. Many thanks.
In reply to Martin Dougiamas

Re: Groups implementation

by Przemyslaw Stencel -
Just to make sure - The "random" button puts all the remaining people into groups randomly, trying to keep group sizes equal and trying to assign an equal number of teachers to each group, am I correct?

Users with a star (*) are teachers.
  • Will non-editing teachers be marked differently?
  • How about random assignment to groups - will the distinction between editing and non-editing teachers be valid here?
In reply to Przemyslaw Stencel

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
I think we should probably ignore teachers when assigning randomly - what do you think? It will probably just complicate things too much. 

Some different symbol for non-editing teachers makes sense, perhaps a + symbol.
In reply to Martin Dougiamas

Re: Groups implementation

by Przemyslaw Stencel -
Students get randomly assigned to groups, but teachers have to be added manually - looks good to me.
In reply to Martin Dougiamas

Re: Groups implementation

by Sean Keogh -
I like that...but would it be possible to add more than one student to a group at a time? This is why I suggested the checkbox idea...the same mechanism that squirrelmail uses for moving messages to folders (or deleting them or otherwise processing them in some way). Once you get a large number of students in a course, you'll need to have a way of bulk-adding students to groups...otherwise someone would be stuck clicking away at a mouse, giving themselves RSI. OK, I admit it...it is likely that the person getting RSI would be me, hence my interest in this aspect.

The random group idea is great, but unfortunately I don't have any say on who goes into which group, as that is all decided by the admissions tutors, I just have to implement what they decide.

...[later thought]

If you could give me some idea of the database structure behind the groups, I could probably work out some way of bulk loading the groups directly into the database.
In reply to Sean Keogh

Re: Groups implementation

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
Multiple students is no problem! Just use shift-clicking or control-clicking in the list (even on the HTML example).  I can't really see any importation method being simpler than that.
In reply to Martin Dougiamas

Re: Groups implementation

by Sean Keogh -
Aha!  That's fine then.  Sorry, didn't actually try out the example, just looked at it.  My brain is a bit tired today...staff shortages and loads of last-minute pre-holiday work.


Oxford Beardie.
In reply to Martin Dougiamas

Re: Groups implementation

by Bryan Williams -

What if "enrollment key" was tied into a group id.  First time a new student logs in they are placed in the group associated with their enrollment key. 

I can't tell you how exciting groups are for me.  My classes will have an ongoing enrollment, with no established begining and ending. I will now be able to control groups of students enrolling in the same class, say a month apart.  Cool!  tongueout   

In reply to Martin Dougiamas

Re: Groups implementation

by Bryan Williams -

I set up a test course with 1 Assignment and created 6 users, divided into 2 groups.  Mary was assigned as a teacher for group 1, without editing privileges.  When Mary clicks Assignments in the Activity panel to review her students, and then clicks "View assignment grades and feedback," she is able to view all students enrolled in the course. Shouldn't she just be able to view student Assignments that are in her group?  

In reply to Bryan Williams

Re: Groups implementation

by Eloy Lafuente (stronk7) -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers Picture of Testers
Uhmm..I think it's WIP (work in progress) big grin

Ciao, smile

-- Edited --

Oops, I've seen Martin's answer just now, but I like the WIP term... big grin

Perhaps a new discussion about Groups would be nice, because this is becoming too large?
In reply to Martin Dougiamas

Re: Groups implementation

by Bryan Williams -
Hope this is not a dumb question (need emoticon with cross-eyes), here goes:  Groups are synonymous with Users, or so it would seem.  Why not locate Group setup in the Administration|Users area?  Everything one needs to manage all types of users, do maintenance and all the other cool things you can already do there, in one place.  thoughtful
In reply to Martin Dougiamas

Re: Groups implementation

by Pablo Etcheverry -
Picture of Core developers
Hi!
    After updating from the CVS, I can see all resources fine, EXCEPT when I click on the "Resources" (/mod/resource/index.php?id=4) link on the left panel. If I do so, I get a "There are no resources" message.
    Is this a problem derived from WIP? smile
    TIA,
       Pablo