Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Q2 2022 ethereum.org product roadmap #6161

Closed
samajammin opened this issue Apr 27, 2022 · 11 comments
Closed

Q2 2022 ethereum.org product roadmap #6161

samajammin opened this issue Apr 27, 2022 · 11 comments
Labels
feature ✨ This is enhancing something existing or creating something new help wanted Extra attention is needed or someone is needed to help high priority This has a high priority Status: In Progress Work is in progress

Comments

@samajammin
Copy link
Member

To make our work more accessible and to foster more community collaboration, our team publishes an overview of our quarterly roadmap goals. See last quarter's roadmap here: #5105.

Greetings fellow Ethereans!

Our vision with ethereum.org continues to be to create the best portal for Ethereum's growing community, and to serve as the front door to Ethereum for millions of visitors each month. Here's a look at our major Q2 initiatives to advance this vision.

Quick point of clarification: this is the roadmap for ethereum.org the website, not Ethereum the protocol. If you’re looking for the Ethereum roadmap, check out information on upcoming network upgrades and learn more about Ethereum governance.

With that out of the way, let’s dive in.

The must-dos

The epics our core team is committing to shipping this quarter.

🔀 Merge prep

After a long wait, The Merge is almost upon us. The switch to proof-of-stake means that we’ll need to rewrite large sections of ethereum.org to keep it up to date. Merge prep will involve: scoping out content changes, coordinating with external contributors to ensure accuracy, and well-timed releases to provide the community with accurate information when they need it.

We’ll also update Ethereum Staking Launchpad content and features in order to keep pace with the testnet and Mainnet developments to provide stakers with the resources and functionality they need.

💰 Revamp the Wallet pages

Wallets are an integral part to Ethereum onboarding and network participation. It's no surprise that a huge amount of ethereum.org traffic goes to our wallets pages (>10% of total pageviews).

Since we built these pages nearly 2 years ago, we've received a ton of helpful community feedback on aspects to improve. Among the most reported issues is the overwhelming number of choices without much differentiation that makes picking a wallet exhausting for new users. The wallet space has also evolved significantly and the features that users care about (e.g. support for layer 2) have changed. This quarter we'll improve our curation of wallets as well as add new feature filters to help users compare wallets and reduce decision fatigue.

🎓 Redesign the Learn page

There is a lot to learn in the Ethereum ecosystem. Currently ethereum.org provides a growing list of disconnected pages that users must piece together independently. Our long-lived "Learn" page provides a scattered list of topics without consideration of the sequence or importance of these topics.

We'll redesign this page into a more holistic knowledge base and rework the site navigation to improve our content hierarchy for users. The vision here is to create structured pathways to learning Ethereum that visitors can navigate based on their interests and current level of knowledge.

📚 Consolidate Ethereum wikis

Misinformation and outdated resources are unfortunately common in Ethereum’s fast-moving ecosystem. This often leads to visitor confusion and frustration (particularly for people new to the space) who are trying to learn about Ethereum but aren’t sure if they can trust that content is accurate or up to date. This also creates a poor experience for potential contributors, who open issues/PRs with no response from anyone maintaining the repo (because no one is).

The Ethereum Foundation controls several wiki/documentation websites that are no longer maintained:

We’ll consolidate these resource and update content to ensure information is accurate and up to date. We'll create new pages on ethereum.org to cover some of these important topics that aren’t well documented.

🌏 Translate the EF blog

As the ethereum.org translation program grows and the number of active contributors increases, we'll explore translating additional content that could benefit the global Ethereum ecosystem. The Ethereum Foundation blog is a popular resource with demand for translations in order to make the content accessible to more people.

Our team has already translated blog posts (e.g. here and here) but the blog codebase doesn’t yet natively support internationalization, which leads to a confusing UX.

This quarter we’ll rebuild the blog’s tech stack using a more modern web framework (Next.js) with internationalization support, performance and accessibility top of mind. With help from our translation community, we’ll also begin efforts to translate the nearly 500 pages on the site.

🎨 Open design system

Design lives at the core of ethereum.org. Our design principles, inspired by the ethos of the Ethereum ecosystem, guide our thinking and shape the content and features of our product. Similar to how our website content and code is open source, we believe the ethereum.org design should be open and collaborative.

The idea is to create a framework to open our design process to the community. We’re exploring questions such as: how could we create opportunities for community contributors? How could we reduce the friction for designers and builders to make an impact?

This will be an ongoing and experimental effort that will span more than one quarter. While overall progress here may be less tangible than other epics, one clear milestone to set a strong foundation is releasing an open design system. A design system will help establish and document our design language, which anyone in the community can use to create reusable resources. While they’re many features that can compose a design system, this quarter we’ll focus on design guidelines and a v0.1 component library.

