From: Markus Armbruster <armbru@redhat.com>
To: "Daniel P. Berrangé" <berrange@redhat.com>
Cc: "Alex Bennée" <alex.bennee@linaro.org>,
qemu-devel <qemu-devel@nongnu.org>,
"Manos Pitsidianakis" <manos.pitsidianakis@linaro.org>,
"Hanna Reitz" <hreitz@redhat.com>,
"Peter Maydell" <peter.maydell@linaro.org>,
pkg-qemu-devel@lists.alioth.debian.org,
"Michael Tokarev" <mjt@tls.msk.ru>,
ncopa@alpinelinux.org, bofh@freebsd.org, emulation@freebsd.org,
virtualization@gentoo.org, dilfridge@gentoo.org, hi@alyssa.is,
edolstra+nixpkgs@gmail.com, brad@comstyle.com,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Thomas Huth" <thuth@redhat.com>,
"Stefan Hajnoczi" <stefanha@redhat.com>,
dvzrv@archlinux.org, anatol.pomozov@gmail.com,
"Miroslav Rezanina" <mrezanin@redhat.com>
Subject: Re: Rust BoF and maintainer minutes and planning the roadmap to Rust
Date: Fri, 27 Sep 2024 09:28:43 +0200 [thread overview]
Message-ID: <875xqh4kt0.fsf@pond.sub.org> (raw)
In-Reply-To: <ZvWPH1f6ZnvH1iYZ@redhat.com> ("Daniel P. Berrangé"'s message of "Thu, 26 Sep 2024 17:43:11 +0100")
Daniel P. Berrangé <berrange@redhat.com> writes:
> On Thu, Sep 26, 2024 at 03:23:11PM +0100, Alex Bennée wrote:
[...]
>> One issue that came up is how we handle adequately reviewing code when
>> most of the maintainers are experienced C coders but might not know much
>> about Rust. While we want to avoid the situation of developers vetoing
>> conversion there should be communication ahead of any serious work to
>> avoid rust contributions coming out of the blue. If a maintainer feels
>> they cannot maintain a bunch of unfamiliar rust code the submitter
>> should be prepared to find people willing to become a maintainers as
>> unmaintained drive-by submissions are not useful for the long term
>> health of the project.
>
> Yep, communication is critical, if proposing to rewrite existing
> functionality. Drowning maintainers in conversion patches without
> warning is a guaranteed way to create friction between people.
>
>> With relative inexperience there was a concern we could inadvertently
>> introduce technical debt in the code base (C-like Rust vs Rusty rust).
>> What can we do to mitigate that issue?
>
> On a long enough time frame, all exiting code can be considered
> technical debt. Given the relatively sparse Rust experiance
> across our community, we're guaranteed to make more design
> mistakes in the first few years. Mitigating this is important,
> but at the same time, we should also accept we're not going
> to get everything perfect.
>
> One thing our community is very good at is obsessing about
> perfection of patch series. I can forsee us doing that to an
> even greater extent with any Rust conversions of code. If we
> are not careful we could really harm our overall productivity
> by spending too much time striving for a perfect Rust abstraction
> first time out, even though many of us would still be relative
> newcomers to Rust, such that we don't know what we don't know.
>
> IOW, we need to be pragmatic about accepting some level of
> technical debt at times. Especially if there are cases where
> our Rust design is held back by existing C code, we might be
> better off temporarily accepting sub-optimal Rust, to avoid
> immediately refactoring piles of C code, and tackle the problems
> later.
A deliberate approach to explore some before we go all in could mitigate
the risk of taking on too much technical debt.
We obviously need to write instances of each interesting class of things
to ferret out the problems, and design good interfaces. I'd recommend
to write few instances, ideally one, then let them mature some before we
create many more of them. Prioritize gaining experience over quantity.
[...]
next prev parent reply other threads:[~2024-09-27 7:29 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-26 14:23 Rust BoF and maintainer minutes and planning the roadmap to Rust Alex Bennée
2024-09-26 15:03 ` Stefan Hajnoczi
2024-09-30 10:23 ` Alex Bennée
2024-09-30 10:51 ` Stefan Hajnoczi
2024-09-26 16:43 ` Daniel P. Berrangé
2024-09-27 7:28 ` Markus Armbruster [this message]
2024-10-22 11:55 ` Paolo Bonzini
2024-09-27 2:06 ` Junjie Mao
2024-10-03 8:53 ` Warner Losh
2024-10-03 8:55 ` Warner Losh
2024-10-03 9:56 ` Alex Bennée
2024-10-03 11:29 ` Michael Tokarev
2024-10-14 22:45 ` Warner Losh
2024-10-15 7:23 ` Alex Bennée
2024-10-03 9:53 ` Daniel P. Berrangé
2024-10-03 10:04 ` Warner Losh
2024-10-03 10:58 ` Daniel P. Berrangé
2024-10-22 11:10 ` Paolo Bonzini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=875xqh4kt0.fsf@pond.sub.org \
--to=armbru@redhat.com \
--cc=alex.bennee@linaro.org \
--cc=anatol.pomozov@gmail.com \
--cc=berrange@redhat.com \
--cc=bofh@freebsd.org \
--cc=brad@comstyle.com \
--cc=dilfridge@gentoo.org \
--cc=dvzrv@archlinux.org \
--cc=edolstra+nixpkgs@gmail.com \
--cc=emulation@freebsd.org \
--cc=hi@alyssa.is \
--cc=hreitz@redhat.com \
--cc=manos.pitsidianakis@linaro.org \
--cc=mjt@tls.msk.ru \
--cc=mrezanin@redhat.com \
--cc=ncopa@alpinelinux.org \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=pkg-qemu-devel@lists.alioth.debian.org \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
--cc=thuth@redhat.com \
--cc=virtualization@gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.