loading...

I am full-time blockchain developer for 6+ months, AMA!

Lukas Lukac on November 15, 2018

Hey there! There is so much confusion and hype in the blockchain space. So many different protocols/ideas/test-networks/implementations/tokens/coi... [Read Full]
markdown guide
 

What's your stand on the environmental impact of blockchain-related technologies?

 

Nice, very eco aware question Grzegorz. I like the idea behind Bitcoin but I hate its implementation. It's slow, expensive and centralized. The same must apply for every other PoW blockchain due to their nature, incentives.

The security is based on power and block rewards which always leads to centralization and waste. Everybody can do what they want but I only support XRP as a payment option and this is one of the reasons why.

elec

 

What is preserving bitcoin's value? At some point if Bitcoin-maximalist enthusiasm fades, the whole currency goes to zero, right?

In terms of proof of work, did bitcoin folks see some of these problems coming and decide it was worth it despite, or were the problems bigger than the community anticipated?

Well, I will just state my opinion as there is no 1 truth to this question.

Just releasing my frustration

Honestly, first, it makes me so sad everybody knows only about bitcoin. BTC is really not that useful but I am sure that will change when the hype drops and people will study the problem/industry more. I am not referring to you specifically now, you have a very valid question but to all the media. I just wanted to point that out, DO YOUR RESEARCH everybody who will ever read this comment :)

What preserves BTC value

BTC started as a payment system but due to the complexity of PoW (proof of work), it became a "store of value", as it's too expensive to move it haha. Ah, I am so biased lol. But is true, a transaction (change in a variable state) costs several $. So you can't really send 10$ to a friend because it will cost you 20$, depending on the network stress.

Will it drop to 0? IDK, maybe it will go to "the moon", I only pay attention to protocols that produce direct value, HAVE A DAY-TO-DAY UTILITY such as Ethereum or XRP.

Why PoW

I am not sure if they see it coming or not, I think developers being developers, may seen it coming, but was too interesting to develop it anyway. Or, the same may have happened like with energy sources. As humans, we started with non-renewable sources because we comprehended them first, now we are transitioning to renewable sources like solar energy as we matured. You must start somewhere I guess.

In the recent months, there is a lot of migration towards PoA (proof of authority) or for example PoS (proof of stake) consensus. In my company, we are using PoA since beginning of 2017 and the difference in speed is noticeable but you must have proper tools in place to don't betray the original, main purpose of blockchain, decentralization.

Can you explain proof of authority?

Sure, long story short, you setup a bunch of trusted Validator Nodes (authorities) with the sole purpose of receive incoming transactions from computers of the network and put them to a block. Which is different from PoW, because not everybody can become a Validator.

Example, Ripple UNL. There are validator nodes from community, from banks, from company itself, from exchanges etc. And they actually do not have any incentive ("block reward") to be a validator. They do it just to contribute to the P2P world. Which I find very pure and how it should be. You could also make PoA Validator nodes to receive rewards to cover their energy costs, also fine IMO as powerful servers are expensive.

Ethereum is also developing several PoA test networks. Such as Rinkeby which one I explain in my course and teach students how can they connect to this test network.

 

Do you think the power consumption will still be huge after ETH implementing POS ?

Hey Deepu, thx for question. I think it will get to the point it will not be such a problem but different moral questions will be challenged.

 

@Grzegorz Ziemoński Not all Blockchain technologies are consuming vast amounts of resources to run their network.

Proof Of Work blockchains like bitcoin certainly do waste a lot of energy but because of this there has been a turn away from it to other blockchain technologies like Proof Of Stake (POS), Delegated POS and many others that are 100% more energy efficient.

 

