Yes, end users. The jokes here can be endless in the technical community. The office assistant with the company for 30 years who still sees no reason why they just cant use a typewriter to write a letter, or when asked to send a copy of a disk sends you a Xeroxed copy.
Like it or not, these are the people who will be using your system. Never lose sight of the fact that you are developing a system for someone else to usesomeone who may likely be using it on a daily basis, eight hours a day, for several years.
When designing a new system, you should work with the users. You are actually working for them. Take notes on all requests and desires, and dont think like a programmer yet. As a person is describing their needs about student registration, dont immediately start thinking Okay, I can use a vector collection for that. Take down all the information and the user needs, and think about the system. Even if you know you are going to be the person writing the code, design it as if you were creating the specification to hand off to someone else to actually code. In other words, be prepared to switch hats from designer to programmer, at a moments notice.
Respect, patience, and attention to detail with all users will help ensure you a successful career. And, of course, you can also get some funny stories for your techie friends .
True story: While I was working in a service department in the early 1980s, a customer called with a problem. At the time, computers used 5.25-inch floppy disks, which had a small door on their drives that you had to close to hold the floppy in place. When I instructed the customer to place a diskette in the drive and close the door, they asked, Why, is this confidential?