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

Rename evalutils to... #220

Open
jmsmkn opened this issue Oct 17, 2019 · 6 comments
Open

Rename evalutils to... #220

jmsmkn opened this issue Oct 17, 2019 · 6 comments
Assignees

Comments

@jmsmkn
Copy link
Member

jmsmkn commented Oct 17, 2019

We should think of a new name for this package as @silvandeleemput is introducing templating for model containers or processors, so evalutils is no longer a good name (was it ever?).

What is the purpose of this package? It is a passive code generator, maybe a factory, for different types of containers (artefacts?) that will go onto grand challenge (a warehouse?). So, some thoughts:

  • Grand Challenge Container Factory (gccf)
  • Grand Challenge Artefact Factory (gcaf)
  • magazijn (dutch for warehouse, fits a little bit with the COMIC name, and is available on pypi...)
@cjacobs1
Copy link
Member

Good idea to rename! Evalutils is also a repository for general evaluation code, right?
Why not have evalutils as the library which provides templates for an evaluation container, and all the evaluation code that can go in there? And make a new repo for the processor templating, and possibly in the future also some processor general code?

Names could then be 'Grand Challenge Evaluation Utils (gceu)' and 'Grand Challenge Processor Utils (gcpu)'?

@jmsmkn
Copy link
Member Author

jmsmkn commented Oct 20, 2019

I would prefer to have 1 package for doing all of this as we make this available on pypi so that users can install it via pip, and that is quite a lot of work that would be best not to duplicate, and both the evaluation and model templates use a lot of the same code and are coupled, so, I really don't think that we should spilt the repo up.

I still quite like magazijn, it's not specific and wouldn't box us in in the future when requirements change (side note: I think the requirements for this package is clear: passive code generation for packaging code that will be uploaded to grand challenge), I don't think that it's a requirement that a library name tells you what it does (eg, use django, flask, rails for your web framework, pytorch for your neural nets), but then again there are libraries that do (requests, scikit-learn, left-pad).

@jmsmkn jmsmkn self-assigned this Oct 29, 2019
@bramvanginneken
Copy link
Member

I'm fine with a noninformative name. Is magazijn not hard to pronounce for non-Dutch people? Or does the use of ij good because it makes the name stand out?

@jmsmkn
Copy link
Member Author

jmsmkn commented Feb 25, 2021

It probably is, I bet that I butcher it. I don't think that ij is a barrier - ijson has 28 million downloads from pypi (324th most popular, but this would be pronounced EYE-JAY-SON I guess), there are also completely unpronounceable things like aioxmpp (33M/295th), or non-english words like werkzeug (197M/45th). Even large companies have products that native English speakers cannot agree on the pronunciation of.

However, I am definitely open to any suggestions. Changing names is possible (https://github.com/simonw/pypi-rename) but ideally should only be done once.

@bramvanginneken
Copy link
Member

Alternatively, we could rename it to gcutils. Like gcapi. Why is gcapi a repository under DIAGNijmegen? Wouldn't it be logical to have this under one organization?

@jmsmkn
Copy link
Member Author

jmsmkn commented Feb 25, 2021

I don't like utils as a name - to me it seems like a collection of unrelated functionality that doesn't have a home, the draw in the house full of lightbulbs, batteries and keys that people have forgotten what they open.

I also find naming things really difficult, so am happy to go with it if you think it's right.

Gcapi is in diagnijmegen as it was used as the abstraction of grand challenge for cirrus, and started as a private repo in there which grew.

I also wonder if we should expand the scope of evalutils to incorporate the api client into a more user friendly cli tool that uses it internally, so that you could template out artifacts, but also upload containers, make submissions and start algorithms, etc. Kaggle has a nice one which is just called kaggle, aws have aws, but grand-challenge is a lot to type out for every command. Digital ocean and kubernetes solve this with doctl and kubectl. gc you can't really use by itself as it's garbage collection in many programming languages.

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