-
-
Notifications
You must be signed in to change notification settings - Fork 30
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
feature(website): allow users to specify their employers (corporate social responsibility) #700
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎ 1 Ignored Deployment
|
Visit the preview URL for this PR (updated for commit 9a0ce92): https://si-admin-staging--pr700-corporate-social-res-kolenjti.web.app (expires Thu, 21 Mar 2024 10:43:37 GMT) 🔥 via Firebase Hosting GitHub Action 🌎 Sign: b7b0969384059dce6ea8fad1ee1d1737e54e6676 |
It runs smoothly on my local – great job @anthonyray! I've noticed something about how employers are linked to users. Currently, the user ID is stored directly in the Firebase (fb) collection Then there is the question of how to proceed and evolve from the prototype to the next version. You might already have a plan; otherwise, some things that come to mind include:
|
I will change the way I store userIds to use firebase references.
I consider this to be the next logical step. I would like to provide a visual interface allowing to check newly entered employer values (and possibly correcting them).
This would then be the next step, once we gather enough data on employers.
Also, this could be implemented in parallel. |
Sounds like a plan! |
9710685
to
1a2ebc7
Compare
acf7adf
to
442a191
Compare
aa494d5
to
469aa5f
Compare
as discussed yesterday with @mkue @andrashee : this PR from @anthonyray would be good to be reviewed. Long-term vision: Understanding where some of our contributors work allows us to more effectively highlight these companies and explore potential collaborations. Additionally, there are companies that have supported us through donations (e.g., GitHub, DEZA) or by providing software for free (e.g., Webstorm), which should be acknowledged appropriately – and the list of companies can be extended with the sponsors. While creating individual pages for each company is not the objective of this PR, it is part of our long-term vision. This PR lays the groundwork for eventually developing company-specific pages. A prime example is Stripe, which excellently showcases companies that donate 1% to climate initiatives through their program. See here for the page of the Swiss company Sparkable. |
fyi @anthonyray: I try to find time to look at this in the upcoming days. |
The UI part looks good to me. I would maybe even move it to the "Personal Info" section, I think it would fit well there. What do you think @ssandino? The data modeling might not be perfectly suited for what we want to achieve. I think we should link from the user to an entry in the employer collection, i.e. have a field Do I understand that correctly, @ssandino and @anthonyray? |
Yes |
b39519e
to
dc7f903
Compare
Yes, this is correct. However, I feel like the most common operation we are going to perform is to compile statistics on employers. Let's take an example and suppose I want to get the list of employers that were added this month. Following your suggested database structure, I first have list each user, use their I feel like that with the current structure, the main operations which are basically compiliing statistics on employers, require less database queries. |
Great work @anthonyray. I briefly tested the input mask in the dashboard along with its main functions (add, archive, delete), and everything works as expected: |
The discussion about the DB structure is something for you, @mkue and @anthonyray, to consider. No opinion on this. One thought: As we plan to publish the list of employers that have contributors on the website .../csr (refer to the discussion above), which relies on the |
The high-level approach I envisionned about the data displayed on the
|
ok, that works too! but do we need a separate main collection then? i think it would be cleaner and easier to create a subcollection in the user document. those subcollections can then easily be queried with a collection group. we could then have a public collection with employers, and build a process that links the data from the private subcollection to a public collection. something like this: users collection (private):
employers collection (public):
does that make sense? |
Much better ! Thanks for your insights! Working on this! |
dc7f903
to
1799505
Compare
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks great now! I added one comment, but then this can be merged!
Thanks for doing this @anthonyray!
77d1f27
to
9a0ce92
Compare
This P.R is part of the ongoing work on the Corporate Social Responsibility project (CSR).
The first step is to start collecting company names by allowing users to fill a form with their current employers.
Summary of introduced changes
employers
/me
section :work-info
where a user can specify their employers and update their employment situation1. A new
employers
collectionisCurrent
field is a field to differentiate between companies a specific user currently work for and companies they used to work for.2. The new
work-info
pageFollows the wireframe discussed with @ssandino