telosnetwork / open-block-explorer

The Open Block Explorer (OBE) is the first open source block explorer that is designed to support all AntelopeIO-based blockchains.
https://explorer.telos.net
Apache License 2.0
27 stars 22 forks source link

Open Block Explorer Recommendations #23

Closed chiedo closed 2 years ago

chiedo commented 2 years ago

Summary 🚀

The Open Block Explorer is a first of its kind open source EOSIO block explorer that supports EOSIO-based blockchains. The current leading EOSIO block explorers are feature-rich but closed source, which has resulted in Telos and other EOSIO based blockchains at risk of losing access to their block explorers or paying high fees to the vendors who support the existing block explorers. While Telos is focused on the EVM as our strategic focus area, Telos Native is the foundation of the EVM, driving core functionality and governance and must be actively maintained. As a stop-gap solution, we are utilizing the EOSIO Authority block explorer but with that block explorer being private, we are still at risk of losing access to that block explorer at any time.

We are building the Open Block Explorer to ensure we have an EOSIO block explorer for Telos Native and open sourcing it to benefit other EOSIO based blockchains while leveraging the network of EOSIO blockchain developers by open sourcing the project.

Goals 🥅 - :heavy_check_mark: = implemented/completed

  1. Launch a new Telos block explorer using Open Block Explorer - :heavy_check_mark:
  2. Arrive at a vibrant community of open source contributors for the Open Block Explorer

Recommendations 👨🏿‍🏫

Create a Vibrant README ✏️ - migrated to issue #84

We have lots of room to make the Open Block Explorer README more inviting to open source developers. See the next.js README as an example.

Some suggestions:

  1. Describe what Open Block Explorer is
  2. Link out to a live example of the Open Block Explorer :heavy_check_mark:
  3. Link out to clear, comprehensive documentation (eg. how do I configure Open Block Explorer to reference different Blockchains?) - TBD (left out of issue #84 for now)
  4. Add a “contributing” guide which guide developers new to the project in the contribution process
  5. Link to some “good first issues” for developers new to the project
  6. Describe who the core contributors are in the footer
  7. Link out to the Open Block Explorer Discord and/or Telegram community
  8. Ship the alpha version of the Telos Block Explorer that’s powered by Open Block Explorer and link to it in the GitHub README as an example. This will help make the project real. And let people feel the features that are missing to encourage contribution. Ship the alpha and then iterate. :heavy_check_mark:

I would recommend making all of these changes and submitting them as a pull request on the Open Block Explorer Repo and adding me as a reviewer.

GitHub as the Source of Truth :octocat: - :heavy_check_mark: https://github.com/orgs/telosnetwork/projects/4

A familiar experience for an open source project would be having GitHub Issues as the source of truth. GitHub issues should encapsulate all of the known bugs, upcoming features planned, and so on.

This keeps everything transparent and helps serendipity happen as community members stumble upon plans and progress in conversations that take place is Issues.

GitHub Projects (beta) can add some structure to working with Issues. It will need to be enabled for the Telosnetwork GitHub organization. Watch this video to get a better understanding of how GitHub Projects would be helpful.

Define High Priority Features 📊 - :heavy_check_mark:

High priority features need to be defined in GitHub Issues with the enhancement label and each of these features need to be clearly defined in such a way that a new developer can read the description and start asking questions and coding.

Community engagement 💬

Any strong open source project needs strong community engagement from the core contributors. Someone will need to be responsible for engaging with this community, doing code reviews, merging pull requests, and such.

Once the README is clear and high priority features are defined in GitHub Issues, we should share the project in as many EOS blockchain discords as possible and on Twitter.

Utilization of GitCoin 💰

If we need to utilize GitCoin to compensate developers with funds from the Telos Core Developers treasury, we should do so on a feature-by-feature basis. There needs to be a clearly defined scope for each feature. We can do this once we have a list of features that need to be built stored in GitHub Issues.

While I have not used GitCoin in the past, it seems that posting Freelance code bounties would be the way we would want to engage.

The following look like some good examples of feature-based code bounties:

Closing this issue 🚢

I'd recommend closing this issue after this strategy has been rolled out in a partial or complete capacity or outright rejected 😆

cc @telosnetwork/telos-core-devs

chiedo commented 2 years ago

The summary above is my understanding after a conversation with Kersten. Feel free to correct anything I got wrong or add suggestions etc.!

Strongly stated opinions above. But weakly held 😄

Kersten-CR commented 2 years ago

Main recommendations executed. @chiedo thank you for your support!