open source product management (feat. npm)
-
Upload
forrest-norvell -
Category
Engineering
-
view
757 -
download
1
Transcript of open source product management (feat. npm)
open source product management
with npm
@othiym23 / Forrest L Norvell npm, Inc.
npm
npm is many things• project
• company
• team
• philosophy & ethos
• product family
npm is many softwares
• registry
• website
• CLI
the CLI team
me
npm CLI team duties• meet npm, Inc.’s business objectives
• fix bugs
• support current npm users
• keep npm moving forward
make npm the most useful tool it can be for the most
people
“useful”
pragmatism > rigor
simplicity > completeness
problems > solutions
($ > !$)
• 356 support tickets
• 222 bugs
• 236 feature requests
traditional product management
• own the roadmap
• sell the strategic vision
• mediate between business owners, developers, & other stakeholders
say no a lot, but be stubborn about
what you say yes to
open-source product management
• balance competing demands
• consensus-seeking
• but sometimes you have to say no
example: making npm more
extensible
1. lifecycle
2. ADD M0AR HO0KZ
3. yay!
nope
(2. add more commands, like
git)
npm is not an infinitely extensible
miracle pegacorn
turn the problem inside out
npm as a set of APIs plugged into
a CLI
LET A THOUSAND PACKAGE MANAGERS
BLOOM
CAVEATS
• looked at a lot of different requests
• came up with a global solution for many local problems
• try to keep each goal supporting the others
npm’s roadmap• scoped packages
• multi-stage install / dependency tree realization
• npm as API
• better Windows support
• client-side development support
you
the npm release process
• new release every Thursday
• new releases published to npm@next for about a week of burn-in
• `npm@latest` for safe production release, `npm@next` if you want to help test the next release
supporting npm• the CLI team doesn’t have much time for support
• `npm report` will make crowdsourcing that easier, but it’s a ways out
• answering questions with the `support` label is ❤️ by me
using the npm issue tracker: labels
1.bug, support, feature request
2. next-patch, next-minor, next-major
3. documentation, patch-welcome, and novice
using the npm issue tracker: best practices• don’t add your bug to a closed issue
• …but please do add specific details that helped you
• no such thing as too much information, but gists are useful
• use cases are useful, +1s are terrible
PATCHES WELCOME• pull requests with tests are landed as quickly as practicable
• no patch is too small
• …but some patches are too big
developing npm• `npm test` while developing
• `npm run test-all` before submitting PR
• update the docs, plz
• people who add tests are my favorite people
thanks for listening / thanks for helping / thanks for being you
nice people matter