Proposal: Create UIDs for URLs for course names
Closed, ResolvedPublic

Description

The problem is the following, consider that several different professors/universities/... want to create Linear Algebra books.
We need to host them under different URLs. How should the naming scheme look like?

Option 1: Incremental numbers

Example URLs:

Criticism:

  • A number may look like a "level"

Option 2: Incremental letters

Example URLs:

Criticism:

  • A letter may look like a "level"

Option 3: Random (structured) ID

With structure <number><letter><number><letter>

Example URLs:

Criticism:

  • Diminishes the beauty of nice URLs

Option 4: Inverse random (structured) ID

With structure <number><letter><number><letter>

Example URLs:

Criticism:

  • Diminishes the beauty of nice URLs

Option 5: Some how meaningful IDs

The idea is to add some meaningful IDs, depending on the kind of course.

For courses created on the wiki itself, use the name without ID. If more than one course are created collaboratively, they should differ in name, i.e.

Imported books may keep their old name with a I<n> suffix. So:

In the *highly* unlikely event of a clash in the name of wiki-born courses, we'll use the C<n> suffix

ruphy created this task.Aug 10 2016, 3:58 PM
ruphy updated the task description. (Show Details)Aug 10 2016, 4:01 PM
mte90 added a subscriber: mte90.Aug 10 2016, 4:39 PM

Option 1 it's the better for seo and for the users

ruphy updated the task description. (Show Details)Aug 11 2016, 4:11 PM

New proposal based on some discussion on Telegram channels.

ruphy updated the task description. (Show Details)Aug 11 2016, 4:16 PM

I think 5 is the best option because it distinguish clearly the courses and give and overall information on how they differ

mapellidario added a subscriber: mapellidario.EditedAug 11 2016, 6:23 PM

5 is nice, but again i stress out that we should not differentiate courses about being created on our platform or being imported.

For example, how is imported Leonardo Pacciani's Statistical Mechanics (http://en.wikitolearn.org/Statistical_Mechanics) different from a wiki-born course?
Is the fact that it has been imported a peculiar characteristic of that course? Would that course be renamed with "_I1"?

Moreover, in option 5 how would you differentiate a quantum mechanics course based on Cohen-Tannoudji from a course based on Gasiorowicz? They would be terribly different in their structure and in their way of presenting the content, but they both would be named "Quantum Mechanics", there no particular feature that would differentiate them in a "meaningful" way.
Or again, how would you differentiate a Linear Algebra coure based on Serge Lang's masterpiece from a course based on Abate's textbook?
Would you use incremental numbers/letters? How would this option be diferent from option 1/2?

I would keep the course description in the disambiguation/argument/course (whatever is its name right now) page.
Courses have different characteristics (Textbook they are based on, University of origin, Professor teaching the course, ecc.), too many to be used to properly differentiate the courses URL in a meaningful way. I would show these differences in the disambiguation page.

ruphy updated the task description. (Show Details)Aug 11 2016, 7:02 PM

I see Dario's point (also from the telegram chat), so that maybe a system of tag (or something like that) could solve the problem, but between the actual proposal, I still prefer the 5th.

I'm for 5. I also see Dario's point but I think that a keyword could always be found. For example by adding something to clarify the different approaches.

ruphy added a comment.Aug 21 2016, 1:14 PM

Let's try to find a compromise. Option 4 allows for the presence or absence of a keyword without impacting the URL naming. What we can do is the following:

  1. Course creation on the wiki
    1. The UI asks for a title. It shows relevant courses, suggesting modification of that one.
    2. If the title is already taken, asks for a keyword, defaulting to a random one.
  2. Importing/moving
    1. Check if target title already exists
    2. If it does, ask for a keyword, otherwise do the same as 1.B.

This would lead to creating many courses according to 5, which seems to be the favorite option, but still be solid if there is not a clear way to create a keyword.

I'm also pondering if it would make sense to also create a "keyword policy", to avoid "exclusive" keywords (in the sense that they exclude collaboration) such as unipi2016.

ScimmiaSpaziale added a comment.EditedAug 21 2016, 1:46 PM

About Ruphhy's last proposal,

I like it, it's the best 'til now.

I'm also pondering if it would make sense to also create a "keyword policy", to avoid "exclusive" keywords (in the sense that they exclude collaboration) such as unipi2016

