Wednesday, January 26, 2011

Response to Intel's http://software.intel.com/en-us/blogs/2011/01/26/desktops-and-laptops-on-life-support/

Intel Jeff is telling Laptop and desktop will survive the holocaust
But Desktop/Laptop is wounded and wound is going to be bigger and bigger, eventually going to take place of mainframe computer. Is the Laptops natural evolution of Desktops? Is the Tablets natural evolution of Laptop? What causing Laptops bigger, loosing batteries sooner, heavier -- all those things affected its portability? Is that Keyboard good enough to interact with? Is there better interfaces available? etc etc
It looks like interface to interact with such system may not be keyboard in few years. In my opinion aged keyboard and mouse based interface is going to be replaced by Touch, Voice and motion based one (What Intel's partner MS calls NUI -- natural user interface). But it is just taking shape. It will take few years or decade but eventually to blog or type or anything fit at that time frame and interact with the devices, I just talk to voice aware things/editors -- it is natural evaluation and I think Intel would accept that. We are not sitting on pentium era, we are on fusion era where CPU + GPU in single package. Most people would have booed but eventually it happen. I understand Intel is not in that race but I hope they catch up soon. Moor's law is playing big role in the interface evaluation too -- look at iPhone to multi touch track pad, multi touch mouse and new Apple's motion aware keyboard patent and MS surface, MS kinect is huge hit and MS plan to integrate it with windows and going to support ARM based proc. I really mean it and we will see it within 10 years.

What about big monitors?
He is also referring use of big monitors but looking at projection technology and flexible OLED -> AMOLED (Galaxy S, Nexus S etc now -- though not flexible to fold :)) can roll out to satisfy biggie needs. Holography also possible successor waiting to give immersive experience.

ARM is new king of the hills with great commanders like NVIDIA, TI, Qualcom etc thats what CES 2011 proclaimed.

The main point is iPad proved laptop and desktop is being cannibalized -- Yes read the 2011 Q1 call and what Tim Cooks said about cannibalization -- They boldly accepted it because they have device which is doing that but for Intel, it is ARM based multiples cannibalizing it. This is shivering news for Intel when I see my executive pestering to get access internal corporate network from iPad/tablet. Either he is saving Intel as it is not on lime light or Intel needs to fire him for the lack of vision, oh.. thats what AMD did to its CEO(Dirk Meyer).

All these new evolution needs new app to fully utilize the feature, demand low power, light weight, ever connected, instant on devices -- base foundation component is processor -- most importantly low power processor and hence market will be opened up for new players.

By the way, I am typing this blog using latest Intel Core i7 2720qm, 8 GB memory and SSD running Ubuntu 11.04 today's build but I definitely know I am ready to switch to right kind of device soon. The fact is my first computer is not desktop, it is Laptop. May be for next generation, first computer is going to become smart phone and next big one would be tablet. I don't need biggie unless I do programing, fire up Eclipse or XCode or Visual Studio I need better CPU equipped one. But what if IDE evolves in phase with tablet? thats what iWork did, thats what Microsoft One Note did. This will happen to photoshop and other heavy apps. Nvidia Tegra 2 is driving full HD to external monitor and tv -- promising quad core in Tegra 3 or 4. Evolution is playing there also.

NoSql for Enterprise, here is some of the questions needed proper answer

Here is my list; this is based on my experience working with CouchDB, HBase and others

What is the tools/infrastructure enterprise use to scale their RDBMS?
What kind of strategies used to avoid (SPOF) due to DB failure?
What are the options available for DB2? SQL server? or fill your DB of choice
What is the possible trade off?
What happen to ACID properties to this situation?
What are the issues with using better commodity hardware?

This is very important as quest for solution should be based on existing problems and you need to understand that better to explore which would fit snugly.

