2.2 Comportamiento del agua en el medio fluvial
2.2.3. Concepto de capa límite Introducción al transporte.
Yahoo is investing a lot of effort to improve its Pipes product. It has gained considerable popularity since its launch in 2007. So far, the focus of Yahoo Pipes has been in dealing with RSS-based feeds. It provides a minimal set of modules to retrieve other types of resources such as regular HTML based Web pages, offering limited functionality to parse them once they have been retrieved.
Moreover, syndicate feeds used by Yahoo Pipes usually provide only excerpts of the page. The user needs to click on the title of any item to get the whole content. This means that in many cases Yahoo Pipes can only access the parts that are available in the feed.
Tim O'Reilly stated that Yahoo Pipes was a first step towards creating a “programmable Web for everyone” (O'Reilly 2007b), arguing that Yahoo Pipes could be considered as a good start based on the Unix shell piping approach for creating a Mashup.
The Yahoo Pipes GUI interface makes it easy for novice users to create and run basic modules. Yet, the graphical user interface and the limitation of the other MIME types hinder the Yahoo Pipes tool. For casual programmers, advanced users, and
programmers it would be easier, faster, and more efficient to have a text-based editor where users can write code rather than using the ‘drag and drop’ GUI interface. Many Web sites still do not provide syndicate feeds. For example, the IMDB web site offers a list of Top 250 movies as voted by their users25 but it would be very difficult to deal with this list in Yahoo Pipes, as there is no available feed for it yet. Furthermore, there is a study showing that a command line-based interface, which utilises a natural language is usually easier to learn, faster to use, and more effective than GUI based interfaces (Lovis, Chapko et al. 2001). Another study indicated that combining the power of character-based user interfaces (CUI) with some graphical component support makes such systems more user friendly (Kressin, Berger et al. 1997).
Another study shows that graphic-based interfaces have no significant advantage over text-based interfaces for expert users, although novice users prefer the former. For novice users there is a learning transfer effect from text-based to graphical user interface. The mapping between the user interface and tasks is important to be reflected in user-friendly aspects (Chen, DDS et al. 2007).
The Web is an ideal platform to employ a combination of graphical and text-based interfaces. The idea of implementing a UNIX-like shell for the Web, for creating automation tools and customised information retrieval, is very useful and effective. It provides the ability to use a command line interface implemented as a simple HTML page. This will integrate the GUI nature of HTML and the power of CUI command line. With the rise of reach internet applications (RIA), many useful GUI components can be added to such an interface to offer support for more novice end users.
Tim O'Reilly wrote in Unix Power Tools in 1993:
“Most of the non-graphical utility programs that have been running under UNIX since the beginning share the same user interface. It is a minimal interface, to be sure, but one that allows programs to be strung together in pipelines to do any job that no single stand-alone program could do. Now, most operating systems, including modern UNIX and Linux systems, have
graphical interfaces that are powerful and easy to use, yet none of them is as powerful or exciting to use as classic pipes and filters offered by UNIX shells” (O'Reilly 2007b).
This indicates the need for a framework that includes a character user interface (CUI), which can provide similar functionality to Yahoo Pipes. It would be desirable for a framework to provide the support for a graphical interface or make use of already available interfaces, such as Yahoo Pipes, to be integrated in the framework. Using a text-based command line is fast and easy to use when creating sophisticated scripts is required. The framework introduced in this research (Web2Sh) aims to provide this interface for end users. Most Web2Sh commands can produce an RSS feed by adding a pipe to the RSS filter command at the end of any pipeline. The resulting feed can then be called from Yahoo! Pipes or any other similar tool as any other data source. This way Yahoo Pipes can act as a GUI interface for many Web commands offered by Web2Sh.
9.4 End-user Web Automation
This research introduced and focused on the idea of “end-user Web Automation”, which is defined in this thesis as the study of theoretical and practical techniques for applying an end-user programming model to enable the automation of Web tasks, activities, and interactions. The term Web automation in this context refers to the notion of enabling the creation of effective tools to achieve the automation of various Web tasks. End-user Web automation is a promising and novel research field that allows and adopts the vision of the Web as a platform. The study of this field connects various computer science fields.
The research also introduced Web2Sh, a framework encompassing the new WSh scripting language, a Web command line interface, and a repository of Web commands. It demonstrated the emerging need for tools suitable for automating and customising the user experience on the Web. Web2Sh provides the required infrastructure for Web automation to give end users more control over their Web experience while moving towards the vision of the Web as a platform.
The study discussed the design and implementation of the Web2Sh framework based on a simple scripting language (WSh) that facilitates writing automation scripts. Web2Sh aims to provide a basic set of commands in different domains. Users have the power to create, use, and share their own commands. WSh also enables the extension and customisation of Web commands.
In fact, Web2Sh introduces a new approach for creating and sharing Web automation tools among end users through the development and re-use of Web commands. Thus, it can evolve into a powerful framework that encompasses a large set of commands in different application areas.