Writing about the Blockchain - part 1

in #bitcoin6 years ago

blockchain_featured.jpeg

Problems of the Blockchain

Thinking about this next project, intending to create some new branch of crypto that would be actually possible to use as a means of exchange, I've started to arrange in my head what I actually know and understand about the problems of crypto, preventing it from performing this function. Sure, of course, I'll need to evaluate the approach of this new fledgling startup in terms of what exact solutions it has for those problems. Thus, seeing how far those proposed solutions are from reality, I would be able to make a conclusion that the project is a total rubbish or close to total rubbish. (In terms of actual implementation.) But as a concept, it might have some interesting features, about which I'm going to write. In general, though, I'll be writing essentially about the problems of cryptocurrencies, and why it's problematic for them to become a means of exchange at the present moment, adding this startup as a curious, although, a futile example of an attempt to tackle those problems. So this would be just a useful illustration of the general topic.

So, Ok, what do I know about crypto, regarding their inability to be used for monetary settlements?

The first problem is scalability. In short, blockchain is really slow. Plus it's getting progressively slower with the increasing number of transactions conducted on it. In fact, there is probably a breaking point; when a number of transactions on the blockchain reach a certain limit, it will be clogged altogether. Because the more transactions need validation, the longer it takes to validate each transaction. (I don't remember exactly why is it so ) Well, and now the processing speed of the blockchain is a dozen transactions per second maximum, so if people really begin to think that it's like Visa or something, they will very quickly become disappointed.

The second problem is related to the first, and it's the transaction fees. The more difficult it is to validate the transaction, the more fees participants have to pay for their transactions being conducted quickly. The amount of fees, in this case, is proportional to the speed of the transaction. So while the speed of the network will be decreasing with an increasing user activity, the transaction fees will skyrocket. This will essentially defeat the purpose of crypto as a supposedly low-cost money transfer mechanism.

The third problem is volatility. Maybe, it's not the architecture's fault, more like this is the situation caused by market collective psychology that hadn't been taken into account when the idea of cryptocurrency was devised. Namely, when you convince somebody that something has value (like Bitcoin) this person would likely just buy and hold this something having value, instead of using it as a means of exchange. More people get interested in this valuable something, and the growing demand makes this thing grow in value. Which convinces those who already hodl it, that they do everything right. And they will continue to see crypto as a valuable asset that under no circumstances should be spent because it consistently grows in value. You don't want to buy something using a currency that tomorrow will likely be worth twice what it's worth today.

The HUGE irony of the situation is that the value of Bitcoin is in its potential ability to serve as a reliable and convenient means of exchange. But it cannot serve this purpose because it's considered too valuable to spend. So, if it's so, probably it doesn't have value anymore? But it brings us back to the situation when it has value because it's a potential means of exchange. Essentially we are stuck in a logical paradox.

The bottom line is, this situation produces volatility and daily fluctuations that prevent crypto from being used as a normal currency. One would expect some predictability regarding what it would worth tomorrow. Otherwise, it's impossible to determine how to price various things in Bitcoins.

The fourth problem comes from the lauded irreversibility of everything that happens on the blockchain. While, maybe, it's cool from the point of view of hardcore mathematicians, in terms of a practical payment system, this is a disadvantage. First of all, there might be a human error, funds mistakenly transferred to the wrong address, and so on. The traditional payment and banking systems deal with such situations every day and have a shitload of tools and procedures to rollback such transactions and save their clients from disaster. With the classical blockchain architecture, it's technically impossible to undo anything. What's interesting, I read somewhere; there is a subtle error (like leaving a space after recipient's bitcoin address) the sender of Bitcoins can make, that leads to sending the amount of money ten times higher than he planned. Plus, considering WHAT IS the Bitcoin address and how easy it's to make a mistake in it. (It's also remarkable, that the system doesn't check if the entered address exists so that the sender can send his money literally into the void) Also, it's a convenient thing for devising various scams and fishing schemes. So, yes, considering how easy in this situation a Bitcoin owner can lose a lot of money in a blink of an eye, irreversibility of blockchain transactions is a problem.