We could use as policy to use the name of the professor who asked for a different version or whom the course is oriented to.

This wouldn't exlude any collaboration as much as calling a book after is author. For example, if a student in Rome studies on "Soardi's Analisi" Book, he would follow his method but not properly his lessons and could create on WTL the "Analisi I (Keyword: Soardi)" Course.

I don't think there could be two different methods from the same professor to the same course, so that would be safe as unique keyword.

This only about a KEYWORD, while I still believe every course would need a clear long description about his proposal.

ruphy added a comment.Aug 21 2016, 2:15 PM

I'm also pondering if it would make sense to also create a "keyword policy", to avoid "exclusive" keywords (in the sense that they exclude collaboration) such as unipi2016

We could use as policy to use the name of the professor who asked for a different version or whom the course is oriented to.

I don't like this very much, I would do keywords just on different methodologies. In any case... that's OT here.

atundo added a subscriber: atundo.Aug 21 2016, 2:30 PM

We are discuss about imported / collaborative since months! Please, we have to find out a DEFINITIVE solution. We cannot go crazy every time a new feature is related to this.

Anyway, because this task is related to T3433, there is no reason to start to think to tags, etc.. We need to find a strategy to name courses. No matter if they are imported or not, except for corner cases (such as a prof. that has particular requests).

In my opinion last @ruphy proposal is the best way. I can not hide show similar courses could be a tough nut to crack but we like challenges.

I can finalize the CourseEditor extension finally if we got a solution asap.

I like @ruphy's proposal. It's perfect.

I'm also pondering if it would make sense to
also create a "keyword policy", to avoid
"exclusive" keywords (in the sense that they
exclude collaboration) such as unipi2016.

Ok, i'm in for the @ruphy 's proposal, but iff the previous policy is enforced

I like Ruphy's proposal.

A "keyword policy" should be defined, however I think it's a subtle topic. For example, as a reader when I search for lectures/notes on google I like finding immediatly something like " unipi2016.". Indeed, this tells me :

  • where notes come from -> info about reliability and similarity with what i'm looking for.
  • how old the notes are -> the more recent the notes are, the less I should find completely different approaches/programs

However such a keyword makes the course "static" in the sense that prevents users from modifying it, so it should be avoided

IMO, A description policy is also needed to reach the same amount of information given by "unipi2016"

ruphy added a comment.Aug 21 2016, 3:59 PM

OK, I see that consensus reached. Thanks a lot to everyone involved in the discussion, I think that the solution is really a good one! :-)

atundo closed this task as Resolved.Aug 21 2016, 9:16 PM

Ok. Good compromise.

ruphy added a subscriber: mbonanomi.Sep 4 2016, 1:47 PM

OK, so, while developing CourseEditor, we figured out it was slightly problematic to implement directly the proposed solution.
@grigoletti, @crisbal, @atundo, @mbonanomi and @ruphy sat down and decided we would not allow identical names, disabling the save button in this case.
This decision will be reconsidered when we encounter serious usecases of conflicting names.

During the past moth I and @davidev started working on importing a huge load of courses and we had to deal with what has been decided here.

First of all: finding a single keyword that fits a course is nearly impossibile, either is terribly reductive and is not that future-proof (two courses may be pretty different, but be described nonetheless by the same single keyword, for example the textbook they are based on).
Finding multiple keywords that describe a course makes the URL terribly long, so long that i would prefer to see a few letters long hash instead.

For example we are importing the notes of the course Algebra 1 written by Michela Montrasio. Since with Algebra the situation is even worse that with Calculus (not only every university has its own way of splitting the arguments into multiple calculus courses, but even every professor has its own way), I asked how she would describe the course: "Gruppi, Anelli, Domini Euclidei, Crittografia", almost a signle keyword for every chapter. Moreover we would have to differentiate this from other courses that may have similar content, ok let's add the textbook that the course is based on "Gruppi, Anelli, Domini Euclidei, Crittografia, Bosch Jacobson".

At this point I would prefer such a URL "Algebra_f0k2". And I understand that

  • The url is not explicative of the content, but for youtube is the same and people deal with it. We are accustomed to non-explicative URL, as long as the page title is.
  • It may be a pain the ass to implement

All I am saying is: Discussing this topic when we didn't have many courses may have led us to a sub-optimal solution, I would ask everyone to meet again and find a better and future proof solution.