class: middle, center background-image: url(public/img/RustConf18.001.jpeg) --- class: middle, center background-image: url(public/img/RustConf18.002.jpeg) --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] .forty[![nietzsche](public/img/nietzsche.jpg)] --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Let's get philosophical... --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # [A] genealogy often attempts to look beyond the discourse in question toward the conditions of its possibility. --- class: left, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ### Genealogy of Morals, Nietzsche ### Phenomenology of Spirit, Hegel ### Logical Investigations 1, Husserl ### Logical Investigations 2, Husserl ### Being and Time, Heidegger ### The Order of Things, Foucault ### Speech and Phenomena, Derrida --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # LET'S TALK ABOUT RUST *AND* PHILOSOPHY!!! --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Let's talk about what made the 2018 Edition... -- # POSSIBLE. --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Rust is a systems programming language --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # The Rust team is full of systems programmers...
-- # but perhaps not in the way you would imagine. --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Open Source is an intricate system... -- # of People. --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # This is a talk about People Systems. --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![hardest problem in computer science](public/img/hardestproblem.png) .footnote[https://twitter.com/pbowden/status/468855097879830528] --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![hardest problem in computer science](public/img/hardestproblem2.png) .footnote[https://twitter.com/gigasquid/status/445358068205776897] --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![unfortunately as you already know](public/img/people.png) .footnote[https://twitter.com/Horse_ebooks/status/228032106859749377] --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![rust people](public/img/rustpeople.png) --- class: top, left, title background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # People Systems Programming
## Aaron Turon ## Niko Matsakis ## Ashley Williams --- class: top, left, title background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Unleashing latent energy
--- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # In the beginning, there was the void... .forty[![scaling rust's governance](public/img/void.gif)] --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![scaling rust's governance](public/img/scalinggovernance.png) --- class: middle, left background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Since then, Rust teams have grown a lot ...
-- # especially lately! --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![rust team size over time](public/img/teamgrowth.png) --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] .sixty[![alexcricthon](public/img/alexcrichton.jpg)] --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] .sixty[![marge](public/img/margebors.gif)] --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] .sixty[![ReleaseTeam](public/img/ReleaseTeam.png)] --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] .eighty[![InfraTeam](public/img/InfraTeam.png)] --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![Rust bots](public/img/rust-bots.png) --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![PRs over time](public/img/borsstats.png) .citation[https://rust-lang-nursery.github.io/rustc-pr-tracking/] --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Step 1. Ask .eighty[![I need help](public/img/peanuts.gif)] --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![aturon asks for help](public/img/aturon-asks-for-help.png) --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ### It matters *how* you ask .eighty[![ask](public/img/ask.gif)] --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Step 2. Make a Space .eighty[![nest](public/img/nest.jpg)] .citation[CL Photographs / https://www.flickr.com/photos/christiantlambert/4720978567/] --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] .sixty[![issue #40721](public/img/40721.png)] --- class: middle, left background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Build a skeleton --- class: middle, left background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Transparent planning --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Step 3. Recognize Publicly ![best](public/img/best.gif) --- class: middle, center background-image: url(public/img/RustConf18.002.jpeg) --- class: middle, left background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ## Impl Period
## Domain Working Groups --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Success can be Painful --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] .sixty[![money](public/img/hvac.png)] --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![control](public/img/he-man.gif) --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![control](public/img/control.gif) --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![no space](public/img/nospace1.gif) --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![no space](public/img/nospace2.gif) --- class: middle, left background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] > If you’ve got decent people under you, there is probably nothing you can do to improve their chances of success more dramatically than to get yourself out of their hair occasionally. .footnote[Tom DeMarco, Peopleware: Productive Projects and Teams] --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] > The Core Team must —
> but the Core Team can't ### — @skade, at least in spirit --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ## Insert morale here ![save a seat](public/img/saveaseat.gif) --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Do ### vs # Support --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Control ### vs # Enjoying the ride --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Latency ### vs # Throughput --- class: top, left, title background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Itching the Same Way
.slide-url[bit.ly/rustconf-2018] --- class: left, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] > Every good work of software starts by scratching a developer's personal itch. .footnote[Not gonna cite this one because the dude that wrote this is a big jerk.] --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![regexp](public/img/regexp.png) --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # OSS by Seredipity --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![surprise](public/img/surprise.gif) --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![13316 PR](public/img/13316-start.png) ![13316 PR](public/img/13316-end.png) --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] .eighty[![bad surprise](public/img/badsurprise.gif)] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![worst surprise](public/img/worstsurprise.gif) --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # But serendipity doesn't work for everyone --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # What's the alternative?
-- # Making folks itch the same way! --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![itch the same way](public/img/itchsameway.png) --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # "Rust fungus" ![rust fungus](public/img/rustfungus.png) --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] .sixty[![together](public/img/together.gif)] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # OSS on Purpose --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Quest Issues .eighty[![quest issue](public/img/quest-issue.png)] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Working Groups ![penguins](public/img/penguins.gif) --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Roadmaps, vision docs ![roadmap](public/img/roadmap.gif) --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Motivation is intrinsic... --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # ... so you've gotta inspire .eighty[![inspiration](public/img/inspire.gif)] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # So, all good, yeah? ![unicorn and rainbows](public/img/unicorn.gif) --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Well... --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![RFC 1657](public/img/1657.png) .citation[https://github.com/rust-lang/rfcs/pull/1657] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # High Impact Work Should be Prioritized --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # ...but sometimes you need to leave room for serendipity --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Building capacity vs. staying focused ![horse tug of war](public/img/horse-tension.gif) --- class: top, left, title background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # True Openness
--- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Pluralism and Positive Sums --- class: left, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Pluralism is... > a condition or system in which two or more states, groups, principles, sources of authority, etc., coexist. .citation[https://www.google.com/search?q=pluralism&oq=pluralism&aqs=chrome.0.69i59j0l5.1076j1j1&sourceid=chrome&ie=UTF-8] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # TIME FOR SOME GAME THEORY .citation[https://knowyourmeme.com/memes/it-s-time-for-some-game-theory] --- class: left, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Zero-sum game... > a mathematical representation of a situation in which each participant's gain or loss of utility is exactly balanced by the losses or gains of the utility of the other participants. .citation[https://en.wikipedia.org/wiki/Zero-sum_game] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # "Your gain is my loss" .citation[https://en.wikipedia.org/wiki/Zero-sum_thinking] --- class: left, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Positive-sum game... > refers to situations in which the total of gains and losses is greater than zero. A positive sum occurs when resources are somehow increased and an approach is formulated in which the desires and needs of all concerned are satisfied. .citation[https://www.britannica.com/topic/positive-sum-game] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # The whole is greater than the sum of its parts --- class: left, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # This is a Gamble --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![captainplanet](public/img/captainplanet.gif) --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![captainplanet](public/img/captainplanet2.gif) -- .rust[Rust] -- .cpp[C++] -- .js[JavaScript] -- .academia[Academica] -- .new[New Developers] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![failure](public/img/tugofwarfail.gif) --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # This is a WIP --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Truly Open Consensus Seeking At Scale ![possible](public/img/doubts.gif) --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] .sixty[![i want to believe](public/img/iwanttobelieve.jpg)] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # The RFC Process --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # No New Rationale --- class: left, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] >Importantly though: There was almost zero participation from members of the core team in the public discussion thread. Why is it a good idea for members of the core team to be entitled to skip this, to keep their reasoning and discussions to themselves, and only reveal it together with their final decision? --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # The Module System Debate --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![modules](public/img/modules1.png) ![modules](public/img/modules1react.png) .citation[https://github.com/rust-lang/rfcs/pull/2108] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![modules](public/img/modules2.png) ![modules](public/img/modules2react.png) .citation[https://github.com/rust-lang/rfcs/pull/2121] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![modules](public/img/modules3.png) ![modules](public/img/modules3react.png) .citation[https://github.com/rust-lang/rfcs/pull/2126] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # PSA: ## GitHub reactions are not votes. --- class: left, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] > The modules saga demonstrates both payoffs and pathologies of the RFC process, playing out over a dozen different threads reaching 1,400+ comments in total. .citation[http://aturon.github.io/2018/06/18/listening-part-3/] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Momentum ## It's hard to shift whatever sentiment is first established --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Urgency ## The Stakes are High! --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Fatigue ## It's hard to participate and often doesn't feel like progress is being made. --- class: left, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] > The fundamental response to change is not logical, but emotional. .citation[Tom DeMarco, Peopleware: Productive Projects and Teams] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![angery](public/img/angery.gif) --- class: left, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] > Luckily enough of us yelled to stop the terrifying original proposal from happening; the moment we stop speaking up, Those People will start pushing in that direction again. .citation[http://aturon.github.io/2018/06/18/listening-part-3/] --- class: left, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] > I honestly despise being subtle or “nice”. The fact is, people need to know what my position on things are. And I can’t just say “please don’t do that”, because people won’t listen. I say “On the internet, nobody can hear you being subtle”, and I mean it. -- - ### Linus Torvalds, Professional Jerk --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Wielding Power ### vs # Changing Minds --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![power](public/img/power.gif) --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![perspective](public/img/perspective.gif) --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![spiderman](public/img/spiderman.jpg) --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] .eighty[![gentle battle](public/img/gentlebattle.gif)] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Nothing is actually totally open --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![money](public/img/money.gif) --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![pumpkin](public/img/pumpkin.gif) --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Openness vs Openness --- class: top, left, title background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Oppositions
--- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Memory safety ### *without* # Garbage collection --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Abstraction ### *without* # Overhead --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Concurrency ### *without* # Data races --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Stability ### *without* # Stagnation --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Hack ### *without* # Fear --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # dialectics --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # dia-wat? --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # formal logic # things are what they are, and that they stand in definite relationships to each other .citation[http://www.marxist.com/pickard-dialectical-materialism.htm] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # formal logic # the law of identity # A = A .citation[http://www.marxist.com/pickard-dialectical-materialism.htm] -- .no[![no](public/img/no.gif)] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # when we reach a contradiction # we're wrong -- .no[![no](public/img/no.gif)] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # things # change over time -- # A != A -- ## and that's a good thing --- class: left, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] > The dialectical method, in contrast to the method of formal logic, trains us to identify these contradictions, and thereby get to the bottom of the changes taking place. .citation[http://www.marxist.com/pickard-dialectical-materialism.htm] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![dialectic](public/img/dialectic1.jpg) --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![dialectic](public/img/dialectic.gif) --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] .forty[![dialectic](public/img/dialectic2.jpg)] --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![new rfc process](public/img/newrfc.png) --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # future # of Rust --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Rust # != # Rust --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # We've seen many oppositions in this talk... --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ## Do vs. support ## Latency vs. throughput ## Build capacity vs. be focused ## Openness vs. openness --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Oppositions are at the heart of systems... -- # ...whether people or software --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # But conflict doesn't have to mean heat --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Synthesis flows from listening, diversity, openness --- class: center, middle background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ## Rust is about that synthesis .eighty[![share](public/img/share.gif)] .slide-url[bit.ly/rustconf-2018] --- class: top, left, title background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] # Thanks!
### bit.ly/rustconf-2018 ## Aaron Turon ## Niko Matsakis ## Ashley Williams --- class: middle, center background-image: url(public/img/gears/gears1-edited.jpg) .slide-url[bit.ly/rustconf-2018] ![rust people](public/img/rustpeople.png)