Category Archives: Blogging

Nokia X: The illegitimate lovechild of AOSP and MS Services

So Nokia finally released the Nokia X series of Android phones, and at MWC no less. First up I have to own up that Ben Thompson was right about Nokia’s Android intentions, and I was wrong. Though I still believe the deal does make sense from MS’ perspective. Without Lumia brand WP is dead in the water. Whether MS should abandon Windows Phone is different topic (and if you must ask, I would say NO).

After my initial indignation was over I have come to conclusion that X is pretty much the lever that Nokia used to sell its Windows Phone business to Microsoft. If we trace the timeline of when Nokia may have started working on X (Android Jellybean code base), we’ll see that having jumped off the burning platform Nokia found itself entangled in the Windows Phone parachute and the rescue boats (WP updates) were taking way too long to come by for it to stay afloat. It thus started project X as a life boat (I speculate it was a code name to start with, fact that it is still called the same shows the bastardized nature of the project, they didn’t bother with a marketing name) till the end. But building a lifeboat when you are in water already seems rather stupid and yet we have Nokia X series now 😐.

Android Open Source Project (AOSP) is the publicly available kernel + services that form the core of Android OS. This is free and Nokia X builds on top of it. Most Android devices however bundle GMS or Google Mobile Services that device manufacturers have to pay to use and get permission from Google. You can read up why GMS is the heart of Android ecosystem in Peter Bright’s write up at ARS Technica.

Why launch it after it has served its purpose?

This was the question that made me most angry. I am fine with the lever, everyone does it (Motorola had threatened to sue other Android OEMs on patent issues before Google bought it for a whopping load of money). Only a few reasons come to mind so my rant begins here:

A desperate stab at leveraging the success of Android

Given that they had spent considerable effort with the phone before MS began acquisition negotiations, Nokia was desperate to achieve success on its own in a vain attempt to prove (to itself?) that it still had the chops for runaway hits. This seems a little childish and vain to me and launching it at MWC seems a little over the top, there has to be a better reason. But then, spare a thought for the team working on the project. For them release is a kind of closure. As a dev I certainly understand that.

Also the Symbian based Pureview launch happened after the WP deal was struck, probably because the project was initiated earlier and had to reach a closure. Though I see the point of the hardware (41MP camera) release and its subsequent adoption into 1020, but I see no such path for project X.

Kick Microsoft in the balls to get ‘Engineering brownie points’ post-merger

Microsoft has dug itself into a hole with the separate paths for Windows RT and Windows Phone 8. While it is still plugging away at Windows Phone 8.1, Nokia took project X to completion to show off its engineering prowess that might come in handy post-merger when there will be two system engineering teams who between them have developed at least a dozen OSes. That would explain the old Android code base, as in, once the project was released, it would have served its purpose. But the confidence of building a complete ecosystem experience would have stayed on.

Clean slate reboot and future ambitions

Nokia may not have the Asha and Lumia names post-merger, but remember Vertu, high end Nokia phones that went Android? Project X could be easily re-released as a new line sans Nokia/Lumia/Asha brand name. This would add to reasons for the high profile launch which could be leveraged later. The X+ and XL models hint at these ambitions.

Whatever their reason it was a tacit acknowledgement of a few telling things:

  1. MS’ Windows Phone adventure is horribly off track.
  2. MS’ WP ecosystem is ‘different’ enough to put it in ‘good to have’ category and not consider it for launch of a new Application/Service/Startup. In other words, might as well have Android sans Google Mobile Services so that one can coax devs into recompiling (against MS services), instead of hoping that dev will eventually build a WP version. Can’t fault Nokia for feeling that way, given the hard time Instagram gave it before launching a half assed WP version of their app.
  3. MS’ WP developer ecosystem is not growing as expected. This is tied to number 2 above. WP is a third choice at best for app developers. The dedicated hoard of WP dev are jaded from the WP7 to WP8 experience where they had to nearly do everything from scratch. There is a healthy dose of skepticism around what WP 8.1 will bring amongst outsiders like me. However 8.1 technically is MS’ third major WP release and MS is ‘famous’ for getting it right the third time (at a minimum). So there are high hopes.

Microsoft supported outside attempt to gain quick traction in name of Android

This is the scariest of all thoughts. If this was paid for by MS then it shows a serious lack of commitment or confusion or both on MS’ part with respect to their own WP platform. If that happens to be the case, MS is in way bigger trouble than it cares to think about and will definitely face Dev community revolt when this happens. I am scared to think or write about it anymore.

