# 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?