Sunday, December 22, 2013

JVM’s Legacy… living with it !?!

Even through application virtual machines were not new, when JVM was initially announced it was an instant success looking in mind the challenges of those days. Challenges in terms of having a suitable OO programming languages with suitable libraries and framework plus having platform which can support built once run anywhere type of environment. JVM along with Java programming language + java development kit (JDK) did good work in address these.

But now the things have changed. Technology landscape has evolved drastically. In today’s cloud era challenges are completely different. Challenges in terms of getting application which are

  1. challenges to build and run applications over different PaaS and IaaS cloud providers
  2. challenges to elastically scalable with minimal human intervention
  3. challenges to run applications in multi-tenant environments with complete isolation

When we try to judge Java in this newer landscape it seems bit too old…

  1. only two innovation in two decades

…with not so good answers for any of the new generation challenges…

  1. poor memory management with a GC that sucks memory
  2. JVM and associated app server are memory
  3. bit too slow on program execution front
  4. do not know how to use modern multi-core processors
  5. too many security vulnerabilities – an easy target on web
  6. too many JVM versions giving hard time on compliance
  7. do not ask where is multi-tenancy

Sunday, December 8, 2013

What is the future of Java?

I was been trying to find Java road map, especially in term of what is in store for Cloud centric development and delivery support. I agree with Paul Cook, there is good amount of development happening in areas like improving the jdk, community is coming up with frameworks, accelerators, added tools etc.,  but the issue is with core architecture which has not seen any major improvement over two decades especially when the complete IT landscape is changing due to cloud centric models.

Java 7 is meant to set the foundation for cloud centric platform, but the real cloud-ready features won't make an appearance until Java 8 in 2013 at the earliest.

Moreover I do not think pure OO development is in fashion these days. At least I do not like writing class for every dam think I need to do. I am sure there are lot of other developers who coded in languages like Python and Ruby do share the same feeling. This means language should also improve to incorporate more of dynamic and functional style of coding like lamda expressions...

Oracle's road map does little to revitalize the platform. Where are those vertical JSRs for solving cloud-specific problems? Where is the vertical API for resource sharing, state caching, cloud deployment and monitoring, Distributed Management Task Force (DMTF) open management interoperability, or minimizing the number of network calls or calculations a CPU-constrained app makes? Or cloudy authentication and authorization requirements?

This raises the question… what is the future of Java, is it slowly dying? This thought makes me bit uncomfortable. I think it is time for Oracle to loosen up things for the community to development java, to help the most popular programming language to get its charm back.

Thursday, November 28, 2013

Whats troubling SDN journey?

While we are seeing a big hype going #SDN way still technical community does not seems to be totally comfortable with SDN. Tom Nolle summarized those missing links in his blog

According to him some of the key missing links are

1. Lack of standards for full device control
2. Service control software is missing
3. Multivendor network control a barrier to adoption
4. Managing control traffic in centralized networks
5. Boundary functions are needed


Wednesday, November 27, 2013

10 ICT predictions by IDC for 2014 in APAC

The 10 ICT predictions by IDC for 2014 in APAC:

  1. "Death" of BYOD, birth of CYOD
  2. One-on-one marketing redefined to become socially and contextually aware
  3. Gelocation data to drive opportunities, push regulations
  4. Big data as-a-service (BDaaS)
  5. New models from mobile and e-commerce boom
  6. Tech giants move to adjacent industries
  7. Internet of Everything driving products and biz models
  8. Partner community platforms to drive biz innovation
  9. Software-defined infrastructure formally on agenda
  10. Perfect storm for projcet failure from mobility, analytics, social and cloud

Thursday, October 31, 2013

Technology Watch List for 2014


Some of the technology disruptions for coming year

- Mobile Applications, Devices
- Internet of things / Smart Machines / Smart Home
- Internet of People (Measurement, connectedness)
- Web-Scale IT
- Software Defined Anything
- Augmented reality applications and business models (e.g. google glass, automotive)
- Big Data / BI / Analytic
- Artificial Intelligence
- Gamification
- 3 D Printing
- Personal Cloud
- Social Media (still exciting :) )

Sunday, July 28, 2013

Next Generation IT Service Model Shift

We are witnessing a major shift in the Enterprise App Paradigm. This is going to dictate how IT service providers are design / refine their offering. Gone are the days when IT Service are pure resource body shops, gone are the days when IT services are big ERP resellers, gone are the days when IT seller are hear and build (bespoke) application developers. Now, gone are the days when IT seller are service integrators. Today customer are looking at IT services provides to provide more than just value driven services. Customer are looking for true innovation delivery. For this to happen, IT service providers need to shift their focus and re-emphasize on customer centric (customized) innovation delivery in their offering messaging.

This is not a simple thing that is said and done. For an IT service company to competitive, they need to reinvent themselves and overhaul their operational model. The current model service delivery to me rebuilt on an agile factory based models where in standard service catalogs needs to be replaced with generic service components which can be assembled to suite the needs of different customers.

Here are some of the thoughts around it.

 

Tone down

Emphasize

Talking about "standard" offerings

Generic solution components from which customer centric solutions can be built (at easy with better Time To Market)

Promoting sales "catalogs" and "catalog selling"

Engineering component repositories and agile solution manufacturing (following a factory based approach)

Advocating "off the shelf" answers to client problems

Imagining and developing appropriate answers to client problems and challenges in their context, not the IT service provider

80% standard and 20% customization

Ability to integrate, adapt and innovate using components to create client-specific value. (Innovative models in collaboration with partner and other clients would be the key)

Matching exercises between client requirements to catalog line items

Listening and interpretation of client requirements, population of an architecture for the client need and solution with selected generic components

Relying on partners to provide an architecture

Developing standard architecture patterns around service offering which can help in assembling components quickly (at easy)

Standardizing the offer in the hope of selling it

Standardizing delivery approach to realizing any needed solution - standard method, not standard outcome

Limiting the range of offerings to clients

Be willing to take on global, industry and client's most pressing, complex, challenging and unique “first of a kind” work

Commoditization via supply of standard utility

Service innovations and supply of custom amenity

Thursday, July 25, 2013

Enterprise Applications - A major shift in happening

I have been tracking the paradigm shifts (long since my college days) as the technology evolves. Seen the days of single machine / single user / silo applications to the current trend of complex, distributed, multi-cloud, auto scaling systems. If that is not enough the disruption of machine to machine communication in the form of Internet of Things taking this to a next level.

This did not happen overnight. It is a sequential evolution of technology over multiple grow-stabilize cycles over the last 50 years with each new technology triggering a new cycle.

Now the rapid adoption of cloud, big data coupled with newer technologies triggering the new cycle which is going to reshape the fundamental of enterprise application development and consumption models.

In this new shift that we are witness now...
  • OOP is no longer would be the preferred programming style
  • Next generation application architecture pattern to address auto-scaling, fail safe mechanism
  • Next generation app platforms with built in capabilities to decouple technical architecture complexity
  • Dev and Ops are no longer silos
  • No yearly, half-yearly, quarterly delivery cycles but multiple time in a day though continuous delivery
  • Applications deployed in virtual containers or capsules
  • Enterprise application are delivered through a consumer centric App Store model (not a mobile app store but an enterprise app store)
What else? We need to wait and see

Wednesday, June 12, 2013

Augmented Reality SDK - Comparison

Uh very hectic day... do not wanted to drop on "Learn something interesting today". Wanted to find out options for Augmented Reality development for new projects planning to kick off tomorrow. Here is what I found... what I think a very rare and interesting comparison on Augmented Reality SDKs. A feast for AR aspirant. Enjoy!!!

http://socialcompare.com/en/comparison/augmented-reality-sdks

Saturday, January 5, 2013

Do we know the enterprise IT challenges...???

Last night during the dinner chat with one of my old school pal, we stumbled on the topic of current issues that enterprises are stuck with. It went on almost for 30 mins. But what made it less interesting to me is that whole discussion was around cost cutting, our sourcing, rationalization etc., It is really boring, we are still taking about the tip of iceberg. But the question is due we really know what the real challenges are. I am not talking about a laundry list with 30/40/50 items. I am looking why we really have those items? (whatever the count is).

I could not get this out of mind and started listing, order, consolidating, prioritizing those items to make sure I am completely confident that as a consultant I am doubly sure about them.

Of course, it is debatable. But this is what I think are core problem and rest of list is the symptoms.

1. Dynamic market conditions are forcing business to adopt rapidly while IT is able to respond to this
2. Day by day IT is becoming expensive due to the mass it has put up over the years. Organization are barely left with budgets to carry the additional mass or sometime dead weight which we are not able to cut off
3. Application developments costs are not realized due to ... immature models, buggy and sloppy apps created, high life cycle costs, limited use adaptation, ... overall all these the time to market issue
4. Data is growing, but no information within the sight. Not sure how to store, analyze, present the data. Even the simplest how to make sense of it?

Like to offer any help in refining / redefining my thoughts. You are most welcome.