ສິ່ງທີ່ຄວນຮູ້ກ່ອນທີ່ຈະເປັນ web 3 developer
Tags: blockchain, programming, beginners, web3
Published: 2023-03-15 08:46:15

ເຊື່ອວ່າຄົນທີ່ເຂົ້າມາອ່ານບົດຄວາມນີ້ຕ້ອງເຄີຍໄດ້ຍິນຄຳວ່າ web 3.0 ມາແລ້ວທຸກຄົນ,​ ແຕ່ເຄີຍສົງໄສບໍ່ວ່າ web 3.0 ໃນເນື້ອຫາສາລະ ແລະ ຄຸນສົມບັດຂອງມັນຄອບຄຸມຮອດໄສແນ່?, ຄວາມສາມາດຂອງ web 3.0 ຕ່າງຈາກ web 2.0 ຫຼື web 1.0 ແນວໃດ?, ວິທີການພັດທະນາ web 3.0 ເຮັດແນວໃດ? ຫຼື ລວມໄປເຖິງການທີ່ຈະກ້າວໄປເປັນ web 3 developer ຕ້ອງຮູ້ຫຍັງ ແລະ ຮຽນຫຍັງແນ່?. ເຊິ່ງໃນບົດຄວາມຊຸດນີ້ເຮົາຈະຄ່ອຍໆແກະລາຍລະອຽດຂອງ web3 ອອກມາເບິ່ງນຳກັນ, ຖ້າພ້ອມແລ້ວໄປກັນເລີຍ🧑🏻‍💻🧑🏻‍💻🧑🏻‍💻

## web 3.0 ແມ່ນຫຍັງ? - ແນວຄິດພື້ນຖານ
ໂດຍພຶ້ນຖານແລ້ວ, web 3.0 ຖືວ່າເປັນ big deal ສຳລັບທຸກໆຄົນເລີຍແຫຼະ ເນື່ອງຈາກວ່າມັນມີສັກກະຍະພາບພຽງພໍໃນການປ່ຽນແປງໂລກທັງໃບເລີຍກໍ່ວ່າໄດ້(ໂມ້ບໍ່ວ່ະ 5555). ຖ້າເຮົາສັງເກດເບິ່ງເທຣນຊ່ວງຫຼັງໆນີ້ຮູ້ສຶກວ່າມີຂ່າວກ່ຽວກັບເລື່ອງຂອງ web3(web 3.0) ຢູ່ຫຼາຍສົມຄວນ, ຫຼາຍໆແຫຼ່ງຂ່າວກໍ່ບອກວ່າມັນເປັນແນວຄິດແຫ່ງອານາຄົດພຸ້ນລ່ະ(ມັນຄືເປັນຕາສຶກສາແທ້ລ່ະ) ຖ້າເຮົາເລີ່ມສຶກສາຕັ້ງແຕ່ມື້ນີ້ຖາມວ່າຕົກເທຣນບໍ່? ຖ້າເຮົາເບິ່ງຕາມເທຣນຂອງທົ່ວໂລກບອກໄດ້ເລີຍວ່າກຳລັງເໝາະ(ແຕ່ໜ້າວຽກຢູ່ບ້ານເຮົາກໍ່ຕ້ອງເບິ່ງຕົວຈິງອີກຕື່ມ - ສຶກສາໄວ້ກໍ່ບໍ່ເສຍຫາຍ). ຫຼາຍຄົນກໍ່ສຶກສາໄປຈົນຮອດສາມາດສ້າງ blockchain project ເປັນຂອງຕົວເອງແລ້ວສາມາດປ່ຽນຕຳແໜ່ງວຽກ ແລະ ເພີ່ມຜົນຕອບແທນຂອງຕົວເອງໄດ້ຫຼາຍເລີຍ(ແຕ່ບໍ່ແມ່ນຜູ້ຂຽນເດີ ຮະຮະຮ່າາາ).

ໃນ web 2.0 ຂໍ້ມູນທຸກຢ່າງແມ່ນຖືກຈັດເກັບຢູ່ສູນກາງ ແລະ ຂໍ້ມູນເຫຼົ່ານັ້ນກໍ່ຖືກຄວບຄຸມໂດຍບັນດາບໍລິສັດ big tech ທັງຫຼາຍທີ່ໃຫ້ບໍລິການໃນການແລກປ່ຽນຂໍ້ມູນສ່ວນບຸກຄົນ(ຂໍ້ມູນຂອງຜູ້ໃຊ້). ສ່ວນຢູ່ໃນ decentralized web(web ທີ່ໄຮ້ສູນກາງ)ຈະບໍ່ຂຶ້ນກັບບຸກຄົນໃດໜຶ່ງ, ບໍລິສັດ/ອົງກອນຕ່າງໆສາມາດແປຮູບ data ຫຼື information ກ່ຽວກັບໃຜ ຫຼື ສິ່ງໃດໆກໍ່ໄດ້ ແລະ ຂໍ້ມູນທຸກຢ່າງຈະເປັນ public ໝາຍຄວາມວ່າຈະບໍ່ມີບຸກຄົນໃດໜຶ່ງມີສິດຄວບຄຸມຂໍ້ມູນທັງໝົດ ທຸກຄົນສາມາດນຳໃຊ້ຂໍ້ມູນຕ່າງໆທີ່ຢູ່ເທິງໄດ້. web3 ກໍ່ສາມາດເວົ້າໄດ້ວ່າມັນເປັນ decentralized web ໄດ້ເຊັ່ນກັນ, ມັນເປັນເຟດ(phase)ທີ 3 ຂອງ internet ແລະ ມັນຖືກສ້າງຂຶ້ນມາບົນພື້ນຖານຂອງ peer-to-peer network ຂອງເຄືອຂ່າຍຄອມພິວເຕີທີ່ແຕ່ລະເຄື່ອງຈະບໍ່ມີເຄື່ອງໃດທີ່ເປັນຕົວກາງ.

> ໃນນິຍາມຂອງ web3 ແມ່ນມັນຈະມີອີກຫຼາຍຄຸນສົມບັດ, ແຕ່ສະຫຼຸບໃຫ້ສັ້ນທີ່ສຸດເພື່ອໃຫ້ເຂົ້າໃຈງ່າຍຂຶ້ນ.

## ຢາກເປັນ web3 developer ຕ້ອງມີສະກິວຫຍັງແດ່?
ການທີ່ເຮົາຈະອັບສະກິວໂຕເອງໄປເປັນ web3 developer ເຕັມຕົວມັນກໍ່ອາດຈະໃຊ້ເວລາພໍສົມຄວນ, ແຕ່ຖ້າເຮົາມີການວາງແຜນຢ່າງຈິງຈັງໃນການສຶກສາ ຜູ້ຂຽນເຊື່ອວ່າທຸກຄົນສາມາດເປັນ web3 developer ໄດ້. ເຮົາມາເບິ່ງກັນວ່າບັນດາ skills ຕ່າງໆທີ່ເຮົາຄວນສຶກສາມີຫຍັງແດ່? ອ່ານຕໍ່ດ້ານລຸ່ມໄດ້ເລີຍ.

### Web 2.0 skills
ຢ່າຟ້າວຫ້າວໃສ່ web3 ຖ້າການເປັນ web2 developer ຍັງບໍ່ແຂງແຮງເທື່ອ, ເລື່ອງນີ້ມັນບໍ່ຕະລົກເລີຍຖ້າຫາກຄວາມຮູ້ພື້ນຖານດ້ານ web2 ຂອງເຮົາຍັງບໍ່ແໜ້ນພໍ ແລ້ວເຮົາພັດຢາກຈະຂ້າມຂັ້ນໄປເລີ່ມສຶກສາພວກ web3 stack ເລີຍ ການເຮັດແບບນີ້ຂ້ອນຂ້າງມີຄວາມສ່ຽງຫຼາຍດ້ານ, ເຊິ່ງມັນອາດຈະສົ່ງຜົນຕໍ່ການພັດທະນາຂອງເຮົາ ແລະ ລວມໄປເຖິງບັນດາ code ທີ່ເຮົາຂຽນອີກ. ສະນັ້ນ ການທີ່ຈະກ້າວໄປຫາ web3 ຄວນເຂົ້າໃຈຂະບວນການພັດທະນາ web2 ໃຫ້ເລິກພໍສົມຄວນ - ຖ້າຖາມວ່າໄປສຶກສາ web3 ເລີຍຜິດບໍ່? ຫຼື ລົງມີຂຽນ smart contact ເຮັດ blockchain project ຜິດບໍ່? ຄຳຕອບມັນກໍ່ບໍ່ຜິດດອກຖ້າຫາກເຮັດອອກມາແລ້ວມັນດີ ແລະ ຄຳວ່າດີໃນທີ່ນີ້ຄືຕ້ອງວັດຜົນໄດ້ໃນດ້ານຕ່າງໆອີກເຊັ່ນ:​ ຄວາມປອດໄພ, ປະສົບການການໃຊ້ງານຂອງ users, performance ຂອງ app, ແຜນໃນການ scale app ແລະ ຍັງອີກຫຼາຍໆຂໍ້ທີ່ເຮົາຕ້ອງໄດ້ຄຳນຶງເຖິງກ່ອນການພັດທະນາ.

