From a disciple of evolution

Archive for October, 2007

Adobe-Apple Merger : Rise of Titan

I was exploring on internet about Oracle’s offer for Bea systems. During that exploration, I encountered a blog post which discusses the Oracle’s offer, around many interesting facets, including a speculation about merger between SAP and IBM. Sometime back I read about Microsoft’s interest in Yahoo. Years before we saw a huge merger between HP and Compaq. All these inputs triggered a thought in mind my mind – a merger between Adobe and Apple. It might be my flight of fancy, however the merger can have many practical benefits, to each of the entities.

Adobe has strong foothold in applications and products such as Adobe Photoshop, Adobe Acrobat, Adobe CS3 and now Adobe Flex. In the era of Rich Internet Applications, Adobe’s Flex should play a very important role. Historically flash has been a popular portable runtime, but only for browsers. Adobe Integrated Runtime provides the same capability on desktop so that Flex applications can be run as if native applications. Apart from these products, Adobe supports ColdFusion, a server-side web platform, similar to ASP/JSP/PHP/Rails. Very recently there was a news indicating Adobe’s interest in online office suite. Having a good foothold in the products space, what Adobe does not have (or at least I don’t know) is exposure to hardware platforms, appliances and operating systems. This is where Apple’s expertise can support to deliver dramatic results.

Apple has been the choice of connoisseurs. Mac, MacOS X, etc have become popular and their users are difficult to be convinced to switch to another platform. Innovative products and services such as iPod, iPhone and iTunes helped to develop a creative and positive image in the minds of people. Despite all these success stories, Apple could not be successful in application software, comparing with its platforms and appliances.

Apple’s experience in hardware, platforms and services combined with Adobe experience in applications, platforms and development tools complementary for each other. Of course Apple is larger in terms of revenue, employee strength, number years in business etc. Two choices are available (as I see them) – Merger or Collaboration. Merger of Adobe and Apple can emerge as an entity which can be more innovative and more competitive, to play an important role in years to come.

But after all, this is all day-dreaming…


Java Processors – Can it be Resurrection of Phoenix?

Over last 12 years, Java has become almost de facto in application development paradigm. Initial days were complaining about the performance of Java programs. However there is no doubt that enormous efforts that have been put in optimization of Java compiler and JVM implementations, have given handsome returns. But we know, rather we need to know, that there is an upper limit to this optimization for performance, being implemented as a software. Despite Java’s wide acceptance, Java Virtual Machines are limited to be software deployments. There is an emerging need, to have Java Virtual Machine in  hardware.

Fortunately the space is not an entirely unexplored territory. There were several efforts to implement Java processors and including PicoJava, one of them from Sun Microsystems. It seems a very promising concept and it should become more and more relevant in days to come. Imagine a system with many cores, for example ‘SUN UltraSPARC T2‘ that has 8 cores per CPU. Now all these cores are identical and a server with 8-way configuration would have 64 cores. This kinds of systems leave a lot of room for something called as ‘Domain-specific Processors’, hence it makes lot of sense to have four dedicated Java processors part of the system. One of such example is presented by IBM for its System Z Application Assist Processor(zAAP). Primary benefit of having such processors would be their specialization. Such processors can be optimized to a larger extent, they can be upgraded frequently and would be cheaper. Apart from that, these processors leave the main general purpose processors free to do their tasks. Thus a Java Processor can be a co-processor to your main processor. Remember the known examples such as ‘Intel 387’ or today’s Graphics Processing Units (GPUs). Checkout some benchmarks for IBM’s zAAP.

Another very interesting initiative is from Bea Systems, that talks about JVM Hypervisor. This can, meanwhile, provide some breathing space. The idea was, I guess, first presented by Joakim Dahlstedt (CTO of Bea) at JavaOne 2006. One can find PDF of the presentation here – “Bare Metal”—Speeding Up Java™ Technology in a Virtualized Environment.