Thanks for sharing, Lukas! I have only rudimentary knowledge about blockchains. Therefore, please bear with me if my questions are not exact enough.

  1. I have learned that blocks store hashes including hashes of the previous blocks. I noticed they used the hashing algorithm SHA-2. Do all blockchains use a SHA or do some use other algorithms? And is developing these algorithms part of the job of a blockchain developer?

  2. Do I get it right when I say that mining is finding out the data that produces above hashes? I saw that people try to guess n leading zeroes of the hash. Why? Is it just proof that the mining algorithm worked?

  3. What distinguishes different blockchains from another? Where is Ethereum different from Bitcoin for example?

  4. How does one dive into blockchain development? What was your first project and where to find projects to contribute?

 

Hey Victor, don't worry, you should see my questions when I started. One of the first was, since when running a DDOS attack to solve a somebody's puzzle on purpose is a way to program? :D

  1. Each blockchain can choose its own algorithm. It doesn't really matter as long as it's efficient and secure enough. Less secure means faster so it's a line you have to find. E.g, Ethereum is using Keccak256 (SHA-3) hash function.

  2. Yes more or less correct. The n number of zeroes is used to scale the difficulty of the process.

  3. They are all kind of similar actually. They are just designed for different purposes. E.g Bitcoin was suppose to replace money, (failed in my tech opinion), and Ethereum is a giant finite-state machine (EVM - ethereum virtual machine). Check the wiki page if you are curious about the state machines.

  4. I always start learning anything by doing. First I take a course to suck all the knowledge as soon as possible so I don't have to go through the hard, slow path and then I create a fictional project for myself and I try to implement it. By the end of the project I have a good overview of the scope and decide if I want to do it for money on daily basis or keep it as a hobby. Did the same with photography last week :)

As resources go, take my course of course haha, it will teach you everything Ethereum related from scratch with 51% discount (get the 51% blockchain joke?) until end of November :)

 

The link to your course is no longer working :(

Ah sorry for that. I am doing major re-organizations, domain changes, etc atm and will update all links etc at the end. Write me a DM on LinkedIn and we figure the access Inigo: linkedin.com/in/llukac/

 

Hi Lukas, I've got a ton of questions. :-)

  • Have you developed an application for a consortium of equal members?
  • How was that organized?
  • Who was the product owner?
  • How was licensing solved?
  • Is the solution in production?
  • On a private or a public chain?
  • Do you think private chains are here to stay or will all private ones migrate to public chains?
 

Hey Thorsten!

I will answer all your questions but can you explain bit more what do you mean with your base question, "Have you developed an application for a consortium of equal member" ?

Thx!

 

Sure. I think of the different approaches how non-public blockchain projects are being started and managed. R3 and IBM (for example) start a lot of projects with their customers, but keep the leadership, so they have a traditional project structure with central councils that make the decisions.

This is in contrast to the distributed technological nature of blockchains, where every participant has equal rights. Of course we see developers forming groups as well as miners forming pools, so not every aspect of public blockchains shows a pure form of equality. But we also see (the return of) DAOs with democratic structures implemented in their own code, so that the governance of a blockchain project can resemble the structure of the blockchain.

Back to my question: Have you seen companies forming a consortium in order to develop a blockchain based system with democratic governance / without having a leading company?

Oh I see, well asked, brilliant question.

I think 2 things will happen, and several other sub versions.

  1. Companies, especially the big, already established one are/will be forming alliances and use blockchain not for its decentralization but for the "shared immutable state", so they don't have to trust themselves and have a perfect audit system. I think of blockchain as a complicated MySQL replication where you can't delete or update rows. That's it. And this can be very useful in many scenarios with a leading centralized company in front.

  2. New companies, projects will/and do use blockchain and the form of a "decentralized governance" as a pitch, looking for an edge, an opportunity on a market. I call them experimental bunnies. Like DAO organizations. What I like about this style, is mainly the concept of "delegated vote" or the approach of "weighted vote". In BI departments, business intelligence working with data, the concept of assigning a "weight", "importance" to something is really interesting. I would love to see whole countries actually having democracy based on staking or weighted votes because 1 vote of a doctor shouldn't equal to 1 vote of an engineer or any other profession in different contexts. People shouldn't vote for things they don't understand IMO. That's why I don't argue about politics, neither with my doctor. I argue with my dev colleagues haha. And if this would be successfully implemented, Americans wouldn't have this shitty president.

I think both approaches are valid and there won't be 1 good silver bullet.

Also, back to your question, I don't know a company who did it successfully yet, BUT my company will have it's own PoA production blockchain next year (for now is a test-network), and at the beginning we will make it more "centralized on decisions" to speed up the development and updates but also enough decentralized to keep users and data safe by having alliances with other companies and public communities so they still are the custodians of their data.

Funny enough, final goal would be to find a way how to "check mate?" ourselves out of the equation and that's the complicated part. It basically means, if you do your job properly, in a decentralized manner, you end up being obsolete but that's how it should be. So I think companies will follow such a path only if they find another area producing enough revenue to keep innovating and producing value for users. If that makes sense.

Let's stay in touch we can discuss this more as time progresses! Add me on LI.

 

I have quite a few questions, don't feel obliged to answer them all :-)

  1. Which — if any — frameworks are you using for Solidity development (Truffle, OpenZeppelin etc)?

  2. Are you using any static analysis tools like Mythril?

  3. How are you connecting your DAPPS to non-blockchain applications (JSON RPC, Infura, custom HTTP API etc)?

  4. Given the EVMs aspiration to be a distributed world computer, the block gas limit is an elegant solution for the halting problem. Do you see any inherent value in ETH beyond that?

  5. How do you feel about Casper/PoS in general?

 

Hey Michael, good to virtually see you again :)