ໂດຍປົກກະຕິ, ເຮົາຈະບໍ່ສາມາດກາຍເປັນ master web3 ໄດ້ເລີຍຖ້າຫາກບໍ່ມີ background ຈາກ web2 ທີ່ດີພໍຕົວ. ດັ່ງນັ້ນ ກ່ອນເຮົາຈະສຶກສາດຳດິ່ງເລິກລົງສູ່ຫຼຸມຂອງ web3 stack ມັນກໍ່ລ້ວນແລ້ວແຕ່ຕ້ອງມີພື້ນຖານທີ່ດີຈາກ web2 ທັງນັ້ນ.

ຖ້າເຮົາມີສະກິວພື້ນຖານໃນການພັດທະນາ web2 ເຊັ່ນ: ReactJS, VueJS, AngularJS ຫຼື ອື່ນໆທີ່ກ່ຽວຂ້ອງມັນກໍ່ຈະເປັນຕົວຊ່ວຍຊັ້ນດີໃນການທີ່ຈະອັບສະກິວໄປເປັນ web3 developer ຍ້ອນວ່າບັນດາ decentralized applications ມີ standard ມາຈາກ Vanilla Javascript ຫຼື Javascript Front-end Frameworks.

### Blockchain Fundamentals
ຢາກເປັນ web3 developer ຕ້ອງຮູ້ ແລະ ເຂົ້າໃຈກ່ຽວກັບ Blockchain ຢ່າງຫຼີກລ່ຽງບໍ່ໄດ້, ຖ້າຖາມວ່າຕ້ອງຮູ້ເລິກສ່ຳໃດ? - ກໍ່ຄວນຮູ້ ແລະ ເຂົ້າໃຈໃນລະດັບທີ່ວ່າ:​ ສາມາດອະທິບາຍໄດ້ວ່າ blockchain ແມ່ນຫຍັງ?, ມັນເຮັດວຽກຈັ່ງໃດ?, ເປັນຫຍັງເຮົາຈຶ່ງໃຊ້ມັນ?.

**Blockchain ແມ່ນຫຍັງ?**
ໃນທີ່ນີ້ຈະຂໍອະທິບາຍວ່າ blockchain ເປັນ ເຄື່ອຂ່າຍ(network)ຂອງຄອມພິວເຕີທີ່ມີການແບ່ງປັນຂໍ້ມູນ ຫຼື ໃຊ້ຂໍ້ມູນຮ່ວມກັນ ແລະ ເຊື່ອມຕໍ່ກັນໃນລັກສະນະທີ່ການປ່ຽນເປັນຂໍ້ມູນເປັນໄປໄດ້ຍາກ ຫຼື ອາດເວົ້າໄດ້ວ່າມັນແທບຈະເປັນໄປບໍ່ໄດ້ເລີຍທີ່ຈະເຈາະ ຫຼື ໂກງໃນລະບົບ. ມັນເປັນລະບົບທີ່ໄຮ້ສູນກາງ, ມີການກະຈາຍອຳນາດ ແລະ ມີການບັນທຶກທຸກທຸລະກຳທີ່ເກີດຂຶ້ນເອີ້ນວ່າ blocks(ໃຊ້ໃນການບັນທຶກທຸລະກຳທີ່ເກີດຂຶ້ນຢູ່ເທິງເຄືອຂ່າຍຄອມພິວເຕີ).

