โลก Blockchain คุยกันด้วยภาษาอะไรกันนะ? แล้วถ้าอยากเริ่มศึกษาควรเริ่มต้นอย่างไร? | Techsauce /* */ /* */

โลก Blockchain คุยกันด้วยภาษาอะไรกันนะ? แล้วถ้าอยากเริ่มศึกษาควรเริ่มต้นอย่างไร?

บทความโดย : นายวราพล รุณภัย, Blockchain Developer บริษัท โทเคน เอกซ์ จำกัด

ภาษา Blockchainสวัสดีครับ วันนี้เรามาคุยเรื่องภาษาที่ใช้ในการ Coding บนโลกบล็อกเชน รวมถึงถ้าหากผู้อ่านอยากจะศึกษาภาษาดังกล่าว คุณควรจะเริ่มต้นที่ตรงไหนก่อนดี แต่ก่อนที่จะเข้าเนื้อหาหลักของบทความนี้ ผู้เขียนขออนุญาตแนะนำตัวคร่าว ๆ ก่อนครับ

ผู้เขียนได้มีโอกาสได้เข้ามาเป็น Blockchain Engineer ให้กับบริษัท Token X ผู้ให้บริการเกี่ยวกับธุรกิจโทเคนดิจิทัลแบบครบวงจร และผู้เชี่ยวชาญด้านเทคโนโลยี Blockchain เมื่อปี 2021 โดยก่อนหน้าที่จะมาอยู่กับทาง Token X ผู้เขียนเคยเป็นนักพัฒนาอยู่ในแวดวงธุรกิจการเงินการธนาคาร และในบริษัทโทรคมนาคมมาก่อน 

ในส่วนของบล็อกเชนนั้นผู้เขียนมีโอกาสได้ศึกษาอย่างจริงจังตั้งแต่ช่วงปี 2017 โดยช่วงนั้นตลาดคริปโตเป็นช่วงตลาดกระทิงที่เต็มไปด้วยโครงการ ICO และ โครงการที่เสนอตัวว่าเป็น Bitcoin Killer มากมาย แต่แน่นอนว่าเวลาแห่งความสุขมักอยู่กับเราได้ไม่นานนัก หลังจากนั้นตลาดก็ Crash จากตลาดกระทิงก็กลายเป็นตลาดหมี ทำให้มีคนออกจากโลกบล็อกเชนและสินทรัพย์ดิจิทัลนี้ไปมากมาย แต่ด้วยความศรัทธาในบล็อกเชน ทำให้ผู้เขียนไม่ได้ออกจากโลกใบนี้ไปเหมือนคนอื่น และได้ทำการศึกษาบล็อกเชนอย่างจริงจังมากยิ่งขึ้น ด้วยความที่เชื่อว่า บล็อกเชนเป็นกระดูกสันหลังของเหรียญคริปโตทุกตัว และมันจะต้องเป็นเทคโนโลยีแห่งอนาคตแน่นอน

Blockchain Programming Languages 

เรามาพูดถึงภาษา (Programming Language) ที่ใช้พัฒนาบล็อกเชน ในโลกนี้มีบล็อกเชนอยู่หลายตัว ซึ่งในการที่บล็อกเชนแต่ละตัวจะใช้ภาษาอะไรในการพัฒนานั้น ความจริงก็สุดแล้วแต่ทางผู้พัฒนาเลยว่าเค้าจะใช้ภาษาอะไรในการพัฒนา โดยผู้เขียนจะขอยกตัวอย่างมาให้ดูสัก 2-3 ตัวอย่าง

ทั้งนี้จะมีบล็อกเชนบางตัวที่สร้างขึ้นมาแล้วสามารถใช้ Ecosystem ของ Ethereum ได้ทั้งหมดเลย ยกตัวอย่างเช่น Binance Smart Chain (BSC) ซึ่งบล็อกเชนพวกนี้จะเป็นการ Fork Ethereum มาเลยตรง ๆ ก็เลยทำให้สามารถใช้ Golang เป็นภาษาในการพัฒนาได้เหมือนทางต้นฉบับ (Ethereum)

(Application) Smart Contract Programming Languages

มาพูดถึงในส่วนของ Smart Contract กันบ้าง ในโลกบล็อกเชนทุกวันนี้ผู้พัฒนาส่วนใหญ่จะเขียน Smart Contract กันเป็นหลัก มากกว่าที่จะไปเขียนที่ Core ของบล็อกเชนกันอยู่แล้ว โดย Applications ต่าง ๆ บนโลกของบล็อกเชนที่เราเห็น ๆ กัน ไม่ว่าจะเป็นการสร้างToken, NFT หรือกระทั่ง Platform DeFi นั้นล้วนมาจาก Smart Contract ทั้งสิ้น

แต่ว่าเราจะเลือกใช้ภาษาไหนดี?

คำตอบมันก็ต้องขึ้นอยู่กับว่าพอพัฒนาเสร็จแล้ว เราต้องการนำ Application ที่เราพัฒนา ไป Deploy บนบล็อกเชนตัวไหน โดยตอนนี้ก็มีภาษาที่เป็นที่นิยมอยู่ 2 ภาษาคือ

    1. Solidity

Blockchain ที่ใช้ เช่น Ethereum, Binance Smart Chain, Ethereum Classic, Tron

    2. Rust

Blockchain ที่ใช้ เช่น Near, Solana, Polkadot, Terra เป็นต้น

มาเป็น Ethereum Developer กันเถอะ! 

เนื่องจากว่า Ethereum เป็นบล็อกเชนที่ถูก Fork ออกไปมากที่สุด และมี Ecosystem ที่ใหญ่ที่สุดทำให้ผู้เขียนมองว่าการหยิบ Solidity ขึ้นมาหัดก่อนเป็นภาษาแรกเป็นเรื่องที่ดี โดยหลังจากที่เขียน Solidity คล่องแล้วก็ค่อยไปเริ่มหัดเขียนภาษาอื่น ก็ไม่ใช่เรื่องเสียหาย ทีนี้หากคุณสนใจ อยากเริ่มเรียนรู้และหัดเขียนภาษาที่ใช้คุยกันในโลกบล็อกเชน คุณควรจะทำอย่างไร? โดยสิ่งที่ต้องมีในการเริ่มต้นนอกจากใจที่เปิดกว้างและประสบการณ์ในการเขียนภาษาอื่นมาบ้างเล็กน้อยแล้ว ก็มีเพียงไม่กี่อย่าง เช่น คอมพิวเตอร์ อินเตอร์เน็ต และ “ภาษาอังกฤษ” 

ภาษาอังกฤษนั้น “จำเป็นมาก” ทำไมนะหรือ? เพราะว่าในการเป็นโปรแกรมเมอร์ คุณจะต้องเรียนรู้สิ่งใหม่และค้นคว้าด้วยตัวเองอยู่ตลอด และความรู้ใหม่ ๆ ที่ว่านั้น โดยมากมันจะมาเป็นภาษาอังกฤษ โดยที่หากคุณต้องรอความรู้เหล่านั้นถูกแปลเป็นภาษาไทย คุณจะไม่มีทางตามเทคโนโลยีทัน (และคนอื่น) ที่สำคัญคุณจะเสียค่า “ไม่รู้ภาษา” เป็นจำนวนมาก 

ผู้เขียนขอยกตัวอย่างคอร์สสอน Ethereum Developer ถ้าคุณอ่านและฟังภาษาอังกฤษรู้เรื่อง คุณสามารถหาเรียนวิชาดังกล่าวได้ฟรี ๆ หรือซื้อคอร์สบน Udemy ในราคาไม่ถึงพันบาท แต่ถ้าคุณไปหาคอร์สเดียวกันที่เป็นภาษาไทย คุณจะเจอในราคาหลัก “หมื่นบาท” แต่เนื้อหาที่ได้เป็นเนื้อหาเดียวกัน เห็นแล้วใช่ไหมหล่ะครับว่าค่า “ไม่รู้ภาษา” นั้น มันแพงจริง ๆ

แล้วทีนี้ จะเริ่มศึกษาจากที่ไหนก่อนดีนะ? ผู้เขียนจะขอแนะนำจากสิ่งที่ผู้เขียนเคยเรียนมานะครับ 

  • Blockchain101 - อธิบาย Blockchain : Link
  • Course - สอนเขียน Smart-Contract ด้วย Solidity โดยคอร์สนี้จะได้เขียน Smart-Contract แบบเน้น ๆ ในรูปแบบต่าง ๆ แต่ข้อเสียคือเนื้อหาด้าน Front-End น้อย : Link
  • Crypto Zombie - เขียนเกมจาก Smart-Contract : Link
  • Ethernaut – เรียนเกี่ยวกับ Security โดยที่ website นี้จะไม่สอนอะไรมากนัก แต่จะให้เราไปค้นหาข้อมูลมาแก้โจทย์เอาเองครับ : Link

พอเรียนหมดทั้งหมดนี้ตามที่ผู้เขียนได้แนะนำไปแล้ว ก็แนะนำให้ลองเขียนโปรเจคขึ้นมาเองสักหนึ่งงาน แล้วลอง Deploy บน Testnet ดูนะครับ จะลองสร้าง Platform Defi อย่าง Uniswap ก็ย่อมได้ ซึ่ง Code เค้ามีเป็นแบบ MIT อยู่แล้วด้วย แน่นอนว่า Solidity ก็เหมือน Code ภาษาอื่นๆครับ คือจะต้องใช้เวลากับมัน และเขียนเยอะๆถึงจะเก่งและเชี่ยวชาญ แต่สิ่งที่ต้องเรียนนั้นยังมีอีกเยอะนะครับ เช่น Security, Defi, Game ตรงนี้ต้องการความรู้นอกจาก Coding ด้วย ซึ่งเราจะต้องศึกษาเป็นจุดๆ ให้ลึกลงไปเรื่อย ๆ ครับ

สำหรับคนที่อยากลงลึกเป็น Defi Developer สามารถดู Roadmap ที่ทาง Cia Officer ทำไว้ได้ที่นี่ได้เลยครับ : Link

RELATED ARTICLE

Responsive image

เข้าใจเทคโนโลยีเบื้องหลังการทำ ‘Digital Transformation’ อย่างมีประสิทธิภาพ กับ Cloud Service และเทรนด์การทำงานในอนาคต กับ NTT

ก่อนจะทำ Digital Transformation องค์กรต้องเข้าใจเทคโนโลยีเบื้องหลังและตั้งโจทย์ให้ถูกต้อง บทความนี้จึงชวนอ่านเพื่อทำความเข้าใจเทคโนโลยี Digital Transformation และการใช้เทคโนโลยี Cl...

Responsive image

ตัวช่วยธุรกิจสู้ตลาดโลก ด้วยเทคโนโลยี AI และ Machine Learning

ICHI ผู้ให้ความรู้ด้าน Digital Solution ชวนคุณจำรัส สว่างสมุทร ผู้อำนวยการใหญ่สภาอุตสาหกรรมแห่งประเทศไทย (FTI) มาแบ่งปันความรู้ในประเด็นการปรับตัวธุรกิจเพื่อพร้อมสู้ในตลาดโลกด้วยเท...

Responsive image

พาส่อง Speakers ระดับโลกที่คุณจะได้พบในงาน Techsauce Global Summit 2022

Techsauce Global Summit 2022 พาทุกคนไปดูรายชื่อ speakers ระดับโลก เพื่อเข้ามาพูดคุยและแลกเปลี่ยนประสบการณ์ซึ่งกันและกัน...