Tuesday 22 May 2012

Failure of poppy crop complicates Withdrawal from Afghanistan

Kandahar -- Afghanistan's poppy crop - source of 90% of the world's illicit opiates - appears to have suffered a major failure this year, according to both US and Afghan officials. Since the majority of Al Kaeda's funding comes from the opium trade, you might think this cause for celebration. But as with all things Afghan, things are not so simple.

To be sure, Al Kaeda's coffers will suffer a major blow. Unfortunately, so will the poverty-stricken farmers who grow the poppies, who in fact will feel the pain from two directions.

To understand why this is so, one must appreciate the viciousness of the Taliban. Not to say that this group invented this; one would have to dig deeper into history than I am ready to at this moment, but for now, suffice to say that their technique has been around in Western Europe for centuries, under the pleasant euphemism of feudalism, or in its more recent garb, loan-sharking. Here's how it works: you're a starving farmer with several children to feed -- God forbid, by several wives that you also cannot afford to feed. Morals aside, the only way out of your catastrophe is by borrowing money from your friendly agent of the Taliban: he (no need for he/she semantics here: it will be He) offers to lend you enough money for enough seeds to cover your humble plot. Mohammed be damned, there will be interest to pay on this loan, and secured by your crop! No crop, no interest payments, no protection of your wife and daughters from my admittedly lustful soldiers. Nothing I can do about that, sorry! In the words of the Corleone family, it's Just Business.

The bottom line is this: yes, this year's poppy-crop disaster is a Bad Thing for the Taliban (and by extension Al-Kaeda), and potentially a Good Thing for us (Western states), but unfortunately, string(s) theory emerges wherever you turn.

Viewing the history of the Opium Wars, and subsequent events, one can only admirer God's sense of irony. Because China refused to trade tea for anything but gold, England created an opiate agriculture in India and then exported its produce to China, addicting millions of Chinese to opium and thereby creating an alternative trading currency: forget Gold, you yellow devils - let's talk Opium.

There is no simpler way to regard this history other than that England became the then-world's largest drug trafficker. The only comedic part of this tragedy is that all this happened for the sake of Tea, which if nothing else attests to the effects of in-breeding on such a small island. As drugs go, Tea ranks among the least harmful. Yet it was considered so valuable that a nation of Chinese opium addicts was a small price to pay.

The question is, How to starve the Taliban while not starving the Afghan farmers who depend for their livelihood on the opium poppies they grow? My suggestion is this: outbid the Taliban. Buy up all the opium we can and remove it from the marketplace. That will not of course make the millions of heroin and opium addicts around the world disappear, but it will stymie the Taliban and with it, the networks of smugglers and traffickers whose arms stretch around the world. As for all the heroin, some of it can go to legal uses, and the rest, I suggest, should be given free to the addicted victims of this horrible trade. It's unlikely that we will cure them, regardless of what threats or therapy we provide. Best, then, to regard it as a medical problem rather than a criminal problem. Of course, we would have to require that addicts register to receive their medication, and prove that they are in fact addicted, but with those measures in place, we can reduce the harm they do to themselves and to society at large. Since the heroin would be free, there would be no need for addicts to come up with hundreds of dollars a day to finance their habit, and that would mean less crime, less prostitution, and so on. Injection clinics administered by nurses would also dramatically reduce and perhaps even eliminate deaths by overdose, not to mention the spread of HIV and other diseases caused by sharing needles. And finally, the opium farmers would be freed from the iron grip held on them by the Taliban and other criminal organizations. They would be free to think about such radical notions as sending their children to school.

Saturday 19 May 2012

Who Knew? Turns out I am a (gasp) Racist

While riding on the streetcar this morning, and reading the morning edition of Metro (a free rag distributed in Toronto each morning), I stumbled upon a story describing the murder of a bride on her wedding night. There was a phone call to the sister, containing a tearful confession, saying that there had been a terrible fight, and that now the groom had fled.

Immediately I jumped to the conclusion that this was an Honour Killing. In Canada, we have recently suffered several recent events: most notably and recently, the horrid murders of two daughters and their mother, in Kingston, Ontario, about which I have previously written.

But that is not the point of this particular blog. This is: immediately upon reading the headline, I assumed that this was another Muslim-extremist Honour Killing. Only upon reading the details did I learn that the suspect was named Jimenez, a native of Chicago, and is still on the lam.

Based upon nothing more than a headline, I leapt to an erroneous conclusion, and I am not proud of it. I fancied myself a 21st-Century Canadian, lugging no cultural baggage, prepared to treat everyone equally, and priding myself on the fact that I have good friends from the spectrum of colours and religions around me. That much is demonstrably true. But I also thought that I was above ethnic/racial stereotyping, that I was the very model of a modern Major General. Sadly, I have discovered that I am not.

