Great article giving tips on how to write self-documenting good (aka good code), even though this is written for JavaScript, most of the tips can directly be applied to any languages.
15 Ways to Write Self-documenting JavaScript by Jani Hartikainen: https://www.sitepoint.com/self-documenting-javascript/
Note: this definitely has to be ported to Swift, any volunteer?