🖥 Implement UI library

A major insight from our research into accessibility and our website audits last quarter was that many of the issues we face, like lack of keyboard navigation, support for assistive technology and consistent W3C design patterns can be solved out-of-the-box by adopting an open source UI library.

Ultimately we’ve come to believe that rolling our own robust components is not what we should focus our time on. Leveraging an existing UI library will save our development and design team time to focus more energy on what matters - shipping products for our Ethereum users. This effort also ties in well with out work on the open design system and will serve as the foundation to our component library.

🔏 TypeScript rollout

Our codebase is rapidly increasing in size and in contributors. This brings challenges to reliably keep the code organized, avoid code duplication, and review code.

To help alleviate these challenges, we’ll be incorporating TypeScript into our codebase. We believe having a strongly typed language will reduce bugs, improve code quality, increase productivity and allow us to scale (both our codebase and our developer community) better in the long term.

This effort also pairs closely with implementing a UI library. Many UI library come with TypeScript support, which is worth taking advantage of.

🗣️ User insights

Ethereum.org plays a vital role in onboarding new Ethereum users and builders into the ecosystem. Therefore, it is important for us to make sure that we validate our designs and content with our community.

This quarter we’ll enable an easy feedback process for all site visitors (in addition to our existing channels, like Twitter, GitHub and Discord). This will allow us to collect improvement ideas and monitor user satisfaction with the content and design of the website so that we better understand the needs and motivations of our audience.

🔍 Translation quality

Our amazing translation community has translated content in record numbers and allowed us to roll our website translations in over 40 languages. As part of an ongoing effort to track and improve translation quality, we want to research the best processes, tools, and metrics to achieve this. We'll perform QA to identify and fix the most common issues in translations for individual languages, research QA tools that work best with Crowdin and ethereum.org content, and explore ways to track translation quality over time.

🔐 EF cryptography website

Our friends on the Cryptography Research team within the Ethereum Foundation need a website. We’ll design, build and launch a website where they’ll share research, events, bounties and information about their team's initiatives.

Follow along with our progress here:
https://github.com/ethereum/cryptography-research-website

The nice-to-haves

These epics are “next up” on our priority list. We’re not committing to shipping anything this quarter but we plan to make progress on these and want to share these publicly so the community can give input and get involved!

🏫 Ethereum for educators

We're exploring how we might build resources for educators looking to teach about Ethereum. This section may include templates for creating curriculum, case studies of existing courses, and content to address the lack of clear frameworks for setting up courses and expanding learning opportunities in this space. It could also include a list of existing Ethereum or blockchain courses as well as skill trees and internship opportunities for learners.

🤝 Contributor experience

Ethereum.org is the front door to Ethereum for millions of people. Keeping it a valuable, up-to-date resource up is only possible due to thousands of open source contributors. We want to improve the experience for these community members, from making their first contribution to helping them use their ethereum.org reputation as attestations of competency to step into impactful roles in the ecosystem more broadly.

Some questions we’re considering: How can we facilitate more open-source contributions? How do we empower contributors of all types? How can we steward contributors to other impactful projects within the Ethereum ecosystem?

🏞 Public goods use case page

Web3 brought about a revolution in how we think about public goods funding. Continued experiments in quadratic and retroactive public goods funding could be the key to meaningful world changes and the betterment of humanity. But the ways to learn about these ideas and their current terminology are poorly explained and full of jargon. Our public goods funding page aims to solve this, making the content on this Ethereum use case accessible to anyone and—hopefully—have them saying: public goods are good.

🏗 Revamp developer tutorials

Our developer tutorials section grows with continuous submissions from our community. Currently our nearly 50 tutorials collectively make up 5% of all pageviews on the website. This growth is exciting but brings growing pains. It’s more challenging for users to sort through tutorials to find the content they’re searching. The tutorials landing page now has an unwieldy list of tags, with no hierarchy on the importance of topics.

We see opportunity to create better structure, such as categorizing different learning paths (e.g. frontend dapp development vs. smart contract development). This may take the form of tutorial “playlists”, landing pages for tags, or a combination of curation and features. The maintenance of tutorials is also key to ensure they stay relevant (e.g. ensuring versions of Solidity and tooling libraries stay up to date). We think there’s opportunity to find creative ways to collaborate with the community on this.

How does that sound?

We always appreciate feedback on our roadmap! Our guiding principles are based on delivering the most value in the shortest time, so if there's something you think we should work on, please let us know! We welcome ideas and PRs from anyone in the community.

