The really neat thing about having the source code. Is that it implies that you have the tool chain to build that source code. This is not always true, However because the source is mostly useless without a way to build it, it is mostly true. With the unfortunate note that firmware often has a nasty lovecraftian inspired toolchain.
Once you have the source and the toolchain to build it. Now, not only are you in a position to fix your own bugs, all users of that hardware are in a position where they can co-operate to fix and share updates. Security update could be provided forever if people are willing to work on the problem. Having opensource firmware is a great enabler.
The neat side effect of open source development is that it usually ends up taming the unholy tangle that proprietary toolchains end up becoming. Something, something.. mumble... about how when random joe is expected to compile a project that project starts shifting into a form that random joe can compile.
> Something, something.. mumble... about how when random joe is expected to compile a project that project starts shifting into a form that random joe can compile.