During the last weeks, I had my, by far, worst Open Source experience. While preparing simulations using GNU Radio’s Rayleigh fading block, I made some experiments to test its statistical properties. They showed some flaws, so I prepared patches and made a pull request.
The patches are already merged and should, at least, fix the most basic problems. Now, the block uses the correct number of sinusoids and outputs channel coefficients with an average power of one.
So far for so good. The point is that, in my opinion, there is still a non-trivial bug that corrupts autocorrelation properties. This is a bit of a problem as this model is basically all about generating channel coefficients with the proper autocorrelation.
OK, so I did the usual Open Source thing:
- Look at the documentation.
It says that the block implements a basic fading model simulator that can be used to help evaluate, design, and test various signals, waveforms, and algorithms. OK.
- Look at the code.
While the block mentions a Table 2, there is no reference where this table can be found. Since there are many, many ways to implement Rayleigh fading, it’s hard to fix without knowing what algorithm this is supposed to implement in the first place.
The Mailing List
The next step was, of course, to search the mailing list archives. At least I’m not the only one having problems with the block.
- Here, some guys conclude that the block does not work and should not be used. It didn’t trigger any comments/reactions from the developers; and usually they are pretty picky adding a for the record reply, even if others already came to a conclusion.
- Here, one of the developers experienced problems with the block. Of course he got a reply, but was pointed off-list. I asked for any new insights, but was ignored.
- OK, so I opened my own thread. It got completely ignored.
- A day later, another guy asked the same question. I tried to get a conversation going, but without much success.
Since nobody seemed to be interested I blogged about the problem. Just by looking at the graphs of the post, it should be easy to grasp that something is going wrong. I linked the post in the thread, hoping that now everybody should understand the problem. Still, no reaction from the developers.
I pushed the thread again and, this time, had a good conversation with another user. I think we brought the topic forward, and explicitly asked for feedback from the developers. Again, no reaction. I mean anything between simply stating that they are aware of our concerns and joining the discussion would have been OK. But nothing? Seriously?
I didn’t see any other option and wrote some core developers directly, asking if they could please comment on this thread. The reactions were something between I’m not interested; not my department; and no reaction at all. It’s now over a month since I submitted the first patches and I still have no clue what’s going on.
It’s OK, if someone doesn’t have the time or just doesn’t give a f!@#, but be mannered and tell other people who put considerable work into this shit!