วันอังคาร, กรกฎาคม 17

ป้ายกำกับ: Smart Contract

การนำเทคโนโลยีบล็อกเชนมาประยุกต์ใช้ในอุตสาหกรรมอาหาร

การนำเทคโนโลยีบล็อกเชนมาประยุกต์ใช้ในอุตสาหกรรมอาหาร

Idea
สวัสดีค่ะท่านผู้อ่าน คราวนี้มาในเรื่องอาหารกันบ้าง ต่อไปนี้พฤติกรรมพ่อบ้านแม่บ้านไปจ่ายตลาดจะเปลี่ยนไปด้วยเทคโนโลยีบล็อกเชนนี้ ตามรายงานขององค์การอนามัยโลก โรคที่เกิดจากอาหารหรืออาหารเป็นพิษนั้นสามารถเกิดขึ้นได้ทั่วโลก โดยถูกรักษาตัวอยู่ในโรงพยาบาลกว่า 700 ล้านรายและเสียชีวิตกว่า 400,000 รายต่อปี หรือพูดอีกอย่างคือในแต่ละปีนั้นมีประชากรเฉลี่ย 1 ใน 10 จะป่วยจากโรคที่เกิดจากอาหาร นอกจากนี้การขาดกระบวนการความปลอดภัยด้านอาหารยังส่งผลให้มีคนเสียชีวิตประมาณ 400,000 ราย ส่วนใหญ่เป็นเด็กที่มีอายุต่ำกว่า 5 ปี ส่วนหนึ่งมาจากการที่อาจมีสารปนเปื้อนอยู่ในอาหารสด ซึ่งเราไม่สามารถรู้ได้เลยว่าอาหารสดที่นำมาขายตามร้านหรือซุปเปอร์มาร์เก็ตนั้นมาจากที่ใด ดังนั้นจึงจำเป็นที่จะต้องหาแหล่งที่มาของอาหารเหล่านี้เพื่อที่จะได้นำไปปรับปรุงและแก้ไขให้ดียิ่งขึ้น บริษัท TE-FOOD เป็นบริษัทตัวอย่างรูปแบบใหม่ที่ใ
Sweden นำโฉนดที่ดินลง Blockchain

Sweden นำโฉนดที่ดินลง Blockchain

Idea
เป็นปัญหามากสำหรับภาคเอกชนธุรกิจและภาครัฐบาลที่จะจัดการข้อมูลเกี่ยวกับที่ดินต่างๆ ในประเทศ จึงเป็นที่มาของความร่วมมือระหว่าง Swedish National Land Survey และ Blockchain Startup ชื่อว่า ChromaWay โดยเป้าหมายในการใช้งานคือให้บริษัท องค์กร หน่วยงานต่างๆที่เกี่ยวข้องกับเรื่องการดูแลจัดการที่ดิน ทำข้อมูลขึ้นระบบเดียวกันทั้งหมดโดยใช้ Blockchain เป็นตัวกลางในการเก็บข้อมูล โดยมีกำหนดการเริ่มต้นทดลองใช้งานในเดือน July 2017 นี้ ประโยชน์ที่ได้รับนั้นมากมายหลายรูปแบบ ในปัจจุบันการประเมินที่ดิน มีความซ้ำซ้อนมากทั้งในแง่สถาบันการเงินที่ประเมินราคาและจัดเก็บข้อมูลและเมื่อที่ดินแห่งนั้นๆจะต้องเปลี่ยนมือ ทางสถาบันการเงินก็ต้องส่งทีมงานประเมินราคาที่ดินไปประเมินราคาซ้ำอีกครั้งเป็นเช่นนี้ไปเรื่อยๆ จึงทำให้เกิดค่าใช้จ่ายตามมามหาศาล การนำข้อมูลมาใส่ไว้ใน Blockchain กลางนี้จะทำให้ทุกฝ่ายสามารถเข้าถ
ว่าด้วยเรื่องการเขียนโค้ด Smart Contract ภาค 4 – Deploy Smart Contract

ว่าด้วยเรื่องการเขียนโค้ด Smart Contract ภาค 4 – Deploy Smart Contract

Technical
ว่าด้วยเรื่องการเขียนโค้ด Smart Contract ภาค 4 จากคราวที่แล้ว เราเขียน Contract พร้อม function Hello world กันแล้วนั้น คราวนี้เรามาลอง Deploy ขึ้น network กันดูนะครับ แต่ก่อนอื่นเลยจะขอเล่าให้ฟังก่อนว่าในการติดต่อกับ Ethereum network นั้น มันมี Tool ที่ใช้คุยได้อยู่มากมาย แต่ที่นิยม ๆ จะมีอยู่ 3 ชื่อก็คือ web3.js, go-ethereum (หรือ Geth) และ Mist ซึ่งทั้ง 3 ตัวที่ผมเอ่ยมานั้น เอามาใช้ deploy ได้หมดเลย แต่ความยากง่ายจะต่างกันดังนี้ครับ ฉะนั้น ในบทความนี้ผมขออนุญาตแนะนำการ deploy โดยใช้ tool ที่ชื่อว่า Mist นะครับ ขอแนะนำสั้น ๆ เกี่ยวกับ Mist ให้ฟังก่อนนะครับ เจ้าตัว Mist เนี่ยมันเป็น application ที่จริงๆแล้วเหมือน web browser เลยสามารถใช้ท่องเว็บก็ได้ แถมถ้าเว็บนั้น ๆ มีการเรียก library web3.js Mist ก็จะรู้จักทันทีเพราะมัน include อยู่ในตัวเองด้วย แถมเจ้า Mist นี่เราสามารถใช้เป็นกร
ว่าด้วยเรื่องการเขียนโค้ด Smart Contract ภาค 3 – Hello world

ว่าด้วยเรื่องการเขียนโค้ด Smart Contract ภาค 3 – Hello world

Technical
ว่าด้วยเรื่องการเขียนโค้ด Smart Contract ภาค 3 สวัสดีปีใหม่ครับ มาแล้วครับ กลับมาและ ห่างหายไปนานนิดนึง เนื่องจากปีใหม่ไปเที่ยวต่างจังหวัดมาเลยไม่ได้มีเวลามาเขียนต่อเลย แหะๆ แล้วทุกท่านเป็นอย่างไรบ้างครับไปเที่ยวไหนมาหรือเปล่า ^^ ส่วนเนื้อหาในบทนี้ จากบทก่อน ๆ ที่เรารู้เรื่องพื้นฐานของการจะเขียน Smart Contract แล้วนั้น เรามาลงมือเขียน code กันเลย โดย code ที่เราจะเขียนกันนั้น จะเริ่มด้วย function พื้นฐานสามัญประจำโลกเลย นั่นก็คืออ function HelloWorld ที่แสน classic ที่ผมคิดว่าท่านที่เรียนการ Programming มาก็ต้องรู้จักเป็นอย่างดี (ฮา) ซึ่งหน้าตาของ code เป็นดังนี้   โดยจาก source code ที่ผมแปะไว้ข้างบนนั้น จะขออธิบายเป็นส่วน ๆ ดังนี้ครับ   อันนี้เป็นตัวที่กำหนด version ของ compiler เพื่อให้ compiler รู้ว่ามันควรทำงานกับ source code นี้มั๊ย เผื่อในอนาคต co
ว่าด้วยเรื่องการเขียนโค้ด Smart Contract ภาค 2 – IDE ที่จะใช้

ว่าด้วยเรื่องการเขียนโค้ด Smart Contract ภาค 2 – IDE ที่จะใช้

Technical
ว่าด้วยเรื่องการเขียนโค้ด Smart Contract ภาค 2 มาต่อกันเรื่องการเขียน code เพื่อสร้าง Smart Contract กันนะครับ โดยจากคราวที่แล้ว ผมได้เล่าถึงพวกประเภทของตัวแปรที่ใช้ได้ในภาษา solidity มาและ ถัดมาก็จะเริ่มมาลองเขียนกันเลยยย ก่อนอื่นเลยเวลาเราจะเขียน code ก็จำเป็นต้องมี editor เพื่อเขียนถูกมั๊ยครับ ซึ่งสำหรับภาษานี้จริง ๆ แล้วก็เขียนใน nodepad เลยก็ได้ แต่ถ้าต้องการสีสันหน่อยไฮไลท์ syntax หน่อย มันก็มีคนทำ editor ขึ้นมาเหมือนกันซึ่งมีเยอะแยะเลยทั้งแบบ online และ offline โดยตัว offline นั้นคือ Mix IDE ซึ่งตัวนี้ผมก็เขียนลองเขียน มันจะมี emulator จำลอง mode ขึ้นมาให้เล่นได้ใน IDE ด้วย ก็แลสะดวกดี แต่ที่ผมเจอมาคือโปรแกรมมันค้างบ่อยมาก เลยไม่น่าใช้เลย (ปัจจุบัน คนสร้างไม่ได้ดูแลต่อแล้ว) (รูปจาก http://blog.carl.pro/2016/06/building-an-ethereum-environment-with-docker/)  
ว่าด้วยเรื่องการเขียนโค้ด Smart Contract ภาค 1 – ชนิดของตัวแปร

ว่าด้วยเรื่องการเขียนโค้ด Smart Contract ภาค 1 – ชนิดของตัวแปร

Technical
ว่าด้วยเรื่องการเขียนโค้ด Smart Contract ภาค 1 จากภาคที่แล้วที่ผมได้เกริ่นเรื่องของ Smart Contract ไว้ ซึ่งก็คงเข้าใจกันบ้างไม่มากก็น้อยนะครับ กลับมาคราวนี้เลยจะเป็นภาคต่อของเรื่อง Smart Contract ซึ่งเราจะลง code กันและ ก่อนอื่นเลยจะต้องบอกก่อนว่า ถ้าจะเขียน Smart Contract เนี่ยควรจะมีพื้นฐานของภาษา Java Script อยู่บ้าง จะทำให้พอเข้าใจอะไร ๆ  ได้ง่ายขึ้น เพราะ Syntax ของภาษาที่ใช้เขียน code ของ Smart Contract หรือที่เรียกว่า Solidity นั้น มีพื้นฐานมาจาก Java Script นั้นเอง (แต่ก็ไม่ได้เหมือน 100% นะครับ) ก่อนอื่นเลยสิ่งแรกที่ควรรู้จัก ก็คือ Data type ที่มีให้เราใช้งานได้ในภาษานี้นะครับ ซึ่งถึงแม้ผมจะบอกว่าเหมือน Java Script ก็จริง แต่จริง ๆ ภาษานี้ก็ต้องประกาศ Data type ให้กับตัวแปรที่เราสร้างขึ้น (ถึงแม้จะใช้คำสั่ง var ได้เหมือนในภาษา Java Script ก็เถอะ แต่ที่ถูกที่ควร ควรใช้ Dat
พูดถึง Ethereum ก็ตามมาด้วย Smart Contract แล้ว Smart Contract คืออะไรกัน ??

พูดถึง Ethereum ก็ตามมาด้วย Smart Contract แล้ว Smart Contract คืออะไรกัน ??

Technical
... บนโลก blockchain นั้นโดยทั่วไป คนจะนึกถึงเรื่องรับและส่งเงินกันเช่น Bitcoin Litecoin หรือ whatever coin (ซึ่งมีเยอะมาก ก.ไก่ 20 ตัว ลองดูที่ https://en.wikipedia.org/wiki/Digital_currency ได้ครับ) แต่จริงๆแล้ว มี blockchain อยู่หนึ่งประเภทที่สามารถทำได้มากกว่าแค่เรื่องรับและส่งเงิน (จริงๆ พื้นฐานของมันก็ยังสามารถรับและส่งเงินได้) นั่นคือ Ethereum อย่างที่บอกในตอนต้นว่า Ethereum เป็น blockchain ที่มากกว่าแค่รับและส่งเงินกัน สิ่งนั้นก็คือ Ethereum สามารถทำให้ blockchain network สามารถประมวลผลอะไรก็ได้ ซึ่งคำว่าประมวลผลอะไรก็ได้นั้น หมายถึงว่า ผู้ใช้งานสามารถเขียน code เพื่อไปฝากไว้ที่ Ethereum network และเมื่อมีใครคนอื่น (หรือเราเองก็ได้) เรียกใช้งาน code นี้ ตัวคนที่อุทิศตัวเป็น miner ก็จะหยิบเอา code ของเรามาประมวลผลให้ซึ่งคนที่เรียกใช้งานนั้น นอกจะเรียกเฉยๆได้แล้ว ยังสามารถส่ง p