Articles from User Experience

A Plea for IE

By Michael Flanakin @ 10:28 PM :: 323 Views :: 0 Comments :: Technology, Microsoft, Predictions, Tools/Utilities, User Experience :: Digg it!

Internet Explorer

Microsoft is out to prove a point with Windows 7. I can see the message clearly: "See, we can deliver on time; and earlier than most expected. And to top it all off, we did so without drastically changing the OS. That 'polished' OS you're looking at... yeah, it's Vista; 'Vista-point-1' to be exact. Sure, we tweaked it; but that's just to prove another point: Microsoft software isn't about bloat." I could probably go on for a while, but the signs are all there. Sinofsky has done a great job taking the Windows team under his wing. I've been very happy with some of the decisions they've made. As a matter of fact, I'm hoping to see some of the same changes on other fronts. Enter Internet Explorer.

IE8 is a big flop in my book. Don't get me wrong, it's my default browser and I love the enhancements; but it's just hiding the real, underlying problem: the foundation. I apologize for the analogy, but you can only mold a pile of crap so many ways before it just starts falling apart. Arguably, the same can be said about Windows, but Windows 7 has really given it a refresh. It's hard to explain how much better Windows 7 feels. I have to say I'd liken it to the first day I got Windows Vista, to be honest; but the key differentiator there is that I had quality hardware that was up to the challenge and no legacy software or devices to be concerned with. I'm not the "normal" user, of course, and I feel bad for those who had bad experiences. It's not because the software is bad, it's because your circumstances around which you experienced it were wrong. Not that Microsoft isn't to blame, tho; but I'm getting way off topic. It's time for a major change with IE.

I remember seeing some early concepts around IE8. At first glance, I was confused at a few of the ideas -- I'm thinking of one in particular -- but after I paused to really mull it over, it hit me. The power users would have at their fingertips would be astounding. There's a common root to the booming growth of Google and Firefox. This is exactly what Microsoft would've seen with this feature. Guess what: that feature never saw the light of day. As a matter of fact, I don't even know that it made it past that slide deck. Admittedly, the idea was rough, but it had some real potential. What's funny is that I just read something about the same concept being applied to another browser. *sigh*

Before IE8 beta 1 hit the streets, I saw another slide deck about what would be included in IE8 and 9. At first, I was excited, but it didn't take long for that to wear off. I actually began to question some of the decisions. There was (once again) one feature loved, but then I started to wonder if it even made sense. Depending on whether the team takes a left or a right out the gate will be the deciding factor for that feature... if it's still even a possibility. IE8 was pushed back so much that the IE9 time frame and feature set is completely out of the picture for what I saw. It's too bad; I was looking forward to a few quick revs. At the same time, this could be perfect timing.

Windows 7 is on the way, with rumors of April and May release candidates culminating in a June, July, August, September, October, November, or January final release date. It's pretty clear nobody has a good clue of the actual release date, but there is one constant in all the confusion: simplicity and performance are the two driving tenets in Windows 7. These two factors are huge for usability and, furthermore, perceptions. So, when I think about what to expect in IE9, I'm looking for both of these: simplicity and speed. IE8 is a dog on some machines. We've seen JavaScript benchmarks and "everyday use" benchmarks that all tell us different things, but it all comes down to our individual experiences... and perceptions. For IE to be a contendor, it needs to clean up its act. I want a sleek, sexy browser. It's not Firefox; it's not Chrome; and it sure as hell isn't Safari or Opera. I'm not saying each isn't functional, I'm just saying there's a lot to be desired.

Opera's doing it's thing, although I'm not sure why it even bothers; Apple's giving Safari on Windows a go, but not doing well; Google's got juice, but I don't think they have the right talent-mix to succeed; and Firefox is leading the pack against IE, but hasn't really made any significant innovations and is growing more by perception than anything. Microsoft (read: IE team), the browser market is yours to lose [which you're doing]; but it's also yours to dominate. Take a step back. Review the history books. There is one constant in what drives the up-and-comers of today. See that and feed into it. The world is asking for simplicity, speed, and all-around usability. IE8 isn't the answer. IE9 could be. You can do better. I know it; you know it.


2008: Year of the Cloud

2008: Year of the Cloud

Every year, there's one underlying theme that seems to be pushed in the technology arena more than anything. This year, I feel like it's the year of the cloud. The last time I did this was five years ago, so I'll have to back-fill a few years, but here are the themes I've noticed over the past 11 years.

  • 2008: Year of the Cloud
  • 2007: Year of User Experience
  • 2006: Year of AJAX/Web 2.0
  • 2005: Year of SaaS
  • 2004: Year of Offshore Outsourcing
  • 2003: Year of the Architect
  • 2002: Year of Web Services
  • 2001: Year of XML/.NET
  • 2000: Year of Enterprise Java
  • 1999: Year of Linux
  • 1998: Year of the Web

We've been approaching "the year of the cloud" for a while, now. You can actually look back to 1998, when the web started to really catch on. A few years later, as Java started to build momentum and then .NET hit the scenes, which is when XML as a standard communication language started to catch on. Also tied to the .NET release was a huge push for web services. As this was more and more successful, service-oriented architecture (SOA) started to boom. In my mind, that was a big boon to the outsourcing trends, which have seemingly quieted down a bit, but not completely. SOA also led to the software as a service (SaaS) trend, which triggered Microsoft's software plus services (S+S) push, but that was more of a side story. With everything moving to the web, backed by [typically open] services, asynchronous Javascript and XML (AJAX) was the next big push. This was tied to the "Web 2.0" moniker, which I'd argue wasn't quite what Tim Berners-Lee intended. Either way, this led to the big push for better user experiences, which many people confuse with user interface design. The Web 2.0 push also kept the industry on its web focus, which is where we are left today.

It's easy to look back and see how we got here. Trends show that architectural changes typically take two or three years to gain momentum in the community, so we'll probably have a couple of years before the next major architecture peaks. The trend towards distributed computing has grown more and more, but I have a feeling things are going to start coming back a little. We've been pushing out to the web for a lot of reasons; one of which is the rise of the Mac. What we've been losing out on, however, is the power of the desktop. I see the S+S push to continue, but more as an underlying theme than a strong focus. Services will continue to be the foundation, maintaining the importance of cloud computing, but the desktop will be where the processing occurs. I see Silverlight proving a huge success, which will eventually bring .NET to the Mac. This will probably bring Novell and Microsoft a little closer together, with respect to Microsoft's relationship with Mono, but this may simply be a change in focus for Mono. Oh, and when I say, "bring .NET to the Mac," I'm not talking about the scaled-down version in Silverlight. I'm talking about the real deal. I see WPF and Silverlight merging along with the smart client architecture built into .NET today. This will take more than a few years, but it seems to be inevitable. Most likely, by the time all this happens, multi-core will be a way of life, as opposed to the we-should-be-thinking-about-threading thoughts most developers have today. Armed with a strong multi-threaded foundation, which is easy to use, the combined WPF/Silverlight presentation tier will quickly overtake Flash and Air. By this time, we should also start to see more integration into our everyday lives...

Okay, I'm probably getting a little out of hand here. If I go much further, we're going to be on the USS Enterprise, so I'll stop while I'm ahead. I'll just leave it at, it'll be interesting to see what's next. My money's on the power of the desktop, which we've lost over the past 10 years.


WPF and Silverlight (XAML) Tooling

By Michael Flanakin @ 10:51 AM :: 865 Views :: 2 Comments :: .NET, Tools/Utilities, User Experience :: Digg it!

WPF/Silverlight XAML

If you haven't played with either WPF or Silverlight, you first need to understand the tooling we have available: Visual Studio, Blend, and Design. Most people don't consider Expression Design, but I'd argue that it's perhaps the best way to get started, depending on what you're doing. This is probably common sense, but if you haven't played with each of the tools, you may not realize how valuable each is to your end goal.

Any developer will most likely want to start with Visual Studio. Try it. You'll find yourself wondering where to start. If you're an old school web developer, like me, you'll stare at the XML code and wonder what to type and finally fall back on the toolbox. If you're a drag-and-drop type (either Win or Web Forms), you'll probably go directly to the toolbox. In either case, you'll most likely find it useful to tweak both the designer and XML... well, that's not completely true. If you're comfortable with XML, you'll eventually stop using the designer because it's just too much of a pain to deal with in Visual Studio. Visual Studio is the best environment [today] if you want to modify markup or code. Don't choose Visual Studio if you're a drag-and-drop type of developer. No matter what type of developer you are, however, you'll find yourself wondering if there's a better way because it just doesn't "feel" right. This is when you'll begin to wonder about that "Blend" thing you heard about.

If you're proficient in Flash development or claim the "designer" moniker, you'll probably start with Expression Blend. Blend is the best tool to build an interface along with some key interaction details (read: animations).  The problem with blend is, there's absolutely no intellisense in XAML, which I find ridiculous. And, just to put salt in the wound, you can't even edit code (C# and VB) files with the tool. This really drives in the fact that the tool is intended for no-code applications. These don't exist. In my experience, Blend will become less and less useful over time. Why? Because you'll start to realize you can't do everything in XAML and will have to move some things to code. This, in conjunction to run-time bindings in XAML will render the Blend design-time experience useless. Visual Studio is the same in this aspect, but it just because apparent that you'll prefer the intellisense, since you'll want to work with the XAML. Unlike Visual Studio, tho, you'll find yourself tweaking the designer more than the XAML. Coding isn't the only thing that will take you out of Blend, tho.

Let's face it, most people start looking at WPF and Silverlight because they want glam. They want beautiful applications with all kinds of frou-frou animations and transitions. This drives me crazy, but I'm not surprised. Choose WPF and/or Silverlight not because it can be pretty, but because it's the next generation user interface technology. This means, if you're building a new Windows application, don't even look at Win Forms. WPF is the way to go. Microsoft hasn't said it, but Win Forms is dead to me. If you have an existing app, I'd recommend you start looking into interop scenarios. Whether you're looking at WPF and/or Silverlight as the next gen platform or not, you're still going to want that glam I mentioned. This is when you should take a look at the often ignored, red-headed step-child of the Expression suite.

Today, Expression Design is a vector graphics editor. Don't expect to switch to Design for raster images (i.e. GIF, JPG, PNG) -- which is what I was hoping to do -- you'll find yourself missing crucial capabilities. I keep Paint.NET on hand for these needs. Design is best used to build creative visual interfaces. I've used it to theorize and bring certain design elements to life. You might do this with windows, buttons, and other framing elements, for instance. I simply find Design to be a better interface for adding glam to my user interface. Note that I'm not referring to animations. Use Blend for animation; use Design for static visual elements, like rotation, embossing, and the like.

To sum it all up, here's what I believe a WPF/Silverlight project should looked like.

  1. Know the difference between graphic and interaction design. Essentially this is the user interface vs. user experience debate, it's important to know the difference for staffing purposes. There is a difference and it's substantial. Don't assume that a graphic designer can architect an ideal interaction or vice-versa.
  2. Get a graphic designer. Unless you have an eye for graphic design, you won't be getting the eye candy you're probably looking for. If you have a passion for this, but it isn't your calling (like me), you might be able to get there eventually, but your time is probably better spent elsewhere.
  3. Get an interaction designer. The fact that we have dialog after dialog and click after click proves how important this one is. I'd argue this is more important than a graphic designer, but I might be biased. The good news is, this can be learned a lot easier than the artistic nature of graphic design. Don't think you can get there without dedication, tho. There are some scientific guidelines, but I have yet to see a good roadmap. It's more about opening your mind and removing yourself and what you might do from the process.
  4. Design is the graphic designer's scratch pad. Whether you start with wire-frames or set your sights on the real deal, Design is great for slapping something together that will eventually be useful. Tweak and tweak and tweak until you get something that looks right. Then, export to XAML.
  5. Blend brings your design to life. Now that you have your XAML, you'll probably need to tweak it to make it slightly more human-readable and maintainable as well as do some initial bindings and animations. This is where three worlds collide. Graphic designers will feel awkward in Blend, but will still be able to be relatively production; interaction designers don't really have a tool, so it will depend on where they came from, but Blend is arguably the best place for them to get started; and, developers are typically more code-focused, so Blend will be awkward for them, too. The bottom line is, Blend isn't the perfect tool for anyone, but it does fill a need. Use it to add interactivity to your design.
  6. Visual Studio gets the job done. When you're ready to make your app do something real, open it in Visual Studio. Arguably the worlds best development environment -- although not without its flaws -- you know why you're here. 'Nuff said.

As a developer who is very comfortable with markup, I've found that this has changed for me over time. I still believe it's a great workflow that supports some moderate back-and-forth -- at least, between Visual Studio and Blend -- but my habits have changed over time. As I've become more and more familiar with XAML, I tend to create visual and interactive effects in Design and Blend, respectively, and then just look at the XAML to figure out how it's done. Occasionally, I'll open my app in Blend, but not too often. This just depends on how big of an effect I'm trying to implement.

The bottom line is, get some experience in all three of these tools. You'll find your own comfort zone. It may include the all-too-bloated and usability-hating Photoshop with a XAML exporter instead of Design or augmenting XAML editing with a light-weight tool like XamlPadX or Kaxaml. No matter what you grow into, know there will be growing pains. WPF and Silverlight have a huge learning curve, but you're buying into the future. The curve is there for a reason, but will hopefully be lessened as the tools improve. I'm also hoping for some major improvements in .NET 4, but I'll try to touch on that later.


Lenovo Keyboard Layout Survey

By Michael Flanakin @ 1:22 PM :: 887 Views :: 0 Comments :: Technology, User Experience :: Digg it!

I've talked about my desire for a keyboard layout standard, especially with respect to laptops. Heck, I've even tossed the idea of buying a MacBook out the window because of their horrible keyboard. For me, this is the first thing I look at when considering a new laptop. Since last year, when I bought my first Lenovo, I've been griping about the ridiculous Fn key, which is on the wrong side of the Ctrl key. That's not my only complaint, but it's the biggest one. The next is the Esc key that's above F1, which causes me to press F1 occasionally. There's a few more, but I'll spare you. Luckily, Lenovo fans have a small glimmer of hope: Lenovo keyboard layout survey. This was recently mentioned on the Lenovo Design Matters blog Syndicated feed. Go, go, GO!!! Unfortunately, this doesn't explicitly ask about the Fn key, but I definitely left a comment about it. Please take the survey, but if you contribute to them screwing up the 3x2 Insert/Delete, Home/End, Page Up/Down keys, I'm coming after you.

Lenovo keyboard layout survey


What's Your IQ?

By Michael Flanakin @ 7:48 AM :: 335 Views :: 0 Comments :: .NET, Development, User Experience, En Español :: Digg it!

I saw Simon Guest Syndicated feed talk about user experience back in August and one of the things I liked was a tool he had to help decide what user interface platform was the best. Microsoft has 30-something user interface technologies. Sometimes it's hard to know which will be best. More often than not, we use the one the tech lead is the most comfortable with, which is pretty much a crap-shoot. Simon's app, UXIQ, asks 12 questions which you answer on a sliding scale. Ultimately, you're given three recommendations to decide on. I'll definitely keep this tool in my arsenal and suggest you do the same -- both the app and source are available on Simon's blog post.

UXIQ by Simon Guest

¿Cuál es su Índice de Inteligencia?

En Español

Simon Guest Syndicated feed hablar sobre experiencia de usuario en este Agosto pasado y me gusta un aplicacion que ayuda decidir lo que plataforma de interfaz es el mejor. Microsoft tiene alrededor 30 tecnologías de interfaz. Es a veces duro saber cuál será el mejor. A menudo, usamos la tecnología el plomo técnico es la más cómoda con, cuál puede o no puede ser una buena opción. La aplicacion de Simon, UXIQ, pide 12 preguntas cuál usted contesta dentro de una gama. En última instancia, da tres recomendaciones de elegir de. Guardaré definitivamente esto y sugiero que usted haga iguales -- la aplicacion y el código son disponible en el poste de Simon.

UXIQ by Simon Guest


WPF++

By Michael Flanakin @ 9:17 AM :: 354 Views :: 2 Comments :: .NET, Development, User Experience, En Español :: Digg it!

I was just telling a co-worker how, despite the fact that it hasn't been said, I believe WPF will be the future of Windows development. This seems obvious, but my initial take on WPF was that it was merely another option. I even question a potential attempt to relace the myriad of web development technologies with a XAML development experience. I don't see this being overly successful, but the idea of a single development model intrigues me. If that were to happen today, it seems like XHTML + JavaScript would have more potential. Either way, I don't see it happening any time soon.

Whether or not we see a single language span Windows and web, it looks like we have something new to look forward to. Apparently, Microsoft is looking into yet another UI platform. I seriously question why, but welcome the change. I'd really like to know what WPF is missing that requires a new platform. At this point, tooling is my only real complaint about WPF.

WPF++

En Español

Yo decía a un amigo cómo pienso WPF será el futuro de desarrollo de Windows. Parece obvio, pero mi primera impresión fue que WPF era simplemente un otra opción. Dudo un intento substituir la miríada de las tecnologías de desarrollo de Web con XAML. Dudo que esto esto fuera acerto, pero la idea de un modelo desarrollo me intriga. Si ése era pasar hoy, parece XHTML y JavaScript tendría más potencial. Cualquier manera, dudo pasará pronto.

Independientemente de si vemos una lengua para Windows y Web, parece tenemos algo nuevo anticipar. Al parecer, Microsoft está investigando un otra platforma de UI. No sé por qué, pero abrazo un cambio. Quiero realmente saber que WPF falta que requiere una plantforma nueva. Las herramientas son mi solamente queja de WPF.


UI vs. UX, Revisited

By Michael Flanakin @ 6:18 AM :: 471 Views :: 1 Comments :: User Experience, En Español :: Digg it!

A while back, I wrote about the difference between user interface and user experience by paraphrasing Simon Guest Syndicated feed. On his blog, he shows us the difference between the two in a real world, non-technical example. This is a good resource for anyone who doesn't know the difference, yet.

UI contra UX, Revisitado

En Español

Escribí sobre la diferencia entre interfaz del usuario (UI) y experiencia del usuario (UX) parafraseando a Simon Guest Syndicated feed. En su blog, él explica la diferencia de los dos en un ejemplo del mundo real y no técnico. Esto es un buen recurso para cualquier persona quien no sabe la diferencia.


Not Gonna Be a Mac Daddy

By Michael Flanakin @ 1:39 AM :: 288 Views :: 0 Comments :: Technology, User Experience :: Digg it!

I’ve seen some other comments on running Vista on a Mac Book and it seems to be somewhat unanimous: the keyboard sucks. Some of the benefits I have heard include the use of firewire, Parallels, and BootCamp, none of which I’ll ever use. Of course, that’s not it. A few of the hardware niceties include the backlit keyboard, front-loading DVD, and magnetic charger. I don’t know if I like the idea of a front-loading DVD player, but what does it really matter? Not much, in my book. The problems mentioned include the excessive heat; touchy touch pad, which is a problem I already have with laptops; uncomfortable typing due to the front edge of the laptop; two-finger + clicking is a cool idea, but slightly annoying when considering the simplicity of a right-click; and, of course, the keyboard layout. I’ve also heard there have been problems with 64-bit Vista due to lack of driver support. Given all this, I don’t think I’ll be giving it a try anytime soon. Of course, if the Mac tablet happens before June, when I get a new one, I may be singing a different tune. Steve Jobs did say he wouldn’t do a tablet, tho, so I don’t see that happening this year.


The Power to Esc[ape]

By Michael Flanakin @ 9:52 AM :: 292 Views :: 0 Comments :: Development, Tools/Utilities, User Experience :: Digg it!

Given my new venture, I have to complain about something... small tools/utilities that don't close when I hit Esc. Don't get me wrong, I'm not saying everything needs to close on Esc, but there is a lot that could. Take, for instance, the vast number of utility windows in Windows... wait, no, let me revise that... How about every control panel applet (or whatever you call them). Ok, sure, a lot of them are dialog-based and close as you'd expect when Esc is pressed. Let's look at the Windows Update window in Vista, tho. Since it's based on Windows Explorer, Esc doesn't close it. There's no OK/Cancel button; no buttons at all. So why would it hurt to support Esc? Perhaps this is simply an oversite, but it's one that way too common. I can name a dozen places like this in Windows, but I'll spare you the agony. Microsoft isn't the only culprit, tho. All I ask is that developers think about their users a little more. Is there any way you can shave one keystroke, one mouse move, or even a transition from the keyboard to the mouse. All these things add up to big points in the user experience arena.


Keeping Your DUX in a Row

By Michael Flanakin @ 1:07 PM :: 273 Views :: 0 Comments :: .NET, User Experience :: Digg it!

Ok, I just thought about something and had to tell somebody, so I volunteered you... (suckers)  Last week, I took a WPF class Brian Noyes Syndicated feed put on. In that class, he mentioned how the main reason people will consider WPF, at least initially, is when they're looking for a "differentiated user experience." I couldn't help but chuckle as my [strange] mind processed this, tho... "differentiated user experience" = DUX... so, if you want to ensure you have a differentiated user experience, you probably want to keep your DUX in a row. HA!! Get it! DUX -- ducks? I kill me!

...ok, forgive me. I just had to get that out. I'm not nearly a dork on here as much as I am in person. I need to work on that.






Archives Archives

Categories Categories

Related Links Related Links