It wasn't always so great across the board. Back in the late 80s or 90s I could write and distribute my own code for free. OTOH, for my day job developing network code on larger machines, we had to pay hefty licensing fees to get a decent compiler. Or debugger. Or libraries to do the most basic kinds of things. Corporate control hadn't come down to the smaller machines, but open source hadn't grown up to the larger ones either.