Tuesday, August 24, 2010

We remember "random" sequences of alphabets much better than random sequences of numerical digits. Why?

Ask me to remember the following three words, and I guess I should be able to (quickly):
  • Nipitto
  • Quasquam
  • Zyrectica
Ask me to remember the following three numbers, and in all probability I won't be able to:
  • 5686990
  • 21342137
  • 984631237
Why the difference? There are 26 alphabets in the English language, compared to only 10 numerical digits. And yet we're able to remember thousands of words - most of which are basically random sequences of alphabets (it's we who've given meaning to these random sequences) - but we have trouble remembering more than a few phone numbers. Why?

On a completely fundamental level, alphabets and digits are nothing but visual representations of certain values and sounds, respectively. And words are formed by combinations of letters, while numbers are formed by combinations of digits. Why then is an average human able to remember thousands of words in his memory - sometimes even from multiple languages - but he can't remember too many numbers?

I suspect that sounds are a reason. Since all words in the English language have a unique pronunciation (in the form of a sound), it's possible that we're better at remembering sounds. Numbers - such as 32748746 - don't have any single sounds associated with them, and this might be a reason why numbers are much tougher to remember. The concept of sounds also seems to be applicable to the examples I've given at the start of this blog post - all of the three words can be converted into sounds, which're much easier to remember than pure sequences of alphabets. It's possible that we remember sounds, and later use a sound-to-text engine present in our brain to convert the sounds to sequences of alphabets. It's also possible that each sound can be stored as a single data-chunk, thus requiring less memory compared to a sequence of numbers.

Case in point - remembering the following words is as tough as remembering numbers, because these words can't easily be converted into easy sounds (absence of vowels):
  • Zvtrxttr
  • Nytrpqstj
  • Bcddfktr
These aren't words anymore - they've become as tough to remember as numbers!

Related content:
 Human brain could be storing & retrieving information as 'related blocks'

Sunday, August 22, 2010

How I keep my new computer safe from malware (spyware, viruses, worms, etc.), network attacks, phishing websites, spam, etc.

I use the following policies, tools and techniques to safeguard my new computer from all sorts of privacy and/or security breaches:
  1. DNS level: Use of OpenDNS resolution service ensures that malicious addresses are blocked at the DNS level. Even the basic/free version of OpenDNS provides a decent level of customization, including allowing blocking of specific website categories.
  2. CPU level: The CPU in my new computer supports DEP at hardware level.
  3. BIOS level: The computer's BIOS includes a "Virus Warning" feature, which warns whenever an attempt is made to write to the MBR of the hard disk. Additionally, enabling passwords in the BIOS helps prevent unauthorized changes to BIOS settings, and unauthorized entry into the system.
  4. OS level: Windows 7 provides me with these helpful features - Action Center, ASLR, Automatic Updates, DEP and UAC. Additionally, the computer is normally run with standard user privileges, rather than administrator privileges, and the user accounts are password-protected.
  5. Firewall level: Use of a good firewall such as the one by COMODO keeps the machine secure from unauthorized access through network. Additionally, COMODO's firewall includes useful features such as Image Execution Control, Sandbox, etc., which protect against unknown/untrusted executable code. I would've liked it if COMODO's firewall included its own feature to block malicious websites.
  6. Anti-malware level: An anti-malware application such as ESET NOD32 Antivirus (or Norton AntiVirus) used in real-time protection mode provides effective protection against all sorts of bots, rootkits, spyware, Trojan horses, viruses, worms, etc., and also mandatorily scans all Web traffic. Behavioral-analysis/heuristics features enable such an application to detect new/unknown malware, while the unique Download Insight feature of Norton AntiVirus provides vital crowdsourced information about individual files. Frequent updates ensure that definitions and modules remain up-to-date. NOD32 Antivirus also blocks webpages known to include "potentially dangerous content".
  7. Additional anti-malware: Windows Defender and Windows Malicious Software Removal Tool - both provided by Microsoft - provide additional protection against common malware. Finally, a monthly scan with the free and nice Windows Live OneCare Safety Scanner both checks and optimizes the system.
  8. Web browser level: Use of Chrome provides these benefits - it's secure by design, it includes its own anti-phishing feature, it runs Flash inside a sandbox, and it updates automatically and forcibly. Additionally, I use HTTPS (whenever supported); I've even made bookmarks with HTTPS prefixed, so I'm directly taken to secure pages (whenever supported).
  9. Search engine level: Google's search engine includes its own warnings against malicious results, and thus, use of Google provides an additional layer of protection.
  10. Frequent, regular updates for everything: I've configured the system so that everything - anti-malware applications, browser, drivers, operating system, etc. - updates frequently and regularly. I manually update the applications which report that updates are available.
  11. Remove everything unnecessary: Removing everything that doesn't contribute is another policy that increases security. Disabling really unneeded services (without breaking essential functionality), disabling unneeded ports, uninstalling non-essential components of the OS (Internet Explorer, etc.), etc., are examples of this policy.
  12. Functional-but-secure settings throughout: Applications, devices and the OS include many configurations options which allow a trade-off between functionality and security. Some of these include AutoPlay/AutoRun, router settings, USB-related settings, etc. Striking a good balance throughout is essential to increasing security without breaking functionality.
  13. Stay abreast of whatever's new: Stay aware about the latest developments and discoveries, and adopt whatever's good. Google's Chrome is a good example. It's newer and safer than Firefox. Someone who uses Firefox and doesn't stay updated about new developments would've missed Chrome entirely, thus making him a little less safe (than he could be).
  14. Avoid paying too much price: Additional protection is possible by using additional tools such as Malwarebytes' Anti-Malware, McAfee SiteAdvisor (or Norton Safe Web), SUPERAntiSpyware, Web of Trust, etc., but I don't use these as I don't see as much benefit from their use as is the price to be paid, especially since the above measures have already kept me safe for years.
