Musings on Software Development