Skip to content
This repository has been archived by the owner on Apr 22, 2023. It is now read-only.

Automate Meeting Participant History Document #267

Closed
amiller-gh opened this issue Mar 6, 2018 · 24 comments
Closed

Automate Meeting Participant History Document #267

amiller-gh opened this issue Mar 6, 2018 · 24 comments

Comments

@amiller-gh
Copy link
Member

Just for fun, I wrote a quick proof-of-concept script that pulls attendance data from meeting notes committed to a repository. Would love to discuss if / how we should productize it, or something like it.

Problem:

The CommComm has been hand-managing a participation spreadsheet to track people who attend CommComm meetings. This has proven onerous for current members and the spreadsheet often falls out of date.

Proposal:

It is possible to automate meeting participant history documents for the CommComm – and potentially for the individual working groups as well.

We can host a small static page (literally just an html table), re-generated every 24 hours, that displays attendance data for any number of repos that follow CommComm's format of publishing meeting notes in /meetings/YYYY-MM-DD.md.

Pros:

  • No longer have to worry about tracking participation across all meetings.

Cons:

Questions:

  • Do we have a place to host this that can run a simple script on a cron job.
  • Are there other ways to use this script (or other forms of automation) that don't require hosting?
  • Do we need this added complexity if we can just hand-edit a spreadsheet?

Thoughts? 🙂

@Bamieh
Copy link
Contributor

Bamieh commented Mar 7, 2018

Just sharing my thoughts:

We can have a CRON job on travis and have the results appended to a meetings markdown file in the repo and pushed back to github. The script can be separated into a special branch on the repo.

@Tiriel
Copy link
Contributor

Tiriel commented Mar 7, 2018

Just an open question: is it really relevant to do this now while we are thinking about restructuring the CommComm efforts and maybe changing the pathway to become a member? #253

Other than that, the html page solution seems the "user-friendliest" to me!

@WaleedAshraf
Copy link
Contributor

WaleedAshraf commented Mar 7, 2018

I think Heroku is the best place to host. It also has built-in CRON jobs. I use it for multiple, small projects. We can get a free Node.js dyno.
I'm available if any kind of help is needed for Heroku setup.

@mhdawson
Copy link
Member

mhdawson commented Mar 7, 2018

@WaleedAshraf I think it might be better to host in the Node.js infra. This gives us more control and means we don't need to manage additional external credentials. Might be good to talk to @joyeecheung from the automation team.

@WaleedAshraf
Copy link
Contributor

@mhdawson I get your point. 👍
@joyeecheung @amiller-gh Let me know if you guys plan for a short meeting on this.

@joyeecheung
Copy link
Member

@WaleedAshraf I'd be happy to help, but I don't really have a better idea about the hosting either. AFAICT what we're gonna need is a script that automates what OP proposes, and something that runs it periodically. You might want to check out nodejs/build#1067 , or, use something similar to CRON jobs in Jenkins (we have those kind of things for running tests on nodejs master every day)

@WaleedAshraf
Copy link
Contributor

@joyeecheung thanks. We had a discussion about this in todays CommComm meeting but I think there is still no final decision.
@amiller-gh can comment better.

@amiller-gh
Copy link
Member Author

amiller-gh commented Mar 26, 2018

Hey all,

Further refined the proof-of-concept and have it online here: http://nodejsparticipants.info

Code is ugggly, but lives here: https://github.com/amiller-gh/nodejs-participation

The nodejsparticipants.info site has no CI, auto-deploy or chron job set up right now, its just to show that the project works! Happy to make this deployment a bit more robust, but equally happy to hand off the project to someone that wants to hook the site generator into the Node.js infrastructure.

Anyone should also feel free to go and make the site generator itself a bit more robust. Theres a lot that could be done to clean it up. Also happy to move the repo into the Node.js org if that is wanted 👍

@bnb
Copy link
Contributor

bnb commented Mar 26, 2018

@amiller-gh wow, that is absolutely stellar! ✨

Not sure what the next steps from here would be... we may want to include this as a subdomain on the site or something like that. 🤔

@amiller-gh
Copy link
Member Author

amiller-gh commented Mar 26, 2018

I like participation.nodejs.org or meetings.nodejs.org (for if we ever want to throw more functionality on it 😉 )