1) Yes, I use Truffle + Ganache + Rinkey, Remix, some contracts from OpenZeppelin + I also teach my full development setup in the course

2) Nope, my company has a several private independent auditing companies doing audits

3) All DApps are connected locally to our SDK handled, blockchain node and if not we have a gateway exposing blockchain calls via an Go API over HTTPS

4) Nice question, I do to lock value in smart contract between 2 parties meet all the smart requirements of an exchange

5) It's an improvement to PoW but not gonna work imo. because PoA is superior, IMO

Let me know if you have any more questions! :)

 

What certifications do you have or are you seeking to get?

 

Good question. In the same way you can be a software engineer without a certificate, you can definitely contribute to blockchain development without being a cryptography expert.

I try to read as many books as possible on the topic and I took some courses especially about cyber-security in general and I think that's sufficient to get started and produce good results.

I do have 7 years of experience as a software developer so that helps a lot obviously. Generally speaking, solid understanding of distributed systems is a big plus.

If you want to of course develop a protocol completely from scratch a PhD in mathematics is super important.

 

Hi @enchanterio ,

Thank's for this ama !

Do you have books to advise ?

Hey @yafkari , there are few on Amazon but I didn't really have time myself. I would advise to first try the ecosystem and the books will naturally come to you based on your goals. Subscribe to my GophersLand newsletter I am planning to do these kinds of recommendations and tips as well. Thx for your interest!

 

Can a blockchain exist without a currency to back it ?

 

Yes absolutely but not having it introduces some limitations. Blockchain without currency is kind of like a big complicated MySQL immutable replication. Still very useful though for some use-cases.

 
 

Pardon my ignorance. You might have to explain a lot...

  • Are non-Libra bitcoins related to perhaps stock IPO, or maybe real money?
  • Is cryptocurrency related to ransomware?
  • When will I need to build my own blockchain? Is it related to distributed system? Or is it just security?
 

Hi Lukas, thanks for doing this!
You say you focus on Ethereum, so basically you create smart contracts? And that's a fulltime position?

 

You welcome Bart! I am happy to help and is a chance to promote my course as well so I shoot 2 birds with one stone haha.

