NSC รอบนักเรียน #2

จากปีที่แล้ว มาพูดถึงโครงงานปีนี้บ้าง

Inequality

ปีที่แล้วเรื่องที่สังเกตคือว่า โรงเรียนต่างจังหวัดมีโอกาสเข้าถึงปัญหามากกว่าโรงเรียนในกรุงเทพ ปรากฏว่าไม่รู้ว่าปีนี้โรงเรียนในกรุงเทพอ่านบล็อกเก่ามาหรืออย่างไร แต่เค้าแก้ปัญหาได้น่าสนใจมาก

ผู้เข้าแข่งขันที่ส่งมาหลายรอบน่าจะทราบว่า Social Impact เป็นคะแนนก้อนใหญ่มาก (ซึ่งแจ้งในเกณฑ์การตัดสินอยู่แล้ว) สิ่งที่โรงเรียนในกรุงเทพทำในปีนี้แทบทุกกลุ่มคือไปหากลุ่มเป้าหมายจริง หรือผู้เชี่ยวชาญในด้านนั้น (Domain expert) แล้วถ่ายคลิปมาด้วย กรรมการจะได้ไม่ต้องถามว่าอันนี้เคยเอาไปใช้งานจริงแล้วหรือยัง

ในขณะที่โรงเรียนต่างจังหวัดมีอยู่แค่ 3 – 4 โครงการที่ได้คุยกับ Domain expert บางกลุ่มสอบถามไปก็พบว่าขาดแคลน Domain expert ในพื้นที่ด้วยซ้ำ

Video

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

  1. หลายกลุ่มนั่งอ่านที่มาและความสำคัญให้ฟัง ซึ่งยาว เสียเวลา และไม่ได้ใช้วิดีโอเป็นประโยชน์ (ควรจะเขียน script ใหม่ให้เหมาะสมกับสื่อที่ใช้นำเสนอ)
  2. Demo ให้คะแนนยาก เช่นมีคะแนน Look and feel แต่ไม่ได้ถ่าย interface มาให้ดูเลยก็ต้องขอดูตอนซักถาม
  3. ถ้าตัดต่อดีเกินไปจะรู้สึกว่าเป็น visual effect ให้คะแนนไม่ได้เพราะไม่รู้ว่าชิ้นงานที่ใช้ได้จริงมากน้อยแค่ไหน โดยเฉพาะเมื่อกรรมการทดลองเองไม่ได้ ชิ้นงานอาจจะ simulate scenario ทั้งหมดที่แสดงในคลิปให้เหมือนใช้งานได้ไม่ติดปัญหา (นี่คือรายการแข่งซอฟต์แวร์ เราตัดสินจากชิ้นงานที่เสร็จไม่ใช่ไอเดีย) ก็เป็นหน้าที่ของกรรมการที่จะต้องใช้ซักถามสืบให้พอทราบว่าชิ้นงานจริงใช้งานได้แค่ไหน
  4. เนื่องจากทำ video แล้วไม่จำเป็นต้องถ่ายคลิปตัวเองยืนพูดหน้า slide บางคนทำแบบนี้มาแล้วข้อความไม่ชัด หรือเสียงไม่ชัด

สรุปแล้วคิดว่ากลางๆ สุดคือเอา slide ขึ้นเต็มจอ พากย์เสียงทับแล้วตัด demo เข้ามาแทรก (ด้วย screen record จริง ไม่ใช่เอากล้องจับ) น่าจะทำง่ายและดูง่ายที่สุด อาจจะน่าเบื่อแต่ไม่น่าจะเสียคะแนน

ปีหน้าคาดหวังว่าถ้ามีวิดีโออีก มันจะคุณภาพดีขึ้น เพราะปีนี้ฉุกละหุกมาก แต่ไม่มีเลยจะดีกว่า

Scope

ปีนี้กรรมการกังวลกันว่าผู้เข้าแข่งขันเห็นคะแนนแล้วจะสงสัยกันมั้ยว่าทำไมคนนี้ได้อันดับเท่านี้ ทั้งๆ ที่ Scope อาจจะเล็กกว่าของเค้า

ในความเห็นผมว่าเลือก Scope เล็กดีกว่า Scope ใหญ่ มันทำให้โฟกัสชิ้นงานได้มากขึ้น งานมันเลยจะรู้สึกว่าคุณภาพดี มากกว่างานที่ Scope ใหญ่แล้วเสร็จฟีเจอร์อย่างละนิดอย่างละหน่อย แต่ก็ต้อง balance กับ social impact ด้วยว่าถ้า scope งานเล็กแล้วประโยชน์น้อย อาจจะได้รางวัลแต่อาจจะไม่ถึงที่ 2

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

IoT

ปีนี้รู้สึกว่า IoT ถอยหลังลงคลองอย่างชัดเจนมาก ด้วยการมาของ Blynk และ Kidbright

สมัยผมลงแข่งจำได้ว่ามีกลุ่มหนึ่งทำระบบปิดไฟโดยใช้ตู้ Consumer Unit ของ Scheider ที่เสียบ Ethernet ได้ แล้วทำหน้าเว็บเป็น PHP เพื่อควบคุม มันเลยค่อนข้างเป็นโครงงาน software เพราะ hardware ไม่ได้ทำเอง

แต่สมัยนี้โครงงานที่เน้น hardware มีมากขึ้นเรื่อยๆ โดยเฉพาะยุค IoT แต่คิดว่าในมุมเทคนิคแล้วมันน่าจะเกิดจากที่การเขียน IoT ง่ายขึ้นเรื่อยๆ โดยเฉพาะ interface สำเร็จรูปที่ทำให้คนทำเองลดลงมาก หลายๆ ทีมเลือกใช้ Blynk หรือ LINE Notify ซึ่งพวกนี้เราไม่นับเป็นคะแนน interface เลยเพราะใช้ของสำเร็จมาแล้ว

