Releases: chriskrycho/newrustacean.com
Bonus 8: Giving back (by teaching)
- Date: March 19, 2017
- Subject: On the responsibilities and opportunities we have to help
others with our knowledge and abilities. - Audio:
Notes
Many of us have been very blessed with opportunities and support as we learn software. We should go out of our way to share with others in kind. Today, my focus is on teaching, but there are lots of ways to "give back." And I'd love to hear your thoughts and things you're doing in that vein!
Links
- Julia Evans
keyof
and Mapped Types in TypeScript 2.1 -- the blog post I
mentioned writing a few months ago.
Sponsors
- Aleksey Pirogov
- Andreas Fischer
- Andrew Thompson
- Austin LeSure
- Ben Whitley
- Charlie Egan
- Chris Jones
- Chris Palmer
- Christopher Giffard
- Dan Abrams
- Daniel Collin
- Derek Morr
- Eugene Bulkin
- Jakub "Limeth" Hlusička
- Jordan Henderson
- Jupp Müller
- Justin Ossevoort
- Karl Hobley
- Keith Gray
- Lachlan Collins
- Luca Schmid
- Matt Rudder
- Matthew Piziak
- Max Jacobson
- Micael Bergeron
- Ovidiu Curcan
- Pascal Hertleif
- Patrick O'Doherty
- Peter Tillemans
- Philipp Keller
- Ralph Giles ("rillian")
- Raph Levien
- reddraggone9
- Steven Murawksi
- Stuart Hinson
- Tyler Harper
- Vesa Kaihlavirta
- Vlad Bezden
- Warren Harper
- William Roe
- Zaki
(Thanks to the couple people donating who opted out of the reward tier, as
well. You know who you are!)
Become a sponsor
Contact
- New Rustacean:
- Twitter: @newrustacean
- Email: [email protected]
- Chris Krycho
- GitHub: chriskrycho
- Twitter: @chriskrycho
e019: Let's `Clone` a `Cow`!
- Date: February 28, 2017
- Subject: The final pieces of the story for (single-threaded) memory
management in Rust. - Audio:
Notes
Sometimes, we actually do need to copy types. Wouldn't it be nice if Rust
gave us a convenient way to do that when it's convenient, or when the cost
is low enough that the ergonomic tradeoffs are worth it? Well, perhaps
unsurprisingly, it does! The Copy
and Clone
traits, plus the Cow
type,
give us everything we need!
Links
-
The typess
-
-
7.2.0.2 Moved and copied types:
When a local variable is used as an rvalue, the variable will be copied if its
type implementsCopy
. All others are moved.
-
-
Default implementations
-
Supertraits
-
from the discussion in the reference (6.1.9 Traits):
Traits may inherit from other traits.... The syntax
Circle : Shape
means that types
that implementCircle
must also have an implementation forShape
. Multiple
supertraits are separated by+
, traitCircle : Shape + PartialEq { }
. In an
implementation ofCircle
for a given typeT
, methods can refer toShape
methods,
since the typechecker checks that any type with an implementation ofCircle
also has
an implementation ofShape
... -
discussion of trait super- and subtyping in the new book
(note: still to-be-written at the time this episode was published)
-
-
Marker traits
-
in the reference: 9 Special Traits
-
Previous episodes on traits:
Sponsors
- Aleksey Pirogov
- Andreas Fischer
- Andrew Thompson
- Austin LeSure
- Ben Whitley
- Charlie Egan
- Chris Palmer
- Christopher Giffard
- Daniel Collin
- Derek Morr
- Jakub "Limeth" Hlusička
- Jordan Henderson
- Jupp Müller
- Keith Gray
- Lachlan Collins
- Luca Schmid
- Matt Rudder
- Matthew Piziak
- Max Jacobson
- Micael Bergeron
- Ovidiu Curcan
- Pascal Hertleif
- Peter Tillemans
- Philipp Keller
- Ralph Giles ("rillian")
- Raph Levien
- reddraggone9
- Steven Murawksi
- Stuart Hinson
- Tyler Harper
- Vesa Kaihlavirta
- Vlad Bezden
- William Roe
- Zaki
(Thanks to the couple people donating who opted out of the reward tier, as
well. You know who you are!)
Become a sponsor
Contact
- New Rustacean:
- Twitter: @newrustacean
- Email: [email protected]
- Chris Krycho
- GitHub: chriskrycho
- Twitter: @chriskrycho
Crates You Should Know: clap
clap
Links
Sponsors
- Aleksey Pirogov
- Andreas Fischer
- Andrew Thompson
- Ben Whitley
- Charlie Egan
- Chris Palmer
- Christopher Giffard
- Daniel Collin
- Derek Morr
- Jakub "Limeth" Hlusička
- Jordan Henderson
- Jupp Müller
- Keith Gray
- Lachlan Collins
- Luca Schmid
- Matt Rudder
- Matthew Piziak
- Max Jacobson
- Micael Bergeron
- Ovidiu Curcan
- Pascal Hertleif
- Peter Tillemans
- Philipp Keller
- Ralph Giles ("rillian")
- Raph Levien
- reddraggone9
- Steven Murawksi
- Tyler Harper
- Vesa Kaihlavirta
- Vlad Bezden
- William Roe
- Zaki
(Thanks to the couple people donating who opted out of the reward tier, as
well. You know who you are!)
Become a sponsor
Contact
- New Rustacean:
- Twitter: @newrustacean
- Email: [email protected]
- Chris Krycho
- GitHub: chriskrycho
- Twitter: @chriskrycho
e018: Borrow, AsRef, Deref: my head hurts now
Three traits which are essential for designing good, Rustic APIs.
Notes
Borrow
, AsRef
, and Deref
are a little complicated, but they're
well-worth understanding. Together, they give you tools for dealing with
everything from HashMap
and friends to conversions involving smart pointer
types to easily using String
and str
or Vec
and slice together.
Links
AsRef
,Borrow
, andDeref
:Borrow
andAsRef
in The Rust Programming Languagecollections::borrow::Borrow
std::convert::AsRef
std::ops::Deref
- persistent data structures
- "Rust and Rest" – Arnin Roacher
- sentry-cli
- Particularly relevant previous episodes:
Sponsors
- Aleksey Pirogov
- Andreas Fischer
- Ben Whitley
- Cameron Mochrie
- Chris Palmer
- Christopher Giffard
- Daniel Collin
- Derek Morr
- Jakub "Limeth" Hlusička
- Jordan Henderson
- Jupp Müller
- Keith Gray
- Lachlan Collins
- Luca Schmid
- Matt Rudder
- Matthew Piziak
- Micael Bergeron
- Ovidiu Curcan
- Pascal Hertleif
- Peter Tillemans
- Philipp Keller
- Ralph Giles ("rillian")
- Raph Levien
- reddraggone9
- Ryan Ollos
- Steven Murawksi
- Vesa Kaihlavirta
- Vlad Bezden
- William Roe
- Zaki
(Thanks to the couple people donating who opted out of the reward tier, as
well. You know who you are!)
Become a sponsor
Contact
- New Rustacean:
- Twitter: @newrustacean
- Email: [email protected]
- Chris Krycho
- GitHub: chriskrycho
- Twitter: @chriskrycho
Crates You Should Know: quick-xml
Links
- crates.io
- docs.rs
- GitHub
- syntax highlighting -- example from lightning-rs
Sponsors
- Aleksey Pirogov
- Andreas Fischer
- Ben Whitley
- Cameron Mochrie
- Chris Palmer
- Christopher Giffard
- Daniel Collin
- Derek Morr
- Jakub "Limeth" Hlusička
- Jupp Müller
- Keith Gray
- Lachlan Collins
- Luca Schmid
- Matt Rudder
- Matthew Piziak
- Micael Bergeron
- Ovidiu Curcan
- Pascal Hertleif
- Peter Tillemans
- Philipp Keller
- Ralph Giles ("rillian")
- Raph Levien
- reddraggone9
- Ryan Ollos
- Steven Murawksi
- Vesa Kaihlavirta
- Vlad Bezden
- William Roe
- Zaki
(Thanks to the couple people donating who opted out of the reward tier, as
well. You know who you are!)
Become a sponsor
Contact
- New Rustacean:
- Twitter: @newrustacean
- Email: [email protected]
- Chris Krycho
- GitHub: chriskrycho
- Twitter: @chriskrycho
Interview 3 – Carol Goulding
Carol Goulding
- Date: September 30, 2016
- Subject: Learning Rust, teaching Rust, and building community
- Audio:
Notes
Chris talks with Carol Goulding, a Rust community team member, co-author of the first major revision of The Rust Programming Language, and co-founder of the first Rust consultancy.
Links
- XSLT (XML Style Sheet Transformations)
- Rspec
- Rails
- Think Through Math — remedial math tutoring app built with Rails
- Rust for Rubyists
- The Rust Programming Language
- Julia Evans
- Rust by Example
- Rustlings
- SASS
- #rust-community — open meetings at 4pm UTC every Wednesday, with
minutes available online - first Rust community survey
- Rust community on GitHub
- new version of the book on GitHub — you can help, and
especially if you're new, because Steve and Carol both need input to deal
with the "familiarity"/"curse of knowledge" problem- ownership and borrowing chapters
- RustConf
- RustFest
- Rust Belt Rust — October 27–28, 2016. Don't forget to use code
newrustacean to get 20% off of your registration cost! - Integer32
- Jake Goulding on Stack Overflow
- Friends of the Tree
- Friends of the Forest
- Working Effectively With Legacy Code
- Tilde
- The C Programming Language -- the book Carol compared The Rust
Programming Language to in terms of its responsibilities, and also one of
the books from which Chris learned C.
Sponsors
- Aleksey Pirogov
- Cameron Mochrie
- Chris Palmer
- Daniel Collin
- Derek Morr
- Doug Reeves
- Hamza Sheikh
- Jakub "Limeth" Hlusička
- Jupp Müller
- Keith Gray
- Lachlan Collins
- Leif Arne Storset
- Luca Schmid
- Matthew Piziak
- Micael Bergeron
- Nils Tekampe
- Ovidiu Curcan
- Pascal Hertleif
- Ralph Giles ("rillian")
- Ralph "FriarTech" Loizzo
- Raph Levien
- reddraggone9
- Ryan Ollos
- Sean Jensen-Gray
- Steven Murawksi
- Vesa Kaihlavirta
- William Roe
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Contact
- New Rustacean:
- Twitter: @newrustacean
- Email: [email protected]
- Chris Krycho
- GitHub: chriskrycho
- Twitter: @chriskrycho
Bonus 7: Katas—or, learning by doing
Katas---or: learning by doing
- Date: September 10, 2016
- Subject: Building (and celebrating) all the little, not-so-glorious
pieces of the Rust ecosystem. - Audio:
Notes
One of the best ways to learn is to pick a small problem you have already internalized, and to do it again but in a new language or in a new way in a language you already know.
Links
- AreWeGameYet
- AreWeIDEYet
- AreWeWebYet
- Setting our vision for the 2017 cycle
- Incremental Compilation
cargo-incremental
:- Elm
- Dave Thomas' CodeKata
- Crates I used in my Rust "kata":
Sponsors
- Aleksey Pirogov
- Cameron Mochrie
- Chris Palmer
- Daniel Collin
- Derek Morr
- Doug Reeves
- Hamza Sheikh
- Jakub "Limeth" Hlusička
- Jupp Müller
- Keith Gray
- Lachlan Collins
- Leif Arne Storset
- Luca Schmid
- Matthew Piziak
- Micael Bergeron
- Ovidiu Curcan
- Pascal Hertleif
- Ralph Giles ("rillian")
- Ralph "FriarTech" Loizzo
- Raph Levien
- reddraggone9
- Ryan Ollos
- Steven Murawksi
- Vesa Kaihlavirta
- William Roe
(Thanks to the couple people donating who opted out of the reward tier, as
well. You know who you are!)
Become a sponsor
Contact
- New Rustacean:
- Twitter: @newrustacean
- Email: [email protected]
- Chris Krycho
- GitHub: chriskrycho
- Twitter: @chriskrycho
Bonus 6: It doesn't have to be sexy
It doesn't have to be sexy
- Date: August 20, 2016
- Subject: Building (and celebrating) all the little, not-so-glorious
pieces of the Rust ecosystem. - Audio:
Notes
We love the Rust compiler team. But there's more to the Rust community, and more required for Rust to be as great as it can be, than just the language itself. We need to celebrate other libraries, and even the small ones, just as much (and maybe more) than changes to the language. We need to dig in and work on building the whole ecosystem. (The good news is, we are!)
Links
futures-rs
- Tokio
- "Announcing Tokio" (Carl Lerche on Medium)
- ShaderCat: Graphics Programming with Unity and Rust
- "What's new with 'The Rust Programming Language'?"
- Friends of Rust
ring
: Safe, fast, small crypto using Rustalexa-rs
: Rust library for building Alexa skillsgilrs
: Game Input Library for Rust
Sponsors
- Aleksey Pirogov
- Cameron Mochrie
- Cass Costello
- Chris Palmer
- Daniel Collin
- Derek Morr
- Doug Reeves
- Eric Fulmer
- Hamza Sheikh
- Jakub "Limeth" Hlusička
- Jared Smith
- Keith Gray
- Lachlan Collins
- Leif Arne Storset
- Luca Schmid
- Micael Bergeron
- Pascal Hertleif
- Ralph Giles ("rillian")
- Ralph "FriarTech" Loizzo
- Raph Levien
- reddraggone9
- Ryan Ollos
- Steven Murawksi
- Vesa Kaihlavirta
- William Roe
(Thanks to the couple people donating who opted out of the reward tier, as
well. You know who you are!)
Become a sponsor
Contact
- New Rustacean:
- Twitter: @newrustacean
- Email: [email protected]
- Chris Krycho
- GitHub: chriskrycho
- Twitter: @chriskrycho