following along with code samples