To most software developers it can seem extremely obvious that software is written for computers. After all it runs on the computer and tells the computer how / what to do. But this isn’t the entirety of the purpose of software. Through and through, software is really written / built for PEOPLE.
There is a movement in computer programming called “Clean Code” that pushes the idea that software is written for other developers. Clean Code is human readable and as such is more easily maintained over time. All software is updated, fixed and changed over time, and it’s useless if it needs to be completely rewritten from scratch anytime a change or bug fix is needed. So with Clean Code is move the obvious point to say that software code is written for not just computers to run, but also for developers to be able to read and the modify more easily.
As much as software code is written for computers and developers there is one audience that’s ultimately more important: the USER. Without users there is not software in the first place. In order to write good software these three audiences need to be not only kept in mind but embraced for all their input and consideration. If a user can’t use the software then it doesn’t matter how easily maintainable by a developer or how well it executes on a computer.
All in all, the entire purpose for software is PEOPLE. Software almost has nothing to do with computers. Computers are only one of the many tools needed for PEOPLE to get work done. Without PEOPLE (users and developers alike) there is no software.
You must realize the truth, Software is for PEOPLE!
Software Developers and Engineers need to embrace the thing many of them see as their greatest deficiency and weakness. Don’t cut yourself short by saying, “I’m not good with people.” If you’re a developer then you’ve already spent ample time getting good at writing code. It’s also possible you’ve compromised your ability to spend enough time improving you interpersonal skills.
Don’t cut yourself short and forget about the people!
You don’t have to go to parties all the time or other things many people likely urge you to do. All you have to do is communicate and embrace the input of others. As unintuitive as it sounds, when you improve your interpersonal skills, you will improve your ability to write / build better software.
Never forget, without people there is no software.
Software is so ingrained in society today. It affects all our lives. Software runs the world! However, if it’s built for computers instead of people then there’s no point to it. Computers are a tools, and software is the means to make the tool work for people, help people, to change the world!
Go make a dent in the universe by building truly great software, made by people, for people.