Looking to get involved? Learn more about contributing, hit us up on Twitter, or join the community discussions in our Discord.

@samajammin samajammin added feature ✨ This is enhancing something existing or creating something new help wanted Extra attention is needed or someone is needed to help Status: In Progress Work is in progress high priority This has a high priority labels Apr 27, 2022
@Scott1UP
Copy link

Super excited to see Open Design System as a key focus for this quarter and beyond! 🎉

I would've loved to have had access to something like this when I first started contributing, so I can imagine it'll be really useful for other designers going forward ✌🏼

@okeaguugochukwu
Copy link

ethereum is the best

@samajammin samajammin pinned this issue May 2, 2022
@iampuma
Copy link

iampuma commented May 2, 2022

Great work! Would love to see a larger focus on user security and anonymity in some shape or form to improve onboarding new and existing users so we can make them confident using ethereum.

@samajammin
Copy link
Member Author

Translation KPIs

  • Reduce the number of QA issues in Crowdin by 20%
    • Average of 860 QA issues per language at the start of Q2
  • 48 languages live on the website by end of Q2
    • 43 languages live on the website at the start of Q2
  • Update 150 content buckets between all languages
    • 74 content buckets updated in Q1
  • 20 translators with >10,000 translated words
    • 18 translators with >10,000 translated words in Q1
  • Add 10 language leads

Community KPIs

  • Add 5 new Discord guides
    • 5 guides at start of Q2
  • Allow 0 PRs to be open longer than 1 month
  • Allow 0 issues to be open longer than 6 months
  • Open at least 15 design issues
  • Hit 40 GitHub contributors (+25% vs. Q1 2022)
  • Gain 10 power contributors (at least 3 PRs or 1 significant feature)
  • Distribute 250 POAPs, excluding community calls (+21% vs. Q1)

@jack-cryptocom
Copy link

Add #6155

@samajammin
Copy link
Member Author

Happy July! How time flies. Closing this out with a progress update on each of our Q2 initiatives.

🔀 Merge prep

With the #TestingTheMerge in full swing, the Ethereum community continues to march towards The Merge on Mainnet!

We audited all 209 site pages and split content updates into two waves: pre-merge and post-merge. We focused this quarter on on pre-merge: all content changes that can be made prior to The Merge to prepare users, stakers, node operators and dapp developers for the impending network changes.

We shipped content updates throughout the site (30 pages total), with specific emphasis placed on The Merge upgrade page, which explains everything you need to know on what The Merge is, how it’s being rolled out, and addresses common misconceptions people have related to the impact of this upgrade. Other updates include documentation on running an Ethereum node and Ethereum’s energy consumption.

See #6281 and corresponding PRs for a full list of updates.

We also updated the Ethereum Staking Launchpad to prepare stakers for the upcoming changes: a new Merge Readiness Checklist page prepares stakers and infrastructure providers with the steps required to be fully prepared for the transition to proof-of-stake, new pages for each of the execution clients, and callouts in the onboarding flow to remind all node operators to run their own execution client in addition to a consensus client.

See ethereum/staking-launchpad#493 for a full list of updates.

Shoutout to @wackerow for leading the charge on these epics, with support from @jmcook1186, @minimalsm and others!

Expect post-merge content updates to be a priority in Q3.

💰 Revamp the Wallet pages

Behold the revamped Find Wallets page:
https://ethereum.org/en/wallets/find-wallet/

We now have expanded wallet data, feature filters, a new tabular design to easily compare wallets, and user personas to allow for quick filtering across all (currently 35) listed Ethereum wallets. Our data gathering is still in progress. Notice a wallet missing? Please refer to #6536 and fill out our new wallet issue template.

See #6274 and corresponding PRs for a full list of updates.

Shoutout to @corwintines for all development & @nloureiro for leading design.

Want to give feedback? Open an issue or join the conversation in our #wallets Discord channel.

🎓 Redesign the Learn page

Our goal here was to think more holistically about the learning experience of newcomers visiting ethereum.org. As a result we:

  • shipped a new Learn hub page to provide broader context and clearer narrative around different topics covered on ethereum.org: https://ethereum.org/en/learn/
  • redesigned our What is Ethereum page to serve as a complete guide to how Ethereum works, the benefits it brings and how it's being used by millions of people around the world: https://ethereum.org/en/what-is-ethereum/
  • redesigned the learn section of our site navigation to provide more structure and guidance

See #6285 and corresponding PRs for a full list of updates.

Shoutout to @konopkja for leading this epic with content and designs, @pettinarip for implementation and @minimalsm for thorough feedback!

Want to give input? Open an issue or join the conversation in our #content Discord channel.

📚 Consolidate Ethereum wikis

Our team consolidated material from the old eth.wiki and ethdocs.org websites and migrated it to new page over to ethereum.org. Our page-by-page audit of eth.wiki and ethdocs.org reviewed all 179 pages and identified materials that were still relevant to Ethereum and worth maintaining. We moved technical topics such as networking, data structures and encoding formats, and consensus onto new and existing ethereum.org pages.

Both eth.wiki and ethdocs.org are now deprecated and redirect to corresponding ethereum.org URLs. The hope is that now Ethereum information is easier to find, more up-to-date, and easier to maintain and translate. Note that all the old content is and will remain accessible at the (now archived) GitHub repos:

See #5731 and #5690 and corresponding PRs for a full list of updates.

Shoutout to @jmcook1186 for leading this epic and content updates and @minimalsm for thorough reviews!

🌏 Translate the EF blog

We kicked off the blog rebuild using a more modern web framework (Next.js + Chakra UI) and internationalization support (via FormatJS). We’re making progress to enable localized posts and related features like language selection per post and global filtering. We're also taking this opportunity to implement UI/UX improvements to simplify and improve the site navigation, as well as tune performance and image optimization.

The blog repo is currently private, so not much to share at this point, but we're hoping to open source the codebase as part of the launch. In the meantime you can view our design updates and test out the latest preview deploys. Feedback always welcome - feel free to comment directly in Figma or join the conversation in Discord!

Expect us to wrap up implementation and launch this new site in Q3! We'll publish a blog post with details on how to get involved with the community translations.

Shoutout to @nhsz for leading development, @lukassim for owning translation logistics, and design support from @nloureiro and @konopkja.

🎨 Open design system

We created the base v0.1 of our open design system! To start we focused work on the foundations - typography, font sizes, colors, spacing, icons, etc. We've mapped roadmap for the design system divided into 1) foundations, 2) components, and 3) layouts and now have a clear plan to execute towards these deliverables.

Thank you @nloureiro for leading this effort, with support from @konopkja and many others!

Expect us to continue this work through Q3 in coordination with the UI library rollout.

Want to get involved? Join the conversation in our #design Discord channel.

🖥 Implement UI library

We researched a handful of proven UI libraries and ultimately decided to go with Chakra UI! Here’s a summary of our research on UI library options - the TL;DR is we chose Chakra (among a few great options) because it's easily customizable, well maintained with great documentation, has strong a11y and i18n support, and has a relatively small learning curve.

Thank you @pettinarip for leading the research on this!

We decided to wait on implementation until the TypeScript rollout is complete but we’ll be kicking this work off in earnest in Q3. See #6374 to track progress or get involved.

🔏 TypeScript rollout

Led by @pettinarip, we added TypeScript support to the codebase and nearly rolled out the migration across all 179 JavaScript files. There are only a few components and pages left to migrate, so we expect to complete this work on the first Q3 sprint.

See #6392 and corresponding PRs for a full list of updates.

Special shoutout to community members @Mousticke, @vdusart, @WilliamWelsh, @SNikhill, @heeckhau, @byhow, @M-Ivan, @andyGallagher, @adi44, @didoshotev, @hursittarcan, and @motemotech who contributed to this rollout!

🗣️ User insights

We shipped a new feedback widget (integrated with custom surveys) across all pages on ethereum.org. This now allows anyone to quickly share feedback on the quality of the content and design of our pages. We will use these data to gather insights and drive the prioritization of content improvements.

See #6252 and corresponding PRs for a full list of updates.

Shoutout to @konopkja for leading the strategy and design around this and @wackerow for the implementation.

Now that we've been gathering this data for weeks, expect us to dedicate resources in Q3 into building tools and processes to digest this data and to create reports which make this data actionable.

🔍 Translation quality

Translation quality will be an ongoing effort, so we focused on exploring tools and metrics that will allow us to track and improve translation quality moving forward. We started tracking the most common errors and inconsistent translations, started using Crowdin’s built in QA tool, and experimented with different ways of tracking quality over time. By performing 2 rounds of quality analysis, we have also resolved over 23,000 QA issues across all languages, and reduced the number of average QA issues per language by 46,16%!

Thank you @lukassim for leading the charge here and to our wonderful community of translators for their constant contributions.

Expect translation quality to be a KPI we track for the translation program on an ongoing basis.

🔐 EF cryptography website

We shipped a new website at crypto.ethereum.org for the Cryptography Research team, which includes a blog, research publications, and a bounties page which consolidates open bounties from different projects, to improve awareness and discoverability of these opportunities for the research community.

