"I have a mind like a steel... uh... thingy." Patrick Logan's weblog.

Search This Blog

Saturday, May 08, 2004

Simplicity vs. Rigidity

So JDO is a mess (original report), certainly EJB is a mess (hence JDO), but let's face it, the root cause is the language itself.

First, JDOQL is an abomination. (There I said it.) There are four standard ways of expressing object-oriented queries: query language, query by criteria, query by example and native SQL. JDOQL is none of these.
None of these is going to be very pleasing in a rigid language like Java.

In contrast, consider SchemeQL, or HaskellDB, or ROE for Smalltalk.

The difference between these and options for Java (or C# or VB.Net or C++ or Ada or Pascal or C or...)? The difference is in the simplicity of the root language (and note these are three very different languages, syntactically) as opposed to the rigidity. (Related note.)

Friday, May 07, 2004

The Land Institute

Wes Jackson and the Land Institute in Kansas is the last organization I'll promote tonight. Investments in any of these: Solar Living Institute, Ocean Arks International, or the Land Institute are more permanent investments than could be made anywhere on Wall Street.

True liberty and security requires independence and self-reliability. I found out about the Land Institute's remarkable work to transform agriculture from reading Wendell Berry, who understands the connections we'll need to "place" more than any other poet, writer, or farmer.

Ocean Arks

Ocean Arks International is another organization I followed closely 25 years ago when I was an architecture student, real architecture not software.

If humanity survives the next 100 years with any amount of comfort and health, I will bet many of the ideas will be traceable back to John and Nancy Todd.

They have a Yahoo Group too.

Solar Living

The Solar Living Institute 2004 workshops, includes some telecourses.

Organizations like this are today's pioneers, and we'll be thanking them desperately in 10-20 years.

It's that time again

Here's an essay on XAML. But still, as far as I can tell, XAML is nothing more than a *really* bad implementation of Lisp macros.

Please use the *web* ??

OK, thanks for this presentation. But why can't you just make it a link to a file such that *any* standard browser can grab it?


It's about time

Certainly one can feel the utter futility of building business processes using ACID transactions as the core building block. That's a strike against EJB at a fundamental level.

The interesting thing is that reasoning about time can be extremely complex however is essential if you want to reason about interaction.

I like discussions like these coming from the Manageability blog.

If you have really simple compensation requirements then congratulations! You are in a minority in my experience.

Why is this so hard?

MS has even forgotten what made Basic productive

Very good point. I have never been a fan of VB (having used it only a few times helping people with course work). But early on I did have great respect for the operating model that emerged among VB developers and "component" developers.

VB.Net is a greater travesty than anything related to Java-like languages. VB.Net is nothing short of a surrender of an emerging ideal of software development. (The vehicles needed improvement, but not surrender.)

That original market today is unfulfilled and open for innovation, from what I can see (or can't).

ReST Tutorial

I can't recall if I've seen this before, it's a straightforward introduction to ReST.


From Mark Baker in the SOA Yahoo Group.

Finally, reality makes an appearance on-stage

Republicans' exasperation with the administration and the president himself was evident in a private meeting of Republican Senate committee chairmen this week in Senate Majority Leader Bill Frist's office. Mr. Frist at one point said he'd like to sit down with Mr. Bush and ask which two or three people in the administration could tell him what's really going on with Iraq, according to one person in the room. "I don't think he knows who could do that," replied Senate Foreign Relations Chairman Richard Lugar.

These are the Republicans dealing with their own administration.

Thursday, May 06, 2004

Speech Acts, Combinators, and ReST: Oh My!

I wish I had the wherewithall to write so much real content...

Another post from Manageability, this time on a speech act approach to coordination, combinators, and ReST.

Divergence and Synchrony

I'm all of a sudden thinking back a few years, to Divergence and Synchrony (PDF), some interesting work from Paul Dourish.

It's one of those works that just pops up in the mind after being tucked away somewhere, so long.

Why Pessimistic Transactions Aren't Practical

On the Manageability blog... "Because it's complex enough."

I love it when I like some item so much I don't have anything more to add.


Interesting distributed systems research at Cornell.

The last point about a project named Astrolabe caught my eye for a nostalgic reason. Seventeen years ago (oh my...) while at Boeing I wrote a small Scheme system that I called Astrolabe.

There was nothing remarkable about the implementation, but I always thought the name was good for surprisingly simple and versataile technology like Scheme, that itself would someday be replaced by far more powerful instruments.

By the way it is pronounced "ass truh labe" rather than "ass troh labe".

On Directories and Databases

A report from Microsoft on Active Directory vs. "Databases" (my quotations).

Kind of shocking that Microsoft claims their database technology is not good for searching or reading data! (Unfortunately this I believe to be generally true about *most* so called "relational" database technology. Most R&D dollars *have* been put into making them writable as opposed to searchable!)

Also pointed out, and I believe true generally, is that database technology is not very good at replication or distribution! (With either loose or strict consistency.)

Aside --- so what does this predict for WinFS? Either WinFS will suck as bad as today's databases or SQL Server will benefit from all the improvements driven by WinFS.

And in a related note from Gregor Holpe on integration styles...

Why did Moore go with a Disney subsidiary?

Hmm. There's no connection between Disney and the subjects of Moore's film, are there? Let's look...

Disney -> Disney World -> Florida -> Jeb Bush -> Saudis

Well, makes sense Disney would refuse to shed a bad light on the governer of Florida. How is it Moore got hooked up with Mirimax, a Disney company?

Wednesday, May 05, 2004

No need for cynicism here

Steele Price writes about the many UI choices we have, including my odds-on favorite for the long-term...

Our User Interfaces need a huge makeover. SVG has finally matured to the point we can start using it in production and it gives us a root standard for Windows, Linux and the Web.

That SOA Religion

Phil Wainewright comes dangerously close to facing reality in this piece on SAP's approach to SOA. The thing is, no one has ever seen, not to mention built, a "pure SOA" enterprise.

One should be as cautious of fanaticism as they are wary of a vendor's intentions.

What makes a good language for embedded systems?

Reasons to scratch your head over embedded Java or C#...

Solving the problems: Increased reliability, low cost, resource constraints. Dynamic software updates in the field. Real-time capabilities. Rapid development cycles. He poses a question: Is embedded Java the solution?

Answer: real-time in java is no solution. They can't get rapid development time with Java. Doesn't support incremental execution. Quote: "I should know, I've been working with it longer than most and made HotSpot". Virtual machine specification is very complicated. Bytecodes are not designed for speed and compactness. Configuratios for embedded systems too big (CLDC, CDC, more..).

The java embedded system is 1 meg rom, 0.5 meg ram. Resilient (Smalltalk) is 128k for both rom and ram usage.

So we can do it better: Use of safe dynamic programming language. Increase productivity is connected to the running embedded device program, provide incremental execution. Provide debugging support in the product with on-the-fly software updates.

In their example they're making speakers that use fire-wire. Here's the catch. Something goes wrong, customer plugs the speaker in to the internet and the company debugs it over the internet, fixing the problem and pushing the answer back in to the speaker straight away.

For mobile phones, you can push out new service applications on to the phones dynamically because the phone is already on a persistent network.

If you don't know Lisp or Smalltalk, learn them now.

Welcome to Iraq, John Negroponte. And welcome back to the public eye!

On our new ambassador in Iraq...

In 1982, Sister Laetitia Bordes met with John Negroponte, then U.S. Ambassador to Honduras. She was on a fact-finding delegation to investigate the 1981 disappearance of 32 Salvadoran "nuns and women of faith," who had fled to Honduras to escape Contra death squads after the assassination of Archbishop Oscar Romero. Bordes, who worked as a nun in El Salvador for nearly ten years, describes the little that was known about their fate: a few months after the women (among them Romero's former secretary) arrived in Honduras, they were "forcibly taken from their living quarters in Tegucigalpa, pushed in to a van and disappeared." Bordes presented this information to Negroponte, but he denied having "any knowledge of the whereabouts of these women. He insisted that the U.S. Embassy did not interfere in the affairs of the Honduran government and it would be to our advantage to discuss the matter with the latter."

Bordes received no answers until 1996, when Negroponte's predecessor to the Honduran ambassadorship, Jack Binns, spoke with the Baltimore Sun. Binns, who had been removed from his post for repeatedly protesting the human rights violations occuring in Honduras, explained "how a group of Salvadorans, among whom were the women [Bordes] had been looking for, were captured on April 22, 1981, and savagely tortured by the DNI, the Honduran Secret Police, before being placed in helicopters of the Salvadoran military. After take off from the airport in Tegucigalpa, the victims were thrown out of the helicopters. They were turned over to the Salvadoran military and their whereabouts are unknown. Binns told the Baltimore Sun that the North American authorities were well aware of what had happened and that it was a grave violation of human rights. But it was seen as part of Ronald Reagan's counterinsurgency policy."

Tuesday, May 04, 2004

Autonomic doesn't mean easy

Autonomic computing, including self-healing systems, won't make the life of IT any easier, at least according to Tom Sheridan, an MIT professor.

I attended a panel yesterday at IBM's TJ Watson Research Center in Yorktown Heights, NY, in which Sheridan joined IBM's Alan Ganek, IBM's vice president of autonomic computing, among others.

During the discussion Sheridan said: "Autonomics makes the human role more difficult."

Sheridan explained that human jobs will be more abstract, and will be conducted on a higher level than they are currently. So they will demand more expertise.

IBM's Ganek agreed that more will be required of IT workers, and added that autonomic computing is designed to increase productivity.

"We're not going to automate everybody out of a job, but we have to pay attention to how we'll transform those jobs," said Paul Maglio, who manages human system research at IBM's Almaden labs.

Arguments for eating organically grown food.

Also organics are labor-intensive, relatively locally grown, and healthier for the labor as well as for the land.

...just being amazed at being able to select a piece of code and run it, without the need for wrapping it within a Main() method in a test app..... anyways. off to hell.

Another from Sean Malloy, learning Smalltalk at home while working with inferior tools.

Love for the Block object.

...the rules engines that James Owen has been writing about, and the FIT framework that Ward Cunningham has created, point toward a radically altered relationship between software makers and software users. It can't happen too soon.

Jon Udell

Putting Methods in System Objects

Creating new methods on Object By Sean Malloy

Being able to define new methods on existing library classes is where Smalltalk gets some of its power (Allowing you to create amazingly expressive code

Here's an example: distance := (100 miles + 224 kilometers) asMillimeters. (Try and do that in C# and have it read like that!).

And remember, the methods you add to Object only have to make sense for your application.

XML not all that it's cracked up to be? (Breaking eggs for omelettes)

The original architectural pillars of Groove were COM, for software extensibility, and XML, for data extensibility. In V3 the internal XML datastore switches over to a binary record-oriented database.

You can't argue with results: after beating his brains out for a couple of years, Jack can finally point to a noticeable speedup in an app that has historically struggled even on modern hardware. The downside? Debugging. It was great to be able to look at an internal Groove transaction and simply be able to read it, Jack says, and now he can't. Hey, you've got to break some eggs to make an omelette.

Maybe COM is to blame or some other implementation flaw. Plenty of binary storage formats are able to be simply inspected. (Jon Udell's interview with the Groove team.)

In the Groove "Files Tool,"... you're shown what looks like a file in a folder, but is actually an encrypted and synchronized Groove object. Double-clicking the file opens it into its default editor, which may (or may not) reveal the fact that the file has been decrypted to your local temporary directory for viewing and editing. Quitting can result in a two-step tango. First the editor asks if you want to save. Then Groove, detecting changes, asks again: "Do you want to save?" It's the classic dilemma of every document manager that hooks File Open and File Save in order to add value... there's just no way to make this seamless.
Hmm. Doesn't editing an Office document in Share Point provide this seamless interface? Does the public Windows API not have these features for any application's Open and Save events? Sigh.

Sunday, May 02, 2004

Two Americas?

Doctors or other health care providers could not be disciplined or sued if they refuse to treat gay patients under legislation passed Wednesday by the Michigan House.

The bill allows health care workers to refuse service to anyone on moral, ethical or religious grounds.

The Republican dominated House passed the measure as dozens of Catholics looked on from the gallery. The Michigan Catholic Conference, which pushed for the bills, hosted a legislative day for Catholics on Wednesday at the state Capitol.

I am seriously beginning to wonder when the violence will break out. I have little doubt it will be from someone claiming to be a Christian.

The Cost/Benefit of Language Features

JavaWorld has a description of upcoming improvements to the Java language.

I can see the benefit. I wonder how much these features cost?


The problem: how do you backup a 40 Gig disk? My solution, buy an 80 Gig disk and copy to it. Nothing else was quite as easy or cheap.

Blog Archive

About Me

Portland, Oregon, United States
I'm usually writing from my favorite location on the planet, the pacific northwest of the u.s. I write for myself only and unless otherwise specified my posts here should not be taken as representing an official position of my employer. Contact me at my gee mail account, username patrickdlogan.