IC restrictions and aspirations versus general-purpose computers

Hi Enzo, I’m not trying to misrepresent your position.

Please take on board the feedback that different people from Dfinity appear, to an interested outsider, to be making contradictory claims. I’m just trying to elucidate what the value proposition actually is.

I think you are saying: some very basic and commonly used functions of general computers are admittedly not available. Dfinity’s proposition is that almost all systems don’t actually need these capabilities, even though they use them today. Further you believe that the IC will have advantages of cost/simplicity/performance/security that will motivate developers to move to system without these features. Is that a fair and accurate summary?

If that’s it then it sounds like a classic Innovator’s Dilemma argument, and it does sometimes work: people give up features previously seen as essential to get something cheaper or otherwise better. But it does hinge on the customer value of the specific tradeoffs.

My original question was not about exotic hardware like ML accelerators, but about accurate real-time clocks, obviously a very basic thing that has been on even tiny computers for decades, and used by almost all applications.

On the specifics:

I understand you made that tradeoff. I wonder if it is realistic to expect to migrate all (or almost all) IT systems to a platform that can’t open network connections. It seems like a pretty basic feature in 2020.

For example if you look at AWS Lambda, an arguably analogous serverless platform, functions can make outgoing network requests in handling a request.

Great, looking forward to it. I sympathize with having an under-development system with partial documentation.

Oracles are essentially a way of moving the computation that can’t be done on this platform into another more-capable platform. There’s nothing wrong with the technique, except that Dominic repeatedly asserts that the IC will replace all (or maybe nearly all) other systems and people won’t need to manage other infrastructure. He specifically criticizes Ethereum for needing external helpers.

So there’s an apparent inconsistency here between Dfinity on the one hand promising to replace (almost) all IT systems, and on the other hand saying developers need to run external helpers somewhere else to do pretty basic features.

That’s probably a whole different thread but it would be great to see what specific security guarantees Dfinity makes to app developers.

So saying “encrypt offline” seems to mean, “run part of your system outside of the IC” and again, is really in conflict with assertions that people don’t need other infrastructure.

Homomorphic encryption of all the data, maybe can work, but that sounds super hard for app developers to do safely within their app, without support from a compiler or framework.

2 Likes