Hi Apache Kudu community,

Apologies for cross-posting, we just wanted to reach a broad audience for
this topic.

Grant and I have been brainstorming about what we can do to grow the
community of Kudu developers and users. We think Kudu has a lot going for
it, but not everybody knows what it is and what it’s capable of. Focusing
and combining our collective efforts to increase awareness (marketing) and
to reduce barriers to contribution and adoption could be a good way to
achieve organic growth.

We’d like to hear your ideas about what barriers and pain points exist and
any ideas you may have to fix some of those things -- especially ideas
requiring minimal effort and maximum impact.

To kick this off, here are some ideas Grant and I have come up with so far,
in sort of a rough priority order:

Ideas for general improvements

   1. Java MiniCluster support out of the box (KUDU-2411)
   1. This will enable integration with other projects in a way that allows
      them to test against a running Kudu cluster and ensure quality without
      having to build it themselves.
      2. Create a dedicated Maven-consumable java module for a Kudu
      MiniCluster
      3. Pre-built binary artifacts (for testing use only) downloadable
      with MiniCluster (Linux / MacOS)
      4. Ship all dependencies (even security deps, which will not be fixed
      if CVEs found)
      5. Make the binaries Linux distro-independent by building on an old
      distro (EL6)
   2. Upgrade Gerrit to fix the “New UI” GitHub Login Bug (KUDU-2402)
      1. Remove barrier to submitting a patch
      2. Latest version of Gerrit has a fix for the bad GitHub login
      redirect
   3. Upstream pre-built packages for production use (Start rhel7, maybe
   ubuntu)
   1. This is potentially a pretty large effort, depending in the number of
      platforms we want to support
      2. Tarballs -- per-OS / per-distro
      3. Yum install, apt get: per-OS / per-distro
      4. Homebrew?
   4. CLI based tools with zero dependencies for quick experiments/demos
   1. Create, describe, alter tables
      2. Cat data out, pipe data in.
      3. Or simple Python examples to do similar
   5. Create developer oriented docs and faqs (wiki style?)
   6. CONTRIBUTING.adoc in repo
   1. Simplified
      2. Quick “assume nothing tutorial”
      3. Video Guide?

Ongoing marketing and engagement

   1. Quarterly email to the dev / users list
   1. Recognize new contributors
      2. Call out beginner jiras
      3. Summarize ongoing projects
   2. Consistently use the beginner / newbie tag in JIRA
   1. Doc how to find beginner jiras in the contributing docs
   3. Regular blog posts
   1. Developer and community contributors
      2. Invite people from other projects that integrate w/ Kudu to post
      on our Blog
      3. Document how to contribute a blog post
      4. Topics: Compile and maintain a list of blog post ideas in case
      people want inspiration -- Grant has been gathering ideas for this
   4. Archive Slack to a mailing list to be indexed by search engines
   (SlackArchive.io has shut down)

Please offer your suggestions for where we can get a good bang for our
collective buck, and if there is anything you would like to work on by all
means please either speak up or feel free to reach out directly.

Thanks,

Grant and Mike

Reply via email to