13 ms·
Ethereum from scratch – Part 1: Ping
- mjfl 9y agoHi all, I'm the author of the post, and also the creator of the website. I'm writing this series of posts to demonstrate the site. Do you guys get what the site's trying to do? Hope you enjoy the post. If you have any constructive criticism you'd like to give regarding either the post or the website, let me know!
- brighton36 9y agoThere are no uses for turing complete smart contracts on a blockchain
- splintercell 9y agoSince Dropbox episode we don't tell people that nobody has any usage of their product.
- jjn2009 9y agoExcept any reasonably complex interactions between parties which may or may not be accounting applications yet still need a distributed system of trust. Which includes a few trillion dollar industries.
- brighton36 9y agoRegistered assets are always more secure and cheaper than bearer assets. And if you needed bearer assets, there's multisig, which does everything turing complete code does, cheaper and more secure
- jjn2009 9y agoIts the interactions between assets, agreements and trusted devices which opens up possibilities greater than the scope of this thinking.
- brighton36 9y agoI see. What blockchain does the NYSE use?
- jjn2009 9y agoI don't talk to their developer teams so I wouldn't know. I wouldn't expect them to move quickly enough for that to have been publicly announced by now. My guess is either ethereum or hyperledger fabric depending on how much of their system they would want completely public. Queries per second is a huge concern there too, so it might be a while off for NYSE for this reason alone.
- formula1 9y agoYou may be right about this.
- ChrisClark 9y agoOf course, us maximalists all know Bitcoin is the pinnacle and can never be improved on. /s
- brighton36 9y agoIt can be improved on, but blockchain is REALLY REALLY hard
- Roxxik 9y agoJust today I started to look into RLPx to do some basic network discovery, so your guide is quite nice to have as a reference. But I had some difficulties getting started, because the RLPx spec was not simple to find (ethereum wiki -> devp2p -> RLPx) and is quite terse. I myself wasn't able to decode the packet structure. Looking into ethereum related stuff I often get the feeling that one already needs to know half of ethereum quite decent to learn something new, which makes it hard to even get started. Reading your guide (am not finished yet) gives me a better picture of the things I actually need to do, to start discovering some nodes, so I'm really thankful for that and hope for more beginner targeted ethereum content.
- jsnk 9y agoCan you support comments?
- mjfl 9y agoWorking on it. My current top 4 todos are: - [ ] add edit view - [ ] add autosave - [ ] add comments - [ ] add subscribe button
- deleted 9y ago[deleted]
- jsnk 9y agoWho ends up owning the content when a writer writes on your website?
- mdevere 9y agoSo this is like Medium but with monetised upvotes? Who would pay for upvotes? (and in particular, for a subscription)
- saurik 9y agoWelcome to Reddit Gold?
- corysama 9y agoReddit with monetized upvotes is https://steemit.com/ https://steemit.com/
- mjfl 9y agoSubscribers. Creators can mark their posts as free, as I have done here, but if posts are not marked free you have to subscribe to view them. Unless you're a seed user (first 1000 people who sign up), then you don't have to subscribe to view non-free posts.
- Roxxik 9y agoJust started to copycat your code to rust, not yet finished, continuing tomorrow https://github.com/Roxxik/ping_ether/blob/master/src/main.rs https://github.com/Roxxik/ping_ether/blob/master/src/main.rs
- dmak 9y agoYou should add a button or some kind of subscription opt-in add the end. I just want to be notified for the future updates in this series.
- seansoutpost 9y agoI really enjoyed your post and look forward to reading the series. I would suggest you try out Steemit.com as this is their business model as well, they already have a large community, and this type of post/series would be like catnip over there.
- nessence 9y agoHi, I'm the author of RLPx. Great post and thank you for sharing! Looking forward to more.
- mutagen 9y agoSigned up and got 500 server error :(
- mjfl 9y agoSorry! You should be able to login with the account you signed up with now.
- ksahin 9y agoHi, Interesting concept, I tried to signup but ended up with a 500 error. Too bad.
- mjfl 9y agoHi, I see that and I'm looking into it. Edit2: You should be able to log in now.
- behrlich 9y agoBad news! Your site is vulnerable to XSS https://ocalog.com/post/15/ https://ocalog.com/post/15/ See "OWASP top 10" for getting started with web security.
- mjfl 9y agoty
- mgbmtl 9y agoI like the intro, very clear! I also like the narrative cross-referencing the docs, which people will sooner or later need to do as well. I have to admit that I only glanced over the code. This caught my attention: "In the EndPoint specification, it demands the "BE encoded 4-byte" address, which is exactly what's outputted by self.address.packed." Does this mean that Ethereum only supports IPv4? I searched around and only found this, dating back to 2014: https://github.com/ethereum/wiki/wiki/IPv6 https://github.com/ethereum/wiki/wiki/IPv6
- Artlav 9y agoNeat. I contemplated writing something like that, only without the "import rlp" cheat. Basically, there were a lot of blind spots in the official documentation and it took me a while to figure out things like how to make a proper key recovery id or which endianness to use where in the messages. How far have you been able to get to? I still can't quite wedge into the mainnet - the nodes keep disconnecting me for unknown reasons some time after, and finding a new node to connect to takes a while. My node does works rather well on the ropsten testnet, however.
- mjfl 9y ago> the "import rlp" cheat. Ah, I knew someone was going to get me on that. They actually give you the encode function in the specification. It's pretty straightforward and if I was to write it, would end up the same, so I decided to just import the library. But I agree it does go against the "from scratch" title a little bit. > there were a lot of blind spots in the official documentation Totally agree. > How far have you been able to get to? I'm actually trying to get the mainnet nodes to talk to me as well.
- canada_dry 9y agoThough I meet the criteria as stated (knowledge level wise - I'm a retired IT Exec/long time geek), yet this still is a bit too esoteric for me. As one of the 'killer apps' for ethereum is smart contracts, I'd like to see this explained in a 'for dummies' high level way, then decomposed into the finer technical chunks needed to make it happen.
- xj9 9y agoprofessional etherem devs haven't even gotten to the point where they can write correct contracts themselves. but the concept is pretty simple. a "smart contract" is a script that runs on a blockchain to execute terms and manage funds. the problem is that the tools that you use to make these are basically garbage. you don't write fin-tech in what amounts to javascript y'know?
- sillysaurus3 9y agoPeople were saying the same thing about non-C++ back in the day. "Web apps aren't written in scripting languages y'know?"
- saurik 9y agoI view this more as "web apps should not be written in C++ due to security issues that we have long come to understand" than "web apps should be written in C++ due to performance issues we are guessing at"... like, do you believe that in a few years people will decide "no, strongly typed and proof assisted languages were overkill for contracts: it was actually better to code them in a language that has weirdly fluid rules and type semantics for reasons they did not quite grok in 2017"?
- sillysaurus3 9y agoThis criticism doesn't apply to Ethereum. Solidity is compiled to a VM. You can write other languages that meet your criteria that still use Ethereum.
- mdevere 9y agoexcellent thank you
- andrewbinstock 9y agoJava Magazine published an article on Ethereum, explaining how it works, and how to access from Java [1] [1] http://www.javamagazine.mozaicreader.com/JanFeb2017#&pageSet=36&page=0 http://www.javamagazine.mozaicreader.com/JanFeb2017#&pageSet...
- TheChaplain 9y agoThis is a very useful resource, thank you!
- bbcbasic 9y agofucking awesome
- aqsheehy 9y agoPonzi pumping
- zagdul 9y agoWasn't the purpose of bitcoin to eventually hit a limit someday? Isn't the creation of Ethereum just devaluing bitcoin?
- patrickk 9y agoIf you are taking about the issuing of Bitcoins, yes, at some far distant point in the future, no more Bitcoin will be issused. Bitcoin and Ethereum have very different intended use cases, as this article demonstrates. You could argue that Ethereum could be a threat to Bitcoin, or coexist, depending on your perspective.
- mjfl 9y agoHi! Thank you all for the attention! I was not expecting it! It seems that the user registration emails are causing a 500 server error and I'm working on a fix. Edit: I'm bypassing the email confirmations for now, if you got a 500 error, please try to login using the account you signed up with. It should work, otherwise email me at mflynn210 <at> gmail.com.