Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use/Migrate to Open Source softwares to manage the MOOC #17

Open
heitorPB opened this issue Nov 12, 2018 · 16 comments
Open

Use/Migrate to Open Source softwares to manage the MOOC #17

heitorPB opened this issue Nov 12, 2018 · 16 comments

Comments

@heitorPB
Copy link

This OpenScience initiative is great! Keep the good work!

I'd like to brainstorm a bit on how to select a tool to use. In order to achieve an Open Everything status, the tools/services used should be Open Source also. For example, git is an free and open-source tool, but GitHub is a non-paid proprietary service. GitLab on the other hand uses only open-source software on their services. An open-source alternative to Slack is Riot.

@Protohedgehog
Copy link
Contributor

Aha, this is an excellent discussion to have. I think @dannycolin has been looking into some alternatives for this too.

While I love the idea, we have to consider the impact of moving the whole project to different platforms, especially with large existing communities in them. For example, if we could do a simple migration from GitHub to GitLab, I wouldn't object to that. This is something I'd love to hear about from others too though. :)

@stain
Copy link

stain commented Nov 12, 2018

That is a great political principle I would support! Agree with @Protohedgehog a community transition would have to be carefully managed. Moving repositories and issues are generally easy, moving people is tricky. And if you make yourself "too GNU" it can be alienating to newcomers.

@alexmorley
Copy link
Member

I ❤️ Open but would be very cautious with moving away from Github (slack to a lesser extent) - I'd be happy with just making clear to learners that this is a proprietary platform, and that there are OSS alternatives.

My main justification for the worry would be that for educational purposes I want to:

  • have the lowest possible barrier to entry (IMO github UI and docs are >>> for beginners than anything else)
  • give people the skills that will be the most transferable to other projects (alas there are still many more people developing openly on github, in science and elsewhere, than anywhere else)

@heitorPB
Copy link
Author

heitorPB commented Nov 12, 2018 via email

@dannycolin
Copy link
Member

As a Free and Open Source user myself (and also developer), I'm really for having
more open tools but like others already said we need to be carefully when it
comes to migrate to a new platform.

So here's my opinion on the subject and some informations on the tools proposed.

GitLab

It's true that GitLab is more free than GitHub but the instance running on
GitLab.com isn't Open. GitLab offers two versions that are :

  1. Community Edition
    100% Free and Open Source but you have to host it yourself. That mean you
    need to pay for a server and you need to maintain it (keep it up-to-date).
  2. Enterprise Edition
    Not 100% Open and this is the version running on GitLab.com

In other word, moving to GitLab.com wouldn't make us more free. And at the
moment, we don't have the people nor the financial resources to self-host an
instance of GitLab.

A solution for now could be to create a task in the module 5 based
on GitLab. It would give people a free alternative to GitHub.

We could also add this as a prerequiste to every tools we teach in the different modules.
What do you think about that?

Riot

I've tested it and it works great but I have to admit that newcomers will
probably face a bigger learning curve with this platform than they have to face
with Slack. The interface is a bit less intuitive and like others pointed out
it's not an easy task to move people to a new platform.

So my opinion on that would be that in order to move on Riot we would definitely
need to do a guide to help people migrating. We would also need to give people
time. I think if we go that way we should open an issue just for that migration.

Finally,

I'd be happy with just making clear to learners that this is a proprietary platform, and that there are OSS alternatives.

I'm also voting for that. I think it should even be an obligation to make clear if a software that we propose is Open or not.

This idea of having a note saying the tool/service/platform is proprietary and a list of alternatives is a good idea.

So since it's not the first time someone on a thread think that a list of alternative would be a good idea, I have added to my todo list a task of creating a small website à la alternativeto.net (nothing to fancy) where people could enter a software name and in return a list a Free and Open Source alternative will pop up. If others here would be interested to help I could create a new repository to coordinate it.

@heitorPB
Copy link
Author

heitorPB commented Nov 12, 2018 via email

@dannycolin
Copy link
Member

We could also add this as a prerequiste to every tools we teach in
the different modules. What do you think about that?

You mean for every tool in the modules to be open source?

