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

As an ethereum user, I want a gas guzzler explorer in gitcoin.co/gas, so I can VISUALLY explore the topology of the networks of gas explorers. #1991

Closed
owocki opened this issue Aug 11, 2018 · 44 comments
Assignees

Comments

@owocki
Copy link
Contributor

owocki commented Aug 11, 2018

User Story

As an ethereum user, I want a gas guzzler explorer in gitcoin.co/gas, so I can explore the topology of the networks of gas explorers.

Why Is this Needed

Summary:

https://gitcoin.co/gas/guzzlers Does a good job of showing the top gas guzzlers on the Ethereum Blockchain, but I dont have any good way of drilling down on any specific gas guzzler, to visualize what their network looks like.

Description

Type:
Feature

Current Behavior

No Gas Guzzler Explorer, but there are some custom analysises on a per-gas crisis basis:

Expected Behavior

Gas Guzzler Explorer that allows a user to

  1. type in an ethereum address
  2. visualize their transactions to other Ethereum addresses, over time, in a graph format.

In this graph format, each node will be an address, and each edge will be a transactiont between them.

When I click on a node, I want to see a little flyout that shows the address and the number of transactions in the last 24 hours.

I suggest building this in D3.js ( we already have some nice graph format visualizations on gitcoin.co/results near the bottom built with this tool ), and using ETHSql (or equivilent; see this list for a crowdsourced list of providers )

Here is an example of a graph chart. In this example, each node is a user of Gitcoin, and edges are the bounties they've done. The graph grows over time as more users join the network and do bounties.

network_growing_march_to_april

@owocki owocki changed the title As an ethereum user, I want a gas guzzler explorer in gitcoin.co/gas, so I can explore the topology of the networks of gas explorers. As an ethereum user, I want a gas guzzler explorer in gitcoin.co/gas, so I can VISUALLY explore the topology of the networks of gas explorers. Aug 11, 2018
@adamdossa
Copy link

I played with some blockchain visualisation a while back at:
http://vizor.enclaves.io/
happy to open source or contribute if useful.

@tomasienrbc
Copy link

This would be awesome - my $0.02 is that generally those "node visualizations" are really hard to us in reality. They could be really useful if they can be clicked into to get to something easier to understand.

If you start working on this we should try to get some data viz experts to weigh in!

@owocki
Copy link
Contributor Author

owocki commented Aug 13, 2018

This would be awesome - my $0.02 is that generally those "node visualizations" are really hard to us in reality.

Yeah I agree. They have to be designed to be traversable instead of just looking pretty.

@calchulus
Copy link

Going to keep thinking about how to do this, will be kinda slow but this is super interesting.

@gitcoinbot
Copy link
Member

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


This issue now has a funding of 200.0 DAI (200.0 USD @ $1.0/DAI) attached to it.

@gitcoinbot
Copy link
Member

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


Workers have applied to start work.

These users each claimed they can complete the work by 12 months from now.
Please review their action plans below:

  1. ree90 has applied to start work (Funders only: approve worker | reject worker).

    As an ethereum user, I want a gas guzzler explorer in gitcoin.co/gas, so I can explore the topology of the networks of gas explorers.

Learn more on the Gitcoin Issue Details page.

@gitcoinbot
Copy link
Member

gitcoinbot commented Aug 15, 2018

Issue Status: 1. Open 2. Cancelled


Work has been started.

These users each claimed they can complete the work by 6 months, 2 weeks from now.
Please review their action plans below:

1) aerophile has been approved to start work.

Wow, this is super interesting, I will begin by exploring existing links and similar kinds of features and then proceed to D3 and how to use network data and display this data in a network topology structure. I get the goal here is to get a visual understanding of gas consumers.

Learn more on the Gitcoin Issue Details page.

@owocki
Copy link
Contributor Author

owocki commented Aug 15, 2018

@aerophile looking forward to working with you.

@adamdossa
Copy link

Agree on the utility vs. prettiness aspect. Being able to easily manipulate a viz. and drill through to see more detailed info (or switch views to highlight different aspects of the data) would be very cool.

I will put my code up and a link here, hopefully this weekend.

@NukeManDan
Copy link
Contributor

I like this as a basic visual block explorer : http://ethviewer.live
Not sure of the overlap with this bounty... Some components might transfer well?

