Preston L. Bannister { random memes }

2007.05.27

sister & brother

Filed under: Humor, Images — Preston @ 2:27 pm

Aside from the usual sibling friction, they do get along amazingly well.

2007.05.26

Impostor outwits Stanford

Filed under: Humor — Preston @ 2:18 pm

O.C. impostor outwits Stanford
“Personally, I don’t feel safe now that Stanford allowed this to happen and that they’re not doing anything to ensure the safety of their students,” Zhou said. “I think something’s definitely wrong with the system if this could happen.”

Yep. I am sure that 18 year old Asian females that really, really want to go to Stanford are a threat. Scary.

2007.05.17

Semantics, AI, and the Web

Filed under: Software, Web, html@w3c — Preston @ 7:32 pm

On the never-ending river of discussion in the W3C HTML Working Group, there are bits of fuzzy and malformed notions floating by that I hope – somehow – we can clean up. In particular the distinction between “Semantics” in the human sense and “semantics” as used (or misused) within some very shallow and limited application-specific domain – this is not generally clear.

The expertise within the working group is quite, er, varied – so the lack of a common vocabulary is to be expected.

From the web there are roughly three sorts of Semantics that can be deduced.

  1. What meaning can be derived from reading present-day web content.
  2. What meaning is explicitly declared in existing and future web content.
  3. Meaning attached in cooperation between human authors and automated agents.

Humans are relatively good at (1), given sufficient domain-specific knowledge relevant to topic at hand. Computers are less effective, as the software just does not (yet) exist to approach human-level understanding. This is a topic worth continuing research, but the time-line between now and anything like complete results is probably decades.

Without doubt there are folk who believe (2) is a viable option (it seems to go with a specific personality type). In reality, outside a few noble gardens of well-organized content, the vast majority of content will remain without useful explicit organization.

Given that (1) is hard, and (2) is unlikely, can we find a third feasible choice?

While we may be a long ways from (1), that is not the same as saying there is no useful output from decades of AI research. Where asking your average web author to classify content within a global deep network of meaning is absurd, asking a small set of “is A like B” questions could be enough to bridge the gap.

There is an array of pragmatic considerations. There has to be one agent asking the questions, not one from every wannabe search engine. Linkage might be explicitly declared in content by the author, but more often is going to be via a look-aside through some shared pool. The conceptual linkage may not have a human assigned name, derived instead from “is A like B” answers. The deep knowledge structures built over time may change, and must be able to change without involving the human authors.

At the end, the question comes to:
Is there anything useful the AI community has to say on the subject of Semantics that is relevant to HTML authoring?

Giuliani on freedom and authority

Filed under: Politics — Preston @ 7:31 pm

Giuliani’s scary love of authority
“We look upon authority too often and focus over and over again, for 30 or 40 or 50 years, as if there is something wrong with authority. We see only the oppressive side of authority. Maybe it comes out of our history and our background. What we don’t see is that freedom is not a concept in which people can do anything they want, be anything they can be. Freedom is about authority. Freedom is about the willingness of every single human being to cede to lawful authority a great deal of discretion about what you do.

The above does not exactly match up with my notion of “freedom”. Checking the Wikipedia page on Freedom comes up with a list of types:

The concept of political freedom is closely allied with the concepts of civil liberties and human rights. Most democratic societies are professedly characterized by various freedoms which are afforded the legal protection of the state. Some of these freedoms may include (in alphabetical order):

  • Freedom of assembly
  • Freedom of association
  • Freedom to bear arms
  • Freedom of education
  • Freedom of movement (or travel)
  • Freedom of the press
  • Freedom of religion (or belief)
  • Freedom of speech
  • Freedom of thought
  • Intellectual freedom
  • Sexual freedom

Perhaps Giuliani could start a new topic on “Freedom to submit to authority”. Then again, asking a politician about philosophy may be about as useful as asking an actor about politics.

2007.05.14

Microsoft’s last grasp

Filed under: Software — Preston @ 4:50 pm

In so many ways the timing of this move seems to be … unsurprising.

Microsoft claims software like Linux violates its patents – May 28, 2007
(Article actually placed online May 14 2007: 5:54 AM EDT).

First, the similar gambit of litigating indirectly through SCO is throughly dead. Second, the approach of clamping down on piracy and ratcheting up prices is not working out as well as Steve Ballmer might have hoped. Third, last week the Supreme Count handed down decisions that seem likely to tremendously devalue software patents.

No doubt the Microsoft lawyers are warning that they have to move now to get the most – or any – value out of software patents they presently own. Likely they have learned from the SCO experience, and the violations claimed are real. The Patent Office granted software patents by the truck load for trivial “inventions”. So much so that every significant piece software is likely to violate many patents. Of course, the problem with this approach is that Microsoft’s software is also certain to violate an insane number of patents.

Will Microsoft threaten or actually litigate? Take this as a measure of sanity for Microsoft upper management. Threats are cheap, and have at least some (if not much) payback. Litigation is incredibly dangerous for Microsoft, given that Microsoft too is vulnerable to claims of patent violation. Perhaps the Microsoft lawyers are counting on the eventual devaluing of software patents to offer a no-lose worst case scenario.

There may be a path for Microsoft out of this, but one that Ballmer may not be able to see.

The current strategy is to explore the high end of the price curve – more money for less value – which requires clamping down on piracy, which in turn means rude treatment of customers. In the long term this is a boon to Microsoft’s competitors, as customers are motivated to look at alternatives. Screwing your customers is a very risky strategy.

The alternative is explore the low end of the price curve, and how to offer the greatest value to the customer.

The opportunity is plain. Instead of a new version of Windows every few years, release a new version every year (a few months prior to Xmas, likely). Any new features ready at that time will ship – or wait until the next year. This predictable schedule is good for retailers, and easy for customers to understand.

Ever plug in a new piece of hardware, and have trouble getting it to work? Windows offers to look for a driver (with options meaningless to most users) … then usually fails (duh). This is not a service to the customer. Windows can ship with all the current most-used drivers, and with an internet connection should be able to find almost anything. To the customer this means you always get the best available drivers – and things just work.

In fact, it might make sense to release more often – say every six months. While changes to Windows itself are better left to less often, there are any number of items that are worth more frequent update – security patches, new drivers, virus signatures, malware removers, etc. What Microsoft does (in this model) is look for every possible way that update can improve the way the customer’s computer works.

The model from the customer’s point of view is simple. Once a year (or more often) you buy the current update to Windows. Pop in the disk, and an hour or so later you have a few new goodies and a better running system.

Pricing is tricky. Say the yearly update is $40 and the six month update is $20. Both are full unrestricted versions of Windows. At those prices the customer is going to be a lot less interested in (possibly risky) pirated versions of Windows – so Microsoft is going to make a lot more sales. Folk who can afford to will probably buy both, just to be sure they have all the latest. Even folk short on money can afford the $20 update (can you see the market for pirated software imploding?). Low prices, frequent updates, and regular positive experiences all build customer goodwill – which makes inroads from competitors very unlikely.

My experience with folk like Ballmer suggests that by their very nature, they cannot see this path, even when it is placed in front of them.

2007.05.12

Are political parties the problem?

Filed under: Politics — Preston @ 9:45 am

Signed up on the mailing list for the local (Orange County, California) Republican Party. Looking for some way to make a positive difference. Mailings from the Party offer:

  • Opportunities to meet and donate money to current and recently serving politicians. More money is better. Wear a suit.
  • Opportunities to work as free labor in service to someone else’s cause.
  • Opportunities to back an existing cause, chosen by someone else.

So far it seems – as an individual voter – the organization serves no useful purpose. Not a word about who or how the causes are chosen.

Reading the local political weblogs, I see a lot of:

  • The person under discussion is in the other political party, so they must be bad.
  • The person under discussion is in the same political party, so they must be ok.
  • The item under discussion was backed by someone of the other political party, so it must bad.
  • …. etc. There are the odd exceptions, presented as exceptions.

Note that when politics becomes really local, political parties tend to disappear.

I voted for a member for the local school board, because I’d met her at local PTA and Boy Scout meetings, and thought she would do a good job. Don’t remember if her political party membership was ever mentioned.

Do you know the party membership of members of your local city council? Did you vote for them mostly on issues, or mostly on their party membership? My bet is that party membership matters more in larger cities, and much less in smaller. When you know more about the individual and where they stand on local issues, then party membership matters less.

This ties in with a prior observation, that bad things seem to happen in politics when representation becomes more remote. Perhaps the existence of political parties are a symptom of the underlying problem. When you know a lot more about the issues in question, and the (local) guy you are voting for – political parties just do not matter very much.

How remote is too remote? The city of Santa Ana, with a population of about 380,000 (ignoring uncounted illegal immigrants), offers one example. Political party seems to matter rather a lot. With seven city council members, that works out to about 54,000 citizens (or roughly 18,000 active voters) per representative.

The nearby city of Lake Forest has a population of about 59,000, and a five member city council, which works out to about 12,000 citizens (or roughly 6,000 active voters) per representative. Local issues seem to be dominant, with political party affiliation almost invisible.

Is this enough to bracket the problem? Is one representative per 6,000 active voters workable, and one representative per 18,000 active voters too remote?

2007.05.05

Programming for the web – Javascript

Filed under: Javascript, Software, Web — Preston @ 1:23 pm

If you are going to write web applications, you are going to learn Javascript.

In the early web browsers, Javascript was a bit underdone, and caused some problems with security. Entire organizations chose to disallow the use of Javascript in web browsers – and for good reason. In that time frame, when designing a web application, you had to allow for browsers in which Javascript was disabled. That time is gone. Many web applications now require the use of Javascript, and even more will in the future. From this point forward, using a browser with Javascript disabled will be increasingly impractical.

As a side-effect of history, most Javascript examples offered in books and on the web are very badly written. Javascript is a object-oriented language, but nothing like C++ or Java. Want to create an object in Javascript?

  function makeCounter(by) { var n = 0; return { next: function() { n += by; return n; } }; }
  var counter = makeCounter(2);

The variable counter now refers to a unique one-of-a-kind object, and returns a new number each time counter.next() is called. Note there is no declared class, and no need for the new operator. Note the use of a closure. This is Javascript used to full advantage.

Closures give you the leverage you need to greatly simplify you code – which is exactly what we need. The Javascript code attached to a web page needs to be compact, as the code is downloaded and compiled each time the web page is loaded.

Learning to use Javascript is not an option when learning to program web applications. A browser without Javascript is not a viable future option.

HTML at the W3C

Filed under: Software, Web, html@w3c — Preston @ 12:35 pm

A few weeks back I signed up for the new W3C working group for what will most likely be called HTML 5. As a change from past W3C practice, this working group has relatively open membership, and the current membership is well past 300. At first the flood of voices on the mailing list was a bit overwhelming. Started picking out “voices” after a bit – sets of belief based on particular points of view.

There does seem to be some measure of convergence. Though I am not at all sure that consensus derived from some sort of average of the viewpoints offered is going to yield an especially good result. Compromise is not necessarily a good design principle.

Next Page »