What is their point of view on CAP?
What kind of applications can be easily developed, hard to develop using NoSql?
Is MapReduce recommended over SQL? What would be the productivity loss/gain?
How will it fit into virtualized environment? What is the impact of virtualization in terms of performance?
What are the potential issues when system goes away with mathematical relation model to document/Key value oriented model?
What is the theoretical limit on data size, data growth better served by NoSql?
Can NoSql be used to make backend/data services by pool of the hardware (commodity) by exposing select/update/delete/archive? And hiding RDBMS aspect from developers?
What is the roll of DBA in the NoSql world?
How is the transactional model like 2P commit/distributed commit fit into NoSql?
What is the impact of tools/framework/reporting framework developed specifically RDBMS in mind?
Enterprise security or product security impact using NoSql?
What would be the threat for NoSql from patent bullies like Oracle/Microsoft/others?
What is the perspective of vendors like SAP/IBM/Oracle and what is their take/offering on NoSql?

This questions will make you understand why nosql.

Monday, January 24, 2011

My Thoughts on Html5 to become Html

My Thoughts on Html5 to become Html:

It is interesting. Few weeks back Google chrome engineer blogged that version number in chrome is mere indication of snapshot of development and doesn’t make sense to follow release cycle. That’s making sense as Google chrome evolved with in 2 years far better browser in this world (including enterprise security featureJ). It is evolved from version 3 to 10 in year 2010 alone. In place of version numbers, they place a channel to download based on how technical you are,
1. Stable : more matured and production ready
2. Beta: Matured but not much tested
3. Dev: Matured and being tested
4. Canary: Unstable and should not be used as regular one, new feature without or less testing and may break

Besides,

Beginning of this week we saw Html5 logo to promote html5. Tim oreilly said, “html5 is not just a Technology any more, it is a movement”, Yes in order to address fragmented app development using proprietary APIs for multiple devices and multiple OSes, HTML5 is right choice. This is standard. It addresses every desktop, mobile, tablet, connected device (Nintendo DSI, Sony PSP/PS3) to TV, Car and new OS itself (ChromeOS) as well as great development platform for something not yet imagined.

So what is the deal? HTML5 editor Ian Hixie is telling Html5 is going to be called Html. And stable snapshot would be with W3C and living document with WHATWG. After all basic requirement to access new Html feature is through browser and when they say html5 is html, and then it is Html. I think this also going to push browser developer team to say “yes I support Html J” No more hiding behind “Html5” is not yet ratified, not matured etc etc.

Sunday, January 23, 2011

Ubuntu 11.04 performance (Core i7 2720qm - sandy bridge)

System: Core i7 2720qm,
Memory: 8 GB ram,
Graphics: ATI Radeon 5570M 1 GB Video memory and
Storage: Vertex 2 200GB ssd.

I could not run Unity as it has some issue with Sandy bridge, I needed to disable intet VTx, through BIOS setting, to install Ubuntu otherwise i couldn't install.

hardinfo -r

Ubuntu 11.04 alpha 1 benchmark:

Benchmarks
**********


CPU Blowfish
------------

-CPU Blowfish-
This Machine 1400 MHz 1.969
Intel(R) Celeron(R) M processor 1.50GHz (null) 26.1876862
PowerPC 740/750 (280.00MHz) (null) 172.816713

CPU CryptoHash
--------------

-CPU CryptoHash-
This Machine 1400 MHz 662.236

CPU Fibonacci
-------------

-CPU Fibonacci-
This Machine 1400 MHz 2.039
Intel(R) Celeron(R) M processor 1.50GHz (null) 8.1375674
PowerPC 740/750 (280.00MHz) (null) 58.07682

CPU N-Queens
------------

-CPU N-Queens-
This Machine 1400 MHz 0.518

FPU FFT
-------

-FPU FFT-
This Machine 1400 MHz 0.927

FPU Raytracing
--------------

-FPU Raytracing-
This Machine 1400 MHz 3.249
Intel(R) Celeron(R) M processor 1.50GHz (null) 40.8816714
PowerPC 740/750 (280.00MHz) (null) 161.312647

Ubuntu vs Windows 7 -> Ubuntu

I got Intel Sandy Bridge Core i7 2720qm with 8 GB ram, HP pavillion 2 days back. The fact that, I am a Mac user and experience with Win 7 is really bad. Microsoft really don't know what is experience is. One such example is Track Pad, it is called touch pad (synaptics). It supports multi touch what a shock? I could not use it and it spoiled my experience -- like unsafe roller coaster ride. I need to hunt where mouse point is, scroll approximately and need to do hard with your finger to move again to where you want. I uninstalled lots of craps including Norton antivirus and I installed MS security essentials. It is long story.

