Skip to content

Commit 5ac28c8

Browse files
authored
Merge pull request #415 from jplatte/master
Remove uses of kramdown-specific markdown feature
2 parents 30dfa95 + 03cf446 commit 5ac28c8

6 files changed

+37
-37
lines changed

posts/2016-06-30-State-of-Rust-Survey-2016.md

+14-14
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,13 @@ We plan to run a similar survey each year to track how we're progressing and spo
1414

1515
We wanted to make sure the survey was open to both users of Rust and to people who didn't use Rust. Rust users give us a sense of how the current language and tools are working and where we need to improve. Rust non-users shed light on missing use-cases and obstacles for Rust’s adoption.
1616

17-
![Do you use Rust][do-you-use-rust]{:class="center"}
17+
![Do you use Rust][do-you-use-rust]
1818

1919
We're happy to report that more than a third of the responses were from people not using Rust. These respondents gave a lot of great feedback on adoption roadblocks, which we'll talk about later in this blog post.
2020

2121
## Growing numbers trying Rust
2222

23-
![Time using Rust][time-using-rust]{:class="center"}
23+
![Time using Rust][time-using-rust]
2424

2525
Almost 2,000 people responded saying they were Rust users. Of these, almost 24% were new users. This is encouraging to see. The community is growing, with a healthy portion of newcomers playing with Rust now that could become long-term users.
2626

@@ -30,47 +30,47 @@ Equally encouraging is seeing that once someone has become a Rust user, they ten
3030

3131
We asked a number of questions trying to get a clear picture of what it's like to use Rust today. The first questions focused on the Rust compiler.
3232

33-
![Versions of Rust you use][versions-of-rust]{:class="center"}
33+
![Versions of Rust you use][versions-of-rust]
3434

3535
In the above chart, you see the top five rustc version combinations for users writing Rust. At the time of the survey, version 1.8 was the latest stable release. This factors strongly in the results as the most popular version of Rust to use. Perhaps surprisingly is how much the nightly also plays a key role in for many developers, with over 400 using it as their only Rust compiler version. Stabilizing features and APIs, and thereby encouraging transition to the stable channel, continues to be a priority for the team.
3636

37-
![Has an upgrade broken code][after_1_0_broke_code]{:class="center"}
37+
![Has an upgrade broken code][after_1_0_broke_code]
3838

3939
In the pre-1.0 days, Rust releases would regularly break user's code. In reaching 1.0, we began releasing versions that maintained backwards compatibility with 1.0. For stable Rust, 83.6% of users did not experience any breakage in their project as they upgraded to the next stable version. Previous research based on automated testing against the ecosystem put this number [closer to 96%](https://internals.rust-lang.org/t/rust-regressions-2015-year-end-report/2993), which is more in line with expectations.
4040

4141
Why the discrepancy? Looking at the data more closely, it seems people used this question as a catch-all for any kind of breakage, including packages in cargo, compiler plugins needing updates, and the changes to libc. We'll be sure to word this question more clearly in the future. But we also plan to launch a forum discussion digging further into the details, to make sure that there’s not something missing from the test automation that runs against crates.io.
4242

43-
![Fixing broken code][easy_to_fix]{:class="center"}
43+
![Fixing broken code][easy_to_fix]
4444

4545
Luckily, regardless of what bucket the breakage fell into, they were largely easy to solve as people upgraded.
4646

47-
![Do you like Cargo][like_cargo]{:class="center"}
47+
![Do you like Cargo][like_cargo]
4848

4949
Another big piece of the Rust development experience is using the Cargo tool. Here we saw overwhelming support for Cargo, with 94.1% of people saying they would rate it a 4 or 5. This helps to emphasize that Cargo continues to be a core part of what it means to write Rust (and that people enjoy using it!)
5050

5151
## Rust at Work
5252