ปัญหาที่ตามมาคือ ในหลายๆ use case ที่เลือกมาใช้แล้วจำเป็นต้องพึ่งบริการ online แต่จุดที่ใช้งานไม่มี internet ต้องติดตั้ง internet มือถือเพิ่มเข้าไปอีก (และด้วยว่าโครงงานไม่ได้ถูกใช้งานจริง เลยไม่เห็นใครคิดแก้ปัญหามาก่อนที่กรรมการจะถาม)

จริงอยู่ว่าการใช้ interface สำเร็จจะลดเวลาทำสิ่งที่เคยมีคนทำไปแล้ว (don’t reinvent the wheel) แต่ยังไม่เห็นมีใครจะใช้เวลาที่ได้คืนมาเอาไปทำอย่างอื่นที่เป็นนวัตกรรมใหม่ๆ โครงการเปิดปิดไฟที่ทำมาเป็นสิบปีแล้วก็ยังมีฟีเจอร์เท่าเดิมแค่เปลี่ยน use case ไปเรื่อยๆ แถมโค้ดน้อยลงเรื่อยๆ จนไม่ต้องเขียน server เองแล้ว

ที่น่ากลัวคือ IoT กำลังจะเข้าถึงมือ end user ด้วย Xiaomi และ Sonoff ที่ทำราคาถูกมาก ปีหน้าถ้ายังมีใครทำเปิดปิดพัดลมตามอุณหภูมิอยู่อีกจะถามแล้วว่าต่างกับการใช้ Sonoff กับ Xiaomi Temperature Sensor อย่างไร (แถมมันยังมี Plant Monitor ปักดินได้ด้วยนะ)

สิ่งที่คาดหวังในอนาคตคือโครงการใหม่ๆ ที่ไม่ใช่แค่เอา sensor ที่ให้มาต่อออก internet มีแจ้งเตือนแล้วก็เปิดปิดไฟได้อัตโนมัติ เช่น…

  • ระบบสำหรับทำให้ end user กำหนด automation ได้เองเหมือน IFTTT
  • data source แบบใหม่ที่ไม่ใช่เซนเซอร์ในกล่อง (ผมเคยลองทำระบบตรวจจับคนในห้องประชุมจะใช้ที่บริษัท มันก็พอได้บ้างนะ แต่สำหรับรอบนักเรียนอาจจะต้อง reframe ปัญหาใหม่)
  • เงื่อนไขการทำงานที่กลับด้านกัน คือ action เกิดบน internet แล้วส่งผลต่อโลกจริง เช่น Printer ที่พิมพ์ Instagram อัตโนมัติ
  • ไอเดีย embedded อื่นๆ ที่ไม่ต้องออก internet เช่น Network monitor หรืองานที่ใช้ peer-to-peer ระหว่างอุปกรณ์ (ปีนี้ก็มีคนทำนะ)

แต่ถ้าเลี่ยงได้น่าจะมีหัวข้อที่ได้ที่ 1 อีกเยอะที่ง่ายกว่าด้านบนนี้

2019: End of a Century

ไม่น่าเชื่อว่า 2020 จะมาแล้ว หลายปีก่อนเรายังคิดว่ามันเป็นอนาคตที่เราจะมีโดเรม่อนอยู่ในบ้านอยู่เลย (แต่โดเรม่อนมาจากศตวรรษที่ 22)

ถ้าจะเขียนบล็อคให้เหมาะสมกับโอกาสนี้ก็คงต้องเขียนว่าในทศวรรษที่ผ่านมามีอะไรบ้าง แต่ก็คิดว่าน่าจะเยอะมากเพราะตอน 2010 เรายังอยู่ม. ต้นอยู่เลย

อย่างหนึ่งที่แน่นอนว่าจะเกิดขึ้นคือความเป็นผู้ใหญ่ – Maturity

ตอนเป็นเด็กเราสงสัยมาตลอดว่ามันแปลว่าอะไร ผู้ใหญ่ก็ตอบได้แค่ว่า “ไม่ใช่ผู้ใหญ่ก็เลยไม่เข้าใจ” เราว่าเค้าไม่เข้าใจเหมือนกับเรานั่นแหละ

เราคิดว่าความเป็นผู้ใหญ่มีอยู่สามอย่าง

หนึ่งคือความเย็นชาต่อโลก เราสังเกตเรื่องนี้ตอนไปเจอเพื่อนบางคนที่ยังรู้สึกว่าเค้าติดอยู่ในโลกมัธยมอยู่จนถึงตอนนี้ เค้ายังทำตัวเหมือนกับตอนที่เราอยู่ม. ปลายกับเค้า เช่นตบเกรียน หรือเล่นมุกใต้สะดือ

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

เรายังพยายามกอดโลกเก่าของเราไว้อย่างแน่นที่สุดเท่าที่จะเป็นไปได้ แต่เราก็ไม่รู้ว่าเราถูกโลกใหม่ดูดกลืนอะไรหายไปแล้วบ้าง ตอนม. ต้นเราวิ่งข้ามอาคารเรียนไปซ่อมคอมอีกอาคารหนึ่ง ตอนนี้เดินผ่านอาคารเรียนเดิมก็อยากวิ่งเหมือนเดิมนะ แต่ความเป็นผู้ใหญ่มันรั้งไว้

สองคือเรามี empathy กับคนอื่นมากขึ้น ตอนเป็นเด็กเราไม่เคยคิดเลยว่าครูในโรงเรียนจะมีโลกของเค้า เค้ามีการเมืองของเค้าว่าคนนี้ไม่ถูกกับคนนั้น และเค้าใช้ชีวิตเหมือนคนปกตินอกโรงเรียนด้วย (ในยุคนั้นถ้ารู้ว่าครูคนไหนเล่นเกมคือแปลกมาก)

