Videos How to really start open-source in a nutshell

Description

คุณเวิลด์ แอดมิน Vue News Thailand และนักพัฒนาจาก ODDS จะมาแชร์ประสบการณ์การก้าวเข้าสู่โลกของ open source ฟังเรื่องราวการสนทนากับ Evan You และ Jinjiang ผู้พัฒนาของ Vue.js ในยุค Vue 2 และเคล็ดลับในการเริ่มต้น contribute ให้กับ open source project ตั้งแต่การสนับสนุนผู้พัฒนา การมองหา bug หรือแม้แต่การแปล documentation พร้อมเรียนรู้ถึงความท้าทายและข้อคิดที่ได้จากการมีส่วนร่วมกับ community รวมถึงการประกาศงาน Vue Thai Conf 2024

Chapters

  • เปิด Session: ชวนคุยเรื่อง Open Source 0:00
  • เล่าประสบการณ์ Open Source 0:26
  • จุดเริ่มต้นของความสงสัย: เริ่มต้นทำ Open Source ยังไง? 0:43
  • เก็บเกี่ยวประสบการณ์จาก CityJS สิงคโปร์ และบทสนทนากับ Jinjiang 1:58
  • พบปะ Evan You ผู้สร้าง Vue.js 2:21
  • วิธีสนับสนุน Open Source แบบง่ายๆ: Sponsor! 5:27
  • สิ่งสำคัญของการทำ Open Source: เริ่มต้นที่ตัวเราก่อน 7:11
  • Keep Going! ค้นหา Bug และ Issue อย่างสม่ำเสมอ 7:40
  • เรื่องจริงของการ Contribute: ไม่ทุกครั้งที่ PR จะถูก merge 8:41
  • อย่าท้อ! พรุ่งนี้ยังมี: เปรียบเทียบกับการปัด Tinder 9:29
  • ประสบการณ์ Contribute Vue Extension และความภูมิใจเล็กๆ 10:01
  • ข้อควรทำใจ: Open Source ส่วนใหญ่ยากเสมอ 11:11
  • แปล Docs ไม่ง่ายอย่างที่คิด: ยกตัวอย่าง Vue.js 12:00
  • เสน่ห์ของ GitHub Open Source: เปิด Discussion และเรียนรู้จากผู้อื่น 14:20
  • มุมมองต่อ Issue และ Bug: โอกาสในการพัฒนา 15:04
  • ตัวอย่างการแปลข่าว Vue 3.5: ความยากของการใช้ภาษา 15:58
  • การใช้ภาษาไทยและทับศัพท์: คำแนะนำจากเพื่อนนักพัฒนา 18:22
  • ดวงก็สำคัญ! Technology Hype Cycle และ Burnout 19:34
  • กราฟ Technology Hype Cycle ของ Vue.js: จากจุดพีคสู่การเรียนรู้ 21:34
  • กล้าที่จะฉีกไอเดียและเริ่มต้นใหม่: อย่าเพิ่งท้อ 23:27
  • Push โปรเจคขึ้น GitHub Public: สร้าง Portfolio ตั้งแต่วันนี้ 24:09
  • สิ่งที่ได้เรียนรู้จากการทำ Open Source: เติมเต็มตัวเองและสร้าง Legacy 26:06
  • ได้ลองอะไรใหม่ๆ และเรียนรู้จากความล้มเหลว 27:21
  • โอกาสมักมาตอนที่เราไม่พร้อมเสมอ 29:17
  • Developer Experience สำคัญไม่แพ้ User Experience 30:36
  • Community: กุญแจสำคัญของ Open Source 33:05
  • ประกาศสำคัญ! Vue Thai Conf 2024 34:25

Transcript

คำบรรยายต่อไปนี้อาจไม่ถูกต้องทั้งหมด หากคุณพบข้อผิดพลาดใดๆ คุณสามารถช่วยแก้ไขข้อผิดพลาดได้บน GitHub

เปิด Session: ชวนคุยเรื่อง Open Source0:00

งั้นผมขอเริ่มเลยแล้วกันเนาะ ก็น่าจะเลยเวลา schedule มานิดนึง ก็ผมขอเริ่มเลยแล้วกันครับ

หากพวกเรากำลังสบายจงปรบมือพลัน หากพวกเรากำลังสบายจงปรบมือพลัน ผมรู้ทุกคนหลับ และไม่เป็นไร session นี้ฟังสบายๆ ไม่มี coding ผมสัญญาว่าไม่ต้อง coding ไม่ต้องจำอะไรทั้งสิ้นครับผม แต่ต้องบอกว่าเดี๋ยวสไลด์ ผมแชร์ให้ทุกคนนะ

เล่าประสบการณ์ Open Source0:26

ก็จะเป็นการเล่าประสบการณ์ครับผม อันนี้ก็เป็น session ที่ต่อจากภาคที่แล้วนะครับ เป็นต่อจาก Lightning Talk ภาคที่แล้ว เดี๋ยวจะเล่าให้ฟังว่ามันเกิดอะไรขึ้น แนะนำตัวก่อนแล้วกันครับ ผมชื่อเวิลด์นะครับ ปัจจุบันทำงานอยู่ที่ ODDS ครับผม แล้วก็เป็นแอดมินของ Vue News Thailand นะครับ

จุดเริ่มต้นของความสงสัย: เริ่มต้นทำ Open Source ยังไง?0:43

Okay from the last episode หรือเมื่อตอนที่แล้ว คือ เมื่องานที่

ที่ไหนนะ Agoda ขอบคุณมากครับ มีคนจำได้

ผมได้พูดอะไรใน Lightning Talk อันนั้นก็ เรียกว่า กำลังอยากพูดแต่ไม่รู้จะพูดเรื่องอะไร วันนั้นก็ต้องขอบคุณคุณภูมิที่พูดถึงเรื่อง open source เราก็แบบ เออว่ะ คือเราก็ชอบทำ open source แต่เราอาจจะไม่ได้ทำเก่งมาก

แต่เราชอบแก้บั๊ก แก้ doc แปลนู่นแปลนี่แล้วรู้สึกว่า เอ้ย เราก็ เราก็ชอบนะ เราก็อยากจะแชร์ ให้กับบางคนที่อาจจะ อยากจะมีส่วนร่วมกับ open source ผมก็ลองเอาประสบการณ์ที่ตัวเองมีแชร์ แล้วก็กระแสการตอบรับวันนั้นน่ะ หลายๆ คนก็ถาม

ถามเยอะมากว่าเริ่มยังไง คือคนที่เคยทำเป็น ทำ pull request แล้วแบบ โอเค ผมเข้าใจ ทุกคน ก็ทำอยู่แล้ว แต่บางคนจะแบบว่าเขาเริ่มจากศูนย์จริงๆ อ่ะ เริ่มยังไง คือผมก็ตอบไม่ได้จริงๆ ตอนนั้นตอบได้แค่ ก็คงจะแค่ไล่ดูไปอะพี่ เอาแบบคิดไม่ออกจริงๆ ครับ คิดไม่ออกจริงตอนนั้น ก็ไม่รู้ว่าจะเล่าให้ฟังยังไง

เก็บเกี่ยวประสบการณ์จาก CityJS สิงคโปร์ และบทสนทนากับ Jinjiang1:58

และหลังจากนั้นผมก็มีโอกาสได้ไปงาน CityJS ที่สิงคโปร์ ก็เรียกว่าเป็นแหล่งรวมของ community ของ JavaScript ที่ยิ่งใหญ่ระดับหนึ่ง ก็เป็นงานที่ใกล้นะ อยู่ที่สิงคโปร์ สำหรับใครที่อยากจะไปงานแบบ งาน conference JavaScript เนี่ย CityJS ก็ค่อนข้าง จะตอบโจทย์ครับ สิงคโปร์ก็ใกล้ๆ ครับ

พบปะ Evan You ผู้สร้าง Vue.js2:21

ก็แหม ไหนๆ ก็… เขาขอสักทีหนึ่งแล้วก็มีโอกาสได้ไป

