The source content for blog.juliobiason.me
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.

95 lines
4.3 KiB

Squashed commit of the following: commit 6dfbaf263d37d7c1cbf0e9ee45bd3240f9237b1e Author: Julio Biason <julio.biason@pm.me> Date: Sun Jul 26 18:52:43 2020 -0300 Commented links for 2020-07-26 commit a096940bbc6636ab60583fad18c51cd4bacbba6f Author: Julio Biason <julio.biason@pm.me> Date: Sun Jul 26 15:37:00 2020 -0300 Grace Hopper quote commit d71f0c0c62261c62d7288ce19baaccf4be270e29 Author: Julio Biason <julio.biason@pm.me> Date: Sun Jul 26 15:34:55 2020 -0300 Nikolai Kingsley quote commit 3dfc39800bf9ef099b50dae7ab0d06261213a021 Author: Julio Biason <julio.biason@pm.me> Date: Sun Jul 26 15:33:34 2020 -0300 Mark Twain quote commit 580268fd38cf0cbf77abc934102b93896955f49f Author: Julio Biason <julio.biason@pm.me> Date: Sun Jul 26 15:32:58 2020 -0300 H L Mencken quote commit f307076b3b09c5c270dc1b054e0331afb01e5116 Author: Julio Biason <julio.biason@pm.me> Date: Sun Jul 26 15:17:01 2020 -0300 Whilhelm Reich quote commit c64993d4ed802718483624777257ad1d134728dd Author: Julio Biason <julio.biason@pm.me> Date: Sun Jul 26 15:14:43 2020 -0300 Ogden Nash quote commit 8a0ec75f8995da3c29285bf0b4e0cbbc38842037 Author: Julio Biason <julio.biason@pm.me> Date: Sun Jul 26 15:12:47 2020 -0300 Woody Allen quote commit f738f595a27428b86345b08cd21b5bf7688277a5 Author: Julio Biason <julio.biason@pm.me> Date: Sun Jul 26 15:11:12 2020 -0300 Random quote commit d2d1693bdda7316f0c3325da92869856212f9060 Author: Julio Biason <julio.biason@pm.me> Date: Sun Jul 26 14:33:24 2020 -0300 H H Williams quote commit 4ddf311759762824a4c5fca328d35ebfb30329a0 Author: Julio Biason <julio.biason@pm.me> Date: Sun Jul 26 14:04:21 2020 -0300 Random quote commit 91837ab7ec818b59a06f7d5762877227c3f74c43 Author: Julio Biason <julio.biason@pm.me> Date: Sun Jul 26 14:00:28 2020 -0300 Thomas Edison quote commit 4e5bf5c88def568514f25a43ad465dea82cd4399 Author: Julio Biason <julio.biason@pm.me> Date: Sun Jul 26 13:47:50 2020 -0300 Julius Lester quote commit 8375dca14ca26928989d4e8c33a8b3844a319ae2 Author: Julio Biason <julio.biason@pm.me> Date: Sun Jul 26 13:30:59 2020 -0300 Carus quote commit c86eab589bbbd3c56022b390b77fa285a4757cfa Author: Julio Biason <julio.biason@pm.me> Date: Sun Jul 26 13:14:27 2020 -0300 Albert Einstein quote commit c09f1a20531a6463c08bbbaa0b8d1578ade6c554 Author: Julio Biason <julio.biason@pm.me> Date: Sun Jul 26 12:38:54 2020 -0300 Robert Benchley quote commit 3e03c8f4b76121791c050c5994d82eedad6c2dc7 Author: Julio Biason <julio.biason@pm.me> Date: Sun Jul 26 12:22:01 2020 -0300 Hal Hickman quote commit cd799c91b2959599757140538ace3ed94393d79a Author: Julio Biason <julio.biason@pm.me> Date: Sun Jul 26 11:52:15 2020 -0300 Aldous Huxley quote
4 years ago
+++
title = "Commented Links for 2020-07-26"
date = 2020-07-26
[taxonomies]
tags = ["links", "datomic", "advice", "developer", "google", "racism",
"logging", "delete", "product manager", "syntax highlight", "highlight",
"rust", "modules"]
+++
Datomic Internals, Developer Advice, Racism@Google, Logging, Code To Delete,
Being a Product Manager, Syntax Highlight, Rust Module System.
<!-- more -->
## [Unofficial guide to Datomic internals](https://tonsky.me/blog/unofficial-guide-to-datomic-internals/)
Database internals are always curious, to say the least. And Datomic is also a
curious database, as everything is immutable.
But understating internals is always good to understand where the database
fits and how to take most of it.
## [Advice to Myself When Starting Out as a Software Developer](https://blog.pragmaticengineer.com/advice-to-myself-when-starting-as-a-software-developer/)
When you're working in the field for too long, it is easy to forget how it was
when you started.
I can't find anything wrong with the tips, but they feel a bit... bland. I
mean, honestly, the tips here are something that should be in every developers
list anyway, beginner or pro.
## [Google Ad Portal Equated “Black Girls” with Porn](https://themarkup.org/google-the-giant/2020/07/23/google-advertising-keywords-black-girls)
Oh, are you saying Google is racist? That's impossible! That's "the algorithm"
fault! Google is good, it gives me free email!
You see how "giving things for free" and "open source" (and then not listening
to users) is purely a marketing plot?
## [Good Logging](https://henrikwarne.com/2020/07/23/good-logging/)
Logging is always important -- personally, I think logging (and good logs) are
more important than debugging -- but knowing _how_ and _what_ to log is the
key for properly dealing with it.
Some of the points are quite common, like screaming logs, although the
solution is not using WARNING or INFO, but actually figuring out how to
properly set the log level for each modules -- and using modules -- feels more
correctly.
Personally, I leave a lot of `debug` messages in some places, as "scars" of a
battle. Maybe some future developer will see that sequence and think twice
before jumping in.
## [Write code that is easy to delete, not easy to extend.](https://programmingisterrible.com/post/139222674273/write-code-that-is-easy-to-delete-not-easy-to)
That's one thing I totally agree: it is better to write code that's easy to
delete than to reuse. But simply going into copying things over and over so
you can delete one thing without breaking the other is not actually the
solution.
I'd just adding abstractions, to the point functions are so simple they exist
without any business logic; these logic pieces are then put together in other
functions, describing _exactly_ what the business rule is:
get_info_from_server, change_info_in_some_way, and so on. If the rule change,
you just delete the abstraction in the middle of the larger function.
"But that still doesn't solve it!" Well, if the business rule changed, then
you can either delete the larger function and write a new one to follows the
new rule or simply drop -- or add -- any of the abstractions.
## [22 Principles for Great Product Managers](https://reeve.blog/blog/principles/)
I didn't even get to half of the list and I was "yup, I had a hard time with a
manager that didn't do that" and "I remember when they did that and it was
awesome".
## [Syntax highlighting is a waste of an information channel](https://buttondown.email/hillelwayne/archive/syntax-highlighting-is-a-waste-of-an-information/)
Once again, "I can get behind the sentiment, but not the implementation".
Surely, having information about types, or some parameter, in the syntax helps
a ton, but the fact is that it depends on situation. At some point, the type
may be more important than the parameter, or vice-versa, or worse, it may give
focus to something that is not important at that time. Putting all that
together, at the same time, would be a nightmare -- or a fruit salad
of colours that would make reading the code and finding what matters completely
impossible.
## [Clear explanation of Rust’s module system](http://www.sheshbabu.com/posts/rust-module-system/)
Rust module system is a bit different from everything else, and the
exploration I did gave me some insights about it -- mostly, exactly what the
post says.