I also find this explanation a little bit strange.
From what I learned and what I’ve seen in data sheets: the address is always 8 bits, but an I2C slave device occupies effectively two addresses: one for read and one for write. Both addresses differ only in the LSB: ‘1’ to read, ‘0’ to write.
In the example, 0xCC would be the write address and 0xCD the read address.
Otherwise, thanks for this blog post! Nice introduction and good overview.