It is not meant to be a vehicle for MS services.

Unlike what’s claimed by many, project X isn’t meant to bring hordes of users to Microsoft services. Given that Lumia low end platform performs better than X based devices, why would anyone buy this Frankenstein device? Why not just buy into MS ecosystem directly? People who buy Android make a conscious choice most of the time. Ignore the knowledge and ability of your customers at your own peril. A dual SIM option doesn’t automatically open doors for a half assed device experience. If anything, Android’s association with Google is well known enough and not having Google will be a constant source of negative word-of-the mouth publicity.

The services part was probably the last piece that Nokia attempted and MS services served two purposes,

  1. Placate MS, who I am sure is hopping mad at the release inspite of putting forth a brave face at the moment
  2. MS services provide a near perfect feature replacement for Google services and were easy to integrate rather than build from scratch.

Future of Windows Phone?

Initially I felt this marked the beginning of the end for Windows phone OS. If MS keeps this project alive this will be true. However, I now see WP moving to a respectable third position by solidly replacing BlackBerry. In other words WP is set to become the Linux of the desktop world. Meaning that it will be a solid, dependable platform restricted to a niche user base of enthusiasts and business users most of whom carry two phones, the other one being an Android or iPhone.

Android meanwhile is equivalent to Windows of the desktop world. It has reached a level of ubiquity in terms of a mobile platform. However, the name itself is supposed to sell the device is a rather naïve thought process given that there is going to be a boatload of competition offering the ‘real’ Android as opposed to AOSP based device. So end users when faced with the choice are likely to opt for the ‘real’ thing. (Treating your users as a bunch of n00bs is a bad idea). Microsoft has every reason to kill project X post-merger, and I hope it does and at the same time I hope it also addresses the concerns that led to project X in the first place.

QuickBytes: Who’s afraid of Github? (Downloading code without cloning)

I often get mails requesting for code in zip files, even though almost all my code is in Github. The articles I wrote of and are pretty much all in their respective Github Repositories. Often newbies are a little confused/scared of Github and leave the sample alone assuming they have to do ‘complex’ things like have Github account/client to get the code.

However this is not the case. The nice folks at Github already thought of this and provide a very handy ‘Download ZIP’ button. You don’t have to login or create a Github account to download the zip of an OSS project (which is to say if you can access the project you can download the zip).


As you can in the screenshot above, I am not logged in, and yet I can download the zip file of the code of one of my articles.

Hopefully, now you won’t be ‘scared’ of Github code repositories any more! Have fun!

Tagged ,

IdeaPress and The Lazy Blogger

Around middle of April I came across an interesting site + service called IdeaPress. It’s actually an open source project on GitHub. IdeaPress converts your WordPress site into a Windows Store App. Best part is it gives you the option to download the generated code or the appx file, you pick!

As an experiment I built an app out of this Blog, downloaded the code and put it up for approval. Within three days the app was approved and it is now available in the app store. So if you are a big fan of me blogging lazily away, go ahead and download the Windows 8 app from the app store

The Outcome

It’s easy for me to like my own app, so I’ll skip the pleasantries. The code generated is in HTML and JavaScript. Since I am not well conversant with this development model I have no comments on the quality of code generated.

The UI layout is neat and it utilizes images in the Blog reasonably well to create graphical tiles for the UI. Currently the app shows this as my homepage. As you can see it starts off with Pages on your WordPress site, then uses the ‘Recent News’ feed, and thereafter shows your WordPress categories! Super neat!



After initiating the publish I realized that the code is not picking up the first image for the tile as it appears. Instead it picks the first image that the WordPress API returns. Well fair enough, so I took to the code and was able adapt it to pick up the file that started with the name 01. Thinking of expanding it to include more declarative rules, haven’t got a chance to spend any more time with it yet.

Good Starting Point

Frankly with my ‘lazy’ blogging at the rate of 1 blog every two months or less an app for it is an overkill. However, if you blog regularly and want to showcase your articles, this is really a nice way to get started. It comes with Search integration and Live Tiles support built in. With a little bit of design flair you can turn this bootstrap into a pretty looking app.

Best part is now you will be more careful about your blogs. The first thing I realized is all my blogs needed a header image for each post I write so that it shines through the app and looks attractive.

