Compact Sparse Merkle Trees (CSMT) [1] is an already existing scheme for shorter proofs, which introduces the new CSMT data structure and was also posted on HN a while ago.[2]
This[3] is the implementation(in Elixir) of the above paper by the author for those interested.
Also, here [4] is an interesting discussion between the author of Compact Sparse Merkle Trees and Vitalik Buterin, the creator of Ethereum on their research forum.
I have posted these links because it seems disingenuous at best and malicious at worst, to not cite this original work which has been extensively discussed and documented before, anywhere in the current paper.
One of the authors of the paper here.
We did not cite this work, because it has nothing to do with what we're proposing. One should not confuse Merkle multiproofs with sparse Merkle trees. We mentioned that in the paper as well.
I do know that Vitalik once proposed the idea of sparse Merkle multiproofs somewhere informally, and we would love to cite that if someone could provide a link to that.
But regarding the compact sparse Merkle tree, just because this paper shares some words in the title, does not make it the same thing.
Thank you for the links, I will try and edit the paper in the upcoming days to include Vitalik's mentioning.
Jim McDonald's article is also wonderful, we referenced it multiple times and experimented quite a lot with his Merkle tree repo: https://github.com/wealdtech/go-merkletree
I think a global style file helps when the same HTML markup is repeated in several parts of your application.
However, a component based architecture, by definition represents the reusable HTML markup of your application. Since such a component brings along its own styles wherever it is used, there is negligible loss of reusability of styles.
This is in theory of course, but my experience (with Vue.js) has been the same in practice too.
With Vue.js at least, you have the optional "scoped styles" feature which gives you tuneable reusability in case you really need it. Most of the time, I find my self writing
<style scoped>/*styles here*/</style>
in my component files.
Edit: Regarding performance, I believe it could potentially be an issue on mobile devices (for now), and if so I would solve it by creating a global stylesheet by merging all individual stylesheets and appending the component name as a prefix in all selectors in both the styles and the markup.
This would be done programmatically using webpack or some other front end build tool. I doubt I'd ever need to do that TBH.
best thing those of us championing elixir can do is build apps in elixir that need to be maintained.. the more elixir apps in the wild, the more jobs we can create.
my studio is doing all of our greenfield backend work in elixir and we're all very happy with our current stack.
haven't been this happy since the early days of rails. elixir and react are a match made in heaven.
I think a good way to increase creativity and productivity is to use the right abstractions of thought and craft.
Every good(non leaky) abstraction expands the creative envelope further and lends itself to creation of new higher order abstractions for the next generation.
Having coded in imperative languages like Java, Python and C++, I had been on the lookout for a practical general purpose language which provides good abstractions/high expressiveness.
Elixir appealed to me more than Go in that regard. It's been six months since I started writing Elixir and it's been a pleasure.
We have a dedicated abuse monitoring team who work on mechanisms to control misuse of our system thereby reducing the chances of our sending IP getting blacklisted. In addition, we recommend users to configure proper SPF & DKIM records for better delivery of their outgoing mails.
Could you please describe the specific issue that you faced along with the complete bounce message or screen shot, by writing an email to support@zohomail.com. This will help us to investigate further. Thanks. ^SP
Personal Anecdote:
I've been on a planned break since June '16 to build stuff, among other things.
I get approached by top Indian startups once a week on average and nobody seems to lose interest when I tell them I'm on a break.
I have come to love a language called Elixir while working with it during the break and potential employers take it as a positive when I mention this fact.
Before I quit, I was a Tech Lead at an early stage startup(now Series B funded) for 6 months and I'll be looking for employment soon. I do not see this being a problem in my case.
Neat, that was basically what I was hoping to hear. I'll probably build a bit more savings so I can feel secure running on my own gas for a year, but I'm definitely planning it in the near future.
Yes, definitely build up a good runway or you'll find yourself negotiating from a position of weakness when you look for a job with urgency.
Another thing would be that employer preferences differ with regional factors, so get opinions from some local friends who have done this.
Finally, as you might already know, you must realize that this is a gamble. I'd play in a way that I have some guaranteed upsides(learning, fun, experience, autonomy), bounded downsides(loss of income, loss of seniority, stress) and unguaranteed, unbounded upsides($$$..$$$).
Context:
I quit my job in June 2016 to take a break from my career and among other things, build a product end to end.
Money has run out now but passion hasn't and I'm close to first launch. I'm in Bangalore so I'm able to keep burn rate below $400/month.
Advice:
I'd say go with the tech you know(exceptions only apply if your core differentiator is technological superiority, but that's rare).
You'll have full days to yourself, so separate work time from leisure time, do physical exercise, be in touch with friends, don't reveal your plans/progress to many people, involve target users as soon as possible(most important). Lastly, enjoy the ride!
I found the writeup valuable in terms of provoking deeper thought and discussion.
However, I think perhaps the author is mixing up 'both wits' (logical vs emotional thinking) with the two systems thinking from the TFaS book(intuitive vs logical thinking), at least in the writeup.
I am more inclined to believe that intuition and logic based thought processes are superior to one that has an emotional dimension, at least for running a business.
As an example, I think if in the Cheezburger case the author was less emotional, he would have responded rather than reacted to the perceived threat- which is arguably a better way to deal with the situation.
Lack of affect(especially fear) is a defining quality of psychopathy, which happens to be very common amongst CEOs [1].
Agree with you. Ability to code and moreover an ability to contribute to the company codebase is something that should be present even at senior levels for a tech focused company.
At the same time, IMHO, somebody in a techno-managerial role with responsibilities of one or more tech teams may find it hard to devote more than 20% of their time to coding.
This[3] is the implementation(in Elixir) of the above paper by the author for those interested.
Also, here [4] is an interesting discussion between the author of Compact Sparse Merkle Trees and Vitalik Buterin, the creator of Ethereum on their research forum.
I have posted these links because it seems disingenuous at best and malicious at worst, to not cite this original work which has been extensively discussed and documented before, anywhere in the current paper.
[1] https://eprint.iacr.org/2018/955.pdf [2] https://news.ycombinator.com/item?id=18166298 [3] https://github.com/ZanjeerPlatform/csmt [4] https://ethresear.ch/t/compact-sparse-merkle-trees/3741