this post was submitted on 11 Jun 2023
42 points (100.0% liked)

Programming

13368 readers
1 users here now

All things programming and coding related. Subcommunity of Technology.


This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.

founded 1 year ago
MODERATORS
 

I’m currently going through the process of teaching myself Rust as a fun summer project, especially since it’s different enough from the Java/Spring stack I use at work regularly. What are some interesting projects I can work on in Rust to get some familiarity with how the language works, and get an idea of some of the libraries I can use with it?

top 16 comments
sorted by: hot top controversial new old
[–] kittenroar 9 points 1 year ago (1 children)
[–] BinaryEnthusiast 3 points 1 year ago

Oh that is a very cool resource. I haven't seen this one before. I am definitely checking this out. Thanks!

[–] mifuyne 9 points 1 year ago (2 children)

If you're not opposed to books and have an interest in gamedev as well, then maybe give Hands-on Rust a shot. After some basics, it covers building a dungeon crawler (roguelike).

Admittedly, I own a copy but I haven't had the chance to go through it yet. I've heard positive things about it, though. Might start soon, wanting to get more in-depth with Rust myself recently.

[–] 0xSim@fedia.io 3 points 1 year ago

The same author also has a free tutorial here. The ECS library used in it is a bit dated, and it's a good idea to follow the tutorial but use a more modern one (like hecs, or bevy_ecs if you're feeling more comfortable in rust)

[–] BinaryEnthusiast 3 points 1 year ago

Huh that's a pretty solid looking book. I did a quick glance through the chapter list online, and there is a fair amount of content in that. A solid book like that may be good for me to check out as well

[–] Yoru_Sulfur@lemmy.davidbuckley.ca 7 points 1 year ago (2 children)

I like to start out any new language with an implementation of Conway's Game of Life. It's relatively simple, but tends to exercise a decent bit of the language.

[–] BinaryEnthusiast 4 points 1 year ago (1 children)

You know, I’ve never implemented Conway’s game of life, and that sounds like an excellent way to work on a new language

[–] sotolf 2 points 1 year ago

It's a fun little project to do :)

[–] Bardak@lemmy.ca 3 points 1 year ago

Seems like a good way to play around with multithreading, SIMD and even shaders if you wanted to.

[–] pimeys@lemmy.nauk.io 6 points 1 year ago* (last edited 1 year ago) (1 children)

Rust really shines with parsers and generators. They are easy enough and fun to write. Maybe write a lisp with it? Or a prettifier for your favorite language...

If you go with a parser, this one is an interesting crate to start messing around with:

https://github.com/maciejhirsz/logos

[–] BinaryEnthusiast 4 points 1 year ago

Huh interesting, Parsing is always a fun exercise for learning some language features. I may try that out then for a good starting project. Thanks!

[–] donio 5 points 1 year ago

For me "scratch your own itch" is what works best for keeping up the motivation. Think of a tool or service that you'll actually want to use yourself and implement that in the language you are learning. Or create a better version of an existing tool that you regularly use.

[–] pinkpatrol@anarch.is 3 points 1 year ago (1 children)

For my own projects I’m trying to build things I actually want. Tools for myself. But now the hard part becomes identifying a tool you wish you had, and scoping it down enough so that it’s appropriately sized for a new language. Tricky to approach the task from two ends.

[–] alottachairs 1 points 1 year ago

Yes! An example: I needed to start a journal to write my thoughts, therapist's orders. Also wanted to learn kivy and write a basic app for android. So I wrote a little journal app for myself to make me want to journal, and i learned the basics of kivy framework! Sorry its not a rust example

[–] karburator@lemmy.world 2 points 1 year ago

What are some interesting projects I can work on in Rust to get some familiarity with how the language works

My recommendation is always the same, regardless of the language:

https://adventofcode.com

(And here is some dogfood: I've created !adventofcode@lemmy.world, so you can ask questions there and/or share your solutions)

[–] strudel6242 2 points 1 year ago
load more comments
view more: next ›