Reading/Multimedia/Meetings/Next Cycle 2 Q4 2013-14

'''MULTIMEDIA NEXT CYCLE PLANNING: Q4 - Cycle 2 Meeting Notes - April 30, 2014'''

The Wikimedia Foundation's multimedia team held planning meetings for our next development cycle on April 28 and 29, 2014 in San Francisco. Here are our notes, prepared collaboratively on this shared notepad.

Participants

 * Gilles Dubuc - engineering team lead
 * Fabrice Florin - product manager, host
 * Pau Giner - designer
 * Mark Holmquist - engineer
 * Rob Lanphier - engineering director
 * Keegan Peterzell - community liaison
 * Gergo Terza - engineer

Agenda

 * Goals for Next 6-week Cycle
 * Current Cycle Performance Review
 * Capacity of the team in this Next Cycle
 * Estimate Stories for this Next Cycle
 * Estimate Backlog left for Current Cycle
 * Determine which Tasks to move into the Next Cycle
 * Retrospective for Current Cycle ending now

Goals for Next Cycle
Review this Next Cycle's goals (10 mins).

As a team, we agreed to focus on wrapping up development and releasing Media Viewer v0.2 in the current 6-week cycle, ending this week.

Our next 6-week cycle starts on May 1, and ends on June 11 (second half of fiscal Q4). In this next cycle, we plan to switch our focus to Upload Wizard and Technical Debt, while addressing Media Viewer's most critical issues, as needed.

For this next 6-week cycle, we propose to divide our time evenly between these three main projects:
 * Media Viewer - release worldwide, address final critical tasks (e.g. serious bugs, global load estimates, basic zoom feature)
 * Technical Debt - fix serious issues that need quick solutions (e.g. image scalers, timed media handler update)
 * Upload Wizard - start planning for this project (metrics, feedback, UX designs, code review, unit tests)

See updated Mingle wall for what is now our current cycle.

In subsequent cycles, we expect work on Upload Wizard and Technical Debt to continue to be a primary focus for us. We also hope to start work on Structured Data and File Notifications this summer, as time allows.

See also:
 * Our Q4 goals from last quarter's review slides
 * Last quarter's review meeting notes
 * Last cycle's planning meeting notes

Current Cycle Results
Review Current Cycle achievements and overall performance (15 mins).