เราคิดว่ามันอาจจะมีหลายเหตุผลที่เป็นไปได้ว่าทำไมเพิ่งจะเริ่มมี empathy เราอาจจะ tunnel vision อยู่ก็ได้, เราอาจจะอยู่ในระบบที่ถูกแยก us vs them หรือเพราะโรงเรียนเค้าสอนว่าครูเป็นผู้สูงส่ง ก็เลยมองเค้าเป็นเหมือน NPC ก็เป็นได้ ตอนนี้ก็ยังไม่เข้าใจว่าทำไม แต่มารู้หลังจากเรียนจบไม่นานก็สังเกตได้เลย

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

ก็เลยเห็นว่าถึงจะเป็นเงินส่วนตัวเหมือนกัน แต่พอเป็นเงินเก็บกับเงินที่หามาเอง เราคิดเยอะกว่าเดิมมากเลยนะ

ปีนี้ก็อายุ 25 แล้ว รู้สึกว่าเรื่อยๆ เปื่อยๆ ไม่ค่อยมีอะไรสำคัญเท่าไร

ตั้งแต่ชนะ NSC ตอนม. 6 ไปจนถึงเข้าแข่ง APICTA 2013 ก็รู้สึกว่าอันนั้นคือความสำเร็จที่ภูมิใจมากๆ อันนึง แต่มันก็ผ่านช่วงเวลานั้นมานานแล้ว เราก็บอกตัวเองว่าเราต้องไล่ตามความสำเร็จอันถัดไป

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

เรายังมองไม่เห็นว่าทศวรรษถัดไปเราจะกลับไปตามหาความสำเร็จแบบนั้นยังไง มันน่าจะต้องยอม risk taking มากพอสมควร และตอนนี้ยังไม่กล้าที่จะเสี่ยงอะไรขนาดนั้น

Work

ปีนี้ทำงานมาครบสองปีแล้ว

มาเอะใจตอนทีมมีกิจกรรม ice breaking แล้วเค้าให้เขียนคนที่ “อยู่บริษัทมาเกินสามปี” ตอนนั้นก็เพิ่งรู้ตัวว่าจริงๆ แล้วเราอยู่ที่นี่มาสามปีแล้วนะ – เกือบหนึ่งปีตอนฝึกงาน และงานประจำอีกสองปี

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

New Office, New Desk, New Macbook

ช่วงต้นปีบริษัทย้ายออฟฟิศมาที่ใหม่ ซึ่งมันก็คือย่านเดิมนี่แหละแถมใกล้รถไฟฟ้ากว่าเดิม ก็มีทั้งข้อดีและข้อเสีย อันนึงคือเราเพิ่งซื้อ Nintendo Switch มานั่งเล่นรอออฟฟิศเปิด หลังเล่น Breath of the Wild จบก็วางทิ้งไว้ไม่ได้เล่นแล้ว เพราะออฟฟิศใหม่เปิดตลอด 24 ชั่วโมง (เค้าก็ไม่ได้บอกเราว่าจะย้ายตอนซื้อ Switch ด้วยนะ)

Product ตัวนึงที่เราทำปีนี้คือ Analytics ตอนที่ทำก็ค่อนข้างกังวลมากเพราะเราไม่เห็นด้วยกับ user tracking แต่พอทำบริษัทเองอยู่ก็เริ่มเข้าใจว่าพอไม่ track อะไรเลยก็ตอบคำถามยากว่า marketing เราได้ผลหรือไม่ เราเลยบอกกับ CTO ไปเลยว่าเราไม่เห็นด้วยกับ user tracking จะไม่ทำฟีเจอร์อะไรที่มันรุกล้ำความเป็นส่วนตัว

สุดท้ายสิ่งที่ทำออกมามันก็เหมือนเราปิดตาข้างนึง คือเรามี base platform ไว้ให้แล้วใครอยากจะ track อะไรก็ยิง hit มา มันก็เหมือนยืมมือคนอื่นทำบาปอยู่

CTO ให้ข้อเสนอมาว่าเรา research privacy-preserving tracking ก็ได้นะ (เช่น แบบที่ Mozilla ทำอยู่) แต่เราคิดว่าสุดท้ายถ้าคนในองค์กรไม่ใส่ใจเรื่อง privacy ถึงจะสร้างระบบที่ล้ำหน้าแค่ไหน ถ้ามันไม่มี user tracking เค้าก็คงไม่พอใจกับ product เราอยู่ดี

ก็เป็นประเด็นที่ค่อนข้างกังวลเพราะเราคิดว่านี่คือจรรยาบรรณของวิชาชีพนี้ ตอนนี้บริษัทยังปล่อยผ่านไปได้ แต่เราคนเดียวคงจะเปลี่ยนทั้งองค์กรไม่ได้ (ถ้าเราไม่ทำ ก็คงมีคนอื่นทำ ถ้าไม่มีคนทำก็อ้างว่าขายลูกค้าไปแล้วจะทำให้ยังไง แล้วก็ได้ common ground ที่ user แพ้อยู่ดี) ก็ยังไม่รู้ว่าอุดมการณ์ที่กินไม่ได้จะอยู่กับเราไปนานแค่ไหน


ปีนี้ที่รู้สึกว่าเพิ่มมาคือเขียน Go จริงจังแล้ว (เริ่มจาก Analytics นี่แหละ) หลังจากปีที่แล้วก็เขียนอยู่ขำๆ นิดหน่อย พบว่าพอภาษามันไม่มีท่าเฉพาะตัวมากนัก บวกกับ Go 1.11 module มันเลยรู้สึกว่าจับนิดเดียวก็เขียนเป็นแล้ว ไม่ยากเหมือน Java ที่ community เค้าซับซ้อน เขียนตรงไปตรงมาไม่ได้ต้องใช้ Stream, apply design pattern เยอะๆ

