A lot of software companies use an "agile" /
SCRUM system to manage the development process. In short, this means developers and clients have regular short meetings to discuss what's going on, what the client wants, what needs doing next, who's having problems etc. Jobs are split into small bite size chunks that can be realistically completed in a particular sub-timeframe. This is the most efficient way of running a client/team based development. In this case, Cakewalk and its customers are the client. The client puts forward lots of feature requests and bug reports constantly. Through a series of ongoing SCRUM meetings, the development team will work out the order of priority and efficiency for the next stage of development. To us mear mortals, it will seem like they are just picking low hanging fruit or doing things completely randomly, however, what they are doing is keeping a maintainable and efficient flow of development going and it's also probably how they are able to give us these rolling updates - it's all thanks to a modern, agile development process. I'm personally very grateful for that - even though there are bugs I want fixed now and features I want implemented now, Sonar continues getting better and better every month.