tim: Tim with short hair, smiling, wearing a black jacket over a white T-shirt (Default)
[personal profile] tim
Almost done with a very rough draft of my slides for my Open Source Bridge talk! Visually, they're crap, and reminding me why I'm not a graphic designer even though I pretend sometimes to have opinions about visual presentation. But they're good enough for me to give my practice talk to my team tomorrow; hopefully I'll have enough time to clean them up that the form won't distract everyone from the content.

The main thing I'm frustrated about is my own inability to find Good Examples. I could, of course, write examples that illustrate what I want to teach; mainly, I want to show how Rust's trait system works and how borrowed, managed, and owned pointers work. I think traits and the memory model are two of the biggest advantages of Rust, and rather than trying to cover everything about the language in an hour and a half (impossible), I want to focus on two features that are likely to be at least somewhat different from languages the audience members will have used. That's all very well, but I've had a hard time finding particularly good examples in existing code -- I found some small examples, but the slides I worked on today were ones I'd planned to use to present two "extended examples" that would each take several slides to cover. Traits are used less in existing code than I would have thought (being a relatively new feature) and are often just used as containers for methods rather than abstractions that have meaning that could be explained independently of code. Borrowed pointers are used everywhere, but most uses of them are actually pretty simple.

So that I would have something there, I used code from the Container and Map traits and the HashMap module in the standard library, but that feels unsatisfying since hash maps are such a textbook example. I really want to show what makes Rust different! So, I posted a query on the mailing list, and already got two good suggestions -- one from Jeaye pointing me to glfw-rs and one from Daniel Micay suggesting using iterators rather than hash maps if I'm going to use an example from the standard library. I think that's an especially good suggestion; iterators almost qualify as a third central-aspect-of-Rust aside from traits and borrowed pointers.

I give talks infrequently enough that I forget how much work preparing one is. rustpkg is getting sadly neglected, at least over the past two days. I envision weekend work on the horizon, and a lot of it.

(no subject)

Date: 2013-06-07 06:36 am (UTC)
luinied: And someday, together, we'll shine. (academic)
From: [personal profile] luinied
Does Rust still have the Copy trait, and are things without it still basically affine? Because that's something I'd like to hear about in a talk on Rust. (Of course, I'm not your typical audience member...)

Profile

tim: Tim with short hair, smiling, wearing a black jacket over a white T-shirt (Default)
Tim Chevalier

November 2021

S M T W T F S
 123456
78 910111213
14151617181920
21222324252627
282930    

Most Popular Tags

Page Summary

Style Credit

Expand Cut Tags

No cut tags