What does it mean?

April 23, 2004


In Israel, the weekend is Friday and Saturday. In general I won’t be posting on weekends. (If you are in a different time zone you will experience this slightly differently.) See you Sunday!

Posted by David Boxenhorn at 07:55 AM  Permalink | Comments (0)
Trackback URL: http://blog2.mu.nu/cgi/trackback.cgi/15177

April 22, 2004

Bill de hÓra's name

Bill de hÓra answers my question in his blog, but it takes a long time before I get the answer I was looking for from Jon Hanna:

Irish orthography distinguishes between letters that are always part of a word and letters that are part of a word mutating depending on how it's used. The word is being written as if it were an irish word "Óra" which is mutated when following "de" to "de hÓra" (in all lower-case it would be "de h-óra", and if one were using a Gaelic like those at http://www.evertype.com/celtscript/csmain.html then it would be "de h-Óra" in that case as well). The distinction can be significant, "ár nAthair" means "our Father", "ár Nathair" means "our Snake", the lower-case difference between "ár n-athair" and "ár nathair" making this a bit clearer.

The whole comment trail is really interesting, though. Take a look.

Posted by David Boxenhorn at 07:53 PM  Permalink | Comments (0)
Trackback URL: http://blog2.mu.nu/cgi/trackback.cgi/25883

Wednesday was poetry day

Annika says that Wednesday is poetry day:

i'm going to try to make Wednesday poetry day here on annika's journal. A great way to start is with my favorite male poet, William Carlos Williams

Well, it’s Thursday already, but in the spirit of yesterday I’ll post one of my own poems.

If I could dwell within a poem
Timeless beauty my world
Curling path turning inward
Disappearing into the mist

If I could dwell without a poem
Cast about by the winds
Tossed on the byways of life
Striving for the unattainable

But I do not wish to live that which is not life
Indifference, my refuge, is my adversary
So I am left, like a cup without a saucer
With no place to rest

Posted by David Boxenhorn at 01:12 PM  Permalink | Comments (0)
Trackback URL: http://blog2.mu.nu/cgi/trackback.cgi/25847

Objects and Services - Nouns and Verbs

Bill de hÓra talks about the use of Objects and Services in distributed computing. He comes down clearly in favor of services, and against objects:

You see, when it comes to distributed computing, I think all object oriention does is obscure matters. We end up talking about transactions, parameters, references, interfaces, when we should be talking about messages, state, names, protocols. And if that doesn't fit with object thinking, so much the worse for it - distribution and decentralization is becoming the norm.

I was confused by what he says; there was something that I wasn’t getting. Clearly, it was an impedance mismatch caused by different worldviews – mine is inextricably linked to the product I’ve been working on, which nobody else knows about yet.

You see, the world is made of objects and services: nouns and verbs. Being and doing. There’s no getting around it. If you want to write programs that do something in the real world, you have to somehow model this, i.e. represent in your program the concepts that you want to manipulate. The only time that you can ignore objects is when you only care about a single one. For example, a stock ticker doesn’t need to explicitly deal with objects because it only cares about a single stock. Or you can consider the whole stock market to be a single object and support a service (verb) that says for example, “Get me the value of PMTC”.

But in complex systems, it simplifies things tremendously if you can model the world as many objects. This is because not all verbs apply to all objects – you can deposit money to your bank account but not to the stock market. Coincidentally, modeling the world as many objects (nouns), each with its own set of applicable services (verbs) corresponds to the way the world really is – no wonder it makes things easy!

Some of you may be wondering: what about adjectives? The real world has adjectives too! Adjectives are known in computer jargon as state. Adjectives describe objects – objects have state. For example: “The brown-eyed boy” or “The boy has brown eyes”. In a monolithic system is possible to directly access (look at) the state of an object. In a distributed system all you can do is ask for it: “Hey boy! What color are your eyes?”. In other words, it is possible to replace adjectives with verbs. Instead of saying, “The brown-eyed boy” you can say, “The boy whose eyes are brown”. In an object-oriented system that doesn’t allow direct access of state, “to be” is a verb, just link in English. (Not true in all languages.)

