Conference Report: Friendly, Diverse Rust Camp

berkeley-campusAs technical writers, the demands for us to learn more can seem endless. New tools, ways to compose content, demands for metrics, and, of course, a never-ending list of new features to document. I firmly believe, though, that we should not get too hung up on meeting only very specific knowledge requirements for a job. We should look for ways to step outside our narrow sphere and learn something new, even if it’s not immediately practical. College students are encouraged to learn all sorts of subjects that don’t have an immediate monetary aspect. There’s a lot to be said for continuing that throughout our adult lives.

Early in the summer, I saw a Twitter post mentioning Rust Camp in Berkeley on August 1. I had seen mention of Rust, a systems language, around the Internet. Developed at Mozilla a few years ago, Rust is one of the first programming languages to be completely open-source, and pretty well open in every way, ever since it was first conceived. You can see its history, and every line of changed, added, or deleted code, on Github. https://github.com/rust-lang/rust

Diversity at Technology Conferences

rustcamp-logoWhat intrigued me even more was the news that some generous community members were offering free tickets to people who were part of underrepresented groups in system language software development. “Underrepresented” included gender, race, ethnicity, and disability. The community hoped to encourage people who did not know anyone at the conference, and who would “stick out” as being different who might be reluctant to attend. Certainly I know the concern well. I attended Cloud Camp a few years ago, one of only five women to attend (and one woman went to promote her dating service). As part of the Mozilla heritage, the Rust team appears committed promoting diversity, as you can see in one of their continuing discussions. Such public discussion ensures that decision hashed out “aloud,” and not in secret.

Many technology conferences are making a serious effort to encourage diversity. Take a look here: https://storify.com/radiomorillo/tech-conferences-w-scholarships. Technical writing conferences also have opportunities for would-be attendees to volunteer or otherwise obtain subsidies to attend. Many conferences organizers would love to do more, but need more sponsorships.

The Talks

Often people wonder if it’s worth attending a conference if you are not a serious practitioner in that field. After my experience at the Rust conference, I most definitely say yes. By devoting a Saturday to the cause, I learned a lot about computer programming and generally applicable software development concepts that I would probably not have stumbled upon otherwise. Since I have studied several programming languages, and I had completed the tutorial and read some documentation, so I didn’t arrive at the conference completely ignorant. My fellow attendees (at least at my table) lacked Rust expertise. But that’s okay—we had expert speakers.

These speakers really knew how to zero in on highly practical and concrete topics in their talks, so I felt I learned something after each talk. (Here’s a list of the Rust Camp topics.)

The talks often pointed to the documentation and stressed its importance. At one point, one speaker said “Docs are hard!” A small debate then broke out about whether the page shown on the screen was actually correct and how it should be modified. Not exactly high drama, but proof that in the Rust world, documentation is indeed very important, particularly when it comes to showcasing the power and functionality of a new programming language. As with API documentation in general, developers do read documentation for programming languages.

Some of my favorite moments:

  • Matt Cox, in his talk “Learning Systems Programming With Rust”, assuaged the anxieties of some would-be Rustaceans (yes, that’s what they are called) who do not have much experience using low-level programming languages like C or C++. Cox used Ruby and Python alongside Rust to demonstrate stacks, heaps, and pointers—all very important at the system level, but hardly considered in high-level programming languages.
  • Carol Nicholls-Goulding, in her talk “Navigating the Open Seas”, discussed how the entire history of the Rust programming language can be viewed in the archives of Github and the mailing list. Few, if any, languages have this degree of openness, even ones that are now open-source. If you want to find out why a particular feature was implemented in a certain way, you just have to dig for it. Hearing this talk, I was once again reminded of the importance of highly detailed commit comments, even if that seems like an unnecessary annoyance as you rush to check in your documentation or code.
  • Paige Peterson, in “Rust in Production”, talked about how when MaidSafe converted their codebase from C++ to Rust, the lines of code were reduced by a factor of 10.
  • Yehuda Katz, in “Using Rust from C… or Any Language”, explained what is probably one of the most common applications of Rust—integrating Rust modules with applications or libraries written in other languages.

Rust is not that common in production—yet. But I suspect, given the language’s increasing maturity (version 1.0 was just released in May 2015), we will soon start to see it more.

Look at the Rust documentation

Intrigued by Rust and want to learn more? The Rust playground is almost as fun as it sounds. And you can find out how to create code by reading the Rust documentation. The tutorials perfectly illustrate the concept of getting the user very quickly to “Hello, World”. The installation went easily, the instructions were easy to follow, and I was coding within about five minutes.

Do you see improvements you want to make in the documentation? I get the impression that the Rust team welcomes contributors, so take some time to investigate.

image credit: rustcamp.comPleasant and well-organized events are fun

So many aspects of this conference were done really well. I found my fellow attendees to be friendly. The schedule was never off by more than five minutes. I have seen more of a trend to frequent breaks in recent conferences, an idea I fully support. Coffee, lunch, and cupcakes were all of good quality. And the University of California, Berkeley campus is beautiful.

Shout-out to volunteers

Volunteers run the Rust camp event, and I greatly appreciate their efforts. More and more meetups and conferences are done this way, and it requires a huge commitment on the part of the volunteers. Whether you want to dive into some esoteric programming language, or brush up on the latest technical writing trends, take a look at what is happening in your community, to see where you can jump in.