this post was submitted on 23 Jun 2024
20 points (91.7% liked)

Rust

6024 readers
1 users here now

Welcome to the Rust community! This is a place to discuss about the Rust programming language.

Wormhole

[email protected]

Credits

  • The icon is a modified version of the official rust logo (changing the colors to a gradient and black background)

founded 1 year ago
MODERATORS
 

Hi rustaceans! What are you working on this week? Did you discover something new, you want to share?

all 12 comments
sorted by: hot top controversial new old
[–] [email protected] 6 points 5 months ago

I'm working on a simple and hackable static site generator, stagnant. I wanted a static site generator that utilized html for templates, so I built it myself to learn rust a bit better.

[–] nebeker 4 points 5 months ago (1 children)

I’m working through rust-exercises.com and taking notes on my thoughts. I may or may not want to use it for a short workshop at work - mostly for fun, since I work with a very different stack.

So far, I don’t know if I like the exercises, because the target audience doesn’t feel like it’s clearly defined: you both solve is_even with an if/else and overflow an i8 to -1. I don’t think I’ve met the person who is that inexperienced and that knowledgeable…

How are folks liking these exercises?

[–] secana 3 points 5 months ago (1 children)

Never heard of it. I used the Rust book when I started learning it.

[–] nebeker 1 points 5 months ago

I used that and Rustlings and really liked both, but somebody mentioned this and I decided to take a look. It’s cool that it introduces other concepts.

[–] BehindTheBarrier 4 points 5 months ago (1 children)

Working on a blog(entirely for fun), found out the server backend, actix-web, does not handle early termination of a stream well. Wanted to stop an upload if the file size turned out to be too large, but you have to consume the entire upload before returning an error. If not the client will never see the connection close. I guess there is a way to check the size beforehand, but sucks that you can't stop a stream in progress.

Apparently a long standing issue.

[–] SatouKazuma 2 points 5 months ago

Whoa. Yeah, I can see where that would be a problem...

[–] [email protected] 3 points 5 months ago

I'm working on a music player app written in libcosmic. Trying to see how far I can get with this toolkit.

[–] [email protected] 2 points 4 months ago* (last edited 4 months ago)

Apparently generating "Finite Projective Planes". For context on how I got here, I went camping with my family and brought the game Spot It. My brother was analyzing it and came up with the same type of pattern.

When we got home he made a python script to generate these boards, but it was quite slow, so he half joked asking me to rewrite it in Rust.

I kinda struggled a bit since I didn't fully understand what it was doing. Near the end I even got a segfault using safe code😃! (i was spawning a thread with a large stack size, and allocating huge slices on its stack, rather than you know.. boxing the slice Lol.) When I finally got it working, it ended up being in the ballpark of a 23x speedup. Not bad for changing the language choice!

There's lots of room for improvement left for sure. The algorithm could benefit with some running statistics about cols/rows and the algorithm itself is quite naïve and could maybe be improved too :P

[–] [email protected] 1 points 4 months ago (1 children)

Just finished all the Rustlings exercises, moving on to some simple GUI exercises with libcosmic!

[–] secana 1 points 4 months ago

The selling point of Ice (the underlying framework for libcosmic) is the cross-platform compatibility. Can I use libcosmic cross-plat as well, or is it more a specialisation of Ice for Linux with the clear focus on the Cosmic desktop? Would be cool to re-use some widget etc.