Тёмный
Rust
Rust
Rust
Подписаться
Video material about the programming language Rust, curated by the Rust team.

This channel publishes videos from all Rust conferences and also re-publish talks and lectures from other places.

If you got a video that's missing, please get in touch.
RustConf 2023 - Infrastructure for Rust
31:37
4 месяца назад
RustConf 2023 - How Powerful is Const
22:58
4 месяца назад
RustConf 2023 - Rewrite it in Objective-C?
17:41
4 месяца назад
RustConf 2023 - Rust Foundation: Demystified
27:08
4 месяца назад
Rainer Stropek - Memory Management in Rust
59:48
5 месяцев назад
Комментарии
@Tigregalis
@Tigregalis 6 дней назад
This talk was awesome. Would love to see an updated version 5 years later: what's changed since?
@russtaylor4242
@russtaylor4242 7 дней назад
Are there any newer Sōzu related videos please? I would like to write some custom features for a reverse proxy, and Sōzu looks like a good place to start.
@thanhtan030t
@thanhtan030t 17 дней назад
the presentation skill is impressive. thank you, sir!
@cvrptn
@cvrptn 18 дней назад
I like the talk a lot, and it's made me reconsider the design for my own lightweight game engine written in Rust. However, I'm wondering whether the whole generational indexes approach is the best way to go. Either you have very sparse entities with lots of different component arrangements (in which case you'll be allocating a lot of memory in your EntityMap component stores for entities not using these components), or your entites all have sort of the same set of components (in which case you might wonder if it's not better to just have a single Entity struct that contains all your components and store it in a large Vec<Entity>). Granted, the EntityMap pattern allows for very fast O(1) lookups of your components but it comes at the cost of wasted memory.
@artxiom
@artxiom 20 дней назад
Really good talk and perspective! It reminds me btw a lot of the functional core, imperative shell approach (afaik Gary Bernhardt coined this concept). To be honest I'm not a big fan of OOP myself but it seems you use it in a very similar way I've been doing it: for "big" stateful services (aka actors). I also use it for "small things" that don't depend on anything else but contain a lot of state and functions on this state - so mostly container-like types. My main issue with OOP was always how bad it is at modelling domain problems and how OOP-abstraction increases actually tight coupling and decreases modularity. With data and functions it's simple: they are already "objects"/atoms/... so you model the data with these atoms, and you write the functions that transform this data and you put everything into modules to logically group it - everything is nicely separated and decoupled but logically grouped. Every function can work on a variety of data, so it's easier to model transformations between a variety of data - you don't have to think: where does function A belong? to object B,C or D? With objects on the other hand you create a "functional" relationship - data and functions are tightly coupled. In some cases that's perfectly valid, but more often it's not and you just created an abstraction over an abstraction for no reason. I often compare it to database relationships: in OOP you can only model 1:n relationships (1 class, which is also the state/data : n functions. I'm talking purely about the modeling side, so not how it is at runtime where you can have multiple objects for the same class). Most systems have a lot of n:m relationships though (n state/data : m functions, e.g. some_function(data a, data b, data c, ...)). So in OOP you need an extra layer of abstraction to "translate" to this n:m relationship. That's why I often see things like e.g. *Manager classes in OOP code. Nowadays whenever I encounter a "SomethingManager" class I consider it code-smell. The moment I have some inter-dependency of objects like: obj1.method(obj2) I usually refactor it so that they all depend only on pure data/functions not objects, like: obj1.method(just_some_simple_data). After all every dependency on an object makes it automatically depend on everything(!) else that object depends on: it's internal state, all the methods, class hierarchy, etc. You literally got the banana together with the gorilla and the jungle! Passing references to objects between objects is just crazy and I'm pretty sure that's not what Alan Kay had in mind. It's the lazy developers way of pulling in dependencies without specifying them explicitly, cheap in the beginning, but you pay double (and more) later. Some OOP-purists call me crazy but I have a very good track record of systems that are well designed this way - while they still discuss how to use design patterns to somehow manage their OOP mess ;)
@CjqNslXUcM
@CjqNslXUcM 23 дня назад
I like that he basically gives therapy for people with impostor syndrome for the first few minutes.
@jooonmantv
@jooonmantv 24 дня назад
Amazing video
@johanneslade2830
@johanneslade2830 26 дней назад
Thank you so much for all the rust content you produce. It helped me understand a lot of the more complicated corners of rust❤
@linkernick5379
@linkernick5379 27 дней назад
Are named arguments abandoned forever? 😢
@tiagocerqueira9459
@tiagocerqueira9459 Месяц назад
I have some concerns about the Rust "weirdness budget" running out, where people look at this think "what the f" and walk away. I'd say a priority is to don't let this leak too much in application code.
@CGMossa
@CGMossa Месяц назад
Is there a CRDT library in Rust that is actively developed?
@datathings
@datathings Месяц назад
This is wonderful! Thanks for this information. Had no idea about DataFusion before this.
@Ic3q4
@Ic3q4 Месяц назад
this is rustastic
@scosminv
@scosminv Месяц назад
What if the answer for "The internet is highly concurrent and highly security-conscious" is not a programming language but Webassembly runtime which is sandboxed ? Now if I write in C and compile to webassembly... can NSA say C is insecure ?
@santip.1910
@santip.1910 Месяц назад
Magnífica exposición! Un gran saludo.
@bolekjakistam1018
@bolekjakistam1018 Месяц назад
Great talk!
@laciferin
@laciferin Месяц назад
Amazing talk!! Very inspiring !! I chose Go over Rust 6 years ago cuz Rust didn't support async await natively at the time.Wish I had watched this video some time down the road. In 2024, i m starting with Rust.. Gotto to say its an amazing language for all people who consider coding as their passion.
@NickDrian
@NickDrian Месяц назад
U r great teacher
Месяц назад
Great talk ! So good to hear people working on such an important tools !
@FortnitePro-kf9wl
@FortnitePro-kf9wl 2 месяца назад
Has any of this progressed?
@Heater-v1.0.0
@Heater-v1.0.0 2 месяца назад
"Rust in the Linux kernel"? Of course it turns out people did ask Linus about this and his response after looking at Rust was something like "It's not an entirely terrible idea". Which coming from Linus is high praise indeed. So now we do have Rust in the kernel. This talk is pretty amazing in that describes a lot of work done at MS that incorporated a lot of the ideas the Rust guys came up with and apparently was successful even if never adopted. So Rust is on the right track and this talk is a great sales pitch for it.
@ryanlog
@ryanlog 2 месяца назад
SIMDeez nuts
@olafschluter706
@olafschluter706 2 месяца назад
BTW: what is the extension of VSCode you are using that gives you the full explanation of the error cause in the text without the need to hover over the red curly underline? Atomic reference counting (ARC) - and Rust has an atomic variant of Rc called Arc (which means that only one thread at the same time may increment the count) in its arsenal which is very much needed in multi-threaded applications - does a nice job in Objective-C for memory management without garbage collection. Clone becomes cheap on an Arc as it just increments the reference count. I am glad that Rust offers it. But as you can only get immutable access to the data pointed to by an Arc, don't get over your head using it. If you want concurrent mutable access to data, you need a Mutex (or its more relaxed variant RwLock, which allows for multiple readers or one single writer at the same time), which is another smart pointer in Rust's arsenal. Packed into an Arc it can be cloned cheaply and distributed among threads, but only one thread at the same time will be able to read or alter the data protected by the Mutex (more readers are allowed with RwLock, but once a thread wants to write, it has to wait for all other readers or writers to release the lock). So don't be surprised if you see a lot of Arc<Mutex<Type>> declarations in multithreaded rust code. It's always a mouthful, but surprisingly efficient in the resulting machine code. But a mutual exclusive lock is never without costs. It depends on the nature of the task you want to compute using multiple threads and the way you organise the work - if locking happens often, the result may be (often much) slower than a single-threaded implementation.
@OSSMaxB
@OSSMaxB 2 месяца назад
Interesting. I was about to complain that the size of `Foo` isn't 5 but should be 8 because of padding. But then I actually tried it out and it turns out it is actually 4. I guess `char` has some niche values that are used. (Unicode code points only go up to 2^21 not 2^32, so there's a lot of values to choose from).
@hanyanglee9018
@hanyanglee9018 2 месяца назад
42 Comments 😆
@alexpyattaev
@alexpyattaev 2 месяца назад
Alice please persent more!
@giannismentz3570
@giannismentz3570 3 месяца назад
Linux decided to sprinkle some rust on the kernel, though there's nothing better than embedded rust. 😃
@langhistruk
@langhistruk 3 месяца назад
Not only he’s a very skilled and smart professional, but also an awesome human being
@DavidAlsh
@DavidAlsh 3 месяца назад
I found Stabby randomly on a Reddit post and I friggen love it. I opened this video because the topic is relevant to the work I am doing now, pleasantly surprised to see that this is an explainer on Stabby!
@yailkalaf8542
@yailkalaf8542 3 месяца назад
Cleared a lot of doubts . Thanks!
@flwi
@flwi 3 месяца назад
That's an excellent talk! So glad it popped up in my timeline. Will watch it again after reading through the article and experimenting a bit.
@kurkdebraine8139
@kurkdebraine8139 3 месяца назад
Rayner always good! Greetings from Argentina.
@flwi
@flwi 3 месяца назад
Great talk! I just started with rust and learned a lot!
@returncode0000
@returncode0000 3 месяца назад
Great talk, really useful, thanks!
@arubaga
@arubaga 3 месяца назад
Stabby is such a good name!
@geodesic98
@geodesic98 3 месяца назад
great talk, i found this haphazardly and was immediately drawn in
@Vagelis_Prokopiou
@Vagelis_Prokopiou 3 месяца назад
Very useful library. This will push Rust forward a lot.
@MrMrCraftmine
@MrMrCraftmine 3 месяца назад
This is amazing
@1Erledus1
@1Erledus1 3 месяца назад
if you make RUST -> JS is it plain JS (ES6) or does it need node.js
@Mankepanke
@Mankepanke Месяц назад
It's a wrapper around FFI, so it's very likely to need Node. You can't load and call system libraries from any JS runtime.
@dmitriidemenev5258
@dmitriidemenev5258 3 месяца назад
You just got another core maintainer on board. Let's move Rust forward!
@notcrediblesolipsism3851
@notcrediblesolipsism3851 3 месяца назад
Thanks for this, I've been playing around with smart pointers and refcells and probably used them excessively, i can simplify some of what I've done with Box<>.
@flwi
@flwi 3 месяца назад
Wow, this was a great presentation! I just started learning rust this month learned a lot by this look behind the scenes. Well done!
@kurkdebraine8139
@kurkdebraine8139 3 месяца назад
Mr Stropek you are one of the best exposer i“ve ever heard on the topic. This talk was invaluable for me! Thanks a lot. Rust, give this man more talks please. And ty you too.
@awnion
@awnion 3 месяца назад
The exposed API should be Pythonic, not Rustonic. E.g. as_dict() should be called implicitly on e.g. get(key) call.
@MuscleTeamOfficial
@MuscleTeamOfficial 3 месяца назад
Thx Michele
@jocketf3083
@jocketf3083 3 месяца назад
Nice! Seems like a great use-case.
@StylishHobo
@StylishHobo 3 месяца назад
I was literally reading the new solver code yesterday! Thank you for the walkthrough.
@Andrii-zc4dp
@Andrii-zc4dp 3 месяца назад
the one person who has a chance of understanding this xD
@flwi
@flwi 3 месяца назад
What a great talk! You're the Tony Robbins of rust!