Paouky - Progress update thread - Aug-Sep 2020

Hello there. Here’s where I’ll share my weekly progress to those interested.


B E G I N

  • Quickstart guide - A short and basic tutorial to get grin node and grin-wallet up and running, initialize, and learn the to send & receive. quentin initially wrote the first half and my work was to polish it and then write the second half.
  • Wallet user guide - A very comprehensive user guide to grin-wallet. Based on an the outdated document yeastplume wrote. Rewrote and revamped a lot of it and updated to v4.0.0.
  • Story - Tells the history of the project. This is the 1st part of a series of documents under the category About Grin, which is meant to serve as a somewhat deep yet friendly introduction to Grin, something severely missing at the moment. Would love some input on the Story doc, having a hard time deciding how I want to finish it.
  • Privacy - A new primer on privacy. 2nd part of About Grin.
  • Scalability (WIP) - A new primer on scalability. 3rd part of About Grin.

There is plenty of research, resource gathering done and reading being done, as I’m no expert at everything, yet it all needs to be perfectly accurate. I’m Trying to make it flawless.

Also set up the ground with a rough outline for a new Introduction to Mimblewimble and looking forward to writing it down next week, will take quite some time.

18 Likes

Incredible work!

Do we know who manages the snap binary? In general, it’s not a great idea to suggest installing from package managers unless the repo is maintained by well-trusted member(s) of the community, and even then, downloading from github and checking sigs should still be the recommendation.

Great start Simple and clear :ok_hand:

I’ve not had the time to go through all of it, but it looks like an amazing progress :rocket: congrats and thank you!

Thank you very much @david @Shobji @oryhp glad you liked it!

Yes it’s in fact @quentinlesceller who manages it. But I see your point, I think for now I’ll mark it as an alternative method along with a warning, and later on maybe remove it entirely, depending on additional input.

1 Like

Got it! It didn’t used to be Quentin. Maybe just a small alert that suggests checking the signature against the github repo would be good. Just as long as they know it’s not a deterministic build, and some trust is required.

Very nice work @Paouky! Yes indeed it used to be someone else but I now manage it. And yes it requires some trust.

H E L L O A G A I N

I have set out to create a new technical introduction to Mimblewimble. The current one assumes prior knowledge of cryptography which sets an unwanted barrier to learning. Mimblewimble initially seems very intimidating to most, but it’s actually quite elegant and not too complicated once you understand the principles behind it. Basically, I created the introduction I wish I had when I first learned how the protocol works (not long ago).

  • Elliptic Curve Cryptography - 1st part of Introduction to Mimblewimble series. Describes the basics of ECC and curve operations.
  • Commitments - 2nd part of Introduction to Mimblewimble series. Briefly goes over the concept of commitments, and pedersen commitments specifically, in an easy to understand way.
  • Mimblewimble - 3rd part of Introduction to Mimblewimble series. This is a polished and partially rewritten version of the current introduction. This was pretty ambitious of me, I hope I did well.
  • Emission - Introduces emission schedule and reviews the various considerations behind it (security & distribution). 4th part of About Grin.
  • Transactions - Presents an overview of the transaction flow and how the wallet handles it, from a user’s perspective. 5th part of About Grin.

I’ve asked for feedback on the new series but haven’t gotten much yet. Anybody willing to read and criticize would be most welcome!

The plan for next week is to finish the last two parts of About Grin series, then begin looking at some PRs and RFCs for improving upon documentation of implementation details. But I need to look into it and see how far I’m able to go with this, and what exactly is needed.

I really encourage you to contact me with suggestions, and to help me decide what I’m going to work on next.

5 Likes

After 8 years: Bitcoin: x + x/2 = 3x/2. Grin: x + x = 2x.
3x/2 = 3/4.2x, so: “So compared to a constant supply, after 8 years, the total amount of coins emitted is only 33% less.” is wrong. You can replace 33% by 25%. ; )

Oof. I blindly trusted the calculation in the current wiki, thank you for noting.

I just went backwards to find out when it was changed from 25% to 33%. It happened here.

Ah, the first person was right then : )
1.5 = 2 - (1/4).2
2 = 1.5 + (1/3).(1.5)

Otherwise, I read the part on elliptic curve, it is not bad. You aquired a good understanding. i’ll send you some improvements on that part when i can find the time.

In the meantime the following video is nice to watch for the elliptic-curve curious:

Hah, the first person was Igno.

Thank you, looking forward to your feedback.
I’ll watch the video as well.

S O M E M O R E

  • Slatepack Integration Guide - Document introducing the Slatepack standard to services (mostly exchanges) and outlining how to integrate it.
    Credit to @joltz for the great feedback.
  • Wiki - Technical documents finally transferred from grin repo. A few required editing, merging and formatting.
  • Proof of Work - Short overview of our PoW and the decision around being ASIC friendly. Our PoW has quite gone through quite a long process so it was challenging to keep it all relatively short. This doc will definitely need a re-visit sometime. 6th part of About Grin.
  • Home - Added a landing page.
  • Archives - Updated with quite a lot of stuff. Still debating whether to change its name to Resources, let me know if you have an opinion.
  • Filled holes in other About Grin documents, and more refinements across the board which I forget, as the work has been a bit chaotic this week.

As always, feel free to browse https://paouky.github.io/docs/ and provide feedback or suggest future work!

11 Likes

O H H E L L O

  • New custom style for the docs. A glorious reference to the old grin-tech website theme.
  • List of Services - Up-to-date list of grin services.
  • Combed through entire forum history and added to archives all those which seemed relevant.
  • Re-did illustrations 1, 2.
  • Easy guides (pictures) for how to send/receive in niffler and grin++.
  • Build - Re-visited build guide and made some improvements.
  • Website PR to change Get Started page, making it more relevant and sensible. Also includes slight changes to Download and Community pages.
  • A minor grin repo PR to organize doc folder a bit.
  • Security Process - Just ported over a few documents.
  • Went through all current wiki documents and made a list of those worth keeping. The rest can safely be discarded to reduce clutter.

I spent a lot of time discussing about grin lately. I often end up being very obsessive over one specific thing. Now trying to reclaim my other hobbies (not that anybody cares).

Anyway, If there’s anything else you want to see in the new docs, I wanna hear it!

Love ya’ll.

9 Likes

If you have the time in the coming weeks to spend a bit on it, I would love to see some 5/10/15-line portraits of the historical contributors to Grin. This brings some subjectivity to who to put and to not put (people could always add portraits after), but at the end of the day it is OK, and historical contributors who are not present could always complain to us to be added : )
This would ideally mostly be focused on technical contributions, and for the non-anonymous contrubutors, maybe 2 or 3 lines on their backgrounds. This work would require to dig into Github and maybe Gitter logs quite a bit, but that could be interesting to start such a project, which does not need to be finished any time soon.

Otherwise, keep up the good work, very valuable for Grin to have all these new and updated docs :wink:

4 Likes

I think it would be nice to have more content about the Philosophy.

PS: Grin is now your hobby, it happens to everybody :joy: