Long before I was a software developer I was a user. This may sound like an obvious statement, but I do not consider myself the “typical” developer either. I went back to school late in life after trying several other passions and realizing that creating was really what I was good at. So, I became a developer later in life. Originally, I thought this was a disadvantage. I thought that I would never gain the experience that someone who had been developing since they were 8 years old would have. They would have years of coding experience on me, but what they would not have is the mindset of an actual user.
I remember back to a couple of my college classes and the
professors stating that, “We need to change your brains to think differently”.
More logically, or more like a programmer. I would say - and so would my wife-
that my brain has changed since school and even evolves more and more today to
think more like a programmer. What I would come to discover is that I have this
interesting insight into the end user because I was one for so much longer
than these child developers.
As developers, we all hear about the concept of “scope creep”
or “feature overload”. We want to create great software, something that people
will use to solve their problem. But how do we know what to put into the
software or what features to include in the app or website we are creating. We
probably have some pretty good ideas and, as we go along coding it, we find other
features that would be great to have. Many times, without even considering
if the feature will even be used. In being an end user for quite some time before I became a developer, I remember thinking back to software I was considering to use to solve a problem. Often, the software had some great things it would do, but most of the time they were features I didn’t really want or need or would even use. Then I would find out that the software did not really do what I wanted it to or that it would be a customization of the product to make it do that.
In my current position with a local publishing company, my
first exposure to UX was my first week on the job. I was put into UX training
that very first week. I had to hit the ground running. I had no idea what UX
was, but I figured it would be some good training to start with. As I went
through the training, I discovered that I knew a lot more about it than I
originally gave myself credit for. I was this "user" long before I became a
developer. I would imagine myself as the user. I would ask myself, “If I were
purchasing this product to solve my problem, what would I really want and need
it to do?”
UX and User Center design has become the new buzz word in
software development and web design. This is good, but it should and can be
taken so much farther. It should be part of every aspect of a product or a
service development. The rewards are so much greater when a product or service
is done right and the customer is satisfied with it.In a recent project for my employer, I was creating an app to compliment one of our children’s books. I remember that I was more concerned with how the app would look than how it would function. I knew that for the app to be successful, it had to have the professional look that all other apps have. I also knew that it had to function the way a user would expect.
This led the team to do some user testing early on. We would ask the user what they thought it should look like and what they would expect to see next after they “tapped” on a button. This type of testing would lead our discovery in creating the app and how it needed to function. We then moved on to more advanced prototypes and testing these with actual users. Each time I put myself in the place of the user trying to figure out if I would do that same action.
My past experiences coupled together with
the UX training give me a tool box filled with some of the best tools around. I
draw on this toolbox to create these apps and sites. I am not a designer, and
that too shows in much of my work, but even here I am pushing myself to be in
between design and development. (I understand the whole left-brain/right-brain
thing. But I don’t have to agree with it 100%.) I find that my creativity
manifests itself in different ways in discovering creative solutions to coding
problems. What I am doing is trying to squeeze out just a little bit into
graphic design creativity. That is a topic for another post.
In the end, I found that using my real world user experience
allows me to “see” what the user sees, and make better decisions on
functionality and design. I know my experience with coding will only grow and
get better. New ways to accomplish things are always being found and posted.
But what I originally thought was a hindrance in lack of experience coding
because of my late schooling and time in front of the keyboard has turned into
one of my biggest assets for me personally and professionally. It is really fun to see the end product be the vision that the user wanted and expected and know that what I create is something people will really enjoy and in the end-use.
No comments:
Post a Comment