Activation & Retention of Developers - Micro-Challenges

Hi all!

We’re working on ways that we can continue to not only create, but foster lasting relationships with members our developer community.

One of the IMO most valuable strategies, and the one I personally would like & benefit from most if I was an external dev, is the idea of regular mini coding challenges.

We need to run an always-on, repeat-engagement campaign in which we do everything in our power to educate, and offer true value to developers – focusing on fresh content, that not only provides an initial interesting pursuit; but continually purveys educational, challenging, entertaining, and even monetarily-valuable content, aimed at keeping our developer community interested in, (and returning to) Status, and retaining engagement in Status messenger channels.

Introducing Monthly Micro-Challenges (Naming TBD)


Who:

The Status Network will create and promote monthly, (initially – aiming to increase frequency depending on success levels and internal process improvement), developer mini-challenges for anyone in the community to work on, complete, and earn SNT. Challenges are open to literally any developer, anywhere in the world. Challenges will be Crypto / Ethereum / decentralised tech centric as a means to engage our core Ethereum developer community.

Status will host the challenges and issue payment, however, challenges will not be Status or Status Network specific – but on a broader DApp / Ethereum basis, offering a much wider engagement pool.


What:

We will create monthly technical mini-challenges that cover the gamut of ethereum and decentralized development for any developer to pick up, complete, and earn SNT. You can almost think of these as more involved, technical “Coinbase Earn’s”.

  • Challenges will take developers 1-2 hours to complete.
  • Challenges will be fun, engaging, and educational.
  • Successfully completed challenges will be rewarded with between $10 - $50 in SNT.
  • We will enlist challenges from the Status cc’s and community in Discuss as well as run polls on Twitter, and our website for tasks developers really want to work on.
  • Start off monthly and increase cadence if successful and possible.
  • Challenge completion won’t be a “placed-competition”, so no “1st, 2nd or 3rd prizes”, but every developer who satisfactorily completes the task will be paid.
  • Although tasks themselves are not competitions, monthly/yearly developer leaderboards will exist to further gamify the experience / drive ongoing engagement.
  • Developers will earn “Status Symbols” - Gold, Silver & Bronze badges to wear on their leaderboard developer profile.
  • A unique tutorial & example challenge solution will be posted alongside each task.
  • Promotion of challenges will take place on Social, developer forums, on the Status blog, in Status Discord and Status Channels.
  • Payout will take place on the Gitcoin Platform unless users wish to receive bonus SNT. If they wish to receive bonus SNT, they will be required to install Status and we will manually send them the SNT in a direct chat.

Why:

Engage the core developer community in a non-salesly way. We are not pushing products at them. But rather inviting them to partake in frequent, fun, but challenging and educational mini-task. We need to add value to developers’ lives. Currently our communication strategy is too one-sided (outward comms). Let’s give devs something to do – earn SNT, challenge their own skills, and learn something new from both the tasks & relevant tutorials.

Bi-product, is developers navigating our channels for more content, support, and to partake in the conversation / many more conversations.

The end product is a trust and affinity to Status, and ongoing use of our product(s). We want developers to view Status as a hub for excellent technical content. Finally, we want the devs to distribute SNT themselves.


Example Challenges:

  • "Write a smart contract, using Solidity, that does ‘XXX’ "
  • Build a small DApp that provides ‘XXX’ piece of functionality
  • Use Crystal or Nim to build an original, simple DApp
  • Integrate ‘XXX’ API into your DApp

The challenge tasks are mostly designed to be educational. Paired with the Tutorial Article I will write for each task, and the Open Source solutions from each community dev, we will keep our community interested in Status by becoming a hub for regular, fun, learning experiences.

By creating a leaderboard for the challenges, we will gamify the whole experience, therefore providing devs more reasons to engage with the tasks. The leaderboard site will also contain member profiles which will be pulled in from GitHub, so we don’t need to store any personal details.

The leaderboard will contain “Status Symbols”, that give devs even more reason to engage, and paying out additional SNT for Gold, Silver, and Bronze Devs.

By also providing bonus SNT to devs who get paid out through the Status app, we are bringing community members back to the app, and hopefully engaging our community members in Developer Status channels we will create within the Messenger.

What I’m asking of you:

I would love to hear your feedback, as developers & Eth community members, on the overall concept of this idea.

  • What you do/don’t like about it?
  • If you were a Status community dev, would you take part in these challenges?
  • Do you think these tasks offer enough of a balance of educational & fun?
  • Would you like to recommend a sample challenge or two for the task list?

ANY & ALL feedback is appreciated here. We really believe in this engagement strategy, and want it to be the best experience it can be.

Thanks!

Robin.
(Developer Education & Marketing)

9 Likes

Nice @rbin.

In passing, ive gotten the following feedback:

"As for developer engagement I think it helps to give devs something that can help them solve a pain point they have. I saw this from Aragon today got pretty excited
https://twitter.com/AragonProject/status/1273647203521892359?s=20

this is a toolkit that now lets me build a bridge from my dapp with an aragon dao."

“That sounds like a very good idea. I’ll need to think a bit to find an interesting challenge though. 1-2 hours is short so making something challenging, yet doable in that time frame is hard”

1 Like

Part of the reason I have been advocating for implementing Add new methods supporting chat functionality to status api in DApp browser · Issue #117 · status-im/specs · GitHub in Status is because of the developer creativity it enables.

With something like this implemented you could have devs fork their favorite dapp and have it broadcast events in Status channels.

The challenge format could be:

Fork “YOUR FAVORITE DAPP” and have it post in #channel when you “DO FAVORITE INTERACTION”.

Examples:

Fork uniswap and have it post in #uniswap when you do a trade.

Fork cryptokitties and have it post in #cryptokitties when you hatch a kitty.

There are nearly endless such combinations devs can come up with.

@jonathan If it’s not too much to ask :relaxed::

  • Add Aragon Payment App account address as watch-only address
  • Check with Aragon Connect if any of the accounts in Status has permission to create payments or execute payments for watch-only account
  • Allow connecting to dapp (e.g. Gitcoin) with watch-only address
  • Allow dapp to send transaction request to watch-only address
  • If any existing account in Status has permission, prompt tx sign request showing From (account), On behalf of (watch-only address)

User story
As someone who has permission on a Aragon Organization to fund bounties or make payments, allow me to sign a transaction on behalf of the multisig when funding an issue on Gitcoin, so that I can fund bounties

@barry this might be a little farfetched, but do you think it can work?

1 Like

I think it can. Basically assume the identity of the Aragon org when using a dapp and route the transaction through the organization’s governance process.