Blockchain Scalability

A brief overview, what do I have so far. It's a project intending to build an alternative blockchain network, fixing the existing troubles with scalability by using their original technological approach. And the White Paper devoted to the description of this technological approach, which still remains somewhat vague even after this extensive description.

What's the scalability problem? Like at some point we began to observe slow transaction confirmation and high transaction fees on Bitcoin network. It's the thing defined by the blockchain architecture. All the pending transactions fall into a special pool, where they remain until miners begin to add them into blocks. When the number of transactions had dramatically increased (which happened somewhat at the beginning of 2017) a number of transactions stuck into pools became quite significant. Miners don't pick transactions in the same order they arrive. There is a different scheme. Each transaction is supplied with an additional amount of money (transaction fee) that goes to the miner as a reward for his work of adding this transaction to the block and all the hassle and heavy calculations necessary to hash the block and add it to the chain. So miners pick transactions that ready to pay the highest fees. So according to this implementation of market principles to the transaction confirmation process, the fees naturally go up. Because the number of transactions increases and the miners cannot process them all in the adequate time, so they favor transactions whose owners ready to pay more.

In one article the situation was compared to a bus stop with buses (having only, say, twelve seats) arriving every ten minutes. Meanwhile, there are hundreds of people, standing at the bus stop, and many are ready to pay extra to get ahead.

So, what's initially the cause of this bottleneck? In other words, why the process of transaction confirmation is so slow, and why the Bitcoin network can only process about seven transactions per second? According to many experts, it has to do with the limited size of the block (1Mb) It's logical; every block requires hashing, which, in turn, requires a lot of computational resources. So the smaller the block, the fewer transactions can fit into one block. So it leads to a higher number of blocks and more calculations necessary to process transactions packed in those smaller blocks.

From the ideological point of view, many people claim that such a situation leads to changing the Bitcoin paradigm from peer-to-peer money exchange to a function of the settlement layer. In other words, it will become too expensive for ordinary people to conduct Bitcoin transactions, and low-amount transactions wouldn't make any sense because fees for their confirmation will be comparable with the amount of transacted money. So, it means that transactions will mostly be conducted between bigger organizations (intermediaries) that would transact large sums of money and would be able to afford to pay high transaction fees. Hence this definition "The settlement layer."

So speaking about a solution, there are two opinions about how to overcome this situation with scalability. The first group insists that the block size should be increased. One of the forks, trying to implement this idea was SegWit. (Also, the principles of Bitcoin Cash have to do with the block size among other things, but I need to check)

The problem with this approach is that the limited block size guaranteed some kind of predictability on the market of Bitcoin mining. In other words, it controls the character and speed of hashing process and the number of new Bitcoins getting added into circulation. (Which is the failsafe mechanism, preventing uncontrollable Bitcoin emission, the way I understand it)

