My Little Distractions
I am not one of hyper-connected people who uses ten different micro-blogging services and maintains their profile in six different social networks and, just for the old times sake, frequents in certain forums. No, I’d rather just finish my work and then if I have time I can read a blog post or two (play). But most of the time I have my IRC client (#fazlamesai @ irc.freenode.net) and Plurk open. For short distractions. I don’t have a very long attention span, and I need short distractions frequently or else I get a headache.
I think RSS is one of the most helpful tools of web. It is easy, efficient and non-distractive. If you choose who you follow well, you would have an endless flow of useful information. I think everyone should use RSS. If you are not already following any feeds, you can start with Fazlamesai (in Turkish) or Slashdot.
First thing IRC reminds me is thousands of people sitting in front of computers asking each other ASL? or doing some other useless small talk. Let me add almost none of those people in this picture knows for sure whether the others are actually who they say they are. And a significant number of them just fake their identity (such as a thirty nine year old guy impersonating a eighteen year old girl). Not a healthy environment. But if you can turn your head from all the fun these chat rooms offer you can find chat rooms, for example, where open source people gather and help each other. Just find and enter your favourite software’s chat room, #python, #firefox, #debian…
I started using Plurk, first becase I was curious about amix’s startup. Then I decided to stay a little longer to further analyze how they have integrated game elements in their application. Then I kept on Plurking to get to know the people (early adapters) and to witness the evolution of a social network. I still use Plurk almost everyday, because it gives you the feeling that it is working[1].
Plurk is a so-called persistent chat application. You can think of it as a cross-breed between instant messaging and e-mail. It is possible to carry on real-time conversations, but when you come back later you can still find (and participate) older discussions. I think you can do this with other micro-blogging applications (such as Twitter), at least with their desktop clients. With Plurk this is possible in the browser.
It is not just AJAX that makes Plurk an attractive service. It has an elegant and feature rich interface. Posts are laid out (horizontally) on a timeline that you can scroll with your mouse. When you click on one of the posts it expands itself down to show you the comments and other details. No page loads. You can also fully customize the interface, change the appereance, hide some elements, add new ones… If you check out Plurk, you will see it is designed to be fun.
I think introducing this fun element is very important. We don’t do micro-blogging because we need to, it doesn’t solve any of our everyday problems. We do it because we want to socialize and have fun. Fun is normally a product of social interaction. But if you can make the interaction itself fun as well, that is so much better. Plurk has badges and a karma system. Basically you earn karma if you plurk frequently and in quality. The more karma you earn the more you quirks you get, such as adding a profile title or unlocking smileys. Now, this may sound silly to you. Why should we care? Well, you might not care, but in general people do care. Playing is the first complex skill we have learned, so we have a natural tendency to play even in adulthood.
There is one last thing I would like to mention. I think this is important too, for a successfull web service. Plurk changes, (naturally) it changes in place, and it changes to conform your usage. One example for that is when I noticed the “US Elections 2008” tab. It just appeared next to “All Plurks”, “My Plurks”, “Private” tabs one day. That’s a nice thing. But, wait there’s more. The next day an X appeared on the right of that tab. Not being an U.S.A citizen I clicked it and the tab disappeared. Which is also nice. But, wait there’s even more. The next day the elections tab didn’t show up again. Nothing, fancy. Just as one would have expected. But very important. Does many of your everyday services pay special attention to details like this. Users do, at least in a sub-conscious level. It is like having a new piece of clothing and feeling that you have been happily wearing it for years. It just fits.
So, what was I saying? Little distractions. But you need to manage them. You want a short cool off period, not losing focus all together. Plurk is a nice nice service. IRC still has something to offer. RSS is the king for me. But I still have work to do now. Introducing distractions without proper discipline quickly turn into inefficiency.
[1] | This deserves a post of its own. |
Best Way To Shut Your Customers Up
I have seen two significantly different approaches to the sales problem. The prevalent one is to push it onto the customers even if your product is crap. The other approach is to try to perfect the product, perfect the marketing, perfect the whole user experience. The latter is seldom seen, and for a reason.
I am business illiterate, I won’t even pretend I know the first thing about sales. But inevitably, just like everybody else I am a customer, I try hard to get it right. So I try to understand what happens behind the counter. I don’t think it is as simple as I have the good you have the money let’s trade.
The common business model or sales model looks just like that from the outside. Me Tarzan, you Jane simplicity. But first of all you should notice that the sales person doesn’t have an emotional relationship with the product. I am not talking about romance here, maybe just a strong feeling of the product being really useful, or some personal experience. The reason might just be that the sales person doesn’t try hard enough, or it might be that the product is not really cool anyway. So they either fake it or they enlighthen you with “uhm, I don’t know actually. But…”s.
Another characteristic of the conventional model is that you don’t get proper service after sales. This is mostly because the product is crap and therefore the service costs are higher. Or more dramatically because the seller thinks that the market is a set of buyers. And a subset of those buyers will buy her product. And a subset of that subset of buyers will be dissatisfied. Now if that dissatisfied group is not effective enough to reduce the potential buyers that’s fine. Whether they are satisfied or not she has cashed in. Once this market is saturated, there are other crappy products and new markets for them. I am not making this up, I was explained this and I was assured that it works. Furthermore I have seen it in action personally.
The other, brave model of making it right is rarely seen. Let us be honest here, financially it is not as rewarding as the conventional model. It is difficult to implement and even more difficult to keep alive. But from my point of view this model should be the only one. I don’t care if the seller has earned ten times her investment. As a customer I only care if the product is as good as it was advertised and if I will get proper customer service after the purchase.
When I find a supplier for a certain product that does business the right way, I stop looking around. This prevents you from learning what is new, but it also saves you time otherwise wasted. For some things you just don’t get much from being an expert.
I used to move from one hosting company to another, but for several years I am using Webfaction (formerly python-hosting.com). I am 100% satisfied with their services, and it is not expensive as some of you might think. I don’t know much about the competition now, for the reason I have explained above, but I know there are too many cheap, as in cheap imitation, hosting companies you just regret you have ever known them. Webfaction does it right. And they are still alive and probably growing up[1].
So what do they do right;
- Their plans are no BS. They give you shell access (for shared hosting too) and all the tools you need. They have installers for popular programs for quick and painless setup. If you need a library the server doesn’t have they kindly install it for you. Finally you can install and run your custom application.
- They are open and proactive; when a server goes down it is immediately posted to status blog. And posts are updated when the problem is fixed, usually with detailed information about the problem and/or solution. I think being open is huge on customer satisfaction.
- Their technical support is great. I don’t remember a single issue when my problem isn’t solved somehow. Response times are very good, support people really know their stuff[2] and they are always kind. I have asked many stupid and/or irrelevant questions but they have never disdained or told me to search the forums. This is the biggest reason why I don’t keep an eye out for hosting companies.
Webfaction has started showcasing sites they are hosting. This is a simple, easy way to strenghten the community. Why do I care? Because Webfaction users are like-minded. So there is a community to begin with. Maybe the most important consequence of the do it right model is that you end up creating a community around your product. Let me re-phrase it; a community with you in the center.
Before I sign off I would like to mention another company that know how to shut their customers up, in a good sense. Neosante is an online store for supplements. I have purchased from them many times. They do nothing extraordinary, they just do it right. Everytime. Even when there are many bigger stores selling a wide range of products, this niche store does near-perfect compared to all of them.
I used to work for a price comparison site so I have a rough idea about the market. But those figures shouldn’t mean anything to customers at all. We should have a different set of heuristics for the success of a seller. Take Neosante; I give my orders, they ship it, they ship it right, they ship it on time, I get what I have ordered, I am offered a satisfactory solution if I have a problem, I say this is successfull. Anything else, I stay away.
[1] | This is because they are smart people. |
[2] | No “have tried turning it off and then on again?” stunts. |
Sum Of All Your Choices
I used to have a discussion with an old friend about intellectually challenged and destitute of knowledge being happier and whether we should stop trying to become conscious and admit to nearest brainwashing center (TV?). I was the fool to advocate gnothi seauton (know thyself) and a meaningful life. Obviously he had a greater understanding of life then.
There are people (almost everybody)[1] who are so oblivious about their miserable life, they are happy. They are not really happy but they are content. Judging by their actions, it is OK for them. Even if they continuously complain. Taking control of their life is simply not a viable option for them. When confronted they would either say they are already in control or give you an endless list of reasons why they can’t. So? Who cares?
I have recently finished reading In the Beginning was the Command Line. I didn’t like it too much in the beginning, but then as I read through I discovered it is a masterfully crafted article and the topic relevance for me is just an artifact. I suggest anyone, not just computer/internet enthusiasts, to read it. It is fun.
The article is about operating systems as interfaces. It has lots of colorful analogies and even some anectodes about interfaces and interaction. It explains that computing is all about building complexity. How UNIX builds complexity from simple components and GUI operating systems, such as Windows and Mac OS, hide complexity behind an interface. The distinction is that you control complexity in command line or you delegate control to your GUI. When you delegate anything you have much less control. You know this, right?
When you are working in the command line all the tools are available, but unmaterialized until you summon them. In a GUI environment all the tools are usually presented as choices and you simply pick one or the other. This reminds me Barry Schwartz’s TED talk; Paradox of Choice. The problem, sometimes, is not not having the right tools but the difficulty of choosing amongst too many[2]. It is the way of thinking suggested[3] by your environment that makes the difference.
Before I say WYSIWYG is a joke, let me explain what it stands for; what you see is what you get. How honest and straightforward isn’t it? And it sometimes even deliver that promise. No, no, to be honest WYSIWYG implementations deliver most of the time, meaning the result is what you intended it to be. But what about those rare occurences of data[4] loss or when your entire document corrupts when you try to add or change a small thing?
It drives me crazy when a application WYSIWYG starts to act like what you see is what you will but not necessarly what you want. At that point all the time saving and slick icons and so called wizards don’t mean anything to me. All I can think of is my computer doesn’t follow my orders, this is frustrating. I choose not to use WYSIWYG whenever possible. Explicit is better than implicit.
Before we move on let me be clear on one thing; being in control doesn’t necessarily mean having to do more. On the contrary ditching WYSIWYG should make to process more practical and efficient. You just have to use more brainpower and maybe to a little bit more planning than before. But once you have your setup in place, I assure you it will feel more like home.
I have two plugins loaded for this blog; google-analytics plugin and Markdown. Markdown is a text to HTML conversion tool. You write your document in a specific but intuitive[5] format in plain text. All you need is a text editor. You get to work directly on the source, whereas you work on a representation of source in WYSIWYG. So it never blows up, no data loss can occur because you tried to change the formatting. I write my blog entires on Kate (my text editor) using Markdown format. I rarely need to check because it is easy to guess how it will look like when rendered.
So I can’t easily integrate charts[6] and stuff, do fancy numbering or change my paper size[7]. Smart Ascii surely has its limitations. But do you really have to have those features? Just because the neighbour’s kid has?
Choosing plaintext doesn’t only help me keep my sanity, being a simple protocol is a great advantage. Let me give you some examples;
- You can use regex search and replace on the source, meaning format together with the content. For example you can change all third level headings (“^### (.*)$”) into second level headings (“## \1”).
- You can render into multiple formats easily. Or you can simply chain; using a HTML to PDF converter you can easily create PDF documents from the same source.
- Plaintext can be diffed. You can see exactly what changed between two versions of a document. If you use a revision control system, with a little more effort, you get persistent undo (persistent between editing sessions).
This is not an exhaustive list of course. I just wrote what came to my mind at the moment. I use plaintext intensively and daily. It never breaks. You can open a plaintext document on any computer and you will probably be able to do so in the future as well. It is almost a trivial task to open a plaintext document, (very unlikely but) even if you can’t find an application you can write your own. Try Markdown, or any other Smart Ascii format. Once you get the initial (pyschological) barrier I hope you will like being in control.
[1] | Except of course whoever you are and all the people you know and care. |
[2] | Have you ever worked on 3D Studio Max or Maya? If you are interested in interface design I would recommend you to spend some time on them. And then a little more with Blender. |
[3] | Forced might be truer. And if you disagree here is Shelley’s blog. |
[4] | Usually you lose formatting and not the content. But as far as I am concerned formatting is data as well. |
[5] | Markdown and similar formats are called smart ascii. It is not necessarly ascii, I always use UTF8. But it is IMO smart in the sense that you can both read and edit the source document with the same ease. |
[6] | Actually it is pretty easy. Markdown text can include HTML and using something like Google Charts API you can easily add charts. |
[7] | If I were to produce a PDF or print out; I just pass my Markdown text through Dingus and paste the rendered text into OpenOffice Write. Doesn’t even take 1 minute. |