Getting back to distributed programming, there are two common paradigms for distributed systems: Web Services and REST. (The terminology is somewhat inappropriate; Web Services is a protocol and REST is an architecture, but so be it.) The REST model is what you are all familiar with as the World Wide Web. In this paradigm, you can conceptualize the system as a set of documents, identified by URL. You can GET the document i.e. view it in your browser. (When you click on a link you are doing GET.) And you can POST to the document e.g. when you fill out a form and press “send”.

It is not often described this way, but the REST architecture is object-oriented. The object is identified by its URL, it has a state (the document that you get with GET), and it supports a verbs through POST that are specified per object. (Yes, I know that technically it supports only one verb, POST, but in effect programmers use some of the data that are sent as verbs, others as nouns. I think that good programmers formalize this to themselves and know clearly which are which. In natural languages the same thing happens: In English you can shower, but usually you take a shower. In Hebrew, you don’t say, “I am skiing” you say, “I am doing ski”. Perhaps it would be clearer if we used IS and DO instead of GET and POST.)

Since Web Services is a protocol, technically you can use it to implement a REST architecture, but usually what is meant by this term is that instead of using many URLs in your system to represent many documents (objects), you instead use a small number of URLs to represent verbs of a “service”. In other words, you have to think of a URL as a single huge object – the service – a document so complex that you never what to GET it.

This has been a very long introduction (I didn’t plan it this way) to my attempt at resolving the my impedance mismatch with Bill. He says:

You see, when it comes to distributed computing, I think all object oriention does is obscure matters. We end up talking about transactions, parameters, references, interfaces, when we should be talking about messages, state, names, protocols. And if that doesn't fit with object thinking, so much the worse for it - distribution and decentralization is becoming the norm.

In REST we talk about messages (GET, POST), state (the document), names (the URL) and protocols (HTTP). So what’s his problem? I think he must be talking about session – and that’s another whole kettle of fish.

A session is like a conversation. Computers, like people, have trouble carrying out more than one conversion at time. However, unlike people, they can be programmed to do so. When you use Google, you don’t have a conversation. You ask one question, and get one answer. Your next question has nothing to do with your previous question (except perhaps in your own mind, but Google doesn’t have to know about that). On the other hand, when you make a purchase from Amazon, you do have a conversation. First you say, “I want to purchase the items in my shopping cart.” Then you say, “This is how I want them sent.” And so on, until finally Amazon gives you the receipt. While Amazon is doing this with you, it is having similar conversations with thousands of other people. It could be a disaster if your session gets mixed up with somebody else’s session (things like this have happened). When you get into multiparty conversations, things can get incredibly complex. I think that what Bill is saying is that instead of trying to keep track of sessions, to send all relevant information with each action, so that all interactions can be like your use of Google.

(Of course, my product solves this problem too!)

Bill: Is that right? (I’m sure it’s not, this is my first try…).

BTW, Bill, your blog has a bug which I assume only appears in my browser (IE 5.00.3700.1000) otherwise you would have fixed it. When I click on a link I loose the right margin, and as a consequence the words jump around. I have the same bug in my blog. I see that you’re also using Moveable Type, so the problem might be with the way they expand one of their tags. If you fix it, can you let me know what the problem is? If I find the fix, I’ll let you know - thanks.

Posted by David Boxenhorn at 12:47 PM  Permalink | Comments (3)
Trackback URL: http://blog2.mu.nu/cgi/trackback.cgi/25843

The right of self-defense

Amritas quotes JFK (Kennedy, that is):

Let us never negotiate out of fear. But let us never fear to negotiate.

Let both sides explore what problems unite us instead of belaboring those problems which divide us.

Let both sides ...

Let both sides ...

Let both sides ...

And responds:

Let our side fight back. I don't care "what problems unite" us with our enemies. I doubt they care. I agree with Hud:

If there's one thing bad people understand, it's force.

Use it!

I say: do you really think that the US should have attacked the USSR?

The problem was that JFK couldn't come right out and say, "The USSR is too strong, therefore we should negotiate with them, even though they are our enemy".