It can definitely stay as-is at http://nodejsparticipants.info, but I think we'd be better served by the tool being officially adopted by the community. If we're going to fully support this as a part of the admin tooling moving forward I'd love to see:

  1. The repo moved in to Node.js org
  2. The project deployed on a Node.js sub-domain
  3. A protected "production" branch in the repo that is automatically deployed when pushed to
  4. The chron job set up to run npm run build and re-generate the static site once per day
  5. Improvements made to the site! This can be iterated on at our leisure after the CI/CD pipeline from steps 1-4 are done. The site is helpful and functional as is, but could be much better. These improvements may include
    • Use a templating system for DOM construction instead of template strings
    • Embed the Node.js calendar on the site
    • Pull in a framework to help with table functionality (ex: sorting columns, sticky table header)
    • Tests. I hear those are good.
    • Literally anything to make it work better than the proof-of-concept committed right now!

I can help drive 5, but I don't have the access or domain knowledge for 1-4...who here does and has the cycles to move it forward? 🙂

@amiller-gh
Copy link
Member Author

amiller-gh commented Mar 26, 2018

Also want to re-surface @Tiriel's comment above:

Just an open question: is it really relevant to do this now while we are thinking about restructuring the CommComm efforts and maybe changing the pathway to become a member? #253

I still think there is value here, but figured I'd keep that discussion thread going 🙂

@WaleedAshraf
Copy link
Contributor

Great work @amiller-gh 👍
I can help with templating, will try to add ejs view in it.

@Tiriel
Copy link
Contributor

Tiriel commented Mar 27, 2018

This is great work!

Just quick comment, this is somewhat broken on Firefox, the handles column is merged with the last meeting column.

To answer my own question, seeing the amount of work to be done on the membership issue, I'd say this could stay handy for some time. And anyway, even when this will have been dealt with, we'll still have to track attendance for those who have requested membership before the changes.

But I'm glad you surfaced the question again, I think we need to be ok with every aspect of the question.

@ghost
Copy link

ghost commented Mar 27, 2018 via email

@amiller-gh
Copy link
Member Author

Told you the code was bad 😅Literally just got it building something that looks like a table.

Committed and deployed with the Firefox fix, but @WaleedAshraf please have at it! Look forward to seeing the update.

Any takers on tackling deployment infra? @mhdawson, any insights?

keywordnew pushed a commit to nodejs/website-redesign that referenced this issue Mar 29, 2018
@WaleedAshraf
Copy link
Contributor

added templates,
Hosted it to Heroku with cron job to update daily: https://nodejs-participation.herokuapp.com

This ^ is just for testing. Need more improvements.
@amiller-gh can you share your email id?

@amiller-gh
Copy link
Member Author

Love it 🎉 Merged in. Like I mentioned on the PR, feel free to DM me on Twitter to chat about pointing http://nodejsparticipants.info/ to your Heroku box for now until we figure out a longer term deployment strategy 👍

@WaleedAshraf
Copy link
Contributor

Sure 👍
I thought to invite you to Heroku instance. But it's not necessary at all.
Sent you DNS info on twitter. 🎉

@amiller-gh
Copy link
Member Author

@codeekage, there is still work to do with this ticket – I'd love to see this reporting dashboard possibly pulled in to the main project and documented somewhere 🙂 Will get this back on my todo list.

@WaleedAshraf
Copy link
Contributor

@amiller-gh yes and we need to deploy it somewhere on Nodejs servers and get rid of Heroku.

And also, there is some issue with Heroku cron that it doesn't reflect changes on restart. I have re-deploy whole site. (not a big task but still)
If anyone can take a look on that, welcome. My thoughts that it can be fixed when we deploy site on some aws/nodejs server.

@bnb
Copy link
Contributor

bnb commented Jan 2, 2019

@amiller-gh is this still a needed tool? I definitely don't think it hurts to have it and would be happy to assist with getting it up permanently if hosting is the final barrier. Additionally, we could incorporate this into the new website if desired. Mostly just want to get a go/no-go on this and resolve the issue if possible :)

@amiller-gh
Copy link
Member Author

Work is still needed to get this across the line! The existing site at https://github.com/amiller-gh/nodejs-participation will work, but we need permanent hosting, and there are umpteen million improvements that can be made. Feel free to take it on if you have the cycles 👍

@bnb
Copy link
Contributor

bnb commented Jun 25, 2020

We've somewhat moved away from this and haven't seen any additional traction on it. If folks would like to continue with it, please feel free to comment now. If there's no +1s to continuing and folks willing/able to do the work, I'll close the next time I take a look at it.

@Trott
Copy link
Member

Trott commented Apr 22, 2023

I've unarchived this repo so I can close all PRs and issues before re-archiving.

@Trott Trott closed this as completed Apr 22, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

8 participants