An Introduction to Coding In Rust for Pythonistas

  Рет қаралды 130,900

ArjanCodes

ArjanCodes

Күн бұрын

Пікірлер: 301
@ArjanCodes
@ArjanCodes Жыл бұрын
👷 Join the FREE Code Diagnosis Workshop to help you review code more effectively using my 3-Factor Diagnosis Framework: www.arjancodes.com/diagnosis
@mrrobotman5299
@mrrobotman5299 Жыл бұрын
Not sure if you're going to get to it but I wanted to comment as I saw this. Cargo (built into rust) is more useful for building and running. Instead of `rustc user.rs` and `./user` you can just `cargo run` and it runs the main binary of your package.
@fojico1234
@fojico1234 Жыл бұрын
It’s nice to see the compiler specially for beginners, magic can be confusing
@ozanmuyes
@ozanmuyes Жыл бұрын
Well even the book doesn’t concern itself with 'rustc', so IMHO it's safe to say that use cargo to build and run - even for newcomers
@MikeM8891
@MikeM8891 11 ай бұрын
Not only compiling, but testing and documentation are easy with cargo.
@whoman0385
@whoman0385 6 ай бұрын
​@@ozanmuyeseveryone should use cargo
@_DRMR_
@_DRMR_ Жыл бұрын
It would be cool to see how we can create rust bindings to python and use rust functions in our python programs. Really get that "best of both worlds" started!
@caseykorver5729
@caseykorver5729 Жыл бұрын
You actually can! See the Py03 project for details.
@_DRMR_
@_DRMR_ 11 ай бұрын
@@caseykorver5729 I didn't say you couldn't, I'm asking for some tutorial content on _how_ to do this. Thank you for the reference. PyO3 (that's an `O` not a `0`) seems like a nice resource for this :)
@lubba64
@lubba64 2 ай бұрын
@@_DRMR_check out let’s get rusty they have a video on it. I remade a python lib in rust a while back for perf
@drz1
@drz1 Жыл бұрын
Yes more Rust please. But also continue with Python. The two together are a dream team.
@NoelTanner
@NoelTanner Жыл бұрын
More rust content please! I'm rewriting nearly all my python code in Rust. There is a extensive amount of CS concepts that I have to learn along the way. But in the process of being a better rust developer, I'm becoming a better developer overall!
@learning_rust
@learning_rust 11 ай бұрын
Rust makes you understand the stack and the heap, and pass by value v pass by reference, traits confused the hell out of me at first though! : )
@snippletrap
@snippletrap 11 ай бұрын
You should jump into C before Rust IMO
@python360
@python360 11 ай бұрын
@@snippletrap 100% agree, despite being a big Rust fan.
@TVDaJa
@TVDaJa Жыл бұрын
More of this! I loved your python Videos. They helped me so much to build a strong foundation. Since then I have taken a more „rusty“ path and would really love for you to make more videos in that area
@astronemir
@astronemir 11 ай бұрын
Arjan, this content is extremely valuable and rare. There are millions of programmers who mainly or only know python (say they came from data/sciences etc.) You’ve taught them python and now you can introduce languages from a “pythonista’s” PoV. Which unlocks a whole new ecosystem for your viewers. Usually these language guides aren’t written for python users so it is double valuable.
@austinraney
@austinraney Жыл бұрын
I really wished you would have mentioned rust up for installing and managing your rust versions and also cargo. The tooling around rust is a major reason why I and so many others are drawn to the ecosystem! Great to see this though! Keep it up
@robbybobbyhobbies
@robbybobbyhobbies Жыл бұрын
Very timely for me. Just switched my learning effort from Python to Rust. Borrowing and lifetimes are doing my head in so any content focused on those gnarly aspects would be much appreciated.
@mr.bulldops7692
@mr.bulldops7692 Жыл бұрын
Those are the two hardest concepts for fledgling Rustaceans. Build a project with Rust, and it will be second nature by the end.
@robbybobbyhobbies
@robbybobbyhobbies Жыл бұрын
@@mr.bulldops7692 Thanks for the encouragement. I'm in the middle of a project right now and it's gradually clicking, but it's always good to get plenty of perspectives to make sure you're not missing something. I've been swearing at integers today, finding arithmetic between usize and isize unnecessarily annoying :). Got there at 4:59pm, thank goodness.
@TheStickofWar
@TheStickofWar Жыл бұрын
What part specifically is doing your head in?
@robbybobbyhobbies
@robbybobbyhobbies Жыл бұрын
@@TheStickofWar it would take too long to describe, but lifetimes are not intuitive to me. I use the Rust reddit, I've got The Book (plus the O'Reilly one) and I'm getting there. But there's definitely a steeper learning curve for this than Python (or Elixir, the language I've made a living from most recently).
@JeremyHaak
@JeremyHaak Жыл бұрын
@@robbybobbyhobbies I think one key thing that is important when developing in Rust is having a clear data model. I found that I never really had to think about that in Python while moving over to Rust required that I always think about ownership when planning how I approach a problem. It becomes more intuitive with time.
@williamdroz6890
@williamdroz6890 Жыл бұрын
With PyO3 and Maturin, you can seamlessly expose your rust code as python modules. Very useful when you have an existing python codebase, so you can rewrite the slow modules without modifying how they are used.
@maleldil1
@maleldil1 Жыл бұрын
​@@ytfeelslikenorthkoreamake sure you have proper benchmarks in place. Rust is faster, but the foreign function interface (FFI) isn't free. Depending on your problem and data size, you might spend more time converting back and forth from Rust to Python that you're better off with pure Python. As with everything related to performance, always measure.
@mNikke
@mNikke Жыл бұрын
Ive been looking into Rust, but a lot of stuff for "speed" have been written in C++. I dont quite understand yet, why I should learn Rust over C++ ?
@etc1702
@etc1702 Жыл бұрын
​@mNikke It is usually a lot more safe, there is a lot less chance of getting issues like segmentation faults, memory leaks, etc.
@isodoubIet
@isodoubIet Жыл бұрын
@@mNikke C++ is much better for this. It's a more flexible language and the safety stuff typically won't buy you anything because the kinds of code you'll be writing will be by its nature restricted in scope. It's also much easier to write for performance, which is typically why you'd want to do this in the first place (think gpu, simd, etc), and the ecosystem is much, much richer.
@isodoubIet
@isodoubIet Жыл бұрын
@@etc1702 Rust gives you precisely no help when it comes to memory leaks. It's exactly as easy to write a memory leak in Rust as in C++. What it can prevent are things like use-after-frees but those are not very likely to be an issue when you're implementing performance-critical bits of a library to be called from python anyway. Also, since we're in the "performance" regime, the proportion of "unsafe" Rust will be correspondingly greater, which means its advantage is muted compared with the use of Rust for more large scale system design.
@Golgafrincham
@Golgafrincham Жыл бұрын
Very nice timing! I started reading up on Rust during the Christmas break and I kind of like it. Used to do some coding in C, so quite familiar with some of the differences to Python. Would be awesome if you would cover more rust, especially bridging Python and Rust.
@FloOwey
@FloOwey Жыл бұрын
The timing of this is insane. Just started to get my toes wet with Rust and Tauri a few days ago!
@ArjanCodes
@ArjanCodes Жыл бұрын
I'm glad to hear! Hope the video was useful :)
@alejandroenriquez8508
@alejandroenriquez8508 Жыл бұрын
Right time!!! Wow, I am a python developer, use Python every single day but now learning Rust!! Thank you!!!
@ArjanCodes
@ArjanCodes Жыл бұрын
I'm happy this video came out at a good time for you!
@alijoumma
@alijoumma Жыл бұрын
please make a series on how to do things in Rust for Python programmers, covering things like logging, error handling, async await, context managers etc... there are a lot of youtubers that are specialized in Rust, but very a few specifically target Python programmers who are interested in rust, and there are many, and since your channel kinda does, it will be a perfect opportunity to capture new audience and\or bring back people who already "mastered" Python
@thomaseb97
@thomaseb97 Жыл бұрын
logging is not native to rust, you have to get dependencies via cargo preferably, the "log" crate is very common as an abstraction facade however it doesnt provide any logging, you have to get a logging framework for that, which there are many links in the log crate's docs to find error handling is a complicated subject, but do know you dont have to always match everytime there is plenty methods on Result and Option types and there is a ? operator async is very difficult in rust and most use the tokio crate to help context managers doesnt exist as thet are redundant due to the ownership system, a "context manager" would just implement the Drop trait, if it absolutely needs to
@thegoldenatlas753
@thegoldenatlas753 Жыл бұрын
​@@thomaseb97 async isn't any more difficult in rust than it is in js or C langs
@isaacchen3857
@isaacchen3857 Жыл бұрын
Would LOVE to see more Rust content on this channel in the future... it's my favorite language!
@programming8339
@programming8339 Жыл бұрын
Great video, Arjan and happy to see you deep dive into the Rust ecosystem! Your way of explanation is amazing! I have been following you almost since inception of your channel and it has been great way to learn stuff from an experienced software engineer like you. Recently started learning Rust and was thinking: "Hey only if there is a channel like Arjan's that can teach Rust the same as he does Python...". I think the community here would love to see way more Rust related videos (and why not a whole course on your website) in 2024 dissected and explained in your way. Thank you for all you do man, appreciate it!
@twentytwentyeight
@twentytwentyeight Жыл бұрын
Now this is what I expect from Arjan ❤❤❤ quality as always, unique and thoughtful. Thanks as always
@ArjanCodes
@ArjanCodes Жыл бұрын
Thank you for the kind comment!
@twentytwentyeight
@twentytwentyeight Жыл бұрын
@@ArjanCodes No, no! Thank you! Longtime watcher and student of yours ❤️
@Murder-Junkie_
@Murder-Junkie_ Жыл бұрын
Great timing with this video! I am currently looking into learning Rust as my second language!
@ArjanCodes
@ArjanCodes Жыл бұрын
I'm glad to hear that this video was helpful then!
@bradhuf
@bradhuf 11 ай бұрын
So glad you’re covering rust now too! Your teaching, examples, videography are always so good
@dschenck
@dschenck Жыл бұрын
Great content! Would love to see more how rust and python can integrate with each other!
@ayder
@ayder Жыл бұрын
I like that you are covering rust. Please continue to work on this with your expertise
@balduinlandolt2554
@balduinlandolt2554 Жыл бұрын
Finally a video that's not Python! And very good too, thanks! :) I would definitely watch your Haskell video, if you did any. For future Rust videos, I would recommend using some more tooling (rust-analyzer in VSCode so you don't need to compile to see compiler errors; cargo for running the application so you don't need to compile manually). And it would be worth mentioning how much more streamlined the tooling around Rust is, compared to the Python ecosystem. Some more topics that would be great to cover are algebraic data types (with real, useful Enums), and the borrow checker (which might give Python programmers a headache or two). Hope to see more of that kind of content!
@thisoldproperty
@thisoldproperty Жыл бұрын
This was a great intro to rust. Appreciated the comparison against Python. Really like how compiling shows 'dead code' as this is a feature missing in (native) Python. Looking forward to many more rust videos! Any chance you can demonstrate executing rust from python?
@agustinflames
@agustinflames Жыл бұрын
ML researcher here so most of the time I'm working on python. Having previous experience with C++/C# I had never got to like dynamic typing, but now that HuggingFace has built the Candle framework for Rust, I would really enjoy giving it a try. Pls do more rust :) Thanks for the great content Arjan !
@lysacreationschavula8605
@lysacreationschavula8605 Жыл бұрын
I would surely love you doing more in future
@smoked-old-fashioned-hh7lo
@smoked-old-fashioned-hh7lo 11 ай бұрын
i love rust. we use it at work for some of our backend services with axum. glad to see it getting more coverage.
@79SagiTaurus
@79SagiTaurus Жыл бұрын
@ArjanCodes Please do more RUST videos! Thanks!
@fabricehategekimana5350
@fabricehategekimana5350 Жыл бұрын
Wow Ia want more videos about rust and I like the comparisons made with python (I haven't seen a channel doing this kind of comparisons). Before the version 1.0 Rust implemented classes but switched to another model: Algebraic data types. Rust can still do some mainstream OOP but can't implement inheritance (since composition is prefered in more cases). Python FP is more of an afterthought so it's not as elegant as Rust but his OOP is more convenient for inheritance
@_baco
@_baco Жыл бұрын
I loved the video!!! I've been learning Rust for 2023's Advent of Code (as an excuse to learn the language) and loved the first steps in the language. It was really easy, for me, to understand now Rust's traits, being compared to Protocol/ABC classes in Python. You've chosen a good analogy there, thanks!
@ArjanCodes
@ArjanCodes Жыл бұрын
I'm glad you're enjoying the content!
@samuelkellerhals5942
@samuelkellerhals5942 9 ай бұрын
Agree that this is a super nice avenue to explore. I use Python everyday and have learned lots from your videos. Starting to get interested in Rust though and having it explained from a Python point of view is very helpful!
@janiscakstins2846
@janiscakstins2846 Жыл бұрын
Greeat video. Would be great if you could make a video of implementing a Rust binding for Python. This would show a practical example of creating highly performant python module. Also would be great to see a video on rules of thumb when you would chose rust over python (and in which instances rust would not bring many benefits e.g. i/o being bottlenecks)
@TreyWitteried
@TreyWitteried Жыл бұрын
Brilliantly clean and concise intro to a deep language.
@ArjanCodes
@ArjanCodes Жыл бұрын
Glad you enjoyed the content, Trey!
@papunmohanty5968
@papunmohanty5968 Жыл бұрын
Please please do more Rust videos 🙏🏼 Like the way you explain stuffs. Some concepts are still cryptic but the way you put those makes me dig deeper by my self.
@matthiasmython9638
@matthiasmython9638 Жыл бұрын
Awesome. Love it. Exactly what I was looking for and that's from you
@ArjanCodes
@ArjanCodes Жыл бұрын
Glad you enjoyed the content, Matthias!
@SuperHardik12345
@SuperHardik12345 Жыл бұрын
Really appriciate. Thank you for starting contents on Rust. Hope that I can see more videos on Rust in future.
@ArjanCodes
@ArjanCodes Жыл бұрын
Glad you enjoyed this type of content!
@fuuman5
@fuuman5 Жыл бұрын
I am using Python for nearly a decade now and try to wrap my head around Rust at the moment. So it's perfect to see someone explaining Rust with the Python perspective in mind. Love it! Btw: I subscribed to you when you had 1k subsribers and was one of the first 50 users on discord. Insane growing in that short amount of time 😂 Good job - well deserved!
@ArjanCodes
@ArjanCodes Жыл бұрын
I'm glad the videos have been helpful! Thank you for your continued support :)
@ksrsundar
@ksrsundar 9 ай бұрын
Please do post more videos on rust! Enjoyed watching this one
@samarbid4912
@samarbid4912 Жыл бұрын
I would love to see examples how to use Rust along with Python on some computation expensive operations...
@dawid_dahl
@dawid_dahl Жыл бұрын
I’m a JS/TS dev but I love this channel and this video was certainly no exception! Can you do one more where you go through borrowing and so on as well?
@markcampanelli
@markcampanelli Жыл бұрын
So, SO great that you are taking a look at Rust! Many thanks 😊.
@ArjanCodes
@ArjanCodes Жыл бұрын
I'm happy you enjoyed the video!
@dmitryutkin9864
@dmitryutkin9864 Жыл бұрын
Great! More please!
@Whatthetrash
@Whatthetrash Жыл бұрын
I coded in nothing but Rust for a few months -- gave it a solid try. While I think it's cool, Rust is a large, complex language and trying to solve problems in it I found untenable. As such, I don't find the language good to *play* in (problem solve, iterate, etc.). However, if the problem is already solved and performance needs to be improved, writing a version in Rust could be a valid way to get that performance boost needed (that or C++, either is fine).
@thegoldenatlas753
@thegoldenatlas753 Жыл бұрын
Rust is very structured so you have to know what exactly you want when you start off. You can definitely play around in rust but doing so quickly without planning ahead will just leave you frustrated and refactoring alot, but that's an issue with most lower level langs.
@Zonkin
@Zonkin Жыл бұрын
Nice one Arjan, this video explained more of Rust than most of the 1hr tutorials Ive watched on youtube so far. I think a lot of experienced Pythonistas are now looking to Rust for an entry into «somewhat low level programming».
@ArjanCodes
@ArjanCodes Жыл бұрын
I'm happy you enjoyed the video!
@davidwalschots
@davidwalschots 11 ай бұрын
Two quick notes: 1. Within the impl block you can use `Self` to refer to the type. Thus `fn new(name: &str) -> Self { Self { name ... } }`. Might save some keystrokes and reduces the amount of diffs when renaming a type. 2. `User::new` accepts a `&str` and always converts this into an owned `String`. From the perspective of memory allocation it's recommended to in this case change the `&str` to `String`. That way the caller can decide whether or not to pass an already owned string or create a copy. If the caller has no need for the `String` after calling `User::new`, then you save a copy operation. Be sure to look at the documentation for the `Cow` type for another (less commonly used but sometimes useful) option which is useful in certain cases.
@alin.morosanu
@alin.morosanu Жыл бұрын
Hi Arjan, absolutely loved your introduction in Rust for Pythonistas video. Really enjoying the Python-Rust perspective. More of this would be fab. Keep it coming!
@ArjanCodes
@ArjanCodes Жыл бұрын
I'm happy to hear you enjoyed the content, Alin!
@WebmediArt
@WebmediArt Жыл бұрын
I have limited experience in python but feel comfortable with it. I did read up on rust myself a bit and am exited to learn/try it. So I am very interested in the synergies and potential symphonies one might be able to compose with these two.
@whkoh7619
@whkoh7619 Жыл бұрын
The rust compiler is amazing and helps you avoid errors so nicely. The JetBrains Rust IDE has a great feature to run the program with Command R which makes it very fast to test the program.
@AbdolaMike
@AbdolaMike Жыл бұрын
I'd love to see more Rust as well been trying to improve in it and learn its functional style!
@klmcwhirter
@klmcwhirter 10 ай бұрын
The key feature of rust is the "borrow" concept. Other than that it is mostly like languages that came before it - like C or modula, or ocaml. I'm still not convinced one way or the other after my initial look at rust years ago. Can't wait to see your treatment.
@zactron1997
@zactron1997 Жыл бұрын
Definitely demonstrate how to combine Python and Rust (especially using Cargo). I helped a friend migrate his PhD simulation out of Python and into Rust, and using PyO3 meant he could migrate it one function at a time, rather than a complete rewrite from scratch. In general, I think Rust is the future of complex programming. You have complete control and oversight over what happens in Rust, at the cost of some complexity. Python, JS, etc. shine when the problems can be solved by composing complex functions in a simple way.
@UNgineering
@UNgineering Жыл бұрын
parts of pydantic are written in rust i think, so this is an excellent segue to rust
@aldrickdev
@aldrickdev Жыл бұрын
The core of pydantic was rewritten in rust, now it’s pydantic v2
@codingcrashkurse6429
@codingcrashkurse6429 Жыл бұрын
Interesting you also tried Rust - also thought for quite a while to finally really get into it. My issue currently is that I don´t really know what to build that is also somewhat interesting. I´ve seen that Pydantic uses Rust for it´s core package. Would love to see a little project on Rust for Python Programmers, maybe even something that uses both Rust and Python
@kevinmcfarlane2752
@kevinmcfarlane2752 10 ай бұрын
A good way to learn is to take something you’ve written in Python and then rewrite it in Rust. You will learn something along the way. That’s what I did with a C# program.
@dinoscheidt
@dinoscheidt Жыл бұрын
Hu. I have the same lamp - made me notice that I like this camera framing. Production value is definitely increasing !
@KrishnaAddepalli
@KrishnaAddepalli Жыл бұрын
Yes! Please make more videos on Rust.
@AndreasHejndorf
@AndreasHejndorf Жыл бұрын
Really nice video. Would be great to hear your thoughts on Rust vs GO. In my team we have been using Python for a while, and recently started using Golang for applications that need to be high performant. I found GO to be easier to get started with, also for new team members. Love your content, keep up the amazing work!
@solojazz75
@solojazz75 Жыл бұрын
we are waiting for "Go for pythonistas " now.
@horoshuhin
@horoshuhin Жыл бұрын
`cargo run` for compiling and running in one step. if you use cargo that is.
@br3adina7or
@br3adina7or Жыл бұрын
I use Rust and not Python so I can't really say what language features should've been mentioned for an audience of Python devs, but the one thing I'll mention is that I'd recommend managing your Rust version with rustup (rather than via a package manager) and using Cargo to build your code instead of compiling directly. One of the great things about Rust is Cargo, though I understand why it might not be mentioned in a video more focused on language features.
@kevinmcfarlane2752
@kevinmcfarlane2752 10 ай бұрын
I thought it was ok initially but then if he does a follow-up he should do as you suggest before progressing further.😊
@ravenecho2410
@ravenecho2410 27 күн бұрын
traits are awesome, thats an awesome way to package functionality and contracts!
@ravenecho2410
@ravenecho2410 27 күн бұрын
mode.predict, model.train, model.train_batch, model.serialize, model.read my mind is just O.O
@dmytr0x
@dmytr0x Жыл бұрын
Thank you for the video. I believe in the Rust's bright future. I had an excellent Rust experience in production. It's nothing crazy, just excellent CPU utilisation. Rust could be much more valuable to a developer than most think. I would be glad to see your thoughts and point of view on how to cook it.
@romeorichardson3138
@romeorichardson3138 Жыл бұрын
Awesome video, would love to see you cover more Rust!
@mirandaenergypark5271
@mirandaenergypark5271 Жыл бұрын
Great intro for Rust - thank you! Also the first tutorial I've seen that compares Rust to Python, so interesting... If you are of a mind to do more on Rust, my vote goes with embedded devices and integration with AWS.
@pixelshocker7775
@pixelshocker7775 Жыл бұрын
I've got some dream projects that I'd like to make, and Rust is my first choice of language for now. Still, I'm going to need some additional scripting. You mentioned Rust bindings in Python--well, I'm considering Python bindings in Rust! Anyway, I'm a long time viewer of your channel and would love to see more on Rust and how it relates to Python!
@wadejohnson4542
@wadejohnson4542 Жыл бұрын
Very astute observation, my friend. And so very timely. Some of the new AI frameworks that I am starting to use are built in Rust. I really enjoyed this video. Looking forward to more Rust content from you in 2024. Keep up the excellent work. Stay well.
@ArjanCodes
@ArjanCodes Жыл бұрын
Thank you for the kind comment, Wade!
@RobRitchie-bs1ql
@RobRitchie-bs1ql Жыл бұрын
That was a nice overview - I'd encourage you to do more head to head comparisons in this style. You certainly did not appear to be out of your comfort zone here.
@kevincodes674
@kevincodes674 Жыл бұрын
I am interested in Rust content. I will be building a web application in Rust for a university project soon, so additional learning content is great
@markpaterson2260
@markpaterson2260 Жыл бұрын
started learning rust with AoC this year. Interesting timing for me haha. I'd be down with more Rust basics.
@deeplazydev
@deeplazydev Жыл бұрын
I loved this video, the comparison is great and helped me, thanks! The first time I heard about marcos in Rust was a disgusting idea, as a c++ dev macros are limited to some specific situations and avoided when possible. I need to take Rust with new mindset.
@falsedragon33
@falsedragon33 Жыл бұрын
I already had to switch from C to C++, and that brief phase of C#, we don't speak of. Then, I had to spend a week learning Python, and it was worth it because I could always use C helper files. This seems like deja vu to an old guy like me. I mostly code in bare-bone hardware, so I'll just stick to C and assembly.
@PetrSUsername
@PetrSUsername Жыл бұрын
Really great inteoduction.
@anandptyagi5275
@anandptyagi5275 Жыл бұрын
Thank you very much, I wanted you to explain either GoLang or Rust. However I am learning GoLang now, but I will start Rust too.
@JeanYvesBouguet
@JeanYvesBouguet Ай бұрын
I am not sure if I would lean towards Rust over C++. C++ at least comes with native derived class support without adhoc use of macros. What makes Rust better than C++?
@Mister.BreadBoard
@Mister.BreadBoard Жыл бұрын
Thank you amazing introduction ❤
@ArjanCodes
@ArjanCodes Жыл бұрын
You’re welcome, happy you liked it!
@demolazer
@demolazer Жыл бұрын
Great video idea. As someone who's only really done Python so far, the more complex languages can be rather intimidating. I've delved into C a little and I'm actually finding this rust example a lot harder to understand than simple pointers and references. Can see why it's known to be so hard.
@thegoldenatlas753
@thegoldenatlas753 Жыл бұрын
The great thing about Rust is the compiler helps you. Hell you can write python in it and the compiler will tell you things to change to make it rust, such as the difference between how you make functions.
@rnrbarbosa
@rnrbarbosa Жыл бұрын
Hi Arjan. If you would go further in Python to achieve speed you would in C…but who does that. But with Rust it changes all. Polars/Ruff and lot of other frameworks are being done in Rust. If you do Rust videos in the context of Python enhancement I am totally down for it. Happy new year.
@derekdevs
@derekdevs Жыл бұрын
What kind of keyboard / switches do you have? Sounds so satisfying!!
@illiasukonnik9966
@illiasukonnik9966 Жыл бұрын
Great thanks for an intro
@sergioquijanorey7426
@sergioquijanorey7426 Жыл бұрын
Love the rust content!
@ArjanCodes
@ArjanCodes Жыл бұрын
Glad you liked the content, Sergio!
@RobinSiwach-f7n
@RobinSiwach-f7n Жыл бұрын
Hey great video, I want to know your opinion on mojo which is going to be the general purpose default language for AI development. Also the two language problem talked by Chris lattner, python users can’t contribute to most python libraries because they are not written in python. Using rust instead of c to write libraries for python doesn’t change anything because you still need to learn a new language and python programmers are generally not habitual of good memory management because we have a garbage collector. If you just want a language faster than python for web development and distributed applications than go lang is better choice because it is much for beginner friendly and better cloud integration. Docker and kubernetes are written in go. If you want fast AI mojo seems a good option for python devs. Rust does make sense only for system programming. By using rust for python modules, we are just increasing the two language problem
@michaelmueller9635
@michaelmueller9635 Жыл бұрын
2023 was wild ...first you were skeptical about ai, now you are going for Rust ❤
@ssrello
@ssrello Жыл бұрын
I hope this becomes a series of RUST videos🤞
@andyb2339
@andyb2339 Жыл бұрын
Anyone know what shell autocomplete he is using?
@nilshult6401
@nilshult6401 Жыл бұрын
The big question is Why should I learn Rust? I love Python but it's slow. If I need speed I use C or C++ (my second love)
@theintjengineer
@theintjengineer Жыл бұрын
Same here. The difference is I learned Rust haha. So, yeah, I do write some small stuff in it, but I just freaking love C++ so much. I use C++ even when I maybe, should use Python.
@VKjkd
@VKjkd Жыл бұрын
I’d like to hear more on this take. From R and Python id like to do more lower lever programming but unsure whether to deep dive into K&Rs C book or crack on with Rust. Rust has the polars library so it feels like there is carry over from the get go..
@theintjengineer
@theintjengineer Жыл бұрын
@@VKjkd if it's your first attempt at Low-Level [you haven't done C and/or C++ in that domain yet], then sure, try Rust out. You might stick with the learning for longer - C can be tricky and some can get frustrated very quickly. In my case I already knew C++, Rust was easier to pick since I kind of understood right away why they did some of the things they did and knew all those concepts already. But, as projects grow, Rust becomes as complex as C++, so, Rust isn't thaaaat appealing to us here, and then we just do it in C++ and even get more performance and faster compile times in the end, sometimes. We leave Rust for the smaller projects and services.
@VKjkd
@VKjkd Жыл бұрын
@@theintjengineer Very helpful response, thanks for taking the time. I had always been interested in C++ (especially since R has the rcpp library). It’s good to hear from people who use and love the language given the otherwise ‘bad press’ around CPP I keep seeing online. This bad press didn’t make sense to me given how well entrenched c++ is across industries. I’ll have a go at Rust but keep an open mind.
@theintjengineer
@theintjengineer Жыл бұрын
@@VKjkd, yes. And that press fools a lot of unexperienced folks. We have been launching our Avionics and other critical software in C++ for 7 years now [we had a sort of mixture before] and none of it has had a single crash. Our policy? "Take at least a day each week to keep up with the latest improvements in the language, so we can apply it to our projects; if you need books, a live class, go to a conference, etc. don't worry." We lost a lot of C++98 Folks who didn't feel like learning new things was their thing, but gained people who liked to sit, study and learn things. Our stuff is now full C++20 and beyond. Anyway. All the best. Happy learning.
@Slacker4o
@Slacker4o Жыл бұрын
Amazing content. Just what I need.
@ArjanCodes
@ArjanCodes Жыл бұрын
Glad the video was helpful!
@emperorsixpacks
@emperorsixpacks Жыл бұрын
Thank you, thank you 😊
@ArjanCodes
@ArjanCodes Жыл бұрын
It's my pleasure!
@ronny584
@ronny584 Жыл бұрын
I would love to see something like this for Golang as well.
@abcwarbot
@abcwarbot 9 ай бұрын
would be nice to have a video integrating NIM with python with some networking examples
@pietraderdetective8953
@pietraderdetective8953 Жыл бұрын
Great video on Rust! I enjoyed every moment of it! Currently I'm learning Rust and yeah I can see why all the hype around it. A bit too much boilerplate though for my liking...though not as bad as Java. Can you please do a similar video on Zig? I actually prefer Zig than Rust coz it's closer to C syntax (~ simpler, less boilerplates). I'm really loving these kind of videos ❤
@CossuttaDario
@CossuttaDario Жыл бұрын
A comparison of the differences also with GO, Zig and C++ woudl be amazing! just to get a feel for the use cases and thought process that they are based on!
@d3stinYwOw
@d3stinYwOw Жыл бұрын
Great video! Instead of Rust, I'd rather pick Nim language, much more approachable to python developers, gives similar benefits like speed like rust, but simpler to pick up. Otherwise, because of Rust we have excellent python-centric packages like Ruff and Pylyzer :)
@BillTubbs
@BillTubbs 11 ай бұрын
Would be interested to see your review of Nim as an alternative for complementing Python.
@freecourseplatformenglish2829
@freecourseplatformenglish2829 Жыл бұрын
Keep it coming bro. Create Indepth Rust tutorial for python developer.
@haristan1960
@haristan1960 Жыл бұрын
Thank you for the rust tutorial! Can you cover wasm with rust?
@python_byte
@python_byte Жыл бұрын
You guessed what I wanted, which is get into Rust, but with the perspective from a Python background
@ArjanCodes
@ArjanCodes Жыл бұрын
Great minds think alike! Hope the video helped.
@systemkwiat
@systemkwiat Жыл бұрын
I'm not going to go deep with Rust in the near future, but I really enjoyed that video. :) Thumbs up!
@ArjanCodes
@ArjanCodes Жыл бұрын
Glad to hear you enjoyed the video!
@rw-xf4cb
@rw-xf4cb Жыл бұрын
Managed to dodge DotNet and Java, C++, C# or Golang, now Rust and probably Zig if I procrastinate more will miss these too!
@tacorevenge87
@tacorevenge87 5 ай бұрын
Oh zig is so beautiful
@shS83
@shS83 9 ай бұрын
Like many others in here, I too am in favor for more Rust (or Ross as KZbin automatic closed caption likes to call it) videos for Pythonistas.
@tascsolutions6483
@tascsolutions6483 Жыл бұрын
How does Rust work in relation to other compiled languages (C++, Java, etc...)? Would it be a good start for learning them? Thanks for the great content.
@MrMetalMachine1
@MrMetalMachine1 Жыл бұрын
The easiest of these languages to get into for a Python dev would definitely be Java, because of the automatic memory management and the simplicity of building / compiling your projects. In contrast to almost all other languages Rust uses a strict set of rules (based on the concepts of ownership and borrowing) to ensure memory safety. If your code does not comply with these rules it will fail to compile. At first, this can make the language unintuitive, as if you are jumping through hoops just to satisfy the borrow checker, instead of focussing on the actual functionality. Syntactically, Rust is more "modern" than Java or C++, with features like monadic error handling and a more functional style. But what language you should learn also depends on what you are planning to do with it. If you are looking to pick up an efficient language to use in combination with Python, both Rust and C++ are a better choice than Java. All of these languages are very different and learning one of them will not automatically make it easier to learn the others, as being compiled does not dictate the syntactic features of a language.
@thegoldenatlas753
@thegoldenatlas753 Жыл бұрын
​@@MrMetalMachine1 Id also add that the rules rust has make the compiler very helpful. In C/C++/java/Python the errors you get from the compiler/runtime are basically useless always and you see it as the enemy but in Rust the compiler is a helper telling you exactly how you can fix your code to be memory safe and the Rust devs are constantly adding to what the compiler knows so it can be as helpful as possible.
@_tsu_
@_tsu_ 11 ай бұрын
also, rustpyton is very cool. Not exactly for your typical pythonista but still worth a mention. It puts into perspective how powerful it is even though it feels high level.
@stysner4580
@stysner4580 11 ай бұрын
You can have default implementations for traits, so there's no need for the macro.
Choosing Your Language: Python or Mojo?
14:33
ArjanCodes
Рет қаралды 118 М.
Why You Should Think Twice Before Using Returns in Python
21:27
ArjanCodes
Рет қаралды 50 М.
How to have fun with a child 🤣 Food wrap frame! #shorts
0:21
BadaBOOM!
Рет қаралды 17 МЛН
БАБУШКА ШАРИТ #shorts
0:16
Паша Осадчий
Рет қаралды 4,1 МЛН
Avoid These BAD Practices in Python OOP
24:42
ArjanCodes
Рет қаралды 82 М.
All Rust features explained
21:30
Let's Get Rusty
Рет қаралды 332 М.
Async Rust Is A Bad Language | Prime Reacts
28:46
ThePrimeTime
Рет қаралды 111 М.
Why I Switched from Python to Rust for AI Deployment
9:57
Code In a Jiffy
Рет қаралды 34 М.
Should you learn Rust in 2025?
11:11
Let's Get Rusty
Рет қаралды 37 М.
COMPLETE No-Nonsense VSCode Setup for Python Devs
26:05
ArjanCodes
Рет қаралды 51 М.
Please Master This MAGIC Python Feature... 🪄
25:10
Tech With Tim
Рет қаралды 96 М.
why rust libraries may never exist.
7:26
Low Level
Рет қаралды 288 М.
Why JavaScript Devs are Switching to Rust in 2024
10:35
warpdotdev
Рет қаралды 264 М.
Python laid waste to my C++!
17:18
Sheafification of G
Рет қаралды 182 М.
How to have fun with a child 🤣 Food wrap frame! #shorts
0:21
BadaBOOM!
Рет қаралды 17 МЛН