dev journal - Wednesday March 29 2017
In order to launch a DAWN test network without the kind of endless configuration that can cause mortals like myself to feel a pain in the balls, I need to ensure that:
The build works in a fashion similar to ingestron-- that is, it should cross-compile with ease for every platform imaginable. Ingestron's build was accomplished like this:
- go get -u github.com/mitchellh/gox
- go get -u github.com/tcnksm/ghr
- export GITHUB_KEY = githubapikey
- gox
- ghr
The validator (witness) nodes find one another using a DHT hash. Configuration of these nodes shouldn't be necessary beyond setting up the keys. The nodes should automatically build a p2p vpn between one another for security and ease of use and ______________. (not saying yet)
- I'm going to use meshbird for this p2p VPN.
Ingestron needs its API. And I do need to test it some even before that to ensure that the DB is loading. I think that the types listed in the type definitions in baabeetaa/rpc are obsolete due to steem's perpetually changing API and that's why our pal ingestron crashes when it hits posts. (currently when I run ingestron the block-eater, he flies through the first million blocks with aplomb and then explodes. here's the error:
123368 <nil>
donalddrumpf%!(EXTRA bool=true, string=berniesanders)2017/03/29 04:27:29 Error: provided target must be a pointer to struct
Is anyone able to reproduce it? Please let me know. The possible causes are:
- I did something wrong in the golang handling of the various types (but I don't think I did anything wrong there.... but I surely may have)
- Steem's api has changed since the last updates were made to the type definitions in go-steem/rpc, which became baabeetaa/rpc. if this is the case, soon there will be a faddat/rpc, too.
- "Other"
If this fails then I am going to move ingestron back in time by going back to rethinkdb. One advantage that rethink has always had over bolt-storm is that it has some pretty cool real time features, that sadly I don't know how to use on the front end. if I do this I'll be sure to let the @busy team know about it. The only person I won't help with it is @sneak, though he, like anyone who is alive, is surely allowed to use the source code and file issues and expect a response from me, because I love humanity way more than I dislike him.
If anyone has good thoughts on real-time web back end systems in go ( suggestions on libs and the like) please do let me know. They will be useful for both DAWN and steem.
- Front end stuff
- Once ingestron has made writing a front end for steemit an acceptably sane task for me to undertake, then I can reapproach this topic. If @officialfuzzy wants things to go faster, he should contact me and ask me to simply use the JS. Since he paid me, I will gladly oblige. If I do simply use the JS, it'll be a fork of @busy because unlike condenser, I can participate in the development of busy and I think that their tech lead, @fabien is awesome. In fact, I have seen awesome flow forth from each and every person involved in the busy.org project, even from its financiers like @smooth, who has taken the post payment inequality problem into his own hands and produced results for all of this community.
Hi, @faddat! Interesting topic. Keep posting!