รีวิวงาน JavaScript Bangkok 1.0.0

9 ก.พ. 2020
งานที่เสียเงินค่า swag มากกว่าทุกอย่าง

ก่อนอื่นต้องบอกก่อนเลยว่างานนี้เป็นงาน Tech ที่จัดโดย community ที่ใหญ่ที่สุดที่เคยไปมาเลย ช่วงที่บัตรออกมาแรกๆก็ไม่กล้ากดเพราะกลัวว่าจะไปแล้วฟังไม่รู้เรื่อง(ซึ่งจริง) แต่ก็ลองกดส่ง Scholarship Application ไปดูเพราะว่าคิดว่าบาง talk คงพอฟังได้แต่กดบัตรไปกลัวจะไม่คุ้ม ซึ่งผมก็ได้บัตรมาจริงๆ ถึงแม้ว่าผมจะได้บัตรฟรีไปงานนี้แต่สุดท้ายก็เสียตังหลายพันไปกับการซื้อของจากงานนี้อยู่ดี เหมือนโดนหลอกล่อให้ไปซื้อของ...(เพราะถ้าไม่ได้ไป ก็คงไม่ได้ซื้อ) What a marketing...

มาถึงวันงาน ปรากฎว่าเหมือนผมจะยังเสียตังไม่พอ พระเข้าเลยประทานความง่วงและร้านกาแฟที่เปิดใน Siam Square One ในขณะนั้นก็คือ Starbucks... ก็เลยเข้าไปสั่ง Nitro Cold Brew แก้วกลาง ซึ่งอร่อยมากกกกกกกก หรือเพราะว่าผมไม่เคยกิน Nitro Cold Brew ที่อื่นมาก่อนมากกว่า...

งาน JavaScript Bangkok 1.0.0 จัดขึ้นที่บริเวณชั้น 7 และ 8 ของ Siam Square One ซึ่งคือโรงละครเคแบงก์สยามพิฆเนศ ที่ตอนแรกผมก็ตกใจมากว่าทำไมมาจัดที่โรงละครใจกลางเมืองขนาดนี้ แต่พอเข้าไปก็เข้าใจได้ว่า คนมางานเยอะมากจริงๆ รวมไปถึงของแจก กาแฟฟรี(ไม่น่าเลย) บูท sponsor ต่างๆก็หลากหลายมาก โดยรวมแล้วหน้างานดูดีมากๆ การเข้าคิวรับบัตร รับของแจก หรือจะรับกาแฟฟรี ก็สะดวกสบายดี มี staff คอยช่วยเหลือตลอด

Talk ที่น่าสนใจ (และที่พอจำได้)

What happens when you cancel an HTTP request?

  • เรารู้กันอยู่แล้วว่า HTTP Request มันเป็น stateless พอส่ง request ได้ response กลับมาก็จบ
  • คำถามคือถ้าเรายกเลิก request หลังจากที่ส่งไปแล้วจะเกิดอะไรขึ้น ตัวอย่างที่คุณ Younes ยกขึ้นมาคือการทำ search ที่มี autocomplete ซึ่งเวลาพิมพ์ตัวอักษรเข้าไป มันก็จะเกิด HTTP request จากหน้าเว็บไปยัง Backend
  • แต่ถ้า user พิมพ์ตัวอักษรต่อไปก่อนที่เราจะได้ response กลับมา ก็เท่ากับว่ามันจะเกิด request อันใหม่และไม่สนใจ request ตัวเก่า
  • ปัญหาอยู่ที่ว่าการทำแบบนี้จะให้เกิด HTTP request ที่เสียเปล่าจำนวนมหาศาร ฝั่ง Backend ยังคงทำการคำนวนและเรียกข้อมูลจากฐานข้อมูลตามปกติ แต่ไม่ได้ส่ง response กลับไป ถ้าผู้ใช้ยังมีไม่เยอะ เราก็คงปล่อยให้เกิดการใช้ทรัพยาการอย่างเสียเปล่านี้ได้ แต่ถ้ามีผู้ใช้มากขึ้น ก็ยิ่งเสียทรัพยาการมากขึ้น
  • ดังนั้นเราควรจะมีกลไลอะไรบางอย่างที่ทำให้ฝั่ง Backend หยุดการทำงานของ request ที่ไม่มีประโยชน์
  • วิธีแรกที่ทำได้คือการ debounce โดยที่ตั้งเวลาไว้ว่าถ้าผู้ใช้พิมพ์เร็วกว่าเวลาที่ตั้งไว้ ให้ส่งเฉพาะ request ที่ผู้ใช้พิมพ์ไปล่าสุด (ใน 1 กรอบเวลา) แต่การทำ debounce ก็จะทำให้เกิด artificial lag ที่ทำให้เว็บช้าลงมาก
  • อีกวิธีนึงจะเป็นการยกเลิก request ที่ส่งไปทำให้ logic ต่างๆ หยุดลงและประหยัดทรัพยากร โดยที่ผมก็ยังไม่เข้าใจเท่าไหร (ฮา) code อ่านไม่รู้เรื่องเลย
  • เอาเป็นว่าไปอ่านโพสสรุปของน้องภูมิเอาครับ!!

เอาจริงๆก็คือไปอ่านสรุปของน้องภูมิทุก talk เลยล่ะกันนะครับ!!

สรุปทั้ง 17 Talk ในงาน JavaScript Bangkok ในแท็ก #สรุปJavaScriptBangkok แล้วจ้า ไปอ่านกันได้เลย 💟

Posted by Phoomparin Mano on Saturday, February 8, 2020

Companion App

สำหรับงาน JavaScript Bangkok 1.0.0 มีการสร้าง web application ที่อำนวยความสะดวกสำหรับผู้เข้าร่วมก็คือ Companion App ที่มี Agenda ของทั้งวัน, ระบบ Annoucnment และ Networking

แต่สิ่งที่ผมประทับใจและแปลกใจที่เห็นมากที่สุดคือการจองข้าวเที่ยงครับ โดยปกติแล้วเวลาไปงาน tech แนวๆนี้ ทุกคนก็จะคาดหวังข้าวกล่องหรืออะไรแนวนี้นะครับ แต่งานนี้มีการตกลงกับร้านอาหารภายใน Siam Square One ซึ่งมีร้านอาหารและเมนูหลากหลายมากๆเช่น Sushi Den,  ฮั่วเซ่งฮง, และมากมาย โดยรายการอาหารและร้านอาหารสามารถสั่งของได้จากหน้า Companion App

อีก feature นึงของ Companion App คือ networking ที่ใช้การสแกน QRCode เพื่อให้เรารู้จักเพื่อนที่เจอในงาน โดยสามารถใส่ Bio สั้นๆลงไปได้ แต่ที่น่าสนใจคือแต่ละคนจะมี icon JS ที่แตกต่างกันออกไปมีทั้ง JS, Node, React, Vue, Angular, Firebase ซึ่งถ้าใครเก็บครบจะมีของรางวัลด้วย (ซึ่งหมดเร็วมาก)

สรุปแล้วงาน JavaScript Bangkok 1.0.0 เป็นงานที่ดีมาก ทั้ง speakers, after-party, networking, swag, และ staff ทุกคน หวังว่าปีหน้าจะได้มางานนี้อีกนะครับ~

แท็ก

Sethanant Pipatpakorn

Innovation Engineer @ KLabs, KBTG CS20 SKN36