See Completed Tasks for this Cycle.


 * Key accomplishments:
 * faster image load
 * complete share, download, embed
 * more license info
 * user opt-out, site disable
 * refactor code base
 * first metrics + surveys
 * more unit tests
 * usability tests
 * UI designs for final features
 * more community discussions
 * release to first pilots
 * updated product plan


 * We completed about 128 development points in the last 6 weeks (vs. 164 points in previous 8-week cycle)
 * Current Cycle Breakdown:
 * Stories: 72 pts. (56%)
 * Bugs: 30 pts. (23%)
 * Tech Debt: 7 pts. (5%)
 * Scope Increase: 15 pts. (12%)
 * Team Meetings: 3pts. (2%)
 * Previous cycle breakdown: Stories 49 points, Bugs 28 pts, Tech debt 31 pts, Scope increase 20 pts, Meetings 35 pts


 * This means about 108 pts. for planned development overall (excluding meetings and scope increases = ~18 points)
 * That's about 21 points per week, or 18 points of planned development per weekly sprint (vs. 13.5 points last cycle, nice improvement!)
 * Note we still have 68! points of tickets that we were hoping to do in the current cycle (an entire cycle's worth of work)
 * Most of these tickets will have to be postponed to a later date, if we want to make progress on Upload Wizard and Tech Debt

Team Capacity
Estimate Capacity of the team in this Next Cycle (5 mins).


 * Estimated capacity : ~11 points/ week = ~66 points for the Next Cycle (a bit less than usual 12 pts, because Mark is away in Zurich)
 * We noted a discrepancy between what we think our team capacity is (e.g. ~11 pts) and what we actually deliver (e.g.: ~21 pts). We want to investigate what's causing this discrepancy, so we can get better at estimating.

Next Cycle Estimates
Estimate Stories proposed for this Next Cycle and come up with the final list based on the estimations and capacity of the team (30min).


 * Estimate Backlog left for Current Cycle
 * Identify top candidates for Next Cycle
 * Estimate new tasks under consideration for Next Cycle

We estimated cards in a second meeting, to include new critical cards for Upload Wizard and Image Scaler issues (e.g.: http://etherpad.wikimedia.org/p/image-scaler-plans )

The Next Cycle wall now includes separate columns for Media Viewer (~28 points), Tech Debt (~29 points) and Upload Wizard (~21 points). See updated Mingle wall for what is now our current cycle.

We moved all leftover Media Viewer cards from the Current Cycle into either this Next Cycle Wall -- or in one of the Media Viewer Release walls in Team Favorites (see upper right corner of Mingle site). We staged them into 4 separate releases (1: pilot release under way, 2: full release of version 2 on all wikis, 3: next release of version 3 later this fiscal year, 4: future releases in future years

Next Cycle Tasks
Determine which Tasks to take on for the Next Cycle, and which to push back to Subsequent or other Cycles (15 mins).


 * Reach team consensus on top priorities
 * Move relevant tasks over to the Next Cycle for development
 * Push back other tasks over to Subsequent Cycle or later
 * Adjust above goals as needed
 * See updated Mingle wall

Retrospective
Review what we did well, not so well, what could be improve, and show appreciation for each other's work (15-30min).


 * Keep doing
 * Continue to be as productive as we were in the last cycle (when we completed a lot of tasks -- with less scope increase as before)
 * Keep collecting metrics even more (it is so useful for us and the community, should do this for Upload Wizard)
 * Go out of our way to write unit tests, our broad coverage was really helpful (almost none of the bugs came back, thanks to unit tests)
 * Community outreach worked well for us, in multiple channels (asked people properly for help, building relationships, getting input from different channels, surveys, etc.)
 * Got better at dealing with secondary tasks that were out of focus before (e.g. GW Toolset)
 * Starting to get transparency right, reports are helpful, communication on mailing list is very useful to get feedback from our users


 * Stop doing/do better
 * We try to take on more than we can handle (too many cards left on the current cycle wall, should be more selective, or stagger tasks in a more realistic way)
 * We're not doing much volunteer developer outreach, may be missing some opportunities there (e.g. someone to work on Media Viewer when we're gone)
 * Handling of bugs in Bugzilla is very messy, should spend more time on Bugzilla


 * Suggested improvements
 * Do metrics even sooner, to inform our decisions (e.g. for Upload Wizard)
 * Do better end-to-end tests (get Gergo and Mark to write some as well, not just Gilles)
 * Create cycle walls that show projects in different columns (E.g.: MV, UW, Tech debt)
 * Host more developer events during Hackathons (e.g. Wikimania, Zurich)
 * Need more developer documentation, list of items that a developer can work on
 * Move more Bugzilla bugs over to Mingle, get ready to address these issues with Phabricator
 * Move more code to Core rather than MediaViewer


 * Show appreciation
 * Pau > Team: Thanks to team for accomplishing so much, and trying to find things that went wrong, to improve process
 * Gilles > Fabrice + Keegan: Thanks for taking such good care of the community outreach, went really well, no drama
 * Fabrice > Keegan: Special thanks to Keegan for all your great work, it's great to have you as a partner
 * Keegan> Fabrice: Yes, you're welcome, we're starting to get the hang of it :)
 * Fabrice > Gergo: Thanks for being the consistent voice of reason, pushing us to be more transparent and improve our development process
 * Gergo > Team: It's nice to work in a team where you can work on these issues, to improve them together
 * Gergo > Team/Pau: Thanks to team for making design a priority and to Pau for responding so quickly to change requests
 * Gilles > Pau: Thanks for your curiosity to learn about Gerrit, developer tools that are not used much by designers
 * Gergo > Gilles + Mark: Thanks for all the work on metrics, was really helpful
 * Gilles > M: Thanks for moving all that metrics code to Gerrit
 * Fabrice > Team: Thanks to you all for all the great work that wasn't mentioned above

Useful links

 * Last quarter's review meeting notes
 * Last cycle's planning meeting notes
 * Completed Tasks for this Cycle
 * Current Cycle Wall
 * Media Viewer Wall
 * Technical Debt Wall
 * Upload Wizard Wall
 * Next Cycle Wall
 * Subsequent Cycle Wall
 * Current Sprint Wall
 * Beta test page
 * MediaWiki.org test page
 * Media Viewer Release Plan
 * Media Viewer Metrics
 * Media Viewer Survey Results
 * Multimedia project hub