Well, I know I am going to work with ubuntu and just check whether Win 7 can lost long and satisfy other needs so I can live with VirtualBox 4 or VMPlayer. But still windows 7 is windows except some lipstick like Aero and animation.

I installed ubuntu 10.10, in my surprise, out of the box, it blows the water out of win7. It is smooth, elegant and as near good as Mac. Again, this is first shot and first few minute experience with Ubuntu. I still remember "Mark shutterworth" that they want to create a better than Mac experience, they did with moving controlls to left side from right etc. But it is good.
It has all ingredients like openoffice (libreoffice in 11.04), media player, email client and FIREFOX.

Adobe Flash, Skype and other day to day seasonings are good at work. Ubuntu is really maturing at desktop end.

Sunday, January 09, 2011

Death of TV Remote?

Context Television remote is one of the heavily used parts, it may be tops that list.
So, few months back Android started integrating youtube app which controls what to play in the TV.
VIZIO, the TV company, demoed mobile phone and tablet which has IR blaster inbuilt in it.

Next question is how it is going to eliminate?
Android app is controlling it from Server and it just does it for youtube -- it is not much useful except for youtube. Vizio's one is actually bakes remote's infrastructure into bolie and tablet -- it is nothing new but just convergence of TV remote functionality into mobile just like Camera into mobile devices.


I am not sure when TV integrates wireless capabilities and other niceties into it would eliminate IR itself. May be zigbee or bluetooth would just needed to completely get rid of remote.

There is sony iPhone APP which controls some of the Bluray player from Sony.

I am actually looking for iPhone app to control my PS3.

So all of them leads to 3 possibilites:
1) Integrating existing IR blaster into new mobile devices, like VIZIO, and it works for all the TV
2) Apps like Sony's Bluray player app to control the device -- which uses network stack to talk to device but not through IR blaster
3) Specialized apps like Android youtube one
Will it going to completely eliminate Remote? It is not going to think so (because eco system is vast and disparate), but at least some end, mobile is going to play some roll there.

Wednesday, January 05, 2011

Is Microsft being erased gratually???

Slew of Android tablet and Android phones at CES 2011. Is it telling something about Microsoft? It is clear that momentum is with Android/Google and it looks really tough for Microsoft to turn that momentum towards them. All OEM who are strong pillers of Microsoft is now lunching with Google. Same OEM and partner strategy worked for Windows so far, will the same being repeated by Google. This time with free licensing cost and earning money indirectly by providing services. If Google is able to bake Google doc properly for Tablet, I think, it is going to be death blow to Microsoft.
Microsoft
*loosing windows licenses to free Google/Android
*loosing office licenses to Tablet/Mobile devices which is replaced by Google docs and third party apps
*ultimately Bing also in question here

Folks who are going to lead the technology market, youngsters of current generation, would be big problem for Microsoft as those are much entrenched by non-ms platform.

I think they are like sitting on old laurels like old handset manufacturer who lost out due to failure to innovate quickly and sticking on old school of thoughts. MS is surely turning around like IE9, WP7 etc but momentum is not with them, they are following likes of Apple and Google.

What is the effect of $9.5 billion dollar RnD spent by Microsoft?
* unreleased courier tablet
* unreleased surface
* delayed wp7
* loosing market share of Internet explorer

Friday, December 17, 2010

Proud owner of Panasonic Lumix GH2

I pre ordered Panasonic GH2 + 14-45mm lens. It is second generation micro four third camera (mirror less EVIL (electronic viewfinder interchangeable lens camera) heritage from Pana. Did lot of research and talk to so many hours understanding m4/3 (thanks to Santosh GR) for his patience in explaining technicalities of m4/3. To my surprise, it got delivered yesterday (Dec 16th) which I did not expect. It is my first encounter with interchangeable lens camera. Overall I am really happy with the package and going to explore more soon.

Tuesday, November 23, 2010

What is meant iOS 4.2 for Webdeveloper?
1) iOS 4 html5test score was 186 and iOS 4.2 now clocks 196
2) Introduction of Websocket

