Archive for the ‘Concepts & Methods’ Category

Blog through mail

septembre 13, 2007

Among other thing, the user’s experience requires a direct satisfaction of the desir. So, if it’s about blogging, one should do it directly. Hence, for that purpose, there are some plugins and applets based upon the xml_rpc. Nonetheless, one could achieve that with the e-mail client. What would be the benefit for the user?

Mainly to use an existing service instead of installing something more and opening an other service. That would be very satisfying if on the server-side a wide range of format can be handle, of course. By this way, one could send to the blog a document as attachment. Send a document from the desktop or a wordprocessor is nowadays a current service. Obviously one could blog with the e-mail client itself, though in this case, text-formatting and adding pictures or else, really depend upon the composer; otherwise one has to notify all that with some tags (html or else). Sure, it’s less friendly in this case and even the best featured composer won’t be able to notify the categories; at least it’s not a problem for the title, simply written in the subject line, and the date. Same problem with a document attached, one needs some special strings to specify its categories. Last but not least, managing the blog through mail is possible but will require more instructions for the user to learn. However, there’re not a lot of task, hence, not a lot to learn.

At this stage one can conclude that, for a blog service, blogging through mail is only an option and not a substitute of the web-application. There’re too much conditions, changing the blog’s chrome make more sense from the application itself but, in case of some incompatibility with a browser, the mail service could solve that. So, it’s up to the user to blog only through mail, in any other way that’s a good auxillary to the web-application.

While that prevents to install and open an other service, that requires to create an other account in the e-mail client, and yes, a lot of people don’t know how to do. So, an other reason keep that optional. Registration will rely upon the user’s e-mail adresse and a password, the resulting e-mail account will be the user’s e-mail adresse @ the service.com. (e.g user@isp.com -> user.isp@service.com) It won’t be a good idea to base the URL of the user’s blog upon that, since that will reveal the isp and somewhat the e-mail adresse (e.g user-isp.service.com). So, let’s the user pick an username, despite the fact that one loses the advantage of an unique identifier.

But what would be the advantage for the blog service? Frankly, none: one has to set up a mail server, plus the gears to pass all the various messages in the web-application. Compare to that, the xml-rpc is less costly, though it could be a nasty vector of attack. Conclusion, unless an other plug-in or a suitable composer, that not seems to be a good option to maintain.

Managing packages

août 20, 2007

The purpose here isn’t about the packages manager’s ability to find its way in the dependencies jungle, but how a linux distro user could manage easily the packages.
Linux is very flexible but to exploit its flexibility that requires some knowledge; packages manager are consequently flexible too but their front-end could present the things more clearly and distinctly. Because Windows and Mac close the hood for a better user experience, one has here a cultural misunderstanding : actually one installs « softwares » and nothing else. Is a « package » something else? The same about a library, a module, and so on. Looking at a front-end like Synaptic, one gets all this names at once which, hopefully, are categorized in several task area, but one could present all that through a higher level of category. The first level is the notion of package since this is a container, then, the second level is its content which is then related to a task area, the third level.

* package
** content (e.g library)
*** task area (e.g graphics)

At the second level, one has at least two categories: what is usually understood as « software » and the library. It doesn’t matter that the latter can be used by the user or only by some other programs, but it could be more interesting that the packages manager provides somes utilities for installing things more complexe, like desktop environment and servers, for example a LAMP. So, in this way, one has two other categories, lets say « desktop » and « server »

* package
** softwares | desktop | server | library
*** task area

One could as well put at this second level an utility related to the development, but as you understand one is just stripping out some task areas to the second level, either as an utility or a category. Legitimately, the system componments should be at the second level and, in this entry, one could have the utility to upgrade it entirely.

* package
** softwares | desktop | server | library | system
*** task area

The things are now a little bit more clear and distinct, one can go further by presenting the actions distinctly: updating, upgrading, adding and removing. Of course one can also downgrade and select the packages’location, but lets that as an option. Looking at Synaptic again, the stuff is presented whatever the status, of course one can filter all that. But if one wants to add something, one just wants to see the available packages and for the other actions, one just needs to see the installed packages. Hence, the GUI is more simple and understable: one has the list of the second level entries and the list of the actions.
However, a desktop environment has its own softwares and libraries, if one put them in their respective entry, one will find them at the third level and thus it’s a contradiction. The developement and server entries will lead as well to this problem. The solution isn’t a list but a matrix, something like « this for that ».

softwares | desktop | server | library | system
desktop   | desktop | server | library | system
server    | desktop | server | library | system
library   | desktop | server | library | system
system    | desktop | server | library | system

In this matrix some values don’t make sense, like server for library for example. Of course the GUI doesn’t have to show it, one could have three columns named « what », « for » and « action » or « do ». The content of the second column depends upon the selection in the first column. This way should cover all the combination, but there are not a lot indeed since only the entries « software » and « library » can be combined with the other. The GUI could look like this. Of course, one could arrange the order differently and/or change the labels, something like : « this »; optionally « for »; « to » update and else. Anyway, that won’t change the underlying scheme.

The Big Board or why a panel?

juillet 10, 2007

I’ve look at the Big Board’s wiki, it seems that several goals are researched in this project with a lack of coherency. Mainly the purpose is to link the desktop with the rising usage of web-applications and take from them some ergonomic designs. Where this project tries to solve a problem of a different field is how to give a clue to the user at the early stage? For the instance, there are two proposals, one good and another one rather odd.
The good idea is to clearly show who is logged on the desktop, that gives a personnal touch and it could be used as an incentive to start with the system as a whole, to give a tour. The odd idea is to keep a statistic of the most used applications. If the intend there is to give a start for the user, that doesn’t work since at the beginning nothing has been used. Otherwise it’s just a global statistic proposed to the user but that seems too much for a start and don’t correspond necessarly to the user. If it’s just a replacement of the recently used applications, well, we have the same problem of an history-record and some additional problems.
How many entries should we display? Five, ten, more ? For an history-record, the more there are entries, the best it is. But a track of the most used applications is not a matter of quantity, for the user it’s a matter of importance which is not necessarly correlated to the usage. Should we track the files browser? Should we track the panel’s program itself? No, of course, excepted that there’s a pre-selection behind this idea which cannot catch what is important for the user. My point of view about the Big Board is that a panel is just a way to organize the space of the screen. One needs a launch-bar and a task-bar, the panel should be dedicated to the system as a whole and an other panel, at the opposite side, to take in account the use of web-applications along with some user’s setting like the sound, the screen resolution…On one side, the privacy, and on the other side, the network. The OLPC user interface has a similar approach.
Beside that, give a clue to the user at the beginning is nearby impossible if he or she has not a previous experience. It’s a field of research in itself, one can take some tricks from the web maybe, but a desktop has its own dynamic. At the beginning the environment could show itself where are the thing on a given request, that would be fun for a start and not a big annoyance as far as the user can disable this feature.

Vertical menu bar

mai 31, 2007

Currently horizontal, one puts the menu bar vertically. It could be display in a lateral pane or as a floating pallet. Two options at least for accessing to the menus : one at once, that needs a root menu or a selector; one expands them separately.
What do we gain by this way? Mainly some space. If each menu’s entries are illustrated by an icon, one could reduced the width of the pane to the size of the icons and one gets there something like a toolbar. Though, and depending the localization, the function’s name can be long, not mentioning the keyboard shortcuts, all that takes a little bit more space.
At a first glance, it would be less productive than the current position but one can display continuously a menu and without covering the canvas. That helps for the beginner to know the different functions of the app, and to relate the icons of the toolbars. This is maybe the main interest of this idea after all. One can in this sense keep the current menu bar, but its content is displayed in a lateral pane or a pallet

vertical menu bar

Horizontal files system navigation

mai 22, 2007

Currently, the UI presents the things horizontally or vertically. One tries to invert that to see what can be done.

The files system navigation seems to be a good candidate. The display in columns from OS X is an approach in this sense, however, folders and files of a given directory are still displayed from the top to the bottom. One suggests here to display them from the left to the right as below:

horizontal navigation

The white area is the content of a given directory and such disposition allows the user to expand independantly the folders of this area, thing that one can’t do with the OS X’s approach. In the picture above, the second folder is expanded (in blue) as well as the fourth (in green). In this latter an other folder is expanded (in pink), this is the usual display as list.
Besides the usual navigation tools (back, forward, scrolling bar…) a navigation window seems to be more convenient since one has here a presentation like a map. One could use also the separator lines as grip and move the map in every direction.

This display has the advantage to bring an overview and a representation, like a map, of the archiving. It is as well closed to a spreadsheet since each top folder can be seen as a field, and as well one could split the window as in a spreadsheet, thus, one can compare folders which are too distant between them. In the end one could apply here all the spreadsheet’s functionalities concerning display and maybe more upon the files system itself.

In Between

février 3, 2007

This category is created to list the utilities, programs and whatever which could stand between the user and a operating system, or a information system. Some third terms upon which one could enable an user interface a little more closed to the communication scheme.

Calendar, bookmarks, contact and tags these things are the easiest. This is mainly about content and its management, so a content managment system could be this third term.

Well, calendar is different since it is about event through the time but not primarly about content. Nonetheless, when one considers a mailer one has in this case some contents which are tied to some events: awaiting or giving a answer, for example. Further, the event is also an action, more exactly its output, hence, one retrieves here the cybernetic scheme: people have a common goal, they transmit and receive some content, perform some action upon it accordingly to the goal. This implies that content isn’t just a set of data, but can be a call to some action through the time just because there is a common finality. Maybe this is why some mail client present a task manager but this function doesn’t have to belong to the client only because most of these tasks involve somebody else. In this regard the mail notification scheme is more relevant since it gives a feedback about an event/action.

So far, one imagines the user as the person in front of a computer, though one can consequently include the developer as an indirect user. This is the case each time one does a bug report, either through the web or through a bugtracking program. Of course, this purpose is really complexe but it’s just to give the idea: the user is a broad notion.

If one sticks only to the solely user then, some other functions could be stand as a third term. For example the window manager. It’s primarly a service to the programs which are a set of service to the user. The window manager could be a service for the both, a common service. At use there is no difference between a window and an icon, in appearance one does more or less the same things. Maybe each object of a GUI could be a window. Certainly too much work for a single window manager and a poor graphics card, but let’s that aside. The main idea is that the system has to cope with the pixels meanwhile the user has to manage the limited space of the screen. Hence there is here again a common concern.

If you have a look at this post, feel free to comment the kind of thing which could be in between.

Web services -follow up

novembre 5, 2006

When I considered the web services, I thought that something was missing: a terminal instead of a client, or just a modem. The trend seems to keep the client, though, either reduced to the minimum, either packed with a modem-router.
The first is Linutop. the idea is to provide a tiny and cheap central unit with the mostly used softwares (browser, wordprocessor and viewer). In its concept, the user with such a product could rely on web services to extend its abilities and capacities (storage and additional web applications). Moreover, the product is opened to some other usage (point sale,…etc)
The second, Easy Gate, is rather a rich client, though it is remotely maintained. It’s like the former with more softwares but combined with a dsl router. And yes, it is offered by a ISP included in the subscription fee. Don’t know yet if that runs well, but, despite the client solution, the whole unit is by this way a service.

I would rather like a slave device, something like a network storage, and a remote desktop somewhere.

Communicate with the computer

novembre 3, 2006

Information technologies enhance the communication, though, their model comes from the theory of the information and that differs from the communication. It’s the model of the transmitter and the receiver, respectively the input and the output in a computing or information device. This model transcends as well the programs, it is a function indeed.

Transmitter –> Receiver
Input –> Output

I/O aren’t yet some data, they’re just gates. How can one build something with such a single thing? Simply, the data as an output will be considered as an input, and then one can goes on. This principle implies that there’s nothing by itself in a computing device, one has to fill an input, hence, « garbage in, garbage out ». It implies also that the information technologies, from the hardware componments to the Internet, are networks. This is why the network can be ubiquitous, not because there’s a lot of hot-spots everywhere, because ITs are network in their principle. And since one uses them, one becomes a gear of the overall network. Last but not least, the transmitter and the receiver or the input and the ouput has to speak the same language, that is to say that in its nature this model implies a standard. So one understands that it is not just an agreement between everybody indeed, but a key part.

Nonetheless, this is not communication, but just transmission. Academics in the 70’s presented the human communication under the model of the information to finally discover that it’s a mutual interpretation. At a first glance one could say that it is like a transmission between Self and the Other, respectively the transmitter and the receiver; however the Other is a relative notion to Self, hence that don’t fit with the model since communication is between Selfs

Self –><– Self

How can one define the communication? Certainly the keyword is « share ». What’s the basis for a mutual interpretation? Something which is shared, and in first the body which is the same for everybody. The communication fails when there’s nothing to share or sharable and that’s the case with a computer. So, if the user can share something with the computer and the latter can takes that into account, one can get something like a communication.

As far as I know, this was already the case with MacOS 8, simply because the user can add some note upon the files or the folders and because the Finder can optionally display these notes as a row in the list. Hence, one can sort the list through the notes; it’s not really powerful but by this mean the user can related the data to his context and thus, something more meaningful for the user is shared. Now Spotlight can search in these notes and it’s more powerful than to archiving with filename and foldername. Though, using tags just for this purpose isn’t enough, the next step is to correlate these tags with the system and the applications, in such a way that the user can tell to the system what it has to do with these tags. Something like: « this tag…do this ».

Nothing new here, this is certainly the trend. But there are a lot of other things which can be shared between the user and the device. Contact list and bookmarks doesn’t have to belong to a specific application, afterall only the user knows the meaning of these data. A given browser or mailer will just have to look at it and fill it, whatever the storage. Of course one can say the same about every document, that would not be a problem if the interoperability was warranted indeed. Last but not least, among the other things which could be shared, there’s the GUI itself and the functions of the application. The former seems to imply a kind of polymorphism, the latter is already applied in its principle through the libraries, but one cannot still request the function of a given application to use it with an other one. Obviously, this kind of ideas are anti-monopolistic in themselve.

Web services

octobre 29, 2006

Thanks to the asynchronous technics, one can enjoy a lot of web services: office services, storage services, content services and even web services of web services. However all that needs the power of the client, running a browser isn’t enough, one also needs all the support related to the different kind of format providing through the internet, and the hardware has to follow.
Hence, I wonder where is the real benefit for the end-user ? Beside the fact that it’s a service, that is to say, somebody do it for me and so there’s less to do for me, I still have to cope with a computer and its operating system. Worst, relying on a browser has always been the big avenue to some sureptitious annoyances. So, I can understand that a gamer would be really satisfied with these web services. Since he or she is mainly interested in games only, he or she has a consequent computer which fits likely to these services. But for an everyday life usage, that don’t really lift the burden, and having a computer seems consequently to be disproportionate.

The real point here isn’t the end-user, rather the principle of the client-server relation. Through the history this relation looks like a balance and as an antagonism between the client and the server. As the capacities grown up, the shift moved from the server to the client; nowaday as the bandwidth grows up the server side gains a renewal, but the previous antagonism has gone, it’s now an option among some other.

client-server pendulum

Hence, the real question now is to know what’s the most efficient relation as a whole ? The client against the server, something which could be a pure peer to peer network; the server against the client downsized to a terminal or the both ? Of course this question depends from the current state of art and at a first view, one can argue that sharing the capacities will be always the best way to share the overall cost, the client and the server should better has to work in a complementary way. That sounds good, though, this can be achieved without necessarly implied a personnal computer. In this regard, the mobile phones present an interesting situation, simply because the device enables an usage completely different from those of a computer and mainly because it can’t really fit to this PC-like usage. Moreover the computing capacities are constrained while the bandwidth capacity has far much room, hence, in such condition the mobile phone will be more likely a terminal concerning the office and the internet. Of course, the pricing scheme will or won’t support the move, but that was the question since the most efficient relation as a whole will certainly enable the most affordable cost.

So, between the web services’ asynchronous technics and a remote desktop on a sessions server, what is the most efficient ? Assuming that the former is the best, would it be odd and counterproductive to consider a remote browser ? Obviously, I got a preference for the server against the client, more exactly it is about the end-user by having the choice between a PC or a simple box which just give the access. This could be the ISP’s box as well, included in the subscription cost. Will the consumers take the grip ? As far as the service is reliable, they will, simply because the majority doesn’t buy IT for the sake of IT but just for the usage and the related necessities of the everyday life without the technical implications.

Independent Website

septembre 11, 2006

Nowadays, web-browsers are commodities. The browser is packaged with the OS and one has some alternative browsers at no charge. It’s hard to sustain a buisness in such condition. Moreover, despite the W3C recommendations, each browser renders a given web-page in its own way, as well as each website don’t treat them equally. Hence, I wonder if there’s still a necessity to render a web page completely by the browser? In the principle of the client/server the browser would just have to make the request, though, what will render the HTML page and so on? Well, since the browser market is no more fruitfull and since the webdesigners can’t satisfy every browsers, the client should come from the website accordingly.

Nothing new here, this the way of the remoted application, though, in my mind that should use the current user’s browser without requiring any further installation. I’m thinking here about 0Install and its way to load an application in the system cache. Same thing here with the use of the browser cache; the browser is just a receptacle for some micro-engines which render the web pages. To get the idea, considers that each HTML tag, each JavaScript function, each embedded object is one of these tiny engines; one can’t do less but one could organize more and that could work asynchronously, like AJAX. Certainly the hardiest task will be to correlate all these engines between them.

Anyway, if that could be achieved the economic would be renewed on the server side. Here again, nothing new in regard to Flash or Shockwave, their economic is based on the developer side, not on the user side. Same thing here, webdesigners could have the tools of their choice, Open source or proprietary, with a better control upon their websites, relatively to the client. In the end, the user won’t have to bother about his browser, excepted for some security issue.

In other words, since there’s nothing to earn anymore in the web-browser buisness, let’s the webdesigners controlling the browser. Sure, as any application, these micro-engines should be developed for the most current platforms, but that is what the Open source community can afford to do. So, it could be good.