Next I have a couple of pages with no images on them and as you can see above it looks rather bland. So I’ve to think of something to make these two tiles look better. But since I control the content I can potentially ‘fix’ it without having to worry about the app.

Bare Minimum Customizations

The default app, has a set of images that you should update. As you can see above the tiles that don’t have any image get the default “LazyBlogger @” tile. I made that to replace the default IdeaPress logo. Not that I mind IdeaPress’s logo but it will give your users the feel that you spent ‘some time’ to polish the app off. My app currently has my picture as the logo. I am going to change that, so I suggest you think of a nice logo for your app also. With these bare minimum customizations, you should be good to go.

Cookie Cutters and the App Store

When the Apple iOS AppStore started getting popular these type of Cookie Cutter services sprung a plenty. I didn’t use any of them, but Apple soon clamped down on them. I hope MS doesn’t do that. As I said my app got approved in the usual 3 days and it now has a grand total of 3 downloads so I think you should be fine if you use this service to bootstrap your app.

So I wrap up with a thanks to IdeaPress for the idea and the service. Hope to be able to look a little deeper and maybe do some pull requests too.

HACKED! Trials of self hosting

Okay folks, for the last two days (April-May 2012) my domain was hacked and was showing a hackers’ page!  As soon as I found out I redirected my domain to this blog instead of the hacked name servers of dotnet-host.

Before I go into lessons learnt if you are still having trouble with the hacked site content, try to log in to your panel at (Update: August 3, 2013 this is not valid anymore, sorry). The forgot password was also working till yesterday.

Delete all the Index.php, Index.chm, Default.asp, Default.html, Index.html and Index.chm files. These were injected by the Hacker. I tried it but before I could see the results my name server change kicked in so I can’t vouch it works but most people have been able to restore their sited by deleting these files recursively off every folder.

Multiple lessons learnt

1. For all my love for Scott Hanselman, I should set the default home page of my favorite browser to my site. Sorry Scott, nothing personal, you are still my fav tech blogger! Basically keep an eye on your site. I dropped the ball for two full days (facepalm).

2. When a hosting provider is giving a deal that’s too good to be true, it might just be so! I think I was paying $4 per month. It was an awesome deal and I paid for the whole year in advance! Doesn’t look like my provider will last till the end of the year! Next time on, I am trying out a provider for a month before I put more money into them. There were some feelers I got about the amateurish-ness of but hey it was a suggested site from so I just went with it. I think dotnet-host cancelled monthly subscriptions but I don’t think anyone heard of reversal of yearly subscriptions pro-rated!

3. Things to look out for

– Are they sending you passwords in plain text?

I cringed when they sent me the password in plain-text via email, but by then I had paid them for the year, so thought heck go with it. Didn’t work out well.

– Do they have a good admin console?

Their admin console was very amateurish, functional but amateurish. on the other hand is a over done pile to junk! Need something in the middle but better be on overdone side than underdone and amateurish.

– SQL Server access

Their SQL Server access gave me access through Management Studio. Though an awesome feature this is one less layer of security. So be warned. However if you are able to see every other database on the server then your alarm bells should be ringing loud and jangling!!! I had a screen shot of this and I wanted to send it to them but never did! My bad, if you see something like that, raise hell!

4. If you are doing any serious hosting don’t be cheap look around and be safe. I wanted a place to host my .net code and play around. My home page was actually a pass-through to this blog. In other words it was non-critical hosting. I probably lost some SEO points and looks silly to people who visited my URL in the last two days (sorry folks from LinkedIn). My sample apps on a subdomain are still working. Now I gotta find a new provider and move them.


5. Having domain registrars different from hosting providers help! Make it a policy if you can.

In case of the dotnet-host fiasco, my domain registrar was different from dotnet-host so I was quickly able to change the name server and forward my domain to this blog through my domain registrar (took about an hour to propagate).

6. If the hosting provider is so thoroughly hacked rest assured your credit-card info and passwords are NOT safe anymore. Take precautions as required.

That was my first ‘getting hacked’ experience, not a nice feeling!

Stay alert and stay safe folks!

UPDATE (August 2, 2013):

Removed dead links from above.

Tagged , ,

Changes are coming!!!

Dear readers, some exciting changes are coming to

Please bear with the iframe workaround for now (don’t be alarmed by the white border around the page and the double scrollbars! It is a part of the change). Those coming to my blog through permalinks will see no change.

%d bloggers like this: