<?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>Jozef Chúťka&#039;s blog &#187; Technologies</title>
	<atom:link href="http://blog.yoz.sk/category/technologies/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.yoz.sk</link>
	<description>My life, my work</description>
	<lastBuildDate>Tue, 31 Jan 2012 12:40:53 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Flex + ( Ant &#124; Maven ) + Sonar</title>
		<link>http://blog.yoz.sk/2011/12/flex-ant-maven-sonar/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=flex-ant-maven-sonar</link>
		<comments>http://blog.yoz.sk/2011/12/flex-ant-maven-sonar/#comments</comments>
		<pubDate>Fri, 02 Dec 2011 16:36:20 +0000</pubDate>
		<dc:creator>Jozef Chúťka</dc:creator>
				<category><![CDATA[Flash / Flex]]></category>
		<category><![CDATA[Technologies]]></category>
		<category><![CDATA[ant]]></category>
		<category><![CDATA[FlexPMD]]></category>
		<category><![CDATA[maven]]></category>
		<category><![CDATA[sonar]]></category>

		<guid isPermaLink="false">http://blog.yoz.sk/?p=3105</guid>
		<description><![CDATA[The title may sound like there are two possible ways how you can have your source code analyzed and published to sonar, but you better do not rejoice prematurely. After spending couple of hours trying to figure out how to make it work using ant I may have hit some nice articles, however sonar-ant-task seems [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://blog.yoz.sk/wp-content/uploads/sonar.jpg" alt="" title="sonar" width="200" height="100" class="alignleft size-full wp-image-3115" /></p>
<p>The title may sound like there are two possible ways how you can have your source code analyzed and published to sonar, but you better do not rejoice prematurely. After spending couple of hours trying to figure out how to make it work using ant I may have hit some nice articles, however <a href="http://docs.codehaus.org/display/SONAR/Analyse+with+Ant+Task">sonar-ant-task</a> seems to have major issues with sonar version 2.8. The solution is maven!</p>
<p><span id="more-3105"></span></p>
<p>First of all, for &#8220;flex language&#8221; sonar uses <a href="http://opensource.adobe.com/wiki/display/flexpmd/FlexPMD">FlexPMD</a>. Sonar plugin/task should be able to take your source code and evaluate based on FlexPMD dependency. Unfortunately this thing is never done for you in case of sonar-ant-task. Even there is a simple way described you can <a href="http://opensource.adobe.com/wiki/display/flexpmd/How+to+invoke+FlexPMD">invoke FlexPMD from Ant</a> (you have to do slight changes for latest FlexPMD version), there is no way sonar 2.8 let you pass these results into its database. Ant way was a no-go for me.</p>
<p>Later I realized we already have some flex projects on sonar, but these get there using maven, while whole projects has been built by maven (<a href="http://flexmojos.sonatype.org/">flex-mojos</a>). And as Sonar was initialy developed for maven, it is integrated really nicely. Even my current project is not being built by maven, there is a way to use minimal configuration just for sonar. It appeared there are already some <a href="http://blog.obecto.com/2011/07/improve-your-code-using-sonar-with-flex-plugin/">maven &#8211; sonar config</a> examples, all I needed to do in addition to this was adding pluginManagement, while we are not using latest maven version:</p>
<pre class="brush: xml; title: ; notranslate">&lt;build&gt;
	&lt;sourceDirectory&gt;...&lt;/sourceDirectory&gt;
	&lt;pluginManagement&gt;
		&lt;plugins&gt;
			&lt;plugin&gt;
				&lt;groupId&gt;org.codehaus.mojo&lt;/groupId&gt;
				&lt;artifactId&gt;sonar-maven-plugin&lt;/artifactId&gt;
				&lt;version&gt;1.0-beta-2&lt;/version&gt;
			&lt;/plugin&gt;
		&lt;/plugins&gt;
	&lt;/pluginManagement&gt;
&lt;/build&gt;</pre>
<p>Finally, the day was saved thanks to maven. So my preference to use maven or ant is 50:50 because, even if ant seems much easier to use, there are some thing that you just can not do for now.</p>
<p>Where to go from here:</p>
<ul>
<li><a href="http://docs.codehaus.org/display/SONAR/Frequently+Asked+Questions#FrequentlyAskedQuestions-Errorresolvingversionfor%27org.codehaus.mojo%3Asonarmavenplugin%27%3APluginrequiresMavenversion3.0">Frequently Asked Questions</a></li>
<li><a href="http://docs.codehaus.org/display/SONAR/Analyse+with+Ant+Task">Analyse with Ant Task</a></li>
<li><a href="http://stackoverflow.com/questions/6452689/sonar-ant-task">Sonar ANT Task &#8211; [closed]</a></li>
<li><a href="http://old.nabble.com/Re%3A-Reusing-Flexcover-reports-with-Sonar-Ant-(No-Maven-Repo)-p32115659.html">Reusing Flexcover reports with Sonar/Ant (No Maven Repo)</a></li>
<li><a href="http://comments.gmane.org/gmane.comp.java.sonar.general/11209">Reusing Flexcover reports with Sonar/Ant (No Maven Repo)</a></li>
<li><a href="http://jira.codehaus.org/browse/SONARPLUGINS-959">Reduce dependency on Maven</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.yoz.sk/2011/12/flex-ant-maven-sonar/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adobe Melrose &#8211; The Place To Sell Your Apps</title>
		<link>http://blog.yoz.sk/2010/09/adobe-melrose-the-place-to-sell-your-apps/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=adobe-melrose-the-place-to-sell-your-apps</link>
		<comments>http://blog.yoz.sk/2010/09/adobe-melrose-the-place-to-sell-your-apps/#comments</comments>
		<pubDate>Fri, 24 Sep 2010 10:14:54 +0000</pubDate>
		<dc:creator>Jozef Chúťka</dc:creator>
				<category><![CDATA[AIR]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Technologies]]></category>
		<category><![CDATA[AppUp]]></category>
		<category><![CDATA[certificate]]></category>
		<category><![CDATA[Marketplace]]></category>
		<category><![CDATA[Melrose]]></category>

		<guid isPermaLink="false">http://blog.yoz.sk/?p=2363</guid>
		<description><![CDATA[This post is about Adobe Melrose &#8211; the new Lab project from Adobe, and my first contact with it. I hope to be able to continuously update this article so you can get perfect view of what is going on when you decide to use Melrose. Lets begin with public static const MELROSE: Melrose (codename) [...]]]></description>
			<content:encoded><![CDATA[<p>This post is about <a href="http://labs.adobe.com/technologies/melrose/">Adobe Melrose</a> &#8211; the new Lab project from Adobe, and my first contact with it. I hope to be able to continuously update this article so you can get perfect view of what is going on when you decide to use Melrose. Lets begin with public static const MELROSE: <img src='http://blog.yoz.sk/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<blockquote><p>Melrose (codename) enables developers and publishers to distribute and make money with Adobe® AIR® applications through application stores. Melrose provides a repository that distributes applications to multiple application stores so that publishers can reach millions of users. <a href="http://www.appup.com">Intel AppUp</a> Center and the <a href="http://www.adobe.com/cfusion/marketplace/">Adobe AIR Marketplace</a> are the first two storefronts available in Melrose. Melrose also provides analytics that let publishers measure success of their applications.</p></blockquote>
<p><span id="more-2363"></span></p>
<h2>onBoard</h2>
<p>At first, I decided to publish my <a href="http://onboard.yoz.sk/">onBoard</a> project. The <a href="http://onboard.yoz.sk/air/">AIR</a> version was already finished and working so it was not much to do before publishing.</p>
<p><strong>September 18, 2010</strong>: Melrose Labs webpage directed me to <a href="https://www.adobe.com/devnet/flashplatform/services/melrose/">Developer Marketplace</a>, where the registration was required. There is a lot of contact, business and other information required. After few minutes I managed to fill everything correctly and the account was created.</p>
<p>In Melrose Developer Market in download section I signed for free certificate for my AIR apps and soon after I have received a copy of an email being sent from Adobe to Adobe with subject &#8220;Signing Certificate for Melrose&#8221;</p>
<blockquote><p>Signing Certificate<br />
Get a free signing certificate: During debugging it is ok to have your app self-signed but for release mode, it will need to be signed by a trusted authority. If you do not have a trusted certificate, Adobe will provide you with one.</p></blockquote>
<p><strong>September 20, 2010</strong>: I have received an e-mail from Adobe The Melrose Team containing free coupon code for my certificate.</p>
<blockquote><p>There&#8217;s a catch! By accepting the complimentary certificate, you agree to publish your signed AIR application to Melrose within 30 days after receiving the certificate.</p></blockquote>
<p><strong>September 21, 2010</strong>: In order to obtain certificate I was directed to <a href="http://www.chosensecurity.com/tc-publisher-id-for-adobe-air">PGP TrustCenter</a>, where I clicked &#8220;Buy For Individual Developer&#8221; button. Following the Adobe e-mail instruction I have chosen 1 year certificate at the price $199.00. Next some contact information filled and in final step I applied coupon code (the one from Adobe) insted of paymen. Nice and smooth, registration for certificate successfull. That turnet to be, of course, not enough to get the certificate&#8230; </p>
<p>In a few seconds I have received an e-mail from trustcenter.de containing all the necessary info to finish my certificate request:</p>
<blockquote><p>To check the statements in your request we need the following documents (if not already presented):<br />
1. A written request confirmation (see attachment), signed by the applicant.<br />
2. A copy of a well-recognized form of government-issued photographic identification with signature, such as a passport or drivers licence of the applicant.<br />
Please fax or send these documents to&#8230;</p></blockquote>
<p>&#8230; + another e-mail containing PIN (password) for my certificate.</p>
<p>So I filled my name and signature on the attached document, and faxed the paper with my ID (driving license) on the empty footer part of the paper. After few hours, new e-mail arrived, now with attached certificate file (.p12) and alternative download link.</p>
<blockquote><p>The download link for the private key and certificate will be available 60 days only, in case of a later loss of private key a new certificate has to be requested and paid for.</p></blockquote>
<p>Certificate activation was smooth (do not forget to use your PIN)</p>
<blockquote><p>You need to double click the file in order to import the certificate. Please also enter this PIN when you will be asked to &#8220;Type the password for the private key&#8221; using the Certificate Import Wizard.</p></blockquote>
<p><strong>September 23, 2010</strong>: Finally, some time for programming final application modification. Before you can upload an AIR application into Developer Marketplace, you have to download licensing class.</p>
<blockquote><p>Licensing SWC: To enable the sale of your AIR app, you need to add the licensing SWC to your application. The licensing SWC manages purchases and trials for your app and can be found in the SDK.</p></blockquote>
<p>Add downloaded .swc file into your project library path (flash builder) and add a few lines of code into your main application init handler. Read <a href="http://blog.yoz.sk/2010/09/quick-tip-what-is-my-unique-32-hex-num/">What is MY_UNIQUE_32_HEX_NUM?</a></p>
<pre class="brush: as3; title: ; notranslate">import com.adobe.licensing.LicenseManager;

private static const MY_UNIQUE_32_HEX_NUM:String = &quot;YOUR-UNIQUE-HEX&quot;;
private static var UPDATE_MODE:Boolean = true;
private static var DEBUG_MODE:Boolean = false;

// &lt;s:WindowedApplication applicationComplete=&quot;init()&quot;&gt;
public function init():void
{
    var licenseManager:LicenseManager = new LicenseManager();
    licenseManager.checkLicense(this, MY_UNIQUE_32_HEX_NUM, UPDATE_MODE, DEBUG_MODE);
    ...
    // here continues the original code</pre>
<p>That was all what was necessary updates for my application, so I have released a <strong>new AIR</strong> file with my <strong>new valid certificate</strong> and was ready to publish it to Developer Marketplace. Upload was smooth, but a lot of additional content was required in order to make final submission. E.g.: descriptions, pricing settings, icons, marketplace image, screenshot &#8230; done and submited</p>
<p>I have chosen the free licensing variant for my app.</p>
<p><strong>September 24, 2010</strong>: I have received &#8220;status APPROVED&#8221; for my application by e-mail from The Melrose Team. The approval process has taken about 8 hours from my submission. That is very fast. <del datetime="2010-09-28T08:50:49+00:00">Now I wonder where/when my application appears, because I can not find my app on Adobe AIR Marketplace for now (September 24, 2010)</del>.</p>
<p>I have also discovered there is a different button to submit my application to Intel AppUp, under Distribution tab for my application. Clicked. We will see next days.</p>
<p><strong>September 25, 2010</strong>: I am eager to know where/when my application will appear, sending question to melrose support using support tab in Melrose application.</p>
<blockquote><p>Hello, it seems like my application onBoard has been successfuly approved for marketplace. When or where will my application appear?<br />
Jozef Chutka</p></blockquote>
<p><strong>September 27, 2010</strong>: Two kindly and personal responses (they know my blog, and refer to this article <img src='http://blog.yoz.sk/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  ) from support, instructs me to resubmit my application into AppUp with correct content rating. I do so, however the <a href="http://appdeveloper.intel.com/b/AgR/DesktopModules/AppStoreInfo/ContentRating.aspx">Intel Rating Guidelines</a> redirects me to password protected webpage on intel.com, but I do not have an account there.</p>
<p><strong>September 28, 2010</strong>: What a nice surprise today morning! <a href="http://www.adobe.com/cfusion/marketplace/index.cfm?event=marketplace.offering&#038;offeringid=19192&#038;marketplaceid=1">onBoard application finally appears on Adobe AIR Marketplace</a> under <a href="http://www.adobe.com/cfusion/marketplace/index.cfm?event=marketplace.home&#038;marketplaceid=1">&#8220;Most Recent&#8221; tab</a>, however still not available via Marketplace search form. Now I am waiting for AppUp team to approve and publish my application.</p>
<p>A short sum up of my application live cycle: submitted + 8 hours: approved + 4 days: available for public downloads.</p>
<p>I have fixed some minor bugs in my application and resubmitted the new version (tip or myself upload button appears in home section upper left corner).</p>
<p><strong>October 2, 2010</strong>: Just after four long days after resubmitting newer version I have received an e-mail from Melrose Team saying:</p>
<blockquote><p>Thank you for submitting onBoard (version 2.06). We have reviewed your application but cannot accept it because of the following concerns&#8230;</p></blockquote>
<p>&#8230; now thats cool, based on my application nature, how am I supposed to moderate it all? Does someone moderate twitter content and applications, does someone moderate facebook content or rss readers software? How can I moderate human generated content (drawn in this case)? This makes no sense to me, together with the previous approval (September 24), how does Melrose approval process works when it once approves and once not the same thing?</p>
<p>It has been 5 days now, since I submitted the app into AppUp with correct rating, and I still have no response from Intel <img src='http://blog.yoz.sk/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' />  + Intel Rating Guidelines page still password protected&#8230;</p>
<p><strong>October 23, 2010</strong>: A few things suddenly changed, Adobe Melrose changed its application desing. And it seems like AppUp started to accept AIR applications just by these days, validation pending for onBoard.</p>
<p><strong>October 25, 2010</strong>: Adobe Melrose went public, changing its name to <a href="http://www.adobe.com/devnet/inmarket.html">Adobe InMarket</a>.</p>
<p><strong>October 27, 2010</strong>: First echo from Intel AppUp, I have just received an e-mail saying:</p>
<blockquote><p>Congratulations, your application onBoard (version 2.08) has been approved for Intel AppUp(SM)! Your application is now available for download or sale.<br />
To manage your application, please go to: <a href="http://www.adobe.com/go/inmarketportal">http://www.adobe.com/go/inmarketportal</a></p></blockquote>
<p>&#8230; it would be great, but I am still unable to find it on <a href="http://www.appup.com/">AppUp</a>.</p>
<p><strong>November 4, 2010</strong>: Great news, onBoard application really is available on AppUp market, however not on <a href="http://www.appup.com">appup.com</a> (event after week). Sadly, I am unable to install AppUp Market application on my windows XP. Vetting process on AppUp now takes 1-2 days for your application updates.</p>
<h2>More Stuff</h2>
<p>I made a few <a href="http://twitter.com/jozefchutka">tweets</a> about this Melrose / AppUp stuff, and suddenly I got replied from @<a href="http://twitter.com/bobduffy">bobduffy</a>. This guy is technology evangelist in Intel, and I think there is a potential he can respont to some of our AppUp questions.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.yoz.sk/2010/09/adobe-melrose-the-place-to-sell-your-apps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Quick Tip: How To Print From Google Wave</title>
		<link>http://blog.yoz.sk/2010/08/quick-tip-how-to-print-from-google/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=quick-tip-how-to-print-from-google</link>
		<comments>http://blog.yoz.sk/2010/08/quick-tip-how-to-print-from-google/#comments</comments>
		<pubDate>Tue, 24 Aug 2010 10:05:10 +0000</pubDate>
		<dc:creator>Jozef Chúťka</dc:creator>
				<category><![CDATA[Technologies]]></category>
		<category><![CDATA[googlewave]]></category>
		<category><![CDATA[print]]></category>
		<category><![CDATA[wave]]></category>

		<guid isPermaLink="false">http://blog.yoz.sk/?p=2228</guid>
		<description><![CDATA[Google Wave is an online software application formerly developed by Google. Soon after you get used to this new collaboration tool, you may leave behind old spammy e-mails used for communication. While creating waves is easy and intuitive, there is no button to print the wave . Though, there is a chance. Print tip originally [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://blog.yoz.sk/wp-content/uploads/googlewave.png" alt="" title="googlewave" width="200" height="100" class="alignleft size-full wp-image-2233" /></p>
<p>Google Wave is an online software application formerly developed by Google. Soon after you get used to this new collaboration tool, you may leave behind old spammy e-mails used for communication. While creating waves is easy and intuitive, there is no button to print the wave <img src='http://blog.yoz.sk/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /> . Though, there is a chance. <a href="http://www.googlewaveinfo.com/200910/how-to-print-from-google-wave/">Print tip originally posted</a> in comments on <a href="http://www.googlewaveinfo.com/">googlewaveinfo.com</a>. In order to make this work, you have to run chrome with custom user-agent (iPhone 3).</p>
<p><span id="more-2228"></span></p>
<ol>
<li>run
<pre class="brush: plain; title: ; notranslate">chrome.exe -user-agent=&quot;Mozilla/5.0 (iPhone; U; CPU iPhone OS 3_0 like Mac OS X; en-us) AppleWebKit/528.18 (KHTML, like Gecko) Version/4.0 Mobile/7A341 Safari/528.16&quot;</pre>
</li>
<li>fire up <a href="https://wave.google.com/wave/">google wave</a></li>
<li>click ‘Go ahead’</li>
<li>select wave</li>
<li>print using browser’s print page functionality </li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://blog.yoz.sk/2010/08/quick-tip-how-to-print-from-google/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Facebook now with OAuth and Open Graph (update)</title>
		<link>http://blog.yoz.sk/2010/04/facebook-now-with-oauth-and-open-graph/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=facebook-now-with-oauth-and-open-graph</link>
		<comments>http://blog.yoz.sk/2010/04/facebook-now-with-oauth-and-open-graph/#comments</comments>
		<pubDate>Thu, 22 Apr 2010 09:11:20 +0000</pubDate>
		<dc:creator>Jozef Chúťka</dc:creator>
				<category><![CDATA[Facebook]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Technologies]]></category>
		<category><![CDATA[F8]]></category>
		<category><![CDATA[facebook api]]></category>
		<category><![CDATA[OAuth]]></category>
		<category><![CDATA[Open Graph]]></category>

		<guid isPermaLink="false">http://blog.yoz.sk/?p=1462</guid>
		<description><![CDATA[Few days before while I was working on TwitterLogger Class for ActionScript 3 I discovered OAuth &#8211; an open protocol to allow secure API authorization . While reading all the stuff about OAuth and PHP SDKs, I noticed one statement somewhere (can&#8217;t find it nowhere) that Facebook was in fact using OAuth for its Facebook [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://blog.yoz.sk/wp-content/uploads/openGraph-200x100.png" alt="" title="openGraph" width="200" height="100" class="alignleft size-medium wp-image-1474" /></p>
<p>Few days before while I was working on <a href="http://blog.yoz.sk/2010/04/twitterlogger-class-to-full-twitter-api-access-from-actionscript-3/">TwitterLogger Class for ActionScript 3</a> I discovered <a href="http://oauth.net/">OAuth &#8211; an open protocol to allow secure API authorization</a> . While reading all the stuff about OAuth and PHP SDKs, I noticed one statement somewhere (can&#8217;t find it nowhere) that Facebook was in fact using OAuth for its Facebook Connect tool but some derived version. This has now changed! Facebook is standardizing communication and authorization by introducing <strong>Open Graph</strong> and <strong>OAtuh 2.0</strong>.</p>
<p><span id="more-1462"></span></p>
<p><a href="http://www.facebook.com/f8">F8</a> is a Facebook conference to bring together the developers and entrepreneurs who are building the social Web by moving fast, taking risks, and hacking traditional systems. In <a href="http://mashable.com/2010/04/21/facebook-f8-2/">April 21, 2010, in F8 conference</a> a few interesting things have been mentioned about the new Facebook API. Facebook CEO Mark Zuckerberg announced that the Facebook Connect brand would be eliminated as part of the launch of <a href="http://mashable.com/2010/04/21/facebook-open-graph/">Open Graph</a>.</p>
<p>Update (May 5, 2010): I have created <a href="http://blog.yoz.sk/2010/05/facebook-graph-api-and-oauth-2-and-flash/"><strong>Facebook Graph API &#038; OAuth 2.0 &#038; Flash</strong></a> &#8211; FacebookOAuthGraph ActionScript 3 class to use with OAuth 2.0 and Graph</p>
<h3>Open Graph</h3>
<blockquote><p>The Open Graph API will allow any page on the Web to have all the features of a Facebook Page – users will be able to become a Fan of the page, it will show up on that user’s profile and in search results, and that page will be able to publish stories to the stream of its fans. (<a href="http://wiki.developers.facebook.com/index.php/Roadmap_Open_Graph_API">Facebook Roadmap Open Graph API</a>)</p></blockquote>
<p><a href="http://developers.facebook.com/docs/opengraph">Open Graph protocol</a> also introduces &lt;meta&gt; tags, that allows you to specify structured information about your web page when used with like button etc.</p>
<p>Here are some url examples of <a href="http://developers.facebook.com/docs/reference/api/">Graph API</a> usage:</p>
<pre class="brush: plain; title: ; notranslate">http://graph.facebook.com/[USERID]          - user’s graph for your app
http://graph.facebook.com/[USERID]/friends  - access to user’s friends
http://graph.facebook.com/[USERID]/likes    - access user’s likes</pre>
<p>By default these requests return JSON objects, but I guess there is a parameter to be passed to get xml instead (my guess).</p>
<p>Cool thing about this is there is a benevolent crossdomain file on <a href="http://graph.facebook.com/crossdomain.xml">http://graph.facebook.com/crossdomain.xml</a>:</p>
<pre class="brush: xml; title: ; notranslate">&lt;cross-domain-policy&gt;
    &lt;allow-access-from domain=&quot;*&quot;/&gt;
    &lt;site-control permitted-cross-domain-policies=&quot;master-only&quot;/&gt;
&lt;/cross-domain-policy&gt;</pre>
<p>Some of those returns &#8220;OAuthAccessTokenException&#8221; thats where new OAuth comes in scene.</p>
<h3>OAuth 2.0</h3>
<p>Second thing noticed was that the company is standardizing the authorization via the <a href="http://github.com/theRazorBlade/draft-ietf-oauth/raw/master/draft-ietf-oauth.txt">OAuth 2.0 standard</a>. The important thing here is, <strong>OAuth is already available for all existing Facebook APIs</strong>, and there are <a href="http://developers.facebook.com/docs/authentication/">multiple methods to get authenticated with OAuth in Facebook</a>. Check out the <a href="http://github.com/facebook/php-sdk/">PHP example code example code for authentication</a> on GitHub. Difference to previous connect is that sessions may last longer than 24 hours.</p>
<p>Lets hope there will be new version of <a href="http://wiki.developers.facebook.com/index.php/Flash/ActionScript">Facebook ActionScript API</a> released soon enough with all these new features&#8230;</p>
<p>Where to go from here:</p>
<ul>
<li><a href="http://developers.facebook.com/docs/authentication/">Facebook Authentication</a></li>
<li><a href="http://developers.facebook.com/docs/reference/api/">Graph API reference</a></li>
<li><a href="http://mashable.com/2010/04/21/open-graph-privacy/">Facebook Open Graph: What it Means for Privacy</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.yoz.sk/2010/04/facebook-now-with-oauth-and-open-graph/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Apparat (TAAS) framework to optimize swf</title>
		<link>http://blog.yoz.sk/2009/10/apparat-taas-framework-to-optimize-swf/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=apparat-taas-framework-to-optimize-swf</link>
		<comments>http://blog.yoz.sk/2009/10/apparat-taas-framework-to-optimize-swf/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 09:33:38 +0000</pubDate>
		<dc:creator>Jozef Chúťka</dc:creator>
				<category><![CDATA[Flash / Flex]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Technologies]]></category>
		<category><![CDATA[Apparat]]></category>
		<category><![CDATA[optimization]]></category>
		<category><![CDATA[swc]]></category>
		<category><![CDATA[swf]]></category>
		<category><![CDATA[TAAS]]></category>

		<guid isPermaLink="false">http://blog.yoz.sk/?p=202</guid>
		<description><![CDATA[Joa Ebert is a Flash developer with a focus on ActionScript 3. He has developed several tools helping to optimize daily workflow. Most projects have been released as open-source. The most important one is Apparat / TAAS project: Apparat is an open source framework written in Java to optimize ABC, SWC and SWF files. The [...]]]></description>
			<content:encoded><![CDATA[<p>Joa Ebert is a Flash developer with a focus on ActionScript 3. He has developed several tools helping to optimize daily workflow. Most projects have been released as open-source. The most important one is Apparat / TAAS project:</p>
<p><a href="http://code.google.com/p/apparat/">Apparat</a> is an open source framework written in Java to optimize ABC, SWC and SWF files. The core of Apparat are its three file formats and their implementation:</p>
<ul>
<li>ABC (read and write ABC files, bytecode analysis and tools)</li>
<li>SWC (read and write SWC files)</li>
<li>SWF (read and write SWF files, tag implementations)</li>
</ul>
<p><strong>TAAS</strong> is a stackless representation of the ActionScriptBytecode. Read <a href="http://blog.joa-ebert.com/2009/09/01/first-results-of-taas/">first results of TAAS</a>, and see application <a href="http://www.joa-ebert.com/swf/index.php?swf=taas/b00">before</a> and <a href="http://www.joa-ebert.com/swf/index.php?swf=taas/a00">after</a> optimization.</p>
<p><span id="more-202"></span></p>
<blockquote><p>The TAAS compiler is different from the ActionScript compiler since its input is not ActionScript source code but already compiled SWF or SWC files. Just like the haXe compiler can output AS3 instead of a SWF the TAAS compiler can do the same. Now if you add one and one together you see that the TAAS compiler can be used as a very strong decompiler. My own tests have shown that it will work flawlessly where other commercial decompilers output rubbish. Since the compiler behaves like the Flash Player it will “execute” the bytecode in order to parse it which means it has a very highlevel understanding of the structure inside the SWF. (<a href="http://blog.joa-ebert.com/2009/09/29/taas-as-a-decompiler/">Joa Ebert</a>)</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://blog.yoz.sk/2009/10/apparat-taas-framework-to-optimize-swf/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Pixel Bender</title>
		<link>http://blog.yoz.sk/2009/10/pixel-bender/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=pixel-bender</link>
		<comments>http://blog.yoz.sk/2009/10/pixel-bender/#comments</comments>
		<pubDate>Sat, 10 Oct 2009 15:33:19 +0000</pubDate>
		<dc:creator>Jozef Chúťka</dc:creator>
				<category><![CDATA[Flash / Flex]]></category>
		<category><![CDATA[Technologies]]></category>

		<guid isPermaLink="false">http://blog.yoz.sk/?p=180</guid>
		<description><![CDATA[The Adobe® Pixel Bender™ technology delivers a common image and video processing infrastructure which provides automatic runtime optimization on heterogeneous hardware. You can use the Pixel Bender kernel language to implement image processing algorithms (filters or effects) in a hardware-independent manner. The Pixel Bender graph language is an XML-based language for combining individual pixel-processing operations [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>The Adobe® Pixel Bender™ technology delivers a common image and video processing infrastructure which provides automatic runtime optimization on heterogeneous hardware. You can use the Pixel Bender kernel language to implement image processing algorithms (filters or effects) in a hardware-independent manner. The Pixel Bender graph language is an XML-based language for combining individual pixel-processing operations (kernels) into more complex Pixel Bender filters. (<a href="http://labs.adobe.com/technologies/pixelbender/">adobe</a>)</p></blockquote>
<p><a href="http://blog.yoz.sk/wp-content/uploads/pixelbender.jpg"><img src="http://blog.yoz.sk/wp-content/uploads/pixelbender-300x199.jpg" alt="pixelbender" title="pixelbender" width="200" height="132" class="alignleft size-medium wp-image-194" /></a></p>
<p>Sounds good? Pixel Bender also alows you to do audio / video processing, and even raw bytes procesing, both are incredibly fast when it comes to compare with ActionScript processing. Pixel Bender comes with its own SDK, but is not very handy. You should rather give a try to <a href="http://blog.joa-ebert.com/pbdt/">PBDT</a> (Eclipse plug-in).</p>
<p><span id="more-180"></span></p>
<p>Worth to mention facts are: PB does not offer many tools to work with, there are just few methods, calculations and object types, but it seems to be enough to do all required data processing. Learning curve is extremely steep. Soon you get familiar with language, but to do some advanced stuff it will take a lot of effort. PB is supported by multiple Adobe applications.</p>
<p>When it comes to flash, another important thing is, you can run your processings asynchronously. Flash Player 10 is required. Once a Pixel Bender shader is available in ActionScript as a Shader object, it can be used in several ways:</p>
<ul>
<li>Shader drawing fill: The shader defines the fill portion of a shape drawn using the drawing api</li>
<li>Blend mode: The shader defines the blend between two overlapping display objects</li>
<li>Filter: The shader defines a filter that modifies the appearance of visual content</li>
<li>Stand-alone shader processing: The shader processing runs without specifying the intended use of the output. The shader can optionally run in the background, with the result is available when the processing completes. This technique can be used to generate bitmap data and also to process non-visual data.</li>
</ul>
<p>See pixel bender in action:</p>
<ul>
<li><a href="http://www.tsoin.com/asblog/documentation/PixelBenderGuide.pdf">Pixel Bender Guide</a></li>
<li><a href="http://help.adobe.com/en_US/ActionScript/3.0_ProgrammingAS3/WS6FCADA8A-C82B-4d55-89AC-63CA9DEFF9C8.html">Using a shader</a></li>
<li><a href="http://www.flashmagazine.com/tutorials/detail/using_pixel_bender_to_calculate_information/">Nice tutorial</a></li>
<li><a href="http://blogs.adobe.com/kevin.goldsmith/2009/08/pixel_bender_au.html">Pixel Bender audio processing</a></li>
</ul>
<p>Galleries:</p>
<ul>
<li><a href="http://www.adobe.com/go/pixelbender">Gallery</a></li>
<li><a href="http://www.derschmale.com/"> Gorgeous stuff</a></li>
<li><a href="http://www.subblue.com/projects/droste">Escher’s Droste Effect</a></li>
<li><a href="http://www.subblue.com/blog/2009/7/14/fractal_explorer">Fractals</a></li>
<li><a href="http://blog.richardolsson.se/blog/2008/11/animated-ripple-using-pixel-bender">Animated ripple</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.yoz.sk/2009/10/pixel-bender/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Alchemy (C and C++ in flash)</title>
		<link>http://blog.yoz.sk/2009/10/alchemy-c-and-c-in-flash/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=alchemy-c-and-c-in-flash</link>
		<comments>http://blog.yoz.sk/2009/10/alchemy-c-and-c-in-flash/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 10:14:44 +0000</pubDate>
		<dc:creator>Jozef Chúťka</dc:creator>
				<category><![CDATA[Flash / Flex]]></category>
		<category><![CDATA[Technologies]]></category>

		<guid isPermaLink="false">http://blog.yoz.sk/?p=134</guid>
		<description><![CDATA[Alchemy is a research project that allows users to compile C and C++ code that is targeted to run on the open source ActionScript Virtual Machine (AVM2). The purpose of this preview is to assess the level of community interest in reusing existing C and C++ libraries in Web applications that run on Adobe® Flash® [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>Alchemy is a research project that allows users to compile C and C++ code that is targeted to run on the open source ActionScript Virtual Machine (AVM2). The purpose of this preview is to assess the level of community interest in reusing existing C and C++ libraries in Web applications that run on Adobe® Flash® Player and Adobe AIR®. (<a href="http://labs.adobe.com/technologies/alchemy/">adobe</a>)</p></blockquote>
<p>This opens pretty huge space for developers to do some processing different way. C++ operations runs faster than ActionScript and what is even better you can run your processing asynchronously. Good job adobe!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.yoz.sk/2009/10/alchemy-c-and-c-in-flash/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Open Screen Project</title>
		<link>http://blog.yoz.sk/2009/10/open-screen-project/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=open-screen-project</link>
		<comments>http://blog.yoz.sk/2009/10/open-screen-project/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 09:42:04 +0000</pubDate>
		<dc:creator>Jozef Chúťka</dc:creator>
				<category><![CDATA[Flash / Flex]]></category>
		<category><![CDATA[Technologies]]></category>

		<guid isPermaLink="false">http://blog.yoz.sk/?p=133</guid>
		<description><![CDATA[The Open Screen Project is an industry-wide initiative, led by Adobe and backed by other industry leaders who all share one clear vision: Enable consumers to engage with rich Internet experiences seamlessly across any device, anywhere. (openscreenproject) This means, flash player will be installed on many different devices starting from phones, tvs,  tv tunners, game [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>The Open Screen Project is an industry-wide initiative, led by Adobe and backed by other industry leaders who all share one clear vision: Enable consumers to engage with rich Internet experiences seamlessly across any device, anywhere. (<a href="http://www.openscreenproject.org/">openscreenproject</a>)</p></blockquote>
<p><img class="alignleft size-full wp-image-157" title="openscreenproject" src="http://blog.yoz.sk/wp-content/uploads/openscreenproject.png" alt="openscreenproject" width="200" height="106" />This means, flash player will be installed on many different devices starting from phones, tvs,  tv tunners, game consolest etc., and will be used as primary user interface. Flash player will be hardware accelerated thnx to Nvidia, so animations will be really smooth. Project has started already and I am looking forward to the first devices on the market.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.yoz.sk/2009/10/open-screen-project/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>P2P Multicast in new Flash Player 10.1</title>
		<link>http://blog.yoz.sk/2009/10/p2p-multicast-in-new-flash-player-10-1/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=p2p-multicast-in-new-flash-player-10-1</link>
		<comments>http://blog.yoz.sk/2009/10/p2p-multicast-in-new-flash-player-10-1/#comments</comments>
		<pubDate>Thu, 08 Oct 2009 08:57:41 +0000</pubDate>
		<dc:creator>Jozef Chúťka</dc:creator>
				<category><![CDATA[Flash / Flex]]></category>
		<category><![CDATA[Technologies]]></category>
		<category><![CDATA[P2P]]></category>

		<guid isPermaLink="false">http://blog.yoz.sk/?p=110</guid>
		<description><![CDATA[Flash Player 10.1 announced important addition to the RTMFP protocol. Finally! Just imagine all these online p2p tv-s, flash &#8220;torrents&#8221; etc&#8230; Ubercool More info about flash player 10.1 here. Groups and Multicast. Groups rapidly simplify the process of connecting peers together. You just define which group you want to join and don’t have to maintain [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_112" class="wp-caption alignleft" style="width: 204px"><img class="size-full wp-image-112" title="p2p multicast" src="http://blog.yoz.sk/wp-content/uploads/p2pmulticast.png" alt="p2p multicast" width="194" height="150" /><p class="wp-caption-text">p2p multicast</p></div>
<p>Flash Player 10.1 announced important addition to the RTMFP protocol. Finally! Just imagine all these online p2p tv-s, flash &#8220;torrents&#8221; etc&#8230; Ubercool <img src='http://blog.yoz.sk/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  <a href="http://www.adobe.com/devnet/logged_in/jchurch_flashplayer10.1.html">More info about flash player 10.1 here</a>.</p>
<p><strong>Groups and Multicast.</strong> Groups rapidly simplify the process of connecting peers together. You just define which group you want to join and don’t have to maintain particular connections between other peers. This is making your code so clean by using classes GroupSpecifier (define group), NetGroup (management and statistics) + new features in NetStream (multicast streaming). With end-to-end connections in FP 10.0 before you had to connect to each peer separately, which was quite difficult mechanism to maintain more than 2 peer communication. (<a href="http://www.flashrealtime.com/peer-to-peer-multicast-in-new-flash-player-101/">Tom Krcha</a>)</p>
<p><a href="http://blog.yoz.sk/2009/10/p2pmulticast/">If you are looking for P2P Multicast in Flash Player 10, see here.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.yoz.sk/2009/10/p2p-multicast-in-new-flash-player-10-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flash p2p applications RTMFP</title>
		<link>http://blog.yoz.sk/2009/10/flash-p2p-applications-rtmfp/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=flash-p2p-applications-rtmfp</link>
		<comments>http://blog.yoz.sk/2009/10/flash-p2p-applications-rtmfp/#comments</comments>
		<pubDate>Thu, 08 Oct 2009 08:44:28 +0000</pubDate>
		<dc:creator>Jozef Chúťka</dc:creator>
				<category><![CDATA[Flash / Flex]]></category>
		<category><![CDATA[Technologies]]></category>

		<guid isPermaLink="false">http://blog.yoz.sk/?p=106</guid>
		<description><![CDATA[This technology exist for a while now, I am just starting my blog and wanted to have an article about it&#8230; Adobe® Flash® Player 10 and Adobe AIR® 1.5 introduce a new communications protocol called the Real-Time Media Flow Protocol (RTMFP). The most important features of RTMFP include low latency, end-to-end peering capability, security and [...]]]></description>
			<content:encoded><![CDATA[<p>This technology exist for a while now, I am just starting my blog and wanted to have an article about it&#8230;</p>
<blockquote><p>Adobe® Flash® Player 10 and Adobe AIR® 1.5 introduce a new communications protocol called the Real-Time Media Flow Protocol (RTMFP). The most important features of RTMFP include low latency, end-to-end peering capability, security and scalability. These properties make RTMFP especially well suited for developing real-time collaboration applications by not only providing superior user experience but also reducing cost for operators. (<a href="http://labs.adobe.com/technologies/stratus/">adobe</a>)</p></blockquote>
<p><a href="http://blog.yoz.sk/2009/10/onboard-collaborative-painting/">See my application using p2p here</a>. A lot has been said already, read more and see examples here:</p>
<ul>
<li><a href="http://www.flashrealtime.com/basics-of-p2p-in-flash/">Basics of P2P in Flash</a></li>
<li><a href="http://www.flashrealtime.com/p2p-with-adobe-flash-collaboration-service/">P2P with Adobe Flash Collaboration Service</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.yoz.sk/2009/10/flash-p2p-applications-rtmfp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

