Mainly they teach the -2 just for the tests. Cisco fully understands that in the real world, we use the full range of subnets. But the RFC "standards" still have some -2 in them. So, for testing purposes, they want the people to understand the "standard" way of subnetting.
It's getting real ancient though. I don't know of any manufacturers that don't use subnet zero anymore.