ถ่ายรูปกับพี่ Evan You นะครับ คือไปถ่ายจนเขาจำได้แล้ว เขาคงจำไม่ได้หรอก แต่เขาน่าจะเบื่อแล้วล่ะ เขาน่าจะเอือมแล้ว ไปถ่ายบ่อยมากกับพี่ Evan You เขาก็แค่จำได้แหละ จริงๆ พี่ Evan You บอกว่าเขาเคยมาที่ไทยนะ เพราะเขาชอบมากรุงเทพฯ มาพัทยา ภูเก็ตอะไรอย่างเงี้ย ก็ถ้าใครเจอก็ไปทักทายเขาได้นะฮะ แต่เขาค่อนข้างจะมาแบบ private ถ้าเจอเห็นคนหล่อๆ ตัวขาวใส่แว่น ก็ทักทายเขาได้นะ แต่คนที่ผมได้คุยมากที่สุดในงาน CityJS ก็คือ Jinjiang ครับผม ในนี้มีใครเคยใช้ Vue 1 ไหมครับ

ไม่เป็นไร Vue 2 อะ มีไหม Vue 2 น่าจะต้องมีแหละ เพราะมันเริ่มมีกระแส จริงๆ แล้วคือเป็น conductor คนหลักเลยนะ ในช่วงยุคนั้น คือเขาทำพวก Vue Loader สมัยที่ ถ้าคุณเคยมีเพน แบบ webpack อะไรอย่างเงี้ย ซึ่ง Vue Loader ที่ตอนนั้นแบบว่ามีปัญหาเนาะ ก็มีคนเนี่ยแหละที่คอย contribute ก็เรียกว่าผลงานเขาเป็นเบื้องหลังที่ทุกคนได้ใช้ ถ้าใครได้ใช้ Vue 2 ต้องเคยใช้ผลงานของเขา คือพี่ Jinjiang อันนั้นคือผมก็เรียกว่าคุยกับเขาเยอะสุด ทีแรกก็จะคุยกับพี่ Evan You แต่ว่าพี่ Evan You แน่นอนแหละ เขา... แฟนคลับเขาเยอะนะ แล้วงานนั้นก็... ผมมีโอกาสได้ไป ดื่มเครื่องดื่มสีทอง ที่กลับแล้วผม... ก็คือดื่มแล้วมัน...

มันถึงในจุดที่แบบมันตรัสรู้ พอมันตรัสรู้แบบ... มันลื่นอะ มันลื่น ก็เลยดื่มไป ดื่มเครื่องดื่มชนิดนี้ ซึ่งผมไม่รู้มันเรียกว่าอะไร แต่ผมดื่มไปหลายโปรอยู่ ดื่มไปหลายโปร แล้วมาถึงจุดที่ผมได้คุยกับพี่ Jinjiang ผมก็ได้คุยกับพี่ Jinjiang เพราะว่าแบบตรงๆ ว่า เออ พี่... อันนี้แปลมาแล้วนะ คือ... ผมจะเริ่มทำ open source ยังไง ถ้าแบบเริ่มจากศูนย์เลย เพราะว่าผมเชื่อว่าหลายคนอยากมีส่วนร่วมกับ... library ที่ตัวเองใช้ แน่นอนใครๆ ก็อยากมีส่วนร่วมกับ React กับ Vite กับ... MUI ใครก็อยากมี ผมก็อยากมีส่วนร่วมกับ MUI แต่ issue เขาปิดไวมากนะฮะ นี่ก็แอบบ่นกับ contributor เขานิดหน่อย คือทุกคนอยากมีส่วนร่วมหมด แต่นั่นแหละฮะ แต่จะเริ่มยังไง ซึ่งก็เลยเป็นที่มาของ talk นี้ว่า โอเค ผมได้เรียกว่า... ได้พูดคุยกับเขาว่าจะทำยังไง ซึ่งเขาก็เข้าใจนะ เออ...

คือต้องเล่าอย่างนี้ว่า เขามาอยู่ในวงการ Vue ยังไง ก็คือ... เขาค่อนข้างจะสนิทกับ Evan You เพราะว่าเขาเคยพยายามที่จะทำ framework คล้ายๆ กับ Vue.js แต่บังเอิญว่า Evan You ทำเสร็จก่อน หรือทำพร้อมๆ กัน แล้วเหมือนสองคนนี้ได้พูดคุยกัน ก็เลยเรียกว่า... คือถ้ามือซ้ายคือ Anthony Fu ของ Evan You จริงๆ ก็คือมือขวาเขานั่นแหละ

เรียกว่าอย่างนั้นก็ได้ครับผม

วิธีสนับสนุน Open Source แบบง่ายๆ: Sponsor!5:27

เอางี้แล้วกัน วิธีที่แบบ no-brainer เลยนะ แบบไม่ต้องคิดอะไรละ จะอยากจะ support library นั้น อยากจะ support เอ่อ

ผู้เขียน author หรือ project นั่นแหละ ง่ายๆ ครับ ปุ่มนี้เลยครับ ปุ่ม Sponsor นะฮะ โอเคนะ ง่ายๆ คือต้องบอกว่าปุ่มแบบ เฮ้ย ทำไมมันไม่เท่เลยอ่ะ เออ เงินมันไม่เห็นจะ… ก็เงินถูกปะ ถ้าคิดว่า เงินไม่สำคัญก็โอนมาให้ผมนะฮะ ง่ายๆ นะฮะ คือแน่นอนครับ คือต้องเข้าใจว่า คนที่มาทำ open source เนี่ย เขาไม่ได้แบบ เขาไม่ได้เป็นพนักงานประจำ เขาไม่ได้มีเงินเดือนเหมือนอาชีพทั่วไปเนอะ แน่นอนว่า บางคนเขามาทำหลังเลิกงาน บางคนเลิกงาน 6 โมงก็ โอ๊ย ไม่เอาแล้ว เออ เข้าเกมแล้ว ไม่ไหวแล้ว เข้า Netflix แล้วอะไรอย่างเงี้ย เขาต้องเสียสละเวลา บางคน ออกจากงานเพื่อมา maintain open source นั้น หลายๆ คนก็มาเป็น open source แบบเต็มตัว ซึ่งแน่นอนว่าคนเราก็ต้อง มีกิน มีใช้

ก็ผมเอาปุ่มนี้มาจากโปรเจกต์ของ SaltyAom นะฮะ ก็ ก็เรียกว่าเป็นตัวอย่างแล้วกัน จริงๆ SaltyAom ก็เป็น

เค้าเรียกว่านะ เอ่อ เป็น developer ที่ผมค่อนข้างจะนับถือ แล้วโปรเจกต์เขาก็พูดตรงๆ ว่า Elysia คือโปรเจกต์ที่สำหรับ ถ้าใครอยากจะเข้าถึงแบบ open source อะ โปรเจกต์เขาดีมาก เพราะว่าแบบพวก TypeScript อะ ผมได้เรียนรู้พวก infer type พวกนี้ จาก Elysia นะ ก็แนะนำว่า ใครอยากจะเริ่มหรืออะไรเนี่ย ก็ติดตามเขาอยู่ครับ แต่ผมไม่ได้สปอนเซอร์เขานะ เพราะว่าผม… ผมไม่มีตังค์ครับ

สิ่งสำคัญของการทำ Open Source: เริ่มต้นที่ตัวเราก่อน7:11

โอเค เซสชันนี้อาจจะไม่ได้เกี่ยวกับเรื่องของ how ขนาดนั้น อาจจะเริ่มที่ตัวเราก่อน เพราะว่าเอาตรงๆ ว่าทุกสิ่งทุกอย่างใน open source มันก็คือเหมือนกันที่เรา develop ซอฟต์แวร์เนาะ ทีนี้ก็คือ มันคือคนที่

วันนี้คนรีวิวเป็น open source กับ developer ที่ทำงานประจำไม่ได้ต่างกัน ต่างกันที่ mindset และวิธีการคิด ทุกอย่างมันต่างกันแค่นั้น อาจจะมีระเบียบวินัยที่มากกว่า

Keep Going! ค้นหา Bug และ Issue อย่างสม่ำเสมอ7:40

มาเริ่มดูอย่างแรกครับผม ไม่มีมันก็ยังเหมือนเดิมแหละ ผมก็คงจะดื้อบอกพวกคุณว่า มันต้อง keep going ก็คือคุณต้องทำไปเรื่อยๆ ต้องหาไปเรื่อยๆ หาจากพวก issue ต่างๆ bug ต่างๆ คือแน่นอนว่า มันไม่มีหนทางอื่นแล้ว ที่คุณจะเข้าถึง open source ถ้าคุณไม่เริ่มที่จะ

