Showing posts with label google. Show all posts
Showing posts with label google. Show all posts

Friday, May 22, 2020

Privacy in the present world

Privacy: When people listen to this word they normally associate with privacy from their parents, siblings or their friends. So, when somebody tells they want some "privacy" they mean "me" time and thats it. This is the definition of many of the people. The big companies and the state are making use of this mentality of people to generalize privacy and to re-instate this definition of privacy. So what you get to maintain your privacy, Your phone unlocks only with your finger print, so none of your family can use it. If it was a code maybe your parents would ask for your code and you would be pressurized to give it when you are away. Now , you have the finger print scanner and when you are away the phone is a brick which nobody can access. You have got your privacy. Congratulations.

Now, while your phone is locked and seemingly a brick to your father and yourself is more live than you. It is sending out and receiving data continuously. it is after all a computer and computers as you know are not tired. The amount of horse power in the present devices is enormous and all this is put to use 24 hours a day. Not even a second is left. When you are not using your phone facebook is busy getting the text your entered into whatsapp before your shoot send. Because before you shoot send the text and all other information you want to share is UN-encrypted. So now facebook has that data which you wanted to send through your favorite encrypted free messaging system. Though the founders have departed, the juggernaut rolls on. Of course facebook knows to whom you sent the data. So, you are basically using facebook whole over again in the guise of encryption.

You will definitely ask me why take that example. Well that nearly covers majority of the users on the planet outside the apple ecosystem. Now let us come to the make believe elite system which use the apple ecosystem. I always believed that apple had strong business ethics, not moral ethics. Like their hardware and software is elite and unique to their Eco-system. They will sell their devices at a premium and what the user does with that is not their concern. This I think was happening with all their desktop and laptop offering before the iphone. With the iphone came the moral conundrum. Actually the iphone to start with did not create this issue. The issue was created by google with its android ecosystem. Here was a company which is going to make money by selling user data. By targeting users with ads related to their tastes. How do you do it? Get the user to accept a complicated user agreement before you can access the device. It did not stop at ads. It progressed to speech recognition, AI and so on.

Now the thing is data became important. The costliest commodity on the planet next to the rarest element on the planet. The same strategy which the printing companies did with their cartridges. Though the printers could be given free since the users had to buy a physical product, Here, the phones could not be given for free. They are complicated computers. In this case the users are f*&d all ways in all the holes. You buy a premium phone and you will be giving away more data. It is like having the cake and the icing too. Your phone is pinging data every mill-second. It is pinging data to all corners of the world.

You are now having an app ecosystem to bring you out of this mess. Well, these apps are all built out of user contributions. The phone makers can alter the operating system itself to bypass all these apps which try to stop these pingings. So, if your phone is connected to the public network with the present crop for smart phones, you are pinging data. Have you not been surprised to see a link or a post related to "masturbation" after watching porn on your phone. Your were asking what are they going to do with the data. Now, it has been answered. This is one of the simplest way intelligence is taken out of your data consumed an exported from your device. Just imaging the amount of data collected through out the world and then feed it to "Big data" to make it even bigger.

Privacy is the context  have been talking in the previous paragraphs. it is not what is described in the first para. The corporations have moved from text and binary data to voice and video. It is difficult to know whether the mic is activated through out the life of your phone or only switches on when you watch porn. And while doing so, it might the device might switch on the front facing camera also. Just see how embarrassing it might be. You might be talking about an ailment or your friends ailments or you might talk about buying something. You might do a search for a particular ailment a product. It is recorded against your id. the corporations can combine it with your data sets and come out with the perfect ad or will feed you more of what you talked. You watch a thriller in Netflix, you are offered an unknown number of the same genre. You will be shown links related to them, but your are their unsuspecting user and you will click through it. This relation is generated by the the data they have collected from the whole world. Though you feel UN-related this link will re-inforce whatever you were searching for.

All corporations now hire behavioral scientists, data researchers who help them with their strategies. So, how do we get out of it? Do we want to get out of it? Are we happy in our walled paradise? Do we value our private data? Do we thing we have nothing to hide? Do we think we dont have anything of value? Do we think commenting and up-voting of posts on social media yields nothing to anybody?Is convenience a better trade-off for individual privacy? Is an individual of no value? Is an individual only a data generator? Is an individual not a human? Will the individual stand up for his rights?

Saturday, October 3, 2015

Bring on the beta of AI

Majority of the mundane tasks done by consultants and tellers have been outsourced to the customers themselves. Let us take an example of replacing your washing machine. You have to start with the reviews of the various companies in the industry, their customer support, plethora of models, price, features and ...... Then you finalize by comparing various by discussing with friends and other customers. Then you decide where to buy by visiting various websites. By the time you make the decision you will not know how much time you have spent in buying the washing machine.

The above example is just a tip of the iceberg. The iceberg of activities outsourced to the customers themselves. Now, I believe we will have AI will debut in helping customers buy products and services. In fact it should not help, it should decide on the customers behalf. Not again curated links to various web pages. Why? Well that is as simple an AI can get and the amount of data available on buying habits and preferences are abundantly collected by search engines and social websites and blogs. Just imagine our preferences which are now embedded in search engines, apps, social networks, instagrams and the like..

The time we wake up, what time you leave your house, your vehicle, the breakfast we have, distance between your work spot and your home and everything in between up to the book we have been reading before we sleep, how many pages we average everyday and may be map our dreams based on the week day and the way our day was and also alter the dreams accordingly for a pleasant sleep.........

In the context of AI as the first step, the data sources of the following are crucial. In AI, the belief system is the most important link. The belief of the user who generates data in the mining company. The belief of the mining company in the user data generated regarding the authenticity of it. The belief is mutual and should not be compromised at any point by both the agencies. Coming back to the data sources
a. The personal data
b. Generic data available on the public web/sources(Like the mileage of a car)

The simplest AI would be to combine the personal data(to be mined from conversations, posts, comments, search history, buying pattern etc. This is to begin AI. Later as the user plugs in to the actual AI, data collection will be very specific and more to the point avoiding "assumptions" on the part of AI) and the generic data from public domain(information culled from official websites). Here again data integrity should be of the highest level.

The whole experience of buying should be hassle proof and painless. I start by telling the AI of my intent in buying a washing machine. Processing the personal and generic data majority of the decisions are be made and only when contradicting data is reached, user should be prompted. Here again, the prompts should not be beyond two, after which, the experience gets frustrating with the irritating prompts.

We definitely are now in position for the first step in AI. But, the innumerable protocols(open and sucking proprietary), the idiotic app ecosystem, wherein the data gets boxed, the plethora of operating systems and data integrity are the biggest issues combined with Internet connectivity across the world to the last mile. It is time all the data keepers start collaborating by providing API's to supply and share data among themselves for the purpose of AI. The race should be an open and fair one. The race should only benefit the customer. The race to be won by the best AI, not on the amount of data available with each other but by its capability to take decisions on behalf of the customer.

All this brings us to the biggest question regarding the biggest company  with the largest amount of data, Google/Alphabet. How will google/alphabet make money out of AI. Will it charge the customers like maintaining a personal assistant. Only few afford personal assistants. You have to push your personal assistant to the user and the way to do it is not charging the customer. How will google/alphabet make money here, when the user is not provided any web page to click? Will google/alphabet tweak the AI to take decisions based on the amount payed by the manufacturer, similar to improving page rankings. That is a failure when it comes to AI. It has to be fair. If it is not fair, people will ditch it for alternates. Now alternates would have learnt their lesson. How will google\alphabet make money? HOW?

Well, Google/Alphabet, I am looking at you. Bring the AI on. Bring it on. Bring on the beta. Let us start. From us being a product take us to what we are, Customers. We are the customers and we are not the product. This is the basic change you have got to do for succeeding in this AI endeavour. If you don't treat us as customers, your AI engine will be flawed. Keep us in the God's place and make AI our slave. Will you?

Monday, August 12, 2013

AOSP on Sony xperia Z

Disclaimer: I dont take any responsibility for the damage of your equipment. If you point your ire at me, I will have the last laugh. USE THE INFO AT YOUR OWN RISK.



