Julio Biason
5 years ago
1 changed files with 148 additions and 0 deletions
@ -0,0 +1,148 @@ |
|||||||
|
+++ |
||||||
|
title = "Links for 2020-04-29" |
||||||
|
date = 2020-04-29 |
||||||
|
|
||||||
|
[taxonomies] |
||||||
|
tags = ["links", "python", "top", "bash", "legacy", "rewrite", "refactor", |
||||||
|
"tribes", "factory", "git", "branches", "trim", "dairy", "journal", |
||||||
|
"programming", "caches", "gnome", "screen recording", "requirements", "vim", |
||||||
|
"password manager", "google", "adsense"] |
||||||
|
+++ |
||||||
|
|
||||||
|
Python 3.9, A Nice Top in Pure Bash, Rewriting a Legacy System, Programming |
||||||
|
Tribes, Feature Factory, Python Function Overload, Clean Git Branches, |
||||||
|
Journaling for Devs, What Programming Is, Caches, GNOME Screen Recording, |
||||||
|
Requirements, VIM Password Manager, Google AdSense Ransom. |
||||||
|
|
||||||
|
<!-- more --> |
||||||
|
|
||||||
|
# [New Features in Python 3.9 You Should Know About](https://martinheinz.dev/blog/21) |
||||||
|
|
||||||
|
The great feature coming in Python 3.9 is the dictionary shortcut (`|`, as in |
||||||
|
`new_dict = dict1 | dict2`), but there are few more incoming changes. |
||||||
|
|
||||||
|
I talked about the future of Python on [PyCaxias](https://pycaxias.org/) this |
||||||
|
year, and I pointed that Python grew a lot when it entered the web development |
||||||
|
area and now that it is getting into the machine learning area, there will be |
||||||
|
changes coming into the language to support this. |
||||||
|
|
||||||
|
And if you ignore the dict operator, there is _a lot_ of things related to ML. |
||||||
|
|
||||||
|
# [BashTop: Linux resource monitor](https://github.com/aristocratos/bashtop) |
||||||
|
|
||||||
|
When I first receive the link for this, I thought "I bet it looks like any |
||||||
|
other bash script". But no, it has a well designed interface and loops |
||||||
|
interesting as heck. |
||||||
|
|
||||||
|
# [Avoid rewriting a legacy system from scratch, by strangling it](https://understandlegacycode.com/blog/avoid-rewriting-a-legacy-system-from-scratch-by-strangling-it/) |
||||||
|
|
||||||
|
So you don't know how to replace your monolith with another monolith? Here is |
||||||
|
one idea: Create the same API, put a gateway in front of the old system and |
||||||
|
slowly reroute calls to the new service. |
||||||
|
|
||||||
|
# [3 tribes of programming](https://josephg.com/blog/3-tribes/) |
||||||
|
|
||||||
|
It's kinda funny seeing articles that try to pinpoint developers in certain |
||||||
|
categories and end up just splitting everyone. |
||||||
|
|
||||||
|
But this one kinda makes sense, if you're willing to put a random label on |
||||||
|
yourself. |
||||||
|
|
||||||
|
# [12 Signs You’re Working in a Feature Factory](https://cutle.fish/blog/12-signs-youre-working-in-a-feature-factory) |
||||||
|
|
||||||
|
Ah, the good old ways of just pushing buttons and pumping features, with no |
||||||
|
regard to process or anything else. |
||||||
|
|
||||||
|
If you're starting your dev career, at some point you'll work in one of those, |
||||||
|
and recognizing you're in such situation may help your future. |
||||||
|
|
||||||
|
# [Function overloading in Python](https://arpitbhayani.me/blogs/function-overloading) |
||||||
|
|
||||||
|
Ah, the joys of using decorators to add features to the language. In this |
||||||
|
case, using decorators, you can add function overloading to Python, and even |
||||||
|
if it is based on the number of arguments, one could extend this to use the |
||||||
|
type hints for figuring out the function (with some work, I reckon). |
||||||
|
|
||||||
|
# [git-trim: Automatically trims your branches whose tracking remote refs are merged or gone](https://github.com/foriequal0/git-trim) |
||||||
|
|
||||||
|
Keeping your GIT branches clean is good for your health. Removing those stupid |
||||||
|
"fix-this" and "fix-that" after they were merged, but not removing "develop" |
||||||
|
and "master" can be hard work. |
||||||
|
|
||||||
|
This small app helps keeping everything nice and tidy. |
||||||
|
|
||||||
|
# [Always Be Journaling](https://letterstoanewdeveloper.com/2018/12/14/always-be-journaling/) |
||||||
|
|
||||||
|
Today in "Things I Know I Should Be Doing But I Don't": Journaling. |
||||||
|
|
||||||
|
I've seen this "pattern" a few times: Take notes of everything you're doing; |
||||||
|
take notes of problems you solve; keep notes of discussions you had. Those are |
||||||
|
all important and can save your butt in the future. |
||||||
|
|
||||||
|
# [Programming is not a goal.](https://ralsina.me/weblog/posts/programming-is-not-a-goal.html) |
||||||
|
|
||||||
|
I was kinda expecting the "Programming is not a goal, providing value for your |
||||||
|
customers is", but this is way more direct than you can think. It's the clear |
||||||
|
suggestion for those who are starting to focus on solving their own problems |
||||||
|
instead of just coding. |
||||||
|
|
||||||
|
Figuring out how to scrap a website is ok, but what will you do with the data. |
||||||
|
Building a neural network may be used in your CV when you're looking for that |
||||||
|
high-paying job, but you're going to train to fix _what_? |
||||||
|
|
||||||
|
# [What is cache penetration, cache breakdown and cache avalanche?](https://www.pixelstech.net/article/1586522853-What-is-cache-penetration-cache-breakdown-and-cache-avalanche) |
||||||
|
|
||||||
|
I suck at using the "proper" words for some contexts: I used a bunch of |
||||||
|
patterns, but heck if I can remember (or even if I really know) their proper |
||||||
|
names. |
||||||
|
|
||||||
|
This is the same thing: Just some clarification on how to call some |
||||||
|
problems/situations with caches. |
||||||
|
|
||||||
|
# [GNOME has a ‘Secret’ Screen Recorder. Here’s How to Use it!](https://itsfoss.com/gnome-screen-recorder/) |
||||||
|
|
||||||
|
This is a cool thing: You can record your desktop if you're using GNOME. The |
||||||
|
recording will appear as a `webm` in your "Videos" folder. |
||||||
|
|
||||||
|
# [Requirements volatility is the core problem of software engineering](https://stackoverflow.blog/2020/02/20/requirements-volatility-is-the-core-problem-of-software-engineering/) |
||||||
|
|
||||||
|
This should not come as a surprise to anyone who was part any moderately large |
||||||
|
project: things change. |
||||||
|
|
||||||
|
Yes, agile is a way to solve this, but we need to teach developers to "let go" |
||||||
|
of their code. We write code expecting it to live forever, and then the |
||||||
|
requirements change and we hung up on those little grouped words and instead |
||||||
|
of removing and starting with a fresh view, we try to twists and push things |
||||||
|
around till it works, but is barely recognizable. |
||||||
|
|
||||||
|
This part agile doesn't teach us. |
||||||
|
|
||||||
|
# [Using Vim as a password manager](https://invert.svbtle.com/using-vim-as-a-password-manager) |
||||||
|
|
||||||
|
A little stupid trick using VIM: VIM can encrypt files when saving them, so |
||||||
|
you can pick a file, put your passwords, and save it in encrypted form. |
||||||
|
|
||||||
|
# [Pay Up, Or We’ll Make Google Ban Your Ads](https://krebsonsecurity.com/2020/02/pay-up-or-well-make-google-ban-your-ads/) |
||||||
|
|
||||||
|
Not only we have the problem with Google acting the way it wants with its |
||||||
|
products -- and as much as we don't like it, we can't deny its in their own |
||||||
|
right to do so -- now people have to worry about people tricking Google into |
||||||
|
killing your... revenue. |
||||||
|
|
||||||
|
And I think that's one of the basis of the whole problem with privacy and the |
||||||
|
general use of Google products: revenue. Imagine how scared someone could be |
||||||
|
if they decide to pay U$ 5000 just to not kill their revenue. |
||||||
|
|
||||||
|
There has to be a better way. |
||||||
|
|
||||||
|
|
||||||
|
--- |
||||||
|
|
||||||
|
This post was built with the help of |
||||||
|
|
||||||
|
* [Aloïs Cochard](https://functional.cafe/@alois) |
||||||
|
* [Benpro](https://toots.benpro.fr/@benoit) |
||||||
|
* [HN Tooter](https://mastodon.social/@hntooter) |
||||||
|
* [newsbot](https://mastodon.social/@newsbot) |
||||||
|
* [Read Rust](https://botsin.space/@readrust) |
||||||
|
* [Starfish](https://social.linux.pizza/@redstarfish) |
Loading…
Reference in new issue