Fast forward to today, and we find those basic tools have expanded into complete eco systems of software produced by a myriad of authors. The functionality demanded by users requires software that is so complex it can only be created using tools and components that others have produced. And software must be delivered fast, so even simple functions need the same treatment. The net effect is, nobody really knows what any of the software does in total, and if a flaw is discovered it can be really difficult to pin down who its author is.