stillgreenmoss / pairing-bot Goto Github PK
View Code? Open in Web Editor NEWA Zulip bot that partners people for pair programming practice
License: MIT License
A Zulip bot that partners people for pair programming practice
License: MIT License
I'd love to see an addition to pairing bot where you can restrict matches to specific programming languages. I was going to look into making a pull request for this, but unfortunately I don't know any Go.
It would be cool to be able to do the opposite of skip a day - opt in to pairing tomorrow without changing my schedule!
Pairing Bot does not currently have integration tests. It would be awesome if she got some!
Any recurser, though especially recursers currently in batch, should message me or @parsn1psoup if they'd like to work on this.
I need to add a contributors file :)
It would be a nice QoL enhancement if one could skip being matched on a particular date or on the next occurrence of a day of the week.
Right now if I normally have availability for a pairing session on a particular day that I realize I won't be available for, I need to either remember to send skip tomorrow
the day before, or change my availability in advance, remembering to set it back to my usual availability before the following week.1
Examples:
skip 2023-11-06
would skip matching on that particular date
skip mon
would skip matching on the next available Monday
I'm more than willing to start work on this when I have a moment. Just adding this issue for future reference or if someone else wants to have a go at it!
It would be nice if pairing bot recognized abbreviations for days. Also it seems like it might make sense if the input was sanitized of unexpected characters, and converted to lower-case for case-insensitive matching. I'm willing to put in the work for this and will take a look sometime this week, just adding an issue to start the conversation. :)
At the moment, every 6 weeks everyone is unsubscribed from the pairing bot. This ensures that we start with a clean slate at the start of each new batch. Otherwise, we'd need to track which subscribers are finishing their batch, which would be problematic (some people may want to pair even after the end of their batch, some people extend their batches etc.).
However, this is not clearly communicated to all the users. Currently, a message is sent on the first Wednesday of a batch to the #397 Bridge
stream on Zulip. There is a lot of other noise in that stream, especially at the start of a batch, so this notification may go unnoticed.
Automatically send a PM to notify users when they're unsubscribed, for whatever reason? Or send a blanket PM to @currentlyatRC
at the start of the batch?
Pairing Bot does not currently have a testing environment -- it would be awesome if she did!
Any recurser, though especially recursers currently in batch, should message me or @parsn1psoup if they'd like to work on this.
I keep getting paired with people I have already been paired with
Make sure all parts of the code are documented, and use the godoc format.
Reach out to @thwidge or me if you're interested in tackling this!
This will be implemented as part of a larger effort to re-write pairing bot in python.
To make it easier to understand and reason about the architecture and which components talk to which (app, database, Zulip, GCP cronjob).
Pairing Bot now has tests. It would be awesome if she got some more!
Any recurser, though especially recursers currently in batch, should message me or @parsn1psoup if they'd like to work on this.
We need to get this bot talking to the RC API so that we can automate on and off-boarding at the beginning/end of batch. There's been a little bit of work done on it in this commit, but I heard there might be more coming down the pike??? Pinging @anushriadhia!
After talking to folks about how they hope to use Pairing Bot, I've brainstormed this new bot-behavior accordingly:
subscribe
behavior unchangedschedule
behavior unchanged, except:
schedule no days
gives the user no recurring matches, but keeps them in the databaseschedule monday wednesday
, if issued when unsubscribed, subscribe and schedule for those days rather than erroringpair tomorrow
to sign up for a one-time match the next daystatus
unchangedunsubscribe
unchangedskip tomorrow
and unskip tomorrow
unchangedI'm excited to work on this, but probably won't be able to focus on it much so movement may be slow. Feedback welcome!
We think that using the command pattern to execute user-issued commands in Pairing Bot might make the codebase cleaner and more readable.
Any recurser, though especially recursers currently in batch, should message me or @parsn1psoup if they'd like to work on this.
Right now, there's a couple of places where the code will panic on errors (which shouldn't happen in most cases), some cases where we just log and some cases where a request is aborted.
Make this consistent.
Reach out to @thwidge or me if you're interested in tackling this and have any questions!
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.