Archive for the 'Webdevelopment' Category

Monday, March 3rd, 2008

Internet Creatives Knowledge Day

This Friday Jeroen Visser organized the knowledge day for the mailing list of Dutch internet creatives in Delft. Various speakers from the creative internet disciplines presented on their work and ideas.

I met Jeroen at last year’s Reboot and I couldn’t miss this interesting and affordable event right in my backyard.

Design research in branding

André Weenink of design firm Booreiland was the first presenter and he presented his findings on research in design branding by applying generative techniques.

His research forced on getting insight into the user experience of customers of Sissy Boy and he did this by having a representative set of customers of the company create artefacts that they thought were Sissy Boy.

There are several techniques to do design research: question customers with interviews, questionnaires or other means, observe customers in construed or natural surroundings and deduce principles from their behaviour. André opted for a third technique to let his participants create their ideal vision and in doing so communicate with their experience.

The things that were generated were diaries, graphics, collages and other objects in workshops with the selected customers. From the stuff that was created principles and patterns were deduced by André which he then translated in a brand identity and a visual vocabulary that could be used by Sissy Boy in their future communications.

The advantages of these generative techniques are that they are fun, they allow for empathy with the user and co-creation with users and different departments of the company. The result is not a boring report which is thrown over the fence but a rich set of human created data.

Downsides are that it is an intensive process involving a lot of effort and creating a lot of material that needs to be synthesized. The reach is limited by the selection of the number of people, physical presence required for some steps and no use of online facilities.

One of the questions that André asked the audience was how to use online means within a process such as this. This discussion quickly strayed to various designers being very concerned by the integrity of their design process and the influence of the designer and the various departments in the company on the end product.

Generative techniques in interaction design

I think it is a more interesting question to ask how to use generative techniques in interaction design for the web. A lot of design for the web uses the first two techniques, question and observe, to gain insight into the requirements and wishes of their users. Users are observed and then interaction designers, web designers and developers fit what they have seen into the structures they are familiar with.
I haven’t heard of generative techniques being applied so much. Having users create their ideal vision of a website seem to me to be an opportunity to create websites which are better attuned to users’ wishes and open to free and fun interaction.

A generative technique for webdesign would be to ask users what they would like a website to do for them. So what kind of a web experience would users design if they could do it themselves? I think the results of such a workshop with prospective users could be very interesting and revealing. Especially because users are in no way constrained by technical feasability and only somewhat by pre-existing concepts.

Probably none of the resulting concepts could be created outright but the design synthesis of those user wishes would probably result in a website that is better attuned to users and more fun for them to use. Users increasingly want to make their own web experiences and at least have a say in them. Most websites currently are very boring and constrain themselves to what is easy to create in rails. I think this is a gap that should be bridged.

Flash and HTML, tips for a happy marriage

Bob Corporaal showed that since Flash8 the external interface and javascript bridge part enable reliable and direct communication between Flash and the DOM. He then proceeded to show how you can use communication with javascript to solve gross deficiencies in Flash.


Picture by Robert Jan Verkade

I see how the techniques he demonstrated fix real problems but mostly these are problems not worth having. Flash is so ridiculously crippled that by using it you break pretty much everything: text selection, scolling, text resizing to name just a few extremely basic features which are missing in Flash. By talking to the DOM it is possible to fix these problems piecemeal but you can never be sure you’ve got every one of them. Most regular Flash developers don’t even bother with fixing the basic stuff let alone make an accessible and progressively enhanced version. To sum it up: things which are not easy to do in your platform are essentially absent.

Mark Wubben then showed an example of progressive enhancement using Flash and sIFR to display custom fonts on pages. Mark himself admits that it is a hack and should be used sparingly, but at least he takes care to have the Flash break as few things as possible. Web fonts are already working in current builds of Safari and Opera and display any font you like using native rendering. There is some discussion going on about font piracy but that is mostly academic.

IC Pixel Art

Arjan Westerdiep gave a presentation on how he creates pixelart. You can see some of his work on his site Drububu.


Picture by Robert Jan Verkade

Curious was that he had written a C program to calculate the differences between subsequent frames of his animations to save on space so as not to use Quicktime. I am pretty sure that Quicktime with most current codecs already implements its own highly optimized version of differential image compression or motion compensated video encoding but this presentation was not really for asking about whys.

Why do people create?

Gert Hans Berghuis from internet firm Fabrique talked about the rationales for user generated content.

He listed a number of reasons to the question: Why do people generate content?

  • because they need something
  • because of curiosity
  • to come to terms with emotions
  • to come to terms with their surroundings
  • to do good, to contribute
  • for recognition
  • to be part of a group or greater whole
  • to show off knowledge/skills
  • to reflect
  • to make money

This is a pretty generic list of motivations which can be used to explain many actions including why people create works.

He also discussed intrinsic and extrinsic motivations. It is believed that adding an extrinsic motivation for something for which there was an intrinsic motivation, kills the intrinsic part. Some sites which rely on crowdsourcing have tried to incorporate some sort of revenue sharing to keep the users happy, but these systems both destroy intrinsic motivation and stimulate gaming the rules.

I think anybody creating content on a website should keep in mind that they are in fact sharecropping on somebody else’s land and they have hardly any standing if the owner of the lands decides to sell it or make broad sweeping changes. Sites usually try to make their users happy, but sometimes different motivations can take over. Users have the single recourse of taking their activities elsewhere, though currently it is the question if they can take their data with them.

That session was the last after which the event was concluded with drinks and dinner.

Thursday, January 24th, 2008

Django People…

…are some pretty fine people and now they’re on a map near you. I thought I knew most of the Django programmers in the Netherlands, how wrong I was.

Now with Simon Willison’s great effort in a strongly focused site: Django People, Django people can show who and where they are.

Django developers need to band together and form a strong front against the powers of PHP and Rails. Great sites such as these support an already great community and make me proud to be a part of it.

Sunday, January 20th, 2008

hAvatar Wordpress Plugin

I had the idea for a Wordpress plugin replacing the avatar systems of gravatar and MyBlogLog with a microformat based one a while back.

The principle is simple. If you comment somewhere and you leave behind a URL (be it a blog one or an OpenID) and we can follow that URL and find a representative hCard with associated picture for you, it means we can present that picture as your avatar.

It works just as well as most avatar standards out there, it’s distributed and built on top of a proven microformat and gives people a benefit for publishing an hCard on their blog or elsewhere.

Development

havatar

Writing that plugin didn’t prove to be too difficult. Integrating Drew McLellan’s hKit library into Wordpress was a bit harder due to my limited experience with PHP and its bizarre quirks.

That hurdle passed I have been using the plugin on my own blog and Cristiano is using it as well. We’ve only had problems running it on this weblog most probably because something on the Solaris installation we are running is interfering (I have no clue what). You can test the plugin yourself on this test weblog.

There are some ideas in here which are similar to those of DiSo in their wishlist for a wp-openid-avatars plugin.

Release

After having spent some due dilligence testing and refining this plugin, I think it’s ready to be released and tested by a larger group of people. The plugin will not do much without you editing your theme as well and making a decision about the presentation of the avatar images.

Alternatively if gravatar() is not defined yet, it will define itself as the gravatar function as well. So a theme which relies on gravatar can expect this plugin to support it.

Get a zip with the plugin in it here, or you can checkout my repository:
hg clone static-http://alper.nl/hg/havatar/

Feedback, suggestions and patches welcome. Caching and resizing are issues that have to be solved in the future.

I found a plugin called identikit which covers a lot of the same ground but is mostly in French. hAvatar is a simple and pure microformats based approach.

Tuesday, November 27th, 2007

How to Build Your Own Lifestream with Yahoo Pipes and NO Server Side Logic

This article was originally posted on 23 November 2007 on Cristiano’s own blog. This article is technical but not necessarily complete on the details, keep that in mind. Further more, this article served as the basis for Cristiano’s BarcampLondon3 talk.


So, as you might have noticed I build my own little copy of a Lifestream, much like Jeremy Keith (Adactio) did on his website. Although it is fun to build a lifestream, it isn’t the simplest thing to do, so I took a different approach to use mine and build one using Yahoo Pipes.

Lifestream

The cool thing of using Yahoo Pipes is that my Lifestream is all Javascript+HTML and no server side logic (a.k.a. PHP). I gave a little talk during BarcampBerlin2 explaining what I did, but in the next few paragraphs I will hopefully explain with a bit more detail how it was exactly done, and also focus on some quirks of Yahoo Pipes that I had to work around.

[Next up: Combine Your Blog Posts]