อีกภาษาที่ลองจับอยู่คือ Kotlin ซึ่งเราเคยเชียร์สมัยยังเขียน Android อยู่ ตอนนี้กลับไปก็พบว่าภาษามันมีแต่ magic เต็มไปหมด ใครบอกว่าเขียนภาษาหนึ่งเป็นแล้วไปเขียนอีกภาษาได้นี่อยากให้มาลองเขียน Idiomatic Kotlin

Rust ก็กลับไป revisit อยู่นิดหน่อย รู้สึกว่ามันเปลี่ยนไปมากโดยเฉพาะการที่ try! macro เลิกใช้ไปแล้ว และเราก็ลืม borrow semantics ไปเยอะ เอามาลองเขียนเว็บตัวนึงก็ประทับใจ Compile time checks ต่างๆ แต่มันทำให้เรา Dev ช้ามากชนิดที่ว่าเขียนแอพเดียวกันใน Go ใช้เวลาครึ่งเดียว ตอนนี้ก็เลยไม่คิดว่าจะกลับไป Rust แล้ว เพราะเราไม่มี use case ที่ต้อง Rust เท่านั้นใช้ Go ไม่ได้ด้วย

ที่รู้สึกว่ากำลังจะเป็นปัญหาคือไม่ได้เขียน React นานมาก Django ยังพอได้จับอยู่นิดหน่อยแต่น้อยมากแล้วก็เริ่มรู้สึกว่าลืม React ไปเยอะมาก (ไม่เคยจำ lifecycle ใหม่มันได้เลย) ก็รู้สึกว่าควรจะต้องหาโอกาสมาทำบ้างก่อนที่เราจะล้าหลังไป

แนวทางของ React team ในปีที่ผ่านมานี้ก็รู้สึกว่าเราไม่เห็นด้วยกับแทบทุกอย่างที่เค้าทำ เค้าพยายามจะเป็น library สำหรับทุกคนแม้แต่ Junior dev ที่ไม่เข้า JavaScript จนปรุโปร่ง ซึ่งเราคิดว่าไม่ใช่ปัญหาที่ library ต้องแก้ ก็เลยคิดว่าเราควรจะมองหา library ที่ถูกจริตเราสำหรับงานส่วนตัวของเรา (แต่เพราะเราไม่ใช่ frontend dev ก็อยากได้ component สำเร็จรูปทุ่นแรงพอสมควร) ช่วงกลางปีลอง Svelte ก็รู้สึกชอบแต่ pre-made component มันน้อย และงานเราเขียน Backend มากกว่า ปีหน้านี้ก็อาจจะเขียน VueJS ดูว่ามันเป็นยังไง


ลองกลับไปอ่านบล็อคปีที่แล้วดูก็พบว่าปีนี้แทบไม่ได้ออกงานพูดอะไรเลย สมัยยังเด็กที่บ้านสนับสนุน ไปรับไปส่ง เดี๋ยวนี้โตแล้วก็ต้องไปเอง เลยไม่ได้อยากไปงานไหนเพราะเสียค่ารถแพงและเราไม่อยากไปนั่งฟังเนื้อหาพื้นๆ – ส่วนมาก conference talk เราฟังครึ่งแรกก็พอจะเดาตอนจบได้แล้วนะ

แต่ถ้าเชิญไปพูดแล้วเรามีเนื้อหาพอดีก็ยินดีจะไปอย่างยิ่งเลย ปีนี้ไม่ค่อยมีคนเชิญเท่าไร แล้วก็ปฏิเสธไปงานหนึ่งด้วยเพราะไม่มีเนื้อหาให้ตรงกับธีมงานเค้า ปีหน้านี่ส่งหัวข้อให้ JavaScript Bangkok ไปแล้ว แต่ก็ไม่ได้รับเลือก ก็มีอีกงานของที่บริษัทจะจัดแล้วเชิญคนนอกมา ก็คงไม่ reach มากเท่ากันแต่ก็ยังดีที่จะได้ออกงานบ้าง

ข้อเสียของการไม่ไป Meetup คือก็ไม่ได้เจอผู้เจอคน สมัยก่อนคนรู้จักเราพอสมควร เดี๋ยวนี้คิดว่าเป็นตัวละครลับไปแล้ว

Vendor Relationship

ธีมของงานที่ทำในปีนี้คือ Relationship กับ Vendor ต่างๆ ที่เราใช้อยู่ ซึ่งอยู่ดีๆ ก็ได้มาโดยไม่มีใครมอบหมาย เพราะฝั่ง vendor ขยายทีมแล้วก็เลยติดต่อเรามา

เจ้าแรกเลยคือ Cloudflare ปีนี้ Cloudflare รุกตลาดไทยหนักมาก ซึ่งเราที่เป็นลูกค้าเก่าเค้าก็เลยเริ่มเห็นการดูแลลูกค้าที่ดีขึ้นกว่าเดิมมาก และเพิ่งมารู้ว่าเราเป็นลูกค้ารายแรกๆ ของเค้า เค้าเลยยิ่งอยากได้เราไปขายลูกค้าเจ้าอื่นต่อ

เราค่อนข้างเป็นแฟนบอย Cloudflare จากบล็อคของเค้า ก็ชื่นชมเค้าออกปากหลายครั้งว่าเป็นต้นแบบว่า Company Blog เราควรจะเป็นแบบนี้ ซึ่งบริษัทในไทยน่าจะมีน้อยนักที่จะเขียนเรื่องลึกๆ เกี่ยวกับ product แบบเค้า ถึงแม้ Cloudflare จะมีข่าวไม่ดีอยู่บ้างเช่นกรณีไล่ Daily Stormer ออก (แต่ออกปากว่า Net Neutrality) และ Cloudbleed แต่เราคิดว่าโอเคกับวิธีที่เค้ารับมือกับทั้งสองกรณีนี้นะ

