<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>PannonRex &#187; OpenLaszlo</title>
	<atom:link href="http://www.pannonrex.com/category/ajax/openlaszlo/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.pannonrex.com</link>
	<description>Solutions that Work</description>
	<lastBuildDate>Sun, 07 Mar 2010 01:45:38 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Morfik Architecture and AJAX v.s. Flash</title>
		<link>http://www.pannonrex.com/2007/03/23/morfik-architecture-and-ajax-vs-flash/</link>
		<comments>http://www.pannonrex.com/2007/03/23/morfik-architecture-and-ajax-vs-flash/#comments</comments>
		<pubDate>Fri, 23 Mar 2007 17:33:22 +0000</pubDate>
		<dc:creator>piprog</dc:creator>
				<category><![CDATA[AJAX]]></category>
		<category><![CDATA[Backbase]]></category>
		<category><![CDATA[Blogs]]></category>
		<category><![CDATA[Google Web Toolkit]]></category>
		<category><![CDATA[Morfik]]></category>
		<category><![CDATA[OpenLaszlo]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[WebOS]]></category>
		<category><![CDATA[Yahoo!]]></category>

		<guid isPermaLink="false">http://www.pannonrex.com/blog/?p=60</guid>
		<description><![CDATA[Hatem @ AJAX Magazine wrote a very good primer on Morfik architecture &#8212; a good read for anyone. Dan Webb has some important thoughts about the Flash v.s. Ajax debate and the comments on his site and on the Ajaxian site are also thought provoking. Indeed it is anyone&#8217;s guess how WPF/E, Flash/Flex/OpenLaszlo, AJAX (Backbase, [...]]]></description>
			<content:encoded><![CDATA[<p><span class="post-footers">Hatem @ AJAX Magazine wrote a very good primer on <a href="http://ajax.phpmagazine.net/2007/03/morfik_07_officially_available.html" title="Morfik 07 Officially Available and Introduction to Morfik Architecture (Part One)" target="_blank">Morfik architecture</a> &#8212; a good read for anyone.</span></p>
<p>Dan Webb has some important thoughts about the <a href="http://www.danwebb.net/2007/3/20/flash-vs-ajax-it-s-time-to-expand-your-toolbox" title="Flash vs. Ajax: It's time to expand your toolbox" target="_blank">Flash v.s. Ajax</a> debate and the comments on his site and on the <a href="http://ajaxian.com/archives/flash-vs-ajax-its-time-to-expand-your-toolbox" title="Flash vs. Ajax: It’s time to expand your toolbox" target="_blank">Ajaxian site</a> are also thought provoking.</p>
<p>Indeed it is anyone&#8217;s guess how WPF/E,  Flash/Flex/OpenLaszlo, AJAX (Backbase, YUI, Dojo, Prototype, Qooxdoo,&#8230;), GWT, Eclipse/RAP and Morfik will mature but this year will be definitely very interesting for web application development!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pannonrex.com/2007/03/23/morfik-architecture-and-ajax-vs-flash/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ACAP: A way to make AJAX search-friendly?</title>
		<link>http://www.pannonrex.com/2006/11/15/acap-a-way-to-make-ajax-search-friendly/</link>
		<comments>http://www.pannonrex.com/2006/11/15/acap-a-way-to-make-ajax-search-friendly/#comments</comments>
		<pubDate>Wed, 15 Nov 2006 11:13:48 +0000</pubDate>
		<dc:creator>piprog</dc:creator>
				<category><![CDATA[AJAX]]></category>
		<category><![CDATA[Backbase]]></category>
		<category><![CDATA[Google Web Toolkit]]></category>
		<category><![CDATA[Morfik]]></category>
		<category><![CDATA[OpenLaszlo]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Web 2.0]]></category>

		<guid isPermaLink="false">http://www.pannonrex.com/blog/?p=35</guid>
		<description><![CDATA[Google Search and other similar crawlers have a difficult time with AJAX applications: they were tuned for full-page-load style traditional web content and don&#8217;t adapt well for single-page web applications, where many times there are no well identified URLs for different content and getting to content in the first place is trickier than following a [...]]]></description>
			<content:encoded><![CDATA[<p>Google Search and other similar crawlers have a difficult time with AJAX applications: they were tuned for full-page-load style traditional web content and don&#8217;t adapt well for single-page web applications, where many times there are no well identified URLs for different content and getting to content in the first place is trickier than following a few links (did I mention Flash-based apps?). And still, for most of these sites getting into searches (i.e. exposure) is essential.</p>
<p>ACAP (Automated Content Access Protocol) is a new initiative from the international publishing community to turn the challenges facing the industry from web technologies (especially search) into opportunities in a win-win way, and as a side effect can help Web Applications out, too.</p>
<p><span id="more-35"></span></p>
<p><strong>First a summary of the publishing angle.</strong></p>
<p>Right now major search engines (especially Google) are crawling (retrieving), indexing and storing web content without being aware of the special needs of publishers. This leads to well documented cases when Google faces charges of massive copyright infringement for its activities. In some special cases Google stores a copy of content publicly available on the net, and later when the publisher changes its policy about a particular piece of content (going from public to a fee or membership based structure) the content is still present in the search results of Google and can be retrieved from it.</p>
<p>It must be underlined that Google (or other search engines) cannot be faulted (at least morally) for doing this since they are indexing millions of web sites automatically and it is impractical to implement special cases for certain specific sites at this scale. On the other hand, publishers do have their moral and legal rights to protect their intellectual property.</p>
<p>A special twist of the situation is that for publishers it is indeed important to be indexed: this helps them to generate major exposure for their content.</p>
<p>This creates a challenging case that seems to be a loose-loose situation: either search engines are constantly sued for copyright infringement (where they can fight back with fair use, etc.), or publishers instruct the search engines not to index their content at all (e.g. with robots.txt) that means lost exposure and thus lost revenue.</p>
<p>An important element of the case is that both parties want to cooperate so if there were a technical means of communicating the intentions/requirements of publishers, it could be converted into a win-win opportunity.</p>
<p>That&#8217;s where ACAP comes into the picture. The publishing community has decided to establish a standard way of communicating permissions information, that can be automatically adhered to by the search engine crawler.</p>
<p>Technically it is a challenge to implement such a solution. Although there are a handful of major search engines, there are literally millions of publications on the web that are created and maintained with a lot of different tools in varying structures. Thus such a solution has to be established that can integrate well with all these various platforms and technologies.</p>
<p>In a well designed solution search engines would be able to index even copyrighted material and during a web user search session return only contextual excerpts with proper attribution and in case of non-free content even pointers to how to access the full content, thus creating an invaluable means of dissemination of such content. This could be augmented with publisher-provided taxonomy and auxiliary information that would help the crawler to set the Page rank (or similar) of the particular material.</p>
<p><strong>Now how can this be utilized for Web Applications?</strong></p>
<p>Of special interest is the upcoming Web 2.0 and web application technologies that make it very difficult for crawlers to index content properly. ACAP could be extended in a way to solve this issue so that search engines would benefit from an easier to crawl content with better signal-to-noise ratio and publishers would be able to have fine-tuned search results.</p>
<p>A trivial way of making AJAX apps search-friendly is to fundamentally prohibit indexing the AJAX application itself and direct the crawler to an (otherwise &#8220;inaccessible&#8221;) area of the site where all the information that the content owner wants to be indexed is available in a search friendly form. An interesting twist is to use such an URL scheme, that when the web server detects that the incoming request is not a crawler, then it redirects the request (based on the URL) into the AJAX application.</p>
<p>This way crawlers would only receive content that is really valuable, they would be more effective with less effort and search results would improve significantly. Content owners would be able to make their AJAX sites searchable the way they like it.</p>
<p>Combined with ACAP (for IP protection) and with the probable extension of the protocol to include &#8220;nice permalinks&#8221; in the searchable content into the AJAX site this may be a good solution for search in the Web 2.0 era.</p>
<p>Would be a <em>way cool</em> project to work on the specification/implementation&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pannonrex.com/2006/11/15/acap-a-way-to-make-ajax-search-friendly/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Not all browsers are made equal in speed</title>
		<link>http://www.pannonrex.com/2006/04/03/not-all-browsers-are-made-equal-in-speed/</link>
		<comments>http://www.pannonrex.com/2006/04/03/not-all-browsers-are-made-equal-in-speed/#comments</comments>
		<pubDate>Mon, 03 Apr 2006 19:01:42 +0000</pubDate>
		<dc:creator>piprog</dc:creator>
				<category><![CDATA[AJAX]]></category>
		<category><![CDATA[Backbase]]></category>
		<category><![CDATA[Morfik]]></category>
		<category><![CDATA[OpenLaszlo]]></category>
		<category><![CDATA[Sweeper]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[WebOS]]></category>

		<guid isPermaLink="false">http://www.pannonrex.com/blog/?p=25</guid>
		<description><![CDATA[Today I had an enlightening experience. As I complained a couple of days ago, @Sweeper 0.8 (my Morfik Mine Sweeper clone) was dead slow when switching into Intermediate or Expert mode due to a lot of control demolitions/creations going on in the background. So I decided that some optimization was in order and today just [...]]]></description>
			<content:encoded><![CDATA[<p>Today I had an enlightening experience. As I complained a couple of days ago, @Sweeper 0.8 (my Morfik Mine Sweeper clone) was dead slow when switching into Intermediate or Expert mode due to a lot of control demolitions/creations  going on in the background.  So  I decided that some optimization was in order and today just wanted to look into doing this when (almost by coincidence) I discovered that the speed was much-much better (almost palatable for even a maximalist) than I originally experienced. What gives?</p>
<p><span id="more-25"></span></p>
<p>When I develop with Morfik, it uses Internet Explorer (6.0 XP/SP2) by default to run the application. I discovered the performance problems this way while running the app from the IDE.</p>
<p>Today I started the app from the command line (I wanted to take a look at the generated code) and it came up in Firefox (1.5) since that is the default browser on the same machine. Was I surprised seeing that it was noticeably faster to switch modes!</p>
<p>My first reaction was to think of a few &#8216;nice&#8217; words about my ignorance in forgetting how an IDE can affect performance by doing some extra hops for debugging in the background (in retrospect: is this so in Morfik&#8217;s case? I&#8217;ll figure that out&#8230;).</p>
<p>Then I remembered that indeed I had done some profiling the other day and narrowed down the possible number of lines for the performance issue quite a lot and none of those lines should be affected by IDE magick.</p>
<p>So decided to do some investigations and did profile the same task (switching from Basic into Expert) in both browsers on the same machine with the same conditions (only the two browsers loaded, average of 5 runs for each). Here are the results:</p>
<ul>
<li><strong>Internet Explorer</strong> finished on average in <strong>18.34 secs</strong></li>
<li><strong>Firefox</strong> finished on average in <strong>3.38 secs</strong></li>
</ul>
<p>Now, that IS a difference. In this test <strong>Firefox was faster by</strong> cca. <strong>5.42 times</strong>.</p>
<p>One could say that this is irrelevant and why do I care in the first place? The answer is simple. New web applications (based on AJAX) and many Web 2.0 frameworks (Morfik, Backbase, the new OpenLaszlo DHTML renderer, Ruby on Rails, etc.) rely on the browser as a UI rendering engine. Such great differences in speed mean that either the browser manufacturers will have to tune their solutions to be more in line or we application developers will have again to do some magic to mitigate the differences (of course, this is not optimized code, but that is not the point, OK?).</p>
<p>If you want to take a look at the results first hand, you can do it by either <a target="_blank" title="@Sweeper in action" href="http://minesweeper.labs.morfik.com/">running the Mine Sweeper app</a> from the Morfik Dev2Dev site or <a target="_blank" title="@Sweeper source code" href="http://pioneers.morfik.com/Sweeper.zip?cls=Blob&#038;ds=DownloadTable&#038;gid=97376F98-DBA8-4FAB-A98B-809E53D3EB9D&#038;cn=DownloadFile">downloading the source code</a> and running it locally (it is pre-compiled in the archive).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pannonrex.com/2006/04/03/not-all-browsers-are-made-equal-in-speed/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Call for Standard: speeding up AJAX application startup with caching</title>
		<link>http://www.pannonrex.com/2006/03/13/call-for-standard-speeding-up-ajax-application-startup-with-caching/</link>
		<comments>http://www.pannonrex.com/2006/03/13/call-for-standard-speeding-up-ajax-application-startup-with-caching/#comments</comments>
		<pubDate>Mon, 13 Mar 2006 02:10:58 +0000</pubDate>
		<dc:creator>piprog</dc:creator>
				<category><![CDATA[AJAX]]></category>
		<category><![CDATA[Backbase]]></category>
		<category><![CDATA[Morfik]]></category>
		<category><![CDATA[OpenLaszlo]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[WebOS]]></category>

		<guid isPermaLink="false">http://www.pannonrex.com/blog/?p=19</guid>
		<description><![CDATA[I will present a very simple idea, possibly already somewhat doable with current technology (but enhancements to current technology would make it more efficient and robust). The problem is: AJAX applications (whether in OpenLaszlo, Backbase, Morfik, or anything else) have a sizeable browser-side code base that has to be downloaded each time an application is [...]]]></description>
			<content:encoded><![CDATA[<p>I will present a very simple idea, possibly already somewhat doable with current technology (but enhancements to current technology would make it more efficient and robust). The problem is: AJAX applications (whether in OpenLaszlo, Backbase, Morfik, or anything else) have a sizeable browser-side code base that has to be downloaded each time an application is accessed.</p>
<p><span id="more-19"></span>It is a considerable burden on the user: she/he has to wait for the code to download and depending on her/his subscription this also decreases the quota she/he has for the month or costs money (e.g. for mobile users). Bad for the application hosting company too: needs huge resources to transfer material that virtually does not change for months and can be comparable in size to the actual data that has to be transferred. This is also bad for the whole Internet/intranet networking infrastructure as well because of the traffic. I see this one of the biggest issues in the proliferation of AJAX/smart client applications.</p>
<p>What can we do to enhance this situation? Let&#8217;s build a fundamental component of the WebOS: the standard of application caching in the browser (WOSTOC). Browser companies and AJAX framework vendors should work out a common standard for partitioning the code (and auxiliary items like images, sound files, etc.) for applications so that code should be easy for the browser to identify and cache as long as it is not changed.</p>
<p>(As a side note: for many Web 2.0/WebOS application frameworks, the browser will become the virtual machine running JavaScript as the common code base; Morfik&#8217;s novelty is recognizing this and going one logical step forward: using JavaScript as the intermediate language/machine code to which it synthesizes form a &#8220;traditional&#8221; high level language.)</p>
<p>We should avoid two common problems from the past: DLL hell and security issues.</p>
<p>We get to DLL hell if two applications try to share a common library but of different versions. One of the applications will fail due to incompatibilities of the newly installed library code. To avoid this, we should make sure that code is not shared among applications.</p>
<p>There may be several security issues. One is IP protection: the code should be transferred and stored in an obfuscated manner so that reverse engineering and tampering with is made more difficult.</p>
<p>Another related security issue is making sure that tampering with is detected and rectified: the browser should ask for a hash/fingerprint for each file it needs to download and check with its local copy whether the fingerprint matches, and if not, should re-download the complete code. This way we could also get automatic updates for free.</p>
<p>Additional security issues should be uncovered and addressed too.</p>
<p>Using tokenization as part of the obfuscation could also help in speeding up the execution of the code (backward browser compatibility is an issue, though).</p>
<p>We should define this new standard in a compatible way: browsers that do not support the WOSTOC protocol would see the applications as they see them now, probably a bit better structured (and thus even their limited caching abilities would work better).</p>
<p>What is the difference between WOSTOC and current caching technologies in the browsers? Technically virtually nothing, and that is good. Browse developers and application framework developers should agree on a common protocol, examine and iron out security issues and application framework developers should make sure that the applications are well partitioned so that RTL code can be easily cached, application code regularly updated as needed, and dynamic application data is excluded from the overhead of caching checks.</p>
<p>In summary, we would get to a much more responsive web experience with much less load on the infrastructure and better performance on the client, too. Since  all contemporary browsers already support caching and most of the protocol is more an organizational/standardization issue than a technical one, WOSTOC 1.0 could be defined and implemented very quickly.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pannonrex.com/2006/03/13/call-for-standard-speeding-up-ajax-application-startup-with-caching/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OpenLaszlo on DHTML wheels</title>
		<link>http://www.pannonrex.com/2006/03/09/openlaszlo-on-dhtml-wheels/</link>
		<comments>http://www.pannonrex.com/2006/03/09/openlaszlo-on-dhtml-wheels/#comments</comments>
		<pubDate>Thu, 09 Mar 2006 16:53:55 +0000</pubDate>
		<dc:creator>piprog</dc:creator>
				<category><![CDATA[AJAX]]></category>
		<category><![CDATA[Backbase]]></category>
		<category><![CDATA[Morfik]]></category>
		<category><![CDATA[OpenLaszlo]]></category>
		<category><![CDATA[Usability/HCI]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[WebOS]]></category>

		<guid isPermaLink="false">http://www.pannonrex.com/blog/?p=17</guid>
		<description><![CDATA[I suppose you know both OpenLaszlo and Backbase if you know Morfik or are serious about Web 2.0. The big news is that OpenLaszlo, which was traditionally a Flash-based client, now has (in alpha stage) support for a DHTML runtime. Check out their LZPiX demo &#8212; it is awesome (they have it both in Flash [...]]]></description>
			<content:encoded><![CDATA[<p>I suppose you know both <a target="_blank" href="http://www.pannonrex.com/blog/wp-admin/www.openlaszlo.org">OpenLaszlo</a> and <a target="_blank" href="http://www.pannonrex.com/blog/wp-admin/www.backbase.com">Backbase</a> if you know Morfik or are serious about Web 2.0. The big news is that OpenLaszlo, which was traditionally a Flash-based client, now has (in alpha stage) support for a DHTML runtime. Check out their LZPiX demo &#8212; it is awesome (they have it both in <a target="_blank" href="http://labs.openlaszlo.org/lzpix-flash">Flash</a> and <a target="_blank" href="http://labs.openlaszlo.org/lzpix-dhtml">DHTML</a>; for the DHTML version Fireforx 1.5 is required as of this writing).</p>
<p>While Morfik is a complete integrated development environment for web applications (xApps in their parlance) both Backbase and OpenLaszlo are &#8220;only&#8221; client-side UI toolkits, but very capable ones. Morfik will have to add some eye-candy, too. Hmmm&#8230; stay tuned ;-)</p>
<p>I have been developing interactive software for twenty years now and it is encouraging for me to see and experience how all this new Web 2.0 stuff is advancing usability. Of course all these technologies are only tools that can be used for good or wrong, but there are a lot of new applications developed with these tools that are really pleasant and easy to use (KISS, anyone?).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pannonrex.com/2006/03/09/openlaszlo-on-dhtml-wheels/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
