Monday, May 31, 2010

One for the other

Of all the things I’ve noticed about software development, it’s that branding and experience don’t always mix well together. Properly designed, well-written software is supposed to be seamless and non-intrusive. When I enter an equation into my calculator, I expect it to provide me with an answer; I don’t expect the calculator to constantly remind me that it is made by “Casio”.

This poses a serious problem because if the brand isn’t in the forefront of the users’ thoughts, how will they recognize it? On my brother’s computer, the antivirus software makes every attempt at reminding me that it is “Norton” and it is tirelessly working in the background. By being so blatantly intrusive, it acts to reinforce the brand and to reassure those who fear viruses.

Ironically, this over-branding is what makes the experience so counterproductive. Norton does a fantastic job at reminding users that the internet is a dangerous place, but this has a negative effect in that it helps reinforce the fallibility of Windows to its users. As a Windows user, I fear it. How is Microsoft supposed to provide a positive experience when its users don’t trust the product?

Wednesday, May 19, 2010

Second Life

I never understood the fascination with 3D as a means to provide users with an “immersive” experience; especially with a costly taxation on CPU resources. “Second Life” didn’t have any logical incentives to lure users. Yes, it’s a 3D world and yes, you can chat with people in this world, but what else? The 3D world was only available to PC users with specific hardware requirements and operating systems. Without it, this immersive world was a closed eco-system.

As bad as this may sound, I’m actually quite happy Second Life never popularized. If they did, could you imagine the software and hardware engineers trying port this world so that portable devices could access this virtual world? Shortened battery life, lack of processor strength, overheating, and an operating system overhead absorbing valued memory resources. I’m sure the engineer geniuses could make it happen, but should it be done?

This is the same stance I have with Adobe Flash on handheld devices. Several of my coworkers have openly stated that Flash works extremely well with cellular devices *provided* these devices have the “right” hardware. Ignoring the fact that our desktop Macs have been known to crash due to Flash, what exactly is being asked? Have a mouse-less handheld device attempt to provide a user a similar experience knowing that they’re looking at a 4” screen?

That sounds rather painful.

Monday, May 17, 2010

64-bit Woes

Nothing surprises me more than the fact that my tiny netbook (an 11.6" Acer) came with a 64-bit version of Windows 7. Yet even though the OS is 64-bit, there needs to be 64-bit apps to properly utilize it. Currently, the most popular browsers only offer a 32-bit flavour, but it's okay because both the 32-bit and 64-bit versions of Microsoft Internet Explorer have been packaged with Windows 7.

Unfortunately, there's no 64-bit Flash player. When will Adobe come out with a 64-bit player? It doesn't seem like it's any time soon.

Sunday, May 16, 2010

Adobe or Apple?

It's inevitable that our production team has divided opinions on the Adobe and Apple issue over Flash and its legitimacy in mobile browsing. The Flash developers are sided with Adobe -- mainly because Flash is their livelihood -- while Javascript developers are sided with Apple since we don't rely on Flash. Both Adobe and Apple are claiming their platforms are "more open" than the other but I will try to make my argument based on personal experience.

After working with the Nintendo Wii and experiencing first hand the difficulties in developing for such a platform, I was utterly frustrated by the lack of support provided by both Nintendo and Adobe; there is NO support. Does Flash work on the Nintendo Wii? Yes. Does it work well? No. Were there a lot of problems? YES. Did Adobe fix those problems? Some, but only YEARS after Flash was available for the Wii. Are there still problems? Yes, absolutely.

Both parties are claiming how their platforms "should be considered" as open; which really isn't "open" at all. The goals of open standards are not the same as those for profit-generating businesses. It is currently not in Adobe's best profit-generating interests to fix their issues on the Nintendo Wii so the platform has been left broken. As a result, the developers are left to find web solutions for clients who have been assured by Nintendo and Apple that "Flash works on the Wii"; which it doesn't.

Do I want a similar fate for other mobile devices? Absolutely not.

Tuesday, May 11, 2010

Creating social networking sites

Several names come into mind when I think of online services offering developers the tools to "create" their own social networking sites from piggybacking off their framework(s). One which has been in the media lately is Ning. From my experience with them, their services and frameworks do seem to give developers the ability to do interesting things; but the question I have is why?

As of yet, I haven't heard of any recognizable brands (Nike, Reebok, Walmart, Coca-cola, etc) who have successfully created a site that has gone critical mass. Yet even with this fact, social networking sites are still in demand by clients who genuinely feel that owning a social networking site is a viable business opportunity which they should invest in; they want to be the next Facebook.

Far be it for me to say that social networking sites are a poor investment decision, but an interesting fact about the web: Ashton Kutcher has almost 5 million subscribers. He doesn't own a website, let alone a social networking site. And as far as I know, I don't recall any recognizable brands like Walmart having even 1 million subscribers (website, RSS feeds, Twitter feed or otherwise); let alone 5 Million.

Monday, May 10, 2010

The grapevine

This morning, the media outlets were all blasting how Apple had been secretly creating their own "Flash alternative" as a means to circumvent their reliance on Adobe products on their platform. I only started reading up on it when someone mentioned "Gianduia".

Apple's Gianduia project is not new. It has been around for about a year and was never a "Flash alternative". It's a framework meant as a tool to assist web developers in building AJAX-driven, rich internet applications. Had these reporters investigated further, they would have uncovered the inaccuracies of the headlines. This isn't journalism; this is gossip. Facts were not checked before publishing.

This is a frightening approach at how media outlets are reporting information; essentially just writing about other writers' articles. There has been a longstanding debate on whether bloggers should be classified as journalists and thus protected by the legislation meant for journalists. This is a prime example against it.

Sunday, May 9, 2010

Online Tutorials

I'm always weary of online tutorial websites that teach you how to effectively write HTML/CSS. Although the bios of the authors often refer to the amount of time they've spent working in the web industry, neither does it refer to the type of exposure they've had to different projects, nor does it mention their intentions.

If I were to develop CSS with a strong focus on browser compatibility, it would be far different from developing it with a focus on browser performance (read: Steve Souders). The same goes for CSS intended for longterm use and CSS written to support accessibility. These things are all different.

Websites like Smashing Magazine offer great tips on how to approach the technical issues inherent with web development, but the tutorials should be seen as just that; references. There's no such thing as a one-solution-fits-all. If there was, it would probably be one that far exceeds any clients' budget.

Friday, May 7, 2010

Techno dance!

My programmer buddy who works at Electronic Arts was telling me how he doesn't feel creative directors provide projects with much value and, in fact, are a detriment because they drain the project's overall budget. I completely disagree. Did you ever see that Jet Li movie where he was in jail and during some of the fight scenes, they made a CGI "x-ray" view of the opponent's bones breaking? This is where a CD comes in.

When a movie --having nothing to do with computers, technology or electronic gadgets-- decides that they want fight-scenes to contain high-tech CGI animation and techno-rave styled music in the background, it rarely ever adds to the story. In fact, these things often feel so out-of-place, it makes the overall experience of the movie unpleasant. I can understand if these things were in a high-tech action flick, but not a drama!

Creative directors are the guys that meld these aspects together and ensures that the film has the appropriate eyecandy that coincides with the story. Now, if you're a creative director and are under the impression that rave music can work with *any* film, it's probably a good time to re-examine whether the audience will accept that vision.

Btw, might I add, Donnie Yen is the new Jet Li of North American-approved Asian martial arts films.

Thursday, May 6, 2010

Font substitution, services & branding

I'm well aware of the different methods in replacing fonts on webpages because designers are always looking to add more tools to their design arsenal. sIFR has had limitations, but the recent methods such as cufón, typeface and Typekit have been gaining attention and I thought I'd mention some issues that are uniquely inherent about technical solutions involving 3rd party services such as Typekit.

Some immediate issues -- if their services go down:

  1. How will this affect the client's site?
  2. How will this affect the client's brand?

Relying upon any third party's services means your client's brand is susceptible to those services. I was on the Bank of Canada website when this error appeared. The service that provided BOC's date/exchange rates failed and produced an empty page with a horrible error message. Aside from a confusing message which a normal user would never understand, what should a user be thinking?


Not only does this error concern me, it doesn't make me want to trust BoC's online services nor does it give me faith in the BoC brand. There will always be a risk when dealing with external services, Javascript libraries or font-replacement services; the question is whether the gains offset the risks? After seeing this error, how much are you more willing to trust this online bank with your money?

Wednesday, May 5, 2010

Practical applications to reverse-engineering

I find myself spending a lot of time reverse-engineering other people’s work. That is, it’s rather typical that clients have existing systems and frameworks where the amount of documentation is tragically inadequate. The trick is to learn as much as you can about the author(s) and then emulate what they’ve done. And although it’s rather cliché to say this, you really can learn a lot about a person by sifting through their code.

I was working on a project last year which involved developing work specifically targeted for the Nintendo Wii browser. Even though it is powered by Opera, it doesn’t behave the same way as its desktop cousin. The issues are compounded by the fact that there is no official documentation from either Nintendo of America, Europe or Japan; thus it was necessary to break down the issues myself. The full list is a lot more explicit so I’ll simply fire off some of the most glaring facts:

  1. There lacks metrical data to gauge the user's environment. The following issues remain unresolved:
    • There are different Nintendo Wii browser versions and they’re linked to firmware patches.
    • There are different versions of Adobe Flash for the Wii browsers. While one version of Flash can handle video well, the other doesn't.
  2. During the initial launch of the console, the Wii browser costed $5. Someone found a hack to enable one of the apps –which then allowed for a modified version of the onboard browser to run: The legitimate $5 browser had a different resolution than the hacked. In 2009, the decision was made to offer the Wii browser at no charge, but the divide was already set.
  3. What are the dimensions one can work with on the Wii browser? 800x600? No. An obscure width to the likes of 813px. What’s even more strange is that when the <BODY> has a CSS width of 100%, any <DIV> set to “100%” will be locked at 813px.
  4. The Wii has a feature that allows users to zoom in and out of the page. This feature – coupled with the onscreen menu — throws Javascript haywire because the viewable screen height constantly changes.
  5. Anchor tags <A> as well as tags which can be clicked (ie. adding the Javascript function "location" to a div) will always have a visible border around it. I've yet to find a CSS or Javascript solution to this unsightly issue.

From this experience, I can only conclude that web development experts weren’t initially consulted by Nintendo before the browser was integrated onto their console. Since I don’t personally own a Wii, the likelihood that I'd develop personal work for such a platform is very slim. In any case, good luck to all those who have an interest in it!

Saturday, May 1, 2010

A question of usability

Vancouver’s public transportation, Translink, has low-rider buses with confusing doors. That is, those who ride the bus are already familiar with the idea of pressing a button to open the exit doors. Bombardier (the makers of these buses) has broken convention and nicely camouflaged pressure-sensitive strips at the edge of the doors. When pressed, these strips will cause the doors to open. Some immediate problems about this new method of interaction:

  1. The trigger to open the doors is both unconventional and hidden.
  2. Those who cannot read English will not understand how to proceed.
  3. As an accessibility issue: the elderly and mentally challenged riders with visual impairments are directly affected.
  4. After pressing the trigger, no indication is provided to a user that their command was accepted by the system.
  5. Activing the trigger produces different results because in order for the door to open, the bus driver needs to "enable" the doors first.

I will be blunt in stating the most immediate and obvious flaw of this design: There is no reason for a door to be so complex that instructions need to be made. If this were a website, it would be unacceptable. Websites built with usability in mind would never have a “how to use this website” page because the site should be intuitive enough for it to be unnecessary.

Although I tend to be quite critical with my coworkers and colleagues about maintaining a certain level of usability, I will admit that the technology sector is one of the industries putting a lot of effort in pushing for better usability standards. For companies like Bombardier, their work needs to be scrutinized to an even higher degree because their footprint in society often exceeds that of any website.