Go Language

Tags:
Node Thumbnail

รายงานความนิยมภาษา TIOBE สรุปดัชนีเดือนตุลาคม พบว่าภาษาที่กลับมาได้รับความนิยมอย่างสูงตอนนี้กลับเป็นภาษา Go ที่ขึ้นมาจากอันดับ 65 ในปี 2015 มาเป็นอันดับ 16 ดัชนีความนิยมเพิ่มเป็น 1.809% เปลี่ยนแปลง +1.67%

ทาง TIOBE วิเคราะห์ว่าความนิยมของ Go มาจากความนิยม Docker ในช่วงหลัง ขณะที่ภาษาที่ได้รับความนิยมเพิ่มขึ้นคล้ายกันคือ Groovy มีคะแนนดัชนี TIOBE สูงขึ้นเรื่อยๆ มาตั้งแต่ปีที่แล้ว

ภาษา 5 อันดับแรกยังเป็น Java, C, C++, C#, และ Python ไม่เปลี่ยนแปลง แต่ Objective-C ที่เคยขึ้นสูงสุดถึง 12.875% เป็นอันดับ 3 ในปี 2014 และตกลงไปเรื่อยๆ ตอนนี้ก็กลับขึ้นมาใหม่อยู่ที่อันดับ 10

ที่มา - TIOBE

Tags:
Node Thumbnail

ทีมงานโอเพนซอร์สของไอบีเอ็มพอร์ตภาษา Go ของกูเกิลไปรันบน System z s390x พร้อมกับเปิดให้ดาวน์โหลดบน Github เคียงคู่กับโครงการอื่นๆ ที่ไอบีเอ็มพอร์ตไปยัง System z เช่น Cassandra, Spark, Mongo

ภาษา Go เปิดตัวในปี 2009 มีจุดเด่นที่วางกระบวนการทำงานขนานตั้งแต่ต้น กระบวนการสร้างเธรด (goroutine) และการสื่อสารระหว่างกันเป็นธรรมชาติของภาษาตั้งแต่ต้น และเป็นภาษาแห่งปีของดัชนี ITOBE จากการได้รับความนิยมเพิ่มขึ้นอย่างรวดเร็ว และตอนนี้คาดว่าจะเข้ามาอยู่ในทำเนียบภาษาที่ได้รับความนิยม 50 ภาษาแรกเร็วๆ นี้

Tags:
Topics: 

ข่าวสั้นครับ คุณ Russ Cox นักพัฒนาภาษา Go ได้ออกมาประกาศว่า Go 1.5 จะเป็นรุ่นสุดท้ายที่ใช้ชื่อนี้ สำหรับรุ่นถัดไปจะเปลี่ยนไปใช้ชื่อว่า Al (ตัวอักษร 2 ตัวแรกของบริษัท Alphabet) และนับรุ่นต่อเป็น Al 1.6 เลยครับ

ที่มา: Twitter

Tags:
Topics: 

ข่าวสั้นครับ คุณ Russ Cox นักพัฒนาภาษา Go ได้ออกมาประกาศว่า Go 1.5 จะเป็นรุ่นสุดท้ายที่ใช้ชื่อนี้ สำหรับรุ่นถัดไปจะเปลี่ยนไปใช้ชื่อว่า Al (ตัวอักษร 2 ตัวแรกของบริษัท Alphabet) และนับรุ่นต่อเป็น Al 1.6 เลยครับ

ที่มา: Twitter

Tags:
Topics: 

Go ออกรุ่น 1.5 เป็นรุ่นหลักที่แนะนำให้นักพัฒนาใช้งาน รุ่นนี้แก้ปัญหาที่นักพัฒนาเรียกร้องกันมานานคือ garbage collector (GC) หน่วงทำให้มีปัญหาเมื่อใช้งานที่จองหน่วยความจำปริมาณมากๆ

นอกจากการแก้ปัญหาหลักแล้ว ยังมีการปรับปรุงอื่นๆ เช่น

  • รองรับการตั้งจำนวนเธรดด้วยตัวแปร GOMAXPROCS
  • รองรับการคอมไพล์เป็น shared library
  • รองรับ ARM และ iOS ดีขึ้น

