how to not
it could be
any
other language
a very
interesting
problem
high
performance
requirements
this is
unix
golang
we know this!
the project was a
sucess!
happily ingesting
> 4k msgs/s
from kafka
type Foo struct{}
type Baz struct {
foo Foo
}
func (f *Foo) DoThis() {
fmt.Println(":wave:")
}
func notfoo(f Foo) {
f.DoThis()
}
func main() {
b := Baz{}
notfoo(b.foo) // this prints
}
I won't talk about
generics
(I swear)
Rust Evangelism Strike Force?
start with a
side
project
(try to) make it
production-ready
with
practice
comes
perfection
grafana annotations
data source API
package it
deploy it
was it
annoying
to develop?
what are the
failure
modes?
how to
onboard
new team members?
parsing a binary
protocol
impressive
performance
results
build a
microservice
in Rust
success?
it's the 3rd time after all
still
miles ahead
on memory safety
(than malloc/free)
learning
ownership
is
not
easy
Rust
nightly
is a nightmare
even higher
cognitive load
stable is
bleeding edge
enough
magic
almost always means
pain
to maintain
ferris is pretty young!
it's really easy to write
struct AbstractProxyFactoryFactory;
am I
too excited
about Rust?
am I
listening to
what people say
am I
listening to
what I wanna hear?
make sure you have
explicit buy-in
beyond direct management
cargo-culting
is totally a thing
(pun intended)
empathy
is a
powerful feature