ปีนี้ Cloudflare เชิญไปเยี่ยมออฟฟิศสิงคโปร์ถ่ายวิดีโอแนะนำลูกค้า ต้นปี 2020 น่าจะได้เห็นกัน ก็รู้สึกว่าเป็นโอกาสที่ดีที่จะเป็นหน้าเป็นตาของบริษัทบ้าง

From Marina Bay Sands

อีกเจ้านึงคือ Huawei Cloud ซึ่งก็เขียนลงบล็อคบริษัทไปแล้ว จริงๆ ก็ยังแปลกใจอยู่ว่าเรายอมซื้อเค้า (เพราะบริษัทเค้าก็ไม่ค่อยเป็นตัวเลือกที่ ethical เท่าไรนัก – ถ้ามีตัวเลือกที่ดีพอกันแต่ background check แล้วดีกว่านี้ก็คงอยากจะย้าย) แต่ถ้ามองที่ merit ของตัว product แล้วในตอนนี้ก็ยังไม่มีตัวเลือกอื่นเท่าไรนัก โดยเฉพาะเมื่อ Cloud ตะวันตกยังไม่น่าจะมีแผนเข้ามาในไทยในอีกหลายปีนี้ ถ้าถึงเวลานั้นแล้วก็คงจะต้องพิจารณาใหม่อีกครั้ง


พอทำงานกับ vendor มากๆ แล้ว รวมไปถึงเขียนบทความต่างๆ ด้วย ก็มีคนถามอยู่บ้างเหมือนกันว่าไปเป็น influencer ให้เค้ามั้ย เราคิดว่าเราไม่โอเคกับการเป็น influencer เพราะคิดว่าเวลาเราอ่านรีวิวคนอื่นเราอยากได้ honest opinion เราก็อยากจะให้คนอื่นอ่าน honest opinion ของเรา (โดยเฉพาะที่ใช้งานจริงๆ) มากกว่าจะอวยเพราะเค้าบอกมาให้อวย

Open Source Burnout

หลังจากพยายามทำ Open source ให้ดังมาหลายปี ปีนี้ก็เริ่มพอจะเห็น Pull request ส่งเข้ามาบ้าง มีคนเอา library เราไปใช้ต่อยอดบ้าง

แต่มันก็เริ่มกลายเป็น burden เพราะตื่นมาเราจะเจออีเมล issue มาถามคำถาม, pull request ที่ต้องรีวิว กับ project เก่าๆ ที่ไม่มี passion ทำแล้ว ถึงมันจะน้อยมากแต่มันก็รู้สึกว่าเสียเวลา

สองคือ ไอเดียของ open source คือเราคัน เราก็ทำโปรแกรมมาแก้คันแล้วแจกออกไป คนเอาไปใช้ก็พบว่ามันแก้คันเค้าได้เกือบหมด แต่ไม่หมด เค้าก็เพิ่มฟีเจอร์แล้วส่งเข้ามา ซึ่งมันก็ตกที่เราที่จะต้อง maintain ต่อ และตลอดไปด้วยเพราะคนที่ส่ง patch มาก็ส่งเป็น one off ทั้งนั้นแหละ มันเลยยิ่งไม่มี passion เพราะฟีเจอร์ส่วนมากที่ต้องดูกลับไม่ใช่ฟีเจอร์ที่เราใช้เอง

แล้ว contributor บางทีก็ยิ่งน่ารำคาญ เพราะพอเราจะต้องดูต่อ เราก็บงการเอาว่าอยากได้แบบนี้ contributor ก็บอกว่ามันก็เหมือนกันจะแก้ทำไม สุดท้ายเราก็ไม่กด merge มาจนถึงตอนนี้ เรื่องนี้น่าจะเป็นฟางเส้นสุดท้ายที่ทำให้รู้สึกว่าไม่เอาแล้ว

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

และตอน refactor มันก็ไม่เหมือน refactor project ทั่วๆ ไป มันเหมือน dev ทั้งบริษัทลาออกหมดแล้วแล้วทิ้งไว้ให้เรา refactor – ถึงเราจะเป็นคนที่รู้มากที่สุดแต่เราก็ไม่รู้ทุกอย่าง จะถามใครก็ไม่ได้ จะตัดออกก็จะทำให้คนที่เค้าส่ง PR มาทำงานไม่ได้

Workflow

หลังจากนี้ก็คงคิดว่าจะปรับเป็นแบบ throw code over the wall แล้วคือโค้ดไหนเราไม่หวง เราก็ปล่อย open source เหมือนเดิม แค่ไม่มี support ใดๆ ทั้งสิ้น PR ไม่รับ issue ไม่ให้ส่ง แล้วก็ทำเฉพาะ use case ที่เราจะใช้ก็พอโดยไม่ต้องคิดถึงว่าจะต่อยอดยังไง ถ้าใช้แล้วถูกใจ fork ไป maintain เองแล้วกัน

แต่ที่สังเกตคือมันทำให้เรากลัวการ open source มากขึ้นมากๆ – เรากลัวว่ามันจะดังแล้วคนเอาไปใช้

TipMe

หลังจากปีที่แล้วที่มีแต่เรื่องวุ่น ปีนี้รู้สึกว่า burn out มากๆ กับบริษัท เพราะงานเอกสารต่างๆ ที่มันมากขึ้น และเราก็กังวล bus factor ของบริษัทเหมือนกัน จะไปเที่ยวช่วงต้นเดือนยังคิดแล้วคิดอีกเพราะมีหน้าที่ที่ต้องทำเยอะมาก

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

ก็ยังไม่ได้คิดอะไรมาก อย่างที่บอกว่าอยากทำอยู่แล้วและคิดว่าถ้าเค้าเกิดมันก็จะ hedge เรากับผู้ให้บริการรายอื่นๆ ด้วย

สำหรับปีหน้าคิดว่ายังอยากจะ focus เรื่อง payment อยู่ที่ทำได้ไม่ค่อยดี และปีนี้ก็แทบไม่ได้แก้ไขเลย

