- สรุปสั้น ๆ: สุดท้ายก็เป็นเรื่องงาน
- ตลอด 3 ปีที่ผ่านมา ผมได้ลองทำงานหลากหลายด้วย Rust ทั้งโค้ดอะซิงโครนัส/มัลติเธรด, FFI (ใช้ Bindgen), และการเขียนโปรแกรมเคอร์เนล (ไม่ใช้ std)
- แต่ตอนนี้ได้ เปลี่ยนมาเป็นนักพัฒนา C++ แทน Rust แล้ว
- Rust มีเครื่องมือที่ดีกว่า C++ (Cargo), ระบบนิเวศของไลบรารีที่ดีกว่า (Crates.io) และตัดความซับซ้อนอย่าง OOP, การจัดการ exception, การจัดการหน่วยความจำ ออกไป พร้อมทั้งฝึกให้นักพัฒนาเขียนโค้ดใน "วิธีที่ถูกต้อง"
- แต่ Rust ก็เหมือนความสัมพันธ์ของ Betamax กับ VHS หรือ Mastodon กับ Twitter คือเหนือกว่าทางเทคนิคแต่ยังขาดการยอมรับในวงกว้าง
- ภาษาโปรแกรมคือ เทคโนโลยีการสื่อสารเพื่อถ่ายทอดไอเดียระหว่างนักพัฒนา ดังนั้นอัตราการยอมรับจึงเป็นปัจจัยสำคัญของความสำเร็จ
- ภาษาอื่น ๆ ก็กำลังดีขึ้นมากพอแล้ว
- Go: เรียนรู้ง่ายกว่า Rust, คอมไพล์เร็วกว่า และมีรอบการพัฒนาที่รวดเร็ว
- C++: กำลังพัฒนาเครื่องมือด้านความปลอดภัยและ linting เพื่อรับมือกับ Rust
- JavaScript, WASM: ความเร็วที่ดีขึ้นช่วยลดทอนข้อได้เปรียบของ Rust
- การหางานด้วย Rust มีความยากในเชิงความเป็นจริง
- งานที่รับ Rust ส่วนใหญ่ให้ความสำคัญกับ ทักษะเฉพาะทาง (บล็อกเชน, การเงิน, แมชชีนเลิร์นนิง/การวิเคราะห์ข้อมูล, โปรโตคอลเครือข่ายเฉพาะทาง, ความปลอดภัยไซเบอร์ ฯลฯ) ก่อน และมอง Rust เป็นทักษะเสริม
- แค่รู้ Rust ดีอย่างเดียวไม่เพียงพอที่จะถูกจ้าง เพราะความรู้เฉพาะโดเมนมักถูกให้ความสำคัญมากกว่า
- ซับเรดดิตนี้เองก็เป็นส่วนหนึ่งของปัญหา
- เมื่อเทียบกับคอมมูนิตี้ของภาษาอื่น (Golang, C++ ฯลฯ) มีการพูดคุยเรื่องงานที่เกี่ยวกับ Rust น้อยมาก
- ราวกับว่า "กฎข้อแรกของ Rust Jobs คือห้ามพูดถึง Rust Jobs" และความโดดเดี่ยวแบบนี้ก็จำกัดอิทธิพลของภาษา
- การขาดการสนับสนุนจากองค์กรก็เป็นประเด็นที่ควรพูดถึง
- ภาษาโปรแกรมที่ประสบความสำเร็จในอดีตส่วนใหญ่มักได้รับการสนับสนุนจากบริษัทใหญ่
- ตัวอย่าง: IBM (Fortran), AT&T (C), Microsoft (C#), Google (Python), Apple (Swift)
- Rust ยังขาดผู้สนับสนุนรายใหญ่ที่ชัดเจน หรือสปอนเซอร์ที่ผลักดันการใช้งานฝั่งลูกค้าอย่างจริงจัง
- Rust อาจกำลังเดินตามรอยของเทคโนโลยีอย่าง Lisp, Smalltalk ที่แม้จะล้ำสมัย แต่ล้มเหลวในการเข้าถึงคนหมู่มาก
13 ความคิดเห็น
มีคนพูดว่า C++ จะถูกแทนที่อยู่ทุกครั้ง แต่ทุกครั้งนั้นก็พูดกันมาหลายปีแล้ว..
"Rust อาจเดินตามรอยเทคโนโลยีที่ปฏิวัติวงการแต่ไม่ประสบความสำเร็จในวงกว้างอย่าง Lisp และ Smalltalk"
ประโยคสุดท้ายนั้นผมเห็นด้วยได้ยากนะ ตอนนี้มันถูกใช้อย่างแพร่หลายในอุตสาหกรรมแล้ว
มีคนบอกว่าด้วย Rust อาจได้พลังงานไม่สิ้นสุดด้วย
https://www.reddit.com/r/ProgrammerHumor/comments/1h3v3uz/freeenergy/
คิดว่าผู้ใช้ Rust เป็นคนโง่กันหรือไง (สะดุ้ง)
ตอนที่ Java ออกมาใหม่ ๆ ทุกคนก็คาดหวังกันมากเช่นกัน แต่กว่าจะถูกนำไปใช้อย่างแพร่หลายในหลายแห่งก็ต้องใช้เวลาอีกมาก
ดูเหมือนว่าวงการ C++ เองจะค่อนข้างอนุรักษ์นิยมอยู่เหมือนกัน คงจะค่อย ๆ ย้ายไปใช้ Rust อย่างช้า ๆ นั่นแหละ
ถ้า Rust จะประสบความสำเร็จ ต้องมีใครสักคนใช้ Rust ไปก่อตั้งสตาร์ตอัปในซิลิคอนแวลลีย์แล้วประสบความสำเร็จแบบถล่มทลาย และต้องมีการเปิดรับสมัครนักพัฒนา Rust..
ก็คล้ายกับในประเทศเราที่ถ้าไม่ใช้ภาษาหนึ่งภาษาที่เฉพาะเจาะจง ก็หางานไม่ได้ครับ
ผมคิดว่าบทความเกี่ยวกับ VHS กับ Beta มีความเชื่อผิด ๆ อยู่มากทีเดียว
ผู้คนมักมองความล้มเหลวของเทคโนโลยีกระแสรองว่าเป็นเพียงความล้มเหลวด้านการตลาด และบางครั้งก็อ้างว่าเทคโนโลยีกระแสรองนั้นเหนือกว่าด้วย ตอนที่ Betamax ของ Sony พ่ายให้กับ VHS ของ JVC ก็เช่นกัน ผู้คนชอบพูดว่า Betamax ที่ดีกว่าเป็นฝ่ายแพ้
แต่มีสิ่งที่คนส่วนใหญ่ไม่รู้
VHS เป็นเทคโนโลยีเดียวที่รองรับได้ถึง 2 ชั่วโมง Betamax มีความจุไม่พอสำหรับคอนเทนต์แม่เหล็กอย่างภาพยนตร์ วิดีโอ 2 ชั่วโมงมีให้ใช้ใน Beta 2 ก็จริง แต่คนไม่ค่อยรู้ว่ามันต้องแลกมาด้วยการเสียจุดเด่นเรื่องคุณภาพภาพไป
VHS มีกลไกเชิงกลที่ดีกว่า จึงกรอกลับได้เร็วกว่ามาก Betamax ทั้งกรอกลับและกรอเดินหน้าก็ดูใช้งานได้ยาก
ในระบบ PAL นั้น VHS ดูได้ดี ขณะที่ Betamax ออกแบบมาสำหรับ NTSC โดยเฉพาะ จึงแย่มากเมื่อใช้กับ PAL นี่คือเหตุผลที่ทำให้ Betamax ประสบความสำเร็จในยุโรปได้ยาก
เมื่อพิจารณาอย่างเป็นกลาง ผมมองว่า VHS เป็นโซลูชันที่สมดุลกว่ามาก
เช่นเดียวกัน ผมคิดว่า Windows NT เป็นเทคโนโลยีที่สมดุลกว่ามากเมื่อเทียบกับ Mac OS แบบคลาสสิก Apple เปิดตัวระบบปฏิบัติการแบบ preemptive ช้ากว่า Microsoft ถึง 6 ปี
เห็นด้วยครับ +1
ขอบคุณสำหรับข้อมูลดีๆ เพิ่งรู้เป็นครั้งแรกเลยว่า Betamax กรอกลับได้ยาก
ความเห็นจาก Hacker News
Rust เหนือกว่า C++ ในเชิงเทคนิค แต่การยอมรับใช้งานและการแพร่หลายก็สำคัญ
เวลาหางาน C++ ในสหราชอาณาจักร มักมีการพูดถึงความสนใจใน Rust แต่โอกาสได้ใช้งานจริงมีน้อย
ไม่จำเป็นต้องเลิกใช้ C++ เพื่อจะใช้ Rust
ความชอบต่อ Rust อาจเริ่มต้นจากโปรเจกต์งานอดิเรก
ชอบภาษา C และเปิดกว้างกับการเรียนรู้ภาษาใหม่
การเลือกภาษาเป็นการตัดสินใจด้านการออกแบบ
C และ C++ เป็นภาษาของยุคสมัยหนึ่ง
มีคนที่ชอบเขียน C++ อยู่จริง
การเปรียบเทียบ Betamax vs. VHS และ X vs. Mastodon น่าสนใจ
ยอมแพ้ไปเมื่อไม่กี่ชั่วโมงก่อน
พยายามจะทำเฟิร์มแวร์สำหรับ Raspberry Pico ด้วย Rust
แต่หาวิธีแก้ปัญหาที่พอจะช่วยได้จริง ๆ ไม่ได้เลย 😤