I focus on Ethereum ecosystem. Smart contracts represent only the "database/business logic" side of things. I also write a lot of Go code to connect all the pieces as we are developing an SDK for developers to use and simplify the integration of what we offer to their businesses/projects. And working in a startup, I also spend time on marketing, frontend, devops, cleaning, everything haha. But mainly Go + Contracts yes :)

 

I am working on Electricity energy monitoring using blockchain technology as a Msc research work. I wish to know many views of blockchain experts if this is really an applicable technology in solving this problem?

 

Hello Lukas,

I'm an economist from Colombia with minimum to none programming skills. I've been in the crypto space since 2015, now i see a need blockchain is solving in some countries about tokenized Real Estate. If you where in my position, ¿How would you do to create and launch a digital decentralized platform without a programmer partner?

Thanks for your advice,

 

Hey Juan, interesting question, sadly I don't think you can solve it without a technical partner. This space is extremely technical at the moment due to lack of friendly abstraction like exist for creating websites these days. Maybe u will find a way, definitely don't give up, it will just take more effort.

 

Do you get paid in crypto or fiat? And if you are getting paid in fiat, what would convince you to leave fiat behind altogether and accept only crypto currency?

 

I am employed by a real company therefore fiat.

I am personally a bit of a weird blockchain developer. I don't incline to the anarchist point of view where fiat is evil. Regulations are suppose to protect people, it just happened to be corrupted by politicians but going pure crypto won't change that. People will corrupt crypto as well. They did already. That's why all the hype. You must focus on education, health and prosperity.

Once regulations are well established and I can seamlessly spend crypto, then I would be more than happy being paid in that time, best technically designed crypto :)

 

where can i find the details of tools that will be useful for building Block chain? Currently i have been working on my Real Estate project and planning to integrate it with Block Chain, i like to know the tools that will be useful for property Digitize, Investor e-KYC, digital signature and other security purpose. And what are the other things that i have to take care before jumping in.
Kindly suggest me the best way to do R&D . . .

 
  1. What kind of blockchain applications do you like the most?

  2. Is there a particular Ethereum use case you are exited about?

 

There are so many. I like the idea of being able to trade games items as a typical geek.

For more important topics, I hope we can remove the insane fee and margins from real estate and hotel industry.

There are some nice projects out there like Loom network or LockTrip NOT AN INVESTMENT ADVICE.

 
 

How many projects you've worked on have actually benefited from trustlessness?

 

That's a very, very good question Derek. First of all, I don't trust humans, I think we are too emotional and buggy so the idea of a computer ensuring the, in-advanced decided logic, will get executed, seems appealing to me haha. I like us tho because we are funny and we think we are intelligent while the truth is, we are just unaware of all the things we don't realize but I am getting too philosophical.

IMO, The concept of trustlessness doesn't exist. The goal is to eliminate the amount of trust you have to "endure". There is always somebody who you have to trust, at least partially for now.

 

To fully answer your question BTW, I worked on 3 blockchain projects, all of them benefited from trustlessness but because all projects are young, even Ethereum protocol itself, they are still quite centralized therefore not very trustlessness, but at least trustworthy enough, for now! Till the development level kicks in, like at the beginning of Linux in 90ties.

 

Why do so many people get into blockchain out of FOMO? What in your mind makes this technology so uniquely capable of causing market hysteria?

 

Hey Ben, excellent question. I think due to the same reason people are using kubernetes for their 10 req/min applications. They follow other people, forgetting the context. The motivation I experienced was much simpler, MONEY :)

I think doing anything due to FOMO is bad for you because when things get hard, you won't have the motivation and passion to overcome the obstacles.

I personally like the technical challenge of not having a MySQL DB or one server you fully control, as in blockchain as you know, doing a release is not that simple because part of the network could refuse it and form a fork/split or become incompatible by accident.

 

A few months later I am still getting traction here. Let me know if you have any additional questions even though the AMA is over! :)

code of conduct - report abuse