Why it’s hard for a software engineer to create a good blockchain startup.

in #blockchain6 years ago

Blockchain, it’s not just a disruptive technology but a constructive technology.
It is delivering a new phenomenon and reshaping the way we conduct businesses and the way we deliver value. We are bullish on the tech but do notice that people are jumping into this technology by having plans on building their own Blockchain Applications without knowing the core value of the tech, and the limitations of the tech.

As we have been actively developing within the space, we have noticed that there are still some challenges that software engineers are facing when it comes to building a good startup or applications in the Blockchain Space.

I will say for some software companies, no matter how good we are at selling our software, comparably, it’s still a service based company because for software company, we can always begin with a dream or an idea, and to test the market until we need it. We can then code it up.

So, for example, AWS, they’ve got their technical writing at the beginning. AWS is successful because the market gave them validity before they built it.

A software company is much more “SOFT” when it comes to business. Because if we need to change anything, when we have the prototype, we can base on our original framework, delete the code and add up the new.

It sounds easy but it requires a lot of knowledge.

But with enough knowledge, you still don’t have the problem with “prototype’’, ‘’inventory” or even warehouse management, operation area control or financing control in your supply chain or logistic.

Yes, Blockchain has brought hard cost to the internet industry.These concepts are rather important in the blockchain space and unfortunately for some software companies, they are rather weak when it comes to this issue. The problem in blockchain is whatever you do on chain, no matter permission chain or public chain.Once you deploy your smart contract, it is irreversible. It becomes concrete and solid. Just like what we have to do in an engineering business, in a supply chain business.

For example, an hospital, they need to understand how much medication they need to put in the stock. Also they need to understand when to deliver and what lead time they may need to control.

This kind of nature makes blockchain company not organic enough for software companies.

To be much more clear on this topic, the reason why I say that the concept of engineering business is needed in the blockchain space is simple, we now have a “PRICE” to pay in order to make a change within our system. It is very difficult to migrate what you have deployed. So in the engineering business, when there’s any issue during the procedure, we have to sort it from analysing the entire process and the environment. Any change or amend happens to the procedure may cause a huge adjustment cost.

This is different from the software engineering perspective as the objects and components are much easier to be effectively oriented. But in Blockchain, any amend is costly, such as lead time, variety from the irreversible environment, dependency in consensus algorithm, etc. The entire system make software development is not as soft as it used to be.

Therefore, we must adopt some management system from running a engineering business.The whole development environment is now different. You’ll need to pay gas to deploy which is also a cost of its own, you can’t test your code as much as you want like before.The environmental limitations that the blockchain space has right now is never been dealt with by developers before.One simple change in your product may affect the effectiveness and the usability of your smart contract and may require you to redefine the whole system.

I know there’s a test-net environment ( Kovan ) which Ethereum has kindly provided to the developers, but still it is a limited and scarce resource. Developers now also need to consider and be worry of the fact that the whole testing environment may have a migration of their own. These concepts mentioned above are relatively weak in software company because the native is different and of course, there are lead time in traditional software as well, but that is just a matter of scalability and a few line of codes. In our space right now, this is very time-consuming, as every changes I make, even in a testing environment needs to wait for the respond from the blockchain itself.

So in this case, I don’t recommend most of the company or even some blockchain company to directly jump into all blockchain infrastructure, because there are some problems you have to solve in the beginning based on the whole infrastructure of the blockchain.

I would recommend really on doing what you’re really good at and to take in what other people have already finished, for example, modules and applications without bugs — bug-free!

Then you take it in, make it your own and adding in the elements on what you are good at.

Originally posted in Medium : https://medium.com/funderstoken-platform/why-its-hard-for-a-software-engineer-to-create-a-good-blockchain-startup-ef4646c1ba2f

Sort:  

Congratulations @darreng0531! You have received a personal award!

1 Year on Steemit
Click on the badge to view your Board of Honor.

Do not miss the last post from @steemitboard:
SteemitBoard World Cup Contest - Play-off for third result


Participate in the SteemitBoard World Cup Contest!
Collect World Cup badges and win free SBD
Support the Gold Sponsors of the contest: @good-karma and @lukestokes


Do you like SteemitBoard's project? Then Vote for its witness and get one more award!