Let's jump right into it, I'm here to convince you to start blogging
about Rust if you haven't and if you have to continue to do so, and
possibly even more if you have the time for that. Why blog about it?
What if I have nothing to contribute? Even if I did how would I even
know what to write about? Fear not. All of these questions will be
answered so let's start with the biggest one.
Why we should blog more about Rust
Well chances are if you're reading this article you like Rust right?
Even if you don't you might have some constructive criticism about it
which is just as valuable. If the community can't ascertain the problem
points because no one speaks up then we can't fix it. Blogging is a way
in order to present ideas and explanations to a group of people. It
covers a wide variety of things such as project announcements,
tutorials, new ideas, explanations of language features or anything else
that you can think of. The point is that this is a platform for
exploring all of these things and articles are a great way to draw
a community together to discuss ideas, get excited about them, debate on
what should come next, what we can do differently, and explore the
language together. They provide an invaluable wealth of information
about how to do things that resources like Stack Overflow or the Book
just might not cover. They're a way to add to our collective knowledge
about Rust and to prevent us from making the same mistakes as well as
picking up new tricks to do things that we didn't think of before.
There's no downside to these articles because it promotes the language
in search results, can benefit new users, can benefit advanced users,
and can teach things to people in ways that other resources couldn't
(since we all learn differently).
I think most importantly though it helps spread around that Rust is
a serious language and can be used in production and by people. I had
a wonderful conversation with Steve Klabnik and others about this a
couple months back when he came to Boston for the meetup. Someone had
asked what one of the biggest blockades to adoption he could see being
in Rust's way. His answer was that we need people to talk about Rust and
provide tutorials and projects. If we don't have the documentation or
the words to show Rust is being used then companies don't see a reason
to adopt a lesser known language. Why risk it on something small that
might not be supported? This is why it's imperative that we blog about
what we know and learn. I'm assuming we want this language to succeed
of course and that we would like to use it in production. That's why we
need to blog about it more!
Well, you might be asking yourself, why should I blog? What benefit do
I get out of it?
What you get out of blogging
If I haven't convinced you out of those things alone then here is a list
of what you gain from blogging:
Writing experience. The more you write the better you get. By
learning how to articulate your words to people better you'll not only
benefit in your writing and documentation, but even being able to convey
ideas to others precisely both on and offline.
Constructive feedback! The community always loves to point out cool
things you might have missed in your article or correct what was wrong
about it. These are all beneficial things. It clears up
misunderstandings about what you had learned (for instance my iterator
article had some glaring inaccuracies that were pointed out to me) and
allows you to learn more. I see no problem with that!
Your name gets out there. Employers like seeing you have an online
presence and that you engage in some coding community of sorts. Blogging
is perfect for that, and if your content is really great you stand out
in the community. Take a look at burntsushi's article on
a tool he wrote. It's long and detailed but it shows he has a grasp of
what he wrote and understands other's code as well. A prospective
employer could learn more in that article than what could be done in an
in person interview. My point is that you'll have higher visibility
amongst peers and prospective employers and that's good.
You get to help people! Writing about something you were stuck on
only benefits others who were having the same problem. Documenting
a solution is great and not doing so only hurts.
What do you have to lose? There's no downside to blogging about
things you learn and bringing up new ideas for consumption.
I want to blog but what about?
You've made it this far so you're probably convinced. Maybe you don't
know what to talk about. Well here are some ideas:
Something new you learned. Don't worry if it has been talked about
before. If it's the first time you've learned it then you're one of the
lucky 10,000. Talking about what you just learned solidifies your
knowledge on the subject and it helps teach people who haven't learned
about it before, just like you before the post!
Tutorials for various projects or crates. For instance Tokio is close
to empty on documentation but it's something the community really wants
to use. If you understand it and are able to do something with it
writing a well written blog post really helps out. Maybe you've figured
out how to use iron well (which also isn't too great with examples and
documentation), so write about it!
Announce your creation to the world with how to use it! You've made
something cool in Rust. Show it off, tell us how to use it, and be proud
of your work.
Maybe you have a new feature in mind for Rust. Think about it and
write it out. Maybe you can turn it into an RFC eventually!
Maybe you went to a Rust meetup. Blog about your experience there!
What was shown off? What did you learn?
You've figured out a really neat way to do something and think others
can benefit from it too. Tell us about it! Explain what it's good for
and what we can gain from it.
If you're new to Rust, explain your experiences. You'll only be new
once and learning about pain points and enjoyable experiences help the
community know what to focus on and improve.
I hope I've convinced you to start talking about your experiences with
Rust and given you a few ideas to start with. I really love this
language and I want it to succeed and I hope you do too. Nothing gives
me greater joy than seeing what cool stuff the community comes up with
or learns each week. I look forward to what I can learn from you all and
what you'll create on a more regular basis.