Many other things have to happen to go from prototype to storage device, including nailing down how the controllers should work, creating a functional command set to interact with the devices, and defining standards in design and communication so that future devices from different manufacturers can actually interoperate with future computers and operating systems.