รายการปรับแต่งอื่นๆ อ่านได้ในเอกสาร Go 1.5

ที่มา - Go Blog

Tags:
Topics: 

หลังจากพ้นกำหนดการในการออกเวอร์ชันใหม่มากว่า 20 วัน ภาษา Go ก็ได้ฤกษ์ออกเวอร์ชัน 1.5 อย่างสมบูรณ์เสียที โดยในเวอร์ชันนี้ได้พัฒนาปรับปรุงขึ้นมาหลาย ๆ ส่วน อาทิเช่น

  • compiler และ runtime ที่เขียนด้วยภาษา Go ทั้งหมด (ข่าวเก่า)
  • Garbage Collector ทำงานแบบ Concurrent แล้ว
  • โปรแกรมภาษา Go จะถูกทำงานด้วยจำนวน core ของ CPU ทั้งหมดที่มี จากเดิมที่มีค่าเป็น 1 core ในเวอร์ชันก่อนหน้านี้
  • เพิ่มคำสั่งรองรับการทำ vendoring external dependencies ในระยะทดลอง

รายละเอียดอื่น ๆ สามารถติดตามได้จากที่มาของข่าว

Tags:
Node Thumbnail

แม้ว่าบริการของกูเกิลหลายบริการจะถูกบล็อคในจีนแต่ภาษา Go กลับได้รับความนิยมในจีนอย่างสูง ปริมาณการค้นหา golang บนกูเกิลมาจากในจีนมากที่สุดในโลก (ไม่รู้ว่าคนจีนเข้ากูเกิลได้อย่างไร?) เมื่อทางจีนจัดงาน GopherChina ทางทีมงาน Go ก็ส่ง Robert Griesemer ไปร่วมงานด้วย

Tags:

Parse ผู้ให้บริการ API สำหรับแอพพลิเคชั่นบนสมาร์ทโฟนพัฒนาบริการขึ้นมาจาก Ruby on Rails เป็นหลัก แต่เมื่อจำนวนเครื่องลูกข่ายที่ต้องให้บริการเพิ่มขึ้นอย่างรวดเร็วและโค้ดมีขนาดใหญ่ขึ้นเรื่อยๆ Ruby on Rails กลับแสดงปัญหา

เพียงแค่ปี 2012 ทาง Parse ต้องดูแลเซิร์ฟเวอร์ถึง 200 เครื่องบน AWS เป็น unicorn worker 24 โปรเซสต่อเครื่องให้บริการ 3000 ครั้งต่อวินาทีให้กับแอพพลิเคชั่น 60,000 แอพ ระยะเวลาการขึ้นระบบแต่ละรอบใช้เวลา 20 นาที

Tags:

คอมไพล์เลอร์ภาษา Go ก่อนหน้านี้พัฒนาด้วยภาษาซีมาโดยตลอด แต่เมื่อคืนที่ผ่านมา Russ Cox ทีมงานภาษา Go ก็ลบโค้ดเหล่านี้ออกจาก Git ใน master branch แล้ว

การที่ Go สามารถคอมไพล์ตัวเองได้ ทำให้ Go กลายเป็นภาษาในกลุ่ม self-hosting อีกหนึ่งตัว

ตอนนี้คอมไพล์เลอร์ที่เขียนด้วยภาษา Go ยังช้ากว่าที่เขียนด้วยซีอยู่เล็กน้อย แต่ Cox ระบุว่าน่าจะแก้ปัญหาได้ภายในสัปดาห์หน้า

ที่มา - @_rsc

Tags:
Topics: 

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

รางวัลแบ่งออกเป็นสองรางวัลคือ รางวัลคัดเลือกโดยผู้ออกคำถาม และรางวัลจากเสียงโหวต ทั้งสองรางวัลคล้ายๆ กันโดยมีสปอนเซอร์หลายรายร่วมให้รางวัล เช่น หนังสือจาก O'Reilly, บัตรของขวัญอเมซอนจาก InfluxDB, กระเป๋า Go จาก Apcera