I use the above methods (except the 14th point) to safeguard my new machine. One good aspect of the above policies, tools and techniques is that all of these need to be deployed and setup just once. Everything works automatically thereupon, except for occasional manual checks/updates. The few hours it takes initially to set things optimally have paid off nicely for me - I've been breach-free and malware-free for years now!

Google isn't giving away Android for free. Steve Ballmer, was wrong

I can't recollect the article or the video in which I read/saw Steve Ballmer make a claim which meant that because Google is giving the Android operating system for free, Android can't be of as much quality as our paid Windows Mobile operating system can be. Because we charge for Windows Mobile, we can put a lot more investment into the product, compared to Google, which can put only so much investment into its free OS.

I had thought this when I had read those words of Steve Ballmer, and I thought this again when I read a few statements made recently by Eric Schmidt.

Google is not giving away Android for free!

Google has strong reasons - both tactical and strategic - to invest in Android and ensure that it achieves a high adoption on smartphones and other devices from multiple sellers. What Ballmer said appears to imply that Google has neither an incentive to fund Android's development, nor cash (because Android's free, the money has to be pulled from elsewhere inside Google, but doesn't come from the Android product itself).

Incorrect. Google has both.

  1. Cash: Android does generate net revenue for Google. So much, that it's more than enough to fund its development (as quoted recently said by Eric Schmidt. Unfortunately I don't have a link to that news story either). Ballmer's assertion that Android is a free product rests on the incorrect assumption that only the upfront taken revenue (from end-users or hardware-sellers) makes a product a paid product. His claim apparently overlooks the fact that Android-based devices generate advertising revenue for Google, and this revenue is large-enough to more than cover Android's development. Further, Google doesn't have to split advertising revenue generated on Android, unlike the split it does with Apple (for the revenue generated on the iPhone, iPod touch, etc.). Android might come free to the hardware-makers and hence to the end-users, but from Google's point-of-view, it is a paid product - it's the advertisers who pay for it! How do Google's wonderful services such as Web Search, Gmail, etc., come for free to the end-customers? Somebody must be paying Google, after all. It's services such as AdSense and AdWords which allow Google to make both Android and an array of wonderful online services free for both end-customers and hardware-makers. And who funds AdSense/AdWords? It's the advertisers! It's this indirect revenue-stream that Ballmer apparently overlooked.
  2. Incentives: This aspect can be understood better if one believes that market share and revenue are distinct goals. Generating revenue aside, the Android operating system ensures increased exposure to, and adoption of Google's products and services (by being both "defaults" and tightly-integrated). This makes both tactical and strategic sense, and appears to be a sufficient-enough incentive (net revenue incentive aside) to encourage Google to fund Android's development and adoption.
In summary, it's in Google's interest to make sure that Android gets heavy adoption - which means Android must out-innovate rival operating systems, which means the Android team works as furiously as the Windows Mobile team - a contradiction to what Ballmer implied.

A favorable side-effect of increased adoption of Android is that this helps Google to contain and hurt both heavyweight and upstart competitors, including Microsoft.

Steve Ballmer, was wrong.

Tuesday, August 17, 2010

Why is the combined ticket price of three legs of a particular flight lower than the combined ticket price of only the first two legs?

Perhaps I don't understand the economics of civil aviation that well, but what I just saw has puzzled me. A lot.

Ticket price for a commercial flight from DEL to JFK (via HEL) on Finnair is lower than the ticket price for a journey from DEL to YYZ (via HEL and JFK, with the journey from DEL to JFK operated by Finnair, and the journey from JFK to YYZ operated by American Airlines).



This weird pricing looks even more alarming because an American Airlines flight from JFK to YYZ is priced at INR ~8,500, or a good over 27% of the price of the DEL-HEL-JFK flight operated by Finnair.


This effectively translates into: A+B>A+B+C, where A, B and C are positive real numbers. How's it possible? Who's losing money here, if anyone?

Update [11-Sep-16]: Similarly, Turkish Airlines will fly you to Moscow/SVO [and back] via Istanbul for INR 31,159, but if you want to fly to only Istanbul [same dates, same timings, same flights], then you've shell out INR 42,804. Why in the hell is this happening?



iTunes on iPhone/iPod touch is significantly different from the Macintosh/Windows version of iTunes on a fundamental basis

This is what I observed during my past few weeks I with an iPod touch.

 iTunes for Windows (source)

The Mac/Windows version of iTunes is a place where you do at least the following things:
  1. See your complete media collection (assuming you use no other media management software), and choose what music/movies/videos you want to play
  2. Playback any of the content you can see in iTunes
  3. Discover new content, using both catalogs and search queries
  4. Acquire content, by either downloading free content or purchasing paid content
  5. Sync content (including applications, et al.) with your portable Apple device
  6. Etc.
In a nutshell, iTunes on the "desktop" operating systems is a one-stop place, which allows you to do everything that you can possibly want to with content (keeping Web browsers, YouTube, etc., out of the picture for the purpose of this post)

iPod touch (source: Apple)

In contrast, on iOS devices such as iPod touch, there are three distinct applications to do what all could be done in iTunes alone on a Mac/Windows machine.
  1. See: Use 'Music' or 'Videos' applications. You can't see your media collection in iTunes!
  2. Playback: Again, you can't playback locally stored content inside this "iTunes"!
  3. Discover: Use 'iTunes'
  4. Acquire: Use 'iTunes'
  5. Sync: iOS
  6. Etc.
And after this analysis I'm able to understand why I kept opening the iTunes application on the iPod touch every time I wanted to consume the stored music/videos.

Sunday, August 15, 2010

Google should launch a contextual advertising product for PDF files

I've wondered for years why we don't have an AdSense for PDF product from Google (or others). Why can't I embed code from this hypothetical AdSense for PDF product into a PDF ebook I've written, and distribute it for free on the Internet. This hypothetical PDF shall be secured in such a manner that it shall open only when there's a Web connection available, so that ads can be pulled from Google's servers in real-time.

I believe that an AdSense product for PDF files can bring a revolution in the commercial use of the PDF format. It shall allow both experts and semi-experts to publish individual articles as well as full-blown ebooks in the form of well-protected PDF documents laden with advertising code, without worrying about unauthorized copying of their work. In fact, under this model authors will encourage free-distribution of their PDFs to more and more people.

Such a product shall allow website owners to publish select documents in PDF rather than HTML. Use of PDF shall provide the following benefits to the publisher:
  1. Setting permissions using industrial-strength features of PDF
  2. Not losing out on the per-document ad revenue available in regular Web documents
  3. Providing the usual benefits of PDF files - such as a consistent layout, paper-like readability, etc. - to the users
Because the PDF format is such a tightly-knit format, compared to the relatively loose HTML format, I have a high degree of confidence that a well-designed contextual advertising product for PDFs will usher a revolution in the way PDF files are used. However, I also have a strong belief that a prerequisite for such a product's success is that the use of PDF files be made as seamless as the use of HTML documents currently is. Google's integration of PDF support in Chrome is a good step in that direction.

For Google, such a product can mean a new source of cash - whilst making minimum investment - to feed its desire for continued growth.