<?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>Geeknizer &#187; Java</title>
	<atom:link href="http://geeknizer.com/category/java/feed/" rel="self" type="application/rss+xml" />
	<link>http://geeknizer.com</link>
	<description>iPhone, Android, mobile, Technology news</description>
	<lastBuildDate>Wed, 08 Feb 2012 16:55:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>Java 8, Java 9 Features Preview</title>
		<link>http://geeknizer.com/java-8-java-9-features-preview/</link>
		<comments>http://geeknizer.com/java-8-java-9-features-preview/#comments</comments>
		<pubDate>Wed, 14 Dec 2011 16:25:13 +0000</pubDate>
		<dc:creator>Tarandeep Singh</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://geeknizer.com/?p=9307</guid>
		<description><![CDATA[Java 7 brought lots of new features after going through a number of delays. Oracle is more prepared and excited about Java 8. They call it a Revolution and not... <span class="meta-more"><a href="http://geeknizer.com/java-8-java-9-features-preview/">Read more &#187;</a></span>]]></description>
			<content:encoded><![CDATA[<p><a href="http://geeknizer.com/tag/java-7/">Java 7</a> brought lots of <a href="http://geeknizer.com/java-7-features-whats-new/">new features</a> after going through a number of delays.</p>
<p>Oracle is more prepared and excited about Java 8. They call it a <strong>Revolution</strong> and not an evolution.</p>
<p><img class="alignnone size-full wp-image-9308" title="java8-java9" src="http://geeknizer.com/wp-content/uploads/2011/12/java8-java9.jpg" alt="" width="180" height="238" /></p>
<p>Major improvements in <strong>Java 8 </strong>will be:</p>
<ul>
<li>JVM convergence i.e. <a href="http://geeknizer.com/oracle-merge-java-hotspot-jrocket/">hybrid of JRocket and Java Hotspot VM</a>.</li>
<li>Better support for Multicore hardware and applications.</li>
<li>Addition of type annotations,</li>
<li>a Date/Time API (JSR310) and support for sensors to widen the deployment options for the code.</li>
</ul>
<p>It can be broken down to two major projects:</p>
<ol>
<li>Project Lambda</li>
<li>Project Jigsaw</li>
</ol>
<p><strong>1. Project Lambda </strong>will enable Java to work much more effectively with multicore processing systems – the most likely hardware used by Java going forward.</p>
<blockquote><p>“Some would say adding Lambda expressions is just to keep up with the cool kids, and there’s some truth in that,” Reinhold said. “But the real reason is multicore processors; the best way to handle them is with Lambda.”</p></blockquote>
<p>Fundamentally, Project Lambda would allow programming patterns that require modeling code as data to be convenient and idiomatic in Java. The principal new language features include:</p>
<ul>
<li>Lambda expressions (informally, &#8220;closures&#8221; or &#8220;anonymous methods&#8221;)</li>
<li>Expanded target typing</li>
<li>Method and constructor references</li>
<li>Default methods</li>
</ul>
<p>The goal of OpenJDK Project Lambda is to host a prototype implementation of JSR 335 suitable for inclusion in JDK 8, the Reference Implementation of Java SE 8.The prototype compiler is being implemented in OpenJDK.</p>
<ul>
<li>Source code is available at <a href="http://hg.openjdk.java.net/lambda/lambda">http://hg.openjdk.java.net/lambda/lambda</a>.</li>
<li>Binaries at <a href="http://jdk8.java.net/lambda">http://jdk8.java.net/lambda</a>.</li>
</ul>
<p>Full details about Lamda can be accessed <a href="http://cr.openjdk.java.net/~briangoetz/lambda/lambda-state-3.html">here</a>.</p>
<p><strong>2. Project Jigsaw</strong><strong>:</strong></p>
<p>The original goal of this Project was to design and implement a module system focused narrowly upon the goal of modularizing the JDK, and to apply that system to the JDK itself. We expected the resulting module system to be useful to developers for their own code, and it would have been fully supported for that purpose, but it was not at the outset intended to be an official part of the Java SE Platform Specification.</p>
<p><strong>Project Jigsaw Fundamentals: </strong>(from official page)</p>
<blockquote>
<ul>
<li><a id="module-dependences" name="module-dependences" href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#module-dependences"><em>Module dependences</em></a> — The module system must replace the class path and its explicit enumeration of JAR files with a less error-prone system of named, versioned modules and explicit dependences between them. Where possible this approach should borrow from UNIX shared-library concepts. Most developers and deployers are quite comfortable with this model since it is used not only by shared libraries but also Maven, .NET, and most UNIX/Linux packaging systems.</li>
<li><a id="resolution-in-all-phases" name="resolution-in-all-phases" href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#resolution-in-all-phases"><em>Resolution in all phases</em></a> — Build-time, install-time, and run-time module resolution and linking must all be supported. UNIX has all three models and they are all still in use 40 years later.</li>
<li><a id="fidelity-across-all-phases" name="fidelity-across-all-phases" href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#fidelity-across-all-phases"><em>Fidelity across all phases</em></a> — The set of modules seen by a library or application must be computed by the same algorithm at build time, install time, and run time.</li>
<li><a id="encapsulation" name="encapsulation" href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#encapsulation"><em>Encapsulation</em></a> — If a module contains a type, whether defined therein or imported from some other module, then it must be possible to declare that it makes that type available for use by modules depending upon it, or that it does not do so.</li>
<li><a id="versioning" name="versioning" href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#versioning"><em>Versioning</em></a> — The module system must support common version-string schemes such as those defined by OSGi and Maven and also those found in both proprietary and open-source software products. Version strings must be totally ordered but otherwise the module system must not impose any particular structure or semantics upon them. It must be possible to specify a range of allowable versions when declaring a module dependence.</li>
<li><a id="optional-modules" name="optional-modules" href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#optional-modules"><em>Optional modules</em></a> — It must be possible to declare that a module depends optionally upon some other module. If that second module is available then it is resolved and linked normally. If it is not available, however, then no exception is thrown and no error is reported by the module system. A simple API must be provided so that a running program can test whether a particular optional module has been resolved and linked.</li>
<li><a id="refactoring" name="refactoring" href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#refactoring"><em>Refactoring</em></a> — It must be possible to refactor a module into a set of smaller modules, without breaking existing modules or applications that depend upon the original module (splitting). Likewise, it must be possible to refactor a set of modules so that they appear to be a single module, without breaking existing modules or applications that depend upon the original modules (aggregation).</li>
<li><a id="substitution" name="substitution" href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#substitution"><em>Substitution</em></a> — It must be possible to declare that one module can substitute for another. This supports <a href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#refactoring">refactoring</a> via aggregation and also allows a module to resolve against any one of a set of equivalent implementation modules. JREs from different vendors, <em>e.g.</em>, can all declare that they are substitutes for the “java” module. An application module that requires only standard Java SE APIs can declare that it requires the “java” module rather than some specific JRE module, and that dependence will be satisfied by any one of those JREs.</li>
<li><a id="module-constraints-on-targets" name="module-constraints-on-targets" href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#module-constraints-on-targets"><em>Module constraints on targets</em></a> — In a module declaration it must be possible to declare that the module can only be used on target platforms with specific properties, <em>e.g.</em>, particular operating systems, processor architectures, or display geometries. The resolution algorithm must ignore any module whose platform constraints are not satisfied by the target platform.</li>
<li><a id="target-constraints-on-modules" name="target-constraints-on-modules" href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#target-constraints-on-modules"><em>Target constraints on modules</em></a> — On a particular target platform it must be possible to declare that only modules with specific properties can be installed, <em>e.g.</em>, particular authors, publishers, or licenses. The resolution algorithm must ignore any module that does not satisfy the target platform’s module constraints.</li>
<li><a id="native-code" name="native-code" href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#native-code"><em>Native code</em></a> — The module system must provide a way to package both Java class files and native libraries in a single artifact and control linking in a similar way for both. The existing <a href="http://download.java.net/jdk7/docs/api/java/lang/System.html#loadLibrary(java.lang.String)"><tt>System.loadLibrary</tt></a> method and related methods must be enhanced to be module-aware. It must be possible for a native library in a Java module to have a native dependence upon another native library that is either in the same Java module, in some other Java module, or elsewhere in the target platform.</li>
<li><a id="services" name="services" href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#services"><em>Services</em></a> — It must be possible to package service providers into modules so that they can be discovered via an enhanced version of the existing <a href="http://download.java.net/jdk7/docs/api/java/util/ServiceLoader.html"><tt>java.util.ServiceLoader</tt></a> API.</li>
<li><a id="resources" name="resources" href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#resources"><em>Resources</em></a> — It must be possible to package localization data into modules so that it can be discovered via an enhanced version of the existing <a href="http://download.java.net/jdk7/docs/api/java/util/ResourceBundle.html"><tt>java.util.ResourceBundle</tt></a> API.</li>
<li><a id="read-only-operation" name="read-only-operation" href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#read-only-operation"><em>Read-only operation</em></a> — The module system must be able to function at run time when running from a read-only volume. This is a security requirement in some scenarios and may also be required for some compliance regimes.</li>
<li><a id="platform-modularization" name="platform-modularization" href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#platform-modularization"><em>Platform modularization</em></a> — The module system must support a medium-grained modularization of the Java SE API whose minimal configuration defines an API roughly the size of the current Java ME CDC platform. It must provide a safety valve to prevent the JDK from continuing to grow without bound (<em>e.g.</em>, a hypothetical java.3d API shouldn’t need to go into the base platform). It must be possible to provide subsets of the platform such as “headless” (no 2d/awt/swing/audio/sound) and “client” (no RMI, CORBA, <em>etc.</em>) commonly requested by developers of embedded SE and EE solutions. Finally, it must be possible to release and update logically-separate portions of the Java API separately.</li>
<li><a id="package-subsets" name="package-subsets" href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#package-subsets"><em>Package subsets</em></a> — In support of <a href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#platform-modularization">platform modularization</a>, it must be possible for the types defined in a Java package to be provided by more than one module yet still be loaded by the same class loader at run time. This is required so that CDC-sized subsets of large legacy packages such as java.util can be defined.</li>
<li><a id="shared-class-loaders" name="shared-class-loaders" href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#shared-class-loaders"><em>Shared class loaders</em></a> — In support of <a href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12#platform-modularization">platform modularization</a>, it must be possible to declare that the types defined in a specific set of modules must be loaded by the same class loader.</li>
</ul>
</blockquote>
<p>Further details about Jigsaw are available <a href="http://openjdk.java.net/projects/jigsaw/doc/draft-java-module-system-requirements-12">here</a>.</p>
<p>Looking ahead to <strong>Java 9</strong> areas of development would be:</p>
<ul>
<li>A self-tuning JVM,</li>
<li>Massive Multicore scalability</li>
<li>Hypervisor integration</li>
<li>Improved native integration,</li>
<li>Metaobject protocol</li>
<li>big-data support,</li>
<li><a href="http://en.wikipedia.org/wiki/Reification_(computer_science)">Reification</a>,</li>
<li>Adding tail calls and continuations,</li>
<li>A new meta-object protocol to improve cross language support,</li>
<li>multi-tenancy,</li>
<li>RAS</li>
<li>Resource management for cloud applications, and</li>
<li>Heterogeneous compute models.</li>
</ul>
<p>That&#8217;s all we know of Java 9 as of now, more, when we hear next.</p>
<p>We write latest and greatest in <a href="http://geeknizer.com/tag/guide">Tech Guides</a>, <a href="http://geeknizer.com/tag/apple">Apple</a>, <a href="http://geeknizer.com/tag/iphone">iPhone</a>, <a href="http://geeknizer.com/tag/tablet">Tablets</a>, <a href="http://geeknizer.com/tag/android">Android</a>,  <a href="http://geeknizer.com/tag/open-source">Open Source</a>, Latest in Tech, subscribe to us<a href="http://twitter.com/geeknizer"><strong>@geeknizer</strong>on Twitter</a> OR on <a href="https://www.facebook.com/geeknizer">Facebook Fanpage</a>, <strong><a href="https://plus.google.com/b/117636454220284616721/" target="_blank">Google+</a></strong>:</p>
]]></content:encoded>
			<wfw:commentRss>http://geeknizer.com/java-8-java-9-features-preview/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>James Gosling leaves Google, joins Robotics startup</title>
		<link>http://geeknizer.com/james-gosling-leaves-google/</link>
		<comments>http://geeknizer.com/james-gosling-leaves-google/#comments</comments>
		<pubDate>Wed, 31 Aug 2011 04:00:01 +0000</pubDate>
		<dc:creator>Tarandeep Singh</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Open source]]></category>

		<guid isPermaLink="false">http://geeknizer.com/?p=8700</guid>
		<description><![CDATA[After spending only months at Google (March-August 2011), The Father of Java, James Gosling, makes yet another switch. This time its not another software giant but rather a startup that... <span class="meta-more"><a href="http://geeknizer.com/james-gosling-leaves-google/">Read more &#187;</a></span>]]></description>
			<content:encoded><![CDATA[<p><img class="alignright" src="http://geeknizer.com/wp-content/uploads/2010/04/james-gosling-java.jpg" alt="" width="320" height="240" />After spending only months at Google (March-August 2011), The Father of Java, James Gosling, makes yet another switch. This time its not another software giant but rather a startup that he thinks suits his desires.</p>
<p>Soon after the Oracle-Sun merger, James <a href="http://geeknizer.com/father-of-java-resigns/">decided to move on</a> and had being onto his night hacks, not working for a particular company. This year, he <a href="http://geeknizer.com/father-of-java-joins-google/">joined Google </a>in pursuit of bigger ambitions. He quotes:</p>
<blockquote><p>&#8220;I&#8217;ve surprised myself and made another career change. I had a great time at Google, met lots of interesting people, but I met some folks outside doing something completely outrageous, and after much anguish decided to leave Google.&#8221;</p></blockquote>
<p>This Tuesday, he announced that <a href="http://nighthacks.com/roller/jag/" target="_blank">he has moved on to Liquid Robotics</a>, where he is chief software architect. He has solid belief in this startup and claims:</p>
<blockquote><p>&#8220;They have a growing fleet of autonomous vehicles that rove the ocean collecting data from a variety of onboard sensors and uploading it to the cloud. The robots have a pile of satellite uplink/GSM/WiMax communication gear and redundant GPS units&#8221;</p></blockquote>
<p>Gosling will be involved in both onboard software for sensing, navigation, and autonomy, as well as in the data center, dealing with rush of data:</p>
<blockquote><p>&#8220;The current systems work well, but they have a variety of issues that I look forward to working on. This is going to be a lot of fun.&#8221;</p>
<p>&#8220;<a href="http://liquidr.com/" target="_blank">Liquid Robotics</a> tackles a rocket science problem that does good for the world and is incurably cool, Liquid Robotics can totally change the way we look at oceans. We&#8217;ll be able to get a wide variety of detailed data more cheaply and pervasively than any other way. It involves a large data problem and a large-scale control problem, both of which are fascinating to me and have been passions of mine for years.&#8221;</p></blockquote>
<p>It would be fascinating to see how a startup evolves with this mastermind.</p>
<p>via LiquidR <a href="http://liquidr.com/files/2011/08/JamesGosling_8_30_11.pdf">pressRelease</a> [pdf]</p>
<p>We write about <a href="http://geeknizer.com/tag/open-source">Open Source</a>, <a href="http://geeknizer.com/tag/programming">Programming</a>, <a href="http://geeknizer.com/tag/java">Java</a>, Latest Tech news as they happen, get them <a href="http://twitter.com/geeknizer"><strong>@geeknizer </strong>on Twitter</a> or <a href="http://facebook.com/geeknizer" target="_blank">Facebook Fanpage</a> or subscribe below:</p>
]]></content:encoded>
			<wfw:commentRss>http://geeknizer.com/james-gosling-leaves-google/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Father of Java Joins Google</title>
		<link>http://geeknizer.com/father-of-java-joins-google/</link>
		<comments>http://geeknizer.com/father-of-java-joins-google/#comments</comments>
		<pubDate>Mon, 28 Mar 2011 16:40:27 +0000</pubDate>
		<dc:creator>Tarandeep Singh</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Open source]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://geeknizer.com/father-of-java-joins-google</guid>
		<description><![CDATA[If you love Java or Open source, here is a good news for you. James Gosling aka Father of Java, has joined Google and you will be glad to know... <span class="meta-more"><a href="http://geeknizer.com/father-of-java-joins-google/">Read more &#187;</a></span>]]></description>
			<content:encoded><![CDATA[<p><a href="http://geeknizer.com/wp-content/uploads/james-gosling_java1.jpg"><img class="alignleft size-full wp-image-7329" title="james-gosling_java" src="http://geeknizer.com/wp-content/uploads/james-gosling_java1.jpg" alt="" width="180" height="153" /></a>If you love Java or <a href="http://geeknizer.com/tag/open-source" target="_blank">Open source</a>, here is a good news for you. James Gosling aka <a href="http://geeknizer.com/father-of-java-resigns">Father of Java</a>, has joined Google and you will be glad to know that he would be again driving core of the Java &amp; open source technologies from a company that already loves Openness more than anyone else.</p>
<p>James Gosling, previously an employee of Sun Microsystems, had <a href="http://geeknizer.com/father-of-java-resigns">left Oracle</a> as he thought staying with the company wasn&#8217;t good for him or the industry.</p>
<p><a href="http://nighthacks.com/roller/jag/entry/next_step_on_the_road">Gosling announced his new job at Google</a> &#8220;I don&#8217;t know what I&#8217;ll be working on. I expect it&#8217;ll be a bit of everything, seasoned with a large dose of grumpy curmudgeon,&#8221; he said.</p>
<p>Oracle&#8217;s ways evidently didn&#8217;t agree with Gosling. He called Oracle Chief Executive Larry Ellison &#8220;<a href="http://nighthacks.com/roller/jag/entry/cynical_chuckles" target="_blank">Larry, Prince of Darkness</a>.&#8221; And, he said, &#8220;During the integration meetings between Sun and <a href="http://geeknizer.com/tag/oracle" target="_blank">Oracle</a>, where we were being grilled about the patent situation between Sun and Google, we could see the Oracle lawyer&#8217;s eyes sparkle.&#8221; It was definitely against the ethical limits of Sun or Gosling. Suing is the last part Sun thought about.</p>
<p>Google had been sued by Oracle over Java patents in Android, Gosling being a true Open source professional punched Larry Ellison&#8217;s face by joining Google. Gosling&#8217;s choice was obvious since it has the same research-intensive practices that built Sun, but only more successful. And unlike Sun, Google has managed to become famous for endorsing &#8216;Open&#8217;.</p>
<p><a href="http://geeknizer.com/wp-content/uploads/ellison.jpg"><img class="alignright size-full wp-image-7330" title="ellison" src="http://geeknizer.com/wp-content/uploads/ellison.jpg" alt="" width="200" height="237" /></a></p>
<p>Over the last year, he was all on his own and now after a year he claims that &#8220;One of the toughest things about life is making choices. I had a hard time saying &#8216;no&#8217; to a bunch of other excellent possibilities.&#8221;</p>
<p>Outside of Oracle, Google is the no. 1 contributor for <a href="http://geeknizer.com/tag/java" target="_blank">Java</a> and Open source standards. With Gosling on the board, the internet giant is bound to make things better.</p>
<p>We write about <a href="http://geeknizer.com/tag/open-source">Open Source</a>, <a href="http://geeknizer.com/tag/programming">Programming</a>, <a href="http://geeknizer.com/tag/java">Java</a>, Latest Tech news as they happen, get them<a href="http://twitter.com/taranfx"><strong>@taranfx</strong> on Twitter</a> or <a href="http://facebook.com/taranfx" target="_blank">Facebook Fanpage</a> or subscribe below:</p>
]]></content:encoded>
			<wfw:commentRss>http://geeknizer.com/father-of-java-joins-google/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>BitCoin: P2P Internet Currency for Foreign Exchange</title>
		<link>http://geeknizer.com/bitcoin-p2p-internet-currency-foreign-exchange/</link>
		<comments>http://geeknizer.com/bitcoin-p2p-internet-currency-foreign-exchange/#comments</comments>
		<pubDate>Thu, 24 Mar 2011 16:29:11 +0000</pubDate>
		<dc:creator>Tarandeep Singh</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Web languages]]></category>
		<category><![CDATA[banks]]></category>
		<category><![CDATA[foreign exchange fx]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[money]]></category>
		<category><![CDATA[p2p]]></category>

		<guid isPermaLink="false">http://geeknizer.com/?p=7301</guid>
		<description><![CDATA[How often does a technology comes from Open world and changes our lifes forever. The Open Web did this to us years back and today we spent most our lives... <span class="meta-more"><a href="http://geeknizer.com/bitcoin-p2p-internet-currency-foreign-exchange/">Read more &#187;</a></span>]]></description>
			<content:encoded><![CDATA[<p><a href="http://geeknizer.com/wp-content/uploads/bitcoin.jpg"><img class="alignleft size-full wp-image-7302" title="bitcoin" src="http://geeknizer.com/wp-content/uploads/bitcoin.jpg" alt="" width="190" height="189" /></a>How often does a technology comes from Open world and changes our lifes forever. The Open Web did this to us years back and today we spent most our lives on the web. BitTorrent did it to all kinds of file sharing and here come BitCoin &#8211; The Open currency for the internet.</p>
<p>BitCoin was started in 2009, and it was until very recently that it started getting more adoption worldwide. Unlike most currencies, bitcoin does not rely on trusting any central issuer. Bitcoin uses a distributed database spread across nodes of a peer-to-peer network to journal transactions, and uses cryptography in order to provide basic security functions, such as ensuring that bitcoins can only be spent by the person who owns them, and never more than once.</p>
<p>BitCoin is purely <a href="http://geeknizer.com/tag/p2p">P2p</a> , that means that there is no central authority to issue new money or keep track of transactions. Instead, these tasks are managed collectively by the nodes of the network. So you get the same advantages that you see in <a href="http://geeknizer.com/tag/torrent">BiTorrents</a>, yet better:</p>
<ul>
<li>Bitcoins can be sent easily through the Internet, without having to trust middlemen.</li>
<li>It can&#8217;t be stopped.</li>
<li>Transactions are designed to be computationally prohibitive to reverse.</li>
<li>Be safe from instability caused by fractional reserve banking and central banks. The limited inflation of the Bitcoin system’s money supply is distributed evenly (by <a href="http://geeknizer.com/tag/cpu">CPU</a> power) throughout the network, not monopolized by banks. No extra currency conversion fees.</li>
</ul>
<p>Bitcoin relies on the transfer of amounts between public accounts using <a title="Public key cryptography" href="http://en.wikipedia.org/wiki/Public_key_cryptography">public key cryptography</a>. All transactions are public and stored in a distributed database. To prevent double-spending, the network implements a <em>distributed time server</em>, using the idea of chained proofs of work. The whole history of transactions must be stored inside the database.</p>
<p>Here are few videos that can get you started:</p>
<p><object style="height: 390px; width: 640px;" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="100" height="100" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://www.youtube.com/v/Um63OQz3bjo?version=3" /><param name="allowfullscreen" value="true" /><embed style="height: 390px; width: 640px;" type="application/x-shockwave-flash" width="100" height="100" src="http://www.youtube.com/v/Um63OQz3bjo?version=3" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p><object style="height: 390px; width: 640px;" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="100" height="100" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://www.youtube.com/v/FTOhti7wxXk?version=3" /><param name="allowfullscreen" value="true" /><embed style="height: 390px; width: 640px;" type="application/x-shockwave-flash" width="100" height="100" src="http://www.youtube.com/v/FTOhti7wxXk?version=3" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>Very Recently, A Google developer release a Java-based open source implementation of BitCoin and called it <a href="http://code.google.com/p/bitcoinj/" target="_blank">BitCoinJ</a>.</p>
<p>BitcoinJ implements the native Bitcoin P2P protocol, which allows it to  maintain a wallet and send and receive transactions without needing a  local copy of the official implementation.</p>
<p>BitcoinJ implements the &#8220;simplified payment  verification&#8221; mode so it stores what it needs in order to verify  transactions with the aid of an untrusted peer node.</p>
<p>Andresen  said Google is more likely to adopt Bitcoin if the company has an  in-house implementation of the client software like <strong>BitcoinJ</strong> and that&#8217;s why we see a Big future in BitCoin And a second implementation of Bitcoin is very good for network diversity of apps, platforms and robustness.</p>
<p><strong>Download C++ based BitCoin application</strong>:</p>
<p><a title="SHA1 checksum: 402be898806c380eb1f488bd1a7f06b595460be3" href="http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.20/bitcoin-0.3.20.2-win32-setup.exe/download">Download for Windows</a> (5.8MB)<br />
<a title="SHA1 checksum: 5c73031ee872884e741a3cd77d50732b7168f127" href="http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.20/bitcoin-0.3.20.2-linux.tar.gz/download">Download  for Linux (32-bit &amp; 64-bit)</a> (9.8MB)<br />
<a title="SHA1 checksum: b540825d864e7561cc21465ad072fb299e0d817a" href="http://sourceforge.net/projects/bitcoin/files/Bitcoin/bitcoin-0.3.20/bitcoin-0.3.20.01-macosx.zip/download">Download for Mac OS X (10.5+ Intel)</a> (7.7MB)</p>
<p>We write latest and greatest in <a href="http://geeknizer.com/tag/guide">Tech Guides</a>, <a href="http://geeknizer.com/tag/apple">Apple</a>, <a href="http://geeknizer.com/tag/iphone">iPhone</a>, <a href="http://geeknizer.com/tag/tablet">Tablets</a>, <a href="http://geeknizer.com/tag/android">Android</a>,  <a href="http://geeknizer.com/tag/open-source">Open Source</a>, Latest in Tech, subscribe to us<a href="http://twitter.com/taranfx"><strong>@taranfx </strong>on Twitter</a> OR on <a href="http://facebook.com/taranfx">Facebook Fanpage</a>:</p>
]]></content:encoded>
			<wfw:commentRss>http://geeknizer.com/bitcoin-p2p-internet-currency-foreign-exchange/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Java JDK 7 marks Feature Complete</title>
		<link>http://geeknizer.com/java-jdk-7-feature-complete/</link>
		<comments>http://geeknizer.com/java-jdk-7-feature-complete/#comments</comments>
		<pubDate>Tue, 18 Jan 2011 15:22:24 +0000</pubDate>
		<dc:creator>Tarandeep Singh</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[jdk7]]></category>
		<category><![CDATA[Oracle]]></category>

		<guid isPermaLink="false">http://geeknizer.com/java-jdk-7-feature-complete</guid>
		<description><![CDATA[Java 7 is just around the corner with JDK 7 project  reaching the &#8220;Feature Complete (FC)&#8221; phase of software development cycle. What this means that development and QA have finished... <span class="meta-more"><a href="http://geeknizer.com/java-jdk-7-feature-complete/">Read more &#187;</a></span>]]></description>
			<content:encoded><![CDATA[<p><a href="http://geeknizer.com/wp-content/uploads/java7.jpg"><img class="alignleft size-full wp-image-6832" title="java7" src="http://geeknizer.com/wp-content/uploads/java7.jpg" alt="" width="230" height="218" /></a>Java 7 is just around the corner with JDK 7 project  reaching the &#8220;Feature Complete (FC)&#8221; phase of software development cycle.</p>
<p>What this means that development and QA have finished all the planned feature and test development work in the release. Up next, they will be testing and bug fixing on all supported JDK 7 platforms. This is a major step towards JDK 7 General Availability (GA).</p>
<p>Java 7 has been delayed several times, as per the last schedule, it was suppose to go FC on 12/16.</p>
<p>The FC milestone allows for exceptions to be integrated later. Such new features would come from updated JAXP/JAXB/JAX-WS and integration of the <a href="http://openjdk.java.net/projects/jdk7/features/#f530073">enhanced JMX agent from JRockit</a>. However, these won&#8217;t affect the current Roadmap.</p>
<p>However, the factor that can delay JDK7 further would be introduction of modifications in JSRs which are controlled by Expert Groups for the JSRs 203, 292, 334, 336.</p>
<p>Related: <a href="http://geeknizer.com/java-7-whats-new-performance-benchmark-1-5-1-6-1-7">Java 7 What`s New, Performance <strong>Benchmark</strong> 1.5 1.6 1.7</a></p>
<p><strong>Java JDK 7 Features:</strong></p>
<p>Features are listed in order, more or less, from lowest to highest in the overall <strong>JDK  software stack</strong>.</p>
<ul>
<li><a href="http://openjdk.java.net/projects/jdk7/features/#vm">vm</a> &#8211; <a href="http://openjdk.java.net/projects/jdk7/features/#f353">JSR 292: Support for dynamically-typed languages (InvokeDynamic)</a>, <a href="http://openjdk.java.net/projects/jdk7/features/#fa535991">Strict class-file checking</a> [NEW]</li>
<li><a href="http://openjdk.java.net/projects/jdk7/features/#lang">lang</a> &#8211; <a href="http://openjdk.java.net/projects/jdk7/features/#f618">JSR 334: Small language enhancements (Project Coin)</a></li>
<li><a href="http://openjdk.java.net/projects/jdk7/features/#core">core</a> &#8211; <a href="http://openjdk.java.net/projects/jdk7/features/#f352">Upgrade class-loader architecture</a> , <a href="http://openjdk.java.net/projects/jdk7/features/#f584">Method to close a URLClassLoader</a>, <a href="http://openjdk.java.net/projects/jdk7/features/#f515">Concurrency and collections updates (jsr166y)</a></li>
<li><a href="http://openjdk.java.net/projects/jdk7/features/#i18n">i18n</a> &#8211; <a href="http://openjdk.java.net/projects/jdk7/features/#f497">Unicode 6.0</a>, <a href="http://openjdk.java.net/projects/jdk7/features/#fa535895">Locale enhancement</a>, <a href="http://openjdk.java.net/projects/jdk7/features/#fa538265">Separate user locale and user-interface locale</a></li>
<li><a href="http://openjdk.java.net/projects/jdk7/features/#ionet">ionet</a> &#8211; <a href="http://openjdk.java.net/projects/jdk7/features/#f250">JSR 203: More new I/O APIs for the Java platform (NIO.2)</a> , <a href="http://openjdk.java.net/projects/jdk7/features/#fa537814">NIO.2 filesystem provider for zip/jar archives</a>, <a href="http://openjdk.java.net/projects/jdk7/features/#f405">SCTP (Stream Control Transmission Protocol)</a>, <a href="http://openjdk.java.net/projects/jdk7/features/#f639">SDP (Sockets Direct Protocol)</a>, <a href="http://openjdk.java.net/projects/jdk7/features/#fa535996">Use the Windows Vista IPv6 stack</a>, <a href="http://openjdk.java.net/projects/jdk7/features/#fa534339">TLS 1.2</a></li>
<li><a href="http://openjdk.java.net/projects/jdk7/features/#sec">sec</a> &#8211; <a href="http://openjdk.java.net/projects/jdk7/features/#f73">Elliptic-curve cryptography (ECC)</a></li>
<li><a href="http://openjdk.java.net/projects/jdk7/features/#jdbc">jdbc</a> &#8211; <a href="http://openjdk.java.net/projects/jdk7/features/#fa539110">JDBC 4.1</a></li>
<li><a href="http://openjdk.java.net/projects/jdk7/features/#client">client</a> &#8211; <a href="http://openjdk.java.net/projects/jdk7/features/#f653">XRender pipeline for Java 2D</a>, <a href="http://openjdk.java.net/projects/jdk7/features/#f650">Create new platform APIs for 6u10 graphics features</a>, <a href="http://openjdk.java.net/projects/jdk7/features/#f244">Nimbus look-and-feel for Swing</a>, <a href="http://openjdk.java.net/projects/jdk7/features/#f652">Swing JLayer component</a></li>
<li><a href="http://openjdk.java.net/projects/jdk7/features/#web">web</a> &#8211; <a href="http://openjdk.java.net/projects/jdk7/features/#f568">Update the XML stack</a></li>
<li><a href="http://openjdk.java.net/projects/jdk7/features/#mgmt">mgmt</a> &#8211; <a href="http://openjdk.java.net/projects/jdk7/features/#f530073">Enhanced JMX Agent and MBeans</a> [NEW]</li>
</ul>
<p>For Latest Tech updates in <a href="http://geeknizer.com/tag/open-source">Open Source</a>, <a href="http://geeknizer.com/tag/programming">Programming</a>, <a href="http://geeknizer.com/tag/java">Java</a>, Tech News find us on <a>Twitter <strong>@taranfx</strong></a><strong> </strong>or subscribe below:</p>
]]></content:encoded>
			<wfw:commentRss>http://geeknizer.com/java-jdk-7-feature-complete/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java would Run inside Javascript runtime Environment (besides JVM)</title>
		<link>http://geeknizer.com/java-javascript-runtime-environment/</link>
		<comments>http://geeknizer.com/java-javascript-runtime-environment/#comments</comments>
		<pubDate>Tue, 14 Dec 2010 15:29:57 +0000</pubDate>
		<dc:creator>Tarandeep Singh</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[Open source]]></category>
		<category><![CDATA[Oracle]]></category>

		<guid isPermaLink="false">http://geeknizer.com/java-javascript-runtime-environment</guid>
		<description><![CDATA[VP of Java development at Oracle has hinted that the Java 7 is taking shape and could get its public stable release within coming months. There were couple of other... <span class="meta-more"><a href="http://geeknizer.com/java-javascript-runtime-environment/">Read more &#187;</a></span>]]></description>
			<content:encoded><![CDATA[<p><a href="http://geeknizer.com/wp-content/uploads/Java-duke.jpg"><img class="alignleft size-full wp-image-6480" title="Java-duke" src="http://geeknizer.com/wp-content/uploads/Java-duke.jpg" alt="" width="200" height="235" /></a>VP of Java development at Oracle has hinted that the <a href="http://geeknizer.com/java-7-whats-new-performance-benchmark-1-5-1-6-1-7">Java 7</a> is taking shape and could get its public stable release within coming months. There were <a href="http://blogs.sun.com/javaspotlight/entry/java_spotlight_podcast_7_adam">couple of other announcements</a> (which can be <a href="http://kenai.com/downloads/javaspotlight/JavaSpotlight007.mp3" target="_blank">heard on this Podcast</a>, <a href="http://blogs.sun.com/javaspotlight/resource/episode-007.html" target="_blank">transcript here</a>), but the interest has risen towards the <a href="http://geeknizer.com/james-gosling-future-of-java">Future of Java</a>, &#8220;We have a strategy to run Java inside a Javascript environment&#8221; said Adam Messinger.</p>
<blockquote><p><cite>Roger:</cite> One last question here. What’s Oracle going to do to make Java successful on the desktop?</p>
<p><cite>Adam:</cite> &#8230; <a href="http://geeknizer.com/why-choose-javafx-how-to-code-benchmark-graphics-cpu-memory">JavaFX</a> bla bla … another way is <strong>this strategy we have around running Java inside of a JavaScript environment</strong>. So there the programming language is Java, but the platform is <strong>not a JVM </strong>platform.</p>
<p>This is a little bit of a scary thing, honestly, for Oracle, because while the language is something we know and love, a lot of the value we have comes from the stack underneath the JVM, the library, and so on and so forth.</p>
<p>But we think it’s something that we need to do for the community so we can<strong> make Java available more places</strong> from tablet devices like the iPad where there is not an easy way to get Java there today, to desktops where, while there are applets, some people choose not to use applets, and we want a solution that works there.</p></blockquote>
<p>Clearly, Oracle is working on a way to use Javascript as a runtime environment for Java byte code. To be more precise, they are moving along the lines of Orto (a ptorotype of implementation of the JVM in Javascript) which would allow one to cross-compile existing Java libraries to Javascript – a far more interesting prospect as it would make Java truly portable, going beyond restrictions of the platform. However, its much harder to get around access to hardware, OS features via javascript in brwosers like Chrome, Firefox.</p>
<p>However, this could become an interesting topic altogether as world moves towards hardware accelerated (and faster) browsers like Chrome. I can foresee how Chrome OS (&amp; chrome browsers) could take speed advantage using <a href="http://code.google.com/p/nativeclient/wiki/NativeClientInGoogleChrome" target="_blank">Native compilation (NaCl)</a> to run Java byte code, as fast as the native JVM code, right inside the javascript embedded in web pages.</p>
<p>We write latest and greatest in <a href="http://geeknizer.com/tag/google">Google</a>, <a href="http://geeknizer.com/tag/guide">Tech Guides</a>, <a href="http://geeknizer.com/tag/apple">Apple</a>, <a href="http://geeknizer.com/tag/iphone">iPhone</a>,<a href="http://geeknizer.com/tag/tablet">Tablets</a>, <a href="http://geeknizer.com/tag/android">Android</a>, <a href="http://geeknizer.com/tag/open-source">Open Source</a>, Latest in Tech, subscribe to us<a href="http://twitter.com/taranfx"><strong>@taranfx </strong>on Twitter</a> OR:</p>
]]></content:encoded>
			<wfw:commentRss>http://geeknizer.com/java-javascript-runtime-environment/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>James Gosling &#8211; Future of Java, His Life Story [Podcast]</title>
		<link>http://geeknizer.com/james-gosling-future-of-java/</link>
		<comments>http://geeknizer.com/james-gosling-future-of-java/#comments</comments>
		<pubDate>Wed, 29 Sep 2010 15:27:56 +0000</pubDate>
		<dc:creator>Tarandeep Singh</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[future]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://geeknizer.com/james-gosling-future-of-java</guid>
		<description><![CDATA[Oracle&#8217;s Java  One is just over, and there&#8217;s hardly any buzz about it. Is Java really Dead? o, No not even near, its still growing. After moving on from Oracle... <span class="meta-more"><a href="http://geeknizer.com/james-gosling-future-of-java/">Read more &#187;</a></span>]]></description>
			<content:encoded><![CDATA[<p><a href="http://geeknizer.com/wp-content/uploads/james-gosling_java.jpg"><img class="alignleft size-full wp-image-5936" title="james-gosling_java" src="http://geeknizer.com/wp-content/uploads/james-gosling_java.jpg" alt="" width="245" height="275" /></a>Oracle&#8217;s Java  One is just over, and there&#8217;s hardly any buzz about it. Is Java really Dead? o, No not even near, its still growing.</p>
<p>After <a href="http://geeknizer.com/father-of-java-resignshttp://geeknizer.com/father-of-java-resigns">moving on from Oracle to Google</a>, he had been silent on Java&#8217;s progress.  Folks at <a href="http://basementcoders.com/?p=721" target="_blank">Basementcoders</a> got a chance for an exclusive Interview with James Gosling, right after Java One. The <a href="http://media.techtarget.com/TheServerSideCOM/downloads/James_Gosling_Interview.mp3" target="_blank">full audio podcast</a> is available but the background noise  overtakes the listening pleasure.</p>
<p><script type="text/javascript">// <![CDATA[
			AudioPlayer.embed("pod_audio_1", {soundFile: "http%3A%2F%2Fmedia.techtarget.com%2FTheServerSideCOM%2Fdownloads%2FJames_Gosling_Interview.mp3"});
// ]]&gt;</script></p>
<p>Here is the full Transcription of the Podcast:</p>
<blockquote><p><strong>Moderator</strong>: All right, and we&#8217;re back. We&#8217;ve got a very special episode this time around. We have James Gosling, father of Java, thanks very much for doing a podcast with us.</p>
<p><strong>James Gosling</strong>: Well, thanks for inviting me.</p>
<p><strong>Moderator</strong>: Alright, well, maybe you can just start with kind of how did you started out? You know, where did you grow up, where did you go to school, and then how did your career take you to this point?</p>
<p><strong>James Gosling</strong>: I don&#8217;t know I mean, the whole life story in 25 words or less?. I&#8217;m Canadian, went to the University of Calgary (4:25), graduated from there then went to Carnegie Mellon; got a PhD there.</p>
<p><strong>Moderator</strong>: Did you grow up in Calgary then?</p>
<p><strong>James Gosling</strong>: Yeah, I grew up in Calgary, I lived there until I was 22, then I went off to get a PhD in Pittsburgh in computer science, and I ended up with a Master&#8217;s as well from CMU and did a wide variety of consulting jobs and then moved on to some bigger jobs. I eventually graduated in &#8217;83. Went to work for IBM which is, you know, is within the top 10 of my stupidist career decisions I&#8217;ve made (5:20) –</p>
<p><strong>Moderator</strong>: (Laughing) I want to shake this guys&#8217; hand! Because I made that same mistake myself. But don&#8217;t tell me you actually wore a Blue Suit</p>
<p><strong>James Gosling</strong>: Oh no, but I did log way too many frequent flier miles and ended up working on this project that had people in San Jose California, Austin Texas and [inaudible] Connecticut; and my office officially was in NY even though I lived in Pittsburgh. So I kind of actually lived on an airplane. But yeah, the stint at IBM lasted a year, year and a half. You know, at which point, I mean the funny thing is that when I went to go join IBM I actually had another sort of offer so I had actually had lunch with Andy Bechtolsheim the day he signed the papers with Scott [McNealy[ and Vinod [Khosia] to create Sun, and so he was actually trying to join Sun at the same time, and I would&#8217;ve been like employee number 4 or 5 or something.</p>
<p>I just said, &#8220;Andy you&#8217;re a nutcase. You&#8217;re trying to do this with these Motorola chips that suck, and IBM&#8217;s got these great chips, they will kill you.&#8221; And yes, the IBM had CPU&#8217;s that were way better than the Motorolla stuff, but all of IBM&#8217;s guns were pointed at themselves so my year and a half working at IBM was more about understanding how the Marx brothers really worked. (All Laughing) And so then you know, they were hammering on me pretty regularly to join Sun and eventually I gave in and so I went to work at Sun the day before and now here we are.</p>
<p><strong>Moderator</strong>: Right. Well, I brought this up to you when we saw you at the Thirsty Bear it&#8217;s kinda funny how we approached you because I&#8217;m the kind of guy where I don&#8217;t know if it&#8217;s my Canadianess but I don&#8217;t like to intrude on people&#8217;s personal space, but I wasn&#8217;t necessarily thinking oh, we can get him to do our podcast. So what we did was we actually got a few of the guys live to come up to you.</p>
<p><strong>James Gosling</strong>: And they clearly weren&#8217;t quite sure what they were doing or why they had been put up to something.</p>
<p><strong>Moderator</strong>: but you just pulled out your phone right away and were like &#8220;Yeah, what time works for you? I&#8217;m good on Tuesday.&#8221;, and well, now here we are, and that is just great. So this is another Canadian thing, you got the order of Canada did you not?</p>
<p><strong>James Gosling</strong>: I did, I did. So if only Canada were Britian, I&#8217;d be Sir James. But Canada doesn&#8217;t do the &#8216;Sir&#8217; thing, so I escaped that particular indignity.</p>
<p><strong>Moderator</strong>: That&#8217;s great that somebody doing the order of Canada nominations actually knew what Java was and your contributions to it. So what kind of perks does that give you in Canada?</p>
<p><strong>Moderator</strong>: You get to meet the Govener General.</p>
<p><strong>James Gosling</strong>: Yeah I got to meet the Governor General, that was probably the most of it. You end up with a really cool medal.</p>
<p><strong>Moderator</strong>: That&#8217;s the sum total of it?</p>
<p><strong>Moderator</strong>: And the studliness going into the bar with the ladies of course</p>
<p><strong>Moderator</strong>: (in reference to the medal) yeah, you got the &#8220;bling&#8221; on (laughs)</p>
<p><strong>James Gosling</strong>: (lauging) Oh yeah. And the funny part of it was that I ended up with my face all over the newspapers in Canada, even though there were several people that got the Order of Canada at the same time, but when the governor general, she&#8217;s kind of short, so when she lifted the thing that goes over my head I kind of like crouched down and I did kind of a funny thing and it made her just howl. She just broke out laughing so she had this great laughing expression on her face, so all the newspapers selected that picture based on her expression.</p>
<p>10:38 <strong>Moderator</strong>: Now was Java a strategic thing for Sun or was it an experiment? Like was it a &#8220;lets do what we can, lets try a few things&#8221;</p>
<p><strong>James Gosling</strong>: I&#8217;d call it a strategic experiment. And it actually worked out in a direction</p>
<p>10:38 <strong>Moderator</strong>: That worked out.</p>
<p><strong>James Gosling</strong>: That was sort of unexpected. So at the beginning, a group of disgruntled Sun engineers (11:07) were missing the boat on X, Y and Z. We liked to go out and just think about stuff. And we had a list of things that we felt we were missing the boat on and Scott sort of went, yeah, that makes sense. So we went off and we sort of did this thing called the Green Project.  The only thing that survived in the Green Project was the bit that I did which was the software development environment stuff. But we built this really neat little hand held and that was in 1992 when the state of the art for hardware to build that kind of stuff was pretty shaky. But compared to the other stuff we&#8217;d built it was extraordinarily cool for the day.</p>
<p><strong>Moderator</strong>: What did it do?</p>
<p>12:30 <strong>James Gosling</strong>: It had an LCD touch screen, a fairly wicked processor on it. It had a very early version of 802.11. The 802.11 spec wasn&#8217;t even out yet. It was actually like one of these really funky military radios.</p>
<p><strong>Moderator</strong>: Sounds like a Sun SPARC.</p>
<p><strong>James Gosling</strong>: No, it was actually a microSPARC. It was a microSPARC CPU and we actually ran Solaris. That&#8217;s one of the things that I sure wish we had kept on, and one of the odd twists of fate is that some of the folks who did that hardware for that handheld for Sun&#8230;</p>
<p><strong>Moderator</strong>: I&#8217;m actually not familiar with that, is it Sun SPARC? Or you mean the actual machines?</p>
<p><strong>James Gosling</strong>: Yeah, the CPU, the SPARC – we had started doing these microSPARCs, very low-powered, very small. But a couple of the engineers that had built that phone were deeply involved in the iPad. So in an odd sort of twist of fate, the iPad is kind of an evolution of it. But yeah, so we had at the time been concerned about what was going down in the consumer space, what was going on in the desktop. CPUs were showing up in all these surprising things that most people in the computer world were just ignoring.</p>
<p><strong>Moderator</strong>: It was all about big racks servers right?</p>
<p><strong>James Gosling</strong>: Well at that point, the big rack servers were different from the big racks today, but by the time that &#8217;95 rolled around there was this huge industry-wide problem with Microsoft and so the strategic reasoning and focus shifted from the boat that we were missing over here to the huge attack we were getting over there and various folks realized that this one corner we had used, we could actually repurpose it when dealing with the Microsoft threat. And that was the whole Java launch, getting people like IBM and Oracle to sign on and support it. It was a very strategic thing for Sun in &#8217;95 when we launched it, but it was also a strategic thing in &#8217;92 when we started the experiment. It was just sort of strategic in different directions.</p>
<p><strong>Moderator</strong>: Well, you talk about strategy, so as Craig had said, we&#8217;re all contributors to the Java community and I think all of us have made a career off of Java and our contributions. I work closely with Apache and commit to several projects, I pretty much put my whole career on it. And this big acquisition came and there were a lot of questions as to where is it gonna go? Where is Java gonna go? It&#8217;s no secret, and if you can&#8217;t answer anything feel free not to. Feel free to speak your mind here. The whole &#8220;Free Java&#8221;. We get it. Especially me coming from the Apache side, I&#8217;m not speaking for Apache, but I work closely with the JCP and JSRs and I know that there&#8217;s been a lot of stress so-to-speak. The acquisition came, there&#8217;s a lot of fear and mistrust in the community, we noticed you left. And we noticed your pretty cool t-shirts you&#8217;ve got there. (James is wearing a t-shirt depicting Larry Ellison&#8217;s face on a TV screen, with Java&#8217;s mascot Duke throwing a hammer at it like in the old Apple 1984-esque commercials) So tell us about all that, tell us what your thoughts are and how does that ring into the way we feel as contributors to a lot of this open source software that we base our careers on. What are your thoughts on all that?</p>
<p><strong>James Gosling</strong>: Well, the tshirt had been kinda fun. I am yet to see anyone wear one.</p>
<p><strong>Moderator</strong>: (jokingly) yeah, we&#8217;ve been all &#8220;taken care of&#8221; by the Oracle employees already, that&#8217;s why you don&#8217;t see us wearing them.</p>
<p><strong>James Gosling</strong>: Various Oracle employees have been instructed not to wear them. I&#8217;ve noticed this is a great tshirt to wear in big crowds around here because the seas just parts, &#8216;cuz people are like, &#8216;I don&#8217;t want to be near that.&#8217; Which I find really funny. And the whole free java thing is kind of a weird history with me because Sun from day zero is an open source company and this whole weirdness that we have about open source was not a weirdness open source but a weirdness about the actors and the games in the drama. So when the start of the Java foundation thing happened in 2007 what we have to understand is that that was entirely orchestrated by Oracle. Oracle wrote that bizarre clause that went in that one set of meeting minutes, they wrote that. They went around to everyone in DC and said it is the sense of the executive committee that the Java community would be best served by the established new Java and Java foundation. And so if you&#8217;re an open source contributor, participant, that all sounds really good. And fundamentally we agreed with that. The problem was that A. it was driven by Oracle whose motives were more than slightly not what we wanted them to be, and they had strong-armed a bunch of people into signing in ways that made them uncomfortable. And some folks like IBM I mean, IBM&#8217;s been kind of weird on the whole topic because on the one hand they do everything they can to try and screw Sun over, I mean they didn&#8217;t name eclipse casually</p>
<p><strong>Moderator</strong>: I was surprised that they aren&#8217;t the ones that bought Sun</p>
<p><strong>James Gosling</strong>: Yeah I don&#8217;t know. The little bits I do know are, they were being very cagey about issues around anti-trust and that made them nervous and when the Sun&#8217;s board was controlled by an extremely small number of institution investors, and so it was the institution investors who were driving everything and sale had nothing to do with business or what would be good for employees or anything like that. It was totally a bunch of investment banks needing liquidity now and they were looking for the best terms and so how it all came down, I really don&#8217;t know. I&#8217;m deeply thankful I was not in those rooms at the time cause it&#8217;s not something that&#8217;s fun. But that&#8217;s just the way the world goes. But the whole thing around the Java Foundation three years ago it was really this whole snarky back room deal by Oracle and I have no illusions about Oracle ever actually living up to their words because this is Oracle we&#8217;re talking about but I find it deeply amusing, that they were deeply snarky about this three years ago but now that the shoe&#8217;s on the other foot (22:45) they go NO.</p>
<p><strong>Moderator</strong>: Well three years ago, they did not own Java.</p>
<p><strong>James Gosling</strong>: Well that&#8217;s right, hey didn&#8217;t own Java, but it just points out, and I don&#8217;t know how to say it other than to say they were lying, duplicitous shits three years ago and by their turnaround, they&#8217;re basically admitting that. Oracle is kind of a funny company because they take glory in that. They have no issues with being categorized that way. Some of their PR people might get a little uncomfortable with it, but up at the top, they deeply, deeply don&#8217;t give a shit.</p>
<p><strong>Moderator</strong>: Being developers and because we&#8217;ve all had so much invested in our careers and we saw the acquisition occur, we saw you exit which really scared everybody, everyone said wow! We&#8217;ve seen a lot of strong Oracle folks jumping ship, moving on, a lot of really good people contribute to the community and then we see this lawsuit coming down the pipeline, and everyone&#8217;s like, you just attacked probably one of the biggest contributors to the Java community, Google, what are you thinking? Now, that being said, Oracle&#8217;s got a great Android app you can download for JavaOne, and now I&#8217;m not getting that one? So what are your thoughts on that?</p>
<p><strong>James Gosling</strong>: With Oracle it doesn&#8217;t have to make sense, it just has to make money. And one of the important things for the community to remember is that Oracle is deeply, deeply dependent on the success of Java. It&#8217;s a really huge fraction of their business. All of their fast growing parts of their business are formerly based on it (25:30). So there are really serious limits on how weird they can get, and also, Oracle isn&#8217;t a monolith, it&#8217;s more monolithic than many companies because the O-pod micromanages things pretty severely but there are a lot of really good people at Oracle. And they know what the right thing to do is. And they may be constrained by business folks and the rest of this but there are a lot of people whose heart&#8217;s in the right place and they will do whatever they can to do the right thing</p>
<p><strong>Moderator</strong>: What are your thoughts on the lawsuit. The whole Google thing? What are your thoughts behind that?</p>
<p><strong>James Gosling</strong>: It&#8217;s all about money. There&#8217;s nothing else in there. At Sun we&#8217;d done an analysis and yeah, there&#8217;s a bunch of patents violated here.</p>
<p><strong>Moderator</strong>:Is it because of the encroachment on something like ME, JavaME (mobile edition) because now ME doesn&#8217;t really look that attractive with Android?</p>
<p><strong>James Gosling</strong>: It was just other patents being involved and that legal guys do these evaluations all the time, and we&#8217;ve been through a lot of patent cases and we really, really, really, really hated litigation. It&#8217;s a waste of time, it&#8217;s really expensive, it&#8217;s a PR nightmare when the other side is the universe&#8217;s lovechild it&#8217;s an especially large PR nightmare. (27:00) So the Google guys are being a little weird, but they&#8217;re also being a little good, so add up the balance, but the Oracle guys want a licensing opportunity.</p>
<p><strong>Moderator</strong>: So you think that&#8217;s what they&#8217;re going for? Trying to force a hand to make Google somehow pay up a license. Because here&#8217;s the fear, the fear is if they went after Google for that what are they gonna do with Apache for example? I mean in theory, there&#8217;s a lot of software like Harmony that&#8217;s being used quite significantly in the Android components Isn&#8217;t that the thing about open source?</p>
<p><strong>James Gosling</strong>: I think that&#8217;s really unlikely. I think that the licensing deals with Harmony are pretty tough. Whereas Google just sort of went (inaudible) and I&#8217;m fairly sure that the Oracle lawyers probably did their homework, Oracle hired good lawyers. And since Android is open source you look at the code – does the pattern match code in the patent?</p>
<p><strong>Moderator</strong>: Was it your blog about when the deal Sun and Oracle going through, the Oracle lawyer&#8217;s eyes lit up?</p>
<p><strong>James Gosling</strong>: yeah, that was my blog. And they really did. They were like, ooh. Because lawyers just like to make revenue. And I&#8217;m sure they were looking at the license fees they were getting from Microsoft. Microsoft .NET just smears over a huge pile of Sun patents. When they did the .NET design, they basically cut and pasted from the Java spec. The way that they did CLR, you know they swizzled the way the instruction set went but the way this thing really operated, they exercised essentially no creativity when coming up with .NET. They&#8217;ve done some things since then that have been kind of good but as part of the various court cases we ended up with this rather odd patent deal with them that involved them paying us fairly tasty amounts of money. And I&#8217;m sure that the lawyers looked at the Microsoft numbers and said, yeah I want that from Google</p>
<p><strong>Moderator</strong>: Ah. Now it makes sense.</p>
<p><strong>James Gosling</strong>: Yeah, and so that&#8217;s just a random guess that that would be their opening thought.</p>
<p><strong>Moderator</strong>: You think the case has merit? Legally speaking?</p>
<p><strong>James Gosling</strong>: I would guess that the Oracle lawyers did their homework. They almost, because they use open source, it&#8217;s really easy for the Oracle lawyers to go out and hire third-party experts to do the comparison. So they probably actually have a fairly solid case. I mean this is one of the reasons that hardware manufacturers often don&#8217;t open source their drivers. Because if they open source their drivers, then other hardware manufacturers will look at that and go, oh, well your hardware must stomp on this patent device.</p>
<p><strong>Moderator</strong>: Ah, that&#8217;s interesting.</p>
<p><strong>James Gosling</strong>: I&#8217;ve had more than on hardware manufacturer tell me that.</p>
<p><strong>Moderator</strong>: That&#8217;s interesting. Now, your T-shirts &#8220;Set Java free&#8221; there&#8217;s a vendor who got in trouble for putting out these really cool shirts in the vendor center and on the back it says &#8220;Java, Just Free It&#8221; And Oracle came in and said no, you&#8217;re not giving those away so a few people went around there and kinda under the table were able to obtain them. We saw a lot of people do that. So obviously they&#8217;re very sensitive about it. Tell us about that initiative and what you want to see through Java.</p>
<p><strong>James Gosling</strong>:  I think it&#8217;s really funny how sensitive the Oracle guys are and the lengths they&#8217;ve gone to suppress any of this stuff. The fact Oracle employees have been told not to talk to me is really funny. And of course that hasn&#8217;t stopped them from talking to me. They walk up to me and say &#8220;I&#8217;m not allowed to talk to you, but this is the latest stupid thing they&#8217;ve done.&#8221; And what should happen going forward, it needs responsible stewardship. I&#8217;m actually perfectly happy with Oracle continuing as long as they act responsibly towards the community, and there have been recent incidents where they have not done that</p>
<p>And there have been a variety of things like OpenSolaris. OpenSolaris was simply a cluster-fuck for the community. It was just horrible. And the stuff they did around things like OpenSSO and the identity management things was just horrible. I think they&#8217;re much less likely to do that to Java, but it&#8217;s going to require the community to keep up the pressure. And creating a foundation. That could be good. It could be a nightmare. I mean the computer industry has a history of foundations and some of them work out well. I think the average one has just turned into a political nightmare. Things like the OSF and that were just not good.</p>
<p><strong>Moderator</strong>: Are they still around?</p>
<p><strong>James Gosling</strong>: Yeah, they&#8217;re still around, but one of the problems with a foundation like that is that you set them up as the people that handle the engineering, and they you&#8217;ve got a bunch of companies that contribute to it. They&#8217;ll do that while it&#8217;s politically expedient, and then it just sort of goes away, and there&#8217;s just kinda nobody whose life is on the line for any of it. So, at some level I don&#8217;t care what direction it goes so long as the community is well served. And oracle could do that.</p>
<p>You know, in my little &#8220;Free Java&#8221; creative campaign, I have no illusion, but it&#8217;s all about just letting them know that we&#8217;re paying attention.</p>
<p><strong>Moderator</strong>: Have they tapped on your door legally in any sense? Saying &#8220;Watch what you are saying&#8221;</p>
<p><strong>James Gosling</strong>: No, there&#8217;s nothing they can actually do, as far as I know, so long as I don&#8217;t lie. But even if I lie, given what happens to other people that lie in the press. I mean, nobody has nailed Glen Beck.</p>
<p><strong>Moderator</strong>: (laughing) What would they do specifically to still remain good custodians of Java. Because I actually <strong>(37:06) </strong>had the thought that whenever oracle <strong>(inaudible)</strong> EU sector, Google well this could be good in some ways because they actually have someone to light a fire under the projects and get things going</p>
<p><strong>James Gosling</strong>:So long as they do that. The development of Java is not an inexpensive thing. It takes a fair amount of funding. It&#8217;s not just about writing code. Learning the code is two or three percent of the expense. You&#8217;re shipping fifteen million copies a week, just the bandwith is horrible. The QA when you have to worry about something that has thirty issues. When you&#8217;ve got everything, every stock exchange, every phone company on the planet. Their security depends on Java. So it&#8217;s not a causual piece of testing.</p>
<p>You know, when it comes to open source contributions, our history with contributions over the years have been kinda snarky. We&#8217;d get lost of people sending code and fixes. But on average, we&#8217;d get a submission that fixed the bug but it caused three or four more. And it probably didn&#8217;t fix the bug for everybody. It probably only fixed the bug for their one case. And trying to get people in the community to actually think about the whole code base and not just their particular issue today. Doing one line of change means an immense amount of testing.</p>
<p>Most open source projects are way too casual for that. Sometimes when you get bugs that are potential security issues, you have to move fast, you have to put immense resources on getting it done. Maybe it&#8217;s just one engineer fixing one character in one line, but then testing it and making sure you didn&#8217;t introduce a bug. The harder stuff is if you have a bug, there are probably people out there who have worked around that bug, so how many of the workarounds are you going to break. And when you&#8217;ve got nine or ten million in the developer community you have enormous applications, trivial fixes are not trivial. And open source projects, the way the average open source projects are constituted. IT&#8217;s easy to get people to do the fun stuff. It&#8217;s hard to get people to do the hard stuff.</p>
<p>Like QAing the math libraries. Like doing QA on sine and cosine, you absolutely have to have a PHd in Mathematics. Sine and cosine: it sounds really simple, but there is unbelievable amount of depths of subtlety in there. There are extraordinarily few people on the planet qualified to QA that type of stuff.</p>
<p><strong>Moderator</strong>: And that&#8217;s key. I mean, the department of defense probably bets their trajectories on those so if you get off a little bit then &#8220;oops&#8221;.</p>
<p><strong>James Gosling</strong>: So, that particular case is one I&#8217;ve been drawn into over and over again for years. If we could do benchmarks on sine and cosine on intel chips compared to C. We beat C on just about everything except benchmarks on Sine and cosine.</p>
<p>It turns out there&#8217;s a small issue with the way the sine and cosine hardware is implemented in the spec on the intel platform. And we actually work around it in software. For the ranges from plus or minus five, we are close to intel speeds. You get the larger values, where the intel thing rips. So lots of folks who use math on the Java platform because we do it accurately. We put a lot of effort into it. The fact that we actually cared about that, and lots of people depend on it, but its&#8217; not the kind of thing that Joe Hacker is going to do. And it costs actually money. Having somebody like Oracle can actually be a really good thing. Foundations tend to have issues with funding things on that kind of scale. Oracle can doe those thing. But their genetic code, their behavioral genetic code, is not that.</p>
<p><strong>Moderator</strong>: So what excites you right now? What&#8217;s out there right now that you look at and say, that&#8217;s some cool stuff</p>
<p><strong>James Gosling</strong>: There&#8217;s a lot of cool stuff. I&#8217;m all over the map on what&#8217;s cool. The project I&#8217;ve been helping out on is the control system for an Audi TTS, and that&#8217;s just indescribable cool. In the enterprise space, things like Cassandra and Voldemort and some of the NoSQL database. I&#8217;ve never got it when it comes to SQL databases. It&#8217;s like, why? Just give me a hash table and a shitload of RAM and I&#8217;m happy. And then you do something to deal with failures. And you look at the way things like the NoSQL movement is. It&#8217;s various flavors of large scale distributed hash tables and trying to deal with massive scale and massive replication, and you can&#8217;t back up the database because no tape farm is big enough. And you find scale and reliability can fit together at the same time. So a bunch of those things are really cool. (46:35) I&#8217;m actually pretty excited about the sort of pragmatic evolution of the open source movement that is happening. There&#8217;s kind of a religious fanatic side that is just &#8220;Information just wants to be free.&#8221; It&#8217;s like look guys, I&#8217;m an engineer. I don&#8217;t want to be an engineer as a hobby. I don&#8217;t really care about being fabulously wealthy, but I do like to eat. Some of the Open source zealots, their view is kind of like you gotta be a waiter during the day and an actor at night. And it&#8217;s like, no that doesn&#8217;t work for me. 47:30 But there&#8217;s this sort of pragmatic mode that goes, you know what&#8217;s really valuable about open source is not what&#8217;s free as in beer, but what&#8217;s free as in speech. And then the collaborative development model &#8211; if you&#8217;re going to collaborate, like companies collaborating in a non-open source way, the legal frameworks for them end up being nightmares, and if things go snarky, it is a nightmare. The standard open source program is one of the only ways to make collaboration work. But if you make it open source, how do you pay salaries. In the enterprise world its&#8217; been working out nicely, because service and support is where the money is. At Sun we had gotten open source on everything, because we came to realize that when you go 48:10 do a licensed software product, you get revenue from the license, but you&#8217;ve also got expense in selling. The marketing and all that stuff you do around selling is often pretty large. There&#8217;s a lot of overhead in shmoozing customers. And those kind of cancel out.</p>
<p><strong>49:00</strong> <strong>Moderator</strong>: How is it I understand how Microsoft made money, and then Java came along and say, how is this working? And obviously, I know now, but it took me that much to understand that. How was it explaining that to the people at Sun?</p>
<p>(49:00)<strong>James Gosling: </strong> At Sun at the time. When you think of the revenue from something. It&#8217;s this long expression, it&#8217;s a lot of terms that get added together, and one of them is a license fee. But one of the terms at the time, 15 years ago, was that every software vendor had decided that the only platform they could support was Windows NT. So all the people who were writing software for Sun Systems 15 years ago was telling us they couldn&#8217;t do it anymore. (50:00) Even though you guys have a better platform, they&#8217;ve got better volume. But IBM was getting the same message. Everybody was getting the message in the software community that they were shutting down development on everything except NT. And for a company like Sun at the time the equation was basically, if we don&#8217;t do Java, if we don&#8217;t give software developers a way to develop software for our platform without shutting themselves out from NT then they&#8217;re just going to abandon us and we&#8217;re dead.</p>
<p>It was this kind of negative turn in the whole thing that drove working then. And so in the enterprise world open source is working really well.</p>
<p>The place where it falls apart, though, is for desktop software. On the one hand, I really love Gimp and Blender. On the other, the hand, it&#8217;s total volunteerism. With desktop software, my personal view is that if desktop software requires a support call, you have failed.</p>
<p><strong>Moderator</strong>: Absolutely</p>
<p><strong>James Gosling</strong>: So in that world, the service and support model just doesn&#8217;t work, just can&#8217;t work. So one of the reasons I was trying to get the Java store done at Sun was to make there be a way for people doing desktop software &#8212; and the original versions of the Java store would support not just Java but any kind of code. But we ended up concentrating on Java code for an awkward reason, which is that if you&#8217;re delivering software to people, you are implicitly taking on some liability, because if the thing you deliver destroys their machine, then you&#8217;ve got some liability. If people are contributing stuff to the store, how do you know that it&#8217;s good stuff vs. some rogue, malignant thing.</p>
<p><strong>Moderator</strong>: That&#8217;s one of the challenges that the Google Android store was having.</p>
<p><strong>James Gosling</strong>: The thing about delivering Java code is that if you do it well and get the sandbox right, then we can actually make strong statements about how much damage this thing can do. So the store was working was that you could either go through rigorous testing and get the locks taken off the sandbox, or you could deliver what you wanted but it had to have locks on it. And going on the rounds with the lawyers, that&#8217;s where we had to go. And we really couldn&#8217;t do that for non-java code.</p>
<p>(54:30) One of the sad things about android was they really didn&#8217;t pay attention to security issues as much as they should have. Google is kind of a funny company because a lot of them have this peace love and happiness version of evil. And by being overly peach love and happiness, and believing the whole world is peace love and happiness, they end up doing evil, because they really didn&#8217;t spend enough time thinking about, there are actually nasty people out there. Google puts a lot of effort into security in things like Chrome.</p>
<p><strong>Moderator</strong>: But they&#8217;re pretty good at watching everywhere you go aren&#8217;t they?</p>
<p><strong>James Gosling</strong>: Absolutely. I have this love hate thing with Google these days. They can get kind of creepy.</p>
<p><strong>Moderator</strong>: Do you use the browser plug ins that prevent the ads and block and analytic stuff?</p>
<p><strong>James Gosling</strong>: No. I mean, I sometimes do.</p>
<p>I used to do them all the time, but I do that more because I didn&#8217;t like the obnoxious adds.</p>
<p><strong>Moderator</strong>: Oh, yeah, like the ones that would pop up and flash a monkey?</p>
<p><strong>James Gosling</strong>: Yeah, and the personal privacy stuff, I&#8217;m just like, you know, blocking their ads is not going to do it. If you actually want personal privacy, the only thing you can do is disconnect and you have to go live in some obscure valley in New Zealand.</p>
<p>Yeah, I think that&#8217;s what I&#8217;ve heard. You have to go somewhere in New Zealand to keep Google from watching you.</p>
<p><strong>James Gosling</strong>: Yeah, you have to be in a cave so you&#8217;re out of reach of a satellite. And if you need to spend money, it has to be cash.</p>
<p><strong>Moderator</strong>: But it is creepy</p>
<p><strong>James Gosling</strong>: It&#8217;s getting very, very creepy.</p>
<p><strong>Moderator</strong>: You wrote a great post about that, the Star Trek vs. Blade Runner. That was a very apt comparison.</p>
<p>(57:15)<strong>James Gosling</strong>: Right, and the thing is the future isn&#8217;t something that&#8217;s rammed down our throats. The future is a choice. The human race is six or seven billion odd people each of which is making choices every day. You add up all those choices and that&#8217;s the direction of humanity. Each of us has fairly small voices, but you add up a lot of small voices and you get big voices. And for people who are in positions where they&#8217;re molding the core pieces like Computer software. I hear people saying it&#8217;s all over. Why do we need software? It&#8217;s like, guys, we&#8217;ve hardly even started. Every last hardware engineer on this planet has a huge impact on the future in a huge portion. Every software developer has been granted lots more votes than one. So vote wisely.</p>
<p><strong>Moderator</strong>: Absolutely</p>
<p><strong>James Gosling</strong>: Personally, I like blade runner the movie, I just don&#8217;t want to live there.</p>
<p><strong>Moderator</strong>: What&#8217;s your thoughts on the other languages?</p>
<p><strong>James Gosling</strong>: I&#8217;m a big fan. I can&#8217;t say I use them a lot. You know, the Java design was not that I thought it was the perfect language. The whole design concept there was about being comfortable with existing C and C++ developers and seeing bits and pieces they felt cool with.</p>
<p>Clojure. Clojusre&#8217;s got a lot of coolness about it but it&#8217;s not for everyone.</p>
<p><strong>Moderator</strong>: Is there any one you like more than the other?</p>
<p><strong>James Gosling</strong>: I like Scala, but my big problem is that the type theory has gotten really complicated. The language lawyers are driving the bus. It&#8217;s turning into something that journeyman developers and even people like me�I started getting into the Scala stuff and my head starts to spin and I go, &#8220;what?&#8221;</p>
<p><strong>Moderator</strong>: So these languages are good for Java, it takes a lot of the burden off of Java as a language because everyone wants &#8220;The Kitchen Sink&#8221; in Java the language. But now you can run on the JVM and you can have all those nice things.</p>
<p><strong>James Gosling</strong>: That was one of the key points behind the JVM. Everything I care about is in the JVM. The JVM has worked out really, really well. One of the things in past lives that has always really bugged me was that you could have two different languages in the system and you could never get them to communicate, and the great thing about JVM and getting them to work together is really easy. I was talking with this guy that does ML and ML is this weird-ass language 1:01 that does theorem proving. And for something like that, it&#8217;s great, but if you&#8217;re trying to put up the dialog box, it&#8217;s really bizarre. And with ML you do ML theorem proving and JVM you do dialog boxes and life is a whole lot simpler. So it just works.</p>
<p>61:58 <strong>Moderator</strong>: So now that you&#8217;ve left Oracle, what&#8217;s the future of you? What&#8217;s up next?</p>
<p><strong>James Gosling</strong>: What am I doing?</p>
<p><strong>Moderator</strong>: (jokingly) other than driving an Audi of course</p>
<p><strong>Moderator</strong>: (jokingly) Yeah, is it all Yahts and Champagne?</p>
<p><strong>James Gosling</strong>: I unfortunately did not sell when I should have. So I&#8217;m not in the yacht class yet. I actually have to do something about a job one of the days. I&#8217;m making a little money doing speaking engagements and things like that.</p>
<p><strong>Moderator</strong>: I&#8217;m sure there&#8217;s no shortage of job offers</p>
<p><strong>James Gosling</strong>: Yeah, it&#8217;s sort of the whole, well, what do I want to do when I grow up? And I&#8217;m kind of deeply confused about that. Part of the problem is that there&#8217;s just a whole lot of things that are really, really cool. There&#8217;s a part of me that love the embedded world. There&#8217;s a part of me that loves the scientific computing world. I look at what people are doing with large-scale NoSQL stuff and it&#8217;s cool. Before I was talking to you guys, I was over there talking to SSN folks that are doing stuff with OpenSSO, and it&#8217;s really fucking cool. You look at the guys in social media and some of them are really cool. Some of them are getting kind of creepy, but some of them are really cool.</p>
<p><strong>Moderator</strong>: Yeah, like linking your credit card to you SSN</p>
<p><strong>James Gosling</strong>: I&#8217;m really happy with LinkedIN. They seem to be doing a good job at being respectable on that scale. The Facebook guys are kind of creepy. And then things like Zynga, I really don&#8217;t understand. It&#8217;s probably one of those wrong MB quadrant thing, but people seem to be in love with Farmville and I&#8217;m just confused by Farmville.</p>
<p>Have you done much with any cloud computing? I think that&#8217;s a really cool thing where you turn API into hardware resources.</p>
<p>65:15 <strong>James Gosling</strong>: Well, certainly all of the large scale database stuff is that. I was really pissed off at Larry&#8217;s rant about how stupid cloud computing was, and then at his keynote last week he was like, 180 degrees. Make up your mind.</p>
<p><strong>Moderator</strong>: What I took from his original rant, though, was that the firm was so nebulous and it was basically taken over by marketing folks but at the same token they&#8217;re pushing out their own things and joining the cloud.</p>
<p>There was a piece that agrees with that. In some sense cloud computing is what people used to call grid</p>
<p><strong>Moderator:</strong> Right</p>
<p><strong>James Gosling:</strong> It was sort of a grid plus deployment management and open access and in the early grid days one of the things that people would often require uniform structure so you would take one thing and put it in the grid and you had to have 64 CPUs exactly with the same memory. But now you sprinkle some virtualization dust all over the thing and you can use the CPUs from you teapot.</p>
<p><strong>Moderator:</strong> It&#8217;s like you&#8217;re saying you&#8217;re getting software that offers more choices and basically depending on the old-fashioned operators from hell you&#8217;re in charge of the hardware. And now the developers end up being able to control the&#8211; <strong>67:30</strong></p>
<p><strong>James Gosling:</strong> I&#8217;m really happy with the cloud word. Personally, I don&#8217;t dabble with it that much because building a cloud costs money. Amazon EC2 is cool, but you don&#8217;t get to dabble with that for long before it gets expensive.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://geeknizer.com/james-gosling-future-of-java/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://media.techtarget.com/TheServerSideCOM/downloads/James_Gosling_Interview.mp3" length="49706784" type="audio/mpeg" />
		</item>
		<item>
		<title>Oracle to Accelerate Mobile, Java runtime</title>
		<link>http://geeknizer.com/oracle-mobile-java-acceleration/</link>
		<comments>http://geeknizer.com/oracle-mobile-java-acceleration/#comments</comments>
		<pubDate>Mon, 27 Sep 2010 13:59:09 +0000</pubDate>
		<dc:creator>Tarandeep Singh</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[javafx]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://geeknizer.com/oracle-mobile-java-acceleration</guid>
		<description><![CDATA[Everyone seems to be ditching Oracle after it&#8217;s acquisiton of Sun Microsystems first over Killing OpenSolaris, and recently because of the Java lawsuit on Google Android. The good leaders &#8211;... <span class="meta-more"><a href="http://geeknizer.com/oracle-mobile-java-acceleration/">Read more &#187;</a></span>]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" src="http://geeknizer.com/wp-content/uploads/2010/02/oraclejava_thumb.jpg" alt="" width="260" height="260" />Everyone seems to be ditching Oracle after it&#8217;s <a href="http://geeknizer.com/oracle-sun-merger">acquisiton of Sun Microsystems</a> first over <a href="http://geeknizer.com/opensolaris-is-dead">Killing OpenSolaris</a>, and recently because of the Java lawsuit on <a href="http://geeknizer.com/tag/android">Google Android</a>. The good leaders &#8211; <a href="http://geeknizer.com/sun-ceo-resign">Sun CEO</a> and <a href="http://geeknizer.com/father-of-java-resigns">Father of Java</a> had foreseen it.</p>
<p>Today at the Oracle OpenWorld event, <a href="http://geeknizer.com/tag/oracle">Oracle </a>revealed its roadmap ahead for Java and Java mobile. Oracle is committing on improving client-side Web support and mobile application development with JavaFX.</p>
<p>J2ME used to be a standard for Mobile apps, wherever app portability was prioritized. But with the release of more powerful platforms: Android &amp; iPhone, it has more or less become irrelevant as native toolkits tookover with better user experiences.</p>
<p>Oracle wants to undo this. With <a href="http://geeknizer.com/why-choose-javafx-how-to-code-benchmark-graphics-cpu-memory">JavaFX </a>it wants to restore client-side relevance. As <a href="http://geeknizer.com/why-choose-javafx-how-to-code-benchmark-graphics-cpu-memory">I reviewed earlier</a>, the biggest challenge is to <a href="http://geeknizer.com/why-choose-javafx-how-to-code-benchmark-graphics-cpu-memory">boost JavaFX performance</a> and integrate it more seamlessly with the standard Java Runtime Environment (JRE). What&#8217;s more is that Oracle wants to make it perform better not just on desktops but also on Mobiles, thats why, Hardware-accelerated rendering and heavy ARM optimization for mobile devices is under the works.</p>
<p>Oracle also promised a Java rendering engine to enhance 2D and 3G graphics, available next year. This will plug into the virtual machine and into Java FX, one of the most important technology layers Sun added to open source Java, supporting the creation of rich graphics and user interfaces. As <em>The Register</em> describes, the engine will support &#8220;modern graphics hardware accelerators&#8221;, notably Direct X for Windows and OpenGL.</p>
<p>Java FX scripting language had some nice, Python-inspired features for creating user interfaces, but it proved to be too slow. Now Oracle is giving up ont his scripting and letting user chose any or the VM scripting languages like JRuby, etc.</p>
<p>Apart from that, Oracle will continue to innovate in Java and the promised <a title="Permanent Link to Oracle Details Plan for Merging Java Hotspot, JRocket VM" rel="bookmark" href="http://geeknizer.com/oracle-merge-java-hotspot-jrocket">Merging of Java Hotspot, JRocket VM</a> should complete by sometime next year.</p>
<p>For mobile, Oracle will improve support for natively <strong>rendering HTML inside of JavaFX</strong>, which will potentially make it easier for developers to build content-centric mobile Java applications.</p>
<blockquote><p>&#8220;We are very excited about the upcoming enhancements to JavaFX, which will enable it to become the premier environment for rich client applications,&#8221; said Oracle&#8217;s Java Client Group director Nandini Ramani in a statement. &#8220;With new Java APIs, Java developers will be able to incorporate powerful JavaFX capabilities into their applications with greater ease. New hardware-accelerated graphics and HTML rendering capabilities will unlock possibilities and enable a new wave of innovative applications.&#8221;</p></blockquote>
<p>However, the biggest problem is still fragmentation. It&#8217;s not really clear how many J2ME-enabled devices can properly run JavaFX applications. iPhone is totally de-void of J2me, blackberry high-end devices also don&#8217;t support it.</p>
<p>For Latest Tech updates in <a href="http://geeknizer.com/tag/open-source">Open Source</a>, <a href="http://geeknizer.com/tag/programming">Programming</a>, <a href="http://geeknizer.com/tag/java">Java</a>, Tech News find us on <a>Twitter <strong>@taranfx</strong></a><strong> </strong>or subscribe below:</p>
]]></content:encoded>
			<wfw:commentRss>http://geeknizer.com/oracle-mobile-java-acceleration/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Java 4-Ever: Open Source love in Microsoft Family</title>
		<link>http://geeknizer.com/java-4-ever/</link>
		<comments>http://geeknizer.com/java-4-ever/#comments</comments>
		<pubDate>Sun, 27 Jun 2010 09:52:01 +0000</pubDate>
		<dc:creator>Tarandeep Singh</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[Open source]]></category>
		<category><![CDATA[DOTNET]]></category>
		<category><![CDATA[humor]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://geeknizer.com/java-4-ever</guid>
		<description><![CDATA[I passed out of grad college as an electronics engineer with little background of programming and luckily enough my first job involved Java/j2ee. The need of the hour was to... <span class="meta-more"><a href="http://geeknizer.com/java-4-ever/">Read more &#187;</a></span>]]></description>
			<content:encoded><![CDATA[<p><a href="http://geeknizer.com/wp-content/uploads/java-linux.jpg"><img class="alignleft size-medium wp-image-5268" title="java-linux" src="http://geeknizer.com/wp-content/uploads/java-linux-300x225.jpg" alt="" width="245" /></a>I passed out of grad college as an electronics engineer with little background of programming and luckily enough my first job involved <a href="http://geeknizer.com/tag/java">Java</a>/j2ee. The need of the hour was to learn it. It was hard for a month, everything after that was an love affair.</p>
<p>Since those old days, I simply couldn&#8217;t wrap my head around the fact that Microsoft&#8217;s Windows-based servers still exist in the market having a share as large as 20% where <a href="http://geeknizer.com/tag/linux">Linux</a> was 65+%. Sooner I realized, easier it became to grasp  that I wasn&#8217;t  the only one troubled with it.</p>
<p>Java may not still be the best Web (internet) <a href="http://geeknizer.com/tag/programming">programming </a>language but there&#8217;s always win of Open standards like PHP  because of the ease of programming. But, Java still is the weapon of choice in the Enterprise Business market.</p>
<p>JavaWorld has come up with a trailer for a mock movie called &#8220;<a href="http://jz10.java.no/java-4-ever-trailer.html">Java 4-ever</a>,&#8221; where a young man is born in a Microsoft fan <a href="http://geeknizer.com/tag/dotnet">.Net</a>-obsessed family and due to some inevitable consequences falls in love with Java and Open Source. Featuring in the movie are mock characters &#8220;William Windows&#8221;, &#8220;Mona Lisa Harddrive,&#8221;, &#8220;Scala Johansson&#8221;, &#8220;Eddie Larrison&#8221; and &#8220;Lenny Linux&#8221; <img src='http://geeknizer.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="660" height="395" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://www.youtube.com/v/KrfpnbGXL70&amp;color1=0xb1b1b1&amp;color2=0xd0d0d0&amp;hl=en_US&amp;feature=player_embedded&amp;fs=1" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="660" height="395" src="http://www.youtube.com/v/KrfpnbGXL70&amp;color1=0xb1b1b1&amp;color2=0xd0d0d0&amp;hl=en_US&amp;feature=player_embedded&amp;fs=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>I wish this movie was for Real!</p>
]]></content:encoded>
			<wfw:commentRss>http://geeknizer.com/java-4-ever/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>VMware, Salesforce create First Enterprise Java Cloud [VMforce]</title>
		<link>http://geeknizer.com/vmware-java-cloud/</link>
		<comments>http://geeknizer.com/vmware-java-cloud/#comments</comments>
		<pubDate>Wed, 28 Apr 2010 17:42:54 +0000</pubDate>
		<dc:creator>Tarandeep Singh</dc:creator>
				<category><![CDATA[Cloud computing]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Virtualization]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[vmware]]></category>
		<category><![CDATA[vsphere]]></category>

		<guid isPermaLink="false">http://geeknizer.com/vmware-java-cloud</guid>
		<description><![CDATA[Last weekend, Oracle announced it&#8217;s latest offering that enables Virtualization-Aware Java Applications on top of Weblogic webserver. Taking it further, is Salesforce and VMware, who are turning cloud computing into... <span class="meta-more"><a href="http://geeknizer.com/vmware-java-cloud/">Read more &#187;</a></span>]]></description>
			<content:encoded><![CDATA[<p><a href="http://geeknizer.com/wp-content/uploads/2010/04/vmforce-java.jpg"><img class="alignleft size-full wp-image-4835" title="vmforce-java" src="http://geeknizer.com/wp-content/uploads/2010/04/vmforce-java.jpg" alt="" width="210" height="202" /></a>Last weekend, Oracle announced it&#8217;s latest offering that enables <a href="http://geeknizer.com/oracle-java-virtualization-server">Virtualization-Aware Java Applications</a> on top of Weblogic webserver.</p>
<p>Taking it further, is Salesforce and VMware, who are turning cloud computing into a Java runtime environment. The companies have partnered to together enable Spring framework based Java cloud. The foundation would be  VMware&#8217;s <a href="www.taranfx.com/tag/vsphere">vSphere virtualization</a> infrastructure and will be hosted, of course, at Salesforce.com.</p>
<p><strong>VMforce </strong>(the name is obvious) will be able to host any Java application that can be built to utilize existing Salesforce&#8217;s database infrastructure. So what this means is that Enterprises and Businesses can build and host their Java applications on the salesforce&#8217;s infrastructure just like its possible today with Google&#8217;s App Engine. But way more capable.</p>
<p>App Engine limits (and restricts) itself to POJO java applications with limited choice of database: BigTable, a non-relational database (non-RDBMS). However, VMforce will host and run a typical J2ee application on most popular J2ee framework i.e. Spring (using Spring application-hosting layer) and a full blown traditional RDBMS database.</p>
<p>No doubt, Java developers currently lack a simple path to cloud deployment.</p>
<blockquote><p>“There are over 6 million developers who know Java. It has transformed this industry and brought enterprises onto the Internet. But enterprise Java developers don&#8217;t have a clear path into the cloud. Can they deliver these next-generation cloud applications? Is there a gap between where Java is and where cloud computing is going?”</p>
<p>Paul Maritz, CEO of VMware, said that “developers value, above everything else, productivity.” He said that, for new applications, deployment to a cloud can increase productivity and reduce internal IT complexity. He said that these benefits are at the heart of the partnership between VMware and Salesforce.</p></blockquote>
<p>The companies together believe that this gap must be filled, so that we can deploy Real business Java apps to the cloud, giving developer more power to deliver the next generation of application development and deployment.</p>
<p>VMforce should open up to the public this fall. With vSphere being mature enough for most Cloud apps, it would help  in evolution and maturing of Cloud-based Java application.</p>
<p><strong>How it Works:</strong></p>
<p><strong><a href="http://geeknizer.com/wp-content/uploads/2010/04/vmforce.jpg"><img class="size-full wp-image-4836 alignnone" title="vmforce" src="http://geeknizer.com/wp-content/uploads/2010/04/vmforce.jpg" alt="" width="668" height="391" /></a><br />
</strong></p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="660" height="395" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/LpO6whOCAmQ&amp;hl=en_GB&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="660" height="395" src="http://www.youtube.com/v/LpO6whOCAmQ&amp;hl=en_GB&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>On top of vSphere, the VMforce cloud will offer a Spring application-hosting layer and a database. Developers will use the <a href="http://geeknizer.com/vmware-acquires-spring-source-java-framework-giant-cloud-computing-plans">SpringSource</a> Tool Suite to build and deploy applications built specifically for the <strong>VMforce </strong>cloud. Those tools will include automatic analysis tools that can call out the portions of an application that will need to be changed to work in a cloud environment.</p>
<p>The app deployment and maintenance will be done via &#8220;<strong>The SpringSource Tool Suite</strong>&#8221; ,a  free development environment. To create a new application, there are a number of wizards but nothing new that needs to be learned. New applications can also be created using Spring template wizards.</p>
<p>However, the bad part: Applications using Enterprise JavaBeans aren’t candidates for moving to VMforce, and other Java EE applications would require significant rework in order to run in that environment. The VMforce platform is targeted at developers creating new Java applications for the cloud. This could be a big limitation of this Cloud service.</p>
<p>For Latest Tech updates in <a href="http://geeknizer.com/tag/open-source">Open Source</a>, <a href="http://geeknizer.com/tag/programming">Programming</a>, <a href="http://geeknizer.com/tag/java">Java</a>, Tech News find us on <a>Twitter <strong></strong></a><strong><a href="http://twitter.com/taranfx" target="_blank">@taranfx</a></strong><strong><a href="http://twitter.com/taranfx" target="_blank"> </a></strong>or subscribe below:</p>
]]></content:encoded>
			<wfw:commentRss>http://geeknizer.com/vmware-java-cloud/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Oracle Details Plan for Merging Java Hotspot, JRocket VM</title>
		<link>http://geeknizer.com/oracle-merge-java-hotspot-jrocket/</link>
		<comments>http://geeknizer.com/oracle-merge-java-hotspot-jrocket/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 18:52:21 +0000</pubDate>
		<dc:creator>Tarandeep Singh</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[Sun]]></category>

		<guid isPermaLink="false">http://geeknizer.com/oracle-merge-java-hotspot-jrocket</guid>
		<description><![CDATA[After finishing off it&#8217;s recent acquisition of Sun and BEA (earlier),  Oracle is set to do magic around the heart of Java, Virtual Machines. Larry had promised that Oracle will... <span class="meta-more"><a href="http://geeknizer.com/oracle-merge-java-hotspot-jrocket/">Read more &#187;</a></span>]]></description>
			<content:encoded><![CDATA[<p><a href="http://geeknizer.com/wp-content/uploads/2010/02/oraclejava.jpg"><img class="alignleft" title="oracle java" src="http://geeknizer.com/wp-content/uploads/2010/02/oraclejava_thumb.jpg" border="0" alt="oracle-java" width="260" height="260" /></a> After finishing off it&#8217;s <a href="http://geeknizer.com/oracle-sun-merger">recent acquisition of Sun</a> and BEA (earlier),  <a href="http://geeknizer.com/tag/oracle">Oracle</a> is set to do magic around the heart of <a href="http://geeknizer.com/tag/java">Java</a>, Virtual Machines.</p>
<p>Larry had promised that <a href="http://geeknizer.com/oracle-to-invest-hevily-in-java-in-future">Oracle will continue to innovate in Java</a>, and the first step seems to be on the road. Oracle is planning to merge the Sun HotSpot Java Virtual Machine with the JRockit JVM, to produce a single JVM with ETA of 18 months to two years.</p>
<p>For the short term, the company will continue to evolve both technologies but the future is bringing best of both worlds together.</p>
<blockquote><p>&#8220;It&#8217;s not an easy problem taking the best of each, figuring out what the long-term convergence plan is,&#8221; said Reinhold. &#8220;We&#8217;re not going to just stop doing one of them. Customers have things in production on both, taking advantage of specific features in both. We&#8217;re not going to cause an earthquake and make systems fall over. At some point in time, I expect there will be one VM,&#8221; said Reinhold, Principal Engineer at Oracle.</p></blockquote>
<p>Practically, it&#8217;s a very tedious work to merge them. But it makes sense because few features of JRockit like  the mission control mechanism is much more advanced. On the other hand, HotSpot is good at pushing the performance.</p>
<blockquote><p>&#8220;Our sense with the HotSpot code, especially the server compiler, is there&#8217;s a lot more head room there. It&#8217;s a lot more-sophisticated system.&#8221;</p></blockquote>
<p>Apart from that, the Oracle engineer claims that JRockit&#8217;s garbage collector and serviceability, the HotSpot&#8217;s runtime compiler can together complement and supplement each other for even more robust Java applications.</p>
<blockquote><p>&#8220;its modularity and multilingual capabilities as well as intentions to make it a more productive platform and have it scale down to small devices&#8221;.</p></blockquote>
<p>If we look at the Java&#8217;s roadmap, <a href="www.taranfx.com/java-7-whats-new-performance-benchmark-1-5-1-6-1-7"><strong>Java JDK 7</strong></a> falls around the same time-span.  It would be interesting to see what Java would look like 2 years from now.</p>
<p><em>Thoughts?</em></p>
<p>For Latest Tech updates in <a href="http://geeknizer.com/tag/open-source">Open Source</a>, <a href="http://geeknizer.com/tag/programming">Programming</a>, <a href="http://geeknizer.com/tag/java">Java</a>, Tech News find us on <a>Twitter <strong>@taranfx</strong></a><strong> </strong>or subscribe below:</p>
<p>[via <a rel="nofollow" href="http://www.itworldcanada.com/news/oracle-will-merge-java-virtual-machines/140014" target="_blank">itworld</a>]</p>
]]></content:encoded>
			<wfw:commentRss>http://geeknizer.com/oracle-merge-java-hotspot-jrocket/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Sun CEO Set to Resign</title>
		<link>http://geeknizer.com/sun-ceo-resign/</link>
		<comments>http://geeknizer.com/sun-ceo-resign/#comments</comments>
		<pubDate>Mon, 25 Jan 2010 20:46:47 +0000</pubDate>
		<dc:creator>Tarandeep Singh</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[Sun]]></category>
		<category><![CDATA[Open source]]></category>

		<guid isPermaLink="false">http://geeknizer.com/sun-ceo-resign</guid>
		<description><![CDATA[Oracle recently announced that Approval from EU for the Oracle-Sun merger. Rumors of layoffs may have just started, but there is a move from the CEO before it all happens.... <span class="meta-more"><a href="http://geeknizer.com/sun-ceo-resign/">Read more &#187;</a></span>]]></description>
			<content:encoded><![CDATA[<p><a href="http://geeknizer.com/wp-content/uploads/2010/01/sun-ceo.jpg"><img class="size-thumbnail wp-image-3421 alignleft" title="sun-ceo" src="http://geeknizer.com/wp-content/uploads/2010/01/sun-ceo-150x150.jpg" alt="" width="150" height="150" /></a>Oracle recently announced that <a href="http://geeknizer.com/oracle-sun-merger">Approval from EU for the Oracle-Sun merger</a>. Rumors of layoffs may have just started, but there is a move from the CEO before it all happens.</p>
<p>Sun&#8217;s CEO Jon Schwartz’s recent all-hands memo (read below) to employees had all the sentiments embedded that hinted his farewell. Sources close to Schwartz tell that he will soon resign as CEO, leaving the company in the hands of new owner Oracle. Schwartz’s departure will likely coincide with final approval of the deal and official change in control of the company.</p>
<p>Schwartz joined the CEO position with  the aim of restoring the financial glory of the Company. He tried hard,  but unfortunately all his attempts which includes buying <a href="http://geeknizer.com/tag/mysql">MySQL</a>, open-sourcing <a href="http://geeknizer.com/tag/java">Java</a>, and <a href="http://geeknizer.com/tag/solaris">Solaris</a>, didn&#8217;t actually benefited the company, only people who were benefited were consumers and <a href="http://geeknizer.com/tag/open-source">Open source</a> programmers.</p>
<p>Well, it&#8217;s no bad news for him, he has earned a lot more than just pride, about $12 million from the severance package he negotiated, plus another $5.1 million or so for the Sun&#8217;s shares he currently holds, that sums up to a big figure.</p>
<p>Below is the all-hands memo <a href="http://geeknizer.com/tag/sun">Sun </a>CEO Jon Schwartz sent to employees following the announcement. The juice is in the first letter of the first 7 paragraphs …</p>
<blockquote><p><strong>B</strong>elieve it or not, it’s been more than nine months since Oracle first announced their intent to acquire Sun in April, 2009. And the ‘interim’ period has been tough on everyone–on our employees, and our partners and customers. Thankfully, that interim period is coming to an end, with regulatory approval from the European Union issued today, and only a few hurdles remaining–before Oracle formally expands beyond software to become the world’s most important systems company.</p>
<p><strong>E</strong>ven though we’re not quite across the finish line, I wanted to leave you with a few final thoughts.</p>
<p><strong>A</strong>ll in all, it’s been an honor and privilege to work together. In my more than twenty years in the industry, the last thirteen at Sun, I’ve had a chance to work with and around an enormous diversity of companies, from every sector you can imagine. I can say with conviction that Sun’s people have always stood apart as the brightest, most passionate, and most inspiring. I’ve never had a bad day in my thirteen years for one very basic reason–I’ve always been surrounded by the best and brightest individuals I’ve ever come across. That’s been an honor and privilege, for which I’m enormously thankful.<br />
<img class="alignright" title="schwartz" src="http://static.guim.co.uk/sys-images/Technology/Pix/pictures/2008/11/19/schwartz460.jpg" alt="" width="260" height="146" /><br />
<strong>T</strong>echnology from Sun, alongside our employees and partners, have changed the world. We’ve opened markets, elections and economies. We’ve helped build the world’s most important and valuable businesses. We’ve played a key role in discovering new drugs, in bringing education and healthcare to those in need, and supplying the world with an incredible spectrum of entertainment, from smartphones to social networking. I doubt any company has had such a significant influence over the way we see or experience the world. I once told Scott McNealy he was the Henry Ford of the technology industry, making remarkable innovations accessible to anyone, and creating an immense number of jobs around the globe for those that made use of them. I can’t begin to tell you how proud I am of my association with that cause and the people behind it, and the value we created for ourselves and those that exploited our innovations.</p>
<p><strong>I</strong> also know we’ve had more than our share of very tough challenges. Amidst the toughest market and customer situations imaginable, I’m proud we’ve always acted with integrity, with a sense for what’s right, and not simply what’s expedient. Over the years, I’ve heard time and again, from those inside and outside the company, “I like and I trust Sun.”</p>
<p><strong>B</strong>uilding that good will is something to which you’ve all contributed. And you have every right to be very proud of it.</p>
<p><strong>M</strong>ake no mistake, it’s been an enormous asset.</p>
<p>So, to the sales and SE teams across the world who continually give their all to bring the numbers home–thank you for the trust you’ve built with customers, and the results you’ve delivered. I hope you’re prepared to have the wind at your back, you deserve it.</p>
<p>To the service professionals who every day build, maintain and run the world’s most important data centers–thank you for your excellence and discipline, 7×24.</p>
<p>To the professionals who run the functions and processes that are the company’s spinal column–thank you, we’d be paralyzed without you.</p>
<p>And lastly – to the engineers and marketers who’ve fostered a perpetual belief that innovation creates its own opportunity – thank you. You’re right. Innovation does create its own opportunity. Like Oracle, we’re an engineering company in our heart and soul, our potential together is limitless.</p>
<p>Now many of you know that I came to Sun when a company I helped to found was acquired in 1996. I’ve also led, and been a part of many, many acquisitions at Sun, both large and small. From those experiences, I’ve learned one very clear lesson–the single most important driver of a successful acquisition are the people involved–and how committed they are to the new owner’s mission.</p>
<p>And the most effective mechanism I’ve seen for driving that commitment begins with a simple, but emotionally difficult step.</p>
<p>Upon change in control, every employee needs to emotionally resign from Sun. Go home, light a candle, and let go of the expectations and assumptions that defined Sun as a workplace. Honor and remember them, but let them go.</p>
<p>For those that ultimately won’t become a part of Oracle, this will be the first step in a new adventure. Sun has a tremendous reputation across the planet, well beyond Silicon Valley. It’s a great brand to have on your resume. We’re known as self-starters, capable of ethically managing through complexity and change, for delivering when called upon, and for inventing and building the future. With the world economy stabilizing, I’m very confident you’ll land on your feet. You’re a talented, tenacious group, and there’s always opportunity for great people.</p>
<p>For those that have roles at <a href="http://geeknizer.com/tag/oracle">Oracle</a>, may you start with a clean slate, ready to take on the myriad opportunities ahead. With the same passion and tenacity for Oracle’s success that you’ve had for Sun’s, and a renewed sense of energy around executing on a far broader mission. There is no doubt in my mind you, and Oracle, will be remarkably successful, beyond the market’s wildest expectations. But it’s important you come to work thinking, “Sun is a brand, Oracle’s my company.” Don’t look for ways to preserve or dwell in “how we used to do things.” Look for ways to help customers, grow the market, and improve Oracle’s performance.</p>
<p>Sun is a brand, Oracle is your company.</p>
<p>And to that end, with nine months of getting to know them, I’ve found Oracle to be truly remarkable, led by remarkable people. From Larry on down, they understand the enormity of the opportunity before them, and they’re more than prepared to execute on it – across the board. I’ve seen their commitment and focus, now they need yours. I’m confident you’ll give it the 10,000% effort it deserves–and we’ll all see the end result.</p>
<p>So thank you, again, for the privilege and honor of working together. The internet’s made the world a far smaller place–so I’m sure we’ll be bumping into one another.</p>
<p><strong>Go Oracle!</strong></p>
<p>Jonathan</p></blockquote>
<p>We write about <a href="http://geeknizer.com/tag/open-source">Open Source</a>, <a href="http://geeknizer.com/tag/programming">Programming</a>, <a href="http://geeknizer.com/tag/java">Java</a>, Latest Tech news as they happen, get them <a href="http://twitter.com/taranfx" target="_blank"><strong>@taranfx</strong> on Twitter</a></p>
<p>[<a rel="nofollow" href="http://digitaldaily.allthingsd.com/20100125/sun-ceo-set-to-announce-resignation/" target="_blank">via</a>]</p>
]]></content:encoded>
			<wfw:commentRss>http://geeknizer.com/sun-ceo-resign/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Best Java Decompiler</title>
		<link>http://geeknizer.com/java-decompiler/</link>
		<comments>http://geeknizer.com/java-decompiler/#comments</comments>
		<pubDate>Tue, 29 Dec 2009 22:21:18 +0000</pubDate>
		<dc:creator>Tarandeep Singh</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://geeknizer.com/java-decompiler</guid>
		<description><![CDATA[Reverse engineering is becomes a necessity every now and then. When it comes to java decompilation, there are several available in the wild that do it pretty well but the... <span class="meta-more"><a href="http://geeknizer.com/java-decompiler/">Read more &#187;</a></span>]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" title="Java decompiler" src="http://www.highrely.com/assets/Software_Test_Web.jpg" alt="" width="161" height="121" />Reverse engineering is becomes a necessity every now and then. When it comes to <a href="http://geeknizer.com/tag/java">java </a>decompilation, there are several available in the wild that do it pretty well but the problem: Most of them are either paid or non-gui based with little IDE integration.</p>
<p>Till recently, I was using DJ decompiler, which is just a GUI on top of the jad command line utility.</p>
<p>But here comes a new Java decompiler which might kick off others from the competition: JD. Available both as native client (exe) and Eclipse plugin. I tried both of them, and I must admit, it&#8217;s pretty neat.</p>
<p>The native client has no dependencies decompiles Java classes out of the box with inbuilt Type searches, browsing much like eclipse does.</p>
<p><img class="alignnone" title="JD" src="http://java.decompiler.free.fr/jd-gui/screenshots/screenshot1.png" alt="" width="661" height="564" /></p>
<p><strong>Main Features:</strong></p>
<p>* Written in C++. This allows an extremely fast decompilation and a display.<br />
* Doesn&#8217;t need Java runtime environment for its functioning, hence works out of the box.<br />
* JD-Core works with most compilers: jdk1.1.8, jdk1.3.1, jdk1.4.2, jdk1.5.0, jdk1.6.0, jikes-1.22, harmony-jdk-r533500, jrockit90_150_06 and more.<br />
Supports most JDK 5 features<br />
<a href="http://java.decompiler.free.fr/" target="_blank"><strong>Download</strong></a></p>
]]></content:encoded>
			<wfw:commentRss>http://geeknizer.com/java-decompiler/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Java VisualVM &#8211; Developer`s Nightmare is Over</title>
		<link>http://geeknizer.com/java-visualvm/</link>
		<comments>http://geeknizer.com/java-visualvm/#comments</comments>
		<pubDate>Wed, 14 Oct 2009 12:31:31 +0000</pubDate>
		<dc:creator>Tarandeep Singh</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[jdk6]]></category>
		<category><![CDATA[jdk7]]></category>
		<category><![CDATA[profiling]]></category>
		<category><![CDATA[visualvm]]></category>

		<guid isPermaLink="false">http://geeknizer.com/blog/?p=930</guid>
		<description><![CDATA[Java VisualVM was released more than year and a half ago, but its still worth blogging since most people don’t know about it. VisualVM is an open source tool for... <span class="meta-more"><a href="http://geeknizer.com/java-visualvm/">Read more &#187;</a></span>]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" title="Java Performance" src="http://www.miamisburg.com/dukeTuxJavaOne2003TShirt.jpg" alt="" width="222" height="166" />Java VisualVM was released more than year and a half ago, but its still worth blogging since most people don’t know about it.</p>
<p>VisualVM is an open source tool for monitoring and profiling your Java applications. VisualVM is now integrated with JDK 6 update 7 release and also available as a <a href="https://visualvm.dev.java.net/download.html" target="_blank">stand-alone setup</a>. <a href="http://geeknizer.com/blog/java-7-whats-new-performance-benchmark-1-5-1-6-1-7" target="_blank">Java 7</a> plans to integrate next version 1.2.</p>
<p>So, from now on you need not pay a hefty price for licensing third party profilers. In this article we’ll walk through the features of VisualVM and see how it is different from commercial profiling tools.</p>
<p>Let’s see what the entire buzz is all about.</p>
<p>It provides a nice graphical user interface for monitoring and troubleshooting <a href="http://geeknizer.com/blog/tag/java" target="_blank">Java </a>applications and integrates several troubleshooting features introduced in JDK 5 and 6 as command-line utilities into this single <a href="http://geeknizer.com/blog/tag/gui" target="_blank">GUI </a>tool.</p>
<p>I liked their screen-cast that shows VisualVM in action. It should help you get started:</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="600" height="410" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://blip.tv/play/AeGPcZKdZQ" /><embed type="application/x-shockwave-flash" width="600" height="410" src="http://blip.tv/play/AeGPcZKdZQ"></embed></object></p>
<p>VisualVM, Java’s own monitoring, profiling and performance  <a href="http://geeknizer.com/blog/tag/benchmark" target="_blank">benchmarking </a>tool.</p>
<p>Even though many monitoring and diagnostics features are enhanced and introduced in Java 6, still it has been lacking an out-of-the-box bundling of a convincing visual Java application monitoring or profiling tool, until the most recent JDK6 Update 7.</p>
<p>You can find VisualVM under the bin directory of your JDK6u7 installation. Just double click the exe and its there the VisualVM.</p>
<p><!--[if gte vml 1]> < ![endif]--></p>
<p><img src="http://javabyexample.wisdomplug.com/images/stories/initial.png" alt="" /></p>
<p>The main window of VisualVM opens when you launch the application. By default, the Applications window is displayed in the left pane of the main window. The Applications window enables you to quickly see the Java applications running on  local and remote JVMs. The Applications window is the primary entry point for viewing further details about a particular application. Right-clicking an application node opens the popup menu where you can choose to open the main application tab or take thread or heap dumps.</p>
<p><!--[if gte vml 1]> < ![endif]--></p>
<p><img class="alignleft" src="http://javabyexample.wisdomplug.com/images/stories/vvm-anagram-applications.png" alt="" width="292" height="206" /></p>
<p>If you have used the Netbeans platform, you can easily recognize that VisualVM is also built upon the Netbeans Platform.</p>
<p>Now that you have VisualVM running you can do several things like</p>
<p>1)      Create and visually view heap Dumps</p>
<p>2)      Profile memory usage</p>
<p>3)      Profile <a href="http://geeknizer.com/blog/tag/cpu" target="_blank">CPU </a>Usage</p>
<p>4)      Profile Threads</p>
<p>In the past you had to use one or more commercial tools to get the above tasks done. But with VisualVM you have one integrated tool that can do all the above.</p>
<p>VisualVM allows you to do much more than traditional monitoring and <a href="http://geeknizer.com/blog/tag/profiling" target="_blank">profiling</a>.</p>
<p>1)      You can take a snap shot of the thread status and heap status and save them for analyzing offline.</p>
<p>2) You can monitor multiple applications both local and remote from a single VisualVM instance. You can also take simultaneous thread dumps of multiple applications for analyzing distributed dead locks.</p>
<p>3) No need for complex configuration. Traditional memory profilers either require you to run your applications in a special, modified JVM or start your applications with the profiler agent. But with VisualVM, you start your java applications normally and VisualVM automatically lists the Java applications running on your local machine.</p>
<p>4) VisualVM is <em>extensible</em>. Yes we love plugins, and since VisualVM is built on the NetBeans Platform, its architecture is modular and easy to extend with plugins. There are several plugins already available for VisualVM like:- MBeans Browser, JConsole Plugins Container, VisualVM Extensions, Visual GC Plugin, GlassFish Plugin, BTrace Plugin, TDA Plugin.</p>
<div class="snap_preview">
<p>VisualVM, the lightweight profiler and troubleshooting tool is available to build as part of <a href="http://icedtea.classpath.org/">IcedTea6</a> for 32 and 64 bit arch <img class="wp-smiley" src="http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif" alt=":)" /> . The whole thing builds from source — NetBeans platform7 and profiler2 (visualvm_preview2), and finally VisualVM 1.0. A binary launcher <code>`jvisualvm`</code> is put in the ${JDK}/bin directory along with the rest of the tools.</p>
<p>Here are some VisualVM Screenshots:</p>
<p><em>Screenshot</em>1: <a href="http://geeknizer.com/blog/tag/benchmark" target="_blank">Benchmark </a>CPU usage and Heap memory usage during execution of a <a href="http://geeknizer.com/gallery" target="_blank">JavaFX web gallery</a>.</p>
<p style="text-align: center;"><img class="aligncenter" src="http://farm3.static.flickr.com/2570/3676241004_28b0c003f4_o_d.jpg" alt="" width="716" height="504" /></p>
<p style="text-align: center;"><em>Screenshot 2:</em> Method, class Execution Profiler</p>
<p style="text-align: center;"><img class="aligncenter" src="http://farm3.static.flickr.com/2539/3675428237_0c74dd7b3e_o_d.jpg" alt="" width="730" height="505" /></p>
<p>This tool has a  lot of potential. A while back I used to <a href="http://geeknizer.com/blog/why-choose-javafx-how-to-code-benchmark-graphics-cpu-memory" target="_blank">benchmark JavaFX</a>. And today, it&#8217;s my first choice for benchmarking any application. Finding memory leaks, performance bottlenecks, Heap usage optimizations, all can be done graphically, goodbye to other tools.</p>
<p>For many situations, this tool can prove out to be a great reverse-engineering tool at Runtime. For instance when you have a jar, war,  ear running and it is misbehaving and there is no traces in the logs, visualVM can help. This tool will let you know what part of code was executed that caused peaks in CPU/memory usage, or potential memory hogs in your application.</p>
<p>Threads tab, like many other debuggers, will give you complete info on all the running threads: Time, state, id, etc.</p></div>
<p>See also the Java VisualVM User Guide:<br />
<a href="http://java.sun.com/javase/6/docs/technotes/guides/visualvm/index.html"> http://java.sun.com/javase/6/docs/technotes/guides/visualvm/index.html</a><br />
VisualVM project page:<br />
<a href="https://visualvm.dev.java.net/gettingstarted.html%22"> https://visualvm.dev.java.net/gettingstarted.html</a></p>
<p><em>Do you know any <a href="http://geeknizer.com/blog/tag/open-source" target="_blank">Open source</a> tool that can outperform VisualVM in speed and features? Let me Know.</em></p>
<p>Follow me on <a href="http://twitter.com/taranfx" target="_blank">Twitter</a>, Join <a href="http://www.facebook.com/pages/Taranfx/286037690264" target="_blank">Facebook Page</a> or <a href="http://feeds2.feedburner.com/taranfx" target="_blank">Subscribe to RSS</a> for more Tech Updates.</p>
]]></content:encoded>
			<wfw:commentRss>http://geeknizer.com/java-visualvm/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Why choose JavaFX. How to Code. Benchmark Graphics, CPU, Memory</title>
		<link>http://geeknizer.com/why-choose-javafx-how-to-code-benchmark-graphics-cpu-memory/</link>
		<comments>http://geeknizer.com/why-choose-javafx-how-to-code-benchmark-graphics-cpu-memory/#comments</comments>
		<pubDate>Tue, 30 Jun 2009 23:00:01 +0000</pubDate>
		<dc:creator>Tarandeep Singh</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[benchmark]]></category>
		<category><![CDATA[benchmarks]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[HTML 5]]></category>
		<category><![CDATA[javafx]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[review]]></category>
		<category><![CDATA[RIA]]></category>
		<category><![CDATA[Sun]]></category>
		<category><![CDATA[visualvm]]></category>
		<category><![CDATA[Web languages]]></category>

		<guid isPermaLink="false">http://geeknizer.com/blog/?p=1173</guid>
		<description><![CDATA[JavaFX meets TaranFX. JavaFX is built on top of a mature Runtime that gives developer&#8217;s amazing features. Java being in market since several years, they now have a more sophisticated... <span class="meta-more"><a href="http://geeknizer.com/why-choose-javafx-how-to-code-benchmark-graphics-cpu-memory/">Read more &#187;</a></span>]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" style="margin:5px;" src="http://farm3.static.flickr.com/2574/3676841702_13442c7d62_o_d.jpg" alt="" width="238" height="136" /><strong>JavaFX meets TaranFX. </strong></p>
<p>JavaFX is built on top of a mature Runtime that gives developer&#8217;s amazing features. Java being in market since several years, they now have a more sophisticated API.</p>
<p><em>Update: This Blog post is Winner of <a href="http://javafx.com/blogcontest/" target="_blank">Java Blogging Contest</a>.</em></p>
<p><strong>So what is JavaFX Hype all about?</strong></p>
<p>I first got to hear about JavaFX more than a year back when I attended Sun Tech days. It wasn&#8217;t very mature at that time and failed to catch my attention. It was this year in Feb, when I saw a momentum and maturity in this platform, which encouraged me to take my steps further.</p>
<p>JavaFX gives developers an amazing feature-Rich API which will help them build scalable, fully integrated, Rich  Graphics, Animated applications for the web. The beauty of JavaFX lies in the fact that its base (JVM) is already installed on all computers(90%).</p>
<p>When I first saw the API, I was amazed that it had so much pre-built into the API. e.g. All the common transitions like fading, scrolling, perspective animations are built-in. All you need is the idea and you can be all set to make the most powerful web application.</p>
<p>Being a Java at heart, you can always integrate it with existing java applications. Imagine a Live graphic Rich market-watch client talks directly to a EJB server to fetch live quotes and prepare animated graphs of statistical data and analytics to help you invest for future.</p>
<p>The feature I loved the most was, &#8220;applications are draggable to desktop&#8221;. Since apps run in JVM of local machine, though they open in browser, they can be dragged and dropped to desktop without interrupting any operation or performance.</p>
<p>Here is What I intend to Cover:</p>
<p>1. Example: How to Code Web Gallery in Javafx</p>
<p style="padding-left: 30px;">i. Basic Overview</p>
<p style="padding-left: 30px;">ii. The Code</p>
<p style="padding-left: 60px;">a. Brief on animation Terminologies</p>
<p style="padding-left: 60px;">b. Basic Code.</p>
<p style="padding-left: 60px;">c. Transitions.</p>
<p>2. Benchmarking</p>
<p style="padding-left: 30px;">i. Hardware used.</p>
<p style="padding-left: 30px;">ii. Invocation and Startup</p>
<p style="padding-left: 60px;">a. Observations</p>
<p style="padding-left: 60px;">b. JavaFX vs. Flash</p>
<p style="padding-left: 60px;">c. Conclusion</p>
<p style="padding-left: 30px;">iii. Animated Transitions and Full Image load:</p>
<p style="padding-left: 60px;">a. Key Observations</p>
<p style="padding-left: 60px;">b. Conclusion</p>
<p>3. Verdict</p>
<p style="padding-left: 30px;">i. Pros and Cons.</p>
<p style="padding-left: 60px;">
<p style="padding-left: 60px;">
<p>Let&#8217;s start with an example.</p>
<p><strong>1. Example: How to Code Web Gallery in JavaFX</strong></p>
<p>Before we start, you can have a Quick look at what we are going to achieve over <a href="http://geeknizer.com/gallery">here</a>. It&#8217;s a decent web gallery inspired by one of them demoed on <a href="http://www.javafx.com" target="_blank">Javafx site</a>. I took that gallery and re-wrote most of it to achieve the following:</p>
<p style="padding-left: 30px;">1. Redesign UI to match my taste and site&#8217;s theme.</p>
<p style="padding-left: 30px;">2. Optimize the code to max possible.</p>
<p>I did the latter to Benchmark JavaFX&#8217;s capabilities, as described in a later section. For now let&#8217;s look at the basics of JavaFX application design. Before we start, Let&#8217;s look at what did I make.</p>
<p style="text-align: center;"><a title="JavaFX gallery by TaranFX" href="http://geeknizer.com/gallery" target="_blank"><img class="aligncenter" title="Javafx Gallery Taranfx.com" src="http://farm4.static.flickr.com/3258/3675429271_e2dbee38a2_o_d.jpg" alt="" width="649" height="389" /></a></p>
<p>The Gallery is a JavaFX Frontend GUI with a backend supported by java <a href="http://www.flickr.com/services/api/" target="_blank">Flickr API</a>. On Load, Flickr is queried with REST API as <em>http://api.flickr.com/services/rest/?method=flickr.people.getPublicPhotos&amp;user_id=24847938@N07&amp;api_key={apiKey}&amp;per_page={</em><em>thunbLayout</em><em>.count}</em></p>
<p>HereI am sending request to Flickr to return me all public Photos for the user_id specified and per page show me {<em>thunbLayout</em>.<em>count</em>} many results per page using my unique API key.</p>
<p>This metaData when loaded, loads the 1st page of thumbnails. On selection via keyboard or mouse click on a pic, it opens for medium size and fizes the aspect ratio on load. While image is loaded, it is animated with Fade transition effect built into JavaFx. Let&#8217;s look at the code and things will get more clearer.</p>
<p><strong>ii. The Code</strong></p>
<p>Before we start, lets get you familiar with Jargons.</p>
<p><strong>a. Basic Animation Terminologies:</strong></p>
<p>Like Flash, JavaFX uses the generalized concept of Animations by using standard animation industry jargons. The First thing to learn is using <strong>Stages</strong> and <strong>Scenes</strong>. <strong>Stage</strong> is the main/core Placeholder for your JavaFX application. <strong>Scene</strong> is an independent widget which fits into Stage. Multiple Scenes can be put inside stage but there will be only one stage per application.</p>
<p><strong>b. The Basic Code:</strong></p>
<p>JavaFX made it really easy to code. Here is the code syntax:</p>
<p>[code lang="javascript"]<br />
var stage = Stage {<br />
title: "Taranfx Gallery"<br />
width: 840<br />
height: 520<br />
visible: false<br />
style: StageStyle.TRANSPARENT<br />
scene: bind scene<br />
}</p>
<p>function run() {<br />
initUI();<br />
stage.visible = true;<br />
// Set focus to background by default<br />
bgRect.requestFocus();<br />
}</p>
<p>[/code]</p>
<p>Here, run() Method is the default main method inside Main.fx class. So setting stage to visible, and getting the focus, does the job!</p>
<p>Now Let&#8217;s create scene for our thumbnails:</p>
<p>[code lang="javascript"]</p>
<p>var scene : Scene = Scene {<br />
width: 840<br />
height: 520<br />
content: Group {<br />
content: bind stageContent //defined below inside initUI()<br />
clip: Rectangle {<br />
width: bind layout.width<br />
height: bind layout.height<br />
arcWidth: 20<br />
arcHeight: 20<br />
}<br />
}<br />
fill: Color.TRANSPARENT<br />
}; [/code]</p>
<p>And Instantiate the UI components:</p>
<p>[code lang="javascript"]</p>
<p>function initFrontUI() {</p>
<p>descTxt = Text {<br />
x: bind layout.thumbX<br />
y: bind layout.descTxtY<br />
font: bind layout.descFont<br />
wrappingWidth: bind (layout.thumbGroupW - 10)<br />
content: bind description<br />
fill: Color.WHITE<br />
smooth: true<br />
textOrigin: TextOrigin.TOP<br />
clip: Rectangle {    // calculations for layout<br />
x: bind descText.x<br />
y: bind (descText.y - 2)<br />
width: bind (layout.width - 20)<br />
height: bind ( layout.thumbGroupY - descTxt.y - 17)<br />
}<br />
}</p>
<p>stageContent = [<br />
backRect, titleBar, nxtButton, bckButton, exitButton,<br />
descTxt, thumbGroup, pageBttnGroup,<br />
fullView, progressBar,fiv.saveBttn    //names are self explanatory, last one is save button inside Scene Full Image view.<br />
];</p>
<p>getImageData();  // Call Flickr REST API using standard Java Flickr API. Loads list of thumb image src, description, etc.<br />
}[/code]</p>
<p><strong>c. Transitions:</strong></p>
<p>Now look at how Transitions are created. To achieve the animation effect, you have to play with the javafx.animation.<strong>Timeline</strong>, javafx.animation.<strong>KeyFrame</strong>. Again, these are generic words used in animation industry (same with Flash). If you are new to animation, let me define it for you. <strong>Timeline </strong>is the time scale of the animation which consists of number of frames through which animation will move. <strong>KeyFrame </strong>is the frame with concrete data i.e. Initial or final state of the animation and in-between the frames happens the transition that creates animated illusion. The animation used, when you select a thumbnail to view fullImage, is demonstrated below:</p>
<p>[code lang="javascript"]</p>
<p>var tL:Timeline = Timeline {<br />
rate: bind tLRate with inverse<br />
keyFrames: [<br />
KeyFrame {<br />
time: 1s<br />
values: [ opacity =&gt; 1.0 tween Interpolator.LINEAR ]<br />
canSkip: true<br />
}<br />
]<br />
};</p>
<p>...</p>
<p>function fadeEffect() {</p>
<p>if(visible) {       // javafx.scene.Node.visible, if current stage is visible, its set true.<br />
tL.time = 0s;<br />
tLRate = 1.0;<br />
opacity = 0.2;<br />
visible = true;<br />
} else {<br />
tL.time = 2s;<br />
tLRate = -2.0;<br />
opacity = 1.0;<br />
}<br />
tL.play();<br />
}</p>
<p>[/code]</p>
<p>Animations are so easy to code. I just loved it.</p>
<p>I don&#8217;t trust any hypes, statistics till I test them on my own. Proceed with the next section and you will know what convinced me here.</p>
<p>.</p>
<p><span><span style="font-family: Verdana;"><strong>2. Benchmarking the JavaFX</strong> (Gallery example):</span></span></p>
<p><strong>i. Hardware used:</strong></p>
<p>Notebook: Dell XPS</p>
<p>Processor: Intel Core 2 Duo 2.2Ghz @800Mhz FSB</p>
<p>RAM:<em> </em>2.5GB</p>
<p>Graphics: Standard Intel extreme</p>
<p>(I have a Nvidia notebook as well but I wanted to test it on the onboard graphics to check how bad can it get.)</p>
<p>Tools: Netbeans 6.5, <a href="http://geeknizer.com/blog/?p=930" target="_blank">VisualVM</a> 1.1</p>
<p><strong>ii. Invocation &amp; Startup:</strong></p>
<p>JavaFX startup is pretty heavy for initial 10 seconds. During this interval, It is supposed to load a large number of underlying classes.</p>
<p>The main loader is <strong>com.sun.javafx.runtime.main.Main.class</strong>, packaged inside the distributable Jar. In a web browser, actual invocation starts from the javascript from URL &#8220;http://dl.javafx.com/1.2/dtfx.js&#8221;.<br />
This Javascript looks for &#8220;Javafx&#8221; method inside the HTML &lt;script&gt; tag. In this tag, information about the &#8220;JAR to load&#8221; is present. JAVAFX runtime Main.class takes over the control and loads the Projectname_browser.jnlp which invokes the actual jar user classes i.e. com.taranfx.* in this case.<br />
Before loading your Main class i.e. com.taranfx.Main.fx, it loads all the base underlying classes to support the Javafx features.</p>
<p><img class="alignleft" style="margin:10px;" title="Javafx profiling CPU, Memory" src="http://farm3.static.flickr.com/2570/3676241004_28b0c003f4_o_d.jpg" alt="" width="717" height="504" /></p>
<p style="text-align: left;"><strong>a. Observations:</strong></p>
<p style="text-align: left;">My application had import for around 200 classes and 20 classes were defined under com.taranfx.*. The Total classes loaded after the start-up was nearing 4000.<br />
If you look at the graph above, loaded classes for first peek was 2500. This is the point where JavaFX started reading my com.taranfx.* package. This means, at all times for JavaFX to start empty, it will need 2500 runtime classes. During this time, (almost 6 seconds), CPU utilization is max. On my Dual core it was able to eat upto 70% CPU though it was using only 7mb of heap.<br />
If you look at the CPU graph, the second peek was incurred when my classes started executing. This was the time when Request for Flickr REST API was being generated. During this, CPU utilization of 27%, Heap size of 12mb was observed. The third CPU peek came when response from Flickr was received, and images were starting to appear. Loading of 50 images (10in a row x 5 in a column) took peek utilization of 25.5%. As clear from Memory utilization graph, Images were being loaded and heap size was increasing in steps till 20mb of which roughly 13mb was being used. Immediately after this, a substantially GC call reduced the memory overhead. (after this watever memory increase you see is because of my further operations in GUI, we will consider them in next section)
</p>
<p style="text-align: left;"><img class="aligncenter" src="http://farm3.static.flickr.com/2539/3675428237_0c74dd7b3e_o_d.jpg" alt="" width="723" height="501" /></p>
<p>.</p>
<p><strong>b. JavaFX vs. Flash</strong><br />
Now, I had a similar application in Flash ofcourse pretty different in layout, etc but similar functionality. Let&#8217;s compare those statistics with JavaFX.</p>
<p>It was roughly 40% at first peak with RAM usage of 4mb, and then 20% second peek with 10mb, and 3rd peek 29% with 19mb RAM.</p>
<p><strong>c . Conclusion:</strong><br />
All the performance statistics were pretty close to Adobe Flash but were mostly on the higher side which is but obvious because its VM <img src='http://geeknizer.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>.</p>
<p><strong>iii. Animated Transitions </strong><strong>and Full Image load</strong><strong>:<br />
</strong>So after loading of thumbnails is over, next comes the main application. Navigating quickly between images as it prepares requests for each of the image to be downloaded for preview. Let&#8217;s discuss the Performance of the application during power user usage. Since the application has lots of animations specially Fade transitions, We will compare how well are those can run on our machines.</p>
<p>Please note, I have chosen animation mainly as fade as it needs alot of CPU juice to run smoothly. Infact, smooth fading was far from reality in Swing. So let&#8217;s see how well JavaFX handles this in new refined JVM.</p>
<p>Let&#8217;s now look at the profiling:</p>
<p style="text-align: left;"><img class="aligncenter" src="http://farm4.static.flickr.com/3012/3675428551_0a335e63d8_o_d.jpg" alt="" width="723" height="533" /></p>
<p style="text-align: left;"><strong>a. Key Observations:</strong></p>
<p style="text-align: left;">Refer to the CPU, the first wave peek you see is at approx. 15 seconds from when all thumbs were loaded. This peek was incurred due to my first click, which triggered the very first transitioning of fading all 50 thumbnails screen to Full Image preview (class ). Fading was very smooth and what a surprise it took just 19% of my CPU. Are you kidding me JavaFX ? Fading involves a number of interpolated frames during the transition time (set to 2 seconds) and frame rate of decent <em>20 fps</em> was observed (I used a screen capture tool that auto-detects frame rate of the screen, it gave 20.3 fps)</p>
<p>Moving on, I became a power user (clicking madly on all images and then returning back) at full pace. Clicked images were being loaded in background threads while new images being licked were having fading transitions, one by one  being put to backround thread queue to load images from flickr. As expected, it resulted in good CPU utilization, though transitions still remained smooth as before. CPU wasn&#8217;t kicked much it ranged between 30 to 60% which is pretty expected, no surprises. But one thing impressed me, Heap Usage. It didn&#8217;t eat much of the Heap. At start, Heap size was 20MB (15mb used), it then raised only to 25mb after 40 seconds of power user activity. GC wasn&#8217;t kicked more than once and it reduced Used heap from 20 to 15mb making it less hungry for more Heap. I must admit, memory management was pretty good.</p>
<p style="text-align: left;">Now let&#8217;s look at the other part, the most active Threads.</p>
<p style="text-align: left;"><img class="aligncenter" src="http://farm4.static.flickr.com/3619/3675428897_f573df61c8_o_d.jpg" alt="" width="740" height="371" /></p>
<p>Java.util.concurrent.<strong>FutureTask.run</strong>() ate most of the CPU. Because of high number of requests, large no of threads got created, and for obvious reasons, this had to be the highest usage. Second highest is javax.swing.<strong>SystemEventQueueUtitlities</strong>, which is a old class from the generation of swings exposing some generic UI utilities. This involves the fading, and other graphical operations. Third was sun.rmi.transport.tcp.TCPTransport, this was for TCP connection to Flickr. The CPU usage for this thread is during translation of TCP requests from Java to right to your OS protocol stack.</p>
<p><strong>b. Conclusion</strong></p>
<p>I&#8217;m still left astonished if this was possible inside VM! The Ability of Graphics (atleast for 2D) is brilliant. Later on when I took the same test to Nvidia platform, I did see noticeable differences. The Fade effect had risen from bare 20fps to 28fps.</p>
<p><strong>3. The VERDICT!</strong></p>
<p><strong>The Pros:</strong></p>
<p>- Solid API with bundled inbuilt features for almost anything you will need.</p>
<p>- Brilliant Graphics Rendering (2D)</p>
<p>- Low on CPU usage than previous generation of JavaVMs.</p>
<p>- Comparble performance for generic RIA.</p>
<p>- Excellent memory management. (it&#8217;s not just standard VM memory management, there&#8217;s more to it.)</p>
<p>- OpenSource: A More open approach to RIA in the industry as compared to Flash, Silverlight like AJAX.</p>
<p>- Universal Language for Desktop, mobiles, other portables.</p>
<p><strong>The Cons:</strong></p>
<p>Nothing in the world is without Cons, even JavaFX has it:</p>
<p>- <strong>Graphics and multimedia</strong> are powerful on JavaFX, but it runs in JVM and not the real system, hence graphics can never be as powerful as native applications like Adobe Flash. The <strong>high complexity advanced 2D, 3D graphics</strong> will suffer significant performance hits inside VM. Such aplications will have more floating point calculations and More frequent memory allocation/de-allocations which will choke VM. (Though, for low complexity 2D, jaavaFX might beat Flash)</p>
<p>- Another -ve is for <strong>Video and High definition</strong>: The mediaplayer (via API) in JavaFX is able to attain a decent framerate of 24/25fps and CPU utilization goes to peak during this playback over SD (Standard definition). Now if you are looking for HD content to go via JavaFX, it&#8217;s not possible at this time. I used the same hardware as in the benchamark. CPU utilization goes to peak to achieve that framerate for SD.</p>
<p>For Playing 720p and 1080p HD content, VM came to the knees, failed to provide any tolerable frame rates. Definitely, needs lot of improvement in this sector. May be Sun can develop native APIs to interact for each Nvidia CUDA, ATI graphics Kernel for each platform to accelerate this. This could encourage 3d gaming in  JavaFX. (though this is very hard to do and maintain keepin platform independence in mind.).</p>
<p>- A big challenge awaits javafx to reduce <strong>Load times</strong>. To load startup classes, it takes 10-20 seconds depending upon the application and CPU you are using. Flash is much faster at this.</p>
<p>Definitely I found my effort worth while after days of playing with JavaFX. I can proudly say it will stand as a clear challenger to Flash (provided few things improve, specially load times). From the past trend of Sun, it has innovated in every field of Java and will continue to do so. And now that It&#8217;s with <a href="http://geeknizer.com/blog/?p=1014" target="_blank">Oracle and Larry Ellison</a>, I don&#8217;t have a doubt about its future.</p>
<p><img class="alignright" src="http://techblog.gr/wp-content/uploads/2008/12/javafx.jpg" alt="" width="530" height="139" /></p>
<p>Future could be JavaFX. Are you Ready?</p>
<p>Get Started <a href="http://www.javafx.com" target="_blank">www.Javafx.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://geeknizer.com/why-choose-javafx-how-to-code-benchmark-graphics-cpu-memory/feed/</wfw:commentRss>
		<slash:comments>22</slash:comments>
		</item>
		<item>
		<title>Boost Java performance 5x times (Hardware Azul based review)</title>
		<link>http://geeknizer.com/boost-java-performance-5x-times-hardware-azul-based-review/</link>
		<comments>http://geeknizer.com/boost-java-performance-5x-times-hardware-azul-based-review/#comments</comments>
		<pubDate>Sun, 07 Jun 2009 15:31:38 +0000</pubDate>
		<dc:creator>Tarandeep Singh</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[review]]></category>
		<category><![CDATA[Azul systems]]></category>
		<category><![CDATA[boost]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[Sun]]></category>

		<guid isPermaLink="false">http://geeknizer.com/blog/?p=1065</guid>
		<description><![CDATA[Java has been the industry standard for all kinds of business applications. The reason of success had been the platform portability, perfect OO programming, Evolution of 3rd party frameworks &#38;... <span class="meta-more"><a href="http://geeknizer.com/boost-java-performance-5x-times-hardware-azul-based-review/">Read more &#187;</a></span>]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" src="http://appledifferent.com/wordpress/wp-content/java.jpg" alt="" width="168" height="168" />Java has been the industry standard for all kinds of business applications. The reason of success had been the platform portability, perfect OO programming, Evolution of 3rd party frameworks &amp; tools, and ofcourse Open source nature.</p>
<p>There had been one concern though. the performance. When Java released 1.3 way back in time a decade ago, it was featurefull but sluggish. As Java eveolved over all these years to current release Java 6, It has gained lots of Virtual machine optimizations. There were improved memory management using intelligent GC. We have seen compile time and compiler optimizations which enabled improvement in run time performance.</p>
<p>Comparing the performnce of 1.3 vs. 1.6, you will see differences of Big Leap. There are certain computational aspects where VM is optimised to the level of C performance. There had been certain benchmarks which showed that, but lets not get into that.</p>
<p>What we are here to discuss will change the way Business works. Today, time/ mission critical Realtime application cannot dream of using Java at their core. But if this post is followed, its quiet possible.</p>
<p>Long ago, it was thought that what if we could design a chip that could accelerate VM&#8217;s computations to significant numbers. It was a long from being practical. But it had been made possible by a Product vendor named Azul systems.</p>
<p><img class="alignleft" src="http://upload.wikimedia.org/wikipedia/en/6/66/Azul_systems_logo.png" alt="" width="225" height="80" />Azul has designed a hardware infrastructure that promises to boost Java by 5x times. Thats a lot!</p>
<p>The Azul Vega™ 3 7300 and 3300 Series compute appliances offer  highly scalable compute capacity for Java-based applications,            with up to 864 processor cores and 768 GB of memory in a flat SMP configuration.            The unique software and hardware-assisted features of the Azul solution            enable applications to transparently tap into this capacity over the            network and reach unprecedented levels of scalability, throughput, and            performance consistency. With this production-proven architecture the            Azul Vega 3 Series has set the performance record on industry standard            SPECjbb2005 and XMLMark tests.</p>
<p>The Azul technology really is astoundingly cool (if a bit heavy on your budget.) The Vega 2 series maxes out with an amazing 768 cores and supports 768 Gb of ram in a flat SMP configuration. This thing really is the closest thing in the Java world to infinite muscle.</p>
<p>It isn&#8217;t unusual to see Azul beat competitors by a large margin in industry-standard benchmarks. (Azul&#8217;s model 7280 provided 26X to 45X the throughput of the Sun T2000, and 18X to 33X the throughput of the dual-socket, dual-core AMD Opteron.) Not only does Azul provide amazing hardware, they also provide the Azul VM, a Java VM dedicated to this kind of HTC environments.</p>
<p>The Vega 3 Series appliances advance the unique business benefits            delivered by the Azul solution, and are the fastest path to maximizing            the ROI of business-critical applications. Without changing application            code or architecture, applications can deliver 5X to 50X greater scalability            and throughput, while providing consistent performance even under unpredictable            load. The Azul solution also reduces server sprawl by an order of magnitude,            simplifying existing deployments and reducing datacenter costs by 30%            or more.</p>
<p>The new Azul Compute Appliances are built around the Vega 3 processor,            the first 54-core chip designed and optimized for Java workloads. the company claims that the            highly scalable Azul Virtual Machine allows individual application instances            to scale to 670 GB of memory heaps and hundreds of processor cores in            parallel without changing the application code. This breakthrough scalability            is achieved with unique capabilities such as hardware-assisted Pauseless            Garbage Collection, which eliminates the impact of garbage collection-related            application pauses, and Optimistic Thread Concurrency, which minimizes            the impact of scalability bottlenecks caused by memory lock contentions.</p>
<p><img class="alignleft" src="http://www.azulsystems.com/images/products/compute_appliance/7200_med.gif" alt="" width="104" height="143" /><strong>The Hardware:</strong></p>
<p>The Azul Compute Appliance is available in two hardware configurations, depending on the number of processors and memory required.</p>
<ul>
<li><strong>3300</strong> Series is provided in a standard 5U chassis allowing between 108 and 216 Vega processor cores, and between 48 and 192 GB of memory</li>
<li><strong>7300</strong> Series is provided in a standard 14U chassis allowing between 432 and 864 Vega processor cores, and between 192 and 768 GB of memory</li>
</ul>
<p><strong>Management tools</strong></p>
<p>The  software management capabilities of the Azul Compute Appliance provide configuration and monitoring of appliance and application resource use and health, with standard integration into common network management systems.</p>
<ul>
<li> <strong>Compute Pool Manager </strong>(CPM) provides a complete array of capabilities to configure, manage and monitor status for all hardware elements of the compute pool. CPM lets users snapshot and track appliance capacity utilization and application resource usage.</li>
<li><strong>REALTime Performance Monitor </strong> (RTPM) is a diagnostics and tuning tool instrumented into AVM. RTPM offers a uniquely detailed view of the real-time activity of both the application and the underlying VM. RTPM is the perfect tool for rapidly diagnosing scalability, response time and throughput problems in record time.</li>
<li><strong> Status and Alert Interfaces.</strong> CPM supports SNMP monitoring and alerts through standard NMS platforms. Generated CPM events can be directed to syslog output, and forwarded via SMTP to a user-defined email alias, enabling administrative personnel to easily stay abreast of compute appliance status.</li>
<li><strong> In-Band and Out-of-Band.</strong> Management features are accessible either as part of the data network or through a separate management network interface.</li>
</ul>
<p>Here is the performance improvement that the company claims:</p>
<p><strong>The Vega 3 7300 Series is uniquely positioned to address many of the highest priority requirements for Java-based applications:</strong></p>
<ul>
<li><strong>Breakthrough Scalability for Extreme Transaction Processing<br />
</strong>- Offers the fastest path to delivering Extreme Transaction Processing performance, without changing the application&#8217;s code or architecture<br />
- Meets the unique scalability, reliability and memory needs of Java applications</li>
</ul>
<ul>
<li><strong>Engine for Service Oriented Architectures<br />
</strong>- Provides industry leading Enterprise Service Bus scalability<br />
- Serves as a consolidation platform for multiple SOA services, providing dynamic resource allocation between services to support highly unpredictable workloads, and eliminating IO bottlenecks between services</li>
</ul>
<ul>
<li><strong>Power Stations for Data Grids<br />
- </strong>Increases the maximum amount of data cached on the grid by 50X<br />
-                Increases data throughput by 20X<br />
- Allows applications to co-reside with the cached data on a single system, increasing application performance with faster data access</li>
</ul>
<ul>
<li><strong>Platform for Shared Services<br />
- </strong>Constitutes an ideal platform for shared services, providing shared compute capacity to multiple applications over the network<br />
- Preserves OS, resource and security isolation between applications<br />
- Reduces number of conventional servers by 10X or more<br />
- Reduces TCO by 50%</li>
</ul>
<ul>
<li><strong>Industry&#8217;s Most Efficient Delivery of Compute Capacity</strong><br />
- Reduces server sprawl with up to 33x more throughput than conventional x86<br />
- Reduces power, cooling and space requirements by 50% &#8211; 95%</li>
</ul>
<p><img class="aligncenter" src="http://blog.gigaspaces.com/wp-content/uploads/blogpost_pic1(1).jpg" alt="" width="571" height="264" /></p>
<p><strong>Architecture:</strong></p>
<p>Vega3-based Azul Compute Appliances          transparently provide massive amounts of shared processing and memory          resources to Java™ applications on the network. Each rack-mounted          appliance simultaneously delivers up to 864 processor cores and 768 GB          of memory to multiple Java applications that are launched from their original          servers through the network and execute on the appliances using Azul Virtual          Machine (AVM) software, a fully compliant Java Virtual Machine™          (JVM) implementation. The integrated Compute Pool Manager (CPM) software          manages appliances, compute pools, and resource allocation for applications          using powerful administrator-defined policies. REALTime Performance Monitor          (RTPM) provides a detailed view of the real-time activity of both the          application and the underlying VM.</p>
<p>Hardware specs can be found <a href="http://www.azulsystems.com/products/compute_appliance_specs.htm" target="_blank">here</a>.</p>
<p>There is alot company has revealed about its products, <a href="http://www.azulsystems.com/products/compute_appliance.htm" target="_blank">do check them out.</a></p>
<p>The Era of RealTime mission critical Java based application has already arrived. I know of certain Telecom, Banking companies that have employed such solutions in their applications and their experience with the appliance is breathtaking.</p>
<p>Azul has no plans of supporting the project via Open source license. We would look forward for a project may be by Sun to make an equivalent platform using SPARC systems scaling upto hundreds of Processor cores and Terabytes of RAM. The game is endless.</p>
]]></content:encoded>
			<wfw:commentRss>http://geeknizer.com/boost-java-performance-5x-times-hardware-azul-based-review/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Oracle to invest heavily in Java in future</title>
		<link>http://geeknizer.com/oracle-to-invest-hevily-in-java-in-future/</link>
		<comments>http://geeknizer.com/oracle-to-invest-hevily-in-java-in-future/#comments</comments>
		<pubDate>Wed, 03 Jun 2009 10:07:13 +0000</pubDate>
		<dc:creator>Tarandeep Singh</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[Sun]]></category>

		<guid isPermaLink="false">http://geeknizer.com/blog/?p=1014</guid>
		<description><![CDATA[Larry Ellison has said that the &#8220;new Oracle&#8221; will continue to invest in Java and will consider building Java-powered netbooks and phones. Oracle CEO Larry Ellison and Sun Chairman Scott... <span class="meta-more"><a href="http://geeknizer.com/oracle-to-invest-hevily-in-java-in-future/">Read more &#187;</a></span>]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" src="http://weblogs.java.net/blog/campbell/archive/images/orangebox.png" alt="" width="290" height="239" />Larry Ellison has said that the &#8220;new Oracle&#8221; will continue to invest in Java and will consider building Java-powered netbooks and phones.</p>
<p>Oracle CEO Larry Ellison and Sun Chairman Scott McNealy at the JavaOne conference choose not to discuss the future of Sun&#8217;s hardware businesses, which include processors, servers, storage arrays, network switches and thin-client terminals. Ellison did say the new Oracle will consider building Java-powered netbooks and phones.</p>
<p>Larry Ellison, in his first public appearance since Oracle announced April 20 that it intends to acquire Sun Microsystems for $7.4 billion, told a packed auditorium in an informal appearance onstage at the JavaOne conference in San Francisco that his new ownership will continue to invest heavily in Sun&#8217;s Java franchise.</p>
<p>Ellison also said—almost in an offhand way—that the new Oracle may get into the Java-powered netbook- and telephone-making businesses at some point.</p>
<p>Ellison, noting that &#8220;all of our middleware is based 100 percent on Java,&#8221; said his company has &#8220;invested more than anybody else in Java technology in terms of dollars over the years, and we intend to invest—and accelerate our investments—going forward.&#8221;</p>
<p>Java, Sun&#8217;s open-source networking programming language, is found in most IT systems, throughout the Internet and in millions of handheld devices worldwide.</p>
<p>&#8220;Let&#8217;s focus mainly on Java here today, that&#8217;ll keep us out of trouble,&#8221; McNealy joked.</p>
<p>To read an analysis of Oracle&#8217;s multibillion-dollar acquisition of Sun, click here.</p>
<p>Since the announcement of the acquisition, there has been speculation by analysts and industry insiders that Oracle may want to break off Sun&#8217;s hardware franchises and sell them to other vendors. Ellison, however, said shortly after the transaction was announced that he intends to do no such thing.</p>
<p>Java is very attractive for Oracle &#8220;because it allows us to extend our own platform and build applications on top of it,&#8221; Ellison said.</p>
<p>&#8220;Our whole next generation of business applications, something we call our Fusion Suite of applications, is built entirely on Java. This will be the first-ever set of ERP and CRM applications built on a standard platform,&#8221; Ellison said. &#8220;We were able to do that because Java is open and extensible.&#8221;</p>
<p>Ellison added that his engineers have contributed a great deal to the Java franchise over the years.</p>
<p>&#8220;We had to add to Java such things as real-time business activity monitoring, business intelligence—a variety of things—and we could do that because Java is open,&#8221; Ellison said. &#8220;Customers and ISPs can do the same things for their own applications.&#8221;</p>
<p>Oracle May Build Java Netbooks</p>
<p>Ellison also told about 3,000 Java developers at the conference at the Moscone Center that he may steer Oracle toward new businesses making Java-powered netbooks and telephones to compete with Hewlett-Packard, Acer, Lenovo, Dell and other companies.</p>
<p>&#8220;I don&#8217;t see why some of those devices shouldn&#8217;t come from Sun,&#8221; Ellison said. &#8220;There will be computers that are fundamentally based on Java.&#8221;</p>
<p>Netbooks are smaller, relatively inexpensive laptop computers with wireless connectivity that are good for checking e-mail and browsing the Web. Analysts expect the netbook market to grow to about 25 million units sold in 2009, up from 11.7 million in 2008.</p>
<p>Ellison and McNealy did not address any of Sun&#8217;s other open-source software projects, such as MySQL (database), the NetBeans software tools and several others.</p>
<p>McNealy said when Sun&#8217;s and Oracle&#8217;s research and development divisions join together in the merger, the R&amp;D budget will total between $4 billion and $5 billion per year, ranking it among the world&#8217;s top 10 companies.</p>
<p>&#8220;That is a very, very positive future for Oracle,&#8221; McNealy said</p>
]]></content:encoded>
			<wfw:commentRss>http://geeknizer.com/oracle-to-invest-hevily-in-java-in-future/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>GreenTea: The Only Java Grid Computing Software For TheRestofUs!</title>
		<link>http://geeknizer.com/greentea-the-only-java-grid-computing-software-for-the-rest-of-us/</link>
		<comments>http://geeknizer.com/greentea-the-only-java-grid-computing-software-for-the-rest-of-us/#comments</comments>
		<pubDate>Mon, 11 May 2009 16:13:08 +0000</pubDate>
		<dc:creator>Tarandeep Singh</dc:creator>
				<category><![CDATA[Cluster]]></category>
		<category><![CDATA[GRID computing]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[greetea]]></category>
		<category><![CDATA[grid]]></category>
		<category><![CDATA[java grid computing]]></category>

		<guid isPermaLink="false">http://taranfx.com/blog/?p=744</guid>
		<description><![CDATA[The GreenTea Software is a pure Java Peer-to-Peer (P2P) based Grid OS platform that facilitates P2P computing, distributed computing, grid computing, and network computing by harnessing the idle computing resources... <span class="meta-more"><a href="http://geeknizer.com/greentea-the-only-java-grid-computing-software-for-the-rest-of-us/">Read more &#187;</a></span>]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" src="http://shakethepalmtree.files.wordpress.com/2007/09/green-tea-shaded.jpg" alt="" width="300" height="305" /></p>
<p align="justify"><strong>The GreenTea Software</strong> is a pure Java Peer-to-Peer (P2P) based Grid OS platform that facilitates P2P computing, distributed computing, grid computing, and network computing by harnessing the idle computing resources on the network. GreenTea is written entirely in the Java (TM) programming language. It runs on any Java enabled computing platforms, such as PCs, Unix, Linux, Mac OS X, even Java-enabled Cell phones. GreenTea enables organizations to fully utilize their existing heterogeneous computing resources to meet their heavy-duty computing needs, without having to purchase expensive supercomputers and servers. By using GreenTea software, all the computers in the organization can be utilized to form a large virtual supercomputer.</p>
<p align="justify">GreenTea is a total resource aggregation and resource sharing platform. The resources include both <em>hard </em>resources (e.g. CPU, RAM, hard disk, network bandwidth, etc) and <em>soft </em>resources (e.g. files, software applications and services, etc). Not only does GreenTea harness computing resources, but most importantly, GreenTea enables give-and-take sharing of computing resources (bi-directionality, or Many To Many topology). In fact, any participant in the GreenTea network is both a contributor and a beneficiary of the shared resources .</p>
<p align="justify">For example, all the computers in the company can form a GreenTea network by either running GreenTea on their desktop or joining the network via a web browser. Departments that require heavy-duty computing resources can then run their GreenTea enabled application programs on the GreenTea network. This saves the company from buying and maintaining additional computing equipment. It is economically efficient to make use of existing computing resources rather than owning an expensive supercomputer.</p>
<p>For further information, visit company website</p>
<p><strong>source: http://www.greenteatech.com/</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://geeknizer.com/greentea-the-only-java-grid-computing-software-for-the-rest-of-us/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Program in Java, still use Realtional database?</title>
		<link>http://geeknizer.com/you-program-in-java-still-use-realtional-database-there%e2%80%99s-something-wrong-with-this-picture/</link>
		<comments>http://geeknizer.com/you-program-in-java-still-use-realtional-database-there%e2%80%99s-something-wrong-with-this-picture/#comments</comments>
		<pubDate>Mon, 17 Nov 2008 00:26:35 +0000</pubDate>
		<dc:creator>Tarandeep Singh</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://taranfx.com/blog/?p=101</guid>
		<description><![CDATA[Unlike relational databases, InterSystems CachÃ©Â®Â is a perfect match as the back end for object-oriented programming. Itâ€™s the worldâ€™s fastest object database, and runs SQL queries up to 5 times faster... <span class="meta-more"><a href="http://geeknizer.com/you-program-in-java-still-use-realtional-database-there%e2%80%99s-something-wrong-with-this-picture/">Read more &#187;</a></span>]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" src="http://www.intersystems.com/jgurucache21_336x280/TracCar_med.jpg" alt="" width="326" height="203" /></p>
<p align="left">Unlike relational databases, InterSystems CachÃ©<sup>Â®</sup>Â is a perfect match as the back end for object-oriented programming. Itâ€™s the worldâ€™s fastest object database, and runs SQL queries up to 5 times faster than relational databases. Plus, with an innovation by InterSystems called JalapeÃ±o, CachÃ© persists Java objects without relational mapping â€“ reducing development time for Java programmers by as much as 40%.</p>
<p align="left">CachÃ© delivers massive scalability on minimal hardware, requires little administration, and incorporates a rapid Web application development environment. Itâ€™s available for UNIX, Linux, Windows, Mac OS X, and OpenVMS â€“ and is deployed on more than 100,000 systems ranging from two to over 50,000 users.</p>
<p align="left">
<table border="0" cellspacing="8" cellpadding="8" width="98%">
<tbody>
<tr align="left" valign="top">
<td colspan="2">
<div><img src="http://www.intersystems.com/images/cache-logo-trans.gif" alt="CachÃ©" width="118" height="68" /></div>
</td>
</tr>
<tr>
<td colspan="2">
<p align="center"><strong>Here are some links that may interest you:</strong></p>
</td>
</tr>
<tr>
<td colspan="2"><a href="http://www.intersystems.com/cache/whitepapers/jalapeno.html"><strong>Read the whitepaper<img src="http://www.intersystems.com/images/bullet-arrow-c.gif" border="0" alt="Click for more" width="14" height="10" />Â <br />
Plain Old Java Persistence With CachÃ© &#8211; InterSystems JalapeÃ±o Technology</strong></a></td>
</tr>
<tr>
<td colspan="2"><a href="http://www.intersystems.com/java/index.html"><strong>For Java DevelopersÂ <img src="http://www.intersystems.com/images/bullet-arrow-c.gif" border="0" alt="Click for more" width="14" height="10" /></strong></a>Â <br />
JalapeÃ±o is not the only way CachÃ© enables rapid application development with Java.Â <br />
Learn more.</td>
</tr>
<tr align="left" valign="top">
<td width="50%"><strong><a href="http://www.intersystems.com/cache/index.html">Learn more about CachÃ©</a><img src="http://www.intersystems.com/images/bullet-arrow-c.gif" border="0" alt="Click for more" width="14" height="10" /></strong></p>
<p><strong><a href="http://download.intersystems.com/download" target="download">Download a free copy of CachÃ©</a><img src="http://www.intersystems.com/images/bullet-arrow-c.gif" border="0" alt="Click for more" width="14" height="10" /></strong></td>
<td width="52%"><strong><a href="http://www.intersystems.com/guarantee/index.html">CachÃ© Money-back Guarantee</a><img src="http://www.intersystems.com/images/bullet-arrow-c.gif" border="0" alt="Click for more" width="14" height="10" /></strong></p>
<p><strong><a href="http://www.intersystems.com/index.html">InterSystems Home Page</a><img src="http://www.intersystems.com/images/bullet-arrow-i.gif" border="0" alt="Click for more" width="14" height="10" /></strong></td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://geeknizer.com/you-program-in-java-still-use-realtional-database-there%e2%80%99s-something-wrong-with-this-picture/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