And this is the result of a strange lacuna in Western morality - it doesn't really support the right of self-defense. Rather, self-defense is treated as an "understandable weakness" whereas a truly moral person is pacifist. (Traditional Western morality has the same approach toward sex.)

We can't say, "This person/state/organization is our enemy because they are attacking us".

We have to say, "This person/state/organization is our enemy because they are evil". (Of course, they may also be evil.)

And once we say that they are evil, how can we negotiate with them? If we are negotiating with them then they must be "human beings just like us".

This lack of moral clarity results in all kinds of strange behavior. We can't punish a criminal because he is attacking us, we have to punish him because he deserves it. And if he has an anti-social worldview because of a traumatic upbringing, does he deserve to be punished?

To me, this attitude is itself immoral. It is an attempt by a human being to render Divine justice. Who are we to even attempt to decide what a person really deserves? It's not our job to punish criminals. It's our job to protect ourselves! Ironically, once we get this straight in our minds, we can then let ourselves sympathize with the circumstances of even the worst criminal.

Judaism in non-Western in this regard - self-defense is considered to be an obligation, pacifism is not even a moral option. (Regarding sex, it is considered virtuous - when in the context of marriage.)

Posted by David Boxenhorn at 12:00 AM  Permalink | Comments (0)
Trackback URL: http://blog2.mu.nu/cgi/trackback.cgi/25804

April 21, 2004

Ad hoc integration means the free flow of data

Bill de hÓra brings up another problem that has the same answer:

The free flow of data across applications just isn't happening today. It is essential, and I think inevitable that the way we manage our information changes, given the way we work and live.

Of course, my solution solves this problem too.

Amritas: What kind of name is Bill de hÓra?

Posted by David Boxenhorn at 11:26 PM  Permalink | Comments (0)
Trackback URL: http://blog2.mu.nu/cgi/trackback.cgi/25802

Trackback from Bill de hÓra, What's in a name?:
Asked on David Boxenhorn's blog: Amritas: What kind of name is Bill de hÓra? Not sure. O'Hora is probably the same name....

Email is Application Integration

Jon Udell talks about ending email forgery (which would be a BIG step against spam):

In our July 18 feature, Canning Spam we mentioned an Internet draft proposal from Hadmut Danisch, called RMX (Reverse Mail eXchange). It was an elaboration of an earlier proposal by Paul Vixie, architect of BIND (Berkeley Internet Name Domain), who in turn attributes the idea to Jim Miller of JCM Consulting. The idea is elegantly simple. In addition to publishing the MX (Mail Exchange) DNS records that identify inbound mail hosts, an organization also publishes reverse MX records that identify outbound hosts. A receiving server queries the DNS to find out if the sending host is so authorized. The name yahoo.com is easy to forge, but the IP addresses of Yahoo's outbound servers are not.

My solution is better. The secret to integrating on-line is to enable ad-hoc integration of diverse sources over the Internet. This by-the-way will also end spam: email is just another application integration problem.

However, this will not solve Steven Den Beste's problem. His problem isn't spam. His problem is that he wants things both ways: He wants to publicize his email so that anyone can write to him - but only if he wants them to. In this life, you have to take the bad with the good.

Posted by David Boxenhorn at 10:31 PM  Permalink | Comments (0)
Trackback URL: http://blog2.mu.nu/cgi/trackback.cgi/25795

Integrating On Line

Phil Wainewright predicts the end of SAP. He says:

Web services constitute the first threat, or more properly, the ability to assemble applications by linking together separate elements of software functionality using SOA. The article quotes Shai Agassi discussing NetWeaver as SAP's future salvation, but it's just as likely to become its nemesis: "Because NetWeaver is open," points out analyst Joshua Greenbaum, "there is no customer lock-in at all."

Software rental, as practised by the likes of salesforce.com, is billed as the other threat, although the term is a misnomer. If it were simply about changing the way customers pay for their software, SAP would have nothing to worry about at all. The true nature of the threat from online software providers is that what they rent out is not the software itself, but the functionality that it provides: they put business automation on tap. This goes to the heart of SAP's greatest vulnerability, identified in the article: "its customers' longstanding complaint: that SAP's software is difficult to upgrade and modify quickly."