ອ່ານມາຮອດດບ່ອນນີ້ເຊື່ອວ່າທຸກຄົນຈະເຂົ້າໃຈກ່ຽວກັບ blockchain technology ໃນບໍລິບົດອື່ນໆນອກເໜືອຈາກເລື່ອງຂອງ cryptocurrencies. ມັນຖືກນຳໃຊ້ໃນອີກຫຼາຍໆດ້ານເຊັ່ນ: decentralized finance(De-Fi), NFTs, Gaming, Metaverse, supply chain tracking ແລະ ອື່ນໆ. ນອກຈາກນີ້ເຮົາກໍ່ຕ້ອງຄົ້ນຄວ້າເບິ່ງອີກຕື່ມວ່າ: blockchain ແມ່ນຫຍັງ?(ໂດຍນິຍາມ), ມັນເຮັດວຽກຈັ່ງໃດ?, ເຮົາຈະນຳໃຊ້ ຫຼື ໂຕ້ຕອບກັບ blockchain ໄດ້ແນວໃດ? ແລະ ວິທີການທີ່ຈະ integrated web applications ກັບ blockchain technology ເຮັດແນວໃດ?.

ສຳລັບຜູ້ທີ່ກຳລັງມີໄຟ ແລະ ສົນໃຈກ່ຽວກັບ blockchain ກໍ່ອາດຈະເລີ່ມຈາກສຶກສາ Ethereum blockchain ເພາະວ່າມັນເປັນ network ທີ່ນິຍົມຫຼາຍ, ຄົ້ນຫາຂໍ້ມູນຂ້ອນຂ້າງງ່າຍ ມັນຈຶ່ງເປັນປະໂຫຍດຫຼາຍໃນການຊ່ວຍໃຫ້ເຮົາເລີ່ມຕົ້ນສຶກສາໃນເລື່ອງຂອງ blockchain.

> ຖ້າຍັງຄິດພາບບໍ່ອອກໃຫ້ລອງຄິດວ່າ blockchain ປຽບເໝືອນຖານຂໍ້ມູນທີ່ບັນທືກບັນດາຂໍ້ມູນທຸລະກຳທີ່ເກີດຂຶ້ນຢູ່ເທິງ blockchain.

### Smart Contracts
smart contracts ເປັນ software(ຊຸດຄຳສັ່ງ)ທີ່ຖືກຈັດເກັບໄວ້ຢູ່ໃນບັນດາ blockchain-based platform, ເຊິ່ງມີຈຸດປະສົງເພື່ອດຳເນີນການ, ຄວບຄຸມ ຫຼື ບັນທຶກເອກະສານຕາມເຫດການ ແລະ actions ທີ່ກ່ຽວຂ້ອງຢ່າງອັດຕະໂນມັດພາຍໃຕ້ເງື່ອນໄຂ ແລະ ຂໍ້ຕົກລົງຕ່າງໆທີ່ກຳນົດໄວ້. ໃນການໃຊ້ smart contracts ເຮົາສາມາດນຳໃຊ້ບັນດາຊຸດຄຳສັ່ງສະເພາະຂອງ blockchain ໃນການດຳເນີນການໄດ້.

ແລະເຊັ່ນດຽວກັບສິ່ງອື່ນໆທີ່ຣັນຢູ່ເທິງ blockchain, ເຮົາບໍ່ສາມາດແກ້ໄຂ ຫຼື ປ່ຽນແປງ code ຂອງ smart contracts ໄດ້ບໍ່ວ່າຈະກໍລະນີໃດໆກໍ່ຕາມ. ອີງຕາມຂໍ້ກຳນົດຂອງຝັ່ງ technical ທີ່ລະບຸວ່າມັນຕ້ອງ immutability(ບໍ່ສາມາດປ່ຽນແປງໄດ້). Smart contracts ສາມາດນຳໃຊ້ເຮັດໄດ້ຫຼາຍຢ່າງແຕ່ທີ່ເຫັນໃຊ້ກັນຢ່າງແພ່ຫຼາຍກໍ່ຈະມີ: ສ້າງ Cryptocurrency, mint NFTs, ໃຊ້ຈັດການ backend ຂອງ decentralized application ເຫຼົ່ານີ້ເປັນຕົ້ນ.

ເມື່ອຮູ້ແລ້ວວ່າ smart contracts ມີຄວາມສຳຄັນສ່ຳໃດໃນ blockchain, ຂັ້ນຕອນຕໍ່ໄປກໍ່ຄົງຈະແມ່ນການທີ່ຕ້ອງຮຽນຮູ້ວິທີພັດທະນາມັນແມ່ນບໍ່ລ່ະ?. ສະນັ້ນ ໃນການຂຽນ smart contracts ໃຫ້ໄປຣັນຢູ່ເທິງ blockchain ເຮົາອາດຈະຕ້ອງມີຄວາມຮູ້ເລື່ອງຂອງພາສາໂປຣແກຣມທີ່ຊື່ວ່າ Solidity,​ ແນ່ນອນວ່າມັນບໍ່ໄດ້ມີພຽງພາສາດຽວທີ່ສາມາດໃຊ້ພັດທະນາ ແຕ່ Solidity ຖືວ່າເປັນພາສາທີ່ໄດ້ຮັບຄວາມນິຍົມຫຼາຍ ແລະ ມີຂໍ້ມູນທີ່ຂຽນກ່ຽວກັບການຂຽນພາສານີ້ອອກມາຫຼາຍ, ເຊິ່ງມັນເປັນຜົນດີຕໍ່ກັບຜູ້ທີ່ກຳລັງສຶກສາຢູ່.

Solidity ເປັນ object-oriented programming language ທີ່ໃຊ້ສຳລັບການຂຽນ smart contracts, ມັນຖືກໃຊ້ໃນການ implement smart contract ເທິງບັນດາ blockchain platform ຕ່າງໆ ແລະ ມັນຍັງເປັນພາສາໃໝ່ທີ່ໃຊ້ໃນ Ethereum blockchain ທີ່ລວມເອົາຂໍ້ດີຈາກຫຼາຍໆພາສາ, ເຊິ່ງຜູ້ທີ່ສ້າງພາສາ Solidity ໄດ້ຮັບແຮງບັນດານໃຈມາຈາກ JavaScript, Java, C++, Rust ແລະ ອີກຫຼາຍໆພາສາ ຈຶ່ງເຮັດໃຫ້ Solidity ມີຄວາມຫຼາກຫຼາຍ ແລະ ໃຊ້ງານງ່າຍ.

ເມື່ອເຮົາເລີ່ມຂຽນ Solidity ເຮົາຈະສັງເກດເຫັນຄວາມໃກ້ຄຽງກັບພາສາໂປຣແກຣມອື່ນໆ ຕົວຢ່າງດ້ານລຸ່ມ:

``` solidity
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.19;

import "hardhat/console.sol";

contract FirstContract {
    constructor() {
        console.log("Hey, This is Spata!!!");
    }
        function get() public view returns (string memory) {
                return 'I love her, but she got sugar daddy';
        }
}
```
ອີກຂໍ້ດີຢ່າງໜຶ່ງຂອງການຮຽນພາສາ Solidity ກໍ່ຄືເລື່ອງຂອງຕະຫຼາດແຮງງານດ້ານນີ້(ຕ່າງປະເທດ),​ ຫຼາຍໆບໍລິສັດທີ່ມີໂປຣເຈັກ Blockchain ຂອງຕົວເອງກໍ່ຕ້ອງການນັກພັດທະນາດ້ານນີ້ຫຼາຍຂຶ້ນ.