การส่งคำตอบต้องสร้างบัญชีจาก GitHub แล้ว fork repository สำหรับส่งคำตอบออกไป จากนั้นจึงส่งคำตอบด้วย pull request

Tags:
Node Thumbnail

Amazon Web Services ประกาศเตรียมรองรับภาษา Go อย่างเป็นทางการ หลังจากตอนนี้ชุด SDK รองรับภาษา Java, C#, Ruby, Python, JavaScript, PHP, และ Objective C

ชุด SDK ใช้ชื่อว่า aws-go เป็นการพอร์ตมาจากโครงการเดียวกันของ Stripe โดยช่วงแรกจะเป็นโครงการทดลอง ทางอเมซอนจะเข้ามาเพิ่มชุดทดสอบ และเชิญชวนให้ชุมชนมาช่วยกันส่งความเห็น

โครงการอยู่ใน GitHub สามารถไปดาวน์โหลดมาเล่นกันได้

ที่มา - AWS Blog

Tags:
Node Thumbnail

บริการคลาวด์ของ DigitalOcean มีความพิเศษอย่างหนึ่งคือลูกค้าสามารถเข้าถึงหน้าจอคอนโซลได้จากเว็บ ทำให้จัดการเครื่องได้แม้จะเผลอคอนฟิกจนเน็ตเวิร์คไม่ทำงานก็ตาม ทาง Digital Ocean ประกาศว่าเพิ่งเขียนโค้ดในส่วนนี้เสียใหม่โดยใช้ภาษา Go

ประโยชน์ของการใช้ภาษา Go สำหรับ DigitalOcean ได้แก่ ประสิทธิภาพในการจัดการ TCP และ websocket ที่ดี ทำให้ความเร็วของคอนโซลดีขึ้น, ระบบอินเทอร์เฟซ (Interface) ทำให้โค้ดทดสอบได้ง่าย, มีไลบรารี net/http ในตัวทำให้ดีพลอยขึ้นระบบจริงได้โดยไม่ต้องดาวน์ระบบ, ระบบแพ็กเกจของ Go ทำให้แต่ละทีมแชร์โค้ดกันได้ง่าย

Tags:
Node Thumbnail

หนึ่งปีกว่าๆ หลังออก Go 1.0 รุ่น "เสถียร" ถึงตอนนี้ทีมงาน Go ก็ออกรุ่น 1.1 แล้ว โดยยังคงความเข้ากันได้กับ Go 1.0 เต็มรูปแบบ (เพราะทีมงานสัญญาไว้ตั้งแต่รุ่น 1.0)

การปรับปรุงในรุ่นนี้ส่วนมากจะเป็นการปรับปรุงประสิทธิภาพเป็นส่วนมาก เช่นการปรับปรุงความเร็วทั้งตัวคอมไพล์เลอร์, ลิงก์เกอร์, ตัวจัดการหน่วยความจำ, และระบบ goroutine โดยทั่วไปแล้วประสิทธิภาพจะดีขึ้น 30%-40%

การเปิดซอร์สทำให้ Go มีนักพัฒนาจากภายนอกกูเกิลมาร่วมส่งแพตซ์ถึง 2600 แพตซ์ จากนักพัฒนา 161 คน ในช่วงหลังผมเริ่มเห็นประกาศรับสมัครงานหาโปรแกรมเมอร์ที่มีประสบการณ์กับภาษานี้แล้ว ก็นับว่าเป็นอีกภาษาที่น่าศึกษาเอาไว้

ที่มา - Golang

Tags:
Node Thumbnail

ภาษา Go ที่เปิดตัวโดยกูเกิลเมื่อเดือนพฤศจิกายน 2009 มีอายุครบ 3 ปีแล้ว ซึ่งตอนนี้ก็มีผู้ใช้ภาษา Go มากมาย เช่น BBC, Novartis, SoundCloud, SmugMug, Canonical ส่วนกูเกิลก็ใช้ภาษา Go ในส่วนที่เห็นชัด ๆ คือ Doodle ที่เคลื่อนไหวได้ ในเทศกาลต่าง ๆ นั่นเอง

