sectorsize512 / mentorship Goto Github PK
View Code? Open in Web Editor NEWLicense: GNU General Public License v2.0
License: GNU General Public License v2.0
Currently the code relies on tuples a lot. It is not a good coding practice for many reasons. Introducing mentee
and mentor
objects will make the code easier to write and maintain.
If a user does not specify how many random lists to generate, use some reasonable default value.
Currently it is hard for a user to quickly get a sense of how good is the list. Producing the following table will help:
Mentee | Mentor | In-person-virtual match | Industry-Academia Match | Not same institution | Topic Match |
John Smith | Angela Davis | x | x | x | x |
Peter Cool | Camilla Uga | x | x | x | - |
...
We want to match people who are otherwise not likely to meet.
This is useful for cases when more mentees are registering late.
Currently, parse_mentor()
and parse_mentee()
are functions in mentee_mentor_class
module. It makes sense to convert these functions into @classmethod
methods for Mentor
and Mentee
classes. These methods will act as secondary constructors for the classes. This should be analogous to how fromfilename()
is implemented here:
Is it not possible to define multiple constructors in Python? [duplicate]](https://stackoverflow.com/questions/2164258/is-it-not-possible-to-define-multiple-constructors-in-python)
$ /bin/python3 /home/vass/github.com/sectorsize512/mentorship/mentee_mentor.py
Traceback (most recent call last):
File "/home/vass/github.com/sectorsize512/mentorship/mentee_mentor.py", line 98, in <module>
with open(argv.menteefile, newline = '') as csvfile:
TypeError: expected str, bytes or os.PathLike object, not NoneType
Currently, all fields in Mentor
and Mentee
classes, including timestamp
and techtopicinterest
are strings. Let's use more appriorpiate data types for storing this data.
If mentee A was mentored by mentor Z in 2022, there is a good chance we don't want the same pairing to happen in 2023.
In this mode, mentees could get multiple mentors assigned. The idea, essentially, is to use the full capacity of the mentors to help as many mentees as possible.
Note, the disadvantage of this approach is that we cannot add more mentees later or accommodate situation when a mentor is suddenly not available. Maybe leave a few mentor slots not occupied?
$ python3 mentee_mentor.py -f
usage: mentee_mentor.py [-h] [-n COUNT] [-f_mentee MENTEEFILE]
[-f_mentor MENTORFILE] [-t] [-v] [-r] [-u] [-m]
We want to foster the community of mentors. So, if a mentor volunteered, we don't want to say: "hey, you know, we don't need your help this time"
Every mentee has a preference of talking either to industry or academia representative. Every mentor specifies his or her affiliation with either industry or academia. Implement mentee-mentor matching that ensures that mentee's preference is respected.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.