Showing posts with label Internet. Show all posts
Showing posts with label Internet. Show all posts

Thursday, October 5, 2017

Problem With TrueCaller and Similar Apps

There are lot of so called caller identification apps that will put a name for an unknown number calling your cellphone. But the ugly truth behind this is usually overlooked. People just don't understand that just by installing these stealthy apps, they are breaching privacy of others and also putting themselves and others in risk. Let me explain few of the possible scenarios and a possible solution for handling apps like this.

1. Person A gives his number to Person B so that they can stay in touch (may be for business or personal needs). Person C asks Person B for Person A's mobile number.

In usual case, Person B will politely refuse to share Person A's number. In some cases Person B will call Person A to get his consent to give his number to Person C.

But in TrueCaller's case, the entire contact list of Person B is uploaded to TrueCaller's server WITHOUT getting the consent of anyone in the list.

2. Person A stores some sensitive information like credit card numbers and PIN numbers as contacts. (It is stupid, but people always do that right?)

In usual case, Person A puts his credit card at risk in case someone snatches his phone or hacks in to his phone.

But with TrueCaller, the numbers are uploaded to the third-party server by default. They may claim that their system will filter out numbers that are not phone numbers. But who is going to audit it?

3. Person A stores his brother's/girlfriend's/son's/mom's number with their pet-name.

In usual case, this can be seen only by few (if they are staring in to Person A's phone when their dear one is calling.

With TrueCaller, the contact is uploaded and anyone who receives a call from the number may get the pet/nick name of the person. Similarly, some people store relationships like "Person A's Mom", "Person B's Wife" etc in their phone. With whose consent these sensitive information are shared with anyone on the Internet?

4. A womanizer or a scammer can browse the TrueCaller database with random numbers and get the names. Sometimes information like the company they work for or the college they study are also included with the contact name. With this, they can call the person and start a conversation like "Hey, Rajesh, how are you? I studied MSc with you..."

Above mentioned are not the only problems you can have. There are lot more possibilities that we can never figure out! The main problem with TrueCaller and such apps are this. My (or your) mobile number, name and often, other sensitive information are uploaded to the server of a private third-party's server without my (or your) consent just because some asshole who stored your number in his contact list installed a stupid app to say him who is calling from an unknown number.

To avoid the above mentioned problems and to ensure that everyone's privacy is respected, these apps should first get the consent of the users before they store their data in their servers and make them accessible to the public. If someone who has your contact uploads their entire contact list to these thrid-parties, they should send an SMS or make an automated voice call to get your consent before even storing your data in their servers. Unless this is done, these apps remain as a serious privacy and security threat to the public.

If you want to protect yourselves and your family and friends from these rouge apps, follow the below steps.

1. Uninstall these rouge apps if you have them installed
2. If these rouge apps come pre-installed with your phone, then disable them before you start using the phone.
3. Go to their sites and unlist your numbers.
4. Tell about the dangers to your friends and family and ask them to do the above steps.
5. Give feedback to developers of these unethical apps. Give them poor rating. File complaints against them in appropriate forums.

Wednesday, July 5, 2017

தமிழை வளர்க்க என்ன செய்யலாம்? - 5 எளிய செயல்கள்

1. தமிழில் பேசுங்கள்/எழுதுங்கள்!

ஒரு மொழியின் உயிர்ப்பே அதை எவ்வளவு பேர் எவ்வளவு அதிகமாகப் பேசுகிறார்கள், எழுதுகிறாரகள் மற்றும் இதர இடங்களில் பயன்படுத்துகிறார்கள் என்பதைப்பொறுத்தது. நீங்கள் வீட்டிலும், பொதுவெளியிலும் தமிழிலேயே பேசுங்கள். நாளுக்கு நாள் உங்கள் பேச்சில் உள்ள பிறமொழிச் சொற்களைக் குறைக்க முயலுங்கள். "உதாரணமாக" --> "எடுத்துக்காட்டாக", "சேஞ்ச் இருக்கா?" --> "சில்லறை இருக்கா?", "மொசாம்பி ஜூஸ்" --> "சாத்துக்குடிச் சாறு". இப்படி கொஞ்சம் கொஞ்சமாகத் தமிழை பழக்கப்படுத்துங்கள். சில ஆண்டுகளுக்கு முன், கணினி, இணையம் போன்ற சொற்கள் சிலர் மட்டுமே அறிந்ததாக இருந்தன. இன்றோ பெரும்பான்மை தமிழர்களுக்கு இச்சொற்கள் பரிட்சயமானவை நன்கு தெரிந்தவை.

வங்கி சென்றால் தமிழில் படிவங்களைக் கேளுங்கள். வங்கி, அலைப்பேசி நிறுவனங்கள், விளம்பர நிறுவனங்கள் போன்றவற்றில் இருந்து வரும் தொலைப்பேசி அழைப்புகளுக்குத் தமிழிலேயே பதிலளியுங்கள். அவர்கள் வேறு மொழி பேசினால், தமிழ் தெரிந்த ஒருவரைப் பேசச் சொல்லுமாறு கூறும் உரிமை நமக்குண்டு! இப்படி அதிக எண்ணிக்கையில் தமிழில் சேவைகள் பெறப்படும்போது, அவற்றின் அவசியம் அந்நிறுவனங்களுக்கும் புரியும். தமிழ் நூல்கள், செய்தித் தாள்கள், வலைத்தளங்கள் போன்றவற்றை அதிகம் படியுங்கள். தமிழுக்குச் சந்தை மதிப்பு அதிகரித்தால், தானாகப் பல நிறுவனங்கள் தமிழில் தங்கள் நூல்கள், தொலைக்காட்சி நிகழ்ச்சிகள் மற்றும் வலைத்தளங்களை மொழிபெயர்த்து வெளியிடுவர்.

2. தமிழ்வழிக் கல்வி 

இது இன்றைய சூழலில் சற்று சிக்கலான செயலே! தமிழில் அறிவியல் மற்றும் தொழில்நுட்பம் சார்ந்த முன்னேற்றங்கள் இன்னும் சற்று பின்தங்கி உள்ளது மறுக்கமுடியாதது. ஆகவே ஆங்கிலம் நமக்கு இந்த இடைவெளியை நிரப்ப அவசியமாகிறது. அதனால் நாம் கல்வியில் ஆங்கிலத்தை சேர்த்துக்கொள்வது தவறில்லை. தமிழ் என்று எல்லாத்துறைகளிலும் தன்னிறைவு அடைகிறதோ, அன்று ஆங்கிலத்தை நாம் அடியோடு நிறுத்திவிடலாம். எப்படி நீச்சல் கற்கச் சுரைக்குடுக்கை உதவுகிறதோ, அதுபோல! அதுவரை ஆங்கிலத்தை அளவோடு கற்போம். ஆங்கிலத்தை இப்படித் தேவைக்குக் கற்றாலும், அதை ஒரு பெருமையாக எண்ணாமல் இருப்பது அவசியம்.


குழந்தைகளுக்கு நாம் ஏன் ஆங்கிலம் கற்கிறோம் என்று சொல்லுங்கள். ஆங்கிலம், அறிவின் அடையாளமோ, நாகரீகத்தின் குறியீடோ இல்லை. மாறாக அது நாம் இழந்த அறிவியல் மற்றும் சமூக முன்னேற்றங்களை அடைய உதவும் பாலம் மட்டுமே என்று விளங்க வையுங்கள். இவ்வாறு நாம் தமிழில் மட்டும் எல்லாப் பாடங்களையும் கற்கும் நாளுக்கு அவர்களை ஆயத்தப் படுத்துங்கள். இன்னும் சில தலைமுறைகளில் அது நடக்கும். ஆங்கிலேயர் நம்மை சில காலம் ஆண்டதாலும், ஆங்கிலம் பல்வேறு துறைகளில் வளர்ச்சி பெற்ற மொழி என்பதாலும் மட்டுமே ஆங்கிலம் தேவையாகிறது. இந்தி, ப்ரெஞ்சு, ஜெர்மன், சமஸ்க்ருதம் போன்ற மொழிகள் மேற்கூறிய வகையில் நமக்கு உதவாதவைகள்.

3. சமூக வலைத்தளங்களில் தமிழ்

இன்று சமூக வலைத்தங்கள் அனைவரையும் தங்களின் வலையில் சிக்கவைத்துள்ளன. இதையே ஒரு வாய்ப்பாக நாம் மாற்றிக்கொள்ளலாம். நீங்கள் கைப்பேசி வாங்கும்போதே அதில் தமிழ் உள்ளீடு வசதி உள்ளதா என்று பார்த்து வாங்குங்கள். அல்லது செயலிகள் மூலம் உங்கள் கைப்பேசியில் தமிழ் உள்ளீடு செய்ய முடியுமா என்று பாருங்கள். கூகிள் போன்ற தேடுபொறிகளிலும், முகநூல், ட்விட்டர் போன்ற தளங்களிலும் தமிழிலேயே உள்ளீடு செய்யுங்கள். வலைப்பூக்கள், யூட்யூப் போன்ற காணொளித் தளங்கள், மற்றும் இதர வலைத்தளங்களிலும் கருத்துக்களைப் பகிரும்போது தமிழில் பகிருங்கள்.

தமிழ் உள்ளீடு வசதி உள்ளதா என்று பாருங்கள்

இதன் மூலம் தமிழின் இணைய ஊடுருவல் அதிகரித்து பன்னாட்டு நிறுவனங்களும் சந்தையைப் பிடிக்க தமிழ் மொழியில் சேவைகளை மேம்படுத்த முற்பட வாய்ப்புள்ளது. மேலும் கைய்ப்பேசி நிறுவனங்களும் தமிழ் மொழி உள்ளீடு உள்ள கருவிகளை அதிகம் தயாரிக்க இது ஒரு உந்துதலாக இருக்கும். கணினியில் தமிழ் தட்டச்சு செய்வது சற்று கடினமே. ஆனால், கைப்பேசிகள் இன்று இதை எளிதாக்கியுள்ளன. இதை நாம் முழுமையாகப் பயன்படுத்தி இணையத்தில் தமிழை அரியணை ஏற்றுவோம்!

4. மொழிபெயருங்கள்

விக்கிபீடியா, ப்ராஜெக்ட் குட்டென்பெர்க் போன்ற கட்டற்ற கலைக்களஞ்சியங்கள் மற்றும் மின்-நூலகங்களைத் தமிழில் மொழிபெயர்க்க உதவுங்கள். மேலும் கட்டற்ற மென்பொருள்கள் மற்றும் அவற்றின் உதவிக் கோப்புகளைத் தமிழில் மொழிபெயர்க்க உதவுங்கள். இதன் மூலம் தமிழ் மட்டுமே தெரிந்தவர்களும் கணினி மற்றும் இணையம் போன்ற புதிய தொழில்நுட்பங்களைப் பயன்படுத்த நீங்கள் உதவலாம்.


கல்லூரி மாணவர்களுக்கு விடுமுறைக் காலச் செயல்பாடாக இதுபோன்ற மொழிபெயப்புப் பணிகளை கல்லூரிகள் வழங்கலாம். மருத்துவ மாணவர்கள் ஒவ்வொருவரும் ஆண்டு விடுமுறையில் விக்கிப்பீடியாவில் உள்ள மருத்துவம் சார்ந்த கட்டுரைகளில் ஒன்றையோ இரண்டையோ மொழிபெயர்த்தால் சில ஆண்டுகளில், எந்த அளவுக்கு நாம் மருத்துவ அறிவைத் தமிழுக்கு இறக்குமதி செய்திருப்போம் என்று எண்ணிப்பாருங்கள். இப்படியே  வரலாறு, தொல்லியல், உயிரியல், வேதியல், கணிதம், பொறியியல் என்று பலவேறு துறை மாணவர்களும் ஆளுக்கு ஒன்றாகத் தங்கள் தங்கள் துறை சார்ந்த கட்டுரைகளை மொழிபெயர்த்தால் அதன் தாக்கம் என்னவாக இருக்கும்? சிந்தியுங்கள்!

5. புதிய கலைச்சொற்களை கற்றல்/உருவாக்குதல் 

எல்லாவற்றிற்கும் காரணப்பெயர்களா?
(நகைப்புக்காக மாற்றப்பட்ட படம்!)
இது இன்றியமையாத ஒன்று. ஒரு உயிருள்ள மொழி, வளர்ந்துகொண்டே இருக்கும். அகவே, தமிழ் மொழி வளர்வதற்கு அதற்க்குப் புதிய சொற்கள் தேவை. கடந்த 100 ஆண்டுகளில் ஏற்பட்ட அறிவியல் வளர்ச்சிகள் ஏராளம். அவற்றைக் குறிக்கத் தமிழில் சொற்கள் உருவாக வேண்டும். எல்லாவற்றையும் காரணப்பெயர்களாக மட்டும் வைப்பது சற்றே கடினமான ஒன்று. மிக நீண்ட மற்றும் நகைப்புக்குரிய வகையில் காரணப்பெயர்களை வைப்பதைவிட, சற்று சிறிய, மனதில் நிற்கக்கூடிய எளிய சொற்களை உருவாக்குவதும் இன்றைய தேவை! இச்சொற்களை உருவாக்குவது மொழியியல் வல்லுனர்களின் வேலை! இவ்வாறு உருவான சொற்களை பயன்பாட்டிற்குக் கொண்டுவருவது, அனைவரது கடமை! ஆகவே உங்கள் ஆர்வத்திற்கேற்ப இவ்வகையிலும் நீங்கள் உதவலாம்!

Friday, June 9, 2017

India Ranks 89 in Average Internet Connection Speed

According to the latest Akami State of The Internet Report, India ranks 89 globally in average connection speed. The report observes that the average connection speed in India is around 6.5 Mbps. This makes India 14th of the 15 countries surveyed in the Asia Pacific region. It is worth noting that Asia Pacific region contains the global leader South Korea.
In terms of peak speed, India is in 15th position in Asia Pacific region and  the global rank is an abysmal 97. Despite the high penetration of 4G networks like Jio and Airtel and higher smartphone adaptation, the country remains far behind both globally and in the neighborhood in terms of connectivity speed.

Further on the distribution of broadband speeds, 42% of Indians have 4 Mbps lines, 19% have 10 Mbps lines and only 10% have 15 Mbps lines. On an interesting side note, USA ranks 28th in terms of Wireless Connectivity speeds!

Thursday, August 25, 2016

லினக்ஸுக்கு வயசு 25!

1991-ஆம் ஆண்டு லினஸ் பெனடிக்ட் டோர்வால்ட் (Linus Benedict Torvalds) என்னும் ஃபின்லாந்து நாட்டுக் கணினியியல் மாணவரால் ஒரு பொழுதுபோக்காக ஆரம்பிக்கப் பட்டதே இந்த லினக்ஸ். லினக்ஸ் என்பது முழுமையான இயங்குதளம் (OS) இல்லை. அது இயங்குதளத்தின் கெர்னல் (Kernel) எனப்படும் உட்கருவாகும். லினக்ஸ் கெர்னல் கிணு-வுடன் (GNU) சேர்ந்து கிணு/லினக்ஸ் (GNU/Linux) இயங்குதளத்தை சாத்தியப்படுத்தியது. இருபத்தைந்து ஆண்டுகளுக்கு முன் லினக்ஸின் ஆரம்ப நாட்கள் குறித்து லினஸ் டோர்வால்ட் கூறுகையில், "அது முழுவதும் ஒரு தனிநபர் செயல்பாடாகவே இருந்தது" என்கிறார். மேலும் 1991-ஆம் ஆண்டு அவர் லினக்ஸ் குறித்து எழுதிய முதல் பதிவில், "இது கிணு போன்று திட்டவட்டமானதாக இல்லாமல் ஒரு பொழுதுபோக்குக்கான ஒன்று" என்று குறிப்பிட்டிருந்தார்.
கிணு இயங்குதளத்திற்கான வேலைகள்  அமெரிக்கரான ரிச்சர்டு ஸ்டால்மன் (Richard Stallman) தலைமையில் வழிநடத்தப்பட்டு வந்த நேரம் அது. ஏறத்தாழ முழு இயங்குதளமும் முடியும் தருவாயில் இருந்த நிலையில் அதற்குத்தேவையான ஹர்ட் (Hurd) உட்கரு (கெர்னல்) மட்டும் தேக்கநிலையில் இருந்தது (இன்றும் அப்படியே உள்ளது!). மினிக்ஸ் (Minix) என்னும் மாற்று இருந்த போதிலும் அது கட்டற மென்பொருளாக (Free Software) அப்போது இல்லை.  அந்த நேரத்தில் யாரும் எதிர்பாராத வண்ணம் ஃபின்லாந்திலிருந்து உதவி வந்தது.
ஃபின்லாந்து நாட்டின் ஹெல்ஸின்கி பல்கலையில் கணினியியல் துறையில் பயின்று வந்த லினஸ் இணையத்தின் மூலம் தன்னுடைய கெர்னலை வெளியிட்டார். மேலும் அதை கிணு பொது உரிமத்தின் (GPL - GNU General Public License) கீழ் வெளியிட்டார். அப்போது மினிக்ஸ் கெர்னலை எழுதிக்கொண்டு இருந்த ஆண்ட்ரு டனேன்பௌம் (Andrew Tanenbaum) லினக்ஸின் கட்டமைப்பு மோசமானது என்றும் தன்னுடைய மைக்ரோ-கெர்னல் கட்டமைப்பே சீரியதென்றும் விவாதித்தார். அதற்க்கு லினஸ் தன்னுடைய கெர்னல் ஒரு சிறிய அளவிலான ஆதாயமற்ற மென்பொருள். மேலும் அது இன்டெல் 80386 சிப்பிற்கு மட்டுமே எழுதப்படுவது என்று கூறினார்.
ஆனால் இன்றோ இந்த லினக்ஸ் கெர்னல் நீக்கமற எங்கும் நிறைந்துள்ளது. உங்கள் கைப்பேசியில் உள்ள ஆண்ட்ராய்டு இயங்குதளம் முதல் பங்குச்சந்தைகள், நீர்மூழ்கிக்கப்பல்கள், குளிர்சாதனப்பெட்டிகள், தொலைக்காட்சிகள், விண்வெளியில் சுற்றும் செயற்கைக்கோள்கள் வரை பல இடங்களில் லினக்ஸ் ஊடுருவியுள்ளது. உலகில் உள்ள மிக வேகமான 500 சூப்பர் கம்ப்யூட்டர்களில் ஒருசிலவற்றைத் தவிர அனைத்தும் லினக்ஸ் கெர்னல் மூலமே இயங்குகின்றன.
கைப்பேசிச் சந்தையில் ஆண்ட்ரைடுக்குப் போட்டியாக இருக்கும் ஒரே இயங்குதளம் ஆப்பிள் நிறுவனத்தின் ஐ-ஓ.எஸ். ஆனால் ஆப்பிள் நிறுவனத்தால் கணினிகளில் (மேசைமேல் மற்றும் மடிமேல்) ஒன்றும் சாதிக்க முடியவில்லை. மேலும் ஃபயர் ஃபாக்ஸ், டைசன் இயங்குதளங்களும் லினக்ஸ் உட்கருவையே பயன்படுத்துகின்றன. இதற்க்கு நேர்மாறாக கணினிகளில் மேலாதிக்கம் செலுத்தும் மைக்ரோசாஃப்ட் விண்டோஸ் இயங்குதளம் கைப்பேசிகளில் சொற்ப அளவிலேயே பயன்படுகிறது. ஆனால் கைபேசி மற்றும் கணினிகள் என்று மொத்தமாகப் பார்த்தல் லினக்ஸ் உட்காருவே அதிகமாக பயன்பாட்டில் இருக்கிறது. இணையத்தை இயக்கும் சர்வர்கள் (server) பெரும்பாலும் கிணு/லினக்ஸிலே இயங்குகின்றன. இந்த அடிப்படையில் இன்று உலகிலேயே அதிகமாகப் பயன்பாட்டில் உள்ள இயங்குதள உட்கரு லினக்ஸே!

இதன் வெற்றிக்கு முழுக்காரணமும் யாருக்கும் சேராது. இது ஒரு கூட்டு முயற்சியே! இன்றைய நிலையில் லினக்ஸ் நிரலில் வெறும் 0.2% பங்களிப்பே லினஸ் டோர்வால்டிடம் இருந்து வருகிறது. இணையமும் தொழில்நுட்ப முன்னேற்றமும் பல புதிய வழிகளைத் திறந்துள்ளன. 25 ஆண்டுகளுக்கு முன் இருந்த இணையமும் கணினியும் சாதிக்க முடிந்த ஒன்றை இன்றைய நிலையில் 4ஜி-யும் ஸ்மார்ட்போனும் கொண்டு நாம் செய்ய முடியாதா? கூட்டு முயற்சியும், ஒத்துழைப்பும், ஆர்வமும், தேடலும் இருந்தால் லினக்ஸ் போன்ற எண்ணற்ற புதிய படைப்புகள் தோன்றும். அது கணினித்துறையில் மட்டுமே இருக்கவேண்டும் என்று அவசியம் இல்லை. மருத்துவம், வேளாண்மை, வாணியல் என்று எந்தத் துறையிலும் இருக்கலாம்! வாருங்கள் அறிவைப் பகிர்ந்து ஆற்றலைப் பெருக்குவோம்!

Friday, August 5, 2016

வேடிக்கையான இணைய விதிகள் 5

நாம் அனைவரும் நம் கருத்துக்கள் (மட்டுமே) சரி என்றும், பிறர் தவறான புரிதலில் உள்ளனர் என்றும், அவர்களை இணைய விவாதம் மூலம் திருத்திவிடலாம் என்றும் எண்ணி, பின்னூட்டங்களையும், பதிவுகளையும் எழுதித் தள்ளுகிறோம். அவற்றையும் விளக்கச் சில விதிகள் உள்ளன. வேடிக்கையாகச் சொல்லப்பட்டாலும் அவற்றில் உண்மையும் உண்டு. அவற்றில் நான் ரசித்த 5 விதிகளை இங்கே குறிப்பிடுகிறேன்.
1. போம்மர் விதி (Pommer's Law)

இணையத்தில் வாசிக்கும் தகவல்களினால் ஒருவரின் கருத்துகளை/எண்ணங்களை மாறலாம். அந்த மாற்றம் அறியாமையில் இருந்து தவறான புரிதலை நோக்கியதாக இருக்கும்.

2. ஸ்கிட் விதி (skitt's Law)

அடுத்தவர் பதிவில் இருக்கும் எழுத்து/இலக்கணம்/நிறுத்தற்குறி (punctuation) தவறைச் சுட்டிக்காட்ட எழுதப்படும் பதிவில், குறைந்தது ஒரு தவறாவது இருக்கும்.

3. தாந்த் விதி (Danth's Law)

ஒருவர் ஒரு இணைய விவாதத்தில் வென்றதாகக் கூறிக்கொண்டால் அவர் அதில் கேவலமாகத் தோற்றுப்போய் இருக்க வாய்ப்பு அதிகம்.

4. காட்வின் விதி (Godwin's Law)

ஒரு இணைய விவாதம் நீள நீள, எதிர் தரப்பை ஹிட்லர்/நாஜி-யோடு ஒப்பிடும் வாய்ப்பு அதிகரிக்கிறது.

5. வியப்புக்குறி விதி (Law of Exclamation)

ஒரு பதிவில் எந்த அளவுக்கு அதிகமாக வியப்புக்குறிகளும் பெரிய எழுத்துகளும் (bold/capital letters) இருக்கின்றனவோ அந்த அளவுக்கு அது பொய்யாக இருக்க வாய்ப்பு அதிகம்.

Monday, November 17, 2014

Online Offers or Outright Scams?

Recently I bought some instant pasta and got some gift coupons with it. It said that there is 500/- off on purchases above 1200/- in a popular online store. As my running shoes were wearing off, I thought I can use it to buy a pair of shoes. I checked the price of some shoe models and compared it with another online store's prices. There was almost 600 to 700/- difference. So, they just give 500/- off while pricing things 600/- more. Is this an offer?
Again, one day everyone around me at office were panicking. They said that some online shops are giving unbelievable discounts. But again, when checked against some other online stores, people realized that it is just a publicity stunt and the so called offer prices are higher than other sites.

Some other companies give you "free" talktime offers with purchase of things like noodles and dishwash bars. But that requires you to "register" yourself with some sites. This is the catch. They get your email id, mobile number etc. And as usual we never read the "terms and conditions" but just click "I Agree". So this information can be misused. I am not saying that all such offers are threat to your privacy but you can not trust all such offers. Nothing in the world comes for free from "businesses". They themselves say that they are not charities!

So am I against all online purchases? Definitely not! I myself purchase lot of things online. But what I am saying is, clever marketing gimmicks and enticing offers should not mislead us to waste our money on something that is not worth. Now let me list out how these online stores are serving us better as well as how they are spoiling us!

The Good Side:

1. They don't need to rent a large showroom, air-condition it, pay hefty electricity and water bills and employ staffs. All they need is a website and a warehouse. That's why they can offer cheaper prices.

2. They offer more choices. For example, they provide option to buy phones and laptops of brands that are seldom available in conventional market.

3. They allow you to shop at your convenience. More payment choices and offers.

4. There are some tax differences between states. As these products are shipped from various locations across India, you can get a cheaper deal in that way too!

The Bad Side:

1. Things like shoes, dress etc can have mismatch against your expectations.

2. Purchasing lesser known brands may look like steal deals. But in some cases, there can be poor after sales service that will make you regret the purchase!

3. Delay in shipments are possible. Also some damaged products may need lengthy follow-ups to get rectified or refunded. Some times that even won't happen.

4. Unlike in case of conventional shopping which happens once in a while, people can constantly waste their time by looking in to online stores. Some tempting offers and targeted ads create an unwanted urges to spend on things that people seldom need.

So, to summarize, online stores are inevitable effect of the IT revolution. There is no point in protesting against it. Resistance is futile! These stores provide us more options and choices. But be careful! Don't purchase anything in a hurry. Compare price in other online stores and conventional shops. (Recently I bought a helmet of same brand/model/size for a much lesser price than in any online store from a conventional shop!) Before buying anything ask yourself if you really need it and will use it for sure and it is worth the money you are going to spend on it. Once again! Beware of online offers. Be extra cautious before buying anything (not only online but also in normal shops).

Wednesday, April 16, 2014

What GnuTLS and OpenSSL Teach Us?

Recently there are lot of news about security issues in the Open Source software. GnuTLS was the first to come in light followed by OpenSSL (so called "Heartbleed" bug). Some people are completely unaware while some others (corporate slaves) use this to attack the free software movement itself, saying open source is insecure.

First, being  an open source project won't make the code superior or free of bugs automatically. Only with repeated review and testing along with highly skilled programmers, quality software can be written. So, who is going to review? Who is going to code? Most of the free software are developed by comparatively good developers and frequently reviewed by maintainers and communities. Most of them have an active base of beta testers too. So the free software are, most of the times, superior in quality compared to proprietary software.

BUT, there are many projects where the maintainers accidentally overlook a programming error, which may or may not be intentional. In such cases, there is a chance for the bug to get in to the released version. It will stay there for longer time after this phase as mostly the review will happen for new code. So, unless a biting issue shows up or someone by chance catch the bug during reviews, the bug will stay.

This is what happened with GnuTLS and OpenSSL. But there is a solution for this problem. As we discussed earlier, college students and hobby programmers can be encouraged to review, test and write code for free software projects. That will surely improve a lot. The next is, the corporates who use the free software should show some social responsibility by providing software engineers to test, review and bug fix the products they are using. OpenSSL bug was uncovered by Google's review thankfully. I know, there are smaller companies who can't do that. They can contribute by donating whatever amount of money or time or resource they have for the projects they rely upon.

Quality and safety won't come for free. Especially, in a community, it is everyone's responsibilities. But what people expect is much like, "I am a user and they are the developers". That mindset is the worst problem here. Everyone should think we are part of the free software community and whatever we create or use should benefit all of us.

By the by, for those corporate slaves, Free Software developers are resisting government pressure to create backdoors for the security agencies. But corporates gladly open doors for some money. With closed source tools, who knows how many such bugs exists? Don't think that as the source is closed, nobody can exploit it. Malicious hackers will use disassembler to do the job for them. So unavailability of source and rigid licensing will only delay or prevent identifying and fixing the issues while won't impact those who exploit the issue.

When there is a bug in the free software or open source software, it becomes news because they are rare. But millions of proprietary software bugs are exploited day in and day out without much noise because they are usual thing and even serious issues are covered up by corporate lobbies.

If you still feel that free software are inferior in quality, then it is time to do something to change it instead of sitting and complaining.

Talk is cheap. Show me the code. -Linus Torvalds

Sunday, March 9, 2014

Why You Don't Need an App for Everything - 10 Reasons

We need the so called "apps" in order to get the maximum out of the hardware of our phones. For example, without apps, how can we take photos or use the magnetic compass or flash-light? Apart from these hardware specific tasks, I think we don't need apps for things we can easily do with a good browser. I am not against necessary apps. But some people start to install every possible app out there. Is that the right way to go?

1. They eat up your memory
 
Apps usually eat up lot of memory in your mobile. Especially if you have a low end mobile, memory dedicated for apps will be lesser (< 300MB). Every app will occupy around 5 to 10MB and some even take up to 25MB (these are normal apps, not those games with fancy graphics and sound effects). Also with time, they store data as cache. This will result in low free memory in your phone which may cause it to slow down, crash often or behave in unexpected ways. Some "clever" people say they can move the apps to SD card. That too is not a good option. SD card apps are relatively slower and when you change your SD card or the SD card becomes corrupted, those apps are lost.

2. They consume your RAM

Apps are started and stopped by Android automatically. So when you reboot your phone, even without opening any app, many apps will be up and running. They occupy more RAM and when you open a message or contact book, those apps will be closed by Android to free some RAM for the app you are accessing. So, it too slows your phone down. Some people claim Android is smart enough to handle tasks. But those who use their phone with good amount of apps know what I am saying. Some "smart" people use task-killers to kill those tasks. But again, in few minutes those same apps will be started. There is no sure way to ensure that particular app is not started automatically than to uninstall it.

3. They suck your network bandwidth up

As mentioned in above point, apps automatically start and also start to consume your Internet connection. Some apps will be synchronizing, some may be downloading ads, others may be busy checking whether a latest version is available while some "great" apps are sending your private information to their servers. There are apps that upload your SMS, contacts, emails and even whatever you type etc to their servers. All these take a good amount of network bandwidth and you may run out of free data soon. Some "brainy" people try to circumvent this by going for "unlimited" data plans. Even then there will be a limit after which the connection speed will be throttled. Also when all these apps are chocking your network in background, you may wonder why that small email is taking so much time to be sent or why your browser is taking too long to show that your IRCTC ticket is not booked.

4. They drain your battery

As mentioned in points 2 and 3, these apps start and connect to Internet automatically. So they consume lot of power. They cause phones to heat up and you may not be able to call someone or listen to music as these apps had already sucked the last drop of power out of your battery. Some people come up with some "tricks" to sort this out. That is by installing an app to improve battery life. What an idea sirji! Some say they are not bothered as they always carry the charger with them. I think they also carry a generator with them or their charger is solar powered!

5. Slows down your phone

Due to insufficient internal memory, processor load, insufficient RAM, clogged network etc, your phone may slow down to unusable levels. One of my friend came to me saying that his phone's touch-screen was not working. I checked it. Actually the touch-screen was working fine, but due to overload, the response was slow. I uninstalled few bloatwares, and it started to work normally again.

6. Threat to your privacy

Most people won't give a damn about what all the permissions the app asks before installing. And Android's innovative design makes it impossible to restrict access to SD card or Internet at app level. There are some options like Droidwall to restrict the app's access to Internet, but still, it is is bit tough if the app demands that an Internet connection is needed to proceed and our people will set that app as exception permanently to avoid "hassles". There apps like Truecaller which uploads entire contact book with photos, pet name, and other details to Internet. I know people who store their PAN number, Bank account number, ATM PIN number etc in their contact book. Imagine what will happen if these details are uploaded to someone somewhere! I have recently seen some apps that require permission to send/receive SMS but they are actually meant to be live wallpaper.

7. They distract you a lot

These apps annoy you a lot by giving unwanted notifications. You may be awaiting an SMS from your bank stating your "one time password" for a credit card transaction or you may be in a meeting. "beeeep" There is a notification saying that some has invited you to play a stupid online game. To take it to the next level, some apps give alerts/notifications/reminders to rate their app in Playstore, purchase unlocked version or to try their new app. All these things distract you and waste your time for no good.

8. They have misleading ads

Yes, ads are there in websites too. But why I am mentioning it here as a specific problem in using apps? The ads in apps are displayed like buttons or links in the app itself. This misleads the user and make them click on them. Once clicked, you are taken to malicious websites/apps. Moreover, there are some apps which are meant to be used by kids, but contain ads suitable for adults.

9. They are hard to maintain

These apps are hard to find, install, keep updated and to use. For example, if you want to book flight tickets, then you have many apps to do that. How to tell which one suits your needs? Are you going to install every app and use them to find out? In case of websites, it is easy to just hit the URL and try it and move to other. Similarly, if you have many apps installed, you need to keep them updated. That costs you lot of data and also battery power. It can be time consuming at times. Also, if your home screen and app-drawer are crowded with these apps, it is hard to spot the app  you need. Yes, we can use the built-in search to spot the app, but still, it is not that easy right?

10. Most apps are unethical

Most apps are so called proprietary software or "closed-source". So, even if you want an app, please look in the F-Droid repo for a free software alternate. Don't use apps that don't respect your privacy or freedom. Don't feel proud about yourself that you have purchased an app and that is going to support the developer of that app. No! The developer only gets a fraction of the money you paid unless you directly pay the developer and get the app in some other way other than from the Playstore or App store. So these apps also cheat developers. So which developer will allow themselves to be cheated? Those who want to cheat others in some other ways right?

Points to Note:

So, as you can see, don't buy in to the apps argument and install any "crapp" unless and until you are sure that there is no other good way to do it and sure that the app is legitimate and respects your privacy and freedom.

1. Check for website alternates and use a good mobile browser like Firefox to access the site directly instead of using apps

2. Check the apps' developer and ensure that it is from a legitimate source. For example, you can find apps with same/similar names but from different developers (some apps are just repacked malwares)

3. Don't install .apk files shared in forums/sites/bluetooth etc. Download them from F-Droid or Playstore alone

4. Check the apps permission before you install. If the app asks unwanted permissions or if you feel suspicious about the permissions, don't install it, even if it seems a must have. Security first. Rest later!

5. Read reviews about the app both in the repository as well as in tech-sites. Now-a-days paid reviews are very common and there are companies that offer services to boost your Playstore ratings/reviews. So you should be able to differentiate between genuine and bogus reviews.

6. Periodically check and uninstall apps you no longer use.

7. Disable Internet connection while using apps that have ads.

Conclusion:

Apps are waste of time for users and waste of money for companies developing them. If you are a business looking for app development, my advice is, don't go for it. Are you going to build an app for every platform out there? (Android, iOS, Windows, Symbian, Ubuntu etc) It will cost you more to develop, bug-fix and make changes in apps for multiple platforms than to develop and maintain a good mobile site. If you are a developer, please advise the same to your clients who come to you for developing an app.

Sooner or later, everyone is going to realize that apps are not the solution for everything. So you better realize it now.

Related Sites:

Monday, February 24, 2014

Tamil Keyboard for Android

<<<Read this article in Tamil >>> 
<<<இந்தக் கட்டுரையைத் தமிழில் படிக்க>>

Now a days, everybody is having one or more Android device(s). Also there are lot of content in Tamil around the Internet. But the main hurdle we have is, how to search for Tamil content if we can't search in Tamil? Google, Yahoo, Bing, DuckDuckGo all index Tamil content. But how can we search it? Typing in English? At least in PC, we can use online Tamil transliteration sites or software for typing in Tamil. But in mobile or tablet?

Here comes a decent Android app to your rescue. AnySoftKeyboard with Tamil layout extension.

Please follow the below steps to get this awesome app in your mobile:

1. Check any Tamil website and ensure that you have proper Tamil font support. Most popular brands come with excellent Indic fonts support. But some mobiles have broken support (render Tamil letters incorrectly) or lack Tamil fonts (display them as boxes). To make sure, open this page in your mobile/tablet browser and check the below line.

தமிழ் எங்கள் மூச்சு

If the above line is rendered properly, you can proceed to next step without any issue. [Note: If the text is NOT rendered correctly, you need Tamil font support to proceed. This may need rooting your device. So it is up to you to research and do it.]

2. Download AnySoftKeyboard from this link (Google Play Store).


3. Download and install Tamil for AnySoftKeyboard from this link (Google Play Store).


4. After AnySoftKeyboard and Tamil layout for it, have been downloaded and installed, go to your phone's settings, and select "Language & keyboard"

5. In the next screen, enable "Any Soft Keyboard".

6. A dialog box will open and will warn you about possible key-logging attacks which can be done by this keyboard application. Note: This is a generic message, and will be shown when you enable any keyboard application.

7. Long press on one of the text input field (select input method from notification area in Android 4+). A dialog will pop-up. Choose AnySoftKeyboard

8. I suggest you to turn off auto suggestion in "AnySoftKeyboard settings" in settings menu or by long-pressing "enter" button. This improves Tamil typing speed.

9. Long press characters to get similar characters as a pop-up. For example, ஆ can be typed by long pressing அ. Similarly, தீ can be typed by first typing த and then long pressing இ and choosing appropriate compound letter.



Salient features:

1. Fully free and open source software. No ads, and the source is available at Github. Click here for source.

2. Tamil layout matches English QWERTY layout. So it is easy to remeber and type.

3. One touch toggle between Tamil and English layouts. So you can type Tanglish easily.

4. Works without internet connection. As said, no ads, no payment required.

5. Small size and pretty fast.

6. Main app is used by more than million users and Tamil layout is used by more than 100,000 users. Both apps are rated with more than 4 stars.

So why are you waiting! Install the app now and chat with your buddies in your mother tongue! Update your status in Tamil! Search the internet for Tamil words/phrases! Explore the world in your own language!

Please leave comments if you have any doubts in using this app. If you like this app, please give it a good rating and review at Play Store. Thanks for reading
:-)

Thursday, January 5, 2012

Noah's Ark Wager

There are lot of people who take a literal interpretation of Bible, especially the first book, Genesis. I have seen lot of educated people believing in creation legends as literal truth, word for word. There are lot of refutations on this subject available on the Internet. But here I am presenting a wager that "If you take Noah's story literally, then you must believe in evolution"

First, to give an overview, there are more than 3,500 species of mosquito, more than 6,000 species of lizards and more than 43,000 species of spiders. After the level of species, we have sub-species in many animals/insects and at last, we have lot of breeds. For example, there are around 400 breeds of dogs and nearly 100 breeds of cat.
There are 6,000+ lizard species identified as of now
According to science, formation of one species from another takes millions of years, let us assume, at least ten thousand years. But the problem with ark advocates is, they claim that the ark is just 4,500 years old. So for example, if we consider Noah took one pair of spider with him, then each year, there should be 10 new species of spider evolving to match the number of species identified today. If some one claims that Noah took a pair of all the 43,000+ species with him, then there should be 86,000+ spiders alone on the ark, which will result in lack of space when we extrapolate this to all animals.
Feeding 86,000+ spiders needs another 100,000 insects at least!
The ark will have space and "float" only if the argument is one of each "kind", not one of each species. If ark advocates are to say that it is only one of each "kind", then, there are other problems like how polar bears and grisly bears came in to existence as polar bears can't live in temperate climate and grisly bears can't live in polar climate. So, the only logical solution for the arkeologists is to accept either Noah's ark is practically impossible or there was evolution of species after the flood.

There are some religions and sects which try to escape arguments say that the flood is local. But then we have to laugh at them that, why God didn't advise Noah and his family to move to some other safe place instead of ordering him to build a ship/ark? So this argument is nothing but a lame face saver for their interpretation of religious texts.

Noah's story can be a good bed time story or a theme for Sunday school skit. But not as a hard fact historical lesson! Finally, my intention is not to hurt sentiments of any religious group or individual. My intention is to tell others what I understand and encourage critical thinking. So, instead of believing literally what religious texts say, it is better to use God given common sense to understand things properly. God is not glorified by blind faith, but by good understanding.

Do not forsake wisdom, and she will protect you; love her, and she will watch over you.  Wisdom is supreme; therefore get wisdom. Though it cost all you have, get understanding. -Proverbs 4:6-7 (Holy Bible)

Reckless and incompetent expounders of Holy Scripture bring untold trouble and sorrow on their wiser brethren when they are caught in one of their mischievous false opinions and are taken to task by those who are not bound by the authority of our sacred books. For then, to defend their utterly foolish and obviously untrue statements, they will try to call upon Holy Scripture for proof and even recite from memory many passages which they think support their position, although they understand neither what they say nor the things about which they make assertion. -Saint Augustine (A.D. 354-430)