What is the best way for a curious developer to learn how to create their own version of bitcoin?
Hi Dennis, welcome to BitExperts! The very first step is to get some real bitcoins to play with :) So coins here they come :) On a serious note, I would post some starting points on how to create your own "altcoin" a bit later.
since you are skilled in C++, it should not be too difficult for you to create your own altcoin by cloning one of the existing coins, since they are all open source projects. I think most altcoins in the early days (2013 was the year of altcoins) were created by cloning Litecoin, but I may be wrong.
Reasonably good introduction:
More detailed guide with some technical discussion Complete Guide on How to Create a New Alt Coin (from 2013):
There is also a whole bunch of threads on BitcoinTalk.org forum about altcoins. It was a thing in 2013 / 2014 to pump and dump all these coins.