http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro Starting Rust from a Scripting Background Run Rust Deploy, Write, and Improve Rust Write Rust Improve Rust E. Dunham @qedunham March 5, 2017 http://talks.edunham.net/scale15x
http://talks.edunham.net/scale15x Intro 1 Rust 101 About Me E. Dunham @qedunham About You About Rust Intro About Me Run Rust About You 2 About Rust Channels Run Rust Installation Options Write Rust Improve Rust Write Rust 3 Errors Syntax Types & Traits Safety Using Libraries Improve Rust 4 Level up Find a project Get involved
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Welcome! Intro About Me This is an intro class About You About Rust Learn what Rust is & isn’t Run Rust Run Rust code Write Rust Meet Rust’s special features Improve Rust Improve Rust Not: Hack time for you Unsafe or advanced Rust Exhaustive Q&A 1 1 Join your local meetup!
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro About Me About You About Rust This talk will teach you the basics of Run Rust Rust, and help you ask the right Write Rust questions as you continue to explore Improve Rust Rust after the conference. The Abstract
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro About Me About You About Me: About Rust Run Rust DevOps for Mozilla Research 2 Write Rust Rust Community Team member Improve Rust FOSS & robotics background NOT a compiler wizard 2 Infra is mostly Python
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro About Me About You About Rust Have you... Run Rust Write Rust Heard of Rust? Improve Rust Used Rust? Contributed to Rust?
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro About Me About You About Rust Have you... Run Rust Written C, C++, Assembly, etc? Write Rust Improve Rust Written Java, Python, Ruby, JS, etc? Written Haskell, Erlang, Ocaml, etc?
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro About Me About You About Rust Have you... Run Rust Used version control? Write Rust Improve Rust Used GitHub? Contributed to a FOSS project?
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro About Me About You About Rust What’s Rust? Run Rust Systems language 3 Write Rust Improve Rust Safety + Performance Community... (Thriving but controversial) 3 Contrast to Go, a language for sysadmins
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro About Me About You About Rust Rust’s Buzzwords Run Rust Safety, Speed, Concurrency Write Rust Memory safety without garbage collection Improve Rust Zero-cost abstractions Hack Without Fear
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro About Me About You Safety & GC About Rust Run Rust Memory must be reused Write Rust C: “Just follow these rules perfectly, you’re smart” Improve Rust Java, JS, etc: “Wait a minute, I’ll take care of it” Rust: “I’ll prove correctness at compile time”
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro About Me About You History About Rust Run Rust Since ˜2010 Write Rust 1.0 Stable in May 2015 Improve Rust Currently 4 version 1.14.0 Mozilla sponsorship & support 4 until January 26th
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro About Me About You Notable Projects About Rust Run Rust servo.org Browser Engine Write Rust habitat.sh Infrastructure Tooling Improve Rust Dropbox (internal use) https://www.rust-lang.org/en-US/friends.html
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro About Me About You About Rust Where is Rust a good tool? Run Rust Speed + Safety essential Write Rust Improve Rust LLVM-supported architecture Team ♥ new technology
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro About Me About You About Rust Where might Rust be a bad tool? Run Rust Timeframe prohibits new learning Write Rust Improve Rust Need code reuse 5 Can’t handle CoC 5 Corrode can translate C to unsafe Rust
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro About Me About You About Rust Run Rust Write Rust Questions about Rust’s place in the world? Improve Rust
http://talks.edunham.net/scale15x Intro 1 Rust 101 About Me E. Dunham @qedunham About You About Rust Intro Run Rust Run Rust 2 Channels Channels Installation Options Installation Options Write Rust Improve Rust Write Rust 3 Errors Syntax Types & Traits Safety Using Libraries Improve Rust 4 Level up Find a project Get involved
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro Run Rust Channels Rust’s channels: Installation Options Nightly: Trying neat ideas Write Rust Improve Rust Beta: Release candidates Stable: Always backwards-compatible 6 6 https://blog.rust-lang.org/2015/05/15/Rust-1.0.html
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro Run Rust Channels Which channel to use? Installation Options Stable code should run anywhere Write Rust Improve Rust Switch to nightly for dependencies New project? Pick stable 7 7 Unless you need an unstable feature
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro Run Rust Channels Aside: Crater Installation Options Write Rust Compile all published libraries Improve Rust Diff results from stable and candidate https://github.com/brson/taskcluster-crater
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro Run Rust Channels Installation Options Write Rust Questions about channels & installation? Improve Rust
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro Run Rust Installation: Channels Installation Options Online: play.integer32.com or play.rust-lang.org Write Rust Many rusts: rustup.rs Improve Rust System package manager 8 Tinfoil hat: Compile from source 8 Or add Rust to your favorite!
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro Run Rust Channels Playpens: Installation Options Source at https://github.com/rust-lang/rust-playpen Write Rust Choose output, LLVM IR, or ASM Improve Rust Gist your progress Config alters editor settings
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro Run Rust Channels Rustup: Installation Options Docs at https://github.com/rust-lang-nursery/rustup.rs Write Rust ˜/.cargo/bin Improve Rust rustup install nightly rustup run nightly cargo new
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro Run Rust Security: Channels Installation All releases GPG signed Options Write Rust Key only held by Rust Core Team members Improve Rust keybase.io/rust (proved by local signing) Rustup checks signatures for you github.com/rust-lang/rust
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro Deployment Run Rust Channels Check README for system dependencies Installation Options git clone projecturl Write Rust Improve Rust cd project cargo run Downloads any dependencies Compiles deps & code Executes src/main.rs
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro Run Rust Channels Installation Options Write Rust Questions about installation? Improve Rust
http://talks.edunham.net/scale15x Intro 1 Rust 101 About Me E. Dunham @qedunham About You About Rust Intro Run Rust Run Rust 2 Write Rust Channels Errors Syntax Installation Options Types & Traits Safety Write Rust 3 Using Libraries Errors Improve Rust Syntax Types & Traits Safety Using Libraries Improve Rust 4 Level up Find a project Get involved
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro Run Rust Write Rust Errors IDE support: Syntax Types & Traits https://areweideyet.com/ Safety Using Libraries http://www.jonathanturner.org/2017/01/rls-alpha-release.html Improve Rust
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro Run Rust Write Rust REPL equivalents: Errors Syntax Use the playpen Types & Traits Safety Using Libraries playbot on IRC Improve Rust https://github.com/murarth/rusti worked briefly on nightly
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro Run Rust Rust wants you to succeed. Write Rust Errors Rules catch things that look unsafe Syntax Types & Traits Safety “Unsafe” directive is an override Using Libraries Errors deserve helpful docs Improve Rust Click error number in playpen!
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro Run Rust Erroneous Errors? Write Rust Errors Search the web! Syntax Types & Traits Safety Gist your code Using Libraries Ask on IRC #rust-beginners Improve Rust File a bug
http://talks.edunham.net/scale15x Rust 101 E. Dunham @qedunham Intro Run Rust Aside: Other helpful tools Write Rust Errors https://github.com/nrc/rustfmt Syntax Types & Traits Safety Rustfmt standardizes style for you Using Libraries Improve Rust https://github.com/manishearth/rust-clippy Clippy gives helpful suggestions
Recommend
More recommend