The Valuable Dev - Cohesion and Coupling in Software with Examples
Sunday Greetings, Valuable Developer
I hope you’re safe, and that everything’s going well on your side!
For years, fancy ergonomic keyboards have been tempting me. I knew that if I began to look seriously into it, it could snowball into an addictive frenzy I would have difficulties to control.
Last December, I thought it was time: I bought an Ergodox Ez, and I felt in love with split ortholinear keyboards. Next, I wanted a keyboard when I’m on the go, so I also bought the Nyquist. I’m very happy with both!
I love my mouseless development environment because it’s a very comfy way to work. A good chair, a great desk, and a fantastic keyboard increase this comfort big time.
Do I control my new keyboard addiction? Barely. I always catch myself on websites selling keycaps now… but I must stay strong.
If you’re interested to read an article about all of that, hit the reply button and let me now! Oh, and in case you’re wondering, I’m not sponsored by anybody to speak about stuff, including keyboards.
Now, the article of the month: we dive into cohesion and coupling this time, two important first principles in software development.
Cohesion and Coupling in Software with Examples
In this article, we’ll look at coupling and cohesion’s roots, why are they useful, when, and in what context.
Updates
-
I’ve published two new videos on my Youtube channel exploring the CLI fzf: here’s part 1 and part 2.
-
The about page of The Valuable Dev has been updated.
Resources
-
Here’s an interesting video about text formatting.
-
In case you missed it, here’s the best talk about Git available out there.
Mouseless
-
The insane project vtm aims to create a “text-based desktop environment” inside your terminal. Maybe not so useful (and not so mouseless), but really impressive.
-
The CLI ugrep is another grep clone, apparently faster than the other ones (including ripgrep). It has many options: searching using a prompt, or even the possibility to fuzzy search results.
-
Do you want to save your website for the future generations, without leaving your shell? The CLI waybackpi allow you to interface with the Wayback Machine API to do exactly that… and more!
Book
Speaking about Git, I would encourage you to read Pro Git if you want to dig deeper in this fantastic tool. Best book on Git, by far.
Next Article
Many have underlined the analogy of Vim’s NORMAL mode keystrokes being like an “editing language”. It’s mostly thanks to text objects, like “aw” (around a word), or “ip” (inside a paragraph). We’ll see next month how to create our own.
It will be a good excuse to look a bit at some Vimscript (I know, few likes it, but it’s still useful to learn some basics), and how to rewrite Vimscript in Lua.
Let’s Connect
If you want more information about the content of this newsletter, or if you have any question, you can hit the wonderful “reply” button. I’m always happy to receive emails!
Similarly, if you think this newsletter is boring, if you didn’t like my last article, or if you have any feedback of any sort, don’t hesitate to reach out.
Thanks for your interest in my work, and see you in a month!