My question is: If a business (or a person) uses multiple on-line services, how can they be integrated? For example, if a business uses CRM-Online and HRM-Online (these are made-up names, my apologies if someone is using them), it might have a business rule that says: When I fire a salesman in HRM-Online, I have to reassign his clients in CRM-Online. How does he do this?

Before you say, "Web Services" think of this: That would mean that the business would have to maintain its own IT department, along with computers, software, etc. Depending on whom you ask, integration is anywhere between 40% to 60% of IT costs. So how much are you gaining in the end? Yes, it is something. But what you really want is to have no in-house IT. You want to be able to integrate all your on-line services as if they were on your own computer, but without the headache of them actually being there.

I have the solution to this problem. I'm working to make it real right now.

Posted by David Boxenhorn at 10:57 AM  Permalink | Comments (0)
Trackback URL: http://blog2.mu.nu/cgi/trackback.cgi/25728

Trackback from Waldorf & Wepper, Beware of Mirage Software:
Did no one but me ever experienced something like the following? Your company is looking for some useful tools or whatever kind of software. A collegue starts to search using the Web and, hurray he finds a lot of software vendors that offer exactly th...


Sarah has linked to me. Sarah says:

I really like how he came up with the name for it.

I like it too! But I came up with an even better name than that: Psychopundit. That's a name that would really catch people's eyes! But it just wasn't me. So, as of this posting, the name's still available.

To any reader who grabs it, all I ask for in return is a hat tip.

By the way, Sarah, do you know that your name in Hebrew means Princess? It's also used for top government officers. Joseph was a sar to Pharoh (sarah is the feminine form of sar). Nowadays, it's used where in English we would use minister, as in Foreign Minister - Sarat Hahus in Hebrew (if the foreign minister is a woman). Final -h becomes -t in this context, when the word stands alone it's sarah.

Update: Sorry Sarah, I didn't mean to associate you with Pychopundit.

Posted by David Boxenhorn at 10:05 AM  Permalink | Comments (2)
Trackback URL: http://blog2.mu.nu/cgi/trackback.cgi/25726

Qesher Rishon

Amritas has linked to me. Amritas says:

I think the triconsonantal root of r-'-sh-w-n is r-'-sh as in rosh 'head' (as in r-'-sh h-sh-n-h: rosh ha-shanah, lit. 'head the-year'). Comics fans will recognize this root from the name of the Batman villain Ra's Al Ghul, lit. 'head the ghoul'.

It is! Arabic Ra's is the same as Hebrew Rosh. S in Arabic corresponds consistently to SH in Hebrew and vice versa. How did this happen? How can two letters switch places? The answer is that Hebrew has two S sounds: sin (שׂ) and samekh (ס), as well as an SH sound: shin (שׁ). What happened was this: Proto-Semitic sin, shin, and samekh were retained in Hebrew, but in Arabic shin became samekh (written with sin) and sin became shin (there is no samekh in Arabic). The proof is that Hebrew samekh corresponds to Arabic sin, not shin!

Here is another example of rosh: Rosh Hodesh (Head of the Month) - the first day of the month. Today is Rosh Hodesh Iyar - the first day of the month of Iyar.

Can you guess what Qesher Rishon means?

Continue reading "Qesher Rishon"

Posted by David Boxenhorn at 09:28 AM  Permalink | Comments (0)
Trackback URL: http://blog2.mu.nu/cgi/trackback.cgi/25724

April 20, 2004

Amritas Readers

Amritas has a new readers' page. Am I happy or sad that he started it only once I had my own blog? If he had had it only a few days earlier, it's likely that I wouldn't be blogging now. So I guess I'm happy...

Posted by David Boxenhorn at 10:48 AM  Permalink | Comments (0)
Trackback URL: http://blog2.mu.nu/cgi/trackback.cgi/25579

You are your worldview

Bret Stephens of the Jerusalem post has this to say about the importance of worldview with respect to the 9-11 Commission:

The difference September 11 made was not that it increased the store of knowledge, but that increased the store of experience. Americans knew for themselves what terrorists could do. This is the kind of knowledge no wire dispatch from Jerusalem or Belfast, and no Presidential Daily Briefing, can adequately impart. The only thing that could have moved Americans to be better prepared for September 11 was September 11.

In my words: More than anything else, more than being American, or African-American, or Irish-American, more than being short or tall, more than being educated or uneducated, people are their worldview. People will risk their lives, and the lives of their children rather than give up their worldview - for good or ill. Though a person's worldview naturally evolves over time, a sudden change is a traumatic event; in a very real sense it is like dying. Conversely, it is usually only a traumatic event like 9-11 that can produce a sudden change in worldview.

Posted by David Boxenhorn at 09:59 AM  Permalink | Comments (0)
Trackback URL: http://blog2.mu.nu/cgi/trackback.cgi/25577

Chicken Cow Lion Fox

Well, it looks like I'm not the only one in the blogosphere who quotes Amritas and Pirqey Avot.

Monkey! Blog! notices the similarity between this Chinese saying:

Rather be chicken head, not be cow rear

And this quote from Pirqey Avot:

Be the tail of lions and don't be the head of foxes - (havey zanav la'arayot v`al t'hi rosh lashu`alim)

