nodejs / badges Goto Github PK
View Code? Open in Web Editor NEWFacilitating the design and development of Node.js Open Badges and associated content.
License: MIT License
Facilitating the design and development of Node.js Open Badges and associated content.
License: MIT License
Hey @amiller-gh
can I also be a team member for badges
I am interested in working on this idea
Give repository write access to team @nodejs/badges
While it's nice that we're bashing our brains out thinking about possible badges, it would be nice to immerse ourselves into the constraints of the environment every once a while, helping us stay realistic and avoid us getting ahead of ourselves.
Here, IMO, the biggest (and perhaps the only) bottleneck is the availability of the webhooks that GitHub provides and Node allows. Let's make a list of all the badges we need and which webhooks we'll need for them.
Badge | Hook | Org Hook |
---|---|---|
Core Collaborator | member |
✘ |
Member | organization |
✔️ |
WG/Initiative | membership |
✔️ |
[ NEEDS TO BE COMPLETED ]
Hey @nodejs/badges,
In our first inaugural meeting we discussed ensuring the time for our recurring meeting will work for everyone moving forward.
So... that means another Doodle poll!
Please fill it out here:
https://doodle.com/poll/6devt9fd37f2ga5c#calendar
UTC Thur 05-Apr-2018 15:00 (03:00 PM):
Timezone | Date/Time |
---|---|
US / Pacific | Thur 05-Apr-2018 08:00 (08:00 AM) |
US / Mountain | Thur 05-Apr-2018 9:00 (9:00 AM) |
US / Central | Thur 05-Apr-2018 10:00 (10:00 AM) |
US / Eastern | Thur 05-Apr-2018 11:00 (11:00 AM) |
London | Thur 05-Apr-2018 16:00 (04:00 PM) |
Amsterdam | Thur 05-Apr-2018 17:00 (05:00 PM) |
Moscow | Thur 05-Apr-2018 18:00 (06:00 PM) |
Chennai | Thur 05-Apr-2018 20:30 (8:30 PM) |
Hangzhou | Thur 05-Apr-2018 01:00 (11:00 PM) |
Tokyo | Fri 06-Apr 2018 00:00 (12:00 AM) |
Sydney | Fri 06-Apr-2018 04:00 (01:00 AM) |
Or in your local time:
UTC Thu 19-Apr-2018 14:00 (02:00 PM)
In your local time -
https://www.timeanddate.com/worldclock/fixedtime.html?msg=Node.js+Foundation+Badges+Meeting&iso=20180419T14&p1=1440&ah=1
@nodejs/badges
Edit: Added @Tiriel to invitees.
The style guide should provide enough of a framework to maintain visual consistency across the entire Badge collection, while providing enough flexibility to encourage creativity and variety in future Badge designs.
Examples of Illustration style guides: Atlassian, Behance, Dropbox
Note: It may be possible to extend this illustration style guide to the Node.js project as a whole – a great crossover opportunity with the Website Redesign initiative @oe !
Nodeschool has a great example of a simple badge template to use for custom stickers. Whatever style we land on, we should provide this template and the style guide in a number of formats.
Lets collect examples of badge styles we like from across the web in the discussion below. Then, we can develop a selection of badge style proposals to shop around, collect feedback on, and refine.
@nodejs/badges team can we prepare the v1 before the Spring Summit and talk to the organizing committee fund us get stickers for the decided v1 list #8
I think we can all agree that it is ideal to automate the badge issuance process as much as possible. A large number Badge criteria fulfillment hooks can probably be triggered by GitHub events (ex: Addition to a GitHub team, first commit, n-number of engagements with a repo, etc... See #8).
If we integrate with an issuer platform that exposes an open API (like Badgr, see #3) we can use (or create) a GitHub integration that awards badges automatically in response to GitHub events. New Badges that are issued in response to GitHub events should have to specify the exact hooks they respond to in their RFC (see #4).
In my many, many minutes-long Google-exploration, I did not find an Open Badges integration available for GitHub. The majority use case for Open Badges appear to be for formal and informal educational programs, not for open source contribution and engagement — despite it being a perfect tool for OSS community development!
If there is in fact no pre-existing way to automagically award badges based on GitHub actions, this would be an amazing contribution that Node.js can give back to the larger open source ecosystem, while we also scratch our own itch to ease long-term maintenance of Node.js Badges.
@williamkapke, you've had some experience with Github integrations via nodejs/community-committee#22. What are your thoughts on the feasibility, scope, and security concerns of what I've outlined above?
I had been tinkering with a few things regarding the issuance and the GitHub bot, and I thought to myself: how do we determine what the recipient's email/username is?
Perhaps we could force them to use the same username (difficult) or email (easier) as their GitHub account?
Many badge issuer services are built-in to educational tools (ex: Moodle, BadgeList, ForAllRubrics, TopClass, etc...), others are more enterprise focused (ex: Acclaim, NOCTI, Bestr, OpenBadgeFactory, Credly)
The ideal solution for Node.js appears to be the open source service called Badgr.
Badgr seems to be the largest public player in the Open Badges space and provides a fully featured, free service, with multiple-user management of issuer accounts, and an open API.
By using Badgr for our issuer account management, we also are supporting one of the only open source implementations of an Open Badges server!
To play with the service I set us up a Badger account here: https://badgr.io/issuer/issuers/SEbc17G0S5e3_zrR44oZ_A
If there are no objections to using Badger, or other services we want to evaluate, we can use this account as Node.js' primary issuer service and I'm happy to add other members of the CommComm / Badges Working Group as co-owners 👍
Shall we create a new project under badges for v1 badges list and shift all our available resources and conversations over there instead on the issue #8
Once a new badge RFC is accepted (see: #4), there will be work required outside of GitHub to officially release it. This process should be a well-defined, clone-able ticket, with manageable sub-tasks, that we can open as an issue for every new Badge.
We will need to determine what content will constitute our 1.0 launch of Node.js Badges. These badges should follow the process decided upon in #4, but for the V1 release of badges, having a list of 5-10 inaugural badges to iterate on will help with this initial launch and iterating on the style guide (see: #7).
What would you like to see in a first set of badges? Ideas already thrown out elsewhere include:
I'm happy to continue with async communications, but think the project may benefit from an in-person meeting! If we held a meeting for Node.js Badges, who would like to attend? If there is enough interest, I will send out a Doodle to determine the best time.
This may be a different scope as I think many of the badges were for collaborators within the Node.js community.
I was thinking a badge we could let modules use which support N-API might be a good way to help promote adoption.
Devs love their laptop stickers, and it would be amazing to offer these badges as vinyl stickers to recipients! At the end of the day, Open Badges are just images, so it will be impossible to prevent counterfeits. However, a happy-path to receiving stickers for those what want them will help to solidify Node.js Badges as an important part of the community culture.
The easiest way to make this happen is to just make all Badges available as stickers in a Node.js store. This can either be through the existing store.nodejs.org storefront, or through a new account from a service like RedBubble. Badge descriptions can include a link to the official store page where the badge stickers (or pins?!) may be purchased.
It would be nice to limit official purchases of stickers to those that can prove they've been awarded the badge. I'd be interested to hear proposals for how we can pull this off, but I don't want to see it to block us from offering Badge specific merchandise.
There are also opportunities to provide Badge related merchandise at conferences and in-person meetups. This should be considered on a by-event basis, but it may be good to offer guidance for how to plan ahead for event-specific Badges.
@bnb, who would have information about the current storefront, who maintains it, and what kinds of product offerings we can make through it? Those details will help dictate what we're allowed to actually offer and/or what platforms we're allowed to use.
Other outstanding questions off the top of my head:
We need a process to evaluate and accept new badge and pathway proposals. I recommend we use an RFC-like process for new additions. Every new badge or pathway proposal will be submitted as a PR to add a new file to the @nodejs/open-badges repo by filling out a template markdown file with the required information. Discussion will happen on the PR and when consensus is reached by the Open Badges Team, the PR will be merged
Outstanding questions:
What information do we need in the RFC template?
Do we require a final design before merging the PR? If no, what is the design process?
Does the larger Community Committee want final say on badge approval?
What is the process for modifying badge designs / criteria?
Is there a better format / process for proposing new Badges?
I welcome anyone to take a stab at a first draft and opening a PR for further discussion.
May be helpful to include more copy about what this working group is, our responsibilities, and the intended impact of this initiative.
While thinking stuff about the automation workflow for issuing badges, I came upon this:
Because we're using GitHub's webhooks to trigger the badge issuance methods, we'd have access to the GitHub details of the user (here: contributor) under consideration. However, the badgr API will need the details from their badgr which may (and probably will) be different.
In order to correlate users, we would have a few options, a subset of which is:
Make a database mapping our contributors' GitHub credentials to their Badgr credentials and use it while issuing badges.
Automatically issue a badge to a badgr user with the same username (thus forcing username consistency upon contributors) [BAD]
Automatically issue a badge to a badgr user with the same email (thus forcing email consistency upon contributors) [RELATIVELY LESS BAD]
@nodejs/badges and others, please vote on these and if possible, propose better ones.
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.