You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
133 lines
5.8 KiB
133 lines
5.8 KiB
<!DOCTYPE html> |
|
<html lang="en"> |
|
<head> |
|
<meta http-equiv="X-UA-Compatible" content="IE=edge"> |
|
<meta http-equiv="content-type" content="text/html; charset=utf-8"> |
|
|
|
<!-- Enable responsiveness on mobile devices--> |
|
<!-- viewport-fit=cover is to support iPhone X rounded corners and notch in landscape--> |
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1, viewport-fit=cover"> |
|
|
|
<title>Julio Biason .Me 4.3</title> |
|
|
|
<!-- CSS --> |
|
<link rel="stylesheet" href="https://blog.juliobiason.me/print.css" media="print"> |
|
<link rel="stylesheet" href="https://blog.juliobiason.me/poole.css"> |
|
<link rel="stylesheet" href="https://blog.juliobiason.me/hyde.css"> |
|
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=PT+Sans:400,400italic,700|Abril+Fatface"> |
|
|
|
|
|
|
|
|
|
|
|
</head> |
|
|
|
<body class=" "> |
|
|
|
<div class="sidebar"> |
|
<div class="container sidebar-sticky"> |
|
<div class="sidebar-about"> |
|
|
|
<a href="https://blog.juliobiason.me"><h1>Julio Biason .Me 4.3</h1></a> |
|
|
|
<p class="lead">Old school dev living in a 2.0 dev world</p> |
|
|
|
|
|
</div> |
|
|
|
<ul class="sidebar-nav"> |
|
|
|
|
|
<li class="sidebar-nav-item"><a href="/">English</a></li> |
|
|
|
<li class="sidebar-nav-item"><a href="/pt">Português</a></li> |
|
|
|
<li class="sidebar-nav-item"><a href="/tags">Tags (EN)</a></li> |
|
|
|
<li class="sidebar-nav-item"><a href="/pt/tags">Tags (PT)</a></li> |
|
|
|
|
|
</ul> |
|
</div> |
|
</div> |
|
|
|
|
|
<div class="content container"> |
|
|
|
<div class="post"> |
|
<h1 class="post-title">Rust In Action - T.S. McNamara</h1> |
|
<span class="post-date"> |
|
2020-04-28 |
|
|
|
<a href="https://blog.juliobiason.me/tags/books/">#books</a> |
|
|
|
<a href="https://blog.juliobiason.me/tags/reviews/">#reviews</a> |
|
|
|
<a href="https://blog.juliobiason.me/tags/rust/">#rust</a> |
|
|
|
<a href="https://blog.juliobiason.me/tags/t-s-mcnamara/">#t s mcnamara</a> |
|
|
|
<a href="https://blog.juliobiason.me/tags/stars-4/">#stars:4</a> |
|
|
|
<a href="https://blog.juliobiason.me/tags/books-2020/">#books:2020</a> |
|
|
|
<a href="https://blog.juliobiason.me/tags/published-2019/">#published:2019</a> |
|
|
|
</span> |
|
<p><a href="https://www.goodreads.com/book/show/45731908-rust-in-action">GoodReads Summary</a>: |
|
Rust in Action introduces the Rust programming language by exploring numerous |
|
systems programming concepts and techniques. You'll be learning Rust by delving |
|
into how computers work under the hood. You'll find yourself playing with |
|
persistent storage, memory, networking and even tinkering with CPU |
|
instructions. The book takes you through using Rust to extend other |
|
applications and teaches you tricks to write blindingly fast code. You'll also |
|
discover parallel and concurrent programming. Filled to the brim with |
|
real-life use-cases and scenarios, you'll go beyond the Rust syntax and see |
|
what Rust has to offer in real-world use cases.</p> |
|
<span id="continue-reading"></span><div> |
|
★★★★☆ |
|
</div> |
|
<div style="border:1px solid grey; margin:7px; padding: 7px"> |
|
<p>The version of this book I got is not the final version, it's part of |
|
Manning Early Access Program, which allows people to read and participate in |
|
"constructing" a book. A lot of things may change in the final version, so be |
|
aware of this.</p> |
|
|
|
</div> |
|
<p>I have to say, I don't buy the "introduces the Rust programming language" part |
|
of the description. A few points seem related to people that already have some |
|
knowledge about the language, and jumping straight to some non-trivial problem |
|
appears to skip a few "introduction" points, in my opinion.</p> |
|
<p>One have to ask what "in Action" means. Sure, you'll write your one RFC |
|
754 for dealing with floating points, so you can understand why some floating |
|
values get to 6.000000000001, and while you won't ever write your own floating |
|
point processor, you have to ask yourself: What is being explained about Rust |
|
here? Sometimes, the problems feel more like "I want to solve this" than "I |
|
want to explain this feature of the language", while it should be the other |
|
way around.</p> |
|
<p>Another confusing point: The output of a program appears before its code. |
|
While not that weird, you end up with some sections showing the output, |
|
explaining a bit and then, way later, you get the code what actually produces |
|
that output. I remember reading a bit about the output and some discussion |
|
about it and I got really confused about what was producing that output.</p> |
|
<p>The Rust part seems a bit out-of-date, too. There are some <code>extern crate</code>, |
|
which is optional at this point. Updating the code to reflect the latest |
|
version of the language (the syntax, that is) would be better.</p> |
|
<p>On the other hand, I have to give the author the props for managing to explain |
|
things <em>really well</em>. Why you should use something, how can you apply |
|
different things to the same data and so on. That's the book greatest |
|
strength.</p> |
|
<p>So, is it a bad book? Not at all. It has some quirks, but overall is well |
|
explained and, if you keep an eye on the language from outside, it answers a |
|
lot of stuff that you won't figure out anywhere else.</p> |
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
</div> |
|
|
|
</body> |
|
|
|
</html>
|
|
|