|
|
|
|
<!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">Links for 2020-04-23</h1>
|
|
|
|
|
<span class="post-date">
|
|
|
|
|
2020-04-23
|
|
|
|
|
|
|
|
|
|
<a href="https://blog.juliobiason.me/tags/links/">#links</a>
|
|
|
|
|
|
|
|
|
|
<a href="https://blog.juliobiason.me/tags/google/">#google</a>
|
|
|
|
|
|
|
|
|
|
<a href="https://blog.juliobiason.me/tags/privacy/">#privacy</a>
|
|
|
|
|
|
|
|
|
|
<a href="https://blog.juliobiason.me/tags/commits/">#commits</a>
|
|
|
|
|
|
|
|
|
|
<a href="https://blog.juliobiason.me/tags/messages/">#messages</a>
|
|
|
|
|
|
|
|
|
|
<a href="https://blog.juliobiason.me/tags/microservices/">#microservices</a>
|
|
|
|
|
|
|
|
|
|
<a href="https://blog.juliobiason.me/tags/rust/">#rust</a>
|
|
|
|
|
|
|
|
|
|
<a href="https://blog.juliobiason.me/tags/memory/">#memory</a>
|
|
|
|
|
|
|
|
|
|
<a href="https://blog.juliobiason.me/tags/testing/">#testing</a>
|
|
|
|
|
|
|
|
|
|
<a href="https://blog.juliobiason.me/tags/tests/">#tests</a>
|
|
|
|
|
|
|
|
|
|
<a href="https://blog.juliobiason.me/tags/asciiflow/">#asciiflow</a>
|
|
|
|
|
|
|
|
|
|
<a href="https://blog.juliobiason.me/tags/vscode/">#vscode</a>
|
|
|
|
|
|
|
|
|
|
<a href="https://blog.juliobiason.me/tags/linux/">#linux</a>
|
|
|
|
|
|
|
|
|
|
<a href="https://blog.juliobiason.me/tags/laptop/">#laptop</a>
|
|
|
|
|
|
|
|
|
|
</span>
|
|
|
|
|
<p>Google, Commit Messages, Microservices, How Rust Sees Memory, More About
|
|
|
|
|
Tests, Asciiflow in VS Code, Does Rust Change Too Much?, Linux Laptop.</p>
|
|
|
|
|
<span id="continue-reading"></span><h1 id="google-says-it-doesn-t-sell-your-data-here-s-how-the-company-shares-monetizes-and-exploits-it"><a href="https://www.eff.org/deeplinks/2020/03/google-says-it-doesnt-sell-your-data-heres-how-company-shares-monetizes-and">Google Says It Doesn’t 'Sell' Your Data. Here’s How the Company Shares, Monetizes, and Exploits It.</a></h1>
|
|
|
|
|
<p>Alright, let's start by picking on who we like to pick the most: Google.</p>
|
|
|
|
|
<p>While the EFF article sounds a bit too scary and demonizes the company a bit
|
|
|
|
|
too much, it brings a good point: Google is trying to escape regulations by
|
|
|
|
|
using wording instead of actually fixing it.</p>
|
|
|
|
|
<h1 id="why-my-commit-messages-for-configuration-files-describe-my-changes"><a href="https://utcc.utoronto.ca/~cks/space/blog/sysadmin/SysadminCommitMsgWhat">Why my commit messages for configuration files describe my changes</a></h1>
|
|
|
|
|
<p>While I don't fully agree with this idea of "describing the changes in the
|
|
|
|
|
commit message even when the change is there", even with the reason pointed in
|
|
|
|
|
the article, I think it still misses something:</p>
|
|
|
|
|
<p><em>Why</em> you did the change.</p>
|
|
|
|
|
<p>Sure, you can describe the changes, duplicating the already-there description
|
|
|
|
|
by its changes, but you need to explain <em>why</em> you did so. Bob got into group
|
|
|
|
|
'fred'? Ok, but why? </p>
|
|
|
|
|
<p>This isn't just so people, in the future, when asking themselves "Why does Bob
|
|
|
|
|
is a member of fred?" but also forces you to go after the reason for doing it.
|
|
|
|
|
We are not machines that receive requests to, say, add Bob to the fred group,
|
|
|
|
|
and do so without any questions. There must be a reason for this kind of
|
|
|
|
|
stuff.</p>
|
|
|
|
|
<h1 id="untangling-microservices-or-balancing-complexity-in-distributed-systems"><a href="https://vladikk.com/2020/04/09/untangling-microservices/">Untangling Microservices, or Balancing Complexity in Distributed Systems</a></h1>
|
|
|
|
|
<p>There is a movement on <em>killing</em> microservices raising recently. The article
|
|
|
|
|
points one of the reasons: It's hard to find boundaries and where to split
|
|
|
|
|
services.</p>
|
|
|
|
|
<p>Did we jump into the "microservices" bandwagon too early? What are we missing
|
|
|
|
|
for people to get those boundaries in a simple and understandable way? Are
|
|
|
|
|
boundaries really that necessary for microservices? Can't we use some other
|
|
|
|
|
metric to split the services?</p>
|
|
|
|
|
<p>Honestly, I have no idea. There are some good points about microservices --
|
|
|
|
|
like each having its own database and no shared state between services. But
|
|
|
|
|
maybe we should look into <a href="https://blog.juliobiason.me/code/microservices-artifact-input-state/">what the service should
|
|
|
|
|
produce</a>
|
|
|
|
|
instead of focusing on "boundaries".</p>
|
|
|
|
|
<h1 id="visualizing-memory-management-in-rust"><a href="https://deepu.tech/memory-management-in-rust/">Visualizing memory management in Rust</a></h1>
|
|
|
|
|
<p>While the article focuses on the Rust memory management, the same works for
|
|
|
|
|
every language that doesn't have a runtime, AFAIK. So, if you're trying to get
|
|
|
|
|
out of a language with runtime and switch to a language that has to deal with
|
|
|
|
|
memory directly, there is some good information here.</p>
|
|
|
|
|
<h1 id="how-we-test-vector"><a href="https://vector.dev/blog/how-we-test-vector/">How We Test Vector</a></h1>
|
|
|
|
|
<p>A lot of discussion about testing on Vector, a transformation pipeline.</p>
|
|
|
|
|
<p>One of the aspects that I liked on this is that they mention unit tests as "in
|
|
|
|
|
isolation" (which I agree) and that they used for one single component, the
|
|
|
|
|
transformations. And while they don't talk anything about using the classical
|
|
|
|
|
"on test per function", it seems they actually used this way but only for a
|
|
|
|
|
subset of everything.</p>
|
|
|
|
|
<h1 id="asciiflow-in-vs-code"><a href="https://github.com/zenghongtu/vscode-asciiflow2">Asciiflow in VS Code</a></h1>
|
|
|
|
|
<p>While I'm not a user of either Asciiflow or VS Code, it looks really
|
|
|
|
|
interesting the fact that the whole design thing is in ASCII, WYSIWYG and
|
|
|
|
|
mouse-oriented.</p>
|
|
|
|
|
<h1 id="the-oauth-bible"><a href="https://github.com/Kong/mashape-oauth/blob/master/FLOWS.md">The OAuth Bible</a></h1>
|
|
|
|
|
<p>I'm not a fan of OAuth, basically 'cause I tried to implement it myself
|
|
|
|
|
(instead of using an already existing library) and it was too much work
|
|
|
|
|
without seeing any real protection.</p>
|
|
|
|
|
<p>On the other hand, since a lot of services use OAuth, it may be a good idea to
|
|
|
|
|
fully understand the protocol. And that's what is here.</p>
|
|
|
|
|
<h1 id="how-often-does-rust-change"><a href="https://words.steveklabnik.com/how-often-does-rust-change">How often does Rust change?</a></h1>
|
|
|
|
|
<p>Rust has a release cadence of 6 weeks. There was another post about <a href="https://timidger.github.io/posts/i-cant-keep-up-with-idiomatic-rust/">keeping up with idiomatic
|
|
|
|
|
Rust</a>.
|
|
|
|
|
But does Rust change that much?</p>
|
|
|
|
|
<p>Although Klabnik points that yes, I personally don't think that much. The
|
|
|
|
|
language is still pretty usable since the 2018 edition.</p>
|
|
|
|
|
<p>On the other hand, some things must be taking in the big picture. There is a
|
|
|
|
|
huge run towards async in the ecosystem -- and not by Rust itself -- that
|
|
|
|
|
seems a bit... disorientating. One example I can point is
|
|
|
|
|
<a href="https://github.com/seanmonstar/reqwest">reqwest</a>. I'm using it for a lot of
|
|
|
|
|
stuff and, suddenly, the API changed to use async, something I don't need
|
|
|
|
|
right now. While there is a <code>blocking</code> module for using the old, non-async
|
|
|
|
|
calls... it is still confusing that I can't use the main module 'cause I don't
|
|
|
|
|
want/need async yet.</p>
|
|
|
|
|
<h1 id="system76-launches-lemur-pro-linux-laptop-with-open-source-firmware"><a href="https://9to5linux.com/system76-launches-lemur-pro-linux-laptop-with-open-source-firmware">System76 Launches Lemur Pro Linux Laptop with Open Source Firmware</a></h1>
|
|
|
|
|
<p>While I'm quite happy with the XPS and an open source firmware may not be that
|
|
|
|
|
much of a fuss (actually, it kinda is, but still...), you can't deny that's
|
|
|
|
|
one hell of a pretty laptop.</p>
|
|
|
|
|
<p>The fact that it comes with Linux installed probably means all its hardware is
|
|
|
|
|
compatible and you won't find any troubles with drivers and such.</p>
|
|
|
|
|
<p>Did I mention it was one hell of a pretty laptop?</p>
|
|
|
|
|
<hr />
|
|
|
|
|
<p>This post was built with the help of</p>
|
|
|
|
|
<ul>
|
|
|
|
|
<li><a href="https://floss.social/@9to5linux">9to5linux</a></li>
|
|
|
|
|
<li><a href="https://mastodon.social/@hntooter">HN Tooter</a></li>
|
|
|
|
|
<li><a href="https://mastodon.social/@newsbot">newsbot</a></li>
|
|
|
|
|
<li><a href="https://mastodon.xyz/@nextcloud">Nextcloud 📱☁️💻</a></li>
|
|
|
|
|
<li><a href="https://botsin.space/@readrust">Read Rust</a></li>
|
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</body>
|
|
|
|
|
|
|
|
|
|
</html>
|