13 คะแนน โดย GN⁺ 2024-11-30 | 13 ความคิดเห็น | แชร์ทาง WhatsApp
  • สรุปสั้น ๆ: สุดท้ายก็เป็นเรื่องงาน
  • ตลอด 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 ความคิดเห็น

 
reagea0 2024-12-03

มีคนพูดว่า C++ จะถูกแทนที่อยู่ทุกครั้ง แต่ทุกครั้งนั้นก็พูดกันมาหลายปีแล้ว..

 
joone 2024-12-03

"Rust อาจเดินตามรอยเทคโนโลยีที่ปฏิวัติวงการแต่ไม่ประสบความสำเร็จในวงกว้างอย่าง Lisp และ Smalltalk"

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

 
ahwjdekf 2024-12-02

มีคนบอกว่าด้วย Rust อาจได้พลังงานไม่สิ้นสุดด้วย
https://www.reddit.com/r/ProgrammerHumor/comments/1h3v3uz/freeenergy/

 
bus710 2024-12-03

คิดว่าผู้ใช้ Rust เป็นคนโง่กันหรือไง (สะดุ้ง)

 
cosine20 2024-12-02

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

 
kandk 2024-12-02

ดูเหมือนว่าวงการ C++ เองจะค่อนข้างอนุรักษ์นิยมอยู่เหมือนกัน คงจะค่อย ๆ ย้ายไปใช้ Rust อย่างช้า ๆ นั่นแหละ

 
dh0rwwit 2024-12-01

ถ้า Rust จะประสบความสำเร็จ ต้องมีใครสักคนใช้ Rust ไปก่อตั้งสตาร์ตอัปในซิลิคอนแวลลีย์แล้วประสบความสำเร็จแบบถล่มทลาย และต้องมีการเปิดรับสมัครนักพัฒนา Rust..

 
clastneo 2024-12-01

ก็คล้ายกับในประเทศเราที่ถ้าไม่ใช้ภาษาหนึ่งภาษาที่เฉพาะเจาะจง ก็หางานไม่ได้ครับ

 
dalinaum 2024-12-01

ผมคิดว่าบทความเกี่ยวกับ 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 ปี

 
woonki 2024-12-02

เห็นด้วยครับ +1

 
ndrgrd 2024-12-01

ขอบคุณสำหรับข้อมูลดีๆ เพิ่งรู้เป็นครั้งแรกเลยว่า Betamax กรอกลับได้ยาก

 
GN⁺ 2024-11-30
ความเห็นจาก Hacker News
  • Rust เหนือกว่า C++ ในเชิงเทคนิค แต่การยอมรับใช้งานและการแพร่หลายก็สำคัญ

    • Rust ดีกว่าในลักษณะคล้ายกับที่ Betamax ดีกว่า VHS, Mastodon ดีกว่า Twitter, คีย์บอร์ด Dvorak ดีกว่า QWERTY, Esperanto ดีกว่าภาษาอังกฤษ, และ Lua ดีกว่า Javascript
    • แนวคิดของ Rust ถูกนำไปใช้ในภาษาอื่นอย่าง Swift ด้วย
  • เวลาหางาน C++ ในสหราชอาณาจักร มักมีการพูดถึงความสนใจใน Rust แต่โอกาสได้ใช้งานจริงมีน้อย

    • งาน Rust ส่วนใหญ่เกี่ยวข้องกับคริปโตฟินเทคและอุตสาหกรรมกลาโหม
    • น่าเสียดายที่ Rust ถูกใช้เพียงในฐานะทางเลือกแทน Ada
  • ไม่จำเป็นต้องเลิกใช้ C++ เพื่อจะใช้ Rust

    • ควรมองหาโอกาสนำ Rust ไปใช้ในโปรเจกต์ใหม่
  • ความชอบต่อ Rust อาจเริ่มต้นจากโปรเจกต์งานอดิเรก

    • การทำอัปเดตครั้งใหญ่ด้วย Rust ในที่ทำงานเป็นเรื่องยาก
    • ควรพิจารณาภาษาอื่นที่มีความปลอดภัยด้านหน่วยความจำก่อนด้วย
  • ชอบภาษา C และเปิดกว้างกับการเรียนรู้ภาษาใหม่

    • การเรียนรู้จากคนที่วิจารณ์ C ไม่ได้ทำให้รู้สึกเชื่อถือ
    • ถ้าจะโปรโมต Rust คนที่ชอบ C ควรเป็นฝ่ายแนะนำ
  • การเลือกภาษาเป็นการตัดสินใจด้านการออกแบบ

    • การประเมินข้อดีข้อเสียของภาษาโดยไม่ระบุกรณีใช้งานและข้อกำหนดของโปรเจกต์เป็นเรื่องไม่สมเหตุสมผล
  • C และ C++ เป็นภาษาของยุคสมัยหนึ่ง

    • ในที่สุด C++ จะถูกแทนที่ แต่ต้องใช้เวลากว่าที่โปรแกรมเมอร์รุ่นใหม่จะก้าวขึ้นมา
  • มีคนที่ชอบเขียน C++ อยู่จริง

    • ภาษาใหม่อย่าง Kotlin ก็ดี แต่สุดท้ายก็กลับมาใช้ C++
  • การเปรียบเทียบ Betamax vs. VHS และ X vs. Mastodon น่าสนใจ

    • ถ้าต้องการภาษาโปรแกรมที่ปลอดภัยและมีความถูกต้องเชื่อถือได้สูง จะเลือก SPARK2014
    • Rust ได้รับความนิยมในหมู่คนสายเทคนิค แต่ SPARK ถูกใช้ในอุตสาหกรรมอย่างอากาศยานและอวกาศ
    • การยอมรับภาษาโปรแกรมเกี่ยวข้องทั้งกับกระแสและข้อดีข้อเสียทางเทคนิค
 
chureee 2024-12-02

ยอมแพ้ไปเมื่อไม่กี่ชั่วโมงก่อน
พยายามจะทำเฟิร์มแวร์สำหรับ Raspberry Pico ด้วย Rust
แต่หาวิธีแก้ปัญหาที่พอจะช่วยได้จริง ๆ ไม่ได้เลย 😤