Unfortunately, he misses the point that their meanings are opposite.

Posted by David Boxenhorn at 03:22 AM  Permalink | Comments (1)
Trackback URL: http://blog2.mu.nu/cgi/trackback.cgi/25545

Rishon Rishon

So what is Rishon Rishon? It comes from the following:

שבעה דברים בגולם ושבעה בחכם
אינו מדבר לפני מי שגדול ממנו בחכמה ובמניין
ואינו נכנס לתוך דברי חברו
ואינו נבהל להשיב
שואל כעניין ומשיב כהלכה
ואומר על ראשון ראשון ועל אחרון אחרון
ועל מה שלא שמע אומר לא שמעתי
ומודה על האמת
וחילופיהן בגולם

Shiv`a d'varim bagolem v'shiv`a behakham
Eyno m'daber lifney mi shegadol mimenu b'hokhma uvminyan
V'eyno nikhnas l'tokh divrey havero
V'eyno nivhal l'hashiv
Sho'el k`inyan umeshiv kahalakha
V'omer `al rishon rishon v`al aharon aharon
V`al ma shelo shama` omer lo shama`ti
Umode `al ha'emet
V'hilufeyhen bagolem

There are seven characteristics of the ignoramus and seven of the wise man
A wise man
Doesn't speak before one who is greater than he in wisdom or in years
And doesn't interrupt the words of his fellow man
And isn't hasty to answer
He asks to the point and he answers accordingly
And says first things first and last things last
And about what he doesn't know he says I don't know
And he admits the truth
And their opposites for the ignoramus

Talmud, Pirqey Avot 5:7

Can you figure out what Rishon Rishon means?

Continue reading "Rishon Rishon"

Posted by David Boxenhorn at 02:44 AM  Permalink | Comments (4)
Trackback URL: http://blog2.mu.nu/cgi/trackback.cgi/25537

Trackback from trying to grok, WISE MAN:
A buddy of Amritas' started a new mu.nu blog called Rishon Rishon, and I really like how he came up with the name for it....

The beginning

And that's how it all began.

The truth is, I'd been thinking about blogging for some time. My shy and private nature was at war with my desire to communicate. With a little nudging from Amritas, my desire to communicate won.

Besides, I was having a problem: I kept seeing things that I wanted to comment on, and I wanted a less intrusive way to do it than sending email. (This is a particular problem for Steven Den Beste!) So it was time to bite the bullet and DO IT! Amritas gave me a letter of recommendation to forward to Pixy Misa, and the King of Munuviana was kind enough to let me in.

The rest will be history!

Posted by David Boxenhorn at 01:43 AM  Permalink | Comments (0)
Trackback URL: http://blog2.mu.nu/cgi/trackback.cgi/25528