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

Improve FHICT Git source #79

Closed
Brend-Smits opened this issue Apr 19, 2020 · 5 comments
Closed

Improve FHICT Git source #79

Brend-Smits opened this issue Apr 19, 2020 · 5 comments
Assignees

Comments

@Brend-Smits
Copy link
Member

In GitLab by @Brend-Smits on Apr 15, 2020, 14:08

The flow for Gitlab is weird. When a user searches for a project, the platform will automatically search the Gitlab API for existing projects that we can show. However, what do we show the user for these projects in terms of Contributors, description or other information that is hard to automatically gather? And what if a user owns a project that is automatically shown via the API, but they want to make changes to for example the contributors or description? How do we handle this?
Why do we not make the flow uniform with other sources like Github:

  • User asks the platform to add projects from the Gitlab source
  • The platform tries to automatically fill in as much information as possible
  • The platform asks the user to confirm if the information is correct if not, the user can make changes.
  • User acknowledges the information for the projects
  • The platform adds and saves the projects.

Doing it this way we can easily add projects from different sources, the experience for adding Github, Gitlab, FHICT Git projects will be similar for every source. It also becomes easier to manage for DeX Platform and easier to implement.

A middle ground would be to do it as following:

  • To not have an empty platform, we can still use the FHICT Gitlab API to show projects, overview, search and detailed project pages will all work as they currently do. We will try our best to show the correct information about a project.
    However, users can claim the projects if the information is not correct, claiming the project will save it in our database (like we do with other projects that people add from for example "Manual add project").
@Brend-Smits Brend-Smits self-assigned this Apr 19, 2020
@Brend-Smits
Copy link
Member Author

Brend-Smits commented Apr 19, 2020

In GitLab by @StijnGroenen on Apr 16, 2020, 21:51

I just discussed this issue with Brend and Rens.
We think that the way that we are currently planning to implement sources (Like the FHICT GitLab) is poor.
By using separate flow for gathering data (Some projects are stored in our database, others need to be retrieved from an external source), it becomes really inconvenient to implement new features or to maintain the system.

We would like to propose another solution for implementing the Digital Excellence system.
Unlike the middle ground solution stated above, we would like to create an extendable system where every project is stored the same. All the projects for all the sources should be stored in our database and added manually by our users. However, adding new projects should be made as easy as possible. The platform should automatically fill in as much information about the project as possible. There should also be some wizard to help the user with importing projects from common sources like GitLab and GitHub.

By creating one single structure for projects, improvements like the search algorithm, sorting, filtering and more only have to be developed for the single database and not for all the sources.
This system would make the application more modular and easier to develop, maintain and extend. The system would also no longer be dependent on external sources or FHICT specific sources. This would make it easier to release to a more general audience (For example other schools).

Of course, this proposition needs to be discussed further. We will bring this up soon in a meeting.

@wilrikdeloose
Copy link

I've discussed this with the Digital Excellence team and I think I have enough feedback to be able to conclude that one uniform implementation for all sources, both internal and external, is more in favor than making one exception for the FHICT GitLab. In other words, create one flow for adding new projects to DeX and do not automatically include all FHICT GitLab projects in search results.

@Brend-Smits
Copy link
Member Author

I've discussed this with the Digital Excellence team and I think I have enough feedback to be able to conclude that one uniform implementation for all sources, both internal and external, is more in favor than making one exception for the FHICT GitLab. In other words, create one flow for adding new projects to DeX and do not automatically include all FHICT GitLab projects in search results.

That's great news, let's dedicate resources to this in the upcoming sprint (sprint 4).

@StijnGroenen
Copy link
Member

I updated the Setup Plan to incorporate these changes.

@Brend-Smits
Copy link
Member Author

This can be closed in favor of #127 , feel free to re-open if you disagree

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

No branches or pull requests

3 participants