See the repo for a full list of features and updates: https://github.com/ethereum/cryptography-research-website

Thank you @nhsz for leading development on this new site!

The nice-to-haves

These epics are “next up” on our priority list. We’re not committing to shipping anything this quarter but we plan to make progress on these and want to share these publicly so the community can give input and get involved!

🏫 Ethereum for educators

We collected a lot of resources for educators like university courses, case studies, and open access academic papers, and have actively engaged with academics for their feedback, ideas, and input. With the content prep work mostly complete, we’ll likely pick up the in Q3 to design and code the page.

See #6283 if you'd like to track progress or add input.

🤝 Contributor experience

We’ve had many discussions and ideation on improvements to make but nothing was implemented - we didn’t have capacity to tackle this. Stay tuned for our Q3 product roadmap to see if we’ll be prioritizing this or let us know if you’re interested in contributing!

See #6329 if you'd like to track progress or add input.

🏞 Public goods use case page

We kicked off some initial brainstorming around page structure but overall not much progress here - we didn’t have capacity to tackle this. Stay tuned for our Q3 product roadmap to see if we’ll be prioritizing this or let us know if you’re interested in contributing!

See #6330 if you'd like to track progress or add input.

🏗 Revamp developer tutorials

No progress here - we didn’t have capacity to tackle this. Stay tuned for our Q3 product roadmap to see if we’ll be prioritizing this or let us know if you’re interested in contributing!

See #6365 if you'd like to track progress or add input.

🎁 Bonus points

We shipped these additional pages thanks to help from our community:

Ethereum open research
PR #6144 by @jmcook1186 with the help of many from the community!

DeSci
PR #6795 by @vincentweisser with the help of many from the community!

Decentralized identity
PR #6082 by @emmanuel-awosika

Decentralized social networks
PR #6020 by @emmanuel-awosika

Bug bounty program
PR #6021 by @fredriksvantes to merge the execution & consensus layer bug bounties

Introduction to zero-knowledge proofs
PR #6890 by @emmanuel-awosika

Blockchain bridges for developers
PR #6291 by @ArjunChand13

Yellow paper tutorial
PR #6611 by @qbzzt

Data availability
PR #6621 by @emmanuel-awosika

Verifying smart contracts
PR #6575 by @emmanuel-awosika

Upgrading smart contracts
PR #6472 by @emmanuel-awosika

Special shoutout to @emmanuel-awosika for his incredible content output this quarter ❤️

How does that sound?

We always appreciate feedback on our roadmap, so if there's something you think we should work on, please let us know in the comments below! We welcome ideas & PRs from anyone in the community.

We encourage you to learn more about contributing, hit us up on Twitter, or hop in our Discord.

@samajammin
Copy link
Member Author

Stay tuned for our Q3 roadmap release next week! 😄

@samajammin
Copy link
Member Author

Updates on our Q2 KPIs:

Community growth

  • Add 5 new Discord guides
    • ❌ 3 Discord guides added
  • Allow 0 PRs to be open longer than 1 month
    • ❌ 3 PRs open longer than 1 month
  • Allow 0 issues to be open longer than 6 months
    • ❌ 44 issues open longer than 6 months
  • Open at least 15 design issues
    • ❌ 4 design issues opened
  • Hit 40 GitHub contributors (+25% vs. Q1 2022)
    • ❌ 37 GitHub contributors in Q2
  • Gain 10 power contributors (at least 3 PRs or 1 significant feature)
    • ✅ 12 power contributors in Q2
  • Distribute 250 POAPs, excluding community calls (+21% vs. Q1)
    • ❌ 203 POAPs distributed in Q2

Translation Program

  • Reduce the number of QA issues in Crowdin by 20%
    • ✅ Reduced the average number of QA issues per language by -46.61% (from 860 to 463)
  • 48 languages live on the website by end of Q2
    • ❌ 46 languages currently live on the website, with 2 new languages ready to be added
  • Update 150 content buckets between all languages
    • ✅ Updated 163 content buckets in Q2
  • 20 translators with >10,000 translated words
    • ❌ 14 translators with >10,000 translated words in Q2
  • Add 10 language leads
    • ✅ Added 10 language leads in Q2

@hsghn
Copy link

hsghn commented Nov 26, 2022

Yes

@hsghn
Copy link

hsghn commented Nov 26, 2022

Yes

Yes

@hsghn
Copy link

hsghn commented Nov 26, 2022

Yes

Yes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature ✨ This is enhancing something existing or creating something new help wanted Extra attention is needed or someone is needed to help high priority This has a high priority Status: In Progress Work is in progress
Projects
None yet
Development

No branches or pull requests

6 participants