strona główna

Blog

Book review: Envisioning Information

25 lutego 2008, 00:59

It tells a lot about an author when you learn that being dissatisfied with the quality of what a publisher could offer, he started his own publishing house. That author is Edward Tufte, professor emeritus at Yale University. Recently I had the real pleasure of reading one of his books: Envisioning Information.

Envisioning Information

My reading began with disappointment. The book was recommended to me when I attended a workshop on interaction design by Bruce “Tog” Tognazzini. So I was hoping for a guide on how to effectively present information on screen. But Tufte doesn't even aim for that goal.

He virtually dismisses the computer screen as a medium for presenting information. The book was published in 1990, so his comparison of computer applications from that time to a “grim parody of a video game” is very correct. Sadly, even modern displays can't compete with the resolution of Tufte's favorite medium: paper.

The attitude omnipresent in the book seems to be opposite to the trends typical in web design. The mantra of web usability is to let the user access key information quickly and effortlessly. While the goal itself is very worthy, it typically results in what Tufte calls “posterization”: limiting the amount of information presented in order to make it more “friendly”. Posterization is often accompanied by superfluous ornamentation that obscures its meaning.

Fortunately the author doesn't stop at criticizing today's trends. The book is a wonderful catalog of carefully crafted designs. They range from traditional Japanese calligraphy textbooks to train schedules. Each piece is accompanied by a description that puts the work into a broader context. Often it's a journey showing how visualization of a certain aspect of our world has changed through the years. A good example from the book is the evolution of sunspots depictions, from 17-century drawings by Galileo to today's computer-generated images from NASA. Tufte proves that the dry topic of statistical data can be told as an engaging story. He holds to his own saying: “If your numbers are boring, then you've got the wrong numbers”.

However, Envisioning Information is more than just a catalog of obscure images. The book describes few principles of information design that can be applied to any medium, even as barbarian as web browser window. Tufte shows how to use color, outline, text and other means to effectively visualize dense, multidimensional data.

Some of these principles could be applied directly in many areas of design. One is less tangible than others, but seems to be present throughout every page of Tufte's book: respect for the audience.

I noticed something contrary among designers and web developers who assume that people “don't read on the web”, have a short attention span, or are just plain stupid. That notion is so prevalent that it affects many designs found on the web. It also forces designers to remove important parts of the message and “posterize” it by favoring ornamentation over information.

Of course it doesn't mean that all the efforts to simplify designs should now be dismissed. Yet, there's a lot to learn from old media for the web design crowd and Tufte's book is a great guide through the history of solving design problems. The book gives a thought-provoking perspective on the subject of information design. And even if it won't change your way of thinking, it's definitely worth reading for the sheer richness of its content.

On passion, money and open source

03 stycznia 2008, 23:57

Recently I had a discussion sparked by my article on open source licenses, published here in 2005. In a blog post accompanying the article I was wondering if it is possible to build a sustainable business model upon open source software (OSS). A lot has changed during the last two years and the topic of making money from open source doesn't seem to be so hot anymore.

As everybody out there seems to be concerned with startups and web-the-ever-inflating-number-point-oooh, I will gladly come back to more eternal topics like money and passion.

When I browsed the presentations from OSCON 2007, probably the biggest conference devoted to OSS, there was essentially no mention of generating revenue from the open software itself. The speakers were concerned with practical applications of the software. Even less technologically focused presentations covered topics like making the most from the community potential or handling difficult people in a team.

To the awe of some, there was even a talk titled “Open Source at Microsoft”. The same Microsoft which has a long tradition of condemning open source, and whose CEO once proclaimed Linux as a cancer. The speaker, Bill Hilf, summarized the efforts within Microsoft to get closer to the open source community. He announced that MS has started the process of obtaining Open Source Initiative certification for some of its licenses and opened the website with the meaningful address: microsoft.com/opensource.

So what has changed during recent years? Did somebody discover a wonderfully effective way of earning money from open source software, a way that is appealing even to Microsoft? I don't think so.

The lucky ones

There are few ways a company can make money from OSS. One is to create a new market around a piece of open source software. A good example is Zend, “the PHP company”. PHP itself is an active, open source project. But Zend has managed to build an apparently profitable business model on top of it. They sell all things PHP: from baseball caps, through training, to commercial development tools and optimizers.

This method is great for established projects with a large user base (or a smaller number of wealthy enterprise users). That way a company can get paid for software development and support, even though its core product is free. Obviously, it can work only if the software is popular enough to have its own market. However, starting a business with this model raises a number of concerns. It won't work if users can easily find some other free alternative and conveniently switch to it. It won't work until your product is mature enough for people to start investing their time and money in it. And if the user base is too small, guess what? It won’t work. Such a project can eventually turn out to be a source of revenue, but rather by luck than design.

Another way is to open the underlying code and charge for the services built with that code. This model is successfully employed by 37signals. The company used its own open-sourced Ruby on Rails framework to build web applications such as Basecamp or Highrise. While the framework itself is free, 37signals charges for the use of their applications and keeps their code built upon Rails. The good thing about this model is that you don't rely financially on the success of your open source code. It's the application build upon that generates money. If there are other people willing to use and improve the open parts of its code—that's great. But your bills don't have to wait until you hit the critical mass of popularity with your open source code. While you need to cross the threshold of popularity before your commercial product becomes profitable, that threshold is certainly lower than the mass necessary to make a living from something which is essentially free.

There are more ways of making money from an open source product. For example Mozilla uses Firefox's market penetration as a basis for a deal with Google: default searches in Firefox use Google, as described in a deal that turned out to be worth millions of dollars.

More than meets the eye

There is more than quick money to be made when it comes to open source. When a company decides to open some of its code, it can reap other benefits as well.

Firstly, it could be an effective way to outsource some parts of the development efforts. Obviously this is not always the best route, as “effective” doesn't mean “free”. The costs of maintenance and losing control over the code could outweigh the benefits; however, in some cases it can let developers focus on essential parts of the application and share components, such as an installer, with the open source community.

Some companies have their own core projects, but sponsor development of open source tools or libraries already available. The company then gets better, faster developed tools, and the rest of the world can benefit from it as well. “Rest of the world” includes competitors for that matter, but nothing is perfect in this world.

Finally, going open source is a way to build a community and gain mind share among developers. I think this is the case with Microsoft. Almost every programming geek I know thinks of Microsoft as an Evil Empire ruled by Satan himself (or two, when Steve Ballmer is included). Microsoft used to get away with this, but in the long-term perspective it's dangerous to ignore geeks. These include the people who are often the greatest programmers, and who will eventually have a huge impact on decision making—even in the largest companies. Having an active, motivated community around the product always pays in the long run.

Some people noted that Microsoft is losing Alpha Geeks; others claim that the company is now irrelevant for the programming crowd. Microsoft seems to notice this, so I think the rumors of its death have been greatly exaggerated. We shall see how it will adapt to the current prevalence of OSS, but I'm sure the people there are too smart to simply give up.

For I don't care too much for money

With this in mind, I don't attribute the lack of discussion on open source revenues to the advent of new business models. Open source is here to stay because it benefits programmers from the outset, regardless of whether a company is going to make money from it or not.

Working on an open source project is a great way for a programmer to develop skills and gain experience. There is also a chance to work on something that is far more interesting than ‘monkey-coding’ at a daily job. It can also be a very effective way to gain visibility and, eventually, a better job. Serious involvement in an open source project can open many doors, not only to Googleplex.

I can hardly think of any successful open source project that was started with the idea: “let's write some code, make it open and earn money from it”. The beginning was rather a matter of solving some problem, learning new technology or simply doing something for fun. When that passion is accompanied by persistence and—very often—pure luck, it is then possible to start thinking about profits.

Open source is not a business plan. You can end up being rich, but you probably won't if you start a project with this goal in mind.

Alive and kickin'

01 września 2007, 02:35

Since I started this website I used to lie to myself that soon I'll really take care of the blog and update it more often. This is not going to change. I still have a hope that eventually I will have more time, and I will write more frequently, and Duke Nukem Forever will be released. Some may think that only the third of these dreams has a chance to get fulfilled someday, but I didn't say the last word.

What kept me occupied during the last months, apart from my daily job?

Future of Web Design 2007

03 maja 2007, 17:21

RuPy in Poznań wasn't the only event I attended recently. The other one was one day conference Future of Web Design 2007. It was held in London by Carson Systems, the people behind Vitamin.

Future of Web Design logo

Since some time I had a vague feeling that the web design has somewhat slowed down. (And I'm talking about general design, marketing and development here, not only graphic design for the web.) Web standards CSS are now obvious. Usability is a must. Accessibility awareness is better than ever before. Ajax for the sake of Ajax or "web 2.0 compatibility" is gone. So what are we left with? What are current trends? Are there any? I was heading for London to find some answers.

There is no single hype that everybody is talking about, as web 2.0 was two years ago. People are now more focused on writing useful applications and exploring web's potential rather than inventing buzzwords. And I'm happy with that. Yet, there are some trends.

Web applications with personality

If you just thought about former porn actress presenting crippled search results, fear not, I don't mean that kind of personality. Instead it's something that makes Flickr or Basecamp so pleasant to use. It's definitely hard to create an application or a website that has a character. Sometimes not even suitable. Many decent applications lack this property and we still use them. del.icio.us, with its focus on pure functionality was a quoted example.

What makes up a personality? There's no "one and only" feature that makes us humans, nor there's such in a case of web apps. Surely, it's about graphical elements (typography, colors, icons), but also about voice — the way an app speaks to its users. Ryan Singer of 37signals gave examples of how simple shift from artificial "error notification" to a helpful tip of how to fix a mistake could make a difference. Even the visual style of such a note is significant. Big, red text with exclamation is like screaming at your users. It's hard then to expect them to like such an app or just feel well with it. An application with personality has views and human voice behind it.

In a mini panel with Ryan Singer, George Oates (flickr) and Denise Wilton (moo.com) LinkedIn was brought up as an example of an app that seems professional but not friendly. It has dry language and is more about connecting professionals than people. Ryan pointed that it doesn't have sign out option and therefore it doesn't care about its users.

That make me think if all web applications should have a voice at all. I will be still using del.icio.us or LinkedIn even if I don't care about their voice. But I admit I smile each time I look at the cow from the logo of Remember the Milk. It has no actual value but makes me like the app and... stick to it. So for sure it's worth considering whether your app should have own personality when you create one.

Cross-media marketing

After morning sessions there were few presentations that had a common message: product sites could bring great results when they're an integral part of cross-media efforts. Notice the "integral" part. Many times website is just an add-on to a marketing campaign — another way of displaying the same message. But it's very much like showing black and white movies with no sound in television: it doesn't explore the full potential of the medium. And one of the biggest strengths of the web is its interactivity.

Few presenters showed how to unleash this potential: Nat Hunter (Airside), Joshua Hirsch (Big Spaceship) and my favourite: William Rosen (Leo Burnett) and Rei Inamoto (AKQA).

Rosen showed a marketing campaign done by Arc Worldwide (subsidiary of Leo Burnett) for US Department of Health. The purpose of entire campaign was to promote physical activities among American teens. The idea was to distribute 500,000 yellow balls through entire country. Each ball had a unique ID. When you received a ball you could play with it, submit the ID on verbnow.com website and pass it to another kid. The website allowed to track what happened to balls; few changed their owners over 30 times. Some were passed to celebrities, so kids could play the same ball as JUMP5 or Greg Raposo (OK, I have no clue who these guys are, but I'm not an expert when it comes to American teen-pop celebrities). Teens could do something interesting with the ball and then describe it on the website as well.

What caught my interest was a natural integration of the website with entire campaign. verbnow.com was used to elicit kids' engagement. In this case internet wasn't drawing kids away from sport. It rather provoked to do something interesting on fresh air and then share it with others. Very simple, very smart.

Rei Inamoto from AKQA had one of the most brilliant presentations I ever saw. It was fueled with inspiring content from AKQA's portfolio. I'll give you just one example: marketing campaign for XBox 360 game, Perfect Dark Zero. The main character in a game is a female assassin, Joanna Dark, devoted to kill all the leaders of some corporation, one by one. When you enter the website, you have an appointment with Ms Joanna. She ask you for a name and email of some individual you know. If you enter an address of your friend, he will receive an invitation to the special website. This website will display him a movie from a morgue as seen from a perspective of the dead body. Dead body with his name on a label. When your friend will realize his unexpected decease, you'll receive a notification from Joanna: mission accomplished.

Twisted, immoral, sick. You gotta love it.

What was so innovative here? Again, the idea wasn't completely new. 3 years ago I blogged about a marketing campaign for Audi that also used personalized movies. Yet, the surprise of realizing that you just asked for an assassination of you friend is... attractively anxious. Combining email, web and immersive, game-like experience with your real world relationships gives astounding effect.

There were more examples of how to employ web interaction together with other communication channels. It can make your marketing message much more effective. You could summarize it with the phrase: People don't have offline or online lives — they just have lives.

Technology

There were two presentations from conference sponsors: Adobe and Macromedia. I expected these to be marketing pitches and I was pretty right. Yet, it's good to know what big names plan to offer to the web crowd.

Jon Harris presented Microsoft Expression — a new set of tools for designers and front-end developers, and Silverlight — plugin for delivering rich media content. For me it's an attempt to get some piece of a market cake from Adobe. Expression Web is positioned as a competitor for Dreamweaver.

It's interesting that Microsoft recently endorses new products as alternatives to tools from other vendors, rather than better versions of their own products. During a break I talked to the nice lady from Expression Web stand and even she advertised the program as an alternative to Dreamweaver rather than a FrontPage successor. It seems that Microsoft suddenly realized that it has competitors. Or it was forced to realize.

The other product from Microsoft was Silverlight. It looks like a response to Adobe Flash. Jon Harris showed some nice effects, but I'd have to play with it myself to write more.

Silverlight is advertised as a cross-platform software. Apparently, Jon Harris was the only presenter who had to connect a Windows machine in order to show his slides (everybody else was on Macs). But let's not be petty.

On Silverlight's website there are links to plugins for IE, Firefox and Safari. Well, if Microsoft will release a plugin for Linux browsers (not to mention Opera) I'll start to think seriously about its cross-platformness.

Adobe doesn't have to compete in rich media plugin market or web design tools market — the company owns both. While Microsoft is focused on getting back to the web game, Adobe looks for new opportunities. Its new product, Apollo, is a runtime for desktop apps based on web technologies: HTML, JavaScript, CSS plus Flash and PDF. I think it has huge potential. There is a lot of people who know web technologies and would use this knowledge to create standalone applications. If Adobe will push Apollo runtime through Flash Update, it can quickly become the most widely deployed software platform, that will allow to run applications on Windows, Mac and Linux.

Mike Downey who presented Apollo demoed a desktop client for eBay. The app looked nice, but I think it was a bad move to show something that provides no additional value and should in fact run in a browser. But there are plenty of more practical use cases, like applications working on local files (think media players) or requiring offline access.

While Apollo is unlikely to be fast and rich enough to create, let's say, a Photoshop-like application in the near future, with its Flash capabilities and standard-compliant WebKit rendering engine for HTML it could become an interesting platform for developers with web background. Sadly Mozilla wasn't fast enough to make this happen with XUL.

Specialization

It wasn't really o major topic, but it was brought at least twice: during Andy Clarke's presentation performance and the ending panel: whether we will stay omniscient "web professionals" or end up in small boxes of specialization. The message was clear: it's not possible anymore for a single person to know enough about graphic design, usability and coding to stay ahead of curve. So called web professionals will inevitably have to choose small areas of expertise.

I agree with this conclusion, but I don't like it at all. I don't think of myself as a developer, designer or architect. I just make websites. One of the biggest attractions of the web as medium is its diversity: there are so many different ways of using it. And I'm sure we unleashed only a small fraction of its potential. That's why I don't like to think about specializing in a next few years. Actually I'm now focused on some area (front-end development), but I love to learn about server-side frameworks, trends in graphic design or other innovations on the web. So much fun stuff to discover, so little time...

For me the conclusion is: specialize, but don't close yourself in a small box. It's nice to be considered an expert in some area (and it really helps to pay your bills), but the web has so much more to offer. It also changes very rapidly, so it's very likely your current skills will become obsolete in a next 3 years, just like mastering Netscape 4 quirks, essential in 1999, has no value today. But that's the very reason I love the web: it always has something new up its sleeves.

See you next year?

It was definitely worth to take a flight to London and attend FOWD 2007. The best recommendation is the fact that I still didn't covered all interesting ideas heard there (like an insightful presentation on managing change by Ryan Freitas from Adaptive Path). For those who missed it, there are slides and podcasts on conference's website.

As for a final word: I was looking for an inspiration and I found it there. Five stars.

RuPy 2007

23 kwietnia 2007, 00:11

It's hard to believe but I'm still alive and far from abandoning this blog. During the last 4 months I've been busy working on some Very Secret Rails Project. As you can see from my writing activity, the blog was one of the project's victims.

Yet, recently I managed to get some time off and attended two geek events. The first one was the Ruby & Python Conference (aka RuPy), held in Poznań, Poland, on 14th and 15th April. While it was organized in Poland, the conference was international with speakers coming from all around the world: Brazil, United Arab Emirates, Denmark and more.
The organizers, students of Adam Mickiewicz University, had a really tough task. Some of the talks were canceled because speakers didn't get visas and the schedule was rearranged few times to patch the holes. It was definitely a conference in an agile spirit, and not only because of its scope.

Fortunately the presentations were really worthy. They were split into 2 tracks: Python and Ruby one. My focus is on Ruby so I missed many Python presentations. I saw only the presentation on Turbo Gears framework by Chris Arndt and the one given by guys from grono.net. Grono is a huge Polish community site and there was a lot of interesting notes on performance of their server infrastructure, memcached and PyLucene-based search.

In Ruby track one of the most engaging talks was given by Cloves Carneiro Jr: "Ruby/Rails tools that help". He covered some obvious tools like Rake and Capistrano, but also other less popular apps as well, like rcov, test coverage tool for Ruby projects.

Cloves Carneiro Jr

Cloves presenting Textmate

I admired the presentation by Tomasz Węgrzanowski. He is an author of Rlisp, Lisp interpreter embedded in Ruby. Most comments after Tomasz's talk were similar: everybody is impressed how smart it was and nobody gets it :).

I also have to mention impressive presentation by Witold Rugowski. His topic was pretty basic (EJS templates for JavaScript in RoR), but the presentation itself was a great performance: he typed and successfully executed fully fledged example of how to use Google Maps API with EJS. If you ever did any public live demos you are probably aware that all Murphy's Laws apply here. The keyboard will break, network connection will die unexpectedly and all the nearby power plants will explode, leaving you only with a dying battery in your laptop. Kudos to Witold for performing so well.

Tomasz Korzeniowski

Amusing Tomasz Korzeniowski during his talk on information retrieval

It was also a first time I had a presentation at a conference. I was talking about Radiant CMS, lightweight content management system written in Ruby on Rails. Since few months ago, when I built my first site with Radiant (feldo.pl), I'm a huge fan of this tool. It gives you a full control over the site code and has an interface that is a pleasure to work with. The slides in PDF format are available for your viewing pleasure.

After my talk there were a few interesting questions from the audience. Most were related to Rails itself rather than Radiant so I think the Rails presentation would fit perfectly into the schedule, as the framework is still not as popular as I used to think. Lesson learnt: make sure the obvious things you're talking about are also made obvious for the people who listen to you.

Olle Jonsson

Olle is learning from the audience during his show

Beside main sessions there was also a party for conference attendees, so we could have geeky talks in a friendly atmosphere. I think the atmosphere was a huge asset of entire conference. As Olle Jonsson (an extremely nice Swedish guy from Denmark) put it: It wasn't a hype contest. There was no sense of competition between technologies, but instead we had a lot interesting conversations with friendly people with different views and ideas. I enjoyed it a lot.

Of course there is always an area for improvement. Most of all, the conference should have been better advertised, so there would be more people. I'm sure it will get even better in 2008, as organizers already have plans for another installment next year. See you in Poznań in 2008 then!