a. Single most compelling API from html5 spec
b. Going to disrupt not only web push based applications like live chat/im/twitter/facebook/web mail but applications
can utilize low bandwidth bidirectional nature of application


3) What is missing?


a. Device notification API:
Web app should be able to notify even if user comes out of the browser and doing something else
b. Webm
Apple is paying royalties for H.264 but nothing stopping them utilizing webm for video and audio at least for
egalitarian purpose (can we expect?)
c. File access (at least photos and video taken by iDevices) as other native app does
d. Unlock the contract completed devices

Sunday, November 21, 2010

Impact of Cloud and Personal devices

A week or two back I was going through Ray Ozzie’s “Dawn of a new day”. There is one thing that sounds clear to me after reading the memo is “Google’s Chrome OS + Android and Apple’s iOS” popping into my mind. In general “Chrome OS” kind of philosophy I was able to understand.


Web, now, after seeing IE9’s race, is going to be the platform, it may not have all the bells and whistles of Native Apps but that’s going to be there soon through Html5/CSS3/JS with developer creativity. It is long story and warrant a new post.


There are atleast two companies are affected by this computational and thought shift are Microsoft and Intel. The shift started almost decade back but when these people realized it might be almost impossible to turn around. But I am sure Intel, couple of years back, realized this and is started fighting marathon race.


Personal devices, which is what Intel fighting to enter, needs to be connected. In fact, even iPod is going to pull songs from Cloud. So these devices are confluence of personal + cloud based services which is source of information/data repositories.


Thursday, September 16, 2010

Future of Apple Mac will be powered by ARM chip in 2012.

Apple's phenomenal success with iPhone later iPad and complete focus on iOS and putting OSX into back-burner, acquiring two of ARM startups/companies are some of the symptoms Apple is showing that it is planning planting ARM based processor into OSX hardware.
The real highlight is Apple TV, it is moved away from Intel to Arm based A4 chip. Recent release of ARM A15 (Eagle) Multicore chip is real highlight. Couple of working NVidia Tegra mulit-core chip (though it is not A15 based) tablet tells that ARM 15 is right choice for Apple's Mac portfolio. The good thing is ARM A15 is multi core which can be scaled from single to many. Apple was not afraid of moving from IBM PowerPC to Intel, same thing would happen once again from Intel to ARM A15 chip. My guess is 2012 Mac line would be refreshed with ARM based Apple's own chip.

In between, Apple may try AMD with its fusion chip.

Sunday, September 12, 2010

EC2 local-ip vs public-ip

In EC2 there are 2 ips and 2 hosts ---
running ec2metadata
displays instance descriptions and 4 items (Actually 2, is very important to setup inter cluster

1) local-ipv4: <<>>
2) public-ipv4: <<>>

Other 2 are 3) local-hostname: <<>> 4) public-hostname: <<>>

local-ipv4 is the one used to other Ec2 instance.

Thursday, September 09, 2010

ARM vs Intel vs AMD

Yesterday ARM unveiled Coretex A15 (aka Eagle) design press news is here . This news sounds really good to me. ARM is inserting itself into x86 server territory (already Google is looking for low cost low powered processer technology esp ARM into its Data center and Facebook also interested in this direction).

So what really a problem with x86?, initially google mastered and proved we don't need Xeon level processor for running its software, its tested and proved commodity hardware based approach is good to run great business with enough redundancy and innovative architecture. So for every data center, one of the biggest problem is power consumption this is where ARM is great at it.

So when Google and Facebook moved to ARM and ARM is a great king at Mobile and intel would have stiff competition from ARM which should have been from AMD.

There are other issues like software compatibility but looking at the datacenter and Linux domination, it is not tough for Linux/Unix guys moving to ARM and Windows would eventually going to support ARM.

Intel is not sitting idle either and looking at Sandy Bridge and it is ability to master its process technology (32 nm to 22 nm plan) so ultimately it is a good news for customer.

Tuesday, July 06, 2010

CSS Layout design