Sony android phone team has taken the android philosophy very seriously. This is one team within sony which is passionate w.r.t idea, philosophy and legality of FLOSS. If we compare the android and the GNU/Linux eco-system, I would sum up the relation between them by using Android/Linux for android and GNU/Linux for the desktop OS which we are familiar with. While GNU used the Linux kernel for coming up with a complete Desktop OS, Google built the UI shell and other mobile telephony stack over the Linux kernel. But, the similarity ends there.

The two components of GNU/Linux are licensed with "free as in freedom" philosophy with the GPL.(Though the linux kernel is licensed with GPL V2 and the GNU utils are mostly licensed with the latest GPL version). The source code of the original program and all its improvements are always and should be made available in source form for public consumption.

If we come to Android/Linux, the first part is licensed under the Apache license. This is a permissive licensing philosophy, wherein, the original source and its improvements "may" be provided in source form if the author wishes, or else the source can be withheld and only the binaries "may" be provided for public consumption. So, the author, google, and other mobile manufacturers who licence android from google are not compelled to share the original source code(scripted by google) or any variations of it for use by various mobile manufacturers with the general public. The result is, if google wants to put out the source for its newest shiny android version it will, if it is not in a mood to do it, then also, google is honoring the apache license. The second part, the linux kernel, is licensed under GPL v2, google and all the mobile manufacturers have to honor the license and give out the kernel with all their additions and alterations for public consumption.

This post is about sony, let us continue. Sony is the only phone manufacturer which honors the GPL for the linux kernel meticulously, it is almost like clockwork. Even if the sony mobile team has released a beta kernel for a specific device, the source is out within a week. But, But, with Xperia S, sony took their commitment to the FLOSS philosophy a step ahead. They went ahead and release the "android" portion of the OS also for public consumption, again, of course under the apache license. There your are. You have the entire gamot of source code of "Android/Linux" in your hands, now, Go Play.

Once the sony smartphone team released the source for xperia Z, their flagship phone for 2013(while other manufacturers closely guard their flagship phones for nearly a year by not releasing the kernel source which they are supposed to do with the release of the device), I had decided that will be my next phone. It does not match with my primary requirement of hardware keyboard, but, the hardware specs was awesome and the purple color was beautiful on this phone.

The XDA forums is full of various spins of upmarket roms with "n" number of customizations. You will be spoilt for choice. Only one rom of mention still struggling is the MIUI. But devs are on it and I definitely believe they will succeed in running it on the Z.

Oh, let us get back to our topic, FLOSS. Google releases the source code after baking the lates version of the android OS in-house. It is released under the label "AOSP" ie, the Android Open Source Project. This will be the most generic tree of the source. Normally, it would be difficult to compile this vanilla version as it is and run it on a phone. It would be missing the device specific code required to get it running on a specific phone. The other missing thing, vital, would be the binaries which are required to use the all the hardware(SoC) properly.

Now, we have a completely new word here, binary, yes all FLOSS enthusiasts hate it. Every manufacturer makes use of an Arm SoC or an Intel SoC. The manufacturer provides the drivers for these hardware components. But, the hardware manufacturers dont play well with the FLOSS philosophy. They guard their hardware, its implementation and usage with hawk eyes. The driver are always release in the form of blobs(Binary large objects). They have to be linked in during the compile stage of the rom to result in a fully working rom to be installed on your device.

We now have one non-freedom component on our otherwise "free as i freedom" system. But, we are somewhat ok with it.(Apologies to RMS). Anybody can compile an AOSP rom for the xperia z. The sources are at github with clear instructions for building it. You just have to have good bandwidth, patience, building on GNU/Linux (64 bit)(building on windows,..... forget it) and a lot of googling to use the experience of developers over the XDA forums.

If you dont want to compile it, An XDA developer going by the username pabx, has done it for us. Before I proceed, if you are an XDA member go and thank him. If you have a paypal account donate to him. This rom compiled/developed by him is awesome. It is one of the minimal rom I have seen and used. When I backed it up with CWM, with all my usual apps installed, the backup size was, believe it (or not), 560MB. How awesome is that. Compare it with the stock rom whic is approx 1.7GB. Now, that is light. But do remember that it is minus all the bells and whistles. It may not be visually appealing compared to the stock rom. Few quirks might be lurking here and there. My major quirks were two. One, the volume is awfully low(Stock rom with purexaudio is awesome. Hear it to believe it). Two, Plugging an earpiece without mic will result in phone calls not being audible both for the caller and the receptor. The number two problem does not exist for earpiece with mic(for eg, the sony supplied one). One more issue is the video playback. On the stock rom it is great even when the processor is underclocked to 800MHz with the hardware decoder. On the AOSP rom you have to use the software decoder for better performance.

How do we install this awesome effort on our phone?

Before you unlock your bootloader, try this tool. This is to backup the TA partition which is required for the Bravia Engine to work(Just remember that the Bravia engine comes into play when you watch a video or photographs. Otherwise the BE does not do anything during the general use of the device.) I have not tried this. But please go through the thread. It is quite big and intimidating. I did backup the TA partition but not tried to restore it back. But there are numerous examples on the thread where people have restored the TA partition and got back the BE. Please do remember that for restoring the TA, you should be back on "pure" stock(kernel and the rom).

If possible make an .ftf of your current stock rom or download one(Just in case)
Install flashtool
Install fastboot drivers from within the flashtool installation(The installer is in C:/flashtool/drivers). Double click the .exe in that folder. If you are using windows 7 or windows 8 go here)

1. Unlock your bootloader go here
2. Root the device go here
3. Install CWM recovery go here
4. Backup the stock rom with CWM recovery brief intro
5. Enter CWM and clear data, cache and dalvik cache
6. shutdown the phone
7. Connect one end of the USB cable to the computer and plug in the phone end of the cable to the phone while simultaneously pressing and holding the volume up button
8. Download pabx's effort from here
9. Extract the archive (unzip pabx_aosp_yuga*.zip) to c:\flashtool\x10_flasher_lib\
10. Open the cmd window on windows and change directory to x10_flasher_lib

run the command below
  
fastboot devices

 -- It should list the device name (not exactly the name of the device) If you get an output, then continue, otherwise you have problems regarding fastboot drivers. If you get an output, run these commands(wait for completion of the command befor entering another)

fastboot flash boot boot.img
fastboot flash system system.img

If this is an initial installation,
also run:

fastboot flash userdata userdata.img

# NOTE: The above command will wipe all your data and the internal SD card - only do this on first-install of this rom.

Now run
   
fastboot reboot  ---Or just disconnnect and reboot

Now, we have to root this rom. Download superuser and copy it to the external sd card of your device. reboot the device, press the volume up button continously as the phone reboots, you will enter CWM(the swiss army knife). Choose Install zip/Install from external sd card and choose the file.

reboot

Now you are rooted with an AOSP rom.

Now, we should boot into pure vanilla experience. Of course, you need google apps like the play store, gmail, maps etc... Download this, copy to external sd card and repeat the procedure for installing it via cwm.

reboot

You now have the play store. Go ahead and install your favorite apps.



Advanced:-

To get more realestate from your phone, edit the build.prop in /system with root explorer and change the lcd density to 320.


Operating the phone using the softkeys at the bottom of this huge phone is tricky. Install LMT launcher. start the app, start the service, click the option of start this app at boot. Then edit the build.prop in /system and add the following line at the bottom


qemu.hw.mainkeys=1

reboot

If the media players are not able to save the album details and they show empty libraries, then Edit file /system/etc/permissions/platform.xml

    Find text

    name="android.permission.WRITE_EXTERNAL_STORAGE"
        group gid="sdcard_rw"


    And replace it with
permission name="android.permission.WRITE_EXTERNAL_STORAGE"         group gid="sdcard_rw"
        group gid="media_rw"   ---> Only this line is to be added in the format exactly as in the file with the arrows and the backslashes

    Reboot

    Make it with caution. XMLs are very syntax sensitive. Any mistake may make your phone inoperable.


Thanks to all the users and fantastic devs at XDA for bringing in excitement into the phone arena. The info has been culled from various resources. If any user/dev requires a mention please comment. It will be immediately updated.

UPDATE: 12.11.2013:   Owing to un-ethical kang of pabx's rom, his builds and discussion will now happen http://www.blinkenlights.ch/ccms/android/yuga.html
He has succesfully compiled kitkat for our device. The most important of all we now have double tap to wake for our xperia z thanx to championswimmer, dev at the xda. It is now available for this AOSP rom also. For further instructions please visit the above link and also visit his thread on xda.