Hacker News new | ask | show | jobs
by dqdo 3528 days ago
Software development takes a long time because of the users. If you think about every piece of software that has ever been written, they have been created to solve a human problem or resolve a human concern. As we build more impressive systems, our expectations also change. A state of the art website just 5 years ago is unacceptable today. Think about all the work that we now have to do in order to make things mobile responsive. Features such as chat and video, which were revolutionary in 2004-2005 (when Youtube and Facebook were found) are common requirements of projects today. In additional to an increase in user expectations, we have to understand that when we undertake a project it is to solve a new problem whose implications cannot fully be understood from the beginning. In most software projects, the problems only becomes clear after spending months building it. Once we have the software as an artifact, we will find new ideas and new extensions that we could have never imagined before. Additionally, a large part of our software has to interact with other artifacts in the real world. These artifacts are built by other people and continuously change. A large part of maintaining a project is ensuring that is still compatible with all the programs that it depends on.
1 comments

Features such as chat and video, which were revolutionary in 2004-2005

They were revolutionary in 1968: https://www.youtube.com/watch?v=yJDv-zdhzMY

Chat and video was revolutionary in 2004-2005 on the web.
The hell they were, I pioneered that in 1995.