I have been exploring best way to bring customizable CSS layout design that would fit wider variety of audience. CSS with countable properties is kind of huge thing for me. It carries so much important aspects ie layout and aesthetics (themes) of front end and also we can play with it with the change in line of code. As always, making it simple is tough.

1) How do I design a layout templates so that it caters wider variety of audience
2) How do I change certain curvatures like rounded corner
3) Fluid vs Fixed layout and option to have both
4) How about doing it with Javascript like jLayout or JQuery Masonry

JQuery is doing fairly great job of DOM scripting and UI is not so fair as it touches here and there and providing something not very much useful to enable templates but doing nice job of theming.
Blueprint has been one of my favorite CSS framework for sometimes but 960.gs is also similar but doing similar task of blueprint. Almost these two guys hates fluid based layout with good reasons.
I really agree that CSS is territory of designers but having that abstracted out would really makes life simple. I wanted to do templating based on CSS and html alone.

I am going to use 960.gs for fixed width and fuild grid based on 960.gs for liquid design. Using little server side program and dynamic configuration, trying to bring custom design (Layout and theming)

Tuesday, June 29, 2010

iPhone 4 Facetime issue

iPhone 4 Facetime disappears when it is restored from old iPhone using iTunes. I looked at the Google which point me to a blog where it asked me to enable under Settings->Phone. But unfortunately I did not get Facetime under Setting->Phone. So how do I resolve?
I called up 611 and couple of minutes warring with customer care i was able to talk to Apple rep who is not that much useful to resolve, he asked me to call 1-888-Facetime to resolve :) it was totally useless minutes with rep.

So I thought of resetting all the settings under Settings -> General -> Reset -> Reset All Settings.

After that iPhone started rebooting and viola.. Facetime worked.....

Saturday, June 19, 2010

Wesocket and where it stands now

Wesocket protocol was updated to version 76 and Google chrome 6 already implemented it. So the list of browsers which support websocket are

  1. Google Chrome 5 and 6 with v76
  2. Safari 5
  3. Firefox --- well finally the websocket bug got closed as fixed. It is created in Jan 2009 and almost 17 months after its got closed.
But having Firefox now makes the total market share for websocket is more than 40%.

Monday, June 07, 2010

SNI, TLS, UCC or SAN and https

I am mixing too many keywords in secure communication using https (TLS v2) per se. SSL is deprecated and TLS is going to overtake. Since https secure connection happen below https layer, so host information would not be passed to server while establishing connection and hence multiple host on single IP is practically not possible until TLS v2 which adds SNI. Single IP, Single Server, Single host and Single certificate is not the way to go for my requirement. Had been spending so many hours to figuring out …. Better 1) Understanding how it works 2) Planning how to deal with short comings 3) Choosing one over the other.
Wildcard Certificate –
*.somedomain.com would not be possible for Virtual hosting with vendor domain (naked domain) kind of scenario and may be useful to have it with more neutral domains. It is not possible to serve different domains with wildcard.

UCC or SAN --- Unified communication certificates Or subject alternative names
It can be used if the all domains owned by single entity or person --- hmm… practically not possible. Usually certificate will embed multiple domains in single cert in alternative name filed.

SNI – server name indication ---
web server can have multiple certificates --- well key/cert files would be different for different domains. So it is webserver which understands which request for which domain and send appropriate certificate. Nginx with openssl .98+ supports this but need to tell it so.
Other issues with SNI,
Restart needed for each new VHOST configuration
Operating System (OS) limitation:
1) Windows XP
a. IE 7 or 8 will not work
b. Google chrome will not work
c. Firefox actually works -- nice job Firefox (as it uses its own networking layer)
d. Safari will not work.

2) Vista
a. IE 7 +
b. Chrome
c. Safari
Due to built in TLS layer in Win XP browser which used them will not work but Firefox which uses iNSS API would be able to work on SNI Virtaul hosts.

Wednesday, May 12, 2010

Google NaCl and Possible SDK for Chrome OS?

