software industry critique