This is another observation post and not a member of MaidSafe series. I need to get around to writing more on that. This is related though for sure. It’s also a rant which may not be very useful. This should perhaps be entitled Why David Irvine is absolutely rubbish at answering questions. As usual, like presenting I do not research, read up or prepare this stuff so expect mistakes.
Show me the maths proof!
I hear this a lot with respect to MaidSafe and generally from ‘experts’. I get very frustrated by it which seems to show a lack of ability to some. I argue this is not the case. We have recently developed some maths equations for the security of close groups in MaidSafe, they are far from simple, but agree with results. I must add they are probably not understandable by many, not really. (we will publish these in papers, but believe me it’s a tiny part of a large story, a headline, not full research). I am not putting it in this story for the reason I am writing this story, it’s a badge, like standing in front of a whiteboard with prepared equations, or people who speak in unknown languages of maths to people, in attempt to meet an ‘expert’ status. I will place these equations in papers where they fit for maths people, to portray part of a story, but only part.
You see, to me it seems a complex equation, preferably with some calculus and well placed greek letters can look amazing. It also can be a complete bluff, smoke and mirrors. A good example of this is I was recently chatting to a lecturer/researcher in a local Uni, he is a leading expert in DHT technology and well read and published (even in the peer-to-peer handbook – a bible of DHT tech). This person who for years, along with the community of industry ‘experts’ figured D1HT was a truly amazing, scalable, fast and very efficient DHT. This was published in many places and well-regarded, the maths was impressive and ‘proved’ the case.
For years we had maths that proved bees could not fly. We had maths to prove aeroplanes flew by splitting molecules of air and the longer areas of the top of the wing made these go faster lifting the wing up (well I am reducing this a little). Prior to this we had maths that showed how everything worked (Newton provided much physics to prove this), we also had a ton of maths to prove zero did not exist (in fact was the devils number) and the world was flat.
Prove it by measurement!
Another field of physics/maths to prove things by experimentation. I was watching a Stephen Hawkins series there and heard a few times, “this measurement proved my thesis”, I also read that a lot in a book called why does e=mc^2 by the professor Brian Cox (the pop band chap, very entertaining and great). These tests do not prove any theory, they agree with a thesis within the confines of the variables involved in this test, which necessarily is limited. So it’s a limited agreement with a thesis, at best.
Make it repeatable!
OK, repeatable experiments are really good, but !
We repeatedly seen a bee fly, we repeated measured planes flying, we repeatedly built things using Newtonian maths/physics, we repeatedly worked for 600 years after Aristotle without the number zero (lets not even discuss complex numbers of negative, and infinity, well …), well maybe not all of us, the Chinese had gaps in numbers to represent zero, but not a name for it (as the mafia would say).
So the question is repeat what ?
Make it intelligent!
Aha, lets prove stuff by giving them, either a complex name or better a complex name with a muckle big equation with loads of components and if it does not fit, shove in a constant or two (it was good enough for Einstein). Now there you go we are experts, nearly nobody knows what we are talking about and we can stand beside a blackboard full of chalk, or even publish a ton of scientific peer-reviewed papers. We are set, experts, proof and above all a satisfied (for now) ego.
- The bee flew (we now believe it flaps its wings really hard)
- D1HT failed (yes somebody built it and it does not work)
- Aircraft wings now apparently are believed to behave like a sail on a boat (are we surprised molecules are not splitting in some weird dance with matter ?)
- Einstein ‘proves’ Newton was wrong
- Hawkings ‘proves’ Einstein was wrong
- Recent ‘proof’ shows Newton was right
A single test or maths equations that agrees with a theory does not prove a theory and make a law.
So does e=MC^2, well we don’t know! but we all believe it to be true as though it were a law or proven theory, we teach it as such. Well all this is a problem, there seems to be no agreement. We also need to be careful of peer review and field testing as the NSA / NIST have shown that what is reported and agreed is not necessarily the truth, so this is a huge problem. A huge talk on its own, suffice to say, you need to believe the people who measure and give results (Pharma companies are already known to misrepresent results and actually throw away bad results)
Make it simple
This is the crux of the matter, it just is not simple.
We all need to be able to understand our first principles are probably wrong. We need to realise field testing only tells us a bit of what we need to know within limits. It is just not simple, if its simple it need to be a belief like religion and that leads to people holding onto something that is not proven. Those people will stop innovation and improvement on our global knowledge base.
What do we need to know
Maths is hugely important and is a must, but do not use it as a badge, it’s a tool like a spanner, it may be beautiful to you, but don’t shove it in folks faces.
Measurements are also hugely important to home in on improving the validity of a theory, but should never be stated as proof of a theory in their own right, unless they cover 100% of variables. We live in a pretty variable universe so it would be a brave person …
Repeated measurements really help, but repeat with what variables, do you use the same seed values or make them random (for many tests)? This is why experimental physics is hard (very hard), there is a huge amount of things to consider.
Another important thing to consider is change, not only of your field but all around you. For instance RSA was very secure and beyond feasible for a computer to break. Now there are at least three things I know of that influence this a lot
- Computers are exponentially more capable of solving factors via brute force.
- Discreet maths is moving very fast, so the amount of work to solve these primes is way less than was thought possible when the RSA algorithm was created.
- Cloud / grid computing allows huge resources to be applied and it can be costed (so we know its circa $5 of amazon time to solve a 256 RSA key)
Never mind far off quantum computing and all that clever sounding chat about qubits and shor’s algorithms etc. (oh nearly became an expert there!), it’s all part of a large pot of stuff we need to know.
There is no short-cut, there is no final proof, we are merely allowed to see only part of what makes the universe work, we do not know gravity, anti matter, black holes or even if any of these things exist! We cannot even tell why prime numbers happen in the order they do, what we do not know is very simple things that we really should know. So how on earth could we know the big stuff? Bottom line, this game we are playing only shows us a few of the rules at any one time, things will change as we discover more rules, but they force us to reconsider all our previous moves continually and as nature shows us more rules it will force us to be humble and start again.
The number of unknowns is enormous and trying to ignore them by simply an equation, fancy word for something, a measurement or even a series of experiments is simply not enough. All together they offer an ability to start to ask, none of them offer a final answer (and never will). So don’t be an expert, be an explorer and if you are nice to your fellow explorers they may even show you ways you have not yet considered. If they talk in maths riddles and hide behind fancy papers and equations then they are safe to ignore. There is no easy answer, only more information and potentially all you know may be wrong, certainly the majority is certainly wrong, so don’t be a believer, be ready to infer new conclusions as you find out more info, which may not even look related. So look at everything and prepare for massive surprises, they will happen!
This is why I struggle to give simple answers to folk, I hate lies and part of a truth is closer to a lie that saying nothing. Many understand this position, but many don’t yet. It is interesting to see though that the experts seem to be the very people who are the believers and not explorers, when folk also realise what they know is trivial and likely wrong then perhaps things will move along faster.
In saying that I also agree that the inability to easily explain something is an indication of a lack of understanding. A quandary, well yes … Just another thing I don’t know, I wish I did.
While I understand the frustration of the peer-review process and the arrogance of some experts, ultimately I personally think that if the core ideas behind the Safe network are sound, they should be teachable in a 1-semester course for final year computer science undergrads, and based on the ideas, the right choice of language technologies, and the accumulated wisdom of an experienced developer, the students should be able to reimplement the core parts of the systems within a semester project. That is the test of repeatability I am going after.
Given my own investigations so far, the intuitions behind the system seem to be right, but I do think that there is a need for prepared, rehearsed, and distilled presentations on the core technical aspects of the system. I am willing to step up and do it ;-). Given enough interest from the research community, other researchers will step up and do the proofs, improve the maths to do the proofs, and perform all sort of experiments to break the system. Especially If some of the resources made available by the network are directed towards researchers ;-). In the end I do think that there is value in it as they will increase the level of trust people have towards the system.
In the short term though, you guys should continue to focus on engineering the system to come up with an actual public beta that people can play with and try to break. The rest will come in time ;-).
I agree completely and we would support as much peer review as possible (we do already). If you can help here you will definitely be supported and we will be in your debt for sure. I think it is hugely important, although I do believe it is problematic for short cut thinking, I totally understand it is an absolute requirement of progress. I would support you completely Erick if you do this.
I should say, I do really like the peer review process and support it. I think it is valuable and works well in many cases. I see now though the Internet is another peer review that does not work so well, but should. If we can marry the two it would be great, so have people discuss in their own language would be nice. The comments systems are poor as they force a paper or story to be light enough for everyone but deep enough for the most detailed technical argument, so skew the process somewhat. What seems to happen is analogies are debated to the nth degree when they are analogies and never meant to be detailed technical implementations. I think we need light stories folk can understand and links to very detailed peer reviewed papers for the more inquisitive.
As a visionary I don’t think you should feel obliged to explain in detail how things should work.
The role of the vision is to lay down a rough plan, which can then be broken down into manageable tasks that may or not be achievable. This is a top-down approach, probably not to the liking of everyone, but nevertheless one which can yield major breakthroughs, since it often ignores small “obstacles” which the “experts” often claim impossible to overcome, but that in reality may not invalidate the bigger picture.
I recall Satoshi Nakamoto’s first post introducing Bitcoin, and how the early feedback he received was how it would never work in practice. We should be glad he ignored that feedback.
On the other hand, it is important to successfully implement the vision, and I do value a rigorous and methodical approach to the detailed design and implementation, using good software engineering practices as much as possible (as opposed to the “cowboy” approach), and taking special care of matters such as security, which is often an overlooked component in many systems. This requires engineers with both the technical ability and a *can-do* mentality, along with a fair amount of creativity, to overcome those “insurmountable technical hurdles”.
With regards to MaidSafe I trust your vision, and the technical ability of those you are contributing to its implementation, and I’ve put my money were my mouth is when I invested in the IPO. I hope to see the vision slowly transform in working software. Good luck!
100% agree with this sentiment. It’s a curse of wanting to help and answer questions for good people that allows those detailed answers to be demanded in todays Internet. Not wanting to let good people down means dealing with sceptics who revert to fancy tech statements that force a different story to have been told in the first place. The worry being people read the less well thought out critique and assume there are errors. Those people will not pick up the detailed peer-reviewed papers to check the details are fine.
It’s tough but it is what it is and we need to balance dealing with mis-information (that sometimes may be sponsored) and allowing good people to ask questions. The territory for innovators is in many ways easier with access to information but harder as mis-information is easier for those who seek to stop these innovations. I agree though, nothing can stop a good idea or progress, it just makes it harder, for me it makes me more determined to push through it.
thanks again for the support, it gives so much positive energy that just helps.
D1HT “Someone built it and it didn’t work” Reference?
For that matter, where is the proof that MaidSafe’s routing has “D1HT speed” (what does that even mean if we can’t compare them?).
Luiz Monnerat never posted his code, as far as I can tell, though released numerous papers comparing its performance at Petrobras.
I think you might be referring to the error in the EDRA protocol. Here is the paper that seems to indicate fixes for that:
Sorry just got this, I will pass on to our uni pals as well. Thanks, this is what I love about the net.
I absolutely agree with this post. This is the current state of affairs when big words and fancy formulas are more important than actual understanding. Proof: http://gizmodo.com/over-120-science-journal-papers-pulled-for-being-total-1534110496