I mean if there's a task with a non-free software, we should at least have a alternative task (if there's a alternative ofc) with a FOSS software. In that case we could have a task with GitLab and a small list of instance that run the Community Edition (maybe also GitLab.com with a note saying that it's not 100% free but better than GitHub etc.).

That would be great! I don't have experience with web development but I am quite good at opening issues at repositories ^^

It's not a problem there's more than just code ;)

Btw here's a list of FOSS gitlab that you can use for your project:

@alexmorley
Copy link
Member

alexmorley commented Nov 13, 2018

@dannycolin We can coordinate on alternativeto.net if you want, they key step is to create a reasonable database of the correspondence between the FOSS and alternatives; at the moment AFAIK none exists. I need to create one for a separate project (alexmorley/Back-Your-Scientific-Stack#2) so we can collab on making that database if you fancy 😄

@nemobis
Copy link

nemobis commented Nov 13, 2018 via email

@dannycolin
Copy link
Member

@nemobis I think @alexmorley was talking about an alternative to alternativeto.net :).

If I do a recap of the discussion, we pointed out 3 different issues (see list below). I'll create a new issue for 2 and 3. So this is one could focus on 1.

  1. Use/Migrate to Open Source softwares to manage the MOOC (Use/Migrate to Open Source softwares to manage the MOOC #17)
  2. Suggest alternative tasks that use Open Source softwares (Suggest alternative tasks that use Open Source softwares #18)
  3. Create a OpenSource softwares database à la AlternativeTo.net (Create a OpenSource softwares database à la AlternativeTo.net  #19)

@dannycolin dannycolin changed the title Use only open-source tools Use/Migrate to Open Source softwares to manage the MOOC Nov 13, 2018
@dannycolin
Copy link
Member

dannycolin commented Nov 22, 2018

To follow up on this issue, here's a proposal for a [possible] future migration.

  • I strongly believe that promoting free and open source softwares is a core principle of open science and I know that people here think the same.
  • I also know that for the time being we don't have the resources to self-host our own services.
  • Finally, it's easy to migrate code but it's harder to do the same with users. But the more we wait the more it'll be hard to do the migration.

I propose that we flag this issue as a bug and act accordingly. This means that :

  1. we will use platform that are as free and open source as possible.
  2. we will investigate, compare alternatives to GitHub and Slack.;
  3. we will put in place a migration plan.

Of course, there's no rush for the moment to put that plan in action. The goal of this proposal is to acknowledge that we all agree on the principle of using as much free and open source softwares as we can.

@heitorPB
Copy link
Author

1. we will not open new collaborative platforms that aren't open source;

I'd suggest as open as possible and as closed as needed. As you mentioned, you'll need resources to host your own services and that might not be easy. GitHub is not open-source, but allows you to be transparent and show your source.

2. we will investigate, compare alternatives to GitHub and Slack.;

I mentioned Riot as alternative to Slack because:

  1. It uses an open protocol: Matrix
  2. It's open source
  3. There's an Open Science room there :) (and it was there that I found out this OpenScience MOOC)
  4. If you don't like Riot, there are other softwares that are in the Matrix ecosystem and you can use them to access the same chats/rooms/users
    There's a redesign of the user interface coming out soon.

@dannycolin
Copy link
Member

I'd suggest as open as possible and as closed as needed.

@heitorPB I've edited my comment. Thanks for the suggestion! It think the as open as is sufficient tho.

If everyone agree with the proposal, I think we could chat about alternatives in the platform channel on Slack. :)

@dannycolin
Copy link
Member

Hey all, I've created a table of software alternatives in the Wiki https://github.com/OpenScienceMOOC/Main/wiki/Default-to-Open:-Migration-plan-for-the-OpenScienceMOOC

If you have other suggestions don't hesitate to add them even if you can't find all the informations :).

@heitorPB
Copy link
Author

I would add this note for the Riot entry:

Riot is one client for the Matrix protocol, a federated open protocol for real-time communication. There are several other clients available. You can also create your own server with one of the available server softwares.

@dannycolin
Copy link
Member

@heitorPB Yes, you're right. I think I'll change it for Matrix and add a link to the clients suggested on the Matrix site.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants