Older blog entries for roozbeh (starting at number 98)

Well, I got my Chinese name back again, after an email from Hong Feng. This is a name he gave me in 2002 when I met him in Trivandrum.

The name is 普德纳. That’s U+666E U+5FB7 U+7EB3, and is pronounced somehow like “Pu DeNa” (my family name is Pournader).

The kDefinition field in the Unihan database gives respectively “universal, general, widespread”, “ethics, morality, virtue”, and “admit, take, receive, accept”. Back in India, Hong explained to me that to him it means something like someone who recieves virtue from different sources/people and then redistributes it. The “virtue” part is a reference to my first name.

The meaning interestingly resembles to what I’ve been doing for a few years now. I have tried to gather all those different and contradictory local requirements and the solutions the globalization technology provides for them, understand them, and then write them down or implement them (or get them implemented) in software.

The Iranian situations: I don’t know much about right and wrong according to divine beings, but something is utterly wrong when things like this happen:

Did these things happen in the same Tehran where I‘m living? Yes. Can I believe it? No.

For those who haven’t heard, that is the Iranian “independent students” putting the Danish embassy to fire and then occupying it for a while, last night.

Of course it can’t have any relation with, and is totally independent of, the Minister of Commerce’s announcement that they will not allow Danish goods to enter Iran anymore, and will not let Danish ships enter the Iranians seas.

Well, the way things go here in Iran, that’s just a little “warning”, of course. They rarely do this to foreigners, but well, ...

Hossein Derakhshan has interestingly written about the same thing that was eating me in this post of mine (United States helping Ahmadinejad get elected). The main difference is that it is published in New York times, while I write in Advogato.

So I recommend reading Democracy's Double Standard (registration is required).

22 Jan 2006 (updated 28 Jan 2006 at 11:33 UTC) »
Guardian’s Simon Jenkins: “Nor would the "coward's war" of economic sanctions be any more effective. Refusing to play against Iranian footballers (hated by the clerics), boycotting artists, ostracising academics, embargoing commerce, freezing foreign bank accounts - so-called smart sanctions - are as counterproductive as could be imagined. Such feelgood gestures drive the enemies of an embattled regime into silence, poverty or exile.”

One can’t be more right. Many of these have already been in effect of course, resulting in the empowerment of the government and the weakening of the general public.

As an small example, the commerce embargo means that most IT companies will not be able to outsource anything to Iran, resulting in the only viable business strategy of local companies to be selling to the government. Vendor monopolies are bad, sure, but guess how bad is a customer monopoly.

Silence, poverty, and exile? So accurate.

US vs Iran: I just read Let's make sure we do better with Iran than we did with Iraq by Guardian's Timothy Garton Ash. Apparently he understands the situation.
Mono and Fedora: Wow, I can't believe this! Is this the end of the struggle?
i18n design: Michael Kaplan has an interesting post called How to be un-international, which reminds me that i18n features, like everything else in the UI, must be designed. You can't just throw features there, just because someone asked for it and your developers did an (extended somehow?) implementation.
2 Jan 2006 (updated 3 Jan 2006 at 12:52 UTC) »
Silence news: Having been a silent here for a while, I guess some people may be interested to know what has happened in the meanwhile.
  • Regarding the Persian calendar in .NET, Miguel wrote to me and somehow challenged me for a patch to add Persian calendar support to Mono. I had never seen any C# code before, nor had run any Mono application, but could do it in a short time anyway. In the meanwhile, I practically redid the algorithm, to a level that now the introductory comments seem to be longer than the core code. Miguel then checked in my code almost verbatim, and now you can see comments like // FIXME: this may need a "static". I don't know enough C# in the code. I guess Mono critics can now say “Well, they even let people who don't know C# code for them, guess the rest”!
  • I got accepted as a Fedora Extras packager (first package: gentium-fonts). I consider the experience very educational for our own Sharif Linux. Since I was sponsored by Daniel (I put my GNOME/GUADEC relations to (ab)use), he somehow needs to cleanup after all my mistakes!
  • I officially resigned from the project that called itself “National Project for Farsi Linux” (and now calls itself “National Project for Free and Open Source Software”), after not attending their meetings for a while. The project is a monopoly in attracting what the Iranian government wants to spend in developing free software, and directing it to contractors who don’t necessarily know enough about free software. I guess this will help me concentrate more of my resources on what that project was actually supposed to do. (People like Behdad always told me they won't achieve anything technically useful, but I was optimistic). I am still trying to be kind to them, by not raising the numerous dark points of their record publicly, but that's very hard, specially since the highest level people in that project have called me names (“illiterate”, etc.), publicly and privately, after I had criticized someone else for plagiarism and violating the Iranian copyright law (the old story is mention briefly here). I agree I’m illiterate in several matters including politics (but perhaps not including Iranian copyright law), but I believe PhDs don’t bring literacy either.
  • We started an Iranian Free Software Association. The Persian word for free as in speech just means that (and does not mean gratis), so there was no need to add things like Open Source/FOSS/Libre/..., which do not make much sense when translated to Persian.
  • We achieved supported language status for Persian in GNOME 2.12.2. I“d love to thank all the contributors, but specially Meelad Zakaria and Elnaz Sarbar.
America's War for Petrol: More of the same patterns that led to Bush linking Saddam Hussein with Al-Qaeda, or that of linking North Korea with A-bombs are being repeated for Iran.

The important question about Iran is not "Is she?", but that even if the answer to that question is yes (which I doubt), the question should be "But why? But how?". I believe these have happened because of what the United States has done, directly helping the matter.

I will only write about the very recent case, the case which became a very important question for me, "should I leave Iran before our new business blossoms in full?" (Presently, the answer is undoubtedly yes.)

It was the recent election. Several media supported financially by the United States government, mostly including Iranian satellite channels operating from California but also official US media like VOA and Radio Free Europe, persuaded possibly millions of voters to not vote in the presidential elections. Who would have these voters voted for if they had voted? Very probably Moeen (who would have continued Khatami's program in a way) in the first round and Rafsanjani (who would have continued his own presidency's program from eight years back) in the second. Very few of them would have voted for Ahmadinejad.

The short result? The new Iranian administration, being so inexperienced, is digging its grave by acting incompetently both nationally and internationally. Internationally, they are starting to diverge from Europe and work only with close allies like Syria and Venezuela instead. The famous example is Ahmadinejad's remark about the Middle East conflict. Internally, business is declining badly, with several companies almost bankrupt and several people with shares in public companies in their hands who can't find new buyers. Everything is in a stalemate, and this is five months after the new administration has come to power.

All I can point to, is Ebrahim Nabavi’s “Why is President Ahmadinejad not afraid of America?” It may not be as funny as his Persian satires, but is undoubtedly enlightening. Just a quote: “If the US attacks Iran, many innocent people will die, which would eliminate many of Ahmadinejad's opponents.”

20 Oct 2005 (updated 20 Oct 2005 at 16:57 UTC) »
i18n: Microsoft has now finally implemented a PersianCalendar class in .NET (MSDN documentation, Michael Kaplan's blog).

The algorithm is the simple 33-year leap rule, which will fail to match the official Iranian calendar around 2089 CE.

But well, it's my own fault: it is the description I provided to Microsoft's Houman Pournasseh in 2001, IIRC, with some test data (the sentence "A leap year is a year that, when divided by 33, has a remainder of 1, 5, 9, 13, 17, 22, 26, or 30." in MSDN looks very much to be my own words). At that time, I thought that was the correct rule.

There is also a 2820-year rule suggestion circling in various "patriotic" circles, which is 1) more complex than the 33-year rule; and 2) fails in about 2025 CE, in my own lifetime. For a while, I and Behdad were fooled into believing that this 2820-year rule is the official rule. It was only luck that Houman has asked me about the rule earlier than that. (We don't need that kind of luck in free software much, but that's another story.)

The official rule, implemented in a 1925 law, says that the beginning of the year is the first day of spring, that the year is the "true solar" year "as it has been". This means that one needs to do astronomical predictions of the time of vernal equinox and the true solar noon in order to compute the calendar properly. I am happy that the current predictions match the 33-year rule until about 2089, by when I will definitely be dead (if the law is not changed or something), and people won't be able to blame me for an incorrect implementation. (Well, my children may not like people blaming me for a Persian Y2K, but I guess I should not worry that much.)

89 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!