I like to think of software as "anything which you could send over he telephone lines", and hardware as "anything else".