People like to search – and often people like to search for specific stuff – like a wikipedia article, the Amazon product base, a movie in IMDB or in social bookmarking. I have thought about that for a while. Firefox lets you install search plugins to be able to select this more comfortable and Epiphany also allows you to define “intelligent bookmarks”. But is that all really intelligent?
- You should not need to install a random plugin on your system or browser. An installation is like an operation of a human – there is always a chance that something goes wrong or you get infected. Also what Firefox gives you is a selection of websites. The options to search are: ENDLESS. Which means that the search plugins menu could be endless and you could have a never infinite list of plugins.
- Defining intelligent bookmarks isnt always easy, especially when its not simply URL based but hidden in a search form.
How would a really intelligent search work?
I don’t know how you search but I often do something like this: I look for a technology or a product – lets say I search for an USB microphone – this means I need to know what makes up a good microphone – I need some customer opinions – and also a comparison of prices. In this search might be involved: tech sites, Wikipedia, review sites(like dooyoo or ciao.com), online shops,… . The problem with search with a general search engine is, that it doesnt understand my search. How could it? I think thats only possible with user collaboration and when the users give feedback about their search. The problem with that is that people are leaving a search site when they browse other content. What could we do? I think the only possibility is to integrate intelligence into the browser itself. I should be able to save “search paths” into my browser – maybe not bookmark a page but mark a sentense that gives me an answer and link that to the question. So you might start with just typing in a question in you local browser. This now uses a desktop search engine to look up if there is a similar question. So you might even get saved answers by typing in the question – like “How much euro is 1 us dollar” or you even could say “euro dollar”. Typing in “time” could give you the time. or when the desktop would not know what you mean or you explcicitly tell it to search online it could try to identify your search like:
- euro, dollar – both are currencies – so the user most likely wants to see their relation.
- usb microphone – the desktop could know or maybe lookup in some databases that this is some technical product – question would be if the user wants to understand how they work, want to get this working on his computer just buy such thing or get some recommendations.
- About recommendations: Users could interactively say what recommendations they like – or could trust some users (friends, colleagues) what recommendation sites might be helpful.
Maybe Wikia is now on the way of implementing this – but personally I strongly believe that the important part has to be the browser or desktop search engine. And then it can link to specialised searches like Technorati – but maybe rather fetching the content than opening a web site. I think opening a website should be the last thing to do. I dont think it makes much sense to load tons of websites on a local computer without any need of all that material – and also – why loading a web page, stripping out the adds as good as possible and then search for the real content. This is all because of too much crappy business models based on advertisements – while this all takes much more of our valuable time and makes getting the information we want or need much too hard.
In the last months and weeks we have seen increasing amount of announcements of Linux or Open Source projekts for mobile devices. Even GNOME announced such support. Now Nokia overtook Trolltech, the supporters of KDE. And now the scene looks different. It is true that mobile devices are interesting. But its also true that the whole technology industry tries to get a stake of this market. I havent counted all the projects that want to be a common basis for mobile Open Source (including somehow also Googles initiative) – but one thing should be clear: If you think you can get all the free coders by creating yet another mobile initiative you will likely not be successful. Its just plain stupid. All those companies that even decided to lay of smart guys like Dave Neary and think they will make profit at no cost for developers in the future.
Sure, basing on Open Source is a smart move – but sometimes I tend to like those companies more who are willing to pay their developers a fair amount to develop good apps instead of waiting fpr the community to fix and sell crappy devices with customers as beta testers. I think a good mix is possible: Pay Open Source developers and let other companies have somebenefit from your work. But somehow I also like that the increase of projects only leaves the one way open and which is that the mobile initiatives must agree on some more common base than just the Linux kernel. maybe this also means KDE and GNOME have to stick their heads together now that Nokia controls both of them (maybe thats too harsh but still funny 😉 ).
From you Open Source guys I would expect some similar smart move as the kernel developers did with virtualisation – dont support one single mobile initiative – you must keep independent and not make again such fatal choice as GNOME did to endorse Nokias initative so early. The real grassroots Open Source projects have to organize a more non-commercial base which leads to more freedom for the customers. We would not dont want to see developers and users locked in to a specific platform.
I like to see what Nokia will do and I really hope that neither KDE nor GNOME will be hurt by their power – if we are lucky this could lead to more cooperation between the free desktop projects and mayne Nokia is smart enough not to misuse their power but open up more. I wont bet that – the sure need some pressure from the base.And the base needs to organize themselves. It now seems to get more clear that GNOME and KDE not cooperating more made them more vulnerable and potentially also make them irrelevant if they just become part of one commercial initiative of many. And maybe, maybe it would be time to start of a new desktop initiative from scratch who can again collect attention and support from many projects without being attached too much to only one specific company?
Now that I have seen a lot of distributions and also contributed heavily in Foresight
I have some thoughts about what works or should work in the distro business. Maybe this is an idea for a new distro. I try to write this off from scratch. Sort of a HOWTO maintain a distro (non-techy).
- Be transparent – If things dont work well instead of hiding them make them public, ask for help, get people involved.
- Be open – Beware of folks who like to build an elitist community and turn off people. Offer ways for people to get involved and participate. This can even be a bit harsh way of telling people RTFM. Like OpenBSD says read afterboot and the FAQ before asking questions.
- Attract users and developers with convincing messages – If you want users and developers to use your distro and developers to join you need to have some good points on your side. Why should anybody care about your releases in the first place? Your distro does WHAT better than others? This is true for every distro, even for those who dont want anybody to join – they say: You should use our distro if you are willing to read manuals, aks questions politely,… or so.
- Develop a distro culture – “Culture” not “Cult“! Its not about that you are the greatest distro – you should serve users and developers first – and the distro is devs&users! The create each day a virtual environment – they create the web pages, the install medias, thex fix bigs, they report bugs, they promote,… – Most distros forget about this – or tend to see their own folks as a dumb herd of sheeps, which are willing to do unpaid work and spread the word – so your company or your ego gain ground. If thats what you are thinking your distro will fall short! Culture means giving and taking – everything is a gift! All are working for one common idea – dont try to reduce the distro into a mere technical product.
- Maintain what you have – In fact it is often more easy to be innovative or creative as to maintain and preserve the quality. So my conclusion after testing out a lot of distros is that doing just this should be the highest goal. That sounds very conservative – and it partially is – but it is also not, because when you try to preserve a quality you have to be innovative, still. Software is always changing – and so you will always run behind issues that need to be fixed. What you can do is trying to be ahead at some points so you can say: We are already there. the worst thing that can happen is when software (and your distribution) suddenly looses a functionality, breaks. The wort scenario is when the operating system is not booting any more or your user looses data. You will want to prevent that at all cost, because that can turn people away forever. Its not that there is a operating that doesnt suck at all. But its hard enough to suck less!
- Take what is good enough – Some distros tend to use the best thing that is available – so they dump the tehcnology they have and take something else that sounds better, looks better or has more features. But the question is: to what cost? If you end up having more new issues than you can fix then you are in trouble! Thats a situation you cant win, but just survive. The thing is – when the user experiences weeks or months where he looses some core functionality he will also be likely to switch the distro or at least get dissatisfied with what he has.But users that are not satisfied wont tell other people to use what they have. Most users will take something thats good enough for them instead of the cool stuff that breaks. There are those who love new stuff and who do not care when things break – but you cant really build a community with them, because they will leave as soon as your distro is not as geeky/cool/new as it was a week before.
Generally spoken a distro is like a relationship. It is build on trust and interdepedence. And like in a relationship when somebody is loosing the trust into your distro can mean the end of the relationship. A distribution is not only cold software, people are using software for chatting with their friends and loved ones, sharing photos over the internet, watching movies in Youtube and laugh – helping each other, be creative with it, play games,expressing themselves. So when their computer breaks today, it often means that it breaks part of their private live – just like when people get pissed of when their internet access provider can not provide a reliable line, or when the telephone or their mobile device stops working, or when their car is not moving any more.
Keep that in mind. it is true that users always demand more – but they forget as well that they maybe dont want those new features so desperate that they like to risk the rest of the system working. So what I say is maybe also: Be on the side of your users but dont listen to them too much. If you really take them serious give them what they really need and not give them what the loudest of them shout most often. Many great things that were introduced due to public demand do not pay of in higher user satifaction or more reliability and functionality.
Part of the problem is that no matter how smart you are and how good your ideas are: A distribution is a dynamic and organic system – so as an analogy – if you give a mouse the ears of an elephant that wont make the mouse hear better. The best thing is what fits best now and accomplishes the task. Why do you think Evolution of live took so many billions of years? Because some concepts and technology has to show how good it really is in the long run.
One last thing: Still don’t be afraid to make mistakes! Be happy if you find one! You have the chance to fix and learn. The onyl thing you should not do is to not learn and think that when new software introduces new issues, that more of new software will diminish the issues more likely. Sometimes new software really gives us something great and fixes old issues – but then one has to look more thoroughly if this is really the case.