ช่วงนี้มีความสงสัยขึ้นมาว่าคนที่อยู่กับภาษา Static type ตลอดชีวิต เขาจะรู้มั้ยนะว่ามันมีค่าใช้จ่ายมี Trade-off ที่ต้องแลกมาเพื่อให้มี Type safety หรือว่าเขาจ่ายจนชินแล้วจนมองไม่เห็นกันแน่นะ
นี่เป็นสาเหตุที่ทำให้ชอบโจมตี Dynamic type ด้วยหรือเปล่านะ คือเขาเห็นว่ามันไม่ต้องจ่ายอะไรเลย ก็เลยสงสัยว่าโปรแกรมเมอร์ Dynamic type ทำไมถึงไม่ทำโค้ดให้ปลอดภัย Type safe กัน ทำไมไปใช้ภาษาที่ไม่มีความปลอดภัยทางด้าน Type กันแบบนั้น (เพราะเขาไม่เห็นว่าจริงๆ มันมีค่าใช้จ่ายบางอย่าง ที่คนทำ Static type language ต้องจ่ายอยู่)
คือเราว่าบางที Developer ต้องลองภาษา Dynamic แบบเต็มตัวซักทีอ่ะ แล้วเห็นว่าท่าแก้โค้ด ท่าขยับตัว ที่เดิมทีมันทำไม่ได้บน Static Language มันทำได้ง่ายขึ้นบน Dynamic language แล้วมี Use case บ่อยแค่ไหนบ้าง มันถึงจะเห็นชัดว่า "เห้ย ที่ผ่านมา เราจ่ายอะไรไปบ้างนะเพื่อให้ได้ Type safety"
แล้วหลังจากนั้นจะชอบแบบไหนก็ไม่ว่ากัน มันก็แล้วแต่คนนะ และจริงๆ แม้แต่ตัวเอง ก็ยังคิดอยู่ว่างานหลายแบบ ก็จะยังชอบภาษาที่มี Static type มากกว่า (ถึงแม้หลักๆ ตอนนี้จะเขียนแต่ Javascript ก็เหอะ)
แต่คือ อยากให้เห็นก่อนว่าเราจ่ายอะไรไปบ้าง ท่าอะไรบ้างที่เรายอม "ไม่ทำ" เรายอมจ่าย เพื่อให้เกิด Type safety ขึ้นมา
ซึ่งมันจะมองไม่เห็นจริงๆ นะถ้าไม่เคยทำ Dynamic type จริงๆ จังๆ ซักครั้ง