+++ title = "Commented Links for 2020-06-18" date = 2020-06-18 [taxonomies] tags = ["links", "git", "commit", "messages", "ansible", "cli", "feature flags", "rust", "size", "task manager"] +++ Commit Messages (again), Ansible, CLI Names, Feature Flags, Rust Binary Sizes, Mongo with Rust, Command Line Task Manager. ## [How to write good Git commit messages](https://altcampus.io/blog/how-to-write-good-git-commit-message) About a month ago, I shared a link describing how to make proper commit messages, and this post talks a bit further about -- and it also cites some of stuff I usually miss when I need to do some code review. ## [Ansible: Tasks vs Roles vs Handlers](https://roelofjanelsinga.com/articles/ansible-difference-between-tasks-and-roles) Another "I shared something like that before" link, this one focuses on Ansible itself instead of some other configuration tool. Although not deep, it explain most of Ansible "surface" content. ## [The Poetics of CLI Command Names](https://smallstep.com/blog/the-poetics-of-cli-command-names/) So you decided to create your own command line application to learn a new language. Congratulations. But the success of your tool depends (partially) on the name of it and how you consider the "mystic" behind it. I don't fully agree with some points, though. For example, claiming `cfdisk` was a bad choice for a curses `fdisk`; `fdisk` is well known, and using the same name as a part of the new name shows that shows that it is a different version and also gives information to whoever knows `fdisk` what this application does. Same case: `top` and `htop`. ## [What Are Feature Flags?](https://launchdarkly.com/blog/what-are-feature-flags/) Before I changed projects, we had a discussion about the way the projects were using feature flags. Although not discussed here, I do believe that feature flags should, at some point, be removed, either by the team when a feature goes into full availability or moved to a user configuration. But it *needs* to get out of hands of the developers at some point and not live forever as a flag. ## [How to minimize Rust binary size](https://github.com/johnthagen/min-sized-rust) Not that Rust binaries are big -- at least, in release -- but there is always someone complaining, specially when compared to binaries created in other languages whose binaries are not static. But it is always good to have a set of tips on how to reduce them, just in case. ## [Announcing our Rust Driver: Version 1.0](https://www.mongodb.com/blog/post/announcing-rust-driver-version-1) Still on Rust news, MongoDB, the company, released their official driver for MonogDB, the database, in Rust. One thing that I must say, reading the announcement, is how nice it plays with the existing ecosystem, supporting the top async frameworks and the serialization framework. A truly "play nice with everything" by the description. ## [unfog-cli: A simple task & time manager, written in Haskell.](https://github.com/unfog-io/unfog-cli) I have a personal project for a long time to create a command line version of [Toggl](https://toggl.com/), but it seems someone had the same idea and did the project already.