#rustaceanstation — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #rustaceanstation, aggregated by home.social.
-
I'm looking for a remote Rust/Elixir role (EU-friendly timezones, US East is ok).
I have 7 years of #rustlang, 9 years of #elixirlang, 20+ years of #linux.
I have over 20 years of experience as a professional developer, and I've been working remotely for 12 years, during which I helped US and EU companies build reliable software.
On the side, I've been developing #asciinema, the best tool to record and stream your terminal sessions. I talk about it in the context of Rust in this #RustaceanStation interview: https://rustacean-station.org/episode/marcin-kulik/
My current contract ends soon, so this is a great time to talk! I'm open to both full-time roles and short term contracts.
My linkedin profile: https://www.linkedin.com/in/marcinkulik/
Boost please!
-
The #RustaceanStation podcast just released an interview that Luuk van der Duim did with @DataTriny and me about #AccessKit at #RustWeek: https://rustacean-station.org/episode/accesskit-with-matt-campbell-and-arnold-loubriat/
-
My friend and I are doing a presentation on #WASM. Part of it is taking a program (a sudoku solver) written by a friend (who, for this implementation, used #GeminiAI). The plan was for my friend to re-write it in #C, which can be compiled to WASM; and for me to write it in #RustLang, which also can be compiled to WASM. To keep the programs the same we couldn't optimize the actual algorithms, but we could optimize anything else. So, for instance, no making a linked list of empty spaces; but inlining cell lookup is fine. #Optimization
On my machine, my initial implementation (again, in Rust), was 50% slower than his implementation in C (running over the same puzzle a million iterations).
I started to optimize using #XcodeInstruments. My first time with this tool. Just didn't understand it well enough. I tried many optimizations: a one-dimensional array backing the board instead of an array of arrays; inlining particular functions; finding places where I knew it couldn't fail and removing checks. Things like that. Sure, I made it a little faster.
Then listening to #RustaceanStation I learned of a specific feature. A simple feature. In my code, I represented board cells with a simple enum, almost an exact copy of Option, but instead of None, it is Empty; instead of Some(x), Digit(x). The new feature is NonZero. Option<u8> in Rust is two bytes. Option<NonZero<u8>> is one byte (because the u8 can't be 0, Rust can use the 0 value to mean None)!
I applied exactly that one change to my implementation and that optimization, all by itself, made my program faster than his C implementation.
I was completely surprised, and very pleasantly.
-
In a #RustaceanStation interview, Lars Bergstrom mentioned that the #Android team had looked at using #Swift as a memory safe native language to complement C++ (where finally #Rust was chosen).
I would love to see the alternate reality in which that came to pass.
Imagine if you could write all your mobile apps in Swift… just Swift. 🥹
-
I find it kind of amazing there's a podcast about a programming language (https://rustacean-station.org/) these days. You would think what language used would matter less than what your program does, but programming is a way of creative expression. It's an interesting listen.
-
I am a repeat offender now: Here is my second interview with #rustaceanstation:
https://rustacean-station.org/episode/tobias-hunger-slint-1.0/
-
👋 Hi to all my new followers! You can listen to me ramble about art, graphics programming, math, gamedev, unsafe rust, and the horrors of uninitialized memory for an hour on the latest episode of #RustaceanStation #RustLang :)