Công nghệ thay đổi rất nhiều thứ, kể cả nhận thức của chúng ta, công nghệ mới thay thế công nghệ cũ. Blockchain cũng vậy, tuy không phải là công nghệ mới nhưng nó là sự kế thừa và đặt nền tảng để ta hiện thực những ý tưởng mà trước đây là không thể. Smart contracts một khái niệm không còn mới mẽ nhưng với Ethereum lần đầu tiên nó được hiện thực hóa nó bằng cách ứng dụng công nghệ blockchain.
Nếu các chính phủ chấp nhận giá trị pháp lý của các smart contracts nó sẽ mở ra những triển vọng rất lớn và sự chuyển dịch trong khối hành chính sự nghiệp cũng như khối doanh nghiệp. Smart contracts và digital signature hoàn toàn có thể thay thế hoàn toàn các hợp đồng dân sự và điều này sẽ tiết kiệm hằng tấn tiền để in các hợp đồng, xét xử, kiện cáo…
Và điều này cũng có nghĩa lập trình smart contracts sẽ trở thành một kỹ năng cần thiết trong cuộc sống. Thế giới đầy những điều không tưởng xẩy ra, và nếu không chuẩn bị ta có thể trở thành những kẻ thất bại của xã hội.
Những platform nào thực thi smart contracts?
Ethereum không phải là platform duy nhất cho phép thực hiện smart contracts, có rất nhiều và hằng hà sa số các platform hướng tới việc lập trình smart contract và xây dựng các decentralized applications. Tiêu biểu là:
LSK: https://docs.lisk.io/docs/the-lisk-protocol
RSK: http://www.rsk.co/
Tại sao Ethereum và Solidity?
Ethereum và solidity là platform và ngôn ngữ phổ biến và dễ học nhất, bạn sẽ không mất quá nhiều công sức để xây dựng tất cả mọi thứ.
Những bước làm quen với smart contracts
Nắm vững những hạn chế của Ethereum
- Thời gian confirm một transaction (10–13s)
- Gas limit của một block (4,000,000–6,000,000)
- Gas estimate cho mỗi transaction (nếu không đủ gas thì toàn bộ estimate gas của bạn sẽ bị consume hết và EVM throw INVAILD out of gas)
- Cách điều chỉnh gas price
- Các BIP liên quan tới HD wallet (BIP32), và mnemonic words (BIP39)
- Hiểu biết về platform là lợi thế chính yếu
Sử dụng thành thạo NodeJS & GNU Toolchain
- Rất nhiều thư viện như EthereumJS được viết trên JavaScript. Bạn sẽ không mất công làm lại cái bánh xe
- Sử dụng các GNU toolchain cũng cần thiết, nó sẽ giúp các bạn khi biên dịch cách packages được thuận lợi
Sử dụng thành thạo command line
- Bạn phải làm việc với command line khá nhiều nếu không muốn nói là 24/7
- Nếu bạn dùng GNU/Linux hoặc macOS thì thuận tiện hơn rất nhiều so với Windows.
- Dùng được truffle thì điều kiện tiên quyết là rành command line
Học solidity
- Tài liệu chính thống ở đây https://solidity.readthedocs.io
- Solidity quá dễ để học, nhưng quá khó để giỏi.
Dislaimer: Đây là thông tin cung cấp dưới dạng blog cá nhân, không phải thông tin tổng hợp hay lời khuyên đầu tư. Chúng tôi không chịu trách nhiệm về các quyết định đầu tư của bạn.
- Lập trình smart contracts: Phần 2 Viết smart contracts đầu tiên
- Lập trình Smart contracts Phần 3: Xây dựng một dAPP
- Lập trình smart contracts: Phần 4 Bài toán thực tế
- Lập trình smart contract: Phần 5 — Viết test case cho smart contracts