When I mention that I'm learning Japanese, many people ask something along the lines of "isn't it a difficult language to learn?" To be honest, the only true answer is that it's difficulty is a direct inverse of your interest level, so really the question boils down to time, and how one would rather be spending it.
When I started learning, there were a few different things that first struck me, that I'm gradually changing my view on. Firstly is the undeniably daunting prospect of facing a page written complete in Japanese. To the absolute beginner it literally looks like a mass of abstract and complex characters and shapes. Actually, that's precisely what it is, and it's also precisely what English is too, until you learn it.
As a programmer, my core drives can probably be boiled down to a few motivations: how do things work; how can they be emulated or improved, and how can I logically break down and solve a particular problem. How the brain works is one such enigma, and it's usually of interest relating to programming - from Isaak Asimov, to Alan Turing's slightly flawed test premise (see limits of CAPTCHA), to Jeff Hawkins quest to discovering the source of intelligence and 'self' ( http://www.numenta.com/ ). The most compelling research into intelligence and learning all revolves around pattern recognition, and how we can learn and adapt to new patters.
For this reason, when we're confronted with something that's totally alien, it's impossible for the brain to process or make sense. There is no model that it can use to make predictions, or make links to anything related or already known. How we learn our native language is quite interesting because we start by recognising the individual letter, and linking them to their sounds. By practicing writing them too, we're using three areas of the brain to learn that single letter: auditory, visual and through muscle memory. It takes a lot of work for the brain to process that information, even to learn a single letter. Only through repetition, and the combination of brain pathways, does it become second nature. To the point where we almost forget the individual letters as we read books; words transcend the abstract letters with further abstractions of meaning. Unfortunately most of us only go through that process once, while we're still very small so we tend to forget what it's like to go through those steps of learning; we just take for granted that it's 'just what we know'.
We also can forget that all words are also abstract idioms and quite often even bear little or no relation to the composite letters - words like "vehement", "cognac" or " synecdochical" can only be learned. There are also anecdotal arguments about "I can't learn any more" or "if I learn something new, what will I forget", and these are really just urban myths. A better anecdote might be to say that the brain is like a muscle. It's learning how best to use it, and to stretch and exercise it that's important.
So, the idea of learning 2000 basic Kanji already starts to sound a much simpler task. Even learning 10,000 Kanji is comparable to learning the same amount of words in English. It's not like our dictionaries only contain a few hundred words, or that they all follow a very basic, easy to learn pattern.
Also, if we think about sounds in speech it can be easily argued that actually Japanese is much simpler. We have 26 letters, and they have around 110 syllables in Japanese. However, for each letter, how many variations of pronunciation are there? How many variations are there when combined? One estimate I've seen a few places is that there are around 8,000 different syllable sounds in English. Granted, not everyone can say "the" in the same way, but it's still a lot to learn! Yet we don't even really need to be consciously aware of it for the most part.
Not only can learning Japanese (or any other language) be good for learning about patterns and how intelligence works, it can also make you think about how and why grammar, sounds, and idioms are formed in the way that they are. The whole core of society's existence is attributable to how we communicate, and the language gives a lot away in terms of history and culture. So learning Japanese also gives a bit of history into Chinese culture too, and the origins of Kanji.
Okay, so I've written a lot about language without linking it at all to programming so far.