ตอนนี้นักพัฒนากำลังพัฒนาภาษา Go เวอร์ชัน 1.1 หลังจากเพิ่งปล่อยเวอร์ชัน 1.0 ไปเมื่อเดือนมีนาคมปีนี้ (ข่าวเก่า)

ที่มา - The H

Tags:
Node Thumbnail

โทรจัน Encriyoko เพิ่งถูกค้นพบเมื่อกลางเดือนที่ผ่านมา ตัวมันเองทำงานด้วยการเข้ารหัสไฟล์เอกสารจำนวนมากในเครื่อง โดยสร้างกุญแจการเข้ารหัสด้วยการสุ่มขึ้นมาหรือใช้กุญแจจากไฟล์ D:\nepia.dud จุดที่ทำให้มันน่าสนใจกว่าโทรจันอื่นๆ คือมันพัฒนาด้วยภาษา Go

ตัวโทรจันเป็นไฟล์ติดตั้งที่เขียนด้วย .NET ใช้ชื่อไฟล์ว่า GalaxyNxRoot.exe เมื่อติดตั้งแล้วจะได้สองไฟล์ที่พัฒนาด้วยภาษา Go นั่นคือ PPSAP.exe และ adbtool.exe ไฟล์แรกจะอัพโหลดข้อมูลเกี่ยวกับเครื่องของเรากลับไปยังเซิร์ฟเวอร์ อีกไฟล์หนึ่งจะดาวน์โหลด DLL สำหรับการเข้ารหัสไฟล์ในเครื่องของเรามารัน

ใครรูทเครื่องเล่นด้วยโปรแกรมแปลกๆ บ่อยๆ ก็ระวังตัวกันด้วยนะครับ

Tags:
Node Thumbnail

ภาษาที่กูเกิลสร้างขึ้นในตอนนี้คงมีสองภาษาสำคัญคือภาษา Dart สำหรับเว็บและภาษา Go สำหรับงานระดับล่างที่ต้องการประสิทธิภาพสูง ถ้าใครมีโอกาสฝึกภาษา Go มาก่อนหน้านี้จะพบว่าภาษาและไลบรารีมีการพัฒนาที่เร็วมากจนกระทั่งโค้ดเดิมใช้งานไม่ได้แม้พัฒนามาไม่นาน นั่นเป็นเพราะตัวภาษา Go ยังอยู่ระหว่างการพัฒนา แต่วันนี้กูเกิลก็ประกาศภาษา Go รุ่น 1.0 ที่จะรับประกันความเข้ากันได้ในรุ่นต่อๆ ไป (forward compatibility)

Tags:
Node Thumbnail

แม้จะไม่ได้แสดงตัวในส่วน keynote แต่ App Engine ก็เปิดฟีเจอร์ชุดใหม่ทันทีต่อจาก Android โดยการเพิ่มฟีเจอร์ส่วนมากเป็นการเพิ่มเอาใจลูกค้าองค์กร (ที่เป็นลูกค้าสำคัญของ App Engine)

Tags:
Node Thumbnail

แม้ว่าภายในกูเกิลนั้นจะใช้งานภาษา C++ และ Python อย่างหนักก็ตาม แต่ทั้งสองภาษาก็ยังมีข้อจำกัดอยู่บางส่วน ภาษา C++ นั้นต้องเสียเวลาในการคอมไพล์นานในการแก้ไขแต่ละครั้ง ส่วนภาษา Python นั้นมีปัญหาเรื้อรังในการรองรับมัลติคอร์ เพื่อแก้ปัญหานี้กูเกิลจึงเสนอ "ทางสายกลาง" ให้กับเราๆ ท่านๆ ด้วยภาษา Go

ภาษา Go เป็นภาษาที่ต้องการการคอมไพล์ เช่นเดียวกับภาษา C++ แต่มีข้อดีกว่าหลายประการคือ