# A survey on Ethereum Client Diversity ## Link to Google Form https://docs.google.com/forms/d/e/1FAIpQLSdxWpN_kcZj4I_43vME2MOKHq3yD5_OFv8Lj-RO14537r1GLA/viewform ---- ## Questions Note: 25 questions in total with 15 *Optional* questions. ### Section A 1. Name [Short Answer Text] (Optional) 2. Email [Short Answer Text] (Optional) 3. Geographic location [Country/Continent] [Short Answer Text] 4. Running Ethereum node for - [ ] Self - [ ] Organization or Project [Check boxes] 5. Organization or Project name [if applicable] [Short Answer Text] (Optional) 6. Identify yourself as * Staker * Non-Staker [Multiple choice] 7. Primary reason/use for running Ethereum node(s) - [ ] Staking/Validator - [ ] Data Accessibility - [ ] Decentralization/Privacy - [ ] Ecosystem contributor - [ ] Other: ### Section B About Ethereum client node running 1. Which Execution client do you run? - [ ] Besu - [ ] Erigon - [ ] Geth - [ ] Nethermind - [ ] Other… 2. How many Execution Client node(s) do you run? * 1 * 2-5 * More than 5 3. Which Consensus Client do you run? (Optional) - [ ] Lighthouse - [ ] Lodestar - [ ] Nimbus - [ ] Prysm - [ ] Teku - [ ] Grandine - [ ] Other… 4. How many Consensus Client node(s) do you run? (Optional) * 1 * 2-5 * More than 5 5. What impacts your decision about which client to run? - [ ] Availability of documentation - [ ] Specific feature [OS, latency, liveness, low resource consumption etc] - [ ] Client team & dev support - [ ] Majority bias - [ ] Other… 6. Did you previously use a different client? Why did you switch? [if yes, mention client name and explain the reason for switch]. [Short Answer Text] (Optional) 7. What do you like/dislike most about your client? [Short Answer Text] (Optional) 8. How many different EL/CL combinations do you run? (Optional) * 1 * 2-5 * More than 5 9. How often do you interact with your client? * Many times a day * Daily * Weekly * Only for network upgrades ### Section C How important is it for you to run a minority client on the network? Why? 1. What would encourage you to run a different client than the one you are running currently - the missing element? [Short Answer Text] (Optional) 2. What features (that currently don’t exist) would you like to see an EL/CL client implement? [Short Answer Text] (Optional) 3. If you had to switch to another *Execution Layer* client today, which one would you use? - [ ] Besu - [ ] Erigon - [ ] Geth - [ ] Nethermind - [ ] Other… 4. If you had to switch to another *Consensus Layer* client today, which one would you use? (Optional) - [ ] Lighthouse - [ ] Lodestar - [ ] Nimbus - [ ] Prysm - [ ] Teku - [ ] Grandine - [ ] Other… 5. What could the client teams you mentioned above do to help make you switch? [Short Answer Text] (Optional) ### section D Collect user feedback-suggestion 1. Are you concerned about the state of client diversity in the EL clients? * Yes * No 2. Which EL-CL client combination are you running currently? [Short Answer Text] (Optional) ~~3. What metrics are the most important to you? [Short Answer Text] (Optional)~~ 4. What can be done to increase client diversity? [Short Answer Text] (Optional) ~~6. Any suggestion to make the Ethereum community stronger?~~ [Short Answer Text] (Optional) ----- ## Goals of the survey ### Identify which user base run which client node and why? * Popularity of a client based on demographics * Country * Individual vs. Organization/Project * Optional if project: what project * Staker vs. Non-Staker * Identify the reason of popularity * Client language * Specific Feature - OS, latency, liveness, low resource consumption * Documentation * Majority-bias * Client Team & Dev support * Legal * Others * Basic Usage * How many nodes do you run? (1, 2-5, >5) * How many different EL/CL combinations do you run? * How often do you interact with your client? (many times a day, daily, weekly, infrequently) * What is your primary reason/use for running a node/nodes? (staker, validator, contribute to ecosystem, data accessibility, decentralization/privacy, other: please explain) * What do you like/dislike about a client? * Did you previously use a different client/why did you switch? (yes (opens text field to explain), no) * Is there a client you would avoid using? Why? (yes (opens text field to explain), no) * An alternate client that they are open to experiment with? ### Understand points that would encourage user to run a different client * What would encourage you to run a different client than the one you are running currently - the missing element? * What features (that currently don’t exist) would you like to see an EL/CL client implement? ### Collect User feedback-Suggestion * Are you concerned about the state of client diversity in the EL clients? (yes, no) * Do you have any pain points with your current client/what are they? (crashes, frequent updates, resource consumption, difficult installation, other: please explain) * Anything that another client team can do to help? * Which EL-CL client combination they are running? ### General data collection * What a node runner wants? * What do you expect from an EL/CL client? (doesn’t crash, low latency, intuitive interface, low resource consumption, other: please explain) * What metrics are the most important to you? (sync time, liveness, stability, other: please explain) * What can be done to make the Ethereum community stronger?