24 days of Rust - conclusion

This article marks the end of the second edition of 24 days of Rust. I hope you enjoyed it and maybe found inspiration for a project or two. I sure did :-) Some of the libraries I wrote about are familiar to almost entire Rust community. Some are fairly obscure but I find them interesting. Regardless, I learned a lot just by writing, trying to come up with meaningful code examples and editing my drafts. This was my intention all along - to learn something for myself while contributing these articles to the community.

A return to writing

I started thinking about doing this series again some time around May-June, when I heard about diesel . A few weeks later I attended PolyConf in Poznań and had the pleasure of speaking to diesels 's author - Sean Griffin. That convinced me to write an early draft of an article on diesel .

Before December started, I had compiled a list of crates, mostly doing this:

I use X for doing Y in Python, is there anything like that for Rust?

Or: that thing was a few weeks ago in Crate of the Week, let me see... ooh, it would be fun to use, let's write an example to familiarize myself with the API.

Or: this is an entirely new territory for me; I can't think about a simple example now, but I'll come back to it later.

I ended up with a Trello board full of ideas, partial examples and several snippets of prose. What was left was just drawing the rest of the effing owl ;-)

TILWW24DOR

Or, Things I Learned While Writing 24 Days Of Rust:

I missed a few cool Cargo subcommands, for example: cargo edit , cargo check or cargo modules

, or it's possible to run benchmarks on stable Rust with bencher

I actually understood what lazy_static does

does you can pattern match in function arguments

bow ties are cool

there's a crate for building arbitrary binary data - test-assembler

habitat is built with Rust

This is only a partial selection of valuable information I picked from replies at /r/rust, Twitter messages etc. I'm putting it here in hope it may be useful to someone else as well.

Feedback

The articles received a lot of positive feedback from the Rust community and I'm very grateful for that. You are fantastic! Here are some replies from Reddit, Twitter etc.:

Thanks for these great blog posts. Each one was extremely clear and a very good intro to the crate and its purpose. As a beginner, this was a boon to discover some bits of the Rust ecosystem.

Hey, I just wanted to say thanks for you taking the time to write these up. They're quite fun to read, and I've even learned a thing or two :)

It seems that your parsing logic is a little bit broken – the extendend length and mask fields are optional, and you're parsing them unconditionally – check out the examples from the RFC. Correctness aside, having an example on conditional parsing in nom would be a nice addition to the post also! Anyway, thanks for great article!

This series is incredible. ❤

Now I'm thinking about how I could write some Rust code to automate my various workflows... Awesome blog 👍

I really like that this series shows how to use some less-talked about Rust libraries to write actual, potentially useful software.

Thank you all! This motivates me to write more. (And yes, I'll try to fix the parsing example...)

24 days of Rust 2016 - archive

What's next?

Hopefully I'll get back to more regular writing. Now that I'm more comfortable with Rust, I hope to use it for some serious project and not just an article's worth of example. The Rocket web framework was just announced and it looks great, I would like to try it out soon. There's also a growing ecosystem of Machine Learning libraries and this is something I'm interested in as well. Or maybe play with tokio for async stuff? There's a lot of ideas!

Learning resources

The 24 days of Rust series may be over for this year, but the Rust journey continues. It's dangerous to go alone, so here are a few links:

And here's a selection of Rust-related blogs worth following:

And with that, it's time to really finish writing for today.

Rusty Holidays to you all!

Photo by bvi4092 and shared under the Creative Commons Attribution 2.0 Generic License. See https://www.flickr.com/photos/bvi4092/14253264351/

Napisane 24 grudnia 2016