Yes, anything computable has its analog in mathematics. Don't forget not only books and guides; the compiler is also a teacher.
What we gain by not scribbling proofs and peering at it, and peeking at the answers in our self-doubt and frustration, is the computer refuses to execute statements that are not syntactically correct.
With data structures and the standard libraries, you have your own model of the universe; express the ideas in code and test them: after adding to the collection, does it report back the size increased by 1?
By yourself, the hardest is finding something to program. To that, I would say try to solve your own problems.
Create a quiz app with staggered repetition. Step through your programs with a debugger. Look at the generated assembly.
In a vacuum, gcc on a Chromebook is a ticket to infinite possibilities.