By training, in Taiwan, we call programmers software designers, not software engineers, because engineers connect machines and designers connect people. We are the sort of people that connects people, but even the most brilliant designers usually approach a technology from a more optimistic viewpoint.