@owocki
Copy link
Contributor Author

owocki commented Aug 16, 2018

Not sure of the overlap with this bounty... Some components might transfer well?

neat tool!

looks like the nodes in this graph are blocks. in our model, we'd want nodes to be accounts and edges to be transactions

@gitcoinbot
Copy link
Member

@aerophile Hello from Gitcoin Core - are you still working on this issue? Please submit a WIP PR or comment back within the next 3 days or you will be removed from this ticket and it will be returned to an ‘Open’ status. Please let us know if you have questions!

  • warning (3 days)
  • escalation to mods (6 days)

Funders only: Snooze warnings for 1 day | 3 days | 5 days | 10 days | 100 days

@aerophile
Copy link

aerophile commented Aug 19, 2018

So Update 1 from my side, I have been going through gitcoin's web repo and setting up the recommended docker version.
@NukeManDan While http://ethviewer.live is really cool but its code is not open sourced yet, so I don't think its components could be directly transferred.
@adamdossa Looking forward to your code 👍

@owocki Some questions

  1. How would this new feature be accessed ? Will it be a new Tab/Section of the gitcoin gas station website
  2. I'm also looking for suggestions for possible sources of the transaction data for an address. I think ETHsql is something related to this but googling it does not give many useful results, so a link to that could also be helpful. This would probably be an API, right ? Maybe INFURA could be used to get this data.

@owocki
Copy link
Contributor Author

owocki commented Aug 20, 2018

Will it be a new Tab/Section of the gitcoin gas station website
yes!

I'm also looking for suggestions for possible sources of the transaction data for an address.

etherscan pehraps? and you could mirror it in the gas.models as a new table for easy queryability.

infura could be a good source too.. though id want to check and see if they can handle the massive amounts of data that (by definnition) these gas guzzlers consume

@gitcoinbot
Copy link
Member

@aerophile Hello from Gitcoin Core - are you still working on this issue? Please submit a WIP PR or comment back within the next 3 days or you will be removed from this ticket and it will be returned to an ‘Open’ status. Please let us know if you have questions!

  • warning (3 days)
  • escalation to mods (6 days)

Funders only: Snooze warnings for 1 day | 3 days | 5 days | 10 days | 100 days

@aerophile
Copy link

@gitcoinbot still working :)

@gitcoinbot
Copy link
Member

@aerophile Hello from Gitcoin Core - are you still working on this issue? Please submit a WIP PR or comment back within the next 3 days or you will be removed from this ticket and it will be returned to an ‘Open’ status. Please let us know if you have questions!

  • warning (3 days)
  • escalation to mods (6 days)

Funders only: Snooze warnings for 1 day | 3 days | 5 days | 10 days | 100 days

@aerophile
Copy link

So Updates
I had some difficulties in running the docker compose version of the build. The specific error I get when building in foreground is gitcoin web ModuleNotFoundError: No module named 'eth_utils.toolz . I am still looking into this.

Meanwhile I also have been learning about d3's force directed graphs and have also nearly built a single web page which can display the graph based on an input address. I look forward to sharing a link to this in a day or two. The idea here is that by making this, it would make it easier once the issues mentioned above are resolved.

For getting transaction data, etherscan's API seemed most appropriate as they had an endpoint where one can get transaction data for an address in descending order of occurrence and also allows us to control the number of transactions that we want to get and show.

@thelostone-mc
Copy link
Member

The specific error I get when building in foreground is gitcoin web ModuleNotFoundError: No module named 'eth_utils.toolz . I am still looking into this.

@aerophile I believe @SaptakS fixed this up! Could you rebase + restart the containers.
PR : #2123

@owocki
Copy link
Contributor Author

owocki commented Sep 4, 2018

yes this is fixed now @aerophile !

@aerophile
Copy link

@thelostone-mc @owocki thanks, can confirm, its resolved.

@gitcoinbot
Copy link
Member

@aerophile Hello from Gitcoin Core - are you still working on this issue? Please submit a WIP PR or comment back within the next 3 days or you will be removed from this ticket and it will be returned to an ‘Open’ status. Please let us know if you have questions!

  • warning (3 days)
  • escalation to mods (6 days)

Funders only: Snooze warnings for 1 day | 3 days | 5 days | 10 days | 100 days

