Closed
Bug 960835
Opened 12 years ago
Closed 12 years ago
add django-badger to MDN
Categories
(developer.mozilla.org Graveyard :: Profiles, defect)
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: groovecoder, Unassigned)
References
Details
Add django-badger to MDN to enable issuing badges from MDN, and displaying those badges on MDN user profiles.
Reporter | ||
Comment 1•12 years ago
|
||
Les, are we blocked by anything on this first step of doing badges?
Flags: needinfo?(lorchard)
Comment 2•12 years ago
|
||
(In reply to Luke Crouch [:groovecoder] from comment #1)
> Les, are we blocked by anything on this first step of doing badges?
No, and I've started working on it already this past week. Added bug 671908 as dependency, since that was the original tracking bug
Flags: needinfo?(lorchard)
Comment 3•12 years ago
|
||
Not ready for a pull request yet, but there's progress here:
https://github.com/lmorchard/kuma-lib/commits/badger-integration
https://github.com/lmorchard/kuma/commits/badger-integration
Reporter | ||
Comment 4•12 years ago
|
||
Cool! FWIW, I believe Christie is okay using, or at least starting, with using the django admin panel. That's how they do badges on SUMO, IIRC.
Flags: needinfo?(ckoehler)
Comment 5•12 years ago
|
||
(In reply to Luke Crouch [:groovecoder] from comment #4)
> Cool! FWIW, I believe Christie is okay using, or at least starting, with
> using the django admin panel. That's how they do badges on SUMO, IIRC.
Any badges planned to be automatically awarded need to be managed like any other site feature - i.e. in response to site activity like editing pages, logins. That is, with pull requests for badge images & copy and the code implementing logic for the awarding criteria. SUMO's doing a lot of that in the kbadge app & kitsune/wiki/badges.py
The admin panel works for badges that are planned to be manually awarded. We can also enable the views that badges.mozilla.org uses to create badges, which might be slightly friendlier. If we want that, we'll need a blocker bug against bug 671908
Comment 6•12 years ago
|
||
(In reply to Les Orchard [:lorchard] from comment #5)
> The admin panel works for badges that are planned to be manually awarded. We
> can also enable the views that badges.mozilla.org uses to create badges,
> which might be slightly friendlier. If we want that, we'll need a blocker
> bug against bug 671908
Will it be possible to implement automatic awarding *after* manual awarding for some badges? We'd like to launch with the simplest, and therefore non-automatic, workflow possible and then improve over time.
Also, is automatic awarding possible when badge criteria is externally dependent? Some MDN badges, like the Marketplace ones, will be awarded based on events that happen on Marketplace, not on MDN. I don't think they two environments have a way to talk with each other except through APIs which probably aren't in place yet.
Flags: needinfo?(ckoehler)
Comment 7•12 years ago
|
||
(In reply to Christie Koehler [:ckoehler] from comment #6)
> Will it be possible to implement automatic awarding *after* manual awarding
> for some badges? We'd like to launch with the simplest, and therefore
> non-automatic, workflow possible and then improve over time.
Sure, we can get the badges created manually and then backfill with code later.
> Also, is automatic awarding possible when badge criteria is externally
> dependent? Some MDN badges, like the Marketplace ones, will be awarded based
> on events that happen on Marketplace, not on MDN. I don't think they two
> environments have a way to talk with each other except through APIs which
> probably aren't in place yet.
In this case, the best option is for Marketplace to have its own django-badger setup, like SUMO, and host its own content, data, & logic for badges.
We can display Marketplace-issued badges on an MDN profile, but I don't think that MDN should take over Marketplace badges entirely.
Do we have anyone from Marketplace looped in on this stuff?
Comment 8•12 years ago
|
||
(In reply to Les Orchard [:lorchard] from comment #7)
> We can display Marketplace-issued badges on an MDN profile, but I don't
> think that MDN should take over Marketplace badges entirely.
>
> Do we have anyone from Marketplace looped in on this stuff?
Yes, we do. We know we want to add badges to MDN anyway, and the Marketplace team is super busy with other dev priorities, which is why we've opted to implement them on MDN. For the time-being, we want MDN to issue and display Marketplace-related badges, even if this has to happen manually.
Comment 9•12 years ago
|
||
(In reply to Christie Koehler [:ckoehler] from comment #8)
> Yes, we do. We know we want to add badges to MDN anyway, and the Marketplace
> team is super busy with other dev priorities, which is why we've opted to
> implement them on MDN. For the time-being, we want MDN to issue and display
> Marketplace-related badges, even if this has to happen manually.
So, when I said we could issue them manually first and automatically later, I was assuming just MDN badges.
Manually issuing badges for Marketplace from MDN and then automating them against Marketplace activity later is significantly harder, for a number of reasons.
If it's a matter of busy dev resources - I'd much rather learn the Marketplace code base and send them some pull requests, than try to turn MDN into a badge issuing service for Marketplace.
Comment 10•12 years ago
|
||
(In reply to Les Orchard [:lorchard] from comment #9)
> If it's a matter of busy dev resources - I'd much rather learn the
> Marketplace code base and send them some pull requests, than try to turn MDN
> into a badge issuing service for Marketplace.
How would those badges be displayed on MDN then?
Comment 11•12 years ago
|
||
Some more context: This request is related to the development of the Mozilla Developer Program and to the improvement of profiles on MDN. On those profiles, we need to display badges that have been awarded based on external events, such as a developer having their first Firefox OS app submitted to the Marketplace. Ideally, those external systems are also the the badge issuers. But I think that would mean having to have syndication / federation complete so we could display the badges on MDN.
Comment 12•12 years ago
|
||
(In reply to Christie Koehler [:ckoehler] from comment #10)
> How would those badges be displayed on MDN then?
Several options off the top of my head, in increasing order of complexity & cooperation required between MDN & Marketplace:
* Display badges entirely client-side by loading a Marketplace JSON feed
* Poll a JSON feed on Marketplace and stash a list locally
* Receive pings from Marketplace to an MDN webhook as a notification to check a JSON feed
Many, many fewer moving parts than building a full issuing service API.
Comment 13•12 years ago
|
||
(In reply to Christie Koehler [:ckoehler] from comment #11)
> Some more context: This request is related to the development of the Mozilla
> Developer Program and to the improvement of profiles on MDN.
Okay, so it sounds like this is tied to / blocked by bug 933031 (Create Developer Program Membership account).
That is, we don't have unified accounts between MDN & Marketplace yet. So, issuing badges from MDN for Marketplace is kind of a non-starter until we have that.
On the other hand, badges initially issued on Marketplace could later be associated with a unified Developer Program account, once we have some way to connect or merge the separate identities.
> On those profiles, we need to display badges that have been awarded based on external
> events, such as a developer having their first Firefox OS app submitted to
> the Marketplace.
Cool... what I'm saying is that Marketplace is the best home for that badge and the logic that detects the criteria for issuing an award.
> Ideally, those external systems are also the the badge
> issuers. But I think that would mean having to have syndication / federation
> complete so we could display the badges on MDN.
Yes, and I think syndication / federation for a profile display is significantly less complex than building & supporting a badge issuing service.
Comment 14•12 years ago
|
||
(In reply to Les Orchard [:lorchard] from comment #13)
> Okay, so it sounds like this is tied to / blocked by bug 933031 (Create
> Developer Program Membership account).
I don't know. Luke attended our meeting on MDN badges last week and said that it would be possible to implement this first set of Marketplace-related badges this quarter. I'll let him speak to the specifics since I don't know anything about the timeline for the bug above or how much it blocks badges.
> Yes, and I think syndication / federation for a profile display is
> significantly less complex than building & supporting a badge issuing
> service.
Okay, great. Will you and Luke work with the Marketplace devs on that then?
Updated•12 years ago
|
Flags: needinfo?(lcrouch)
Reporter | ||
Comment 15•12 years ago
|
||
I also proposed putting developer-related Marketplace badges on developer.mozilla.org under the purview of the "Program", but "Developer Program" is an external marketing term that is technically and effectively equivalent with MDN. So, technically-speaking, "Program Membership Accounts" == "MDN Accounts".
Les, we can display Marketplace badges on MDN profiles that match by email addresses, without requiring an integrated account database, right?
I agree putting Marketplace badge code into the Marketplace code-base is the most logical choice, and I like the idea of contributing to other teams' code-bases, too.
Wil, if Les is willing to send pull requests to Marketplace for badges, would someone be able to work with him to get them merged and pushed?
Flags: needinfo?(lorchard)
Flags: needinfo?(lcrouch)
Flags: needinfo?(clouserw)
Comment 16•12 years ago
|
||
(In reply to Luke Crouch [:groovecoder] from comment #15)
> I also proposed putting developer-related Marketplace badges on
> developer.mozilla.org under the purview of the "Program", but "Developer
> Program" is an external marketing term that is technically and effectively
> equivalent with MDN. So, technically-speaking, "Program Membership Accounts"
> == "MDN Accounts".
The problem is, there is no connection with Marketplace accounts from MDN. That's part of bug 933031.
So, we can label MDN profiles as "Program Membership Accounts". But, we haven't built any practical enhancements to connect / harmonize MDN & Marketplace profiles. (ie. single-sign-on in bug 932708, Marketplace accounts as program membership accounts in bug 932710, etc)
> Les, we can display Marketplace badges on MDN profiles that match by email
> addresses, without requiring an integrated account database, right?
Possibly - assuming a given developer has both MDN and Marketplace accounts, and has used the same email address for each. Though, that's not a given and is one of the issues that bug 933031 needs to address.
> I agree putting Marketplace badge code into the Marketplace code-base is the
> most logical choice, and I like the idea of contributing to other teams'
> code-bases, too.
>
> Wil, if Les is willing to send pull requests to Marketplace for badges,
> would someone be able to work with him to get them merged and pushed?
This is why I asked earlier if someone from Marketplace is in the loop.
It sounds like we're aiming to build Marketplace features on MDN and vice versa. So, I'd like to know who we've got from that team actively on-board & helping. And, also someone willing to care for & feed the feature once it's been merged, unless I'm meant to permanently become the Marketplace Badges Guy.
Flags: needinfo?(lorchard)
Comment 17•12 years ago
|
||
I started an email thread to get an update on where this fit into Marketplace priorities but it got a million people CC'd on it and has essentially become a parallel discussion to this. So, to summarize what I read in that thread and un-needinfo myself here:
- Yes, Marketplace would like to implement django-badger
- Yes, if Les could help us implement we would appreciate it
- We agree that $site badges should live on $site
- This will need planning on Marketplace side (ie. there are no public profile pages)
- Marketplace won't be ready to start working on this until Q2
Flags: needinfo?(clouserw)
Comment 18•12 years ago
|
||
Initial PR ready for some beatings & review: https://github.com/mozilla/kuma/pull/1906
Comment 19•12 years ago
|
||
Commits pushed to master at https://github.com/mozilla/kuma
https://github.com/mozilla/kuma/commit/b872fe2cb1e491349dfddfa02cfb3b108da9b0ad
bug 960835: First steps toward integrating django-badger views
https://github.com/mozilla/kuma/commit/d4eec51eca915b342bc13a797f0b10806a58388e
bug 960835: Wrap waffle flags & switches around a few active badge bits
https://github.com/mozilla/kuma/commit/f62827eb4698ed1fde248c651a8458f596497da1
Merge pull request #1906 from lmorchard/badger-integration
bug 960835: add django-badger to kuma
Comment 20•12 years ago
|
||
I'm going to resolve this, as I believe it should have been automatically.
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Updated•5 years ago
|
Product: developer.mozilla.org → developer.mozilla.org Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•