ໃນຂະບວນການພັດທະນາ smart contract ຖ້າເຮົາ deploy ໄປແລ້ວແນ່ນອນວ່າມັນບໍ່ສາມາດແກ້ໄຂ code ໄດ້,​ ດັ່ງນັ້ນການພັດທະນາຕ້ອງໄດ້ມີເຄື່ອງມືຫຼາຍໆຢ່າງທີ່ໃຊ້ໃນແຕ່ລະດ້ານເຊັ່ນ:
- ບັນດາ Solidity Frameworks ອາດຈະເລືອກ Hardhat ຫຼື Truffle.
- ເຄື່ອງມືໃນການທົດສອບ(Testing)ມີ Mocha, Chai ຫຼື Ganache.
- ເຄື່ອງມືໃນການພັດທະນາ(Development)ມີ Infura ຫຼື Alchemy.
*ລືມໄປອີກຢ່າງໜຶ່ງ,​ມີເວັບແອັບທີ່ຊື່ວ່າ Remix IDE ທີ່ໃຊ້ໃນການພັດທະນາ, ການ Deploy ແລະ ການຈັດການກັບ smart contract ສຳລັບ Ethereum blockchain.

### Decentralized Applications (dApps)
ຫຼັງຈາກທີ່ເຮົາຂຽນ ແລະ deploy smart contract ຂອງເຮົາສຳເລັດແລ້ວ,​ ເຮົາກໍ່ຄວນມີສ່ວນທີ່ໃຫ້ User ເຂົ້າໄປໃຊ້ງານ ແລະ ບ່ອນນີ້ເອງທີ່ເຮົາຈະໄດ້ໃຊ້ສະກິວ web 2.0 ຂອງເຮົາ. ການທີ່ຈະສ້າງ dApp(ເປັນໄດ້ທັງ web ແລະ app) ຂຶ້ນມາໃຫ້ມະປະສິດທິພາບທີ່ບໍ່ເຮັດໃຫ້ User ນັ່ງງົງໃນ App ຂອງເຮົາ, ເຮົາກໍ່ຕ້ອງຮູ້ຈັກວິທີຂຽນ Web ຫຼື App ທີ່ດີໃນລະດັບໜຶ່ງເລີຍ ແລະ ສິ່ງທີ່ຕ່າງໄປຈາກການຂຽນ web/app ແບບເດີມກໍ່ຈະມີຢູ່ 2 ສ່ວນຫຼັກໆຄື: ເຮັດໃຫ້ web/app ຂອງເຮົາວຽກຮ່ວມກັບ blockchain ແລະ ສ່ວນທີ່ເຮັດວຽກຮ່ວມກັບ wallet. ໃນການທີ່ຈະ integrate blockchain ກັບ web/app ເຮົາຕ້ອງໄດ້ອາໄສ Javascript library ເຊັ່ນ: Web3.js ແລະ Ethers.js ສ່ວນຈະເລືອກໃຊ້ອັນໃດນັ້ນກໍ່ຕ້ອງໄປພິຈາລະນາກັນເອົາເອງ.

**Wallet ແມ່ນຫຍັງ?**
ເຊື່ອວ່າຫຼາຍຄົນກໍ່ຄົງຈະເຄີຍໃຊ້ wallet ຜ່ານມາແລ້ວ ແລະ ແນ່ນອນວ່າການທີ່ຈະ interact ກັບ blockchain ເຮົາຕ້ອງມີ wallet ຢ່າງໜ້ອຍ 1 wallet. ເຊິ່ງ wallet ຈະຊ່ວຍໃນການແລກປ່ຽນສິນຊັບດິຈິຕອນໄດ້ຢ່າງວ່ອງໄວ ແລະ ແຕ່ລະ transactions ທີ່ເກີດຂຶ້ນຈະມີການເຂົ້າລະຫັດ ເຮັດໃຫ້ມີຄວາມປອດໄພຂ້ອນຂ້າງສູງ. wallet ເຊິ່ງສາມາດເຂົ້າເຖິງໄດ້ຈາກທັງມືຖື ແລະ ເວັບຈະຮັກສາຂໍ້ມູນປະຈຳຕົວ ແລະ ຄວາມເປັນສ່ວນຕົວຂອງຜູ້ໃຊ້,​ ນອກຈາກນີ້ຍັງມີຄຸນສົມບັດທີ່ຈຳເປັນໃນການແລກປ່ຽນ ແລະ ການໂອນລະຫວ່າງແຕ່ລະຝ່າຍທີ່ມີຄວາມປອດໄພ. ຄ້າຍກັບຄວາມສາມາດໃນການສົ່ງ/ຮັບເງິນຂອງ Paypal ຫຼື CashApp ຕ່າງແຕ່ຈະເປັນການສົ່ງ/ຮັບ cryptocurrency ແທນ.