Life

ช่วงกลางปีไม่สบาย เหมือนจะเป็นหวัดธรรมดาๆ นี่แหละ แต่ก็เริ่มสัมผัสได้ถึงความ Mortality แล้วว่าใช้ชีวิตตามใจตัวเองแบบนี้ไปเรื่อยๆ มันน่าจะอยู่ได้ไม่นาน

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


อย่างที่เขียนไว้ปีที่แล้วว่าปีนี้จะไปดู Keyaki Republic ปรากฏว่าจองบัตรไม่ได้ ก็กำเงินที่เก็บไว้เฉยๆ ยังไม่ได้ไปไหนเลย

ปีหน้ารู้สึกว่าวงน่าจะต้องมีการเปลี่ยนแปลง ที่เห็นชัดๆ คือรุ่นสองมาแล้วแบบเมินเฉยไม่ได้เหมือนตอนมีวงน้องแล้ว คิดว่าคงยังตามคามิโอชิอยู่ห่างๆ เราไม่อยากรอถึงวันที่เพลงโปรดเราแต่เป็นใครไม่รู้มาเต้น cover แล้วใช้ชื่อวงเดิม ความรู้สึกอยากไปดูคอนเสิร์ทเค้าก็เลยยิ่งน้อยลงไปเรื่อยๆ ก็ยังไม่แน่ใจว่าจะพยายามจองบัตรอีกมั้ย

อีกทริปที่เคยวางแผนไว้คืออยากไปกินราเมง เพราะเราชอบ Tonkotsu Ramen (ซุปกระดูกหมู) แบบฟุกุโอกะ มากๆ (ถ้านึกไม่ออกร้านดังๆ ที่คนไทยรู้จักคือราเมงข้อสอบ – Ichiran Ramen กับ Ippudo ที่เซนทรัลเอามาเปิดในไทยแล้ว) แต่มันค่อนข้างเค็มและมัน กินบ่อยๆ ไม่ดี ครั้นจะไปเดินไล่กินแบบ YouTuber ไม่แน่ใจว่าจะสามารถทำได้ (ถ้าไปกินแล้วมื้อที่สามเลี่ยนอยากเลิกแล้วทำไง?) ก็เป็นแผนที่เขียนไว้อีกอันแต่ไม่รู้ว่าจะได้ทำเมื่อไร แต่คิดว่าปีหน้าน่าจะไป

นอกจากญี่ปุ่นแล้ว เคยมองยุโรปอยู่บ้างแต่รู้สึกว่ามันอยู่นอก comfort zone คิดว่าอยากไปแต่ไม่มีแผนเลยว่าไปทำอะไร ถ้ามีงานที่ส่งเราไปยุโรปได้ก็คงดี เหมือนถีบลงทะเลแล้วไปเอาตัวรอดเอาเอง


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

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

จะเล่นเกมก็ไม่รู้จะเล่นอะไร เดี๋ยวนี้ไม่มี Drive ในการเล่นเกมแล้วนอกจากเกมมันจะฉุดเราเข้าไป พยายามหาสาเหตุก็ไม่แน่ใจว่าเพราะอะไร

ตั้งแต่ปีที่แล้วมาก็จะเล่น StarCraft II Coop เล่นไปจน Level หลายร้อยแล้วก็เบื่อ เพราะ Blizzard ไม่ออก map ใหม่มาเลย (เพราะมันไม่ได้ตังค์) ออกแต่ตัวใหม่ๆ เล่นจนเลเวลเต็มแล้วก็เบื่อกลับไปเล่นตัวเดิม ก็จน burn out แล้วก็เลิกเล่น ไปหาเกมใหม่

เกมใหม่ที่ว่าก็คือ RuneScape ซึ่งเราเล่นตอนสมัย 2012 แต่ตอนนั้นเกมมันปรับระบบใหม่หมดแต่ไม่ปัง ผู้เล่นหายไปเกินครึ่ง

ปรากฏว่าทีม Dev เค้าเอา Version เก่าประมาณปี 2007 กลับมาเปิดในชื่อ Old School RuneScape ซึ่งเราอยากได้เวอร์ชั่น 2011-2012 ที่เราเล่นกลับมามากกว่า (มันเล่นง่ายกว่า)

No photo description available.
พยายามจะเป็นธีมคริสต์มาส

เราใช้เวลาสองเดือนทำใจว่าถ้าจะเล่น Old School RuneScape จะต้องเริ่ม level 1 ใหม่หมดทุกสกิล แล้วตอนนั้นเรา grind ไว้เยอะมาก ยังจำได้ว่าเล่นจนหลับแล้วคอมโขกหัวตอนนอน เดี๋ยวนี้เวลาเล่นน้อยมากแล้วจะกลับไปเลเวลเท่าเก่าได้ยังไง

ปรากฏว่าเกมมันมี Mobile แล้ว และไม่น่าเชื่อว่าทีมพัฒนาเค้าสามารถ port เกมที่สร้างปี 2001 ไปลง Mobile ได้ ซึ่งเวลาเล่นก็จะลำบากหน่อยๆ เพราะมันคือ desktop UI ที่ปุ่มใหญ่ขึ้น แต่ยังต้องคลิกขวาเหมือนเดิม แต่ก็ดีกว่าไม่มี

เราคิดว่ามันเป็นเกมมือถือที่ดีกว่าเกมมือถืออื่นๆ มาก หนึ่งคือเกมมันไม่ interactive มาก เราสามารถเล่นไปกินข้าวไป คุยกับคนอื่นไปได้ สลับแอพไปทำอย่างอื่นก็ได้