There's not much solace to be gained here. The best I can do is reflect upon something Noam Chomsky wrote:
“Propaganda is to a democracy what the bludgeon is to a totalitarian state.” 


Arthur

Wednesday 16 May 2012

How to Delete your Facebook account


I'm sick and tired of Facebook, and its endless notifications, etc. I don't care any more about who posted a new picture, or likes this or that status update. So I decided to kill my account. Turns out, however, that Zuk wants to make that seemingly simple process more difficult than it ought to be.


It's a two-step process. First you must deactivate your account. Log in, go to your Security Settings page, and deactivate your account. That means that your profile immediately disappears, and that people on Facebook will no longer be able to search for you. However, the messages you sent, along with some other information, may still be visible to others.


Facebook deletes nothing. Your profile (friends, photos, interests and so on) are still there in the system. Apparently a lot of people want to deactivate their account temporarily, then come back and reactivate it. Perhaps they plan a trip to the jungles of Borneo, or something, and then want to reactivate the account upon their return.


If, like me, you really want to disappear from Facebook forever, you must log in to your account and then submit a request to delete the account. Facebook really doesn't want you to leave, and makes it difficult for you to do so. Here is the URL: 
http:/www.facebook.com/help/contact.php?show_form=delete_account.

Business Week Functions (T-SQL)

Recently I was faced with a little problem concerning the dates defining a business week. That is, given any date, return the values of the Monday and Sunday of that week. After some experimentation with DateAdd(), I discovered the solution, but the syntax was a little awkward and difficult to remember, so I decided to encapsulate it in a pair of functions:

BOW() -- beginning of the week
EOW() -- end of the week


These are simple but useful functions. I assumed the "standard" definition of a business week, that is, Monday begins the week and Sunday ends it. Here's the code:



-- =============================================
-- Author: Arthur Fuller
-- Create date: 2012-05-16
-- Description: Returns beginning of the week
-- =============================================
CREATE FUNCTION [dbo].[BOW] 
(
@d DateTime
)
RETURNS DateTime
AS
BEGIN
DECLARE @Result DateTime
SELECT @Result = DATEADD(wk,DATEDIFF(wk,0,@d),0) 
RETURN @Result
END
GO



-- =============================================
-- Author: Arthur Fuller
-- Create date: 2012-05-16
-- Description: Returns end of week
-- Notes: Assumes week runs from Monday to Sunday
-- =============================================
CREATE FUNCTION [dbo].[EOW] 
(
@d DateTime
)
RETURNS DateTime
AS
BEGIN
DECLARE @Result DateTime
SELECT @Result = DATEADD(wk,DATEDIFF(wk,0,@d),6)
RETURN @Result
END
GO

A couple of notes:
You could declare a default for the parameter, such as GetDate().
You could declare a second parameter to flag whether the week begins on Sunday or Monday. I didn't bother because I'm assuming that whichever it is, the setting applies for the entire database
Feel free to use them anytime you have a similar need.



Thursday 3 May 2012

Google vs. Oracle

This case threatens to ruin the software business as we know it. In brief, Oracle has taken the position that Application Programming Interfaces (APIs) can be patented. Should the court decide in Oracle's favour, then numerous companies are liable for infringement, and this has very little to do with the war between Google and Oracle.

It's time to pause and take a deep breath here, and to realize what is at stake. The first contention, already dismissed, is that programming languages cannot be patented or copyrighted. Let us assume that this one is filed in history and is cannot be reversed. Let's move on to the next chapter in this sordid adventure.

First of all, let us observe only the specifics: this case is about Java APIs, and the back story is that Oracle acquired Sun and therefore decided to play hardball with not only Google (however, that is the firm with deep pockets), but every other firm that uses Java APIs.

Suppose that APIs can be patented or at least copyrighted. To name just a few potential victims of this supposition, here is a short list, which I am sure is way longer:

C++
Objective-C
IronPython
IronRuby 
JRuby 
Jython
Mono
PyPy


Now where do I come in, as a high-level developer incapable of writing a programming language? I use APIs all the time, about 90% from Microsoft but a few from the languages previously mentioned, on the Linux platform. I write apps for clients and they are relatively happy with them, but how the heck can I be expected to pay for using APIs? 


There has to be a middle place here; I'm not sure where it is, but let's suppose that it lies in changing all the class and method names very slightly, and I guess we should also change all the variable names, just to be safe. Now that I think about this, I guess this could also be done with a smart text editor. And what have we accomplished by doing this? Nothing. But if that steers us clear of the lawyers. 


A.