หา bug จริงๆ ไม่ต้อง bug นะเนี่ย คือ bug มันมีทั้งแบบยากแบบ โห แบบ ต้อง run นู่น นี่ นั่น ถูกป่ะ บางครั้งก็จะมีแค่แบบ บางคนก็บอกว่า เอ้ย doc ตรงนี้เขียนผิด ถ้าเราเลื่อนไปเห็น เอ้ย doc เขียนผิด โอเค ไม่ต้องมีความรู้เรื่อง Elysia หรือไม่ต้องมีความรู้ technical ก็ได้ ใครๆ ก็ได้ ขอแค่คุณเปิด pull request เป็น จบ ถูกป่ะ เรื่องๆ ไปเดี๋ยวมันก็มี คือต่อให้เป็นแค่การแก้ text แค่ตัวสองตัว คุณก็ คุณก็นับว่าคุณเป็น contributor ของ framework นั้นได้แล้วนะ

เรื่องจริงของการ Contribute: ไม่ทุกครั้งที่ PR จะถูก merge8:41

อันนี้แบบจริงๆ จังๆ เลยในแง่ของความเป็นจริง

บางวันแรกๆ ผมเข้าใจ บางวันก็ไม่เจอ บางวันก็ ผมก็เหมือนกัน ผมเลื่อนไปบางครั้งก็ มันก็ไม่เจออันที่เราแก้ได้ บางครั้งก็แบบ บางครั้งเคยเจอแบบ ผมเคยแก้ปุ๊บ ผมเคย push ไปใช่ป่ะ แล้วเค้าบอกว่า เอ้ย อันนี้ไม่ต้องแก้หรอก ไม่เป็นไรเดี๋ยว แก้ยังงี้กัน เออ มันก็เป็นสิ่งที่เราเลยรู้ บางครั้งก็มีครั้งแบบผมเคย pull request ไปเนาะ ผมเคยเจอแบบประมาณว่า แก้เสร็จแล้ว แก้ bug ได้แล้วใช่มั้ย เค้าโค้ช pull request ผม แล้วก็ก๊อปส่วนที่ผมทำอ่ะ ไปแปะแล้วก็ เออ

ผมเคยเจอ แต่ไม่เป็นไร มันไม่ใช่วันของเรา มันต้องมีวันนี้ก็ยังมีพรุ่งนี้ อันนี้ก็คำคมๆ นะฮะ

อย่าท้อ! พรุ่งนี้ยังมี: เปรียบเทียบกับการปัด Tinder9:29

ผมก็เป็นเหมือนกัน ผมเข้าใจทุกคนก็ต้องเคยเจอ ผมเหมือนกัน ผมอยากให้ทุกคนนึกถึง Tinder อ่ะแหละ ก็แน่นอน วันนี้ไม่ใช่ พรุ่งนี้ก็ต้องมีนะฮะ เราปัดไปก็ปัดคนนี้ไม่ได้ก็คนอื่นก็ได้ ไม่เป็นไร อันนี้ก็เรียกว่าตัวอย่างง่ายๆ ครับ เค้าไม่ได้ให้ Sponsor ผมมา ถ้าก็ขอ Tinder Plus นะฮะ ครับผม โอเค สู้ต่อไปทั้ง open source แล้วก็ Tinder ฮะ ถ้าใครที่ยังไม่มีคู่ก็ขอให้สมหวังหลังจากเซสชันนี้นะครับ

ประสบการณ์ Contribute Vue Extension และความภูมิใจเล็กๆ10:01

แต่หลังจากนั้นก็มีวันของผมบ้าง คือผมได้มีโอกาสไป contribute ให้กับ เอ่อ ถ้าใครเคยใช้ Vue.js ณ ปัจจุบันก็น่าจะได้ใช้ ตัว Vue Extensions นะ ผมก็ไปเพิ่มฟีเจอร์หน่อย ก็เป็นผลตอบรับที่ดีมากครับผม มันก็เป็นความ เรียกว่า fulfill ในใจเล็กๆ ก็คือรู้สึกดีใจ รู้สึกดีใจในวันที่แบบ เออ เห็นชื่อเราเล็กๆ เนาะ ชื่อตรงนี้เล็กๆ ผมอุตส่าห์วง คนที่อยู่ข้างหลังไม่เป็นไรครับ แต่มีชื่อผมวงว่า โอเค ผมอยู่ในชื่อ releases ของเราอะ เออ แบบ แม่งเอ้ย ได้แล้ว มันก็มีความรู้สึกว่า เออ ฟีเจอร์บางอย่างที่คุณจะใช้ใน Vue Extension น่ะ ของผมนะ อะไรเงี้ย มันก็แบบ อืม มันเป็นความภูมิใจ นอกจากภูมิใจก็เป็นพอร์ตที่ดีนะ คือมันเป็นพอร์ตที่แบบว่า คุณไม่สามารถที่จะแบบ ที่จะ หะ มัน แบบ คือแน่นอนว่า เอ่อ มันเป็นพอร์ตที่ public ได้ ในงาน คุณทำงานประจำ บางอย่าง คุณไม่สามารถที่จะเป็นพอร์ตใน LinkedIn ได้ เพราะแน่นอนว่าจะมีเรื่องของ เรื่องของ privacy เนาะ บางครั้งบางอัน คุณก็ไม่สามารถที่จะใส่ได้ แต่ถ้าเป็นแบบ open source คุณเคย pull request คุณสามารถที่จะแชร์ใน Facebook คุณแชร์ให้กับใครก็ได้ แชร์ให้โลกรู้ ทั้งโลกรู้ว่า นั่นคือผลงานของคุณ ง่ายๆ อะ โอเค

ข้อควรทำใจ: Open Source ส่วนใหญ่ยากเสมอ11:11

อย่างที่ 2 โอเค คุณต้องทำใจไว้เลยว่า open source ถ้าคุณจะเริ่ม

ไม่ว่าคุณจะเริ่มขึ้นโปรเจค หรือคุณจะไปแก้ bug เค้าอะ ผมพูดเสมอว่า สำหรับคนที่เริ่มแรกนะ มันไม่มีทางไหนที่มันจะง่าย ส่วนมากยาก

ส่วนมากยากเลย แน่นอนถ้ามันไม่ยาก เขาก็คงไม่เปิด issue หรอก ถ้ามันง่ายป่านนี้ contributor หรือคนที่อยู่ตรงนั้นคงจะแก้ไปแล้ว แน่นอนว่าทุกสิ่งทุกอย่างที่มันอยู่ใน issue น่ะ ให้มองให้คิดเสมอว่ายากเสมอ

คุณอาจจะบอก เมื่อกี้ผมบอกไปแล้วว่า ครั้งที่แล้วก็บอกว่างานที่ง่ายสุดของการ contribute open source อ่ะ คือการแปล doc ถูกป่ะ

แปล Docs ไม่ง่ายอย่างที่คิด: ยกตัวอย่าง Vue.js12:00

พวกเค้าอาจจะคิดว่า โอ๊ย นี่มันงานแบบ งานชิลๆ Translation is very easy อ่า โอเค ถ้าแปล doc อ่ะ ถ้าสมมุติผมต้องแปล doc Vue.js เนี่ย เอาแค่คำแรกที่พวกคุณๆ เห็นกันเนี่ย The Progressive JavaScript Framework คุณจะแปลว่าอะไร

ผมแปลมาแล้ว ผมก็ไม่ได้เก่งขนาดนั้นหรอก ก็คือพัฒนา ก้าวหน้าเนาะ JavaScript และ framework คุณจะแปลว่าอะไร กรอบการทำงาน JavaScript ที่ก้าวหน้า framework ก้าวไกลนะฮะ ก็ได้นะครับ framework ที่ก้าวไกล คือแน่นอน ถ้าแปลแบบ straightforward แปลตรงไปตรงมา มันก็ไม่มีใคร… คือแบบ… มันก็ไม่เป็นธรรมชาติเนาะ คือมันไม่ใช่แค่การแปลที่เราจะเข้าใจ แต่เราต้องแปลเพื่อให้ เพื่อให้คนที่อ่านน่ะ เค้ารู้ว่าเราพูดถึงอะไร อันนี้ผมลองแปลนะ อันนี้ก็ยังอยู่ในช่วงของการทำอยู่ อ่ะ ผมแปลว่าอันนี้ ตอนนี้ต่อให้ผมก็แปลว่า คือเมื่อกี้คิดไม่ออกเลย ก็เอาที่มันอาจจะไม่ได้ตรง แต่ว่าผมก็เอาให้มันสื่อกันคือ javascript framework แห่งยุคสมัยนี่ ดูเท่ใช่มั้ย มันอาจจะไม่ตรงตามกับ Google Translate แต่คุณเข้าใจใช่มั้ยว่าผมจะสื่ออะไร คือการแปลงนี้ก็ยากนะ เลือกฟอนต์อ่ะยากกว่า ถ้าใครที่เคยทำเว็บที่แบบว่า มีทั้งฟอนต์ภาษาไทย ภาษาอังกฤษ ความยากที่แบบ พอพูดเป็น ภาษาสุภาพว่า