Plus, with the larger blocks, it would be harder for the full nodes to hold the whole copy of the blockchain. (I don't really understand why is it so, but anyway) The role of full nodes in the blockchain is to propagate pending transactions across the network, as well as to propagate hashed blocks, checking their validity in the process. Therefore, they need a full copy of the blockchain to be able to make those checks. One of the important aspects of this scheme is that the operation is considered correct only if all full nodes agree that it's correct. (full consensus) If one of the full nodes states otherwise it's enough for the network to reject the operation.

So with the larger block size, the hardware requirements for the full nodes will increase, and fewer machines will be able to perform this function. If the network is only supported by a limited number of powerful servers, presumably belonging to large organizations there emerges another risk related to the fact that an entity or a group having more than 51 percent of computational power on the network can compromise it by manipulating transactions with fraudulent purposes. The remaining nodes on the network won't be able to stop this process because they just won't be able to keep up with computations.

A different approach to solving the problem of low performance and scalability of Bitcoin network is, in fact, splitting it into a number of local networks with the main Bitcoin blockchain as the core of the system. In this case, transactions are conducted separately on local networks, being verified only within those networks, then the aggregated result (or whatever it is) is added and checked on the main network. The smaller scale networks probably are easier to hijack since they have a limited number of nodes verifying transactions. There are other technical and ideological problems like, in this case, it wouldn't be a truly decentralized exchange independent from anybody. Local networks will be controlled by smaller groups of people, and they will be related to some specific entities and organizations, which eventually would defeat the idea of Bitcoin network in its initial form. But, nonetheless, there are existing projects implementing this paradigm like Lightning Network, and platforms, utilizing the technology of State Channels, and other experimental solutions.

In addition to the problem of computational difficulty and slow speed of block hashing, there are other technical aspects that new projects try to alter to create alternative blockchains with higher performance. In a project I study, there is a different approach to building Merkel trees, used to verify the validity of transactions within the block. Without getting into details about how the Merkel trees work, in the classical Bitcoin architecture, each block contains the root of the respective Merkel tree representing the transactions in that block. The project claims that the existing implementation of Merkel trees in blockchain is not optimal and that, by tweaking it a bit, it's possible to increase the speed of transaction verification within the block. (Or to check the correctness of a newly formed block)

At this point, things are a bit hazy in my head, but there are several facts I remember: Miners check the validity of a previous block to avoid working on the wrong branch of the chain, which would lead to them wasting their time and resources. This process of testing the validity of the block has to do with transaction verification, Merkel trees, etc.. One of the objectives of SegWit project was to optimize this process, as a result accelerating the process of Mining. Also, as a side note, Ethereum blockchain supports three Merkel trees in each block, which allows extracting more easily the information about transactions, their status, state of accounts and so on.

Another aspect of the Bitcoin network is the speed, with which the messages are propagated across the network and the need of reaching network consensus for the confirmation of the block. According to the original White Paper, it's not necessary that each node receives the hashes right after their creation. They can be requested later. ~

Token Exchanges

My thoughts are scattered like beads from the broken necklace, rolling across the floor towards inaccessible places in the corners and under the furniture. The brain works full-swing, generating perceptible heat, but I cannot direct this energy, because the link between the point of power generation and machinery, responsible for utilizing this energy to build a solid and well-arranged construction around some idea, is somewhat broken. So all this energy is expended, creating a flow of barely coherent thoughts, and my attention is frantically switching from one thing to another. An epitome of procrastination.

What I really need to think of, though, are token exchanges and their problems. And this is a problem because although they are apparently riddled with problems, it's hard to pinpoint what are the really important ones. I'd rather say that token exchanges are simply one big problem. But anyway. One thing is that they are unregulated, and this is less of a problem than when somebody starts to make some attempts to regulate them. Like when those tokens were defined in some legislation as securities and therefore subject to the respective laws, regulating stock markets. But, as a whole, token exchanges haven't started being regulated as stock exchanges. And the laws that made them partially regulated and partially unregulated made the situation even more confusing.

This is probably the main point that needs to be emphasized in the introduction, but it's as hard to formulate coherently as it's hard to pinpoint what's exactly the main source of the problem in the seething mess of token exchanges. Because it's all mixed up, and boiling, and seething, and constantly moving, and constantly changing. Probably it'll be right to say, that those token exchanges are not friendly places for the traders because of their wild, unregulated nature. Somewhat like a jungle, teeming with various life forms and very dangerous. And all the attempts to regulate it only make the situation more complicated for traders. Plus token exchanges are naturally cross-border international entities, and all the regulations exist within the framework of legislation of particular countries. In other words, they should only apply to citizens and businesses of those countries. Which makes the situation utterly confusing because like; to the jurisdiction of which country belong those marketplaces that have spontaneously emerged on the vast plains of the Internet? It's unclear, though one indicator of this mashup is that some ICOs don't allow US citizens to participate in their sales. Probably, because it would be illegal regarding that those ICOs don't comply with the rules, prescribing to treat digital tokens as securities with all legal implications of this definition. But how does it solve the problem if this trade itself is illegal from the point of view of American jurisdiction? On the other hand, those marketplaces are not under American jurisdiction, and under which jurisdiction they are is a particularly murky point, because when they deal with citizens of certain countries they probably need to somehow comply with the laws of those countries, and they deal with citizens of all countries. I think all those things are a total brainfuck for legal experts. Therefore nobody seriously studied this situation from the legal point of view, resigning to the fact that this is something that exists in the space of near total anarchy.

So, yes, it's hard to formulate it as a problem because one of the problems with this problem is that it's really hard to understand. And all that's left is resorting to a cliche "Crypto markets are wild and unregulated places, as opposed to stock markets that operate according to a clear and established legal framework, guaranteeing a high level of security and protection for traders and investors.

Speaking of security and protection, it's worth mentioning the constant hacker attacks on the exchanges, the fact that those exchanges are sometimes murky and shady themselves, the fact that they collect user's very private information, including private keys. The fact, that not on a single occasion the exchanges suddenly evaporated, carrying with them all their investor's funds. Or they were hacked by hackers, and those blokes, having access to tens and hundreds of thousands of private keys, cheerfully emptied the wallets of those crypto owners. (I was shocked when I learned that crypto owners really give their private keys to the exchanges, or maybe I misunderstood something.)

So, what do we have as an alternative? There is some company, which is a branch of a normal stock exchange. (which is a remarkable thing by itself and worth mentioning because it's considered that normal financial organizations shun anything related to crypto) And it intends to create a regulated token exchange under the legislation of one small country, which actually passed some legislation, regulating crypto, tokens, and exchanges. (Which is another remarkable fact worth mentioning) So, since those people came from the world of the stock market and organized and regulated trade, they try to shape this token exchange as something similar to what they are accustomed to. A place with the extensive screening, KYC checks, and various other measures that would somehow confirm the reliability of traders, and rid the system of problems usually inundating token exchanges.

Now I understand; it's difficult to write about it because I don't fully understand, how it's going to work. They don't change anything technologically, (Or do they?) so all the problems related to hacker attacks remain. Plus, as I understand, this legislation under which they operate is really vague and, I guess, in many cases, the decisions will be made based simply on common sense or platform bosses' understanding of the situation. Plus it still remains centralized and doesn't eliminate the risks related to the transfer of the assets to the exchange.

Maybe, a different and really valuable aspect of this project is that they try to organize ICO market and establish the process of screening and assessing startups willing to attract investments this way. (It would be reasonable to add this aspect to the preface, describing problems of token sales in general. Namely, the fact that a lot of tokens is issued by unreliable or openly fraudulent startups.

Blockchain, Content Platforms, and Ads

So, as I continue thinking about this project in question, (which claims that it can somehow challenge the Google AdSense monopoly in ads business) I can see three major points this project emphasizes, describing the problems with AdSense.

First, the advertisers are concerned about the opaque nature of algorithms Google uses placing their ads. Naturally, the company owners are worried that the wrong placement can damage their brand. For example, if their ad is shown on the sites with inappropriate or extremist content, it can lead to the situation when their brand would be associated with the content of those sites (inappropriate or extremist.) There was a scandal related to YouTube placing some ads on pages, containing videos of extremist organizations, which eventually led to some brands withdrawing from Google marketing programs altogether. I don't think it's a systemic problem; the referred case is more of an exception. But the thing is, AdSense algorithms are not transparent, so nobody can predict where their advertisements are going to end up, and, naturally, it can be frustrating.

The second point the X company underlines is that the majority of site and blog owners are generally frustrated by the fact that they cannot make any noticeable profits off ads. Most likely it's their own problem, maybe their sites and blogs are not that interesting and have few visitors. Plus, I think this also can be due to the presence of ad blockers, and the fact, that few people have a habit to click on ads. Maybe the whole concept of placing ads on the sites is wrong, like maybe those who read those sites to glean some valuable information about the world, say, some new ways of making pastries, are not at all interested in clicking on the banners or buying anything. (In my opinion, tv ads, for example, work differently and utilize that subconscious subliminal effect, which manifests itself much later.) Ok, another major butthurt of publishers is that AdSense has rules they need to follow so they won't be penalized or outright kicked out of the program. There is apparently an element of truth in that Google has a huge amount of rules concerning ads that are difficult to remember. Plus those rules can change every now and then, which makes things even more confusing. In general, anybody, who's trying to make a living by placing ads on his/her site, faces the constant risk of being sanctioned by Google without any preliminary warnings or subsequent explanations.

The third point: Users who visit those sites with ads on them unintentionally share some valuable information about themselves that can be used for marketing purposes. And since - as the company X claims - it's a valuable information those users shouldn't share it for free. They should be paid for incalculably precious insights into their psyche and patterns of consumer behavior. In my personal opinion, it's a pervasive bullshit, and I keep seeing those notions about "valuable" user data again and again. It's like a conspiracy theory in some ways.

So, anyway, this company X intends to solve those problems, although, it's not particularly clear how. At least outlining those partly made up problems helps to make an educated guess. First, as opposed to AdSense opaque algorithms, the X company will allow advertisers to control where their ads are placed. Taking into account the human nature, it means that none of those ads are ever going to be clicked upon, but, nonetheless, it's a good intention, one of those paving the way to hell. The second challenge the X company is planning to overcome is making publishers satisfied with their ad revenues. It's likely that AdSense really somewhat rips off publishers, taking a lion's share of their profits. Plus, there are other inconveniences with this system like bureaucratic procedures users need to pass to be able to receive their earnings, plus an inability to withdraw money immediately. So the company X is going to take much lesser commissions than Google and to allow publishers to receive their earnings right away, and in general, to make things more simple and convenient. The third thing, it somehow will allow users, visiting those pages with ads, to be rewarded for the statistically valuable information they inadvertently provide just being on that page. Ok,


Ok, I keep thinking about this next project, trying to find anything slightly remarkable about it. It's a video hosting platform similar to YouTube, apart from the fact, that it uses distributed file system (so-called Interplanetary File System IPFS) to host videos, plus it features closed token economy like that on Steemit. Like, everyone who signs up to this platform and begins uploading videos, voting for videos, and curating content, receives immediate encouragement in the form of a monetary incentive. (Curators are a group of volunteers, aiming to prevent copyright infringements and eliminate the presence on the platform of disturbing, violent, pornographic, or extremist videos) Like, I upload a video, and I immediately get some tokens as a reward. Or somebody votes for my video, and, once again, I get those tokens. As far as I understand, it's another attempt to create an alternative scheme of monetization for content producers. I reviewed a similar startup literally a week ago. It was also a video hosting platform employing Patreon and Steemit approaches to encourage its participants and give them an illusory promise of possible monetary returns. Here is also the same idea - to use this circulation of tokens in order to make everybody feel that they are situated in the system with a constant and energetic flow of money.

The project is hoping to compete with YouTube somehow. I gave it some thought: what exact characteristics would make it possible. Actually, to think about it, there is some possibility hidden in what is not mentioned in the White Paper: Namely, the project is going to have a big deal of anarchy within it. While YouTube is closely moderated, cleaning videos violating copyrights, various violent and extremist videos, the X platform doesn't really have any means to do the same. And it might be the factor, helping this platform to become popular. Like, there is no professional personnel to check uploaded videos, and likely it won't be in the future. (At least the project's roadmap doesn't mention anything like that) So the task of reviewing content is completely delegated to volunteers, who are not responsible for the thoroughness of their work. And their only incentive is tokens they get from the system. So it naturally means that there is going to be the chaos and anarchy on the platform: pirated content, porn, extremist materials, and stuff like that.

If it were a normal IT project, such a situation would quickly lead to its ban, with its servers shut down and other repercussions. But this is where the things start to get interesting. The X project is a distributed platform. It means it's not hosted on a limited number of servers; it can be spread throughout hundreds of thousands of computers, including workstations of private persons, who decided to participate in the IPFS network. The core of the system - with all the information about users, monetary exchanges, and uploaded videos - is based on the blockchain ledger replicated on multiple nodes of the blockchain network around the world. This all means that the system will be almost impossible to shut down, even if its creators decide to do that. One of the interesting features of blockchain projects is that after they are let out to the wild, it's impossible to stop them. They are like a jinn released from the bottle. Due to how blockchain is organized, it's impossible to remove any information from it, except, probably, by destroying and shutting down the whole database. In turn, it's impossible to shut down this database because following the principles of its architecture it's distributed throughout an innumerable number of computers all around the world. And it doesn't have a central point - a control center through which the whole system could be switched off. It's similar to torrents. Torrents are hard to block because of all individual computers comprising the system; the elimination of any of them won't do the system any harm. Like, trying to do something against a huge swarm of locusts.

So, Ok, probably the best way to perceive this startup is as an anarchic alternative to highly censored YouTube. Maybe it won't be this particular project succeeding in creating this thing, but the idea, in general, seems like something that would inevitably materialize. Although, there are already platforms based on torrent like architectures, plus services and applications that use the torrent ecosystem as a basis for video streaming services. But here there's also an element of cute blockchain micro-economy thrown into the mix. So to sum things up: We have a video hosting service, based on a distributed file system, giving all its participants immediate monetary incentives. The main slogan of the platform can be "It's independent and totally free." Like, it's not controlled by anybody and, in fact, cannot be controlled by anybody. Ok, probably it's the key point, from which it would be convenient to start.


So, it goes like this: Anybody who watches videos gets tokens. Anybody whose videos are watched gets token as well. I fail to understand how all this fits the scheme of the normal monetary exchange, but, nonetheless. Probably, each time those tokens are just produced out of the thin air. In any case, the thing is, it gives everybody an illusion of monetary gains, which can stimulate users' activity and participation. Ok, adding videos to playlists cost tokens, so there is at least some balance. I think this illusion of possible real profits can give this project a boost, similarly to how it is happening on Steemit. There is that feeling of money floating around and stuff. Which is fundamentally different from YouTube. On YouTube, there is no spirit of monetary returns until you sign up for the AdSense program. And after you do, you learn a harsh reality that views and likes don't equal money. Watching videos by itself is not a thing that can be converted into profits. The profits come from the associated things like ads, and here's a problem: Ads on YouTube don't really fit the context of this process of watching videos. For example, it's different with AdWords. When I search for something on Google it's likely that this something might have some relation to some products I'd like to buy. So if I see some positions marked AdWords (namely ads) among my search results, it looks natural. And, in this case, showing ads fits the context of my activity and seems relevant, so there is a high chance that I'll click on those ads. It's different with YouTube because when I watch videos, I cannot be farther away from the idea of buying something. So I register any ads that appear during this process (of me watching videos) as a meaningless background noise. The point is, the popularity of videos and the number of views don't correlate with potential profits that can be extracted by placing ads on pages with those videos. Because I might like the video, and several million other people might like this video as well, but neither of them thinks about buying anything while watching it, and, therefore, they don't click the ads. So the popularity of the video does nothing to increase its potential of bringing money to its author.

Ok, the main point is, this approach to content monetization through ads is not the brightest idea. More like trying to make money selling clothes at the art exhibition. Writing previous articles, I learned about different principles that are cornerstones in such projects as Patreon. The main concept is: if I like a certain content or an author I'd likely be willing to either support this author through voluntary donation or the subscription to some premium content. There is no certainty yet, how workable this concept is, but right from the start, it makes much more sense than ads.

So, I guess, the main talking point here will be this comparison of the traditional ineffective model of monetizing through ads to the approach when viewers directly finance content they like on a voluntary basis. Considering also that any viewer on the platform can be at the same time content creator himself, it might serve as an additional incentive for platform users to materially encourage other users. Because they might expect reciprocity, like some of the authors they donated to (for example, on Steemit it's as simple as liking the post) will donate some of their money (tokens) by liking their own content in return. In the end, it doesn't seem like this system is going to bring everybody huge profits either, but it creates an illusion of a lively money flow, which is the whole point. This illusory possibility to get some profits will attract users to the platform and motivate them to be active: to post stuff, like stuff, create playlists, in other words, engage in any activity that's rewarded with tokens. There is another concept for it called "gamification." Like, if my activity on the platform leads to me accumulating something - even if it's some useless tokens generated by the system on demand - it still will make the whole process more interesting to me.

DApps Framework ICO

When you have a writing block write about your writing block.

So, well, it becomes a tradition with my reviews when on the one hand I understand what this is all about, this project or whatever. I also know what I need to write, but the flow of thoughts is bottled up by my misgivings about in what particular set of phrases I should shape it. So I let this stream of consciousness loose and describe what I see, using words and sentences that simply come to my mind first. It's an easier thing to do at this stage.

So what do we have? The project in question is related to the problem and the controversy of the Ethereum blockchain. The Ethereum was a spawning ground for various projects since it introduced the concept of storing pieces of code on the blockchain - so-called Smart Contracts. The invention of Smart Contracts, in turn, led to the inception of multiple distributed on-chain applications, including ubiquitous CryptoKitties. This is what is actually considered cool about this platform - an ability to host various IT ideas, related to many different fields. The controversy is mostly about how much of the code should be stored on the blockchain, and how much can be stored outside - on the servers that belong to the actual creator of the project. Like, with CryptoKitties people argue that this is not really a pure blockchain project because the significant part of its code is located outside the blockchain, on CryptoKitties' proprietary servers that theoretically can be shut down causing a tremendous butthurt among fans of virtual cats. Which wouldn't be the case if the whole code of the project was located on the blockchain because of its distributed architecture and its multiple nodes, supporting everything that's going on there.

But this is not really an option. With all due respect to Ethereum, there are things that cannot be done entirely on the blockchain. Like communication with external data sources or massive data storages of various graphics and multimedia. The blockchain is not really a solution for data storage of this kind. So this is what's going to be a prologue. An explanation of the concept of programming on Blockchain, which is the distinguishing feature of Ethereum, and its implications, including an abundance of various projects, startups, and stuff.

The second item of my structure is an explanation of a key problem that some project is striving to solve. The problem, in this case, is that Ethereum doesn't provide an interface with a high level of abstraction. To draw an analogy with the programming - when the databases are getting involved - it's a layer insulating me from internal mechanics of some particular database engine. I can switch from one database to another without thinking much about it. And not thinking at all about how this or that database works inside. Like, I use SQL, and it's a high level of abstraction; it's identical for any database. And thinking about databases on this level of abstraction makes them all essentially the same for me, be it MySQL, Oracle, Interbase, whatever. I'm not concerned with how they are organized and what's going on inside.

Which is not the case for the blockchain or, for that matter, various blockchains with different protocols and variations in architecture. A programmer writing code for the blockchain needs to understand their low-level mechanics and APIs, plus he is always writing for some specific blockchain, and those applications are not easily transportable to a different kind of blockchain. Which can be a real headache. Plus, there is no high-level abstraction interface that could serve as a link between on-chain and off-chain parts of the application. And, as we see, it's impossible to create a complex blockchain app entirely on-chain, so there has to be some external database, containing all that graphics, and multimedia, and stuff. So this is a description of the problem.

Here I also begin to wreck my brains, trying to figure out how to explain all this in a way that would be understandable for everybody. Because all this stuff with databases, interfaces, layers of abstraction might confuse a person unfamiliar with those concepts strictly related to the software development. But anyway.

So the project in question proposes a technical solution allowing programmers to work with blockchain on a higher level of abstraction, which sounds pretty legit. There are some weird concepts and confusing definitions in its White Paper, but, overall, the idea is pretty clear and simple for a programmer. Here we have a pile of code that would serve as an intermediary layer between the blockchain and the application, which would make the life of an app developer easier in a sense that he won't need to think much about the blockchain. The layer of intermediary protocols would take care of those technical details allowing the developer to perceive the blockchain with a high level of abstraction.

Sort:  

Helpful information thank you

My pleasure )

Coin Marketplace

STEEM 0.30
TRX 0.12
JST 0.033
BTC 63475.87
ETH 3121.13
USDT 1.00
SBD 3.87