rubiomarin

Freelance Web Developer & Designer

How to create a private online campus with BuddyPress

| 0 comments

Goal of this tutorial

We want to explain how we have used BuddyPress and some useful WordPress plugins to configure a basic but fully functional online campus for a single course with multiple subjects.

The campus we need will have a public zone for visitors, and a private, password protected zone where teachers and students are able to collaborate in a controlled, structured and easy way.

At this first stage of the project, please note we were focused on developing a prototype able to cope with our functional needs, so be kind with the overall design, theme used, etc. We started from scratch using just a default theme.

As far as we have created it all using open source software, we feel it makes sense returning this tutorial to the community. We hope you may find it useful.

Description of the system

As we said above, we need to create a site with a public zone for visitors, and a private, password protected zone. But of course, depending on what type of identified user you are, you should get a different experience as they all have got different needs.

So before starting with the design and development, a bit of analysis is needed. Let us summarise it here:

Types of users

We have 4 main user roles:

  • Visitors
  • Teachers
  • Students
  • Administrators

All users but the visitors will need to log in the system with a user id and password in order to access all the services of the course. From now on, whenever we will need to describe needs shared by teachers, students or administrators, we will use the term members.

Main functional requirements

Let’s describe all the needs we have to sort out for every type of user.

Visitors

  • Pages with all the public information of the course taking place online, how to enroll and so on.
  • A blog with excerpts of interesting topics being discussed on the course.
  • A form to get in touch with course administrators.

Members

  • Private messages with other members: students, teachers and administrators.
  • Pages with information of the course, its structure, calendar and other useful facts.
  • A common blog containing important news for the whole community of members.
  • A site-wide search engine including member profiles, pages, news and also messages on forums.
  • A site-wide forum to publicly discuss with all the members.
  • Information on currently logged in members.

Teachers

  • Pages to place all the static information related to a subject.
  • A blog to place news related to different subject topics.
  • Subject-wide forums to publicly discuss with students and other teachers of the subject.
  • A private area for teachers to coordinate efforts and to deal with issues.
  • A zone to upload documents available to all the students and teachers of the subject.
  • An online form to privately receive any documents uploaded by students.

Students

  • Pages to read all the information of the structure of the course, subjects, and documentation.
  • Subject-wide forums to publicly discuss with students and other teachers.
  • Group-wide forums to organise projects and exercises carried out by groups of students.
  • A zone to upload documents available to all the students and teachers of the subjects.

Keep it simple

Once we had a first description of the system,  we avaluated different options to develop it. Time before we tried two alternative paths:

  • Use of other open source software specifically designed for e-Learning, namely Moodle.
  • Use of social networks – i.e. Facebook – with closed groups.

But although they may be both really good approaches for other people, they didn’t work for us. Perhaps they could do for you so let us say how it was for us.

Use of Moodle

It is totally out of discussion that Moodle is a great platform with a zillion options for virtually any e-Learning scenario but it was way too much for us. In case you have got highly structured learning contents, then Moodle is clearly the swiss army knife you have been looking for.

But the kind of courses we deal with doesn’t have those highly structured contents and we didn’t need most of the tools provided by Moodle. Also, for both teachers and students, using this software on a daily basis – without specific training – had a learning curve that was greater than expected.

To the end Moodle was for us like having a splendid jacket with 67 pockets, in the sense of whenever you were in a hurry, there was no way to find the keys.

Use of social network

As an alternative to Moodle and looking for easier communication with the students, we tried using a closed group on Facebook. Of course, interaction was far easier and the learning curve was close to zero, as far as virtually all students already had a profile on this social network.

The main problems we faced were:

  • How to share documents without using third parties such as Dropbox, etc.
  • Keeping track of the activity of students.
  • Searching tools inside the group wall were really poor.
  • And of course, loads of time thieves for the students.

BuddyPress

Once discarded both Moodle and Facebook, and after reviewing other opensource options, we finally chose WordPress + BuddyPress. Out of the box it had 80% of the requirements we listed above, so we were not reinventing the wheel.

Then we focused on finding how to solve the remaining 20% via use of WordPress/BuddyPress Plugins. Main requirements to be sorted out with plugins were:

  • Creations of private areas with pages, posts, categories, etc.
  • Upload/Download of documents .
  • A complete search engine covering all the information in the campus.

To be continued

Please check the second part of this tutorial to see how we actually installed and mofidied the software in order to build our campus.

How to create a private online campus with BuddyPress (2nd part)

Leave a Reply