<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5772799175014006560</id><updated>2012-02-16T09:17:53.260-08:00</updated><category term='LiveCycle'/><category term='web application'/><category term='Remoting'/><category term='Cairngorm'/><category term='Flash'/><category term='TECHNOLOGIES'/><category term='hood'/><category term='Charting'/><category term='Adobe Creative Suite'/><category term='Flash Media Server'/><category term='traffic'/><category term='JavaScript'/><category term='The benefits'/><category term='data'/><category term='mashups'/><category term='Examples'/><title type='text'>Adobe Flex  Mashups</title><subtitle type='html'>All of Adobe Flex</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>21</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-32239835382518782</id><published>2009-01-20T08:46:00.002-08:00</published><updated>2009-01-20T08:47:10.376-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Adobe Creative Suite'/><title type='text'>Adobe Creative Suite</title><content type='html'>Adobe Creative Suite is a complete family of development tools including Flash, Photoshop,&lt;br /&gt;Dreamweaver, Illustrator, After Effects, and Acrobat. It’s essentially all you will ever need, and then&lt;br /&gt;some, if you work in the field of creative design and web/print/video production!&lt;br /&gt;Since Adobe acquired Macromedia, great advances have been made in terms of product integration—&lt;br /&gt;all of these applications come together to allow for streamlined workflows. For example, a designer&lt;br /&gt;could sketch something using Photoshop, convert it to a vector graphic using Illustrator, and then&lt;br /&gt;import it directly into Flash with any layers left intact.&lt;br /&gt;When should you use it? All of the time!&lt;br /&gt;Any alternatives? There are certainly a host of alternatives, from free software such as GIMP to more&lt;br /&gt;commercial offerings. The downside, especially compared to Creative Suite 3, is that they tend to lack&lt;br /&gt;the same level of product integration.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-32239835382518782?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/32239835382518782/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/adobe-creative-suite.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/32239835382518782'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/32239835382518782'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/adobe-creative-suite.html' title='Adobe Creative Suite'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-7635903302513838713</id><published>2009-01-20T08:46:00.001-08:00</published><updated>2009-01-20T08:46:53.478-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cairngorm'/><title type='text'>Cairngorm</title><content type='html'>Cairngorm is an ActionScript 2.0 and 3.0 framework that can be used to build more complex Flash and&lt;br /&gt;Flex applications. It is based upon industry-standard programming design practices and provides a&lt;br /&gt;robust Model-View-Controller (MVC) architecture to build upon.&lt;br /&gt;When should you use it? When you are tasked to build a fairly large application, Cairngorm can help&lt;br /&gt;you build something that is architecturally sound.&lt;br /&gt;Any alternatives? Many open source pattern-based frameworks exist; however, few offer mature Flex&lt;br /&gt;support. Of particular note is PureMVC (http://puremvc.org), an ActionScript 3–based framework&lt;br /&gt;that is emerging as a serious competitor for Cairngorm. For ActionScript 2.0 development, it might be&lt;br /&gt;worth looking at ARP (http://osflash.org/arp), developed by Flash guru Aral Balkan.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-7635903302513838713?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/7635903302513838713/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/cairngorm.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/7635903302513838713'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/7635903302513838713'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/cairngorm.html' title='Cairngorm'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-5643153076605962538</id><published>2009-01-20T08:44:00.003-08:00</published><updated>2009-01-20T08:44:58.593-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Remoting'/><title type='text'>Flash Remoting</title><content type='html'>When developing rich Internet applications, you often need to retrieve data from a web application&lt;br /&gt;server—this is where Flash Remoting comes in, allowing you to integrate with ColdFusion, .NET, Java,&lt;br /&gt;and SOAP services on your server. It simplifies the development of XML-based messaging services and&lt;br /&gt;offers fairly decent performance; in addition, it offers the AMF protocol, which is a way of serializing&lt;br /&gt;data and transmitting it to clients, with significant performance advantages over straight XML.&lt;br /&gt;In many ways, this is the little brother to LiveCycle Data Services—with a much smaller price tag and a&lt;br /&gt;feature set that reflects this.&lt;br /&gt;When should you use it? When you are developing a data-driven rich Internet application but do not&lt;br /&gt;have the volumes of data or requirements to justify the added price tag.&lt;br /&gt;Any alternatives? OpenAMF is a good J2EE-based solution. Libraries are also available for popular languages&lt;br /&gt;such as PHP, Ruby, Perl, Python, and .NET. You can find many alternatives on the open source&lt;br /&gt;Flash website (http://osflash.org).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-5643153076605962538?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/5643153076605962538/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/flash-remoting.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/5643153076605962538'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/5643153076605962538'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/flash-remoting.html' title='Flash Remoting'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-2628614682169148740</id><published>2009-01-20T08:44:00.001-08:00</published><updated>2009-01-20T08:44:24.571-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Flash Media Server'/><title type='text'>Flash Media Server</title><content type='html'>Flash Media Server is Adobe’s solution to the provision of streaming audio and video content, offering&lt;br /&gt;advanced features such as support for interactive and on-demand content. There is also support for&lt;br /&gt;live broadcasts and conferencing.&lt;br /&gt;When should you use it? When you have a need to provide large volumes of streaming media. If you&lt;br /&gt;are simply integrating a few FLV files, then Flash Media Server might not be an economically variable&lt;br /&gt;option when you consider the features that are not being used.&lt;br /&gt;Any alternatives? Red5 (http://osflash.org/red5) is a fully featured open source alternative.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-2628614682169148740?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/2628614682169148740/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/flash-media-server.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/2628614682169148740'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/2628614682169148740'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/flash-media-server.html' title='Flash Media Server'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-3495279201611124620</id><published>2009-01-20T08:43:00.001-08:00</published><updated>2009-01-20T08:43:33.932-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Charting'/><title type='text'>Flex Charting</title><content type='html'>Builder to provide a library of rich charting components that can be used to provide interactive data&lt;br /&gt;visualizations. These can be styled as required using CSS and extended to create totally new types of&lt;br /&gt;chart.&lt;br /&gt;When should you use it? When you have the requirement to present data as a graph or chart.&lt;br /&gt;Any alternatives? You can find some third-party components if you look around; however, few offer&lt;br /&gt;the same levels of customization.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-3495279201611124620?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/3495279201611124620/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/flex-charting.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/3495279201611124620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/3495279201611124620'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/flex-charting.html' title='Flex Charting'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-2806014610269037341</id><published>2009-01-20T08:42:00.000-08:00</published><updated>2009-01-20T08:43:02.798-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='LiveCycle'/><title type='text'>Flex LiveCycle Data Services</title><content type='html'>This is an optional component that can be used to develop Flex applications that rely heavily on data&lt;br /&gt;stored on an application tier. Flex LiveCycle Data Services can be deployed on a Java 2 Enterprise&lt;br /&gt;Edition (J2EE) application server, and it supports many forms of data synchronization, including remote&lt;br /&gt;data push—where the server sends data to the client, rather than the client polling the server for&lt;br /&gt;updates, which can be very bandwidth intensive. Also included is built-in support for offline applications&lt;br /&gt;and occasionally connected clients.&lt;br /&gt;Flex LiveCycle Data Services is licensed per CPU and can be a pricey option for smaller applications;&lt;br /&gt;however, enterprise customers might find this a more attractive option because they are more likely&lt;br /&gt;to use a selection of features.&lt;br /&gt;When should you use it? When you are building a data-intensive application where performance is a&lt;br /&gt;high priority.&lt;br /&gt;Any alternatives? If performance is less important, it might be worth looking at Flash Remoting&lt;br /&gt;(covered in a moment) or some of the open source alternatives such as Granite Data Services&lt;br /&gt;(http://sourceforge.net/projects/granite/).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-2806014610269037341?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/2806014610269037341/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/flex-livecycle-data-services.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/2806014610269037341'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/2806014610269037341'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/flex-livecycle-data-services.html' title='Flex LiveCycle Data Services'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-6371364904368619999</id><published>2009-01-13T08:02:00.003-08:00</published><updated>2009-01-13T08:02:51.299-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Flash'/><title type='text'>Working with the Adobe Flash Platform</title><content type='html'>Flash and Flex are part of a much bigger picture when it comes to Adobe’s long-term product strategy.&lt;br /&gt;Also part of this strategy is the Adobe Integrated Runtime (AIR), which we will cover later in this book.&lt;br /&gt;This strategy comprises five key elements:&lt;br /&gt;Universal formats, including HTML, SWF, and PDF, with cross-platform reach and extending&lt;br /&gt;across many different operating systems and devices. This is not necessarily confined to the&lt;br /&gt;web browser, with the AIR platform serving as one example of liberating applications from the&lt;br /&gt;confines of the browser and making them available on the desktop.&lt;br /&gt;Platform abstraction, allowing for predictable application behavior and performance across all&lt;br /&gt;platforms, rather than other technologies that place dependencies on particular web browsers&lt;br /&gt;and platforms.&lt;br /&gt;Server-side applications, providing capabilities that can be leveraged by client applications in&lt;br /&gt;order to aid the development of compelling data-driven experiences.&lt;br /&gt;Extensive development tools, which are designed to integrate with design and development&lt;br /&gt;workflows, optimizing the production and development process.&lt;br /&gt;A sizable and enthusiastic community of designers and developers located around the world.&lt;br /&gt;All these elements together go a long way to ensure that the Flash Platform is a stable and lucrative&lt;br /&gt;platform for developers that offers many opportunities to develop great applications and experiences.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-6371364904368619999?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/6371364904368619999/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/working-with-adobe-flash-platform.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/6371364904368619999'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/6371364904368619999'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/working-with-adobe-flash-platform.html' title='Working with the Adobe Flash Platform'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-703012339004606105</id><published>2009-01-13T08:02:00.001-08:00</published><updated>2009-01-13T08:02:25.852-08:00</updated><title type='text'>Working with Flex</title><content type='html'>Working with Flex&lt;br /&gt;Flex is a framework for developing rich Internet applications, and it is built around ActionScript 3.0&lt;br /&gt;and Flash Player 9, currently version 3. The object of Flex is to provide functionality that allows developers&lt;br /&gt;to quickly and easily build rich applications that can be deployed on the Internet, while still&lt;br /&gt;allowing access to the expressiveness and visual capabilities of Flash.&lt;br /&gt;The framework supports an XML-based language called MXML that can be used in the specification&lt;br /&gt;and development of user interfaces. To support this, it offers a wide variety of prebuilt UI components&lt;br /&gt;including buttons, text fields, data grids, graphs/charts, and components supporting drag-and-drop.&lt;br /&gt;Other features also allow the developer to consume web services and work with XML data with ease.&lt;br /&gt;This gives the developer a powerful platform upon which they can mash up web services and create&lt;br /&gt;entirely new applications.&lt;br /&gt;On the application architecture side, the move to ActionScript 3.0 and features such as the eventhandling&lt;br /&gt;model allow for the development of much more well-structured and maintainable applications,&lt;br /&gt;leveraging industry-standard design patterns and architectural practices.&lt;br /&gt;Flex applications can be developed either by using freely available command-line tools that are distributed&lt;br /&gt;as part of the Flex SDK or by using Adobe’s commercially licensed Flex Builder (see Figure 2-5)—&lt;br /&gt;an IDE built upon the open source Eclipse platform.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-703012339004606105?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/703012339004606105/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/working-with-flex.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/703012339004606105'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/703012339004606105'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/working-with-flex.html' title='Working with Flex'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-4822301537441478231</id><published>2009-01-13T08:01:00.002-08:00</published><updated>2009-01-13T08:02:06.777-08:00</updated><title type='text'>Working with data</title><content type='html'>Working with data&lt;br /&gt;Flash offers many options when it comes to working with external data sources such as web services.&lt;br /&gt;XML is natively supported in both ActionScript 2.0 and 3.0. In addition, there are many other data formats&lt;br /&gt;that a developer can use when working with data:&lt;br /&gt;LoadVar objects, which consist of variable names and values, can be used when dealing with&lt;br /&gt;simple text strings.&lt;br /&gt;JSON, a method of encapsulating text and numerical data within native JavaScript objects, is&lt;br /&gt;perfectly usable within Flash, and its parsing is straightforward because of the shared&lt;br /&gt;ECMAScript syntax.&lt;br /&gt;ActionScript 3.0 is capable of directly manipulating binary data.&lt;br /&gt;Other techniques, such as SWX, which we will cover later in the book, provide a way of essentially&lt;br /&gt;serializing Flash objects and communicating data as a SWF, eliminating any parsing overhead.&lt;br /&gt;Compared to JavaScript, Flash is also a lot more flexible when it comes to loading cross-domain files&lt;br /&gt;and resources, while also running within a security sandbox that mitigates most security risks. Imagine&lt;br /&gt;a Flash application hosted on www.mydomain.com. During the course of its execution, it makes an&lt;br /&gt;attempt to call a data service located at www.datadomain.com/services/myservice. Before the call is&lt;br /&gt;made, Flash Player makes an additional call to a cross-domain security file, www.datadomain.com/&lt;br /&gt;crossdomain.xml. This is a file that can be used to specify whether requests from a Flash application&lt;br /&gt;hosted on a specific domain are allowed to access resources on the web server.&lt;br /&gt;For example, if you wanted to allow any application to use your service, you would create a crossdomain.&lt;br /&gt;xml file that looked like this:&lt;br /&gt;&lt;?xml version="1.0"?&gt;&lt;br /&gt;&lt;cross-domain-policy&gt;&lt;br /&gt;&lt;allow-access-from domain="*" /&gt;&lt;br /&gt;&lt;/cross-domain-policy&gt;&lt;br /&gt;You could also restrict access to your service so that it could be accessed only from applications on&lt;br /&gt;mydomain.com, like this:&lt;br /&gt;&lt;?xml version="1.0"?&gt;&lt;br /&gt;&lt;cross-domain-policy&gt;&lt;br /&gt;&lt;allow-access-from domain="*.mydomain.com" /&gt;&lt;br /&gt;&lt;/cross-domain-policy&gt;&lt;br /&gt;If a crossdomain.xml file does not exist or does not permit access, then any calls to that domain&lt;br /&gt;would not be made.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-4822301537441478231?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/4822301537441478231/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/working-with-data.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/4822301537441478231'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/4822301537441478231'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/working-with-data.html' title='Working with data'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-7732952044859779698</id><published>2009-01-13T08:01:00.001-08:00</published><updated>2009-01-13T08:01:47.744-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hood'/><title type='text'>Under the hood</title><content type='html'>Under the hood&lt;br /&gt;In early versions of Flash, developers were limited to timeline animation when it came to adding interactivity&lt;br /&gt;to their applications. In more recent releases, increased scripting support has been incorporated&lt;br /&gt;using a language called ActionScript.&lt;br /&gt;Like JavaScript, ActionScript is based upon the ECMAScript specification. Both languages share a similar&lt;br /&gt;syntax, making it easy for developers to alternate between the two.&lt;br /&gt;Within Flash, ActionScript is designed to be asynchronous, allowing multiple lines of code to be executed&lt;br /&gt;concurrently and using callbacks in order to pass data. A developer can define custom events&lt;br /&gt;and assign them to be dispatched during code execution, and listeners are assigned to monitor the&lt;br /&gt;application for events and to execute the appropriate code block.&lt;br /&gt;You can create ActionScript using a simple text editor; however, the Flash integrated development&lt;br /&gt;environment (IDE) offers additional functionality such as syntax highlighting, code autocompletion,&lt;br /&gt;compiler integration, and a language reference. In addition, third-party IDEs such as FDT, FlashDevelop&lt;br /&gt;(see Figure 2-4), and SEPY offer ActionScript-specific support and functionality beyond what’s found in&lt;br /&gt;the Flash IDE.&lt;br /&gt;With the release of Flash Player 9, ActionScript made the jump from version 2.0 to version 3.0. This&lt;br /&gt;represented a major overhaul of the language’s syntax and structure. In addition, ActionScript 3.0 uses&lt;br /&gt;a new compiler that transforms your ActionScript code into byte code and a new virtual machine in&lt;br /&gt;which the byte code is executed.&lt;br /&gt;ActionScript 3.0 can offer developers a massive performance boost, offering performance approximately&lt;br /&gt;ten times faster than the equivalent ActionScript 2.0 code. In addition, it offers support for&lt;br /&gt;runtime exceptions, type checking, data types, and regular expressions—all functionality that aids&lt;br /&gt;developers when creating rich Internet applications and mashups that rely heavily on client-side data&lt;br /&gt;processing and visualizations.&lt;br /&gt;There is also a vastly enhanced XML parsing engine, E4X, which reduces the complexity and lines of&lt;br /&gt;code required to manipulate XML documents.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-7732952044859779698?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/7732952044859779698/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/under-hood.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/7732952044859779698'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/7732952044859779698'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/under-hood.html' title='Under the hood'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-2716771153339789331</id><published>2009-01-13T07:54:00.000-08:00</published><updated>2009-01-13T08:01:03.264-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Flash'/><title type='text'>Working with Flash</title><content type='html'>Working with Flash&lt;br /&gt;Flash is a platform upon which developers can produce and distribute multimedia content, such as&lt;br /&gt;web applications, games, and movies. Flash has been around for more than ten years and is currently&lt;br /&gt;owned by Adobe Systems following its 2005 merger with Macromedia.&lt;br /&gt;Flash can be a very expressive medium, traditionally being used to create graphically rich movies and&lt;br /&gt;interactive experiences. It is also popularly used to create and deliver online advertising.&lt;br /&gt;More recently, the Flash platform has gained popularity as a means to integrate video into web pages&lt;br /&gt;by using Flash Video (FLV) and also as a platform used to develop rich Internet applications (RIAs).&lt;br /&gt;Adobe is currently shipping version 9 of Flash Player, as well as Adobe Flash CS3—a version of the&lt;br /&gt;developer environment that can be used to create content that takes advantage of the new features&lt;br /&gt;of the player, including the new ActionScript 3.0 scripting language that offers huge performance&lt;br /&gt;gains over ActionScript 2.0.&lt;br /&gt;To view Flash content, users must have Flash Player installed on their systems. This is a fairly small&lt;br /&gt;download by today’s standards and offers support to all major web browsers on Windows, Mac OS,&lt;br /&gt;and Linux platforms.&lt;br /&gt;Unlike other web browser plug-ins, Flash Player has one major advantage—its ubiquity. It is a very&lt;br /&gt;mature platform that has widespread adoption. Statistics published by Adobe indicate that more than&lt;br /&gt;98 percent of computers have a version of the player installed, and more than 90 percent of these are&lt;br /&gt;Flash Player 9, the latest major version.&lt;br /&gt;This means that developers can produce content safe in the knowledge that they are not going to be&lt;br /&gt;excluding a large proportion of their audience. However, as any good web developer is keen to point&lt;br /&gt;out, it is always important to consider the experience that users without Flash Player will have.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-2716771153339789331?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/2716771153339789331/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/working-with-flash.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/2716771153339789331'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/2716771153339789331'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/working-with-flash.html' title='Working with Flash'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-2620673846990173399</id><published>2009-01-12T06:28:00.001-08:00</published><updated>2009-01-12T06:28:23.281-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><title type='text'>Mashing Google Maps using JavaScript</title><content type='html'>Mashing Google Maps using JavaScript&lt;br /&gt;Google provides a free API that allows developers to embed maps on web pages using JavaScript. Using&lt;br /&gt;this you can create a map of anywhere in the world and overlay it with additional data and functionality.&lt;br /&gt;You can use the Google Maps API for free provided you abide by the terms of service. The terms are&lt;br /&gt;pretty standard and place limits on traffic volumes (50,000 requests per day, per API key) and acceptable&lt;br /&gt;usage.&lt;br /&gt;If you want to embed Google Maps on an intranet or nonpublic website, then Google offers an enterprise&lt;br /&gt;option for a fee.&lt;br /&gt;To use the Google Maps API, you must register for a free API key. This is a straightforward process and&lt;br /&gt;is shown in Figure 2-2; you essentially have to agree to abide by the terms of service and also provide&lt;br /&gt;Google with details of the site where you want to use Google Maps.&lt;br /&gt;It is worth noting that the API key is specific to a directory on your web server, so if you register with&lt;br /&gt;the URL www.mysite.com/maps, then the key will be valid only for pages within this directory or its&lt;br /&gt;subdirectories.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-2620673846990173399?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/2620673846990173399/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/mashing-google-maps-using-javascript.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/2620673846990173399'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/2620673846990173399'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/mashing-google-maps-using-javascript.html' title='Mashing Google Maps using JavaScript'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-5434719913664888271</id><published>2009-01-12T06:27:00.001-08:00</published><updated>2009-01-12T06:27:52.531-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><title type='text'>Working with JavaScript</title><content type='html'>Today, most websites tend to use JavaScript in order to add client-side interactivity and logic—whether&lt;br /&gt;it is simply to change the appearance of a button when the user hovers over it with their mouse or&lt;br /&gt;whether it is to create something much more complex such as an entire user interface in the vein of&lt;br /&gt;the Fluxiom web application&lt;br /&gt;At the heart of Fluxiom is a scripting language based on the ECMAScript specification, with a syntax that&lt;br /&gt;should be familiar to anyone who has done any Java or ActionScript programming. The ECMAScript&lt;br /&gt;specification itself is an international standard, of which both JavaScript and ActionScript are dialects.&lt;br /&gt;JavaScript is a universal technology, available in every major desktop browser and even on mobile&lt;br /&gt;devices such as the latest Nokia phones and, of course, the iPhone. Despite a spotted past of incompatibilities&lt;br /&gt;and proprietary functionality, the language has reached a point of maturity where it has&lt;br /&gt;become pretty much standardized in implementation, with various frameworks offering up conventions&lt;br /&gt;as to how developers should be using the language. The popularity of common component&lt;br /&gt;frameworks has also helped support its usage by developers across the Web.&lt;br /&gt;Frameworks often provide developers with components and utility classes that can be leveraged when&lt;br /&gt;building more complex applications. They often reduce the amount of headaches that a developer has&lt;br /&gt;to deal with by implementing generic functionality such as object orientation, garbage collection,&lt;br /&gt;visual effects, and rich user interface components, while at the same time providing solutions to common&lt;br /&gt;cross-browser programming challenges (a diplomatic phrase for bugs!). This reduces development&lt;br /&gt;time and negates the need to reinvent the wheel when producing a simple web application.&lt;br /&gt;Many frameworks are available, ranging from fully blown affairs encapsulating all of the utility functions&lt;br /&gt;that you will likely need when building a web application, including data communication and&lt;br /&gt;DOM manipulation, to simple reusable components that might implement a specific user interface&lt;br /&gt;element such as a slider or accordion. Depending on whom you ask, you will often get recommendations&lt;br /&gt;for different frameworks, and often their suitability will vary depending on the project. Of particular&lt;br /&gt;interest are MooTools (www.mootools.net) and jQuery (www.jquery.com); both provide a great&lt;br /&gt;deal of features given their small file size and offer exceptional performance.&lt;br /&gt;In major projects, a framework is often considered essential, whether it be an off-the-shelf one such&lt;br /&gt;as those mentioned here or something homegrown. They often make larger projects more manageable,&lt;br /&gt;standardizing development and encouraging reuse.&lt;br /&gt;The use of JavaScript in mashups is varied, because often it is necessary to augment it with server-side&lt;br /&gt;scripting that performs data aggregation and other pieces of logic/processing—both tasks that could&lt;br /&gt;have performance overhead if performed using JavaScript on the client. In these cases, JavaScript is&lt;br /&gt;used mainly to provide a rich, interactive user interface and to allow asynchronous communication&lt;br /&gt;with the server using the XmlHttpRequest object (a JavaScript object that is used to make asynchronous&lt;br /&gt;calls to a web server).&lt;br /&gt;When developing more complex mashups using an HTML/CSS/JavaScript front-end, a server-side component&lt;br /&gt;to handle the aggregation of data from various sources or to store user preferences often&lt;br /&gt;becomes essential.&lt;br /&gt;JavaScript also runs within a tight security model, restricting access to domains other than the one&lt;br /&gt;from which the script was loaded. There are ways around this; however, this can also impact connectivity&lt;br /&gt;with external application programming interfaces (APIs) and data services.&lt;br /&gt;That said, it is possible to consume external data services using JavaScript as part of a web application&lt;br /&gt;with some creative workarounds. A good example of this is the incorporation of an interactive Google&lt;br /&gt;map within a web page.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-5434719913664888271?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/5434719913664888271/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/working-with-javascript.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/5434719913664888271'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/5434719913664888271'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/working-with-javascript.html' title='Working with JavaScript'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-3023937306337950042</id><published>2009-01-12T06:26:00.002-08:00</published><updated>2009-01-12T06:27:13.341-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TECHNOLOGIES'/><title type='text'>TECHNOLOGIES TO MASH WITH!</title><content type='html'>Web application development is not a simple task, as many a developer will attest.&lt;br /&gt;Back in the early days of the Web, the main challenge was maintaining page compatibility&lt;br /&gt;between Internet Explorer and Netscape. Over the past decade, we have seen&lt;br /&gt;pages evolve from static experiences to something much richer and more dynamic.&lt;br /&gt;With this evolution comes additional challenges and constraints that need to be considered&lt;br /&gt;when developing web applications.&lt;br /&gt;The key issue to keep in mind is how a user is going to interact with your web application&lt;br /&gt;as you introduce richer functionality and new user interface paradigms. It is&lt;br /&gt;far too easy to get carried away with many of the client-side technologies that are&lt;br /&gt;available to developers, either by visually enhancing aspects of an application or by&lt;br /&gt;introducing dynamic data loading. At all stages, usability should be considered—what&lt;br /&gt;value does feature X add to the user? And conversely, how functional will an application&lt;br /&gt;be if a user is viewing it in a browser or on a device that does not support a&lt;br /&gt;certain technology?&lt;br /&gt;If you look at the technology platforms that are used to deliver these rich web experiences,&lt;br /&gt;you will see two paths. On a foundation of Hypertext Markup Language&lt;br /&gt;(HTML) structure and Cascading Style Sheets (CSS) presentation, developers have&lt;br /&gt;embraced JavaScript as a means of delivering interactivity and rich functionality&lt;br /&gt;within the browser. In addition, plug-in technologies such as Adobe’s Flash Platform are well regarded&lt;br /&gt;when it is necessary to deliver increasingly rich visual experiences to users.&lt;br /&gt;Both of these technologies have their place when it comes to developing mashups and can be used to&lt;br /&gt;produce fantastic results, as evident in the examples you saw in Chapter 1.&lt;br /&gt;Choosing whether to develop a mashup application using Flash or JavaScript is often a decision driven&lt;br /&gt;by the services you are looking to consume and the creative vision of what you are going to build.&lt;br /&gt;Secondary considerations might include the availability of server-side scripting, accessibility requirements,&lt;br /&gt;and usability.&lt;br /&gt;Let’s take a closer look at the available technologies so you can see the differences between them and&lt;br /&gt;what makes one more suitable to a certain requirement than another.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-3023937306337950042?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/3023937306337950042/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/technologies-to-mash-with.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/3023937306337950042'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/3023937306337950042'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/technologies-to-mash-with.html' title='TECHNOLOGIES TO MASH WITH!'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-8391227124590506505</id><published>2009-01-12T06:26:00.001-08:00</published><updated>2009-01-12T06:26:35.377-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mashups'/><title type='text'>Internal mashups</title><content type='html'>Internal mashups&lt;br /&gt;Mashups also do not have to be public; instead, they can be inward-facing. By exposing the internal&lt;br /&gt;core services of an organization, you can make it easier for developers to build applications within a&lt;br /&gt;company’s infrastructure and also simply reuse data across the enterprise. This can lead to significant&lt;br /&gt;cost savings and added value.&lt;br /&gt;Yahoo takes this one step further with a concept called Hack Day. Simply put, a hack day is a day&lt;br /&gt;where employees are challenged to develop a prototype of an application and present it to their&lt;br /&gt;peers. Each application must utilize any number of the company’s products, services, feeds, and APIs.&lt;br /&gt;Successful applications could potentially be developed into fully fledged products.&lt;br /&gt;This approach to innovation helps breed creativity within the organization and serves to boost&lt;br /&gt;morale—giving developers the chance to do something fun for a day, outside of their normal duties&lt;br /&gt;and responsibilities.&lt;br /&gt;&lt;br /&gt;Moneymaking opportunities&lt;br /&gt;There is nothing set in stone that says an API should be freely available to everyone. If you are the&lt;br /&gt;owner of a data source that people are willing to pay to access, then there is nothing stopping you&lt;br /&gt;from exposing an API and requiring developers to pay for its usage.&lt;br /&gt;In the United Kingdom, companies such as the Royal Mail have been doing this for many years; it&lt;br /&gt;allows other organizations to query its postal-code database for a small fee. Amazon also has adopted&lt;br /&gt;a similar model for its S3 (online file/data storage) service, charging users for disk space and bandwidth&lt;br /&gt;used.&lt;br /&gt;Although the commoditization of data might not always be appropriate, it can be a dependable revenue&lt;br /&gt;source in those situations where it is.&lt;br /&gt;Summary&lt;br /&gt;In this chapter, you looked at the history of the Web and also saw how web application developers are&lt;br /&gt;opening their applications and data with APIs and data feeds. You also looked at the motivating factors&lt;br /&gt;behind this approach.&lt;br /&gt;In the next chapter, you will learn about the technology choices you have when developing a mashup,&lt;br /&gt;and you’ll take the first steps in mashup development.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-8391227124590506505?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/8391227124590506505/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/internal-mashups.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/8391227124590506505'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/8391227124590506505'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/internal-mashups.html' title='Internal mashups'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-3327543481901598787</id><published>2009-01-12T06:25:00.001-08:00</published><updated>2009-01-12T06:25:48.842-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='traffic'/><title type='text'>Increased traffic</title><content type='html'>Increased traffic&lt;br /&gt;A mashup can often be the means though which people will be driven to a website or application. In&lt;br /&gt;fact, it could drive user registrations and ultimately increase the profile of the site in question. For&lt;br /&gt;example, the many mashups built around the Flickr feeds and APIs are a major factor in the site’s popularity.&lt;br /&gt;Mashups help build brand awareness among the online community and often serve to differentiate&lt;br /&gt;websites from their competitors.&lt;br /&gt;Often this can work both ways—if a respected brand launches an API interface to its services, then&lt;br /&gt;developers will be more inclined to check it out, compared to, say, a fledgling start-up. A good example&lt;br /&gt;of this is Amazon, and its various S3 web services, as a company renowned for integrity and reliability;&lt;br /&gt;its brand serves to reassure developers that its services are secure, scalable, and reliable.&lt;br /&gt;In many cases, there are also opportunities for mashups to be embraced by the data provider themselves.&lt;br /&gt;For example, Flickr recently integrated the functionality of Picnik into its site—making it available&lt;br /&gt;to millions of users. &lt;br /&gt;&lt;br /&gt;Communities&lt;br /&gt;An API can be a way through which to develop a community around a particular web application. Just&lt;br /&gt;as you can see increased traffic by opening your application, you also get mashup developers flocking&lt;br /&gt;to your door. Embracing this can be crucial to the success of a web application because getting thirdparty&lt;br /&gt;developers to support an application can generate massive returns across the board.&lt;br /&gt;If you look at social networking, sites such as Facebook and OpenSocial have been successful in developing&lt;br /&gt;huge communities of developers who are interested in building mashups and applications upon&lt;br /&gt;their platforms. This has really led to an explosion in functionality available to users and has also generated&lt;br /&gt;huge amounts of publicity.&lt;br /&gt;Open data&lt;br /&gt;Often, feeds and APIs serve a primary purpose—to allow access to the underlying data contained&lt;br /&gt;within an application. Offering this functionality promotes the principles of open data, giving the end&lt;br /&gt;user control of the data that is stored within your application. If they want, users can stop using the&lt;br /&gt;service and leave, taking all their data with them.&lt;br /&gt;Alternatively, opening data tends to simplify data reuse across many different applications. If you look&lt;br /&gt;at the recent explosion of social networking websites, you’ll see one major annoyance—the user is&lt;br /&gt;required to maintain the same profile data across multiple sites, so they end up having to spend additional&lt;br /&gt;time updating Facebook, MySpace, Bebo, and so on, each time they come across a new favorite&lt;br /&gt;song, for example!&lt;br /&gt;APIs offer a means of decentralizing this, and already we are seeing examples of this; for example, the&lt;br /&gt;Facebook developer platform allows for easy mashups and integration with other data sources.&lt;br /&gt;At the end of the day, yes, there is a risk that your users are perhaps less tied down to a single application,&lt;br /&gt;but surely this sets a challenge to developers to develop relevant and compelling applications&lt;br /&gt;that ultimately fulfill the needs of the user.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-3327543481901598787?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/3327543481901598787/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/increased-traffic.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/3327543481901598787'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/3327543481901598787'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/increased-traffic.html' title='Increased traffic'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-8031882082187137770</id><published>2009-01-12T06:22:00.000-08:00</published><updated>2009-01-12T06:24:38.542-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='The benefits'/><title type='text'>The benefits of being open</title><content type='html'>The benefits of being open&lt;br /&gt;Many companies and developers open their web applications, using a combination of APIs and RSS&lt;br /&gt;feeds, in order to create a platform upon which mashup developers can thrive. Depending on the web&lt;br /&gt;application, the reasons for this can be very different.&lt;br /&gt;Innovation is encouraged&lt;br /&gt;If you refer to the quote from Vint Cert earlier in this chapter, you can see that Google recognizes that&lt;br /&gt;it does not hold a monopoly on creativity. Many developers out there will, given the chance, find&lt;br /&gt;novel uses for data or functionality that the original programmers of an application may never have&lt;br /&gt;considered. An API gives programmers the tools to experiment and create new applications.&lt;br /&gt;In some cases, this creative output can be fed back into the research and development process, stimulating&lt;br /&gt;new ideas and influencing the overall product direction. These ideas may be totally unexpected—&lt;br /&gt;I doubt that anyone in the Chicago Police Department anticipated seeing police reports&lt;br /&gt;plotted onto a Google Map!—and ultimately add considerable value to the data.&lt;br /&gt;As a mashup developer, a lot of the fun lies in the ability to take different sets of data and create new&lt;br /&gt;views of that data. This could potentially add value; for example, by plotting information on a map,&lt;br /&gt;you add context that would otherwise be missing. Alternatively, combining data could ultimately provide&lt;br /&gt;a form of creative expression and entertainment.&lt;br /&gt;Extended functionality&lt;br /&gt;Following on from innovation, an API allows you to extend the functionality of a given web application,&lt;br /&gt;potentially in areas that might not be of interest to the application developers themselves but often are&lt;br /&gt;desired by a subset of the user base. For example, Housing Maps (http://www.housingmaps.com)&lt;br /&gt;extends the functionality of Craigslist, allowing classified advertisements to be viewed on a map.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-8031882082187137770?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/8031882082187137770/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/benefits-of-being-open.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/8031882082187137770'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/8031882082187137770'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/benefits-of-being-open.html' title='The benefits of being open'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-5960794074180127366</id><published>2009-01-11T01:12:00.000-08:00</published><updated>2009-01-11T01:13:45.059-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web application'/><title type='text'>Opening your web application</title><content type='html'>Opening your web application&lt;br /&gt;Web application developers have several options when it comes to opening their application functionality&lt;br /&gt;and data to the hoards of mashup developers. Often, one of the simplest ways to facilitate&lt;br /&gt;the syndication and consumption of data is by publishing it as an RSS feed.&lt;br /&gt;Feeds&lt;br /&gt;RSS stands for Really Simple Syndication and is essentially an Extensible Markup Language (XML) document&lt;br /&gt;that conforms to a specific data schema. An RSS feed contains details of the feed publisher and&lt;br /&gt;can contain any number of items that correspond to web application data. This can include news stories,&lt;br /&gt;photos, listings, and much more.&lt;br /&gt;The following is an example of an RSS feed:&lt;br /&gt;&lt;?xml version="1.0" encoding="ISO-8859-1"?&gt;&lt;br /&gt;&lt;rss media="http://search.yahoo.com/mrss/" version="2.0"&gt;&lt;br /&gt;&lt;channel&gt;&lt;br /&gt;&lt;title&gt;BBC News | Technology | UK Edition&lt;/title&gt;&lt;br /&gt;&lt;link&gt;&lt;br /&gt;http://news.bbc.co.uk/go/rss/-/1/hi/technology/default.stm&lt;br /&gt;&lt;/link&gt;&lt;br /&gt;&lt;description&gt;&lt;br /&gt;Visit BBC News for up-to-the-minute news, breaking news,&lt;br /&gt;video, audio and feature stories. BBC News provides&lt;br /&gt;trusted World and UK news as well as local and regional&lt;br /&gt;perspectives. Also entertainment, business, science,&lt;br /&gt;technology and health news.&lt;br /&gt;&lt;/description&gt;&lt;br /&gt;&lt;br /&gt;&lt;language&gt;en-gb&lt;/language&gt;&lt;br /&gt;&lt;lastbuilddate&gt;Mon, 25 Jun 2007 17:24:34 GMT&lt;/lastbuilddate&gt;&lt;br /&gt;&lt;copyright&gt;&lt;br /&gt;Copyright: (C) British Broadcasting Corporation, see&lt;br /&gt;http://news.bbc.co.uk/1/hi/help/rss/4498287.stm for terms&lt;br /&gt;and conditions of reuse&lt;br /&gt;&lt;/copyright&gt;&lt;br /&gt;&lt;docs&gt;http://www.bbc.co.uk/syndication/&lt;/docs&gt;&lt;br /&gt;&lt;ttl&gt;15&lt;/ttl&gt;&lt;br /&gt;&lt;image&gt;&lt;br /&gt;&lt;title&gt;BBC News&lt;/title&gt;&lt;br /&gt;&lt;url&gt;&lt;br /&gt;http://news.bbc.co.uk/nol/shared/img/bbc_news_120x60.gif&lt;br /&gt;&lt;/url&gt;&lt;br /&gt;&lt;link&gt;&lt;br /&gt;http://news.bbc.co.uk/go/rss/-/1/hi/technology/default.stm&lt;br /&gt;&lt;/link&gt;&lt;br /&gt;&lt;/image&gt;&lt;br /&gt;&lt;item&gt;&lt;br /&gt;&lt;title&gt;Social sites reveal class divide&lt;/title&gt;&lt;br /&gt;&lt;description&gt;&lt;br /&gt;Social networking sites are proving a good guide to&lt;br /&gt;socio-economic divisions in the US, reveals research.&lt;br /&gt;&lt;/description&gt;&lt;br /&gt;&lt;link&gt;&lt;br /&gt;http://news.bbc.co.uk/go/rss/-/1/hi/technology/6236628.stm&lt;br /&gt;&lt;/link&gt;&lt;br /&gt;&lt;guid ispermalink="false"&gt;&lt;br /&gt;http://news.bbc.co.uk/1/hi/technology/6236628.stm&lt;br /&gt;&lt;/guid&gt;&lt;br /&gt;&lt;pubdate&gt;Mon, 25 Jun 2007 11:42:15 GMT&lt;/pubdate&gt;&lt;br /&gt;&lt;category&gt;Technology&lt;/category&gt;&lt;br /&gt;&lt;/item&gt;&lt;br /&gt;&lt;item&gt;&lt;br /&gt;&lt;title&gt;Leader of net piracy gang jailed&lt;/title&gt;&lt;br /&gt;&lt;description&gt;&lt;br /&gt;A Briton who operated a net piracy gang out of his&lt;br /&gt;Australian home is jailed in the US for 51 months.&lt;br /&gt;&lt;/description&gt;&lt;br /&gt;&lt;link&gt;&lt;br /&gt;http://news.bbc.co.uk/go/rss/-/1/hi/technology/6237610.stm&lt;br /&gt;&lt;/link&gt;&lt;br /&gt;&lt;guid ispermalink="false"&gt;&lt;br /&gt;http://news.bbc.co.uk/1/hi/technology/6237610.stm&lt;br /&gt;&lt;/guid&gt;&lt;br /&gt;&lt;pubdate&gt;Mon, 25 Jun 2007 13:56:19 GMT&lt;/pubdate&gt;&lt;br /&gt;&lt;category&gt;Technology&lt;/category&gt;&lt;br /&gt;&lt;/item&gt;&lt;br /&gt;&lt;item&gt;&lt;br /&gt;&lt;title&gt;California landing for Atlantis&lt;/title&gt;&lt;br /&gt;&lt;description&gt;&lt;br /&gt;US space shuttle Atlantis touches down in California, after&lt;br /&gt;bad weather prevents a Florida landing.&lt;br /&gt;&lt;/description&gt;&lt;br /&gt;&lt;link&gt;&lt;br /&gt;http://news.bbc.co.uk/go/rss/-/1/hi/sci/tech/6232320.stm&lt;br /&gt;&lt;/link&gt;&lt;br /&gt;&lt;guid ispermalink="false"&gt;&lt;br /&gt;http://news.bbc.co.uk/1/hi/sci/tech/6232320.stm&lt;br /&gt;&lt;/guid&gt;&lt;br /&gt;&lt;pubdate&gt;Fri, 22 Jun 2007 20:56:50 GMT&lt;/pubdate&gt;&lt;br /&gt;&lt;category&gt;Science/Nature&lt;/category&gt;&lt;br /&gt;&lt;/item&gt;&lt;br /&gt;&lt;item&gt;&lt;br /&gt;&lt;title&gt;Computers 'can raise attainment'&lt;/title&gt;&lt;br /&gt;&lt;description&gt;&lt;br /&gt;A study says high levels of computer technology can improve&lt;br /&gt;school results, but the picture is mixed.&lt;br /&gt;&lt;/description&gt;&lt;br /&gt;&lt;link&gt;&lt;br /&gt;http://news.bbc.co.uk/go/rss/-/1/hi/education/6231704.stm&lt;br /&gt;&lt;/link&gt;&lt;br /&gt;&lt;guid ispermalink="false"&gt;&lt;br /&gt;http://news.bbc.co.uk/1/hi/education/6231704.stm&lt;br /&gt;&lt;/guid&gt;&lt;br /&gt;&lt;pubdate&gt;Sun, 24 Jun 2007 07:08:51 GMT&lt;/pubdate&gt;&lt;br /&gt;&lt;category&gt;Education&lt;/category&gt;&lt;br /&gt;&lt;/item&gt;&lt;br /&gt;&lt;item&gt;&lt;br /&gt;&lt;title&gt;Yahoo sees advertising shake-up&lt;/title&gt;&lt;br /&gt;&lt;description&gt;&lt;br /&gt;Yahoo is overhauling the way it sells advertising in the US,&lt;br /&gt;in an effort to help revive the business.&lt;br /&gt;&lt;/description&gt;&lt;br /&gt;&lt;link&gt;&lt;br /&gt;http://news.bbc.co.uk/go/rss/-/1/hi/business/6236102.stm&lt;br /&gt;&lt;/link&gt;&lt;br /&gt;&lt;guid ispermalink="false"&gt;&lt;br /&gt;http://news.bbc.co.uk/1/hi/business/6236102.stm&lt;br /&gt;&lt;/guid&gt;&lt;br /&gt;&lt;pubdate&gt;Mon, 25 Jun 2007 06:45:30 GMT&lt;/pubdate&gt;&lt;br /&gt;&lt;category&gt;Business&lt;/category&gt;&lt;br /&gt;&lt;/item&gt;&lt;br /&gt;&lt;/channel&gt;&lt;br /&gt;&lt;/rss&gt;&lt;br /&gt;This is an RSS feed from the BBC News website. The channel node contains information on the feed&lt;br /&gt;publisher including the feed name, description, associated URL, and published date. It also contains.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-5960794074180127366?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/5960794074180127366/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/opening-your-web-application.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/5960794074180127366'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/5960794074180127366'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/opening-your-web-application.html' title='Opening your web application'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-3536855301721960206</id><published>2009-01-11T01:10:00.000-08:00</published><updated>2009-01-11T01:11:19.263-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Examples'/><title type='text'>Examples of mashups</title><content type='html'>There are many different interpretations on what mashups are and what they mean for the Web, for innovation,&lt;br /&gt;and for creating value propositions for the user. In broad terms, a mashup is an application that&lt;br /&gt;consumes data from different sources and combines them in a single user experience. As you will see&lt;br /&gt;later, this can be in order to add value to the preexisting data or to take a more fun and creative slant.&lt;br /&gt;In many ways, mashups offer a platform for innovation, where developers can demonstrate their talent&lt;br /&gt;and creativity without having to reinvent the wheel by accessing data sources that otherwise&lt;br /&gt;would not be available to them.&lt;br /&gt;Although originally mashups was a term used to describe web applications that were built around one&lt;br /&gt;or more data sources, we are seeing them move from the web to the desktop as widget platforms and&lt;br /&gt;desktop technologies evolve. The concepts behind mashups, such as interacting with data sources, are&lt;br /&gt;being worked into applications that are available to run locally on the desktop.&lt;br /&gt;Mashups present a great opportunity for web developers to innovate and demonstrate their creativity,&lt;br /&gt;with near limitless possibilities.&lt;br /&gt;Data can be consumed from various sources, including the following:&lt;br /&gt;Public APIs&lt;br /&gt;Web services&lt;br /&gt;Data feeds (such as RSS)&lt;br /&gt;Mashups have been embraced by many Internet companies, including Google, Yahoo, and Amazon,&lt;br /&gt;which have all provided various methods for developers to leverage the functionality of their web&lt;br /&gt;applications. Over the next few pages, you will see some of the most novel and innovative examples of&lt;br /&gt;mashups that are available on the Web.&lt;br /&gt;&lt;br /&gt;Buzzword&lt;br /&gt;http://www.buzzword.com/&lt;br /&gt;Many users are deserting desktop applications and moving toward web applications for common&lt;br /&gt;functions such as e-mail and document creation.&lt;br /&gt;In the past, this was somewhat limited because the experience that a web application can offer did not&lt;br /&gt;compare to the speed and quality of interaction provided by a desktop application; however, with the&lt;br /&gt;rise of client-side presentation technologies, Buzzword is a shining example of what is possible when&lt;br /&gt;you combine a powerful technology with the social and collaborative nature of the Web.&lt;br /&gt;Recently purchased by Adobe, Buzzword is a web-based word processor written entirely in Flex, with&lt;br /&gt;full support for popular document formats and notable technical achievements such as an advanced&lt;br /&gt;text and document layout engine (see Figure 1-1).&lt;br /&gt;Although not strictly a mash-up, Buzzword embodies many of the emerging social attributes of the&lt;br /&gt;Web, and at the same time sets the bar for client-side applications.&lt;br /&gt;Figure 1-1. Editing a document in Buzzword&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-3536855301721960206?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/3536855301721960206/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/examples-of-mashups.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/3536855301721960206'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/3536855301721960206'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/examples-of-mashups.html' title='Examples of mashups'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-428219024202260904</id><published>2009-01-11T01:09:00.001-08:00</published><updated>2009-01-11T01:09:53.117-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='data'/><title type='text'>A web of data By Adobe Flex</title><content type='html'>Yahoo’s Tom Coates coined the phrase “a web of data,” using it to describe the current state of&lt;br /&gt;the Internet and the transition from many websites serving as isolated repositories of data to a much&lt;br /&gt;more interconnected model, which allows data to be shared and manipulated throughout the online&lt;br /&gt;ecosystem.&lt;br /&gt;Imagine that you are the owner of a database full of restaurant addresses. You can display them in a&lt;br /&gt;list, sort them, filter them, and allow users to search through them; however, you cannot show your&lt;br /&gt;users where they are located on a map because you don’t have any maps stored, and even if you did,&lt;br /&gt;you don’t have the skills, time, or desire to create the logic that takes an address and pinpoints its&lt;br /&gt;exact location on a map.&lt;br /&gt;Now say there’s a second company that owns a wealth of mapping data that can be searched by&lt;br /&gt;address. Separately, you have two moderately useful websites; a user can search one, but in order to&lt;br /&gt;make sense of the data they find, they have to visit the second website.&lt;br /&gt;Obviously, this is not the best experience from the user’s perspective, because they need to visit two&lt;br /&gt;websites in order to find the information they need. When information is arranged in isolated silos,&lt;br /&gt;the user experience usually suffers.&lt;br /&gt;If you examine the same scenario but with open data sources, you will see new possibilities for innovation.&lt;br /&gt;For instance, if the owner of the address data had access to mapping functionality, then they&lt;br /&gt;would be able to provide customers with customized maps for each address in the database.&lt;br /&gt;The user would benefit because the information they are looking for is more readily available, without&lt;br /&gt;requiring visits to multiple websites. The benefits can work both ways, though; the owner of the mapping&lt;br /&gt;data might want to allow users to search for restaurants. A search term could be cross-referenced&lt;br /&gt;with restaurant names from the first database, and if there are any matches, then they could be displayed&lt;br /&gt;on the map.&lt;br /&gt;And that is just the beginning.&lt;br /&gt;Many developers have taken this much further, developing innovative new web applications by mixing&lt;br /&gt;different sets of data and functionality to create mashups.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-428219024202260904?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/428219024202260904/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/web-of-data-by-adobe-flex.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/428219024202260904'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/428219024202260904'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/web-of-data-by-adobe-flex.html' title='A web of data By Adobe Flex'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5772799175014006560.post-4942428723227318517</id><published>2009-01-11T01:01:00.000-08:00</published><updated>2009-01-11T01:08:48.007-08:00</updated><title type='text'>INTRODUCTION TO MASHUPS</title><content type='html'>&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;A brief history of the Web&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Before you begin looking at examples of mashups and what they can offer, it often&lt;br /&gt;helps to look back at the growth of the Web and the technological trends that have&lt;br /&gt;been significant in its development.&lt;br /&gt;The origins of the Internet as it is today can be found in the Cold War era, which was&lt;br /&gt;a time when most people were more concerned about the threat of impending&lt;br /&gt;nuclear annihilation than the possibility of watching the antics of a skateboarding&lt;br /&gt;dog on YouTube.&lt;br /&gt;This threat helped drive the development of interconnected computer networks and&lt;br /&gt;a communications infrastructure. During October 1969, the first node of ARPANET,&lt;br /&gt;an initiative by the U.S. Department of Defense and the grandfather of today’s&lt;br /&gt;Internet, went online.&lt;br /&gt;Over the next 20 years, networking efforts continued, with more mainframes and computers around&lt;br /&gt;the world being connected under a single networking infrastructure and with TCP/IP networking acting&lt;br /&gt;as a common communications protocol. At this time, the main users of these emergent computer&lt;br /&gt;networks were mainly the government and academic institutions, and they benefited from the ability&lt;br /&gt;to exchange data and transmit messages instantaneously.&lt;br /&gt;&lt;br /&gt;One of the main drawbacks of this early “internet” was of course the technical barrier to entry—there&lt;br /&gt;were no web pages or e-mail clients; there were simply terminals where users typed commands, which&lt;br /&gt;demanded a certain level of technical savvy. This all changed in 1991, when researchers at CERN in&lt;br /&gt;Switzerland unveiled the World Wide Web, an application based on Tim Berners-Lee’s work developing&lt;br /&gt;the Hyptertext Transfer Protocol (HTTP) and the Hypertext Markup Language (HTML).&lt;br /&gt;Nontechnical individuals could now browse through pages of information, with support for text formatting&lt;br /&gt;and images. This first web browser contained many familiar features that are still present in&lt;br /&gt;the browsers you use today, including browsing history and the Back and Forward buttons.&lt;br /&gt;With the technical barrier to entry lifted, academia embraced the World Wide Web like never before.&lt;br /&gt;Sharing research papers and laboratory data was now easier than ever, and communities were brought&lt;br /&gt;together in ways never thought possible. Usenet, for example, brought together people from around&lt;br /&gt;the world with common interests and allowed for free discussion.&lt;br /&gt;Through the early 1990s, the software improved, and interest continued to spread beyond the technical&lt;br /&gt;and academic communities. By 1996, the word Internet had become a household name, with businesses&lt;br /&gt;looking at ways through which they could use this emerging technology as a new medium to&lt;br /&gt;reach their customers.&lt;br /&gt;Some companies simply created a basic home page that was a pointer to their offline operations.&lt;br /&gt;Others provided services—from simple mechanisms to communicate with new and existing customers&lt;br /&gt;to fully blown online shopping operations. And online advertising, in the form of basic banner ads,&lt;br /&gt;started appearing on the Web.&lt;br /&gt;In the late 1990s, a new breed of company started to take advantage of this growth in public awareness—&lt;br /&gt;the start-up. Budding entrepreneurs were drawn to the Web because of the large amounts of&lt;br /&gt;venture capital available. Suddenly the market was flooded by masses of online-only companies that&lt;br /&gt;offered innovative products and services to customers worldwide. Within a few years, though, many&lt;br /&gt;had gone bankrupt.&lt;br /&gt;One of the main reasons the dot-com boom went bust was not a lack of innovation but a lack of a feasible&lt;br /&gt;business model. Dot-com start-ups often operated on the “get big fast” principle, relying on&lt;br /&gt;investment to fund this growth. If the money ran out, then a fledgling company would soon find itself&lt;br /&gt;in trouble.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5772799175014006560-4942428723227318517?l=thaiflex.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaiflex.blogspot.com/feeds/4942428723227318517/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaiflex.blogspot.com/2009/01/introduction-to-mashups.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/4942428723227318517'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5772799175014006560/posts/default/4942428723227318517'/><link rel='alternate' type='text/html' href='http://thaiflex.blogspot.com/2009/01/introduction-to-mashups.html' title='INTRODUCTION TO MASHUPS'/><author><name>itong</name><uri>http://www.blogger.com/profile/04804174553397746127</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