@aerophile
Copy link

Still working on this, Just got stuck with something. Should post the next update soon.

@owocki
Copy link
Contributor Author

owocki commented Sep 12, 2018

https://aleth.io/ just launched ... i wonder if we can leverage any of their tech for this

@aerophile
Copy link

aerophile commented Sep 13, 2018

aleth.io definitely looks interesting. They do talk about transactions and accounts stats specifically as well but I don't think they are ready for use just yet. Most of their links lead to a signup to be notified when they are ready. I have signed up to be notified. It would be good if we can add them as an another source of transaction data as well.

edit: They also talk about pre-registering for API access and that's expected to be available in early 2019.

@gitcoinbot
Copy link
Member

@aerophile Hello from Gitcoin Core - are you still working on this issue? Please submit a WIP PR or comment back within the next 3 days or you will be removed from this ticket and it will be returned to an ‘Open’ status. Please let us know if you have questions!

  • warning (3 days)
  • escalation to mods (6 days)

Funders only: Snooze warnings for 1 day | 3 days | 5 days | 10 days | 100 days

@aerophile
Copy link

link to the single page app. Display of the force directed graph is not working properly at the moment But data is being correctly fetched and formatted into nodes and links for the graph. Next steps would be fixing this, adding flyouts+additional information and then start integrating with site.

@owocki
Copy link
Contributor Author

owocki commented Sep 19, 2018

ahh neat!

@gitcoinbot
Copy link
Member

@aerophile Hello from Gitcoin Core - are you still working on this issue? Please submit a WIP PR or comment back within the next 3 days or you will be removed from this ticket and it will be returned to an ‘Open’ status. Please let us know if you have questions!

  • warning (3 days)
  • escalation to mods (6 days)

Funders only: Snooze warnings for 1 day | 3 days | 5 days | 10 days | 100 days

@aerophile
Copy link

I'll be posting the next update on Friday.

@owocki
Copy link
Contributor Author

owocki commented Oct 4, 2018

@aerophile hows it going? is this still an active thing for you.. no worries if not; we can always cancel the bounty

@aerophile
Copy link

@owocki Yes definitely active, just a bit behind. Will get back with the update

@aerophile
Copy link

@owocki Yes definitely active, just a bit behind. Will get back with the update

Updating on this friday. Almost done with the Graph and flyouts.

@NukeManDan
Copy link
Contributor

Excited to see what comes of this @aerophile - something I just stumbled on:
https://www.meetup.com/ConsenSys-Ethereum-Meetup-San-Francisco/events/254627790

EthStats.io will be something to checkout - likely not as individual tacking oriented as what we are after in this issue. :) Cool implementation though!

https://vimeo.com/272871263

@spm32
Copy link
Collaborator

spm32 commented Nov 21, 2018

Hey @aerophile do you have an update on this?

@usmanmuhd
Copy link
Contributor

Hey @aerophile any help you need from our side?

@kuhnchris
Copy link
Contributor

@aerophile can we assume that you discarded/abandoned this issue? If you still want to work on this, please reply within the next couple of days, else we'll return this topic back to the community!

Thanks!
Chris

@NukeManDan
Copy link
Contributor

This might be mostly what we are after here: https://ethstats.io/
But I have yet to explore the tool. Has anyone else used it yet?

@kuhnchris
Copy link
Contributor

@owocki @PixelantDesign your opinion about this?

@owocki
Copy link
Contributor Author

owocki commented Jan 29, 2019

i think we should probably close the bounty as it's not getting any action.. unless @aerophile you disagree

@gitcoinbot
Copy link
Member

Issue Status: 1. Open 2. Cancelled


The funding of 200.0 DAI (200.0 USD @ $1.0/DAI) attached to this issue has been cancelled by the bounty submitter

@aerophile
Copy link

aerophile commented Jan 30, 2019

@owocki yes, unfortunately I have not been able to contribute to this project as much as I hoped to do so, I agree that it should be given back to others who can take it up.

@kuhnchris
Copy link
Contributor

@owocki do we still want to do this? since we have ethgasstation for this...

@owocki
Copy link
Contributor Author

owocki commented Aug 21, 2019

naw

@owocki owocki closed this as completed Aug 21, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests