Assume that while working on your branch you made a few commits which were not perfect (say you wanted to take
a day off and you want a commit point to work from when you are back). This all good and fine, you come back get the code working on
your branch, make a commit and merge it to the main branch. When one looks at the commit log in the main branch it would
list all the commits you have made (even the ones on which the code was not in a good shape). But at the same time the latest
commit on main is good and this not a big problem. But if you really want to keep the history in the main branch to look clean and show
only good commits, then it is not the case.
Though I don't follow what the author practices, I don't think it is a practice that is done for sake of cleverness.
There is a benefit in keeping the history clean in the main branch.
My only wish is probably if git allowed one to achieve the same without so many hoops.