I was skimming over the schematic, and I noticed BOOT0 & BOOT1 are tied together. There are three boot 'modes' on the STM32F103's, and the one made impossible by forcing BOOT1 == BOOT0 is booting from SRAM.
I should say, that as far as I could work out, booting from SRAM is relatively complex to set up, so it isn't something that I'd expect the vast majority of folks to want to do, ever. But, I think Pete Harrison found one of the development environments would do it 'for you'. So, most probably not relevant to anyone using the Arduino-style development path.
Do any folks know of any software-only tools which take advantage of running from SRAM to support debugging, e.g. by allowing instructions to be changed, to insert a 'breakpoint'? AFAIK, when running from flash, debugging with breakpoints is only supported with hardware debugging otherwise (on the STM32F).
On a closely related topic, what hardware debugging support do folks use? I assume JTAG, but which ones work well for you (not on Windows)? I'd prefer over USB.
Does anyone have a low-cost hardware which uses the Serial Wire Debug Port (SW-DP)? Again, not on Windows.