5353
An important part of a programming language's success is that it's used for "real" work. We asked a few questions to understand how Rust was doing in the workplace. Were people using it in their day jobs? How much was it being used?
5454

55-
![Using Rust at work][rust_at_work]{:class="center"}
55+
![Using Rust at work][rust_at_work]
5656

5757
We were pleasantly surprised to see that already, in Rust's first year, 16.1% of Rust users are using Rust at work part-time and 3.7% are using at work full-time. Combined, **nearly 1/5th of Rust users are using Rust commercially**. We're seeing this reflected in the growing number of [companies using Rust](https://www.rust-lang.org/friends.html).
5858

5959
We also asked about the size of the codebases that Rust developers were building.
6060

61-
![Size of part-time codebases][part_time]{:class="center"}
61+
![Size of part-time codebases][part_time]
6262

63-
![Size of full-time codebases][full_time]{:class="center"}
63+
![Size of full-time codebases][full_time]
6464

6565
We see strong numbers in project size as developers put more time into Rust at work. Over half of the Rust users using Rust full-time at work have codebases that are tens or hundreds of thousands of lines of code.
6666

6767
Equally encouraging is the growth we expect to see in Rust in the workplace, as we see in the next chart.
6868

69-
![Using Rust at work in future][rust_at_work_future]{:class="center"}
69+
![Using Rust at work in future][rust_at_work_future]
7070

7171
Of those not currently using Rust at work, more than 40% plan on being able to use Rust at work. This will help carry Rust to more places and in more areas. Speaking of carrying to more areas, we saw a wide variety of job domains represented in the survey:
7272

73-
![Demographics of work areas][demo_areas]{:class="center"}
73+
![Demographics of work areas][demo_areas]
7474

7575
It's encouraging to see people from so many different backgrounds interested in Rust. It underscores Rust’s potential across a broad spectrum of programming tasks and the need for libraries to support these areas.
7676

@@ -128,17 +128,17 @@ We've also been investing in other tooling muscles, including a [new installer w
128128

129129
## Survey Demographics
130130

131-
![Popular meetup locations][meetup_locations]{:class="center"}
131+
![Popular meetup locations][meetup_locations]
132132

133133
Today, Rust has a worldwide audience. Rather than being lumped in one place, we see Rust users in Europe, Japan, Australia, with new meetups popping up everyday. We also asked where people who responded lived, and over 1000 of the 3000 survey responses mentioned living in Europe (with USA following it up at 835).
134134

135-
![Demographics on programming language background][what_languages]{:class="center"}
135+
![Demographics on programming language background][what_languages]
136136

137137
The parents of most modern languages, C and C++, show strongly in terms of the programming languages that people are most comfortable with. Close by are Java and JavaScript. Perhaps one surprising point here is the large number of Python users attracted to Rust.
138138

139139
For those who already have existing projects in other languages but want to use Rust, it's worth mentioning here the on-going efforts to aide in using Rust with other languages, including work to [integrate with Ruby](https://github.com/rustbridge/helix) and [integrate with JavaScript/Node.js](https://github.com/rustbridge/neon).
140140

141-
![Members of underrepresented groups][underrepresented]{:class="center"}
141+
![Members of underrepresented groups][underrepresented]
142142

143143
Rust strives to be a [warm, welcoming and inclusive community](https://www.rust-lang.org/conduct.html). The survey shows that, despite that spirit, we have a ways to go in terms of diversity. We have nascent efforts, like [RustBridge](https://github.com/rust-community/rustbridge), to more proactively reach out to underrepresented groups and make Rust more accessible, but there is a lot more work to be done. We'll be watching the results of this part of the survey closely and continue to invest in outreach, mentoring, and leadership to foster inclusivity.
144144

posts/2016-09-08-incremental.md

+10-10
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ time with a different value for `a`. For the first time around, `a` will be
110110
/ / \
111111
a=1 b=2 c=3
112112
-->
113-
![Initial Computation of a+b×c][algebra-initial]{:class="center"}
113+
![Initial Computation of a+b×c][algebra-initial]
114114

115115
Assume that we "saved" the intermediate results at each step, that is, we
116116
remember somewhere that `b×c` is `6` and `a+b×c` is `7`. Now, in the second
@@ -129,7 +129,7 @@ entire, tedious multiplication.
129129
a=4 b=2 c=3
130130
-->
131131

132-
![Updating the Computation][algebra-update]{:class="center"}
132+
![Updating the Computation][algebra-update]
133133

134134
Let's see how this scheme translates to the compiler.
135135

@@ -158,7 +158,7 @@ produce:
158158
>===========>===============>===========>===========>
159159
parse analysis codegen linking
160160
-->
161-
![Compiler Phases and their By-Products][compiler-phases]{:class="center"}
161+
![Compiler Phases and their By-Products][compiler-phases]
162162

163163
First the compiler will parse the source code into an abstract syntax tree
164164
(AST). The AST then goes through the analysis phase which produces type
@@ -214,7 +214,7 @@ practice:
214214
/ / \
215215
a b c
216216
-->
217-
![Dependency Graph of a+b×c][algebra-dep-graph]{:class="center"}
217+
![Dependency Graph of a+b×c][algebra-dep-graph]
218218

219219
As you can see, we have nodes for the inputs `a`, `b`, and `c`, and nodes for
220220
the intermediate results `b×c` and `a+b×c`. The edges should come as no
@@ -232,7 +232,7 @@ add another intermediate result `b×c+c` to our computation:
232232
/ / \ /
233233
a b c
234234
-->
235-
![Example of a non-tree Dependency Graph][algebra-dep-graph-dag]{:class="center"}
235+
![Example of a non-tree Dependency Graph][algebra-dep-graph-dag]
236236

237237
What makes this data structure really useful is that we can ask it questions
238238
of the form "if X has changed, is Y still up-to-date?". We just take the node
@@ -271,7 +271,7 @@ have all our data nicely linked up, mostly automatically:
271271
parse analysis codegen linking
272272
-->
273273

274-
![Dependency Graph of Compilation Data][compiler-dep-graph]{:class="center"}
274+
![Dependency Graph of Compilation Data][compiler-dep-graph]
275275

276276
This dependency graph is then stored in the incremental compilation cache
277277
directory along with the cache entries it describes.
@@ -291,7 +291,7 @@ are not up-to-date anymore and just remove them from the cache:
291291
>===========>===============>===========>===========>
292292
parse analysis codegen linking
293293
-->
294-
![Using the Dependency Graph to Validate the Incremental Compilation Cache][compiler-cache-purge]{:class="center"}
294+
![Using the Dependency Graph to Validate the Incremental Compilation Cache][compiler-cache-purge]
295295

296296
Anything that has survived this cache validation phase can safely be re-used
297297
during the current compilation session.
@@ -355,7 +355,7 @@ much time is spent in each one on average:
355355
356356
TIME: 5% 20% **65%** 10%
357357
-->
358-
![Relative Cost of Compilation Phases][compiler-phases-cost]{:class="center"}
358+
![Relative Cost of Compilation Phases][compiler-phases-cost]
359359

360360
As you can see, the Rust compiler spends most of its time in the optimization
361361
and codegen passes. Consequently, if this phase can be skipped at least for
@@ -384,7 +384,7 @@ of a crate's object files can be re-used. This might occur when changing one
384384
crate in a multi-crate project and downstream crates need to be rebuilt but
385385
are not really affected.
386386

387-
![Normalized Incremental Compilation Build Times][performance-full-re-use]{:class="center"}
387+
![Normalized Incremental Compilation Build Times][performance-full-re-use]
388388

389389
As you can see, compiling a crate for the first time in incremental mode can be
390390
slower than compiling it in non-incremental mode. This is because the dependency
@@ -409,7 +409,7 @@ scratch.
409409
The next graph shows which impact various changes made to the `regex` crate
410410
have on incremental rebuild times:
411411

412-
![Build Times After Specific Changes][performance-changes]{:class="center"}
412+
![Build Times After Specific Changes][performance-changes]
413413

414414
The numbers show that the effectiveness of incremental compilation indeed depends a
415415
lot on the type of change applied to the code. For changes with very local

posts/2017-05-15-rust-at-two-years.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ ambitions of dyed-in-the-wool systems hackers.
1111

1212
It's been two years since Rust 1.0 was released. Happy second birthday, Rust!
1313

14-
![Group picture from RustFest Berlin][group-pic]{:class="center"}
14+
![Group picture from RustFest Berlin][group-pic]
1515

1616
*Rustaceans at RustFest Berlin, September 2016. Picture by Fiona Castiñeira*
1717

@@ -231,7 +231,7 @@ release mode will often be **five times as fast** with incremental compilation!
231231
This graph shows the improvements in compilation time when making changes to
232232
various parts of the regex crate and rebuilding in release mode:
233233

234-
![Graph showing improved time with incremental compilation][incrcomp-svg]{:class="center"}
234+
![Graph showing improved time with incremental compilation][incrcomp-svg]
235235

236236
Try out incremental compilation on nightly Rust with
237237
`CARGO_INCREMENTAL=1 cargo <command>`!

posts/2017-06-27-Increasing-Rusts-Reach.md

+9-9
Original file line numberDiff line numberDiff line change
@@ -84,15 +84,15 @@ Who should apply for this project:
8484
- Interest in improving usability of developer-facing documentation and tools
8585
- Interest in learning in detail about Rust syntax and semantics
8686

87-
![Nick Cameron][nrc]{:class="right-thumbnail"}
87+
![Nick Cameron][nrc]
8888

8989
*About Nick Cameron: I'm a Rust core team member and lead the dev-tools team. I work on a bunch of
9090
tools including Rustdoc, Rustfmt, the Rust Language Server, and the Rust compiler. I want to make
9191
Rust developer tools awesome, and user experience is a key part of that. I want Rust to change the
9292
world (or at least the programming world), and we can't do that without making the Rust language
9393
and community more accessible to more people.*
9494

95-
![Steve Klabnik][steveklabnik]{:class="right-thumbnail"}
95+
![Steve Klabnik][steveklabnik]
9696

9797
*About Steve Klabnik: I used to work on Ruby on Rails before Rust, and one of the reasons why I love
9898
Rust is that as a project, we're committed to helping people learn Rust as their first low-level
@@ -127,7 +127,7 @@ Who should apply for this project:
127127
- Interest in improving the new Rust developer experience
128128
- Interest in learning how to improve and create lints
129129

130-
![Manish Goregaokar][manishearth]{:class="right-thumbnail"}
130+
![Manish Goregaokar][manishearth]
131131

132132
*About Manish Goregaokar: I'm a research engineer at Mozilla working on Servo. I care a lot about
133133
improving workflows and tooling, especially around the newcomer experience.*
@@ -154,7 +154,7 @@ Who should apply for this project:
154154
- Interest in improving approachability of Rust
155155
- Interest in investigating the motivations behind visitors to the main website and/or crates.io
156156

157-
![Aaron Turon][aturon]{:class="right-thumbnail"}
157+
![Aaron Turon][aturon]
158158

159159
*About Aaron Turon: I'm a Rust core team member, manage the Mozilla Rust team, and currently lead
160160
the library, infrastructure, and Cargo teams. On the technical side, I'm most driven by language
@@ -181,7 +181,7 @@ Who should apply for this project:
181181
- Background or interest in creating visual teaching tools like diagrams or drawings a plus
182182
- Interest in learning Rust concepts and teaching what you learn to others
183183

184-
![Niko Matsakis][nmatsakis]{:class="right-thumbnail"}
184+
![Niko Matsakis][nmatsakis]
185185

186186
*About Niko Matsakis: I'm a member of the Rust core team as well as the Rust language and compiler
187187
teams. I focus mainly on the design and implementation of the language itself. I want to do what I
@@ -205,7 +205,7 @@ Who should apply for this project:
205205
- Experience using a web framework written in some other language
206206
- Interest in learning how to write web applications in Rust and teaching what you learn to others
207207

208-
![Sean Griffin][sgrif]{:class="right-thumbnail"}
208+
![Sean Griffin][sgrif]
209209

210210
*About Sean Griffin: In addition to my Rust work, I am one of the maintainers of Ruby on Rails. One
211211
of the great things about Rails (and web development) is that it has really helped to lower the
@@ -235,7 +235,7 @@ Who should apply for this project:
235235
- Background in writing, teaching, or documentation
236236
- Interest in, and opinions about, improving tools for creating and displaying code documentation
237237

238-
![Felix Klock][pnkfelix]{:class="right-thumbnail"}
238+
![Felix Klock][pnkfelix]
239239

240240
*About Felix Klock: I'm the main developer of tango (as well as a member of the Rust compiler and
241241
language teams). I actively use tango for authoring my presentation slides about Rust. I
@@ -267,7 +267,7 @@ Who should apply for this project:
267267
- Interest in learning how to translate an application to Rust
268268
- Interest in researching and documenting features that libraries have or don’t have
269269

270-
![Andrew Gallant][burntsushi]{:class="right-thumbnail"}
270+
![Andrew Gallant][burntsushi]
271271

272272
*About Andrew Gallant: I'm a member of the Rust library team that works with Rust in my free time. I
273273
am very interested in information retrieval, fast text search and generally improving Rust's
@@ -293,7 +293,7 @@ Who should apply for this project:
293293
- Interest in learning how to write or translate a CLI program to Rust
294294
- Interest in researching and documenting features that libraries have or don’t have
295295

296-
![Kamal Marhubi][kamalmarhubi]{:class="right-thumbnail"}
296+
![Kamal Marhubi][kamalmarhubi]
297297

298298
*About Kamal Marhubi: I've been writing Rust for about a year and a half. I help maintain nix, a
299299
library that gives a Rusty interface to unix systems APIs. I've also contributed to rustfmt, rustup,

posts/2017-12-21-rust-in-2017.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ There’s not room in a single post to cover everything that happened, but we’
3232
- You can see how incremental recompilation performs in practice on some of our key benchmarks below. Note that `-opt` refers to optimized builds, “best case” refers to a recompilation with no changes, and `println` refers to a recompilation with a small change, like adding a `println` call to a function body. We expect the 50+% speedups we’re seeing now to continue to grow next year as we push incremental recompilation more deeply through the compiler.
3333
- Together with the changes in the compiler we will also update Cargo to use incremental recompilation by default for select use cases, so you can take advantage of improved compile times without the need for additional configuration. Of course you will also be able to opt into and out of the feature on a case by case basis as you see fit.
3434

35-
![Incremental recompilation benchmarks](/images/2017-12-Retro/incr-bench.png){:class="center"}
35+
![Incremental recompilation benchmarks](/images/2017-12-Retro/incr-bench.png)
3636

3737
## Rust should provide a solid, but basic IDE experience
3838

posts/2018-05-15-Rust-turns-three.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ teams, and just under half of the total number of people paid to work on
3636
Rust. (You can read detailed whitepapers about putting Rust into
3737
production [here](https://www.rust-lang.org/en-US/whitepapers.html).)
3838

39-
![Graphs of Rust team growth][team]{:class="center"}
39+
![Graphs of Rust team growth][team]
4040

4141
[team]: /images/2018-05-Third-Birthday/team.png
4242

0 commit comments

Comments
 (0)