-
Notifications
You must be signed in to change notification settings - Fork 14
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
Remove dependency on ZeroMQ? #3
Comments
I'm going to sit on this for a bit. (Not least because whatever decision we come to shouldn't affect the public interface so we can as well make it later as earlier). I'm especially hesitant because I'm just about to add a further dependency on netifaces to overcome the gnarly problems which Linux has in discovering IP addresses via the socket module. AIUI there are two separate issues here: the complexity of building / installing the ZeroMQ stack (on Unix -- on Windows it's trivial); and the loss of learning which results from what it hides. I'm willing to bet that the two most likely *nix platforms for teachers are RPi and Mac OS/X. Is the situation the same for both? And can we work around it with clear instructions? Is it easier if it's installed not via pip but via apt-get / Mac-whatever? To the second (missing out on learning) I think there are a few aspects:
I'll come back to this later when I've thought a little more |
Good points and totally understand (like I said, it's a straw man). OTOH it's a good thing that ZeroMQ abstracts away some of the lower level pain - we don't want to put up unnecessary hurdles to new learners so there's a good argument that the next step in learning should be ZeroMQ. ;-) |
This is a straw man! Please feel free to kick it.
Currently NetworkZero relies upon ZeroMQ. This is not part of the standard Python library (and isn't likely to be). In an educational situation, the more dependencies associated with a package, module, library, application the less likely it is to get past the network administrator in a school.
Also, when
pip install
-ing the project you have to compile ZeroMQ. While it's fine for someone technical to do, for a teacher this is quite intimidating and therefore a barrier to entry and turn off.Finally, from an educational perspective I would expect an ideal user journey to be (very roughly):
At stage three when kids want to learn more about how network zero works they'll encounter ZeroMQ which, as good as it is, ISN'T standard networking. Does this make sense?
The text was updated successfully, but these errors were encountered: