<?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>Tim Anderson's ITWriting &#187; java</title>
	<atom:link href="http://www.itwriting.com/blog/category/java/feed" rel="self" type="application/rss+xml" />
	<link>http://www.itwriting.com/blog</link>
	<description>Tech writing blog</description>
	<lastBuildDate>Thu, 09 Feb 2012 17:17:43 +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>Oxygene for Java released: develop for Android and Java runtime with Delphi language in Visual Studio</title>
		<link>http://www.itwriting.com/blog/5181-oxygene-for-java-released-develop-for-android-and-java-runtime-with-delphi-language-in-visual-studio.html</link>
		<comments>http://www.itwriting.com/blog/5181-oxygene-for-java-released-develop-for-android-and-java-runtime-with-delphi-language-in-visual-studio.html#comments</comments>
		<pubDate>Tue, 29 Nov 2011 22:23:03 +0000</pubDate>
		<dc:creator>tim</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[professional]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[visual studio]]></category>
		<category><![CDATA[oxygene]]></category>
		<category><![CDATA[remobjects]]></category>

		<guid isPermaLink="false">http://www.itwriting.com/blog/5181-oxygene-for-java-released-develop-for-android-and-java-runtime-with-delphi-language-in-visual-studio.html</guid>
		<description><![CDATA[<p>RemObjects has released Oxygene for Java, a new version of its Object Pascal compiler. Object Pascal is pretty much the Delphi language though with some additional features of its own. Previous versions target the .NET runtime, and a version of this is marketed by Embarcadero as Prism. The IDE for Oxygene is Microsoft’s Visual <p><i>...continue reading</i> <a href="http://www.itwriting.com/blog/5181-oxygene-for-java-released-develop-for-android-and-java-runtime-with-delphi-language-in-visual-studio.html">Oxygene for Java released: develop for Android and Java runtime with Delphi language in Visual Studio</a></p>


Related posts:<ol><li><a href='http://www.itwriting.com/blog/954-prism-official-delphi-language-comes-to-visual-studio.html' rel='bookmark' title='Permanent Link: Prism: official Delphi language comes to Visual Studio'>Prism: official Delphi language comes to Visual Studio</a></li>
<li><a href='http://www.itwriting.com/blog/4636-embarcadero-promises-delphi-everywhere-mac-ios-this-year-android-blackberry-windows-phone-to-follow.html' rel='bookmark' title='Permanent Link: Embarcadero promises Delphi everywhere: Mac, iOS this year, Android, Blackberry, Windows Phone to follow'>Embarcadero promises Delphi everywhere: Mac, iOS this year, Android, Blackberry, Windows Phone to follow</a></li>
<li><a href='http://www.itwriting.com/blog/1035-code-for-mac-cocoa-in-visual-studio-surprised-to-see-this.html' rel='bookmark' title='Permanent Link: Code for Mac Cocoa in Visual Studio &ndash; surprised to see this?'>Code for Mac Cocoa in Visual Studio &ndash; surprised to see this?</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>RemObjects has released <a href="http://www.remobjects.com/oxygene/" target="_blank">Oxygene for Java</a>, a new version of its Object Pascal compiler. Object Pascal is pretty much the Delphi language though with some additional features of its own. Previous versions target the .NET runtime, and a version of this is marketed by Embarcadero as <a href="http://www.embarcadero.com/products/prism" target="_blank">Prism</a>. The IDE for Oxygene is Microsoft’s Visual Studio. This new version targets both the Java Runtime and the Android Dalvik VM. The obvious target market is Delphi developers who now want to create apps for Android, or cross-platform Java applications. </p>
<p>I downloaded the trial and ran the supplied Hello World in the Android emulator … it works.</p>
<p><a href="http://www.itwriting.com/blog/wp-content/uploads/2011/11/image33.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.itwriting.com/blog/wp-content/uploads/2011/11/image_thumb33.png" width="404" height="329" /></a></p>
<p>A few further notes from the RemObjects announcement. While only Visual Studio is supported initially, an Eclipse version is also in preparation. Oxygene directly consumes .JAR libraries so you can use both first and third-party libraries. There is also a tool called Oxidizer that lets you import Java language code, which will be converted to Oxygene Object Pascal.</p>
<p>A point to note is that Embarcadero has already announced that its cross-platform <a href="http://edn.embarcadero.com/article/41604" target="_blank">FireMonkey</a> framework will support Android as well as Apple iOS. This means that developers who want to code for Android in the Delphi language will have two choices. It looks to me as if Oxygene will be more suitable if you want to stay close to the Android SDK, whereas FireMonkey has its own custom-drawn user interface widgets and effects and should come into its own if you want the same code to run on both iOS and Android.</p>
<p>Given that a skilled Delphi developer would probably learn Java fairly quickly, how much value is there in Oxygene for Java? I guess factors include how much more productive you can be in Oxygene and the value of sharing code across projects targeting different platforms, presuming that you do not want to run Java everywhere.</p>


<p>Related posts:<ol><li><a href='http://www.itwriting.com/blog/954-prism-official-delphi-language-comes-to-visual-studio.html' rel='bookmark' title='Permanent Link: Prism: official Delphi language comes to Visual Studio'>Prism: official Delphi language comes to Visual Studio</a></li>
<li><a href='http://www.itwriting.com/blog/4636-embarcadero-promises-delphi-everywhere-mac-ios-this-year-android-blackberry-windows-phone-to-follow.html' rel='bookmark' title='Permanent Link: Embarcadero promises Delphi everywhere: Mac, iOS this year, Android, Blackberry, Windows Phone to follow'>Embarcadero promises Delphi everywhere: Mac, iOS this year, Android, Blackberry, Windows Phone to follow</a></li>
<li><a href='http://www.itwriting.com/blog/1035-code-for-mac-cocoa-in-visual-studio-surprised-to-see-this.html' rel='bookmark' title='Permanent Link: Code for Mac Cocoa in Visual Studio &ndash; surprised to see this?'>Code for Mac Cocoa in Visual Studio &ndash; surprised to see this?</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.itwriting.com/blog/5181-oxygene-for-java-released-develop-for-android-and-java-runtime-with-delphi-language-in-visual-studio.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Eclipse and Xtend: some confusion in getting started</title>
		<link>http://www.itwriting.com/blog/5104-eclipse-and-xtend-some-confusion-in-getting-started.html</link>
		<comments>http://www.itwriting.com/blog/5104-eclipse-and-xtend-some-confusion-in-getting-started.html#comments</comments>
		<pubDate>Mon, 07 Nov 2011 12:06:06 +0000</pubDate>
		<dc:creator>tim</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[professional]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[xtend]]></category>

		<guid isPermaLink="false">http://www.itwriting.com/blog/5104-eclipse-and-xtend-some-confusion-in-getting-started.html</guid>
		<description><![CDATA[<p>Last weekend there was some publicity around Xtend, an Eclipse project which extends Java with new language features. Xtend now has a new landing page, as announced by the lead architect Sven Efftinge.</p> <p>I did intend to post about this yesterday, but I wanted to see it in action first, so I tried to <p><i>...continue reading</i> <a href="http://www.itwriting.com/blog/5104-eclipse-and-xtend-some-confusion-in-getting-started.html">Eclipse and Xtend: some confusion in getting started</a></p>


Related posts:<ol><li><a href='http://www.itwriting.com/blog/1568-eclipse-survey-shows-windows-decline.html' rel='bookmark' title='Permanent Link: Eclipse survey shows Windows decline'>Eclipse survey shows Windows decline</a></li>
<li><a href='http://www.itwriting.com/blog/2949-oracle-breaks-then-mends-eclipse-with-new-java-build.html' rel='bookmark' title='Permanent Link: Oracle breaks, then mends Eclipse with new Java build'>Oracle breaks, then mends Eclipse with new Java build</a></li>
<li><a href='http://www.itwriting.com/blog/56-borlands-jbuilder-on-eclipse-emerges.html' rel='bookmark' title='Permanent Link: Borland&#8217;s JBuilder-on-Eclipse emerges'>Borland&#8217;s JBuilder-on-Eclipse emerges</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Last weekend there was some publicity around Xtend, an Eclipse project which extends Java with new language features. Xtend now has a <a href="http://xtend-lang.org/" target="_blank">new landing page</a>, as <a href="http://blog.efftinge.de/2011/11/new-xtend-website.html" target="_blank">announced</a> by the lead architect Sven Efftinge.</p>
<p>I did intend to post about this yesterday, but I wanted to see it in action first, so I tried to download it and have a look. I believe this is a case where those who wrote the new landing page are too close to the project and made some assumptions, because I did not find it obvious how to proceed. </p>
<p>If you follow the Download link you are invited to paste one of the three URLs into the Eclipse update manager.</p>
<p><a href="http://www.itwriting.com/blog/wp-content/uploads/2011/11/image10.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.itwriting.com/blog/wp-content/uploads/2011/11/image_thumb10.png" width="404" height="72" /></a></p>
<p>As a newcomer to the project, I did not want three URLs to choose from, I wanted just one. I picked Release as in general this one is likely to work.</p>
<p>Now, the instructions say:</p>
<blockquote><p>To install the Xtend plugins open the update manager and paste one of the URLs on the right into the field &#8216;Work with&#8217; and select the Xtend SDK.</p>
</blockquote>
<p>The update manager actually presents you with a long list of updates, none of which say Xtend. I took a stab at what I thought was the right thing.</p>
<p><a href="http://www.itwriting.com/blog/wp-content/uploads/2011/11/image11.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.itwriting.com/blog/wp-content/uploads/2011/11/image_thumb11.png" width="404" height="490" /></a></p>
<p>The All-In-One includes the Xtend SDK, which is what I want, right? </p>
<p>Wrong. After installation I could not find the tutorial which the docs said would be available. </p>
<p>I did some messing around with Eclipse and got the occasional error like this one:</p>
<p><a href="http://www.itwriting.com/blog/wp-content/uploads/2011/11/image12.png"><img style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.itwriting.com/blog/wp-content/uploads/2011/11/image_thumb12.png" width="244" height="231" /></a></p>
<p>Then I realised that I should have looked under the TMF Xtext-2.1.0 tree, which is where the correct Xtend SDK resides:</p>
<p><a href="http://www.itwriting.com/blog/wp-content/uploads/2011/11/image13.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.itwriting.com/blog/wp-content/uploads/2011/11/image_thumb13.png" width="334" height="294" /></a></p>
<p>Except that if you find this <a href="http://nexnet.wordpress.com/2011/11/06/xtend-tutorial/" target="_blank">helpful post</a> by&#160; Max Rohde you will know:</p>
<blockquote><p>The other packages need to be selected since otherwise the Xtend editors will not work.</p>
</blockquote>
<p>So you should select all of TMF Xtext-2.1.0 (or the latest release). Easy when you know, but not obvious since the word Xtend does not appear in the top node of the tree.</p>
<p>I was then able to create the tutorial project. I opened HelloWorld.xtend and got this:</p>
<p><a href="http://www.itwriting.com/blog/wp-content/uploads/2011/11/image14.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.itwriting.com/blog/wp-content/uploads/2011/11/image_thumb14.png" width="301" height="294" /></a></p>
<p>Ah, but you have read Rohde’s post so you know this is expected and that you should run this as a JUnit Test. However it does not have any output. To see some output, you have to run one of the other examples, like Xtend08_RichStrings, or perhaps add:</p>
<p>sayHelloToSystemOut2(&#8216;Tim&#8217;)</p>
<p>to the testHelloWorld() method in HelloWorld.xtend.</p>
<p><a href="http://www.itwriting.com/blog/wp-content/uploads/2011/11/image15.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.itwriting.com/blog/wp-content/uploads/2011/11/image_thumb15.png" width="244" height="212" /></a></p>
<p>OK, it works.</p>
<p>So what is Xtend? It is essentially a code generator which lets you write in Xtend and generate Java. You can see the generated code in the tutorial project under xtend-gen.</p>
<p><a href="http://www.itwriting.com/blog/wp-content/uploads/2011/11/image16.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.itwriting.com/blog/wp-content/uploads/2011/11/image_thumb16.png" width="244" height="130" /></a></p>
<p>Xtend adds some nice features: type inference, property syntax, closures, switch expressions with no fall-through, template expressions, extension methods, and multiple dispatch. </p>
<p>I can imagine C# creator Anders Hejlsberg smiling here, as most of this is already in C# in some form or other.</p>
<p>But is Xtend the right way to bring these features to Java? I am not convinced so far. It is an interesting Eclipse project, but it may be more significant in speeding the implementation of features like these into Java itself, than as a mainstream approach to writing applications. Xtend is a kind of hybrid approach, where you will be switching between Java and Xtend while you code and debug your application, and I suspect it would get frustrating. </p>
<p>There is also the question of widespread community support &#8211; beyond Eclipse.</p>
<p>Finally, it would be good if the new landing page could be made more helpful for those getting started.</p>


<p>Related posts:<ol><li><a href='http://www.itwriting.com/blog/1568-eclipse-survey-shows-windows-decline.html' rel='bookmark' title='Permanent Link: Eclipse survey shows Windows decline'>Eclipse survey shows Windows decline</a></li>
<li><a href='http://www.itwriting.com/blog/2949-oracle-breaks-then-mends-eclipse-with-new-java-build.html' rel='bookmark' title='Permanent Link: Oracle breaks, then mends Eclipse with new Java build'>Oracle breaks, then mends Eclipse with new Java build</a></li>
<li><a href='http://www.itwriting.com/blog/56-borlands-jbuilder-on-eclipse-emerges.html' rel='bookmark' title='Permanent Link: Borland&#8217;s JBuilder-on-Eclipse emerges'>Borland&#8217;s JBuilder-on-Eclipse emerges</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.itwriting.com/blog/5104-eclipse-and-xtend-some-confusion-in-getting-started.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google offers the web a new language called Dart &#8211; but why?</title>
		<link>http://www.itwriting.com/blog/5007-google-offers-the-web-a-new-language-called-dart-but-why.html</link>
		<comments>http://www.itwriting.com/blog/5007-google-offers-the-web-a-new-language-called-dart-but-why.html#comments</comments>
		<pubDate>Mon, 10 Oct 2011 16:58:57 +0000</pubDate>
		<dc:creator>tim</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[professional]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[dart]]></category>
		<category><![CDATA[google]]></category>

		<guid isPermaLink="false">http://www.itwriting.com/blog/5007-google-offers-the-web-a-new-language-called-dart-but-why.html</guid>
		<description><![CDATA[<p>Google has announced an early preview of Dart, a new language for web applications. The news is not a surprise, especially if you have been keeping track of the developer conference GOTO Aarhus, whose organisers had pre-announced that Google would be announcing its new language there, as indeed it did.</p> <p></p> <p>Dart is a <p><i>...continue reading</i> <a href="http://www.itwriting.com/blog/5007-google-offers-the-web-a-new-language-called-dart-but-why.html">Google offers the web a new language called Dart &#8211; but why?</a></p>


Related posts:<ol><li><a href='http://www.itwriting.com/blog/5135-microsoft-backs-ecmascript-dismisses-google-dart.html' rel='bookmark' title='Permanent Link: Microsoft backs ECMAScript, dismisses Google Dart'>Microsoft backs ECMAScript, dismisses Google Dart</a></li>
<li><a href='http://www.itwriting.com/blog/5134-what-is-the-best-programming-language-for-a-child-progressing-from-scratch.html' rel='bookmark' title='Permanent Link: What is the best programming language for a child progressing from Scratch?'>What is the best programming language for a child progressing from Scratch?</a></li>
<li><a href='http://www.itwriting.com/blog/4767-google-native-client-browser-apps-unleashed-or-misconceived-and-likely-to-fail.html' rel='bookmark' title='Permanent Link: Google Native Client: browser apps unleashed, or misconceived and likely to fail?'>Google Native Client: browser apps unleashed, or misconceived and likely to fail?</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Google has <a href="http://googlecode.blogspot.com/2011/10/dart-language-for-structured-web.html" target="_blank">announced</a> an early preview of <a href="http://www.dartlang.org" target="_blank">Dart</a>, a new language for web applications. The news is not a surprise, especially if you have been keeping track of the developer conference GOTO Aarhus, whose organisers had pre-announced that Google would be announcing its new language there, as <a href="http://gototoday.dk/2011/10/10/dart-announced/" target="_blank">indeed it did</a>.</p>
<p><a href="http://www.itwriting.com/blog/wp-content/uploads/2011/10/image22.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.itwriting.com/blog/wp-content/uploads/2011/10/image_thumb22.png" width="244" height="129" /></a></p>
<p>Dart is a curly-brace language like JavaScript, Java, C, C++ and C#. In Dart, as in C# and Java, a class can implement multiple interfaces, but only inherit from a single class. Dart supports both static and dynamic typing. Google says it can be executed by a Dart VM, or converted to JavaScript:</p>
<blockquote><p>Dart code can be executed in two different ways: either on a native <a href="http://en.wikipedia.org/wiki/Virtual_machine">virtual machine</a> or on top of a JavaScript engine by using a <a href="http://en.wikipedia.org/wiki/Compiler">compiler</a> that translates Dart code to JavaScript. This means you can write a web application in Dart and have it compiled and run on any modern browser. The Dart VM is not currently integrated in Chrome but we plan to explore this option. </p>
</blockquote>
<p>Google also <a href="http://www.dartlang.org/docs/technical-overview/index.html" target="_blank">says</a> that you will be able to “execute Dart code directly in a VM on the server side”, so you can infer that Google has Dart in mind as an alternative PHP as well as to JavaScript. The company is using the phrase “structured web programming” to describe Dart, and this phrase appears in the announcement and as the subtitle on the Dart site. The implication is that JavaScript code tends to be poorly structured and that Dart will promote more maintainable code. </p>
<p>In the preview Dart only runs in Chrome, Safari 5 and Firefox 4+ – spot the missing browser vendors.</p>
<p>At first glance, Dart looks like a promising language, though I find myself asking what it is really for, when it bears a strong family resemblance to existing languages, and bearing in mind that the <a href="http://code.google.com/webtoolkit/" target="_blank">Google Web Toolkit</a>, which compiles Java to JavaScript, already enables structured programming for web applications. The list of problems which Dart solves in the <a href="http://www.dartlang.org/docs/technical-overview/index.html" target="_blank">technical overview</a> is not all that compelling. </p>
<p>Google states that:</p>
<blockquote><p>Developers have not been able to create homogeneous systems that encompass both client and server, except for a few cases such as Node.js and Google Web Toolkit (GWT).</p>
</blockquote>
<p>This is or was one of the attractions of Microsoft Silverlight, presuming you use C# on both server and client, but Silverlight is a plug-in that was never going to run on an iPad and from which Microsoft itself is now retreating; though it is worth noting that Dart is not unlike C#, especially the latest version of C# with dynamic features.</p>
<p>I guess that Dart is a consequence of the failure of ECMAScript 4.0, which was a cooperative effort to create a more modern and advanced JavaScript. Google is now going it alone; the key question is whether it can win support from others such as Apple and Microsoft, or whether this will be a Google language for Google on the server and Chrome on the client, or an interesting experiment that never really catches on.</p>
<p>Do we need Dart? I would value hearing from others what you think of Google’s proposal.</p>


<p>Related posts:<ol><li><a href='http://www.itwriting.com/blog/5135-microsoft-backs-ecmascript-dismisses-google-dart.html' rel='bookmark' title='Permanent Link: Microsoft backs ECMAScript, dismisses Google Dart'>Microsoft backs ECMAScript, dismisses Google Dart</a></li>
<li><a href='http://www.itwriting.com/blog/5134-what-is-the-best-programming-language-for-a-child-progressing-from-scratch.html' rel='bookmark' title='Permanent Link: What is the best programming language for a child progressing from Scratch?'>What is the best programming language for a child progressing from Scratch?</a></li>
<li><a href='http://www.itwriting.com/blog/4767-google-native-client-browser-apps-unleashed-or-misconceived-and-likely-to-fail.html' rel='bookmark' title='Permanent Link: Google Native Client: browser apps unleashed, or misconceived and likely to fail?'>Google Native Client: browser apps unleashed, or misconceived and likely to fail?</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.itwriting.com/blog/5007-google-offers-the-web-a-new-language-called-dart-but-why.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Review: Continuous Delivery by Jez Humble and David Farley</title>
		<link>http://www.itwriting.com/blog/4858-review-continuous-delivery-by-jez-humble-and-david-farley.html</link>
		<comments>http://www.itwriting.com/blog/4858-review-continuous-delivery-by-jez-humble-and-david-farley.html#comments</comments>
		<pubDate>Thu, 08 Sep 2011 11:14:06 +0000</pubDate>
		<dc:creator>tim</dc:creator>
				<category><![CDATA[agile]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[professional]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[continuous delivery]]></category>
		<category><![CDATA[devops]]></category>

		<guid isPermaLink="false">http://www.itwriting.com/blog/4858-review-continuous-delivery-by-jez-humble-and-david-farley.html</guid>
		<description><![CDATA[<p>I like this book. I know I like it because I find myself wanting to quote from it frequently. It is a book that almost every software developer should read, even if you disagree with parts of it &#8211; which is likely, because it is opinionated. The authors always give reasons for their opinions <p><i>...continue reading</i> <a href="http://www.itwriting.com/blog/4858-review-continuous-delivery-by-jez-humble-and-david-farley.html">Review: Continuous Delivery by Jez Humble and David Farley</a></p>


Related posts:<ol><li><a href='http://www.itwriting.com/blog/4797-continuous-integration-vs-continuous-delivery-vs-continuous-deployment-what-is-the-difference.html' rel='bookmark' title='Permanent Link: Continuous Integration vs Continuous Delivery vs Continuous Deployment: what is the difference?'>Continuous Integration vs Continuous Delivery vs Continuous Deployment: what is the difference?</a></li>
<li><a href='http://www.itwriting.com/blog/3047-review-tapworthy-designing-great-iphone-apps-by-josh-clark.html' rel='bookmark' title='Permanent Link: Review: Tapworthy &ndash; designing great iPhone Apps by Josh Clark'>Review: Tapworthy &ndash; designing great iPhone Apps by Josh Clark</a></li>
<li><a href='http://www.itwriting.com/blog/4748-book-review-the-book-of-ruby-by-huw-collingbourne.html' rel='bookmark' title='Permanent Link: Book Review: The Book of Ruby by Huw Collingbourne'>Book Review: The Book of Ruby by Huw Collingbourne</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>I like this book. I know I like it because I find myself wanting to quote from it frequently. It is a book that almost every software developer should read, even if you disagree with parts of it &#8211; which is likely, because it is opinionated. The authors always give reasons for their opinions though, which means that if you disagree, you need to articulate why that is; or they may even change your mind. In consequence you find yourself learning as you read.</p>
<p>The authors are software theoreticians, but they are also practitioners; in fact they are practitioners first and theoreticians afterwards. This means they are pragmatic rather than dogmatic. Here is an example. Chapter 13 discusses software dependencies, and page 372 covers circular dependencies, “probably the nastiest dependency problem.” A circular dependency is when component A depends on component B, and component B also depends on component A.</p>
<p>A bad idea; but the authors write:</p>
<blockquote><p>Surprisingly, we have seen successful projects with circular dependencies in their build systems. You may argue with our definition of “successful” in this case, but there was working code in production, which is enough for us.</p>
</blockquote>
<p>As an aside, this kind of dry humour is characteristic, as also evident in remarks like this:</p>
<blockquote><p>We are certain that, occasionally, manually intensive releases work smoothly. We may well have been unlucky in having mostly seen the bad ones.</p>
</blockquote>
<p>The subject of the book is Continuous Delivery. So what is that? Well, if Continuous Integration is about ensuring that your software always builds, then Continuous Delivery is about ensuring that your software always deploys. The final form, as it were, of Continuous Delivery is Continuous Deployment, where you are so confident of your automated build and deploy process that any checked-in code that passes its tests can be deployed immediately. I was confused about the difference between Continuous Delivery and Continuous Deployment so I <a href="http://www.itwriting.com/blog/4797-continuous-integration-vs-continuous-delivery-vs-continuous-deployment-what-is-the-difference.html" target="_blank">wrote a post</a> about it; it turns out that there is not much difference.</p>
<p>The principle behind Continuous Delivery is that software is not done until it is released. If the release process is long, arduous and infrequent, then you are not really doing Agile development. A section of chapter 1 is devoted to release anti-patterns, and these form an excellent rationale for taking an interest in Continuous Delivery.</p>
<p>My guess is that anyone who has been involved in professional software development will wince a little while reading through these anti-patterns, thinking “that is what we used to do” or even “that is what we do”.</p>
<p>That said, Humble and Farley do not fall into the trap of merely writing about how not to do it. Rather, they address in some detail the kinds of problems you will face if you decide to embrace the Continuous Delivery methodology. The key ingredient in Continuous Delivery is that pretty much everything must be automated, otherwise it is too difficult to do. But how do you automate something like Acceptance Testing? That is the subject of chapter 8. How do you automate a deployment at all? That is the subject of chapter 6. The authors are not on a higher plane than the rest of us, and much of the advice is straightforward, even at the level of “Always use relative paths,” which is a tip in chapter 6.</p>
<p>The authors talk a lot about testing, as you would expect, but there is also extensive discussion of software configuration management, describing different approaches such as centralised and distributed version control and even specific tools. The chapter on Advanced Version Control is a particularly good read. Humble and Farley articulate the point that branching and merging is antithetical to Continuous Integration and therefore Continuous Delivery:</p>
<blockquote><p>If different members of the team are working on separate branches or streams then by definition they’re not continuously integrating (p 390)</p>
</blockquote>
<p>Does this mean branches are a bad idea? Not always, say the authors, but they also state:</p>
<blockquote><p>Our strong recommendation is to crate long-lived branches only on release … new work is always committed to the trunk (p 392)</p>
</blockquote>
<p>The reason is not only to enable Continuous Integration, but also because merging is complex and error-prone. </p>
<p>Software configuration management is not easy, but it is a relatively mature aspect of software development. This is less true of what you might call infrastructure configuration management; yet infrastructure dependencies such as versions and configurations of the operating system or web server are a common reason for deployment failures. Several chapters discuss this problem in detail. In principle, the authors say:</p>
<blockquote><p>The desired state of your infrastructure should be specified through version-controlled configuration.</p>
</blockquote>
<p>This leads to some thoughtful discussion of how to achieve this.</p>
<p>Another theme, as you would expect, is that development and operations people need to be working together and not in isolation. To some extent this is a DevOps book.</p>
<p>A great book then; but there are flaws. One is that there is some repetition because of the way the book is organised. This is good if you are inclined to read chapters in isolation, but not so good if you are reading straight through. In practice I did not find it too annoying, but it is there.</p>
<p>Another issue is that while the authors do cover Microsoft .NET to some extent, this is usually in the form of a brief mention and there is more focus on Java. This may be in part because of their preference for open source. It is still a good read for .NET developers, because the principles are platform-agnostic, but Microsoft platform developers may find it irritating at times. Team Foundation Server, say the authors, is “essentially an inferior knock-off of Perforce” (p 386).</p>
<p>The discussion of specific tools is a strength but also a weakness, in that the tools will change over time and the book will become dated.</p>
<p>This is not the last word on Continuous Delivery, but it is an enjoyable and thought-provoking read. Recommended.</p>
<p> <iframe style="width: 120px; height: 240px" marginheight="0" src="http://rcm-uk.amazon.co.uk/e/cm?t=onlyconnectsyste&amp;o=2&amp;p=8&amp;l=as1&amp;asins=0321601912&amp;ref=qf_sp_asin_til&amp;fc1=000000&amp;IS2=1&amp;lt1=_blank&amp;m=amazon&amp;lc1=0000FF&amp;bc1=000000&amp;bg1=FFFFFF&amp;f=ifr" frameborder="0" marginwidth="0" scrolling="no"></iframe>&#160;<iframe style="width: 120px; height: 240px" marginheight="0" src="http://rcm.amazon.com/e/cm?lt1=_blank&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=itwriting-20&amp;o=1&amp;p=8&amp;l=as4&amp;m=amazon&amp;f=ifr&amp;ref=ss_til&amp;asins=0321601912" frameborder="0" marginwidth="0" scrolling="no"></iframe></p>


<p>Related posts:<ol><li><a href='http://www.itwriting.com/blog/4797-continuous-integration-vs-continuous-delivery-vs-continuous-deployment-what-is-the-difference.html' rel='bookmark' title='Permanent Link: Continuous Integration vs Continuous Delivery vs Continuous Deployment: what is the difference?'>Continuous Integration vs Continuous Delivery vs Continuous Deployment: what is the difference?</a></li>
<li><a href='http://www.itwriting.com/blog/3047-review-tapworthy-designing-great-iphone-apps-by-josh-clark.html' rel='bookmark' title='Permanent Link: Review: Tapworthy &ndash; designing great iPhone Apps by Josh Clark'>Review: Tapworthy &ndash; designing great iPhone Apps by Josh Clark</a></li>
<li><a href='http://www.itwriting.com/blog/4748-book-review-the-book-of-ruby-by-huw-collingbourne.html' rel='bookmark' title='Permanent Link: Book Review: The Book of Ruby by Huw Collingbourne'>Book Review: The Book of Ruby by Huw Collingbourne</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.itwriting.com/blog/4858-review-continuous-delivery-by-jez-humble-and-david-farley.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Heroku gets Java, Salesforce.com embraces HTML5 for mobile</title>
		<link>http://www.itwriting.com/blog/4822-heroku-gets-java-salesforce-com-embraces-html5-for-mobile.html</link>
		<comments>http://www.itwriting.com/blog/4822-heroku-gets-java-salesforce-com-embraces-html5-for-mobile.html#comments</comments>
		<pubDate>Wed, 31 Aug 2011 16:07:07 +0000</pubDate>
		<dc:creator>tim</dc:creator>
				<category><![CDATA[cloud computing]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[salesforce.com]]></category>
		<category><![CDATA[heroku]]></category>

		<guid isPermaLink="false">http://www.itwriting.com/blog/4822-heroku-gets-java-salesforce-com-embraces-html5-for-mobile.html</guid>
		<description><![CDATA[<p>Salesforce.com has made a host of announcements at its Dreamforce conference currently under way in San Francisco. In brief:</p> Chatter, the Salesforce.com social networking platform for enterprises, is being extended with presence status, screen sharing, approval actions, and the ability to create groups with customers as well as with internal users. Salesforce.com calls this <p><i>...continue reading</i> <a href="http://www.itwriting.com/blog/4822-heroku-gets-java-salesforce-com-embraces-html5-for-mobile.html">Heroku gets Java, Salesforce.com embraces HTML5 for mobile</a></p>


Related posts:<ol><li><a href='http://www.itwriting.com/blog/3501-salesforce-com-acquires-heroku-wants-your-enterprise-apps.html' rel='bookmark' title='Permanent Link: Salesforce.com acquires Heroku, wants your Enterprise apps'>Salesforce.com acquires Heroku, wants your Enterprise apps</a></li>
<li><a href='http://www.itwriting.com/blog/2538-vmforce-salesforce-partners-vmware-to-run-java-in-the-cloud.html' rel='bookmark' title='Permanent Link: VMforce: Salesforce partners VMware to run Java in the cloud'>VMforce: Salesforce partners VMware to run Java in the cloud</a></li>
<li><a href='http://www.itwriting.com/blog/3504-the-salesforce-com-platform-play.html' rel='bookmark' title='Permanent Link: The Salesforce.com platform play'>The Salesforce.com platform play</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Salesforce.com has made a host of announcements at its Dreamforce conference currently under way in San Francisco. In brief:</p>
<ul>
<li>Chatter, the Salesforce.com social networking platform for enterprises, is being extended with presence status, screen sharing, approval actions, and the ability to create groups with customers as well as with internal users. Salesforce.com calls this the Social Enterprise.</li>
<li>Heroku, a service for hosting Ruby applications which Salesforce.com acquired in 2010, will now also support Java.</li>
<li>Salesforce.com is baking mobile support into its applications via HTML 5. The new mobile, touch-friendly user interface is called Touch.salesforce.com.</li>
</ul>
<p><a href="http://www.itwriting.com/blog/wp-content/uploads/2011/08/image23.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.itwriting.com/blog/wp-content/uploads/2011/08/image_thumb23.png" width="304" height="281" /></a></p>
<p>Other announcements include the general availability of database.com, a cloud database service announced at last year’s Dreamforce, and a new service called Data.com which provides company information though a combination of Dun and Bradstreet’s data along with information from <a href="http://www.jigsaw.com/" target="_blank">Jigsaw</a>.</p>
<p>I spoke to EMEA VP Tim Barker about the announcements. Does Java on Heroku replace the VMForce platform, which lets you run Java applications on VMWare using the Spring framework plus access to Salesforce.com APIs? Barker is diplomatic and says it is a developer choice, but adds that VMForce “was an inspiration for us, to see that we needed Java language on Heroku as well.”</p>
<p>My observation is that since the introduction of VMForce, VMWare has come up with other cloud-based initiatives, and the Salesforce.com no longer seems to be a key platform. These two companies have grown apart.</p>
<p>For more information on Java on Heroku, see the <a href="http://blog.heroku.com/archives/2011/08/25/java/" target="_blank">official announcement</a>. Heroku was formed in part to promote hosted Ruby as an alternative to Java, so this is a bittersweet moment for the platform, and the announcement has an entertaining analysis of Java’s strengths and weaknesses, including the topic “How J2EE detailed Java”: </p>
<blockquote><p>J2EE was built for a world of <em>application distribution</em> — that is, software packaged to be run by others, such as licensed software. But it was put to use in a world of <em>application development and deployment</em> — that is, software-as-a-service. This created a perpetual impedance mismatch between technology and use case. Java applications in the modern era suffer greatly under the burden of this mismatch.</p>
</blockquote>
<p>Naturally the announcement goes on to explain how Heroku has solved this mismatch. Note that Heroku also supports Clojure and Node.js.</p>
<p>What about Database.com, why is it more expensive than other cloud database services? “It is a trusted platform that we operate, and not a race to the bottom in terms of the cheapest possible way to build an application,” says Barker. </p>
<p>That said, note that you can get a free account, which includes 100,000 records, 50,000 transactions per month and support for three enterprise users.</p>
<p>What are the implications of the HTML5-based Touch.salesforce.com for existing Salesforce.com mobile apps, or the Flex SDK and Adobe AIR support in the platform? “We do have an existing set of apps,” says Barker. “We have Salesforce mobile which supports Blackberry, iOS and Android. We also have an application for Chatter. Native apps are an important part of our strategy. But what we’ve found is that for customer apps and for broad applications, to be able to deliver all the functionality, we’re finding the best approach is using HTML 5.”</p>
<p>The advantage of the HTML5 approach for customers is that it comes for free with the platform.</p>
<p>As for Adobe AIR, it is still being used and is a good choice if you need a desktop application. That said, I got the impression that Salesforce.com sees HTML5 as the best solution to the problem of supporting a range of mobile operating systems.</p>
<p>I have been following Salesforce.com closely for several years, during which time the platform has grown steadily and shown impressive consistency. “We grew 38% year on year in Q2,” says Barker. This year’s Dreamforce apparently has nearly 45,000 registered attendees, which is 50% up on last year, though I suspect this may include free registrations for the keynotes and exhibition. Nevertheless, the company claims “the world’s largest enterprise software conference”. Oracle OpenWorld 2010 reported around 41,000 attendees.</p>


<p>Related posts:<ol><li><a href='http://www.itwriting.com/blog/3501-salesforce-com-acquires-heroku-wants-your-enterprise-apps.html' rel='bookmark' title='Permanent Link: Salesforce.com acquires Heroku, wants your Enterprise apps'>Salesforce.com acquires Heroku, wants your Enterprise apps</a></li>
<li><a href='http://www.itwriting.com/blog/2538-vmforce-salesforce-partners-vmware-to-run-java-in-the-cloud.html' rel='bookmark' title='Permanent Link: VMforce: Salesforce partners VMware to run Java in the cloud'>VMforce: Salesforce partners VMware to run Java in the cloud</a></li>
<li><a href='http://www.itwriting.com/blog/3504-the-salesforce-com-platform-play.html' rel='bookmark' title='Permanent Link: The Salesforce.com platform play'>The Salesforce.com platform play</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.itwriting.com/blog/4822-heroku-gets-java-salesforce-com-embraces-html5-for-mobile.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java Standard Edition 7 is done, but feels like an interim release</title>
		<link>http://www.itwriting.com/blog/4698-java-standard-edition-7-is-done-but-feels-like-an-interim-release.html</link>
		<comments>http://www.itwriting.com/blog/4698-java-standard-edition-7-is-done-but-feels-like-an-interim-release.html#comments</comments>
		<pubDate>Thu, 28 Jul 2011 22:10:48 +0000</pubDate>
		<dc:creator>tim</dc:creator>
				<category><![CDATA[java]]></category>
		<category><![CDATA[oracle]]></category>

		<guid isPermaLink="false">http://www.itwriting.com/blog/4698-java-standard-edition-7-is-done-but-feels-like-an-interim-release.html</guid>
		<description><![CDATA[<p>Oracle has released Java SE 7:</p> <p>Oracle today announced the availability of Java Platform, Standard Edition 7 (Java SE 7), the first release of the Java platform under Oracle stewardship.</p> <p></p> <p>What’s in Java SE 7? Despite the full version number increment, I am tempted to call this an interim release. In December 2010 <p><i>...continue reading</i> <a href="http://www.itwriting.com/blog/4698-java-standard-edition-7-is-done-but-feels-like-an-interim-release.html">Java Standard Edition 7 is done, but feels like an interim release</a></p>


Related posts:<ol><li><a href='http://www.itwriting.com/blog/3299-ibm-to-harmonise-its-open-source-java-efforts-with-oracle.html' rel='bookmark' title='Permanent Link: IBM to harmonise its open source Java efforts with Oracle'>IBM to harmonise its open source Java efforts with Oracle</a></li>
<li><a href='http://www.itwriting.com/blog/3418-the-java-crisis-and-what-it-means-for-developers.html' rel='bookmark' title='Permanent Link: The Java crisis and what it means for developers'>The Java crisis and what it means for developers</a></li>
<li><a href='http://www.itwriting.com/blog/2949-oracle-breaks-then-mends-eclipse-with-new-java-build.html' rel='bookmark' title='Permanent Link: Oracle breaks, then mends Eclipse with new Java build'>Oracle breaks, then mends Eclipse with new Java build</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Oracle has <a href="http://www.oracle.com/us/corporate/press/444374" target="_blank">released Java SE 7</a>:</p>
<blockquote><p>Oracle today announced the availability of <a href="http://www.oracle.com/technetwork/java/javase/overview/index-jsp-138218.html">Java Platform, Standard Edition 7</a> (Java SE 7), the first release of the Java platform under Oracle stewardship.</p>
</blockquote>
<p><a href="http://www.itwriting.com/blog/wp-content/uploads/2011/07/image32.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.itwriting.com/blog/wp-content/uploads/2011/07/image_thumb31.png" width="404" height="418" /></a></p>
<p>What’s in Java SE 7? Despite the full version number increment, I am tempted to call this an interim release. In December 2010 the JCP approved the specification of both Java SE 7 and Java SE 8, with two of the more interesting features, Project Lambda and the Module system (Project Jigsaw), held back for Java SE 8. Java SE 7 does include the InvokeDynamic keyword which improves the performance of dynamic languages such as Ruby and Python running on the JVM, as well as most of the minor language enhancements known as “Project Coin”. There is also a Fork/Join framework to better support concurrent programming.</p>
<p>The good news is that Java SE 8 is set to follow in late 2012, not so long considering Java SE 6 was released in 2006 . You can see the roadmap summarised <a href="http://blogs.oracle.com/henrik/entry/java_roadmap_from_javaone_2010" target="_blank">here</a>. This post is from October 2010, but as far as I am aware it has not changed much since. 2012 is also when we can expect Java Enterprise Edition 7.</p>
<p>It is also worth mentioning JavaFX 2.0, set for release later this year. A handy summary of JavaFX 2.0 is <a href="http://javafx.com/roadmap/" target="_blank">here</a>. Whereas JavaFX 1.0 was rushed out and features a new scripting language that in the end few wanted, JavaFX 2.0 is more promising. Dimitry Jemerov, developer of <a href="http://www.jetbrains.com/idea/" target="_blank">IntelliJ IDEA</a> at JetBrains, told me <a href="http://www.softwareknowhow.info/Buyers-Guide/The-state-of-Java/273" target="_blank">earlier this year</a>:</p>
<blockquote><p>JavaFX is going to turn, when the version 2.0 is released, from a dead end resource sucker project into a set of distinct technologies of great immediate usefulness to many Java developers.</p>
</blockquote>
<p>Is there still hope for Java on the client? Java is barred from Apple iOS which is a problem, and is no longer supplied as standard on Mac OS X, but it will still make sense for many business applications. Of course Java is also wildly successful in the context of Google Android, but that uses the Dalvik VM rather than the Java VM so is rather a different thing.</p>
<p><strong>Update</strong>: As ever, upgrade critical machines with caution. In particular, Apache Lucene and Apache Solr <a href="http://www.lucidimagination.com/blog/2011/07/28/dont-use-java-7-for-anything/" target="_blank">do not work on Java 7</a> because of HotSpot optimization bugs.</p>


<p>Related posts:<ol><li><a href='http://www.itwriting.com/blog/3299-ibm-to-harmonise-its-open-source-java-efforts-with-oracle.html' rel='bookmark' title='Permanent Link: IBM to harmonise its open source Java efforts with Oracle'>IBM to harmonise its open source Java efforts with Oracle</a></li>
<li><a href='http://www.itwriting.com/blog/3418-the-java-crisis-and-what-it-means-for-developers.html' rel='bookmark' title='Permanent Link: The Java crisis and what it means for developers'>The Java crisis and what it means for developers</a></li>
<li><a href='http://www.itwriting.com/blog/2949-oracle-breaks-then-mends-eclipse-with-new-java-build.html' rel='bookmark' title='Permanent Link: Oracle breaks, then mends Eclipse with new Java build'>Oracle breaks, then mends Eclipse with new Java build</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.itwriting.com/blog/4698-java-standard-edition-7-is-done-but-feels-like-an-interim-release.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wolfram announces Computable Document Format for interactive docs</title>
		<link>http://www.itwriting.com/blog/4682-wolfram-announces-computable-document-format-for-interactive-docs.html</link>
		<comments>http://www.itwriting.com/blog/4682-wolfram-announces-computable-document-format-for-interactive-docs.html#comments</comments>
		<pubDate>Thu, 21 Jul 2011 09:03:36 +0000</pubDate>
		<dc:creator>tim</dc:creator>
				<category><![CDATA[adobe]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[business intelligence]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[professional]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[web authoring]]></category>
		<category><![CDATA[cdf]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[mathematica]]></category>
		<category><![CDATA[wolfram]]></category>

		<guid isPermaLink="false">http://www.itwriting.com/blog/4682-wolfram-announces-computable-document-format-for-interactive-docs.html</guid>
		<description><![CDATA[<p>Wolfram has announced the Computable Document Format (CDF), a document format that enables live computation to be embedded within it. “It’s a new way to communicate the world’s quantitative ideas much more richly than we have in the past, and in doing that a new kind of active document,” says&#160; Conrad Wolfram, Strategic Director <p><i>...continue reading</i> <a href="http://www.itwriting.com/blog/4682-wolfram-announces-computable-document-format-for-interactive-docs.html">Wolfram announces Computable Document Format for interactive docs</a></p>


Related posts:<ol><li><a href='http://www.itwriting.com/blog/1919-microsoft-will-document-the-outlook-file-format-users-would-rather-it-just-worked-better.html' rel='bookmark' title='Permanent Link: Microsoft will document the Outlook file format; users would rather it just worked better'>Microsoft will document the Outlook file format; users would rather it just worked better</a></li>
<li><a href='http://www.itwriting.com/blog/4166-adobe-announces-flash-builder-for-php-phonegap-integration-in-dreamweaver.html' rel='bookmark' title='Permanent Link: Adobe announces Flash Builder for PHP, PhoneGap integration in Dreamweaver'>Adobe announces Flash Builder for PHP, PhoneGap integration in Dreamweaver</a></li>
<li><a href='http://www.itwriting.com/blog/3547-ten-big-tech-trends-from-2010.html' rel='bookmark' title='Permanent Link: Ten big tech trends from 2010'>Ten big tech trends from 2010</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Wolfram has announced the <a href="http://www.wolfram.com/cdf/" target="_blank">Computable Document Format</a> (CDF), a document format that enables live computation to be embedded within it. “It’s a new way to communicate the world’s quantitative ideas much more richly than we have in the past, and in doing that a new kind of active document,” says&#160; Conrad Wolfram, Strategic Director of Wolfram Research. That said, the technology here is not really new. There is a close relationship between CDF and <a href="http://www.wolfram.com/mathematica/" target="_blank">Mathematica</a>, Wollfram’s tool for creating mathematical calculations and simulations. The authoring tool for CDF is Mathematica:</p>
<p><a href="http://www.itwriting.com/blog/wp-content/uploads/2011/07/image24.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.itwriting.com/blog/wp-content/uploads/2011/07/image_thumb23.png" width="404" height="167" /></a>&#160;</p>
<p>The announcement then is really about a new player for Mathematica content and applications, to broaden their usage. The CDF player is free, though there are some limitations. If you charge for your document, or want to display it without the player chrome, then a paid licence is needed. A CDF document can also be compiled into a standalone executable, blurring the distinction between document and application.</p>
<p>The CDF player is available for Mac, Windows and Linux. There is also a browser plug-in for embedding CDF documents into web pages.</p>
<p>It is easy to find use cases for CDF. It is for documents where there is value in performing calculations or interacting with data within the page. An example is pension planning:</p>
<p><a href="http://www.itwriting.com/blog/wp-content/uploads/2011/07/image25.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.itwriting.com/blog/wp-content/uploads/2011/07/image_thumb24.png" width="404" height="194" /></a></p>
<p>We have all seen those documents with a series of projections based on different assumptions about retirement age, contributions, investment growth and so on. This works better as an interactive chart where you can enter whatever values you like. </p>
<p>Other examples are statistical analysis and business intelligence, textbooks and course books where students can interact with equations and simulations, business proposals where you want to show how financial projections change based on different assumptions, or even general news reports where instead of a static chart you might want to show interactive graphics that let readers drill down into the data that interests them, or see real-time results.</p>
<p>Along with the computation engine, CDF supports a decent range of traditional content formatting features including cascading stylesheets.</p>
<p>Wolfram is correct in assuming that this kind of interactive document is important, and something we will increasingly take for granted in the era of the Web, eBooks and tablets. But can it succeed in establishing its own new document format when we already have HTML, Adobe PDF and Flash, Microsoft Excel and PowerPoint, and other formats which are also capable of embedded interactive content?</p>
<p> That is a key question. Wolfram offers a <a href="http://www.wolfram.com/cdf/compare-cdf/how-cdf-compares.html" target="_blank">table</a> which claims to show the benefits of CDF versus competitors such as HTML and PDF, but it is as skewed as these tables usually are. Wolfram says a PDF document cannot be compiled as a standalone executable, for example, but a PDF in an Adobe AIR application comes close. It is also worth noting that you can embed Flash in PDF, which would be an obvious route to something like the pension planning document mentioned above.</p>
<p>Nevertheless, CDF does have advantages. In particular, it has Mathematica, and whereas authoring a Flash applet requires programming and design skills, Mathematica is more approachable presuming you have the necessary mathematical, scientific or financial skills; and if you do not, you should not be authoring the document. Mathematica will construct a user interface automatically. It also has a huge range of built-in algorithms, functions and charts. Wolfram claims that authoring a CDF should be within reach of anyone who can work with an Excel macro.</p>
<p>The challenge Wolfram faces is how to make CDF usable across a broad range of devices and clients. Having to install a player or plug-in is a considerable deterrent. PDF or better still HTML5 has broader reach and works on Google Android and Apple iOS as well as on desktop PCs.</p>
<p>I tried the CDF plugin and player on Windows 7 and encountered several issues. The plug-in does not play nicely with Internet Explorer’s Protected mode and I saw this dialog frequently:</p>
<p><a href="http://www.itwriting.com/blog/wp-content/uploads/2011/07/image26.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.itwriting.com/blog/wp-content/uploads/2011/07/image_thumb25.png" width="244" height="152" /></a></p>
<p>I also had some issues with the player. I could not get an example document on Gulf Oil Spill Estimation to work:</p>
<p><a href="http://www.itwriting.com/blog/wp-content/uploads/2011/07/image27.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.itwriting.com/blog/wp-content/uploads/2011/07/image_thumb26.png" width="244" height="126" /></a></p>
<p>The player is currently for Windows, Mac and Linux – what about Apple iOS? Wolfram says it is working on this, with a two-pronged approach. One idea is presumably based on some sort of app, I’d guess either a player if Apple allows it, or some way to compile a CDF into an app. The other idea is to render the interactive parts server-side, so you could use them in a web page without a plug-in. This second idea could also remove the need for a plug-in on the desktop. You will get a performance hit because of all those trips back and forth to the server, but this could be mitigated by high performance computing on the server that will perform calculations more quickly than your client.</p>
<p>I can see CDF being popular within its niche, but whether it can transition into being a mass-market format I am not sure. Established plug-ins and runtimes such as Adobe Flash, Microsoft Silverlight, and Java on the client are all under pressure, particularly as Apple’s iOS spreads its reach; it is not a good moment to launch a new format that has a plug-in or runtime dependency. I wonder if Wolfram is exploring the possibility of compilation to HTML5 and JavaScript?</p>
<p>Despite these reservations, the broader vision behind CDF seems to me spot-on. There are many cases where we currently see static charts, that would be better served by an embedded computation engine.             </p>


<p>Related posts:<ol><li><a href='http://www.itwriting.com/blog/1919-microsoft-will-document-the-outlook-file-format-users-would-rather-it-just-worked-better.html' rel='bookmark' title='Permanent Link: Microsoft will document the Outlook file format; users would rather it just worked better'>Microsoft will document the Outlook file format; users would rather it just worked better</a></li>
<li><a href='http://www.itwriting.com/blog/4166-adobe-announces-flash-builder-for-php-phonegap-integration-in-dreamweaver.html' rel='bookmark' title='Permanent Link: Adobe announces Flash Builder for PHP, PhoneGap integration in Dreamweaver'>Adobe announces Flash Builder for PHP, PhoneGap integration in Dreamweaver</a></li>
<li><a href='http://www.itwriting.com/blog/3547-ten-big-tech-trends-from-2010.html' rel='bookmark' title='Permanent Link: Ten big tech trends from 2010'>Ten big tech trends from 2010</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.itwriting.com/blog/4682-wolfram-announces-computable-document-format-for-interactive-docs.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Infragistics: upbeat on Windows Phone but also building for Apple iOS, Google Android</title>
		<link>http://www.itwriting.com/blog/4364-infragistics-upbeat-on-windows-phone-but-also-building-for-apple-ios-google-android.html</link>
		<comments>http://www.itwriting.com/blog/4364-infragistics-upbeat-on-windows-phone-but-also-building-for-apple-ios-google-android.html#comments</comments>
		<pubDate>Fri, 20 May 2011 09:40:35 +0000</pubDate>
		<dc:creator>tim</dc:creator>
				<category><![CDATA[.net]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[professional]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[visual studio]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[components]]></category>
		<category><![CDATA[infragistics]]></category>
		<category><![CDATA[ios]]></category>
		<category><![CDATA[teched]]></category>
		<category><![CDATA[windows phone 7]]></category>

		<guid isPermaLink="false">http://www.itwriting.com/blog/4364-infragistics-upbeat-on-windows-phone-but-also-building-for-apple-ios-google-android.html</guid>
		<description><![CDATA[<p>I spoke to Dean Guida, CEO and co-founder of Infragistics, at TechEd in Atlanta earlier this week. Infragistics makes components, mainly for Windows but now beginning to support non-Windows clients. There is a set of jQuery controls in preparation, and “Our roadmaps are also going to deliver native on Android and iPhone,” Guida told <p><i>...continue reading</i> <a href="http://www.itwriting.com/blog/4364-infragistics-upbeat-on-windows-phone-but-also-building-for-apple-ios-google-android.html">Infragistics: upbeat on Windows Phone but also building for Apple iOS, Google Android</a></p>


Related posts:<ol><li><a href='http://www.itwriting.com/blog/2916-hp-will-not-do-android-or-windows-7-smartphones-but-what-chance-for-webos.html' rel='bookmark' title='Permanent Link: HP will not do Android or Windows Phone 7 smartphones &ndash; but what chance for webOS?'>HP will not do Android or Windows Phone 7 smartphones &ndash; but what chance for webOS?</a></li>
<li><a href='http://www.itwriting.com/blog/4636-embarcadero-promises-delphi-everywhere-mac-ios-this-year-android-blackberry-windows-phone-to-follow.html' rel='bookmark' title='Permanent Link: Embarcadero promises Delphi everywhere: Mac, iOS this year, Android, Blackberry, Windows Phone to follow'>Embarcadero promises Delphi everywhere: Mac, iOS this year, Android, Blackberry, Windows Phone to follow</a></li>
<li><a href='http://www.itwriting.com/blog/4109-windows-phone-8-will-run-windows-8-with-silverlight-centre-stage.html' rel='bookmark' title='Permanent Link: Windows Phone 8 will run Windows 8, with Silverlight centre stage?'>Windows Phone 8 will run Windows 8, with Silverlight centre stage?</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>I spoke to Dean Guida, CEO and co-founder of <a href="http://www.infragistics.com/" target="_blank">Infragistics</a>, at TechEd in Atlanta earlier this week. Infragistics makes components, mainly for Windows but now beginning to support non-Windows clients. There is a set of <a href="http://www.infragistics.com/dotnet/netadvantage/jquery-controls.aspx" target="_blank">jQuery</a> controls in preparation, and “Our roadmaps are also going to deliver native on Android and iPhone,” Guida told me. “We have a lot of software companies that use our tools in their commercial apps, and a lot of enterprises, and we feel that we need to do it,” though he adds, “we feel that the best and the smartest business solution is to go mobile web.”</p>
<p><a href="http://www.itwriting.com/blog/wp-content/uploads/2011/05/image24.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.itwriting.com/blog/wp-content/uploads/2011/05/image_thumb24.png" width="244" height="224" /></a></p>
<p>Infragistics has a focus on data visualization, and Guida showed me some great-looking components that show animated charts, with a huge range of customisation options, and including geo-spatial and timeline controls.</p>
<p>I was intrigued to find Guida more upbeat about Windows Phone than most commentators, though I make allowance for the fact that his company has a component suite for the platform. “More than half of our customers told us that they’re either building or they will build for Windows Phone in the next 12 months,” he told me. </p>
<p>His view, which I share, is that they key advantage of Windows Phone is to Microsoft-platform enterprises rather than to consumers. “It’s so easy to extend their knowledge of Silverlight and extend apps, that they’ll be able to extend the data and the access to information this way. I think that’s going to be a beachhead for Microsoft.”</p>
<p>Of course Microsoft has marketed Windows Phone to consumers so far, and has told businesses they should continue to use Windows Mobile 6.5, clearly a dead-end. It may be easier when the company is able to move on from this mixed messaging and get behind Windows Phone as a business mobile platform.</p>
<p>Continuing a contrarian theme, Guida is also positive about Windows Presentation Foundation (WPF). “It’s huge, especially in the financial markets. They’ve made big bets on it. They’ve built a lot of their trading apps and a lot of their internal apps on it. We’ve been telling Microsoft this for years,” he says. </p>
<p>The problem I guess is that while WPF/Silverlight makes sense for data visualisation for internal apps where you control the platform, for broad reach apps that are visible to the rest of us, Adobe Flash or some other approach is a better fit.</p>
<p>It is understandable that companies like Infragistics are keen to talk up the Microsoft platform. Their business depends on it. It is true that Infragistics is now experimenting with other platforms like Apple iOS and Google Android, but historically developers on non-Microsoft platforms have not formed a strong component market.</p>
<p>“They don’t get it as much as Microsoft developers,” says Guida. “We used to have a ton of Java components. I was at the second JavaOne conference. We built some of the first AWT components, JavaBeans, Swing components. There’s a lot more pain developing for these platforms than on the Microsoft platform, Microsoft has done a great job with the tooling. Why have that pain? I think there is a distinction between the Microsoft and the non-Microsoft developer, that they have a higher tolerance for, pain’s probably not the right word, but a higher tolerance for taking longer to get stuff done. I can only believe that over time maturity will happen. It’s really about satisfying a business need or a consumer need. These platforms are different, but if we go in and give them the tools, why not? We’re really just this year starting to get there.”</p>
<p>It is a brave hope; but looking at the Infragistics site, there are currently no Java controls on offer, and even the 2008 NetAdvantage for JavaServer Faces (JSF) seems to have disappeared. If the Microsoft client platform does decline, the future will be challenging.</p>


<p>Related posts:<ol><li><a href='http://www.itwriting.com/blog/2916-hp-will-not-do-android-or-windows-7-smartphones-but-what-chance-for-webos.html' rel='bookmark' title='Permanent Link: HP will not do Android or Windows Phone 7 smartphones &ndash; but what chance for webOS?'>HP will not do Android or Windows Phone 7 smartphones &ndash; but what chance for webOS?</a></li>
<li><a href='http://www.itwriting.com/blog/4636-embarcadero-promises-delphi-everywhere-mac-ios-this-year-android-blackberry-windows-phone-to-follow.html' rel='bookmark' title='Permanent Link: Embarcadero promises Delphi everywhere: Mac, iOS this year, Android, Blackberry, Windows Phone to follow'>Embarcadero promises Delphi everywhere: Mac, iOS this year, Android, Blackberry, Windows Phone to follow</a></li>
<li><a href='http://www.itwriting.com/blog/4109-windows-phone-8-will-run-windows-8-with-silverlight-centre-stage.html' rel='bookmark' title='Permanent Link: Windows Phone 8 will run Windows 8, with Silverlight centre stage?'>Windows Phone 8 will run Windows 8, with Silverlight centre stage?</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.itwriting.com/blog/4364-infragistics-upbeat-on-windows-phone-but-also-building-for-apple-ios-google-android.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fit for business? Google updates App Engine with the Enterprise in mind</title>
		<link>http://www.itwriting.com/blog/4110-fit-for-business-google-updates-app-engine-with-the-enterprise-in-mind.html</link>
		<comments>http://www.itwriting.com/blog/4110-fit-for-business-google-updates-app-engine-with-the-enterprise-in-mind.html#comments</comments>
		<pubDate>Mon, 04 Apr 2011 11:38:48 +0000</pubDate>
		<dc:creator>tim</dc:creator>
				<category><![CDATA[amazon]]></category>
		<category><![CDATA[cloud computing]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[professional]]></category>
		<category><![CDATA[salesforce.com]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[amazon ec2]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[google app engine]]></category>
		<category><![CDATA[microsoft]]></category>

		<guid isPermaLink="false">http://www.itwriting.com/blog/4110-fit-for-business-google-updates-app-engine-with-the-enterprise-in-mind.html</guid>
		<description><![CDATA[<p>Google has updated App Engine to 1.4.3. The new version adds:</p> <p>Prospective Search API for Python – this lets you register a large set of queries which are executed against a flow of data so you can create notifications or other actions whenever a match is found.</p> <p>Testbed Unit Test Framework for Python – <p><i>...continue reading</i> <a href="http://www.itwriting.com/blog/4110-fit-for-business-google-updates-app-engine-with-the-enterprise-in-mind.html">Fit for business? Google updates App Engine with the Enterprise in mind</a></p>


Related posts:<ol><li><a href='http://www.itwriting.com/blog/3487-google-app-engine-and-why-vendor-honesty-pays.html' rel='bookmark' title='Permanent Link: Google App Engine and why vendor honesty pays'>Google App Engine and why vendor honesty pays</a></li>
<li><a href='http://www.itwriting.com/blog/571-google-app-engine-how-much-will-you-pay-for-freedom.html' rel='bookmark' title='Permanent Link: Google App Engine: how much will you pay for freedom?'>Google App Engine: how much will you pay for freedom?</a></li>
<li><a href='http://www.itwriting.com/blog/1478-the-battle-to-be-part-of-the-emerging-cloud-stack-forcecom-for-google-app-engine.html' rel='bookmark' title='Permanent Link: The battle to be part of the emerging cloud stack: Force.com for Google App Engine'>The battle to be part of the emerging cloud stack: Force.com for Google App Engine</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Google has <a href="http://googleappengine.blogspot.com/2011/03/announcing-app-engine-143-release_30.html" target="_blank">updated App Engine to 1.4.3</a>. The new version adds:</p>
<p><strong>Prospective Search API for Python</strong> – this lets you register a large set of queries which are executed against a flow of data so you can create notifications or other actions whenever a match is found.</p>
<p><strong>Testbed Unit Test Framework for Python</strong> – this lets you create stubs for Google services for lightweight unit tests.</p>
<p><strong>Concurrent requests for Java</strong> – a single application instance can now serve multiple requests provided it is marked threadsafe. An important feature.</p>
<p><strong>Java Remote API</strong> – the remote API lets you access an App Engine datastore from your local machine. </p>
<p>I have had the sense that Google App Engine is more attractive to start-ups and small organisations than to enterprise customers. It is interesting to see Google working on bringing the Java and Python runtimes closer to parity, as Java is more widely used for enterprise development.</p>
<p>Another initiative aimed at enterprise customers is <a href="http://code.google.com/appengine/business/" target="_blank">App Engine for Business</a>, currently in preview. What you get is:</p>
<p>An <strong>Enterprise Administration Console</strong> console for managing all apps built by your company, with access control lists.</p>
<p><strong>99.9% service level agreement</strong></p>
<p><strong>Hosted SQL</strong>:</p>
<blockquote><p>While many applications can be built on the App Engine Datastore (which uses <a href="http://labs.google.com/papers/bigtable.html">Google&#8217;s BigTable database system</a>), we know SQL is the industry standard for the enterprise, so we’ve got you covered. SQL database support on App Engine gives enterprise developers access to the full capabilities of a dedicated relational database, without the headache of managing it. </p>
</blockquote>
<p><strong>SSL to an URL that uses your domain</strong>, such as https://myapp.apps.example.com.</p>
<p><strong>Pricing</strong> – $8 per user up to a maximum of $1000 per month. In other words, if you have more than 125 users the cost per user starts coming down; if you have 1000 users it is a bargain.</p>
<p>Has Google done enough to make App Engine attractive to enterprise customers? <a href="http://www.carlosble.com/2010/11/goodbye-google-app-engine-gae/" target="_blank">This post</a> from a frustrated developer back in November 2010 complained about stability issues and other annoyances that do not really exist on <a href="http://aws.amazon.com/ec2/" target="_blank">Amazon</a> or <a href="http://www.microsoft.com/windowsazure/" target="_blank">Microsoft Azure</a>; the <a href="http://www.salesforce.com/platform/" target="_blank">Salesforce.com platform</a> does have some throttling limitations. But it does seem that Google is determined to address the issues and App Engine for Business looks promising.</p>


<p>Related posts:<ol><li><a href='http://www.itwriting.com/blog/3487-google-app-engine-and-why-vendor-honesty-pays.html' rel='bookmark' title='Permanent Link: Google App Engine and why vendor honesty pays'>Google App Engine and why vendor honesty pays</a></li>
<li><a href='http://www.itwriting.com/blog/571-google-app-engine-how-much-will-you-pay-for-freedom.html' rel='bookmark' title='Permanent Link: Google App Engine: how much will you pay for freedom?'>Google App Engine: how much will you pay for freedom?</a></li>
<li><a href='http://www.itwriting.com/blog/1478-the-battle-to-be-part-of-the-emerging-cloud-stack-forcecom-for-google-app-engine.html' rel='bookmark' title='Permanent Link: The battle to be part of the emerging cloud stack: Force.com for Google App Engine'>The battle to be part of the emerging cloud stack: Force.com for Google App Engine</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.itwriting.com/blog/4110-fit-for-business-google-updates-app-engine-with-the-enterprise-in-mind.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>RIM announces Java and Android runtimes for the Playbook, beta of native SDK</title>
		<link>http://www.itwriting.com/blog/4068-rim-announces-java-and-android-runtimes-for-the-playbook-beta-of-native-sdk.html</link>
		<comments>http://www.itwriting.com/blog/4068-rim-announces-java-and-android-runtimes-for-the-playbook-beta-of-native-sdk.html#comments</comments>
		<pubDate>Thu, 24 Mar 2011 21:52:33 +0000</pubDate>
		<dc:creator>tim</dc:creator>
				<category><![CDATA[adobe]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[professional]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[playbook]]></category>
		<category><![CDATA[rim]]></category>
		<category><![CDATA[windows phone]]></category>

		<guid isPermaLink="false">http://www.itwriting.com/blog/4068-rim-announces-java-and-android-runtimes-for-the-playbook-beta-of-native-sdk.html</guid>
		<description><![CDATA[<p>RIM has announced several new options for developing apps for its PlayBook tablet.</p> <p>RIM will launch two optional “app players” that provide an application run-time environment for BlackBerry Java® apps and Android v2.3 apps. These new app players will allow users to download BlackBerry Java apps and Android apps from BlackBerry App World and <p><i>...continue reading</i> <a href="http://www.itwriting.com/blog/4068-rim-announces-java-and-android-runtimes-for-the-playbook-beta-of-native-sdk.html">RIM announces Java and Android runtimes for the Playbook, beta of native SDK</a></p>


Related posts:<ol><li><a href='http://www.itwriting.com/blog/5259-android-good-or-bad-for-java-oracle-claims-harm-but-i-am-sceptical.html' rel='bookmark' title='Permanent Link: Android: good or bad for Java? Oracle claims harm but I am sceptical'>Android: good or bad for Java? Oracle claims harm but I am sceptical</a></li>
<li><a href='http://www.itwriting.com/blog/4544-adobe-flash-builder-now-targets-apple-ios-blackberry-playbook-google-android.html' rel='bookmark' title='Permanent Link: Adobe Flash Builder now targets Apple iOS, BlackBerry PlayBook, Google Android'>Adobe Flash Builder now targets Apple iOS, BlackBerry PlayBook, Google Android</a></li>
<li><a href='http://www.itwriting.com/blog/5181-oxygene-for-java-released-develop-for-android-and-java-runtime-with-delphi-language-in-visual-studio.html' rel='bookmark' title='Permanent Link: Oxygene for Java released: develop for Android and Java runtime with Delphi language in Visual Studio'>Oxygene for Java released: develop for Android and Java runtime with Delphi language in Visual Studio</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>RIM has <a href="http://press.rim.com/release.jsp?id=4935">announced</a> several new options for developing apps for its PlayBook tablet.</p>
<blockquote><p>RIM will launch two optional “app players” that provide an application run-time environment for BlackBerry Java® apps and Android v2.3 apps. These new app players will allow users to download BlackBerry Java apps and Android apps from BlackBerry App World and run them on their BlackBerry PlayBook.</p>
<p>In addition, RIM will shortly release the native SDK for the BlackBerry PlayBook enabling C/C++ application development on the BlackBerry® Tablet OS. For game-specific developers, RIM is also announcing that it has gained support from two leading game development tooling companies, allowing developers to use the cross-platform game engines from Ideaworks Labs and Unity Technologies to bring their games to the BlackBerry PlayBook. </p>
</blockquote>
<p>It sounds as if the Android runtime will not be perfectly compatible with real Android:</p>
<blockquote><p>Developers currently building for the BlackBerry or Android platforms will be able to quickly and easily port their apps to run on the BlackBerry Tablet OS thanks to a high degree of API compatibility.</p>
</blockquote>
<p>Nevertheless, this will be an attractive route for Android developers looking for a quick way to port to the Blackberry.</p>
<p>The native SDK is currently in “limited alpha release” but RIM is promising an open beta for this summer.</p>
<blockquote><p>The BlackBerry Tablet OS NDK will allow developers to build high-performance, multi-threaded, native C/C++ applications with industry standard GNU toolchains. Developers can create advanced 2D and 3D applications and special effects by leveraging programmable shaders available in hardware-accelerated OpenGL ES 2.0.</p>
</blockquote>
<p>The deal with <a href="http://unity3d.com/">Unity</a> is important too. Unity is an increasingly popular toolkit for game development and adding the Blackberry to the list of supported platforms will boost its appeal. Ideaworks Labs makes the <a href="http://www.airplaysdk.com/">Airplay SDK</a>, a cross-platform toolkit which already supports Apple iOS, Android, Symbian, Samsung Bada, HP webOS and Windows Mobile.</p>
<p>Note that the primary SDK for the Playbook has until now been Adobe AIR; and since the UI itself uses the Flash runtime this likely still makes sense for many applications.</p>
<p>RIM is doing a good job of opening up its platform. It is an interesting contrast to Microsoft’s “Silverlight, XNA or nothing” approach for Windows Phone.</p>


<p>Related posts:<ol><li><a href='http://www.itwriting.com/blog/5259-android-good-or-bad-for-java-oracle-claims-harm-but-i-am-sceptical.html' rel='bookmark' title='Permanent Link: Android: good or bad for Java? Oracle claims harm but I am sceptical'>Android: good or bad for Java? Oracle claims harm but I am sceptical</a></li>
<li><a href='http://www.itwriting.com/blog/4544-adobe-flash-builder-now-targets-apple-ios-blackberry-playbook-google-android.html' rel='bookmark' title='Permanent Link: Adobe Flash Builder now targets Apple iOS, BlackBerry PlayBook, Google Android'>Adobe Flash Builder now targets Apple iOS, BlackBerry PlayBook, Google Android</a></li>
<li><a href='http://www.itwriting.com/blog/5181-oxygene-for-java-released-develop-for-android-and-java-runtime-with-delphi-language-in-visual-studio.html' rel='bookmark' title='Permanent Link: Oxygene for Java released: develop for Android and Java runtime with Delphi language in Visual Studio'>Oxygene for Java released: develop for Android and Java runtime with Delphi language in Visual Studio</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.itwriting.com/blog/4068-rim-announces-java-and-android-runtimes-for-the-playbook-beta-of-native-sdk.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

