- TLDR: आखिरकार वजह नौकरी ही है
- 3 साल तक Rust में async/multi-threaded code, FFI (
Bindgen का उपयोग), kernel programming (std के बिना) जैसे कई तरह के काम करने का अनुभव रहा
- लेकिन अभी मैंने Rust की जगह C++ developer के रूप में बदलाव कर लिया है
- Rust, C++ की तुलना में बेहतर tools (
Cargo), library ecosystem (Crates.io) देता है, और OOP, exception handling, memory management जैसी जटिलताओं को हटाता है, साथ ही developers को "सही तरीके" से coding करने के लिए प्रशिक्षित करता है
- लेकिन Rust, Betamax और VHS, Mastodon और Twitter के रिश्ते की तरह तकनीकी रूप से बेहतर होते हुए भी, व्यापक adoption हासिल नहीं कर पाया है
- programming language दरअसल developers के बीच ideas पहुँचाने की communication technology है, इसलिए adoption rate उसकी सफलता का मुख्य तत्व है
- दूसरी भाषाएँ भी काफ़ी बेहतर होती जा रही हैं
- Go: Rust की तुलना में learning curve कम है, compile speed तेज़ है, और fast iteration cycle देता है
- C++: Rust को टक्कर दे सकने वाले safety tools और linting tools में सुधार हो रहा है
- JavaScript, WASM: performance improvements Rust के फ़ायदों को कम कर रहे हैं
- Rust के साथ नौकरी पाना व्यावहारिक रूप से मुश्किल है
- Rust hiring ज़्यादातर specialized skills (blockchain, finance, machine learning/data analysis, obscure network protocols, cyber security आदि) को प्राथमिकता देती है, और Rust को अतिरिक्त skill की तरह देखा जाता है
- सिर्फ Rust अच्छी तरह जानना hiring के लिए काफ़ी नहीं है; specific domain knowledge को ज़्यादा महत्व दिया जाता है
- यह subreddit भी समस्याओं में से एक है
- दूसरी language communities (Golang, C++ आदि) की तुलना में Rust से जुड़ी नौकरियों पर चर्चा कम है
- ऐसा लगता है जैसे "Rust Jobs की पहली rule यह है कि Rust Jobs के बारे में बात मत करो", और यह अलगाव भाषा के प्रभाव को सीमित करता है
- कंपनियों के support की कमी का भी ज़िक्र करना चाहिए
- पहले सफल हुई ज़्यादातर भाषाओं को बड़े enterprises का support मिला था
- उदाहरण: IBM(Fortran), AT&T(C), Microsoft(C#), Google(Python), Apple(Swift)
- Rust के पास ऐसा कोई स्पष्ट big-tech patron या sponsor नहीं है जो customer adoption को मज़बूती से आगे बढ़ा रहा हो
- Rust, Lisp, Smalltalk की तरह एक innovational technology है, लेकिन उसके भी लोकप्रिय स्तर पर असफल होने वाले रास्ते पर चलने की आशंका है
13 टिप्पणियां
C++ के replace होने की बात हर बार उठती है, लेकिन हर बार बस बात ही रह जाती है, सालों से..
"Rust, Lisp और Smalltalk की तरह एक क्रांतिकारी तकनीक है, लेकिन इसके भी जन-स्तर पर असफल होने की राह पर चलने की संभावना है"
आखिरी वाक्य से सहमत होना मुश्किल है। यह पहले से ही इंडस्ट्री में काफी इस्तेमाल हो रहा है।
कहा जा रहा है कि Rust से अनंत ऊर्जा भी हासिल की जा सकती है।
https://www.reddit.com/r/ProgrammerHumor/comments/1h3v3uz/freeenergy/
क्या आपको लगता है कि Rust users बेवकूफ़ हैं? (चौंक)
जब Java पहली बार आया था तब भी सभी की उम्मीदें बहुत ऊंची थीं, लेकिन कई जगहों पर इस्तेमाल होने तक उसे काफी समय लगा।
ऐसा लगता है कि C++ इंडस्ट्री खुद ही काफ़ी conservative है। धीरे-धीरे Rust की तरफ़ शिफ्ट होगी।
Rust को सफल होने के लिए Silicon Valley में किसी को Rust का इस्तेमाल करके startup शुरू करना होगा, बहुत बड़ी सफलता हासिल करनी होगी, और Rust developers की hiring करनी होगी..
यह कुछ वैसा ही है जैसे हमारे यहाँ अगर कोई खास language न आती हो, तो नौकरी मिलना मुश्किल हो जाता है।
मुझे लगता है कि VHS और Beta के बारे में लिखी गई बहुत-सी बातें काफ़ी हद तक मिथक हैं।
लोग किसी गैर-मुख्यधारा तकनीक की विफलता को बस marketing की विफलता मान लेते हैं, और कभी-कभी यह भी दावा करते हैं कि गैर-मुख्यधारा तकनीक बेहतर थी। Sony के Betamax के JVC के VHS से हारने पर भी यही हुआ। लोग कहते हैं कि बेहतर Betamax हार गया।
लेकिन कुछ बातें लोग नहीं जानते।
केवल VHS के पास 2 घंटे कवर करने की क्षमता थी। Betamax की क्षमता फ़िल्म जैसी killer content को संभालने के लिए पर्याप्त नहीं थी। 2 घंटे की वीडियो Beta 2 में सपोर्ट हुई, लेकिन यह नहीं जानते कि इसके लिए उसके फ़ायदे, यानी picture quality, की क़ुर्बानी देनी पड़ी।
VHS का mechanical mechanism बेहतर था, इसलिए वह कहीं ज़्यादा तेज़ rewind कर सकता था। Betamax में rewind या fast-forward करके देखना मुश्किल था।
जहाँ PAL में VHS अच्छा दिखता था, वहीं Betamax केवल NTSC के लिए था और PAL में बहुत खराब था। यही वजह थी कि Betamax के लिए यूरोप में सफल होना मुश्किल था।
वस्तुनिष्ठ रूप से देखें तो VHS कहीं ज़्यादा संतुलित solution था।
इसी तरह, मेरा मानना है कि Windows NT, classic Mac OS की तुलना में कहीं ज़्यादा संतुलित तकनीक थी। Apple ने preemptive operating system पेश करने में भी Microsoft से 6 साल की देरी की थी।
सहमत हूँ। +1
अच्छी जानकारी देने के लिए धन्यवाद। यह पहली बार पता चला कि Betamax में rewind करना मुश्किल था।
Hacker News राय
Rust, C++ से तकनीकी रूप से बेहतर है, लेकिन adoption और व्यापक लोकप्रियता ज़्यादा महत्वपूर्ण है
UK में C++ jobs खोजते समय Rust में रुचि की बात तो होती है, लेकिन वास्तव में उसे इस्तेमाल करने के मौके कम मिलते हैं
Rust इस्तेमाल करने के लिए C++ को छोड़ना ज़रूरी नहीं है
Rust के प्रति लगाव hobby projects से शुरू हो सकता है
C language पसंद है और नई भाषाएँ सीखने के लिए खुले हैं
language selection एक design decision है
C और C++ एक खास दौर की भाषाएँ हैं
कुछ लोगों को C++ लिखना सच में पसंद है
Betamax vs. VHS और X vs. Mastodon की तुलना दिलचस्प है
कुछ घंटे पहले ही हार मान ली।
Raspberry Pico के लिए firmware को Rust में बनाने की कोशिश की।
ढंग की troubleshooting मदद कहीं से भी नहीं मिल रही। 😤