The Valuable Dev - Measuring Software Complexity: The Impact of the Environment
Thursday Greetings, Valuable Developer
As always, I hope everything is fine on your side!
I began a new job at the beginning of the month, so I had to slow down my 12457456 side projects. It’s all fine; I believe that our capacity to adapt and to accept the uncertainty is one of the condition for living a happy life in our crazy world. Let’s embrace the chaos as much as we can, and let’s move forward!
The article of the month is the second part of my series about measuring complexity.
Measuring Software Complexity: The Impact of the Environment
When looking at the complexity of a codebase, we shouldn’t forget to understand its environment. In this article, we’ll look at the studies trying to use some properties of this environment to measure the complexity of the codebase itself.
Last News
-
I’ve published the first draft of the table of content for the book I’m writing, Learning to Play Vim. You can subscribe to this newsletter to receive it directly in your mailbox. I won’t spam you, I only send an email when I make significant progress on the book.
-
I’ve released a new Youtube video introducing the fantastic Pandoc a couple of days ago.
Articles & Videos
- The excellent talk Software that Fits in Your Head by Dan North summarize well many of the principles I’ve already underlined on The Valuable Dev.
- Another talk from Paul Phillips, The Axes of Abstraction. An interesting take about the nature of abstractions, with many jokes I didn’t understand…
Books
Here’s a couple of interesting books about architecture:
-
If you want a good summary of the most common architecture styles out there, Building Evolutionary Architectures is a good choice. It has however one major drawback: there are many repetitions; drink each time you see “Fitness Functions” in there to get more drunk than you’ve ever been.
-
If you want to learn about Domain Driven Design, the canonical Domain Driven Design is a bit dry but interesting. That said, I think Implementing Domain Driven Design is a better pick, even if it still quite dry. Finally, for a quick introduction to the subject, Domain Driven Design Quickly is a good choice.
Mouseless
- zman will allow you to search through the Zsh manual with fzf.
- fq is a CLI similar to jq I’ve already covered in one of my newsletter, except that it can work with… binary files!
- If you like plain text and knowledge tools, zk can help you maintain a Zettelkasten (personal wiki) in your shell.
- If you think cd should be smarter, you might like smartcd.
Next Article
We’ll dive into the line editor of Zsh (ZLE) next month.
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 a lot for your interest in my work, and see you in a month!