Today Google introduced Nacl SDK, Google's native client is baked into SDK. I think its going to serve as SDK for Chrome OS. In the surface it may sounds like another Flash or Silverlight like thingy but how can otherwise Google can empower Chrome OS? Important point is, it can run any languages -- it may be python, Lua or Google Go(There should be integration point - Ports). I am looking for Nacl SDK for Android and how it can be useful for web development. One point in future Native client app can be bundled with Google Chrome and can be run on any platform which eliminates the need for crapy browser dependency, so write html + CSS +JS and heavy lift using NaCl and bundle it with ChromeOS --- so cloud ready app is just click away.

Thursday, April 01, 2010

Riak, thoughts on Erlang based client

I compiled Riak and started it, couple of times I tried with documented hello world like example but this time I wanted to separate Riak DB server from Erlang client. Riak is notoriously bad for omitting how to guides -- this also helps early adapter to delve deeply to understand and hence good for devs at the end. I really need to thank Joe Armstrong for pointing to Riak as it is not visible few months back.

1. Riak's default cookie name is "riak" and it can be verified by "ps -ef | grep riak" or rel/etc/vm.args file has cookie properties, here it can be changed to match Erlang client
2. I copied few files from cp <>/riak/apps/riak or luke/ebin to my working directory to check dependent module to work with and found

    1. luke.beam
    2. luke_flow.beam
    3. luke_flow_sup.beam
    4. riak.beam
    5. riak_client.beam
    6. riak_core_util.beam
    7. riak_kv_map_phase.beam
    8. riak_kv_mapred_query.beam
    9. riak_kv_util.beam
    10. riak_object.beam
    11. vclock.beam
                        are necessary to talk to Riak using Erlang application
                        3. Once grap hold of those files and node at which Riak server is running with cookie which Riak uses -- Erlang can talk to Riak period.
                        4. Now the steps detailed in the README (Riak's) is working fine for me. Assuming you are the directory where the above 5 files are available (or include that dir in erl path (-pa))
                        I just copied sample code from README file below and io output is omitted for brevity.
                        prompt> erl -name riaktest@127.0.0.1 -setcookie riak
                        (riaktest@127.0.0.1)1> RiakNode = 'riak@127.0.0.1'.
                        (riaktest@127.0.0.1)1> net_adm:ping(RiakNode).
                        (riaktest@127.0.0.1)1> {ok, C} = riak:client_connect(RiakNode).
                        (riaktest@127.0.0.1)1> O0 = riak_object:new(<<"groceries">>, <<"mine">>, ["bread"]).
                        (riaktest@127.0.0.1)1> C:put(O0, 1).
                        (riaktest@127.0.0.1)1> {ok, O1} = C:get(<<"groceries">>, <<"mine">>, 1).
                        (riaktest@127.0.0.1)1> V = riak_object:get_value(O1).
                        (riaktest@127.0.0.1)1> O2 = riak_object:update_value(O1, ["milk" | V]).
                        (riaktest@127.0.0.1)1> C:put(O2, 1).

                        I am not sure only these files are enough, but probably not! there are modules for certain kind of map reduce available in Riak, so if you plan to use those builtins you may need to copy them as well.

                        Riak a super scale datastore

                        I started looking into Riak lately to see how it can fit into my application which is currently using CouchDb. I really like CouchDb for
                        1. Map Reduce view -- just throw some mr function you will find out the document which it preserved
                        2. Web UI (the futon) it alleviate lot of Admin pages along with lately added security is good enough to manage it
                        3. Hot data backup, it is an excellent feature and makes like easier

                        Cons:
                        1. Mindset of treating CouchDb as all in all self contained product and hence lacks native interface, (there are APIs but it is based on http -- even http world is moving to websocket due to its inherent limitation for certain usecases, having Database served by http to another middleware is costly and environmentally hazardous like gas guzzling trucks
                        2. lack of native search (full text) but there is a lucene based one but already couchdb is dependent on JS, Erlang, ICU and having Java into the fold is kind of nightmare to the mix but it works and also gives head ache when replicating and spinning multiple nodes
                        3. It is not truly distributed but it is kind of storage engine which can be equated to better dets storage engine or innostore but there is nothing similar in couch architecture to be comparable with Cassandra or Riak.