ຖ້າຈະໃຫ້ນັບ wallet ໃນທ້ອງຕະຫຼາດທຸກມື້ນີ້ຖືວ່າມີຫຼາຍເຈົ້າພໍສົມຄວນ, ສ່ວນຕົວແມ່ນແນະນຳໃຫ້ລອງຮຽນ integrate dApp ຂອງເຮົາກັບ Metamask ກ່ອນ, ເນື່ອງຈາກຄົນໃຊ້ຫຼາຍ ແລະ ຫາຂໍ້ມູນງ່າຍ. ອີກອັນໜຶ່ງທີ່ແນະນຳກໍ່ຈະເປັນ WalletConnect ໂຕນີ້ຈະຊ່ວຍໃຫ້ເຮົາສາມາດ connect ກັບ wallet ອື່ນໆໄດ້.
**ຮຽນນຳໃຊ້ web3.js ຫຼື ethers.js connect ກັບ dApp ຂອງເຮົາ**
ເປັນຫຍັງຄືແນະນຳແຕ່ 2 ໂຕນີ້ເປັນຫຼັກ, ເຫດຜົນກໍ່ບໍ່ມີຫຍັງຫຼາຍເກີນກວ່າການທີ່ມັນເປັນ Javascript library ທີ່ຍອດຮິດນີ້ລ່ະ ສ່ວນອີກເຫດຜົນກໍ່ຄືເຮົາຫາຂໍ້ມູນກ່ຽວກັບການໃຊ້ງານ 2 lib ນີ້ງ່າຍ.

- web3.js - ເປັນ collection ຂອງ libraries ທີ່ອະນຸຍາດໃຫ້ເຮົາສາມາດ connect ກັບ local ຫຼື remote Ethereum node ຜ່ານ HTTP, WebSocket ແລະ communication protocols ອື່ນໆໂດຍກົງຈາກ JavaScript Based
front-end.
- ethers.js - ເປັນ lightweight javascript library ທີ່ເປັນອີກທາງເລືອກໜຶ່ງນອກຈາກ web3.js ໃນການ build javascript frontend ແລະ interact ກັບ Ethereum blockchain.

### Resource ທີ່ໜ້າສົນໃຈໃນການສຶກສາດ້ານນີ້

- [Blockchain Technology Explained](https://www.youtube.com/watch?v=qOVAbKKSH10)
- [Web3 University](https://www.web3.university/)
- [IBM Blog](https://www.ibm.com/blogs/blockchain/category/blockchain-development/)
- [Alchemy Blog](https://www.alchemy.com/blog)
- [Enterprise Blockchains Fundamentals](https://academy.101blockchains.com/courses/enterprise-blockchains-fundamentals)
- [Cryptozombies](https://cryptozombies.io/)
- [Chainshot Courses](https://www.chainshot.com/courses)
- [useWeb3.xyz](https://www.useweb3.xyz/)
- [EatTheBlocks](https://www.youtube.com/c/EatTheBlocks/videos)
- [Buildspace](https://buildspace.so/)
- [LearnWeb3 dAO](https://learnweb3.io/)

*ເຮົາມີ discord community ນ້ອຍໆທີ່ເຮົາຈະລົມກັນເລື່ອງສັບເພເຫລະກັນຢູ່ໃນນັ້ນ, ຖ້າໃຜສົນໃຈເຂົ້າໄປເຮັດໃຫ້ community ເຮົາຄຶກຄື້ນ ແລະ ອຶກກະທຶກຕຶກໂຄມໄປນຳກັນ ລິ້ງດ້ານລຸ່ມ:
**[LocalCode](https://discord.gg/4j9vmYFX)**

> ref: [The Roadmap: Breaking into Web 3.0](https://dev.to/abubakardev/the-roadmap-breaking-into-web-30-el3)