Why did design become so important to me

Posted by posted by Francis @ 4/23/2008 08:00:00 AM

I have been ranting about design for a while. However, I am not a designer, I am a software engineer dammit. I got all the design information that I know from books and blog posts.

I finally got it this week. I just finished reading Made to stick. I finally realize that it is not all the books with their statistics and theories about design and usability that stuck. It is the personal experience that I had years ago (with a previous employer) when I participated in a usability study of the software that my team was writing.

It was one of those one-way-glass usability studies where the developer team sits on the other side of the glass watching user after user struggle doing simple tasks with the software. It was a softphone type application and users had a lot of trouble just making a call. Despite the huge button that said "call" in the middle of the application window. Some of the developpers were litereally yelling at the glass: "Push the damn call button!"

The Made to stick book made me realize why this experience stuck with me. It was Simple, Unexpected, Concrete, Credible and Emotional. Given the fact that I have a good story to tell about it, it scores a perfect 6 out of 6 on the stickiness scale.

I highly recommend this experience (witness a usability study of your software) to anyone involved with creating software. Then, tell me if it sticks with you.

Labels:

Why developpers should never disable the Vista UAC security prompt

Posted by posted by Francis @ 4/11/2008 07:02:00 PM

As ars technica hypothesizes, it was put there to annoy you. Yes you, the software developer.

In the past, Windows developers were making assumptions about their privileges and calling all sorts of Windows APIs and accessing all manners of resources and files without thinking about the required privileges. Now, with the UAC, if you want to avoid being annoying to your users, you will attempt to get your work done without requiring an elevation of privilege. And yes, that includes things like installers.

So, developers, don't disable your UAC. Feel your user's pain. It will make you a gentler, kinder developer.

Labels:

The developer totem pole

Posted by posted by Francis @ 4/09/2008 08:00:00 AM

Web developers get no respect. I swear this is the sentence that I used the most often in the past few weeks.

I have said that sentence in frustration because I had to fight the perception that web development is easy. That any developer (except maybe for a VB developer) can do it. This perception is ingrained at all levels of software organizations. From the developers themselves all the way to management.

There is a pecking-order, a totem pole where developers can be classified based on what kind of developer they are. You won't find that description in any programming book. This is not explained in any school curriculum. But it is there nonetheless; implied in the way projects are funded and staffed. It is often assumed that the people at the upper echelons of the order can (when they are coerced or there is no-one else available) do the work of anyone located below. Conversely, it is assumed that you're going to be in a world of hurt as a manager if you are forced to use a developer at a lower level to do some work "above his skill".

Some might argue that Linux kernel hacking is measurably more difficult than ASP.Net web development. That might be true but I don't think that it is so much more difficult that we can assume that it is impossible for a web developer could ever undertake a Linux kernel project. I think that we just have to understand that making a switch in programming discipline requires a certain level of learning. Whether you're going up or down the totem pole.

We have experienced the "going down the pole" phenomenon recently at work. We had an exiting project to complete that was a Java-based web project. We were short on web developers to complete the project so, naturally, it was assumed that if we put a bunch of Windows VoIP developers on the project, they should have no problems completing the work. After all, it's only a web project, how hard could it be?

A few months and a lot of overtime later, we successfully delivered the project. But it turns-out that it was a difficult transition. Everyone involved had to brace for a rough ride and pull together to make it work. It was not as easy as expected. I hope that the developers that were assigned on this project have a new found respect for web developers.

In my career, I have worked at pretty much all the echelons of this totem pole and I felt that I had earned my stripes. But recently, I have been involved in a lot of web development and I have noticed that the perception of my coworkers towards me was different. I have the stigma of the web developer. I do easy stuff now.

I think it is time we get rid of the totem pole. Working in software is challenging enough without the attitudes and the disrespect.

Labels:

Innovation and creativity

Posted by posted by Francis @ 4/07/2008 09:45:00 AM

Innovation is the creativity are the holy grail of employees everywhere. Pretty much everyone wants to work for an innovative and creative company. Manager want to manage hot, creative teams that deliver new innovative projects. CEOs want to be CEO of IDEO.

Employees drool over pictures of the office space at Google. The read articles about the kind of innovation that Blizzard brought to their work environment. They all think that this is the hallmark of a cool, creative environment. Put your people in a great office and give everyone a Nerf gun and you're done. I think that I used to think that too.

I am halfway into the art of innovation and I realize now that this is not about the office space or the product. It is about the DNA of your company. When you are a creative/innovative company, everything you do is done to support this. From the products/services you chose to offer all the way to the people you choose to hire. And of course, to a certain extent, the office space and furniture.

The hard realization for me is that I work for a successful company that is focused on quality production much more than innovation and creativity. This means that the DNA of the company has coerced it to grow to be an effective product delivery machine. It has hired the best software people to predictably and reliably deliver products.

This means a lot of things. For example, for most of our employees, work day starts at 9:00 and ends at 18:00. This is something we advertise to prospects that we interview. This is definitely something that becomes "untrue" when most of your work is creative in nature. Creativity might happens at odd hours and requires that you be fully absorbed into the process.

So the challenge for a company like ours if we want to become an innovation powerhouse is the significant changes to the core values of the company on the way to get there. There are a lot of examples of successful companies that started-off with that core DNA. Does anybody know of a company that reinvented itself all the way to the core and managed to turn it into a success?

Labels: