For other things I completely agree about OSHW. It's the DSO in particular that's unrealistic. The analog design is seriously non-trivial and you need really large volumes and a distribution network to compete with Rigol, Siglent and Instek.
I'll be interested to hear what your experience is working on both the Cyclone V and the Zynq. I learned long ago that writing, compiling and testing no more than 50-100 lines of code at a time on multiple systems made a huge difference in code quality. It provides an early warning of edge cases which interfere with portability. I wrote a couple of 15,000 line libraries that had *no* bugs reported in 6 years of heavy use and which continued in service without support for another 6-8 years.
Part of that was careful programming and good test suites, but lots of it was compiling with all warnings enabled on multiple systems. In particular, the AIX FORTRAN compiler caught a large number of violations of the F77 standard. At that point we had already ported 500,000 lines of VAX FORTRAN to the BSD based SunOS 4.1 and the Intergraph Clipper chip based 16 character file name SysV implementation. The IBM took 4 months to clean up the GO TOs, the HP took 4 weeks and I did DEC Ultrix and and SGI IRIX both in four hours.