ยากแบบฉิบหาย คือการเลือกฟอนต์ที่มันสวยทั้ง ภาษาอังกฤษและภาษาไทย ภาษาไทยเนี่ยคือเรียกว่า ปรับเสียงนะ สำหรับการ สำหรับคนที่เป็น UI Designer หรือคนที่เป็นสายเว็บนะ ก็เลือกฟอนต์เนี่ยยาก ยากมากนะ แบบคิดไม่ออก ถามหลายคนเลยนะ ก็ผมก็ลองแปลก็ ผมก็ยังพูดว่างานแปล docs เนี่ย หลายคนแปล docs คือมัน… documentation ไม่ใช่งานง่ายๆ แต่ต้องบอกว่าการแปล docs เนี่ย บางคนอาจจะบอกว่า เออ ผมก็จะว่าหลายคนอาจจะเป็น developer อาจจะอ่านตอบเป็นภาษาอังกฤษเนาะ แต่คุณอย่าลืมว่าบางคนเขา เขาอาจจะไม่สันทัด เขาอาจจะเป็นมือใหม่ เขาเริ่มที่จะอ่านจากภาษาไทย หลายๆ คนนะ หลายคน ซึ่งอันนี้ก็คือแน่นอนว่า docs ที่เราแปลเนี่ย มันอาจจะไม่ได้โอเค เพื่อนอาจจะไม่ได้อ่าน เพื่อนอาจจะเป็น dev เค้าอาจจะแบบว่า โอเค มันมาสำหรับ มือใหม่ หรือคนที่เขาอาจจะไม่ได้ สันทัดกับภาษาอังกฤษขนาดนั้น

เสน่ห์ของ GitHub Open Source: เปิด Discussion และเรียนรู้จากผู้อื่น14:20

โอเค มี disccusion เนาะ นี่คือหนึ่งในเสน่ห์ของ GitHub open source คือโปรเจคอันนี้มันไม่ได้ เกิดจริงๆ คนเดียวเนาะ ก็ผมก็เปิด discussion อันนี้ก็คือเป็นหนึ่ง

ในครั้งที่ผมได้คุยกับ Jinjiang ผมบอกว่า ผมอยากเป็น contributor ของ Vue อะ ผมพูดตรงๆ เลย อยากเป็นทำยังไง จริงๆ บอกว่ามันเริ่มจากการแปล docs นี่คือที่มาที่ไปว่าแบบ อยากจะลองแปล docs อยู่เนาะ ก็คือเสน่ห์ของ open source คือคุณสามารถดูได้ว่า โปรเจคหรือสิ่งที่พวกเขาทำอะ สิ่งที่พวกเขาทำอะ มันเริ่มมาจากยังไง มีใครที่มีส่วนร่วมบ้าง เราสามารถมีส่วนร่วม กับ open source ต่างๆ ได้ 24 ชั่วโมง ตัวนี้แบบ เขาไม่สนว่าคุณจะเป็นใคร จะเป็น junior senior ทุกอย่างคือต้องเท่ากันหมด

มุมมองต่อ Issue และ Bug: โอกาสในการพัฒนา15:04

แล้วก็คือหลายๆ คนยังชอบมองว่า open source เนี่ย เอ้ย มี discussion มี issue อย่างเงี้ย มีแบบมี bug มีปัญหาอย่างเงี้ย คือเราจะไปใช้ทำไม เราต้องมอง มันคือ

เราต้องใช้ว่า เรามองปัญหาคนละมุม เรามองปัญหาเดียวกัน แต่บางคนอาจจะมองคนละมุม บางคนจะมองว่า เฮ้ย ปัญหาเยอะอะ บางคนอาจจะมองว่า เฮ้ย ปัญหาเยอะ แปลว่านั่นคือหนทางที่เราจะพัฒนา ให้ framework หรือ library เนี่ย มันใช้งานที่ดีขึ้น นั่นคือเหตุผลของการมีตัวตน ของ open source ในหลายๆ โปรเจค Vue ก็มีหลาย issue ปัญหาเยอะมาก bug คุณก็ไปดูอะ Bootstrap ก็มี Angular ก็มี ทุกๆ library มีหมด ผมกล้าพูดว่ามีหมด ไม่ต้องการพูดหรอก ไปเปิดดูด้วยกันก็มีเป็นพันถูกป่ะ แต่ว่าหลังจากที่มันแก้ issue แก้ไอ้พวกนั้น เรา resolve กันได้แล้ว เราจะได้เห็นของที่ แจ่มกว่าเดิมเสมอ

ตัวอย่างการแปลข่าว Vue 3.5: ความยากของการใช้ภาษา15:58

ตัวอย่างเล่นๆ ผมก็จะชอบแบบแปล แปลข่าว อันนี้ก็คือผมเอาท่อนๆ หนึ่งของ

ของ Vue 3.5 ที่เพิ่งออกมาล่าสุด ตอนนี้ Vue 3.5 แล้วนะครับ Vue ก็มีอายุประมาณ 10 ปีแล้ว เหมือน MUI นะฮะ ยังบอก 10 ปีแล้วนะ Vue อ่ะ

ผมจะแปลอันนี้ อันนี้สำหรับข่าวนะ “In 3.5, Vue’s reactivity system has undergone…” ผมก็ไม่เก่งภาษาอังกฤษขนาดนั้นหรอกนะ “undergone another major refactor that achieved better performance” “significantly improve memory usage 56% and with no behavior changes” ผมก็ต้องแปลเพื่อ เพื่อในการที่เขียนข่าว นี่คือเขียนข่าวเนอะ แน่นอนถ้าผมแปลหมดเนี่ย ลงเขียนข่าว แน่นอนว่า ทุกคนก็จะบอกว่า กูไปอ่านเองก็ได้ แต่ในการที่ผมจะเขียนข่าวได้เนี่ย หรือเขียนใน Vue News Thailand ได้เนี่ย แปลว่าผมจะต้องสรุป ใจความตรงนั้นมาเพื่อให้ทุกคนอ่านและเข้าใจเหมือนกัน อันนี้ก็คือเป็นสิ่งที่ผมแปลแล้วลองเขียน ซึ่งอันนี้คือประโยคจริงที่เขียนใน Vue News Thailand คือจากการทำ refactor ครั้งใหญ่ของทีมงาน Vue คุณจะมองจออย่างนี้ก็ได้ เออ ครั้งใหญ่ของทีมงาน Vue ทำให้ reactivity system ของ Vue นั้น มีการใช้ RAM ลดลงถึง 56% โดยไม่มี behavior changes แต่อย่างใด อ่ะ ทุกคนก็คงเข้าใจ อย่างนี้ทุกคนเข้าใจนะ บางครั้งผมก็คิดในมุมที่ว่า ถ้าผมต้องแปลสิ่งนี้ คือบางคนอาจจะมีแนวคิดที่ว่า แปลให้เป็นไทยทุกอย่างสิ มันจะได้อ่านเข้าใจง่ายขึ้น ผมลองพยายามที่จะแปลเป็นภาษาไทยแบบ ที่แบบแปลภาษาไทยจริงๆ อะนะ ลองแปลดู จากการทำการจัดระเบียบโค้ดครั้งใหญ่ของทีมงาน Vue อันนี้แปลไม่ได้นะฮะ ทำให้ระบบการตอบสนองของ Vue นั้น มีการใช้ RAM ลดลงถึง 56% โดยไม่มีการเปลี่ยนแปลงผลลัพธ์แต่อย่างใด

คือระบบการตอบสนองเนี่ย สำหรับในไทยแล้ว โอ้โห มัน

มันเชื่อมโยงไปไม่ถึง reactivity system เลย ถูกป่ะ มันไม่มีทางที่จะเชื่อมโยงไปถึง ผมก็เลยบอกว่านี่คืองานที่ยากของการแปล เพราะว่าถ้าเราแปลเป็นไทยมาก มากเกินไปเนี่ย เขาก็จะไม่ได้เข้าใจ context จริงๆ แต่ถ้าเราใช้ทับศัพท์ที่มากเกินไปเนี่ย คนที่ มือใหม่ เขาก็จะตามเราทันยากมากขึ้น

การใช้ภาษาไทยและทับศัพท์: คำแนะนำจากเพื่อนนักพัฒนา18:22

ผมก็เลยคาใจมาก ก็เลยโพสต์ลงใน Facebook ส่วนตัวนะ ก็มีหลายคนแนวทางหลายๆ ทางมากเลย แต่ผม ชอบแนวทางของพี่คนนี้ คือเขาเป็นเพื่อนผมเอง ผมไฮไลต์ให้ ข้างหลังอาจจะมองไม่เห็น สรุป ผมสรุปให้ก็คือ เขาบอกว่า เขาก็เคยเจอปัญหานี้ ถ้าแปลเป็นไทย ไทยมากๆ คนไหนก็ไม่เข้าใจ context ถ้าแปลเป็นภาษาอังกฤษก็เหมือนกัน ก็คือคนก็จะไม่เข้าใจ เพราะว่าเขา skim ภาษาอังกฤษไม่ได้ การที่ใช้คำไทยแล้วพูดเป็นภาษาอังกฤษยังจะดีกว่า ใช่ คือต้องเข้าใจว่าในบริบทของภาษาไทยเนอะ หลายๆ คนก็ โดยเฉพาะใน dev อ่ะ เราจะพูด แบบอังกฤษ ภาษาอังกฤษอยู่ในคำๆ ตรงนั้นเยอะมาก เราพูดถึงว่า optimize เราพูดถึงว่า refactor เราพูดถึงว่า folder เราพูดอย่างเงี้ย เราคงไม่พูดว่า จัดระเบียบโค้ด เราไม่เปลี่ยนแปลงเลย เราไม่พูดอย่างนั้นในการทำงานหรอก แน่นอนว่า มันยากอ่ะ แน่นอนว่า ถ้าอย่างเงี้ยว่า

เวลาเราไปต่อยอด ไปทำงานกับต่างชาติเนี่ย โอ้โห เกม ยากมากนะฮะ แน่นอนว่าเรา คือเราไปต่อยอด เราต้องคาดหวังว่า เอ้ย คนที่อ่านน่ะ เขาต้องไปต่อยอดเองได้ด้วย อย่างที่ 3

ดวงก็สำคัญ! Technology Hype Cycle และ Burnout19:34

ดวง luck luck แล้วก็ luck จริงๆ อ่ะ พูดคำเนี้ยบ่อยมาก กับการที่ว่าผมเรียกว่า… คือดวงทั้งนั้นครับ มีแต่ดวง คือต้องใช้ดวง แน่นอน หลายคนก็คงหาวิธีเพิ่มดวง แต่ละคนเนาะ ก็แน่นอนว่า ถ้าพูดแบบ productivity เนาะ ก็ต้องใช้ความพยายามนะครับผม อันนี้ก็มาพูดถึงเรื่องของ… อันนี้ผมชอบกราฟนี้มาก ของพี่ Evan You เขาพูดถึงเรื่องของ technology hype cycle คือ แน่นอน คนที่ทำ open source อ่ะ มันจะมีจุดที่ trigger เทคโนโลยี ตอนแรกก็เริ่มมาก็จะเริ่มไต่ จนถึง peak of inflated expectation มันจะมีจุดที่ขึ้น แน่นอนว่าพอมันไปถึงจุดตรงนั้นน่ะ มันจะเจอบั๊กหรือเจอทางตัน คือคุณต้องเข้าใจว่า ถ้าเราเจอปัญหา ก็ถามเพื่อนสิ แต่คุณอย่าลืมว่า open source หรือ project บางอันน่ะ บางคนทำคนเดียว คือเราเจอในสิ่งที่เรา เราจะเผชิญในสิ่งที่แบบ คนทั่วโลกอาจจะยังไม่เจอ เพราะว่าเราเรากำลังสร้างสิ่งใหม่ ถูกไหม? แน่นอน เวลาเราทำงานอยู่ เราติดปัญหา เรา search อะไรใน Stack Overflow แต่แน่นอนว่า พอมันเป็นสิ่งที่เรา เรากำลังเผชิญอยู่คนเดียวอ่ะ Stack Overflow บางทีช่วยอะไรไม่ได้ เพราะว่าแน่นอน เพราะว่า Stack Overflow ส่วนมากก็จะแบบ ใช้สิ่งนี้แล้วมีปัญหา แต่ว่าเราไม่ได้สร้างสิ่งนี้ แล้วมีปัญหา แล้วมันยากมาก ที่แบบ เค้าเรียกว่าจะ

แก้ปัญหา แน่นอนว่ามันต้องเกิดการ dilution ลงมา เรียกว่า ถ้าพูดภาษาบ้านๆ ก็คือแบบ burnout เออ แบบเบื่อ มันมีจุดที่เบื่อบ้าง แต่พอผ่านจุดนั้นได้ก็คือตรัสรู้ฮะ แน่นอนว่า หลายๆ คนที่ตรัสรู้ จากการเป็น dev ไม่มีใครที่ ramp up ขึ้นมาสูงแบบ มันต้องมีจุดต่ำ แล้วพอจุดต่ำแล้ว เราสามารถที่จะทะยานขึ้นมาสูงได้ มันเรียกว่า ก็คือเรียกว่าเป็นทฤษฎีที่หลายๆ คนเข้าใจ อันนี้ผมจะมาเรียกว่า

กราฟ Technology Hype Cycle ของ Vue.js: จากจุดพีคสู่การเรียนรู้21:34

มาอธิบายในมุมของพี่ Evan You แน่นอน ตอนที่เป็นจุดแรกอ่ะ ก็คือจุดที่ตอนที่ Vue.js เกิดมา ตอนที่ Vue 1 กับ Vue 2 เนี่ย ก็คือเป็นจุดที่ ถ้าใครตาม Vue.js คือเป็นจุดที่ จุดพีคเลยของ Vue.js คือ Vue 2 คือแบบว่าทุกคนเรียกว่าหันมาสนใจ อย่างที่เมื่อกี้เห็นหลายๆ คนเนาะ Vue 1 ทุกคนอาจจะยังไม่เคยใช้ แต่ถ้า Vue 2 เนี่ย บางเริ่มยกมือแล้ว เพราะมันจุดพีค จุดหนึ่งของที่หลายๆ คนเริ่มใช้ แล้วก็จุดที่ burnout หรือ self-doubt ลงมาเนี่ยก็คือ ตอนที่ Vue 3 เปิด ทำไม Vue 3 เปิดถึง burnout หรือมันดาวน์ เพราะว่าตอนที่ Vue 3 เปิดมา มันคือความที่แบบว่า บั๊กมันเยอะมาก migration cost สูงมาก สำหรับผม ผมแนะนำว่า ใครที่มี Vue 2 อยู่แล้วอยากใช้ migration Vue 3 ผมแนะนำทุกคนเลยว่า

ขึ้นโปรเจคใหม่ แล้วเขียนใหม่เถอะ คือค่อยๆ ก๊อบแล้วเขียนใหม่ ผมว่าไวกว่า ไวกว่าที่จะ migrate ตาม doc เค้า นี่ผมก็กล้าพูด สนุกกว่าด้วยฮะ แล้วหลังจากนั้น พอ คือหลังจากที่เค้าผ่านในช่วงที่แบบว่า เค้า balancing ได้แล้ว เค้าเริ่มที่จะ โอเค เค้าเริ่มที่จะรู้แล้วว่า เริ่มเรียนรู้อะไรต่างๆ ซึ่งอันนี้ก็ถามได้จาก talk ของพี่ Evan You เยอะมาก คือ หลังจากที่เค้าเรียนรู้แล้วว่า การแก้ bug การ… ก็คือจะอยู่ในช่วงของที่ balancing ก็คือค่อยๆ ขึ้นเรื่อยๆ ความ peak ของ Vue.js ก็คือคุณจะเห็นว่าแบบ มันค่อยๆ ที่จะมาเรื่อยๆ มาเรื่อยๆ มาเรื่อยๆ ก็บอกให้ดูเลยว่า open source แบบ ในโลกเนี่ยก็มีเป็นล้านนะฮะ แต่ว่ามีแค่ 1% ที่แบบว่ามันอยู่รอด แน่นอนว่า

คือ open source อ่ะ ใครๆ ก็เปิดได้ คุณอยู่ คุณกำลังฟังผมอยู่อย่างเงี้ย คุณก็สร้าง GitHub ปึ๊บๆ คุณก็ คุณก็สามารถที่จะสร้างขึ้นมาได้แล้ว มันง่ายมาก แต่การที่มันจะอยู่รอดแบบมีคน maintain มีคนใช้นู่นนี่นั่นน่ะ มันแค่น้อยมาก แค่ 1%

กล้าที่จะฉีกไอเดียและเริ่มต้นใหม่: อย่าเพิ่งท้อ23:27

อันนี้คือคำพูดของจริงๆ ที่ผมเรียกว่า ตอนช่วงที่ตัดสินใจจากเครื่องดื่มสีทองก็ เอาประโยคนั้นมาให้พวกคุณได้นะ ก็นี่แหละคือประโยคที่พี่ Jinjiang มาบอกผม

แต่อันนี้ผมบอกเอง ก็คือคุณต้องกล้าที่จะฉีก ฉีกไอเดีย หรือฉีก ฉีกโปรเจคของคุณซะ คือถ้าคุณรู้ว่ามันไม่เวิร์ก เขียนใหม่ทำไม อันนี้คือ open source แต่ไม่ใช่งานจริงนะ ไม่ใช่แบบ เฮ้ย ไม่เวิร์กว่ะ ไม่ได้ล่ะ เอาออกเป็น open source นะ ไม่เวิร์กว่ะ ไม่ได้ล่ะ คุณฉีก ทำใหม่ และลบ ทำใหม่

เรียกว่าอย่าเพิ่งท้อ ผมก็บอกอย่าเพิ่งท้อ ฉีกแล้วทำใหม่ซะ ดีกว่า

Push โปรเจคขึ้น GitHub Public: สร้าง Portfolio ตั้งแต่วันนี้24:09

โอเค คืออันนี้ผมจะบอกว่า ผมมีโปรเจคเป็นร้อยเนอะ แล้วผมก็เรียกว่ามีทั้งอันที่ อันที่แบบงามๆ แล้วก็อันที่เขินๆ อันที่เละเทะบ้าง

ก็ push ขึ้น public ซะ ก็ผมบอกแบบ สำหรับถ้าใครที่น้องๆ แบบ เพิ่ง เอ่อ เพิ่งจบมา หรือลองๆ แบบ อะไรนะ— ขอโทษ ไมค์ที่มือชอบไปโดน ถ้าใครที่แบบเพิ่งจบมาเนอะ หรือแบบว่าเรียนอยู่มหาวิทยาลัยจะดีมาก คือผมแนะนำเสมอว่า โปรเจคเล็กๆ น้อยๆ อย่าง tutorial ต่างๆ To Do App อ่ะ คุณ push ขึ้นบน GitHub แบบ open source ไปเลย ก็ push ขึ้นไป อย่า push node_module ขึ้นนะ ไม่เอานะ ignore ก่อนนะ

ignore ก่อนนะ ignore node_module อะไรพวกนี้ก่อนนะ คือแน่นอนว่าคุณอาจจะคิดว่าทำไปทำไม แต่ว่าวันหนึ่งวันที่คุณอยากจะมี portfolio เล็กๆ อ่ะ มันมีประโยชน์มาก เมื่อคุณจะไปสมัครงานหรืออะไรอย่างเงี้ย คือที่ผมรู้มาในแบบบริษัทต่างประเทศอ่ะ คือบางคนน่ะ เนี่ย เขาอ่ะ บาง แบบด้วยความแบบ

บางคนเขาไม่ดู LinkedIn เขาดูแค่ GitHub คุณ user อะไร เขาก็ไปดูแล้วว่า คุณมีผลงานอะไร เขาดูบ้าง อะไรอย่างนี้ คือเป็นอย่างนั้นจริง อันนี้ก็บอกเผื่อไว้สำหรับ ถ้าคุณมี project คุณไม่ต้องอาย ถ้าไม่ใช่โปรเจคที่มันสุ่มเสี่ยง

อะไรที่มันไม่มีความเสียหายกับ ในเรื่องของทางกฎหมายนะ พุชขึ้นไปเลย อย่าลืมเอา API key ออกนะ อันนี้ไม่ได้นะ ก็ไม่ต้องอายครับ พุช public ขึ้นไปเลย คือ มันไม่มีคนมานั่งดูโปรเจคคุณหรอก ถ้าคุณไม่ได้ไปสมัครงาน หรือคุณไม่ได้ ไม่ได้เกี่ยวข้องอะไรขนาดนั้นน่ะ คนที่จะดูก็คือเป็นคุณที่กลับไปดูว่า เอ้ย ก่อนเนี้ยเราเคยทำสิ่งนี้มา และมันเป็นพอร์ตที่ดีมาก

สิ่งที่ได้เรียนรู้จากการทำ Open Source: เติมเต็มตัวเองและสร้าง Legacy26:06

เมื่อกี้พูดถึงแบบสิ่งที่ต้องรู้นะ แล้วที่ open source ที่ผมทำมา ผม ผมได้รู้อะไรมาบ้างวะ พวกมีแต่ดวง มีแต่อะไรก็ไม่รู้ มีแต่สิ่งที่ต้องรู้ แล้วผมได้รู้อะไรบ้างจากสิ่งนี้ อย่างแรกคือมัน fulfill myself นะ คือแบบมันค่อนข้างที่จะเติมเต็มผม คือรู้สึกว่าบางครั้ง เดี๋ยวก่อนที่ ผมต้องเล่าให้คุณฟังก่อน ผมว่าผมเป็นคนที่ติดเกม ติดเกมมาก เออ ค่อนข้างติดเกม แต่แบบว่าพอแบบ เราเปลี่ยนจากเล่นเกม เออ ลองแบบ คือ ลองเรียกว่าบังคับตัวเองลองมา ลองแก้ GitHub Issue สักอันนึงอ่ะ แล้วมันรู้สึกว่ามันฟินมาก ถ้าพูดภาษาบ้านๆ มันคือมันฟินมาก แล้วมันค่อนข้างจะภูมิใจเวลาเราได้เห็น…

บั๊กของเรามัน… เอ้ยไม่ใช่บั๊กของเรา— สิ่งที่เราแก้ มันทำให้ชีวิตของคนอีกเป็นล้าน มันใช้งานง่ายขึ้นอะไรอย่างเงี้ย ก็รู้สึกว่า เอ้ย มัน มันรู้สึกว่ามันฟิน มันเหมือนเป็น legacy บางอย่าง ที่เราสามารถที่จะ อวดใครก็ได้ เราจะไม่ต้องสนเรื่องของ privacy เนาะ แน่นอนว่า คือเราสามารถที่จะเอา project ของเราเนี่ย อวดกับใครก็ได้ เราไม่สามารถที่จะเอา project ของในบริษัทอวดใครได้ อันนี้แบบทุกคนก็น่าจะรู้

ได้ลองอะไรใหม่ๆ และเรียนรู้จากความล้มเหลว27:21

มันได้ลองอะไรหลายๆ อย่าง แต่บางทีก็จะรู้ว่ามันเฟล เวลาเราลอง open source อย่างเช่นแบบคือ แน่นอน เราๆ จะสามารถที่จะลองเทคโนโลยีอะไรใหม่ๆ ได้

บางครั้งผมอาจจะใช้ PNPM อย่างเห็นๆ PNPM ออกมาใหม่ แน่นอน ผมเชื่อว่าหลายคนในที่นี้ ต้องติดกับดักของการที่

ลูกค้าอยากใช้ npm แต่เขาไม่เข้าใจ ทำไมจะไปใช้ pnpm เนาะ แน่นอนว่าอย่างน้อยอ่ะ คือถ้าเราเล่าให้เขาฟังอะ เฮ้ย! pnpm มันดีนะพี่ พี่เห็นไหม เพจ Vue News Thailand เขาก็โปรโมต อะไรอย่างเงี้ย มันดีมาก อะไรประมาณเนี้ย คือพูดไปลูกค้าก็ไม่ฟังหรอก ผมกล้าพูด เพจผมไม่ได้ดังขนาดนั้นนะ อะไรประมาณนี้ ไม่เกี่ยว ไม่เกี่ยว คือไม่เกี่ยวว่า ไม่เกี่ยวว่าคุณพูด แต่ว่า ถ้าอย่างน้อยคุณมีสิ่งที่เขาเห็น เห็นว่า เอ๊ย มันมีของสิ่งเนี้ยเกิดขึ้นแล้วแบบ เอ๊ย โปรเจคมัน pipeline เวลามัน install มัน install ได้ไวมาก โอเค ต่อให้คุณไม่ต้องพูดอะไร แค่เปิด project ดูเลย พี่ดูผม ผมลอง อ่ะ คือแค่ลูกค้าเห็นน่ะ มันแค่นั้นน่ะ เขารู้ว่าอันไหน เขาก็ซื้อแล้ว คุณจะใช้อะไรก็ได้ ในความเป็นจริงคือเวลาคุณคุยกับลูกค้าเนาะ ลูกค้าไม่ค่อยสนใจหรอก ว่าคุณจะใช้ technology อะไร ถ้าเขาไม่ใช่สาย dev จ๋า

คือเขาต้องการอะไรก็ได้ที่คุณใช้แล้ว มันทำให้งานเขามันดีขึ้น คือบางครั้งเราอาจจะเลิกที่จะใช้ library นี้นะ อาจจะต้องใช้ แล้วพอเราใช้ปุ๊บ แล้วเราเพิ่งมาเห็น เฮ้ย มันไม่เวิร์กว่ะ แต่เราไปลองใน production อย่างเงี้ย อันนี้คือแบบว่า แน่นอนว่างาน production น่ะ มันมีทั้ง cost มันเป็น cost ที่มันถอยกลับไม่ได้ แต่แน่นอนใน open source ถ้าเรารู้ว่า เอ้ย ใช้สิ่งนี้กับสิ่งนี้ มันเฟล มันไม่เวิร์ก ก็จบ โอเค เรายังไม่รู้ว่า อ๋อ เราใช้ของสิ่งนี้ไม่เวิร์กกับโปรเจคแบบนี้ว่ะ เราก็ไปต่อแค่นี้เอง

โอกาสมักมาตอนที่เราไม่พร้อมเสมอ29:17

ผมชอบคำพูดของพี่เจน ที่ออฟฟิศครับ “โอกาสมักจะมาตอนที่เราไม่พร้อมเสมอ”

บางคนอาจจะแบบ อยากใช้ Elysia มาก แต่ว่าไม่เคยได้ลองใช้ แต่พอวันหนึ่งลูกค้าบอกว่า อยากได้ อยากเปลี่ยนเป็น library อื่น ปัจจุบันใช้เป็น

Java 8 อยู่ อยากจะเปลี่ยน แต่เราอยากขาย Elysia แต่ลูกค้าบอกว่า เคยใช้ไหม เออ ตัวเราไม่ มันดีมากพี่ ถ้าคุณไม่ให้ลูกค้าเห็นน่ะ คุณก็

คุณก็ต้องสู้กับ Java 8 ต่อไป ซึ่งผมก็เป็นหนึ่งในนั้น ผมก็ยังสู้อยู่นะฮะ ก็ไม่เป็นไร แต่ถ้าวันหนึ่ง ที่มันถึงโอกาส ที่คุณเคยจะใช้ คุณรู้ของสิ่งนี้ work ไม่ work คุณเสนอเลย โชว์ให้เขาดูกับโปรเจคเล็กๆ คือไม่ต้อง advanced มากก็ได้ คุณไม่ต้องเป็น contributor แบบ main contributor… คือแค่นั้นอะ ลูกค้าก็ซื้อสิ่งที่คุณอยากได้อยู่แล้ว เขาแค่เห็น เขาไม่ได้เข้าใจหรอก แต่เขาเห็น เอ๊ะ มันไวขึ้น จบ ปิดดีล คุณได้ใช้ library ที่คุณต้องการ แต่ถ้าคุณไม่มีให้เค้าเห็น ก็ แน่นอน เราเป็นลูกค้าเราก็ไม่อยากซื้อ

Developer Experience สำคัญไม่แพ้ User Experience30:36

developer experience is the key แน่นอนว่าเวลาเราทำ open source อ่ะ คุณเคยเจอไหม คุณเคยทำงาน เคยเจอเปิดโปรเจคแล้วพอ run ปุ๊บ รอ 2 นาทีไหม รอแบบ compile 2 นาที ขนาดงานประจำคุณก็ยังไม่อยากจะทำ… โอ้โห ต้องรอรับ 2 นาที นี่ไม่ใช่เรื่องขี้โม้ ผมมีโปรเจคนั้นจริงๆ นะ รัน 2 นาที แน่นอนว่า พอ open source แล้ว เปิดได้บ้าง ไม่ได้บ้าง มี error ts lint ยังใช้ ts lint อยู่เลย มันไม่มีใครอยากจะทำต่อ ผมก็เลยรู้ว่า ถ้าหากว่า คือถ้ามันไม่สนุกอ่ะ มันไม่มี formatter เนาะ มันไม่มี มันแบบ ESLint ก็โชว์… ESLint ก็โชว์ถูกต้องบ้าง ไม่ถูกต้องบ้าง ไม่มี Prettier แน่นอนว่าถ้ามันไม่สนุก มันไม่สะดวก คนก็ไม่อยากทำ developer experience ก็เหมือน UX คือถ้า โปรดักต์บางอย่าง หรือสินค้าบางอย่างมัน UX ไม่ดี ก็ไม่อยากใช้ โค้ดโปรเจคก็เหมือนกัน developer experience ไม่ดี ลงยาก ติดตั้งยาก ก็ไม่มีใครอยากใช้ ไม่มีใครอยากทำต่อ แน่นอนว่าการที่คุณทำ open source อะ คุณต้องมีวินัยสูงมาก และคุณอย่าลืมว่ายังมีอีกหลายคนที่แบบว่า เขาอยากจะ clone โปรเจคคุณ คือถ้าคุณทำโปรเจคแล้วมันใช้ง่าย clone ปุ๊บ install ผ่าน ใช้งานได้เลย แน่นอนว่า first impression ของคน ถ้ามันดี แน่นอนว่า

อย่างน้อย project คุณ ก็มี contributor เพิ่มมาแล้วอีกหนึ่งคน ถูกไหม แต่ถ้าแบบ ใครไม่รู้ clone มาแล้วรันปุ๊บ error แก้ไม่ได้ เขาก็จากไปแค่นั้นเอง

Developer experience ก็เหมือนบอกเสมอ นี่อาจจะเป็นคำพูด คำของเดฟ คือนั่นแหละ เป็นคีย์อย่างหนึ่งที่ ไม่สำคัญน้อยหน้าไปกว่า user experience ส่วนโปรเจคที่ผมคิดว่า developer experience ดีมาก ตอนที่ผมเป็น first impression ที่ดีมากคือ Vue.js นะ ก็ลองไป clone มาแล้วลองเล่น ลอง install ดู ผมกล้าพูดว่ามันเป็นแบบ เขาเรียกว่า หลายๆ library ก็น่าจะทำตามกัน

เวลาคุณ dev คุณ dev แค่ component แล้วก็ run บน docs เลย เหมือนกับว่าคุณเห็น คุณเขียนอะไร คุณก็เห็นบน docs เลย เป็นอะไรที่เรียกว่า developer experience ที่ดี แล้วก็ run ได้ไว ลงง่ายด้วยครับ ก็ลองไปศึกษาดู ถ้าสำหรับใครที่แบบว่า เอ้ย ไม่เข้าใจแบบ อยากจะรู้ว่า โปรเจคที่ developer experience หรือใช้งานง่ายเป็นยังไง VueUse ก็เป็นตัวอย่างที่ดี

Community: กุญแจสำคัญของ Open Source33:05

ครับ โอเค สิ่งสุดท้ายที่ได้รู้ก็คือ community community ก็สำคัญ คือ open source หลายๆ เจ้า Vue.js ก็เป็นหนึ่งใน open source ที่เรียกว่า community ก็เป็นส่วนสำคัญ

ในช่วงเวอร์ชั่นรอบต้น อันนี้ก็ได้คุยกับ Evan You อยู่ว่า เวอร์ชั่นเริ่มต้น community สำคัญเพราะว่า แน่นอนในตอนแรก คงไม่มีใครที่อยากจะเข้ามาใน ecosystem แบบจากทางบน GitHub issue หรอก บางคนก็ อาจจะยังไม่รู้เข้ามายังไง แต่ว่าด้วย community มันทำให้ทุกคนมาเจอกัน ทำให้ได้พูดคุยกัน main contributor หลายๆ คนของ Vue ก็มาจาก event ตามๆ กันนี่แหละ ผมว่าไม่ใช่แค่ Vue หรอก ผมว่า MUI ก็เป็น React ก็มี ทุกอย่างก็ต้องเริ่มต้น ด้วย community หมดครับ ในไทยก็มี community ที่เยอะมาก

ถ้าอยากส่งเสริม open source หรือถ้าใครอยากมีส่วนร่วม community ต่างๆ โดยเฉพาะ Creatorsgarten พูดขายให้บ่อยๆ เขาจะได้ชวนผมมาพูดบ่อยๆ นะครับ ผมมองว่าถ้าคุณอยากมีส่วนร่วมกับ community ง่ายๆ เลยก็ ไปตาม event ต่างๆ ได้พูดได้คุย แค่นั้นครับ ก็เรียกว่าคุณมีส่วนร่วมกับ event แล้ว

ประกาศสำคัญ! Vue Thai Conf 202434:25

แล้วผมก็เรียกว่ามันน่าจะถึงเวลาสำคัญแล้ว

ใส่เสื้อก่อน ใส่เสื้อก่อน

ตัวนี้ไม่มีในงานนะครับ

อ่า ขอจบแต่เพียงเท่านี้ …ไม่ใช่ เดี๋ยว! เอาครับ 3 2 1 Vue ไทย Conf 2024 ครับผม!

มาเพื่อสิ่งนี้ โอเค นี่คืองาน Vue.js ที่ห่างหายไปนาน

เวลาที่ผมไปงาน ทุกคนจะเดินถามว่า เฮ้ย พี่เวิลด์ครับ เมื่อไหร่จะมีงาน Vue เมื่อไหร่จะจัดงาน Vue เมื่อไหร่จะจัดงาน Vue นี่คือคำพูด ผมจัดแล้วนะ จัดแล้ว วันที่ 27 กันยายนนี้นะครับ เจอกัน… ที่ ราชมัง …จะไม่เจอผม จะเจอกันที่นี่ที่ Cleverse นะครับ Cleverse ถ้าใครที่อยากมาก็ ก็อยู่ที่นี่ต่อนะครับ แต่วันนี้ ต้องกลับบ้านกันก่อน เจอกันที่ 27 ครับผม เดี๋ยว speaker อันนี้เรียกว่า confirm มากันครบแล้ว เดี๋ยวจะ official ให้อีกใน ในอีกไม่กี่วันสองวัน แต่ผมจะไม่อยาก spoil แล้วก็ แต่ผมมั่นใจว่า คุณจะไม่ผิดหวังกับงานนี้ มีของหลายๆ อย่างมาก อยากให้มาเพราะว่า มีของแจก แอบใบ้ว่ามีของแจก

อยากให้มา ลงแล้วอยากให้มา ผมส่งให้ไม่ได้เพราะเดี๋ยวมันแตก คืออยากให้มาทุกคน ใครลงแล้วก็อยากให้มา เรามีสปอนเซอร์ Cleverse ขอบคุณสถานที่ วันที่ 27 ครับผม ก็มี Sigma World Tech แล้วก็มี ODDS Team ครับ แล้วก็ น้ำตาลทราย.com Code Craft เนี่ย ก็…

เวลาผมขอเครื่องดื่ม ผมก็จะบอกจำนวนไปก่อน พี่นาครับ จำนวนคนผมเท่านี้ครับพี่ คือ พี่นาจะจัดให้ผมกี่กระป๋องครับ ขอเท่านี้ พี่นาบอกว่า อืม งั้นเดี๋ยวก็คง ซักประมาณ 3 ใน 4 ละกัน ซักประมาณ… เออ… เอาไป 100 กระป๋องเลย ใครที่เรียกว่าวันศุกร์ไม่รู้จะไปไหนนะฮะ ก็มาที่งานผมได้นะฮะ มาช่วยกัน เรียกว่าช่วยกัน ดื่มนะครับ ผมจะได้ไม่ต้องเก็บกลับบ้านนะครับ แล้วก็ Creatorsgarten ก็ขอบคุณมาก สำหรับใครที่ ถ้ากดบัตรไม่ทัน ก็สามารถที่จะดู live ได้ แต่อยากให้มา แน่นอนว่า

มีเซอร์ไพรส์ที่ผมอาจจะไม่ได้บอกก่อน แต่ว่าผมอยากให้มา

ถ้าคุณมาแล้วคุณจะไม่ผิดหวัง แต่ถ้าคุณ คุณเลือกที่จะไม่มาในปีนี้ ผมกล้าพูดว่า คุณจะเสียใจมาก แต่ปีหน้ายังจัดอยู่ ปีหน้าจัดแน่นอนนะ ไม่ใช่ปีนี้ปีสุดท้าย ก็เรียกว่าปีหน้า ปีหน้าก็อยากจะมีจัดด้วยครับผม จบ session ของเราแล้ว แต่ว่าผมมีของรางวัลมาแจกนะครับ สำหรับใครที่ไม่อยากไปกดบัตร อ๋อ ลืมบอกวันกดบัตร กดบัตรวันที่ วันพุธสีเขียวที่ 18 กันยายน เวลา 20:00 น. ตรงนะฮะ ที่เดี๋ยวจะแปะ URL

แพลตฟอร์มที่จะจดก็คือ Connex Platform นะฮะ สปอนเซอร์ของเรา อยู่เกือบขวาสุดนะฮะ ขวาสุดก็คือ Vue News Thailand เจ้านี้จ่ายน้อยนะฮะ เขาก็เลยอยู่ขวาสุด จริงๆ จ่ายเท่ากันแหละ ก็ save the time ไว้ ผมมีของแบบ เรียกว่ามาแจกเลย 5 ใบ ที่แบบว่าคุณไม่ต้องไปลุ้นเลย ง่ายๆ ใครรู้จักเพจ Vue News Thailand บ้าง ยกมือขึ้น แต่ผมยังไม่แจก ใครที่กดไลก์แล้ว เอามาให้ผมดูหน่อย 2 คน 2 คน เอามาให้ผมดู ตรงนี้เลย

รีบหน่อยดิ เดี๋ยวเพื่อนแย่ง ไลก์จิงป่าว? เฮ้ย คุณยังไม่ได้ไลก์นี่ใช่ป่ะ ผมกดไลก์…ไม่ต้องกดแล้วนะ ไม่ต้องกดแล้วนะ โอเค ขอบคุณมากครับ โอเค เดี๋ยวๆ สองคน ได้สองคนแล้ว เดี๋ยว เดี๋ยวติดต่อผมหลังงาน อีกสองคนแล้วกัน

โอเค

Vue อันนี้ต้องถามแบบเป็นแฟนแล้ว Vue ไทย conf น่ะ ครั้งนี้ จัดเป็นครั้งที่เท่าไหร่

โอเค ใบที่ 3 ครับผม โอเค ผมถามยากเลยนะ ถามยากหน่อยๆ

OK อ่า

Vue 3.5

ถามยาก ถามยากมาก อันนี้ไม่ได้แจกนะ อันนี้ใส่มาเฉยๆ โอเค

คำถามสุดท้าย… อุ๊ย เอาเป็นคำถามไม่ได้ เพราะลืมบอก เอ่อ ก่อนลืมบอกนะ ช่วงวันเวลางานคือ 6 โมง ถึง 4 ทุ่มนะฮะ โอเค เอ่อ

งานนี้

กดตัววันที่เท่าไหร่? อ่า 18 โอเคครับ

เจอกันที่งาน Vue Thai Conf นะครับ 27 กันยายน จองตั๋วไว้ เดี๋ยวภายในพรุ่งนี้จะรีบโพสต์ช่องทางนะครับ ช่องทางก็จะเป็น Connex Platform นะครับ เดี๋ยวจะทิ้ง URL ไว้ให้นะครับผม โอเค ก็เจอกันที่งาน Vue ไทย Conf 2024 นะครับผม ขอจบ session เพียงเท่านี้ครับ ขอบคุณมากครับ

เออ ตัวนี้ไม่เกี่ยวนะ ไม่มีในงานนะ ไม่มี

แต่มีอย่างอื่นแทน