Julio Biason
5 years ago
1 changed files with 104 additions and 0 deletions
@ -0,0 +1,104 @@ |
|||||||
|
+++ |
||||||
|
title = "Links for 2020-03-12" |
||||||
|
date = 2020-03-12 |
||||||
|
|
||||||
|
[taxonomies] |
||||||
|
tags = ["links"] |
||||||
|
+++ |
||||||
|
|
||||||
|
Netflix and the Hexagonal Architecture, logging, EOF, JS Frameworks, Emacs |
||||||
|
Charts, Rust init Pattern, Software Engineers vs Technicians, Cancelling |
||||||
|
Conferences How-To, A VIM Jump-to-Anything plugin. |
||||||
|
|
||||||
|
<!-- more --> |
||||||
|
|
||||||
|
# [Ready for changes with Hexagonal Architecture](https://netflixtechblog.com/ready-for-changes-with-hexagonal-architecture-b315ec967749) |
||||||
|
|
||||||
|
A Netflix Tech post about the hexagonal architecture for microservices. |
||||||
|
|
||||||
|
The interesting bit here is the fact that Netflix devs focused on "swappable |
||||||
|
data sources", which is something I've been pushing where I work a lot[^1] |
||||||
|
|
||||||
|
Even if I hate this posture a lot[^2], now I can say "Netflix does this, we |
||||||
|
can do it too!" |
||||||
|
|
||||||
|
# [Do not log](https://sobolevn.me/2020/03/do-not-log) |
||||||
|
|
||||||
|
I really don't agree with this. I do understand that, sometimes, logging is |
||||||
|
stupid and just adds noise, but we have see this problem in the same way we |
||||||
|
see comments: They need to explain the _why_. _Why_ the request failed? |
||||||
|
|
||||||
|
Sometimes it can even be the _what_: _What_ user input caused this process to |
||||||
|
fail? |
||||||
|
|
||||||
|
As the author argues, one could use Sentry for capturing failures, but what if |
||||||
|
this isn't an option (due to cost)? I once worked with the free version of |
||||||
|
Sentry and while it was okay, it didn't provide enough information to |
||||||
|
understand the _why_ things failed -- you can add the message in the |
||||||
|
exception, but _only_ if that's your code; what can you do if it is a library |
||||||
|
causing the exception? Cascade everything? |
||||||
|
|
||||||
|
Log. But think on _why_ you're logging. |
||||||
|
|
||||||
|
# [EOF is not a character](https://ruslanspivak.com/eofnotchar/) |
||||||
|
|
||||||
|
My C life is build on top of lies! |
||||||
|
|
||||||
|
Honestly, I thought EOF was really the same value as `^D` (Ctrl-D, which ends |
||||||
|
the input) and you could put an EOF in the middle of the file and still have |
||||||
|
content. But it seems it was not that. |
||||||
|
|
||||||
|
# [A RealWorld Comparison of Front-End Frameworks 2020](https://medium.com/dailyjs/a-realworld-comparison-of-front-end-frameworks-2020-4e50655fe4c1) |
||||||
|
|
||||||
|
Not too sure about the benchmarks used -- specially when someone says "Svelte |
||||||
|
was skipped due to cloc not being able to process .svelte files." when you can |
||||||
|
surely use `wc`. |
||||||
|
|
||||||
|
But still, interesting, in some aspects. |
||||||
|
|
||||||
|
# [ActuallyUsingWasm](https://wiki.alopex.li/ActuallyUsingWasm) |
||||||
|
|
||||||
|
Implementations, runtimes, execution times, code samples... A bit of |
||||||
|
everything about running Wasm. |
||||||
|
|
||||||
|
# [Exploring emacs chart library](https://francismurillo.github.io/2017-04-15-Exploring-Emacs-chart-Library/) |
||||||
|
|
||||||
|
No, I didn't drop VIM and start using Emacs, but it is really impressive that |
||||||
|
it has a built in charts library -- which, on the other hand, just adds to the |
||||||
|
"Emacs is a good operating system, but lacks a good editor" joke. |
||||||
|
|
||||||
|
# [My exploration of Rust and .NET](https://ericsink.com/entries/dotnet_rust.html) |
||||||
|
|
||||||
|
Converting LLVM bytecode from Rust to .NET assembly. |
||||||
|
|
||||||
|
# [Init Struct Pattern](https://xaeroxe.github.io/init-struct-pattern/) |
||||||
|
|
||||||
|
An initialization pattern for Rust structures. Honestly, I don't see that much |
||||||
|
difference than using `Default` directly, but it may be interesting if you |
||||||
|
should do some change in the input at construction. |
||||||
|
|
||||||
|
(Also, I have the slight impression that the pattern, in the end, forces you |
||||||
|
to build a complete object and then call `init()` to build a copy of said |
||||||
|
already complete object.) |
||||||
|
|
||||||
|
# [The Fall of The Software Engineer, The Rise of The Programmer Technician](https://medium.com/@alexkatrompas/the-fall-of-the-software-engineer-the-rise-of-the-programmer-technician-451a572d28b0) |
||||||
|
|
||||||
|
A discussion on the (natural) evolution of the software development market. |
||||||
|
|
||||||
|
# [My conference has a sneeze - Practical help in winding down a troubled conference](https://paper.dropbox.com/doc/My-conference-has-a-sneeze-Practical-help-in-winding-down-a-troubled-conference-mZJJdhWXFjYLledMKxgyl) |
||||||
|
|
||||||
|
This is mostly interesting to me 'cause I'm part of the organization of two |
||||||
|
conferences and we have this discussion about cancelling, postponing or going |
||||||
|
forward for both. |
||||||
|
|
||||||
|
# [any-jump.vim — IDE madness without overhead for 40+ languages](https://github.com/pechorin/any-jump.vim) |
||||||
|
|
||||||
|
A VIM plugin to jump to everywhere (except files, that is). But hell if it |
||||||
|
isn't cute. |
||||||
|
|
||||||
|
--- |
||||||
|
|
||||||
|
[^1]: Sadly, I'm not getting heard here. |
||||||
|
|
||||||
|
[^2]: That's [cargo |
||||||
|
cult](https://en.wikipedia.org/wiki/Cargo_cult_programming), kids. |
Loading…
Reference in new issue