สองคือเกมมันไม่มี Microtransaction เพราะในเวอร์ชั่นใหม่มันมีและคนด่า ไปจนถึงเลิกเล่น เวอร์ชั่นนี้อย่างเดียวที่ซื้อได้คือเอา Airtime ไปแลกเงินในเกม (ซึ่งในทางกลับกัน คนที่มีเวลาเล่นแต่ไม่มีเงินก็เอาเงินไปซื้อ Airtime ไม่ต้องเติมเงินเล่นก็ได้) เราพยายามจะเล่นเกมที่เป็น free to play หรือ buy to play เท่านั้น ไม่อยากสนับสนุน freemium

เล่นๆ ไปก็เจอเพื่อนที่เคยเล่นแล้วกลับมาเล่นอยู่บ้าง คนหนึ่งตอนนี้ก็เรียนมหาลัยแล้ว อีกคนก็ไปทำงานต่างประเทศแล้ว แปลกใจดีที่ยังพอจำกันอยู่ได้และยังไม่ลบ friend กัน แต่เค้าก็ไม่ค่อยเล่นเท่าไรแล้ว

เป้าหมายที่มาเล่นรอบนี้ยังเหมือนตอนม. 3 คือเรายังอยากได้ Quest cape อยู่ (ทำ Quest ทั้งหมดในเกม) ซึ่งหลังจากเล่นมา 7 เดือนก็ได้ในวันคริสต์มาสพอดี

Quest เกมนี้ค่อนข้างสนุกและคิดว่า story หลากหลายและน่าสนใจดี เสียดายว่า Quest ดีๆ หลายอันใหม่กว่า 2007 ก็เลยจะไม่มีใน Old School ไม่แน่ใจว่าปีหน้าจะกลั้นใจไปเล่น RuneScape 3 ดีไหม

ที่ไม่โอเคกับเกมคือเราคิดว่าเราใช้เวลากับมันมากเกินไป (เหมือนกับสมัยม. ต้นที่เล่น) โดยเฉพาะการที่เกมมี Daily Activity มันก็เลยต้องทำ ก็คิดว่าน่าจะแบ่งเวลากับมันได้ดีขึ้นหน่อย อาจจะหลังเราได้ 99 Farming แล้วอาจจะอยากเลิกทำ Daily run ไปเลย

Love Story

เป็น section ที่ไม่แน่ใจว่าควรจะเขียนดีมั้ย เพราะมันไม่เหมือนบล็อคที่เขียนสมัยม. ต้นที่เราแอบชอบเค้าโดยที่เค้าไม่รู้ ตอนนี้เค้าอาจจะนั่งอ่านอยู่ก็ได้

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


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

เค้าเป็นคนที่ค่อนข้าง nice เค้าบอกว่าขอเวลาตัดสินใจสัปดาห์หนึ่ง

สัปดาห์นั้นเรากับเค้าคุยกันน่าจะมากที่สุดเท่าที่เคยรู้จักกันมา แล้วเราก็พบว่าเราคุยกับคนที่ไม่ค่อย active ในแชตไม่ได้ (คือเค้าก็ยืนยันว่าไม่ได้ตั้งใจจะเมินอะไรแต่เค้าทำอย่างอื่นมากกว่านั่งจ้องจอแชต) วันศุกร์สัปดาห์นั้นบริษัทมีปาร์ตี้ เรากลับถึงบ้านหลังเที่ยงคืน เค้านั่งรอเรากลับถึงบ้านเพื่อที่จะบอกว่ามันคือเฟรนโซน

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


สัปดาห์ถัดมาหลังจากเหตุการณ์นั้นเราทำงานไม่ได้ เราส่งเมลลางานไปหนึ่งวันโดยเขียนเหตุผลว่า In a bad mood มันกลายเป็น running joke อยู่ช่วงหนึ่ง เพื่อนเราก็เคยเอาไปใช้ลางานอยู่ครั้งหนึ่ง (แต่คิดว่าไม่น่าใช่สาเหตุเดียวกับเรา) ก่อนที่จะลาออก

ผ่านไปเดือนสองเดือน เราก็ไปชอบอีกคนสองคน คือเราคิดว่าในเมื่อเราไม่ได้บอกสักคนเลยว่าชอบเค้า แล้วเค้าก็ไม่ได้บอกชอบเรามันก็ยังไม่มี commitment หรือเปล่า

แต่ปรากฏว่าไม่ใช่ คนหนึ่งในนั้นเค้าอ่านออก เค้าไม่ชอบ และเค้าเพิ่งชอบผู้ชายคนอื่นอยู่

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

มามองตอนนี้ก็ได้แต่สงสัยว่าเพราะว่าอกหักหรือเปล่านะ หรือเพราะเป้าหมายปีนี้เราสูงเกินไป


จากเรื่องนี้เลยเข้าใจอยู่ 3 อย่าง

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

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

สามมันเป็น reality check ที่ดีมาก เราไม่เคยทำอะไรที่ใช้ความพยายามมากเท่าปีนี้ แล้วก็พบว่ามันไม่ได้เกี่ยวกับความพยายาม โปรไฟล์ดีที่สะสมมามันเอาไว้สมัครงานได้ แต่ไม่ได้เอาไว้ยื่นขอเป็นแฟนเค้า​ (และเราก็พบว่าเราไม่ใช่คนดีอย่างที่คิด)


หลายปีก่อนเพื่อนถามว่า “ทำไมถึงอยากมีแฟน”

ตอนนี้ก็ยังหาคำตอบให้ไม่ได้สักที

2019 New Year Resolution

สรุปจากปีที่แล้ว

Date

Spectacularly failed!

Mood Diary

Mood definition ที่เราใช้คือ

  • Rad – ตามชื่อ
  • Good – อารมณ์ดี
  • Good enough – ทั่วๆ ไป (สีเขียวเหมือน Good)
  • Meh – ถ้ามีใครมายุ่งจะกลายเป็น Bad
  • Bad – เหวี่ยง
  • Awful – เอามันออกจากหัวไม่ได้

ดูจากภาพแล้วก็น่าจะพอเดาได้ว่าวันไหนที่เรา in a bad mood

Wishlist

Nintendo Switch ซื้อแล้ว ส่วน Keyaki Republic สุ่มบัตรไม่ได้สองรอบติดกัน อันนี้ก็อยู่นอกเหนือการควบคุมของเราแล้วล่ะ

2020 Prediction

อย่างที่บอกปีที่แล้วว่าพอทำงานแล้วชีวิตมันคาดเดาอะไรไม่ได้เลย

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

เรื่องงานคิดว่าปีนี้ก็คงยังไม่ได้เลื่อนตำแหน่งไปไหน

Peter principle บอกว่า people in a hierarchy tend to rise to their “level of incompetence” เราเริ่มสังเกตว่ามีหน้าที่บางอย่างโยนมาแล้วเรารับไว้ไม่ได้ โดยเฉพาะการที่มีลูกน้องให้ดูแล แต่ตำแหน่งปัจจุบันก็ค่อนข้างสูงแล้วก็เลยคิดว่าน่าจะถึง level of incompetence ในตอนนี้แล้วล่ะ

ก็เป็นเรื่องน่ากังวลบางเวลา แต่บางเวลาก็ไม่ได้คิดอะไรเพราะตำแหน่งกับเงินเดือนก็เปลี่ยนแยกกันอยู่แล้ว และเรายังคิดว่าถ้า Manager ฝืนดันเราไปเป็นตำแหน่ง Management เราน่าจะทำงานได้ห่วยมาก ส่วนสายงาน Technical น่าจะยังต้องรอการขยายตัวของทีมไปอีกหน่อย เรายังเดาการโตของบริษัทไม่ค่อยได้ มันอาจจะเกิดขึ้นในปีหน้าเลยก็ได้นะ..

2020 New Year Resolution

ปีนี้พอจะมี Goal เป็นชิ้นเป็นอันหน่อย

New Blog

รู้สึกว่ารำคาญ WordPress Gutenberg มาก ไปจนถึงเกลียด

  1. มารู้ทีหลังว่ามัน lock in เพราะ Blog เก่าๆ เราเป็น markdown หมดทำให้ย้ายค่ายง่าย (ย้ายมาแล้ว 3 ที) ปรากฏว่า WordPress โยนต้นฉบับทิ้งหมดกลายเป็น HTML หมดแล้ว อันนี้โกรธมาก
  2. Source code highlighter ห่วยมาก มีบล็อคหลายเรื่องที่เขียนไปจนถึงตรงที่จะแสดงโค้ดตัวอย่างแล้วแต่มันแสดงไม่ได้ เลยโยนทิ้งถังขยะ (เพิ่งจะเห็นว่ามันแก้แล้วตอนปลายปี)
  3. เห็น Blog ฝรั่งแล้วคิดว่าถ้ามี aside/footnote เนื้อหาเราน่าจะอ่านง่ายขึ้น (เพราะไม่ต้องเอามาแทรกในเนื้อหา) แต่อยากได้แบบที่ไม่ต้องคลิกเยอะแบบ WYSIWYG editor

ปัญหาของการย้ายออกคือ

  1. จะเอา markdown กลับมายังไง และ Blog ที่ใช้ Gutenberg rich content (เช่นบล็อคนี้ – ใช้ Gutenberg เขียน Markdown นี่แทรกรูป inline ที่ไม่ใช่ block ไม่ได้) จะทำยังไง
  2. Content เก่าจะเอาไปด้วยแค่ไหน บล็อคนี้ตลอด 10 ปี content ย้ายมาต่อเนื่องตลอด แต่คิดว่า content เก่าๆ บางอันก็จูนิเบียวเกินกว่าจะอยากให้กลับไปอ่านแล้ว ควรจะเอาลง ก็ยังเลือก cutoff date ไม่ได้ว่าตอนไหนคือเหมาะ ตอนไหนคือเอาลง ตอนไหนคือล้าสมัยแล้ว อาจจะต้องนั่งคัดมือทีละอัน
  3. บล็อคใหม่ที่จะทำว่าจะใช้ static HTML generator (เช่น Gatsby) แต่ไม่แน่ใจว่ามัน scale กับ content จำนวนมากๆ (100 post+) แค่ไหน ยังไม่เคยเห็นบล็อคคนอื่นที่ใช้ Gatsby แล้ว content เยอะเท่าเรา
  4. server เครื่องที่ใช้อยู่นี้ไม่มี Continuous Deployment จะอัพเดตบล็อคยังไง โฮสต์ที่ไหน (คิดว่ายังอยาก self hosted อยู่ถึงแม้มันจะเป็น static files)
  5. Template แต่ก่อนโหลดเอาได้ ตอนนี้จะใช้ Theme อะไรที่อ่านง่าย คุณภาพสูงแบบ WordPress และไม่ตีกับเนื้อหาเก่า

ก็หวังว่าปีหน้าจะได้ย้ายอย่างจริงจัง จะได้กลับมาเขียน technical blog ได้

เลิกพูดแทรกคนอื่น

ปีนี้สังเกตว่าเวลามีคนมาถาม เราฟังไปนิดนึงก็เข้าใจแล้วแล้วก็จะพูดแทรกเค้าเพราะเราเดาได้ว่าเค้าจะพูดอะไรต่อและไม่อยากเสียเวลาพูด

ซึ่งมันเสียมารยาท ก็คิดว่าควรจะตั้งใจเลิกนิสัยนี้


จริงๆ อยากเขียนอีกอันว่าออกกำลังกาย นอนเยอะๆ ดูแลสุขภาพ ซึ่งคิดว่าควรจะต้องทำแล้ว แต่ถ้าเขียนเป็น goal ไว้ สิ้นปีก็จะได้แต่บอกว่าไม่ได้ทำอะไรเลย