# EuroRust 2023 `impl Room`
Check out [the conference website](https://eurorust.eu/workshops/impl-room) for more details on this event.
## How to join
You **must** reserve a (free) ticket for the `impl Room` at [https://eurorust.eu](https://eurorust.eu).
The room has limited capacity and ticketing allows us to make sure that we will have space for everyone who shows up on the day.
## If you want to contribute
Have a look at the list of [proposed projects](#Proposed-projects) below and speak to the relevant contact person to get started!
## If you want to mentor
Add a sub-section to the list below, listing the projects you maintain with a short bio.
Follow the same structure of the existing entries.
# Proposed projects
## Rust-analyzer
**Project**: [rust-analyzer](https://rust-analyzer.github.io/), an LSP implementation for Rust. It powers intelligent refactoring and assists for Rust in your IDE of choice!
**Mentor**: [Lukas Wirth](https://github.com/sponsors/Veykril/)
**Who am I**: I'm a German software engineer at Ferrous Systems and the current lead of the [rust-analyzer team](https://www.rust-lang.org/governance/teams/compiler#rust-analyzer%20team). I started my Rust journey in late 2016 due to being interested in learning a systems programming language. At some point I stumbled accross rust-analyzer where I started contributing in my free time which ultimately led me to join the rust-analyzer team roughly 2 and a half years ago. I've been the main driving force behind it for a bit more than half of that time. I'm a big lover of the Rust language (except for its macros), as such working on an IDE for the language was always quite interesting to me.
## Actix Web
**Project**: [actix-web](https://actix.rs), one of the most popular web frameworks for Rust.
**Mentor**: [Rob Ede](https://github.com/sponsors/robjtede)
**Who am I**: I'm a financial systems engineer based in London, and the lead developer of Actix Web.
After getting my Computer Science Masters degree at The University of Sheffield, I started working in a front-end role. I took an opportunity to introduce Rust to the company as they were splitting components out of a monolithic service. It didn't take long before my focus shifted solely to the backend systems and web server libraries they use now. Picking up stewardship of such a popular crate as Actix Web was a massive personal challenge; but, with the help of the contributors over the past three years, Actix Web has a strong and unique place in the Rust web ecosystem, with plenty more improvements in the works.
In my free time, I enjoy seeing movies and theatre shows and have been preparing my skiing skills for the winter season.
### Thinking Like A Crate Maintainer
For each item in the -lab list (see below), experiement with the APIs and look for:
- sensible types, functions, and defaults
- potential semver hazards
- partial/subset of the API that could be promoted sooner
- APIs that are too opinionated
- bad documentation
### Links
- [`actix-web-lab` crate](https://crates.io/crates/actix-web-lab)
- [`actix-web-lab` examples](https://github.com/robjtede/actix-web-lab/tree/main/actix-web-lab/examples)
- [`actix-web-lab` feature voting results](https://github.com/robjtede/actix-web-lab/discussions/7)
## The art of building Rust CLIs and Linux tools
**Projects**:
- `daktilo`, a tool to turn your keyboard into a typewriter.
- `ratatui`, a library to build rich terminal interfaces.
- `git-cliff`, a highly customizable changelog generator
- `kmon`, Linux kernel manager and activity monitor
- `systeroid`, a more powerful alternative to sysctl
- `gpg-tui`, terminal user interface for GnuPG
- `rustypaste`, a minimal file upload/pastebin service
- `menyoki`, a tool for performing image operations on the command line
- `runst`, a dead simple notification daemon for Linux
- `halp`, a tool to get help with CLI tools
- `linuxwave`, a tool for generating music from the entropy of Linux
Here is the list of issues: https://hackmd.io/@fDZ8f5pSQdmg75PysWJmBw/orhunsprojects
**Mentor**: [Orhun Parmaksız](https://github.com/sponsors/orhun)
**Who am I**: I'm a Rust aficionado with a strong passion for all things open source. I love writing command-line tools and I mostly live in the terminal. I'm one of the maintainers of Ratatui – a Rust library that's all about cooking up terminal user interfaces. I'm also a member of the Arch Linux team and I've been maintaining packages to improve the Rust ecosystem for the users over 2 years now. These days, my curiosity extends to system programming using Zig, as evidenced by my blog series titled "Zig Bits".
## rust-lang/rust
**Project**: [rust-lang/rust](https://github.com/rust-lang/rust), the Rust compiler and standard library.
**Mentor**: [Ethan Brierley](https://github.com/eopb)
**Who am I**: I'm a software engineer at a payments company called TrueLayer and a co-organiser of the [Rust London User Group](https://www.meetup.com/rust-london-user-group/) where I run workshops for Rust beginners. I wrote my first lines of Rust in 2018 while I was studying at sixth form college. Rust enabled me to explore systems programming without getting stuck. I've been excited about the language ever since.
I'm a strong believer in contributing to the tools I use. This has led me to contribute to the Rust project, it's compiler and standard library. I hope to help others become more comfortable with contributing to Rust itself.
When I'm not writing software I can be found photographing insects on the South Downs, near to where I live.
## High-Level FFI Bindings with Rust
**Projects**: [`cargo-cabal`](https://github.com/yvan-sraka/cargo-cabal) and [`hs-bindgen`](https://github.com/yvan-sraka/hs-bindgen) offer fast and safe interoperability between Rust and Haskell.
**Mentor**: [Yvan Sraka](https://github.com/yvan-sraka/)
**Who am I**: I hold a master's degree in maths and computer science applied to biology from Sorbonne University in Paris. I discovered C++ programming as a child and have been actively involved in open-source communities. My commercial experience includes working in 3D Graphics and Runtime design with Rust, Nix, and Haskell. I have taught Systems Programming, Architecture, and DevOps to master's students and have designed algorithm competitions as well as coding workshops for kids/teens (where I help them build small video games). I'm currently based in Brussels and like biking, hiking, climbing, and vegan cooking.
## PyO3
**Project**: [PyO3](https://pyo3.rs) is used to build Rust & Python dual-language software. Many Python packages distributed on PyPI include some Rust!
**Mentor**: [David Hewitt](https://github.com/davidhewitt)
**Who am I**: I am a software developer based in Oxford making Python and Rust a great pair of technologies to work with. I spend 80% of my working days at [Pydantic](https://pydantic.dev) and 20% (plus any free time I can find) as the main maintainer of PyO3. When not coding I am walking my dog and looking after my 1 year old son.
_Note: Due to my train ticket to Brussels I will arrive at 11:30-12:00. Please feel free to find an issue on PyO3's Github if you want to start contributing before I arrive (maybe an issue marked "Hacktoberfest" is a good starting point). If I have internet from the train I can help you remotely!_
## Awesome testing!!!
**Project**: [awesome-rust-testing](https://github.com/hoodie/awesome-rust-testing)
**Mentor**: [hoodie](https://github.com/hoodie/)
WANT TO HELP?? please help up by adding more things or even better: evaluating the things on the list
Are the things still maintained? Can we add badges here? short descriptions? Quality Control.
**you can just list new links here and I will add them to the repo**