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

Search This Blog

Saturday, December 16, 2006

Em

Alright I've been tagged by Dan Creswell. I just came across this tag thing a few days ago. What to say... I'll be borrowing some ideas from others, so you may recognize the patterns but hopefully not the specific content.

  1. I was a Frank Lloyd Wright fanatic in high school. I was in the school of architecture at The Ohio State University (that's the proper name folks) for a couple of years. This was 1979-1981, on the heels of the energy crisis of the time, and I wanted to build solar houses. The problem was I didn't really know how to think yet and decided to explore other things.
  2. Although I played Oregon Trail on a teletype and pong on a TV, I didn't even know what a computer was until I left the school of architecture in '81. I was searching for something and two friends were CS students and worked at this small company in a house near campus. They worked odd hours and the atmosphere was relaxed, so I thought something must be up.
  3. I attended a very small high school in Ohio in the 1970's. This allowed me to get three varsity letters: football, track, and tennis. My best memory of that time though is writing a report on "The Arms of Krupp" about the international arms trade through the centuries. That kind of took my teachers by surprise.
  4. I was a roadie for a band for a couple of years and ended up meeting and marrying one of the singers. I went on two east coast tours with them. The most interesting place we played was the mall in the Pentagon.
  5. I lean towards "decentralized, worker-owned, market-socialism".
Please to be tagging Ian Cartwright, Mike Herrick, James Robertson, Mark Watson, and Steve Dekorte.

Accountant Wanted

From the San Jose Mercury News (via the Seattle Times)...

In an interview with Microsoft Chief Executive Steve Ballmer a few weeks ago, I asked if he had added up how much money it cost to develop Vista. He laughed, "I can't say I have. It would be impossible to count up. ... I'm sure it's a lot."

If we assume Microsoft's costs per employee are about $200,000 a year, the estimated payroll costs alone for Vista hover around $10 billion.

This is incomprehensible. A CEO has no idea how much his most significant product in six years cost to build.

Then the other incomprehensible "tidbit" is that it cost at least $10 billion USD. And they did not even get a new operating system out of it. The new product is really a face lift and some bug fixes on an aging infrastructure.

In light of this the stock price should be significantly lower. Software companies are difficult to invest in, and MSFT has to be one of the most difficult.

Friday, December 15, 2006

Sign of Success?

Headline: "Nintendo Recalls 3.2 Mil. Wii Wrist Straps"

Well, people are enthusiastic at the least! A sign of success? Mistakes were made, as it were.

We've had no trouble with either of our two controllers. But we will replace them with the stronger straps to be on the safe side.

My kids are going to be thrilled to find the wind storm last night resulted in no school today. Hey, kids: just watch out for those flying controllers on your day off!

Thursday, December 14, 2006

Singly Cellular

Final Update:

This is my final update to this post. I will start a new one on some related topics. This update is just pointing out a new comment below from Brian Oliver of Tangosol.

The comment is fairly lengthy so I will not pull anything out here into a quote. I recommend reading it. There is good technical content I should put into another post.

The one thing I will say here is: my blog will not become a forum for vendors to pick on each other. It's not there yet, although it is walking the line. I simply will not approve your comments if I don't see them contributing to my technical interests.

This is my blog. I have spoken.

:-)

Reading Brian's comment one might get the impression any misunderstandings I have of Tangosol come from a competitor. That is not the case. I have met with Tangosol people in person. Any misunderstandings come from them.

:-)

Just *kidding*!!! Actually I have met with them, and they have a number of questions they're following up on. The misunderstandings are mine alone.

End Final Update

The notion that Jini/Javaspaces and Tangosol Coherence are direct competitors seems to come up fairly often. At least from the Tangosol folks. I think that's because Tangosol and Gigaspaces compete in the scalability market. Gigaspaces sells their non-standard features to the performance-challenged... update-in-place, etc.

But this seems to ignore the Jini part of Jini/Javaspaces as well as most of what a Javaspace would be used for. That gets short-shrift...

If the benefits of an organic model sound familiar, then you're probably already using the world's most innovative distributed system. If you're still struggling with traditional exception-based or recovery-based approaches to distributed systems (e.g. CORBA, JINI, RMI), then you have my deepest sympathy, but it's not too late to switch.
I will ignore the obvious red herrings in CORBA and RMI. But as for Jini...

I would really like to see how Tangosol Coherence lines up against all the things in Jini. Coherence is a distributed/shared data cache. One would have to establish all kinds of conventions to get the cache and its contents to do Jini-like things. Coherence is fairly proprietary as well, but ignore that for now.

Maybe the message is Jini-like things are not necessary. That seems to assume everything you need is in your cluster of Coherence-loaded JVMs. Coherence has some nice features, even for implementing Javaspaces and other standard capabilities above it. But that's not the claim being made over and again. The claim seems to be: you don't need Jini because our clustered cache is better.

Apples and oranges? I'm looking for better answers than that if someone can point me to an in-depth Jini/Javaspaces vs. Coherence comparison.

Update 1: btw there is nothing like getting up in the morning looking forward to working with the people you sit with, and then hearing later in the day how amazed the CIO and all kinds of people are with the team's results. We get to do good stuff that counts, no BS.

Update 2: Dan Creswell comments below, lending to my suspicions...

Right, so if you are under the impression that all you do with Jini/JS is build compute servers/farms, then you might assume this equivalence.

Update 3: Ian Cartwright comments below about conventional and unconventional uses of Jini/Javaspaces. He includes a link to an interesting combination of OSGi and Jini...

Newton makes use of OSGi for wiring up composites within a single JVM and Jini technology for tracking and wiring up dependencies between composites in different JVMs
OSGi is what Eclipse uses to wire independent objects into its JVM. Some folks on the team were looking at that for a related effort.

Update 4: Nati Shalom of Gigaspaces confirms the emerging consensus that Jini and caches complement each other, and a Javaspace can be used as a kind of cache, although for other uses as well. As Dan Creswell wrote somewhere, caches tend to have more reads than writes, while javaspaces (when used for coordination rather than as a cache) tend to have more takes and writes, fewer reads. A quote from Nati's comment...

If you’re building an SOA application, you'll need more then a cache. In fact, a cache gives you almost nothing on that regard. You will need a Service framework, which is what Jini provides. A service framework deals with how you discover, find services, invoke them, make them secure, manage their life cycle, etc.
Another part of his comment refers to the Rio extension to Jini/Javaspaces, an interesting service management framework. All open source under Apache as well. Some of those ESB folks should look at it.

Tuesday, December 12, 2006

XSD -- XML Schema Deterioration

Catching up: Ian Cartwright goes into some concrete examples about XSDs, why they are undesirable, and how to cope with them. He also addresses related serialization problems.

It hardly seems like a year ago, but it is close, when Ian was over here from the UK with Paul Hammant working with a group of us down in sunny California on fun stuff like this.

Fixed That One

Randall Scarberry displays the joys of shared memory concurrency in this article on Java...

At some point while reading this, you've probably wondered about what synchronization issues might be encountered in SMT adaptation. I encountered two with ConcurrentKMeans, both in the nested class ProtoCluster, which is a class K-means uses to track intermediate clustering results. It was clear to me that something was wrong, because ConcurrentKMeans gave results different from BasicKMeans even though it was using the same N, K, and random seed. I ran it several times, occasionally getting an ArrayIndexOutOfBoundsException originating from the ProtoCluster method add(int ndx). Then the obvious dawned on me: multiple threads were calling an unsynchronized method. (Doh!) The exception happened because one worker thread attempted to add a coordinate, while another thread was expanding the array holding the coordinate indices. Simply adding the synchronized modifier to the add(int ndx) method definition fixed the problem.
OK, fixed *that* one. Any confidence that was the last one?

Not that concurrency is easy, but almost all programming languages exacerbate this with extremely outdated memory and concurrency models.

Don't you just love exacerbation?

Eventually we'll all move to shared-nothing languages of one stripe or another to implement concurrency, Erlang being one. Along the way we'll move to better shared nothing mechanisms for our current languages rather than threads, monitors, and such, spaces being one.

Wow! I mean WOW!

An interview with Pete Lacey...

Wow! I mean, WOW!

As I see it the [WS-*] is so large and complex, and the participants so tightly coupled, that scaling to even enterprise levels is out of the question.... you will not be able to use this technology to build a fully distributed enterprise architecture.

I am shocked. I mean there is so much evidence to the contrary. Er, isn't there?

Prediction for 2007: the rush away from WS-* will look like the recent US election aftermath of Republicans running from Bush's Iraq War.

Friday, December 08, 2006

Good Luck Jon

Jon Udell decides to steer a big ship...

Bottom line: This isn't your father's -- or maybe your older brother's or sister's -- Microsoft.
Good luck Jon. Please don't join the list of the disappeared.

Where is Ozzie? Box? Cunningham was out of sight during his tenure.

How many good people does it take to create this new Microsoft? The world may never find out.

Tuesday, December 05, 2006

Hey Kids Rock On

James Robertson relays a presentation by Niall Ross...

The demo Niall is showing is pretty cool - using rewrite rules and a port of Store for Glorp to VW 3, he's replicating code from VW 3 into a Store repository, and then reconciling it in VW 7.x. Another cool thing - Niall and a few other people have extended the rewrite engine piece of the RB with menus, in order to make it easier to use.
Another reason why Smalltalk especially, and dynamic languages generally, win. Not likely in Java, eh? No wonder they want duck typing.

Not Necessarily The Good News

On the use of XSDs, Bob DuCharme writes...

If the bad news is that the majority of XML developers have picked an ugly, convoluted syntax that is difficult to maintain when they store metadata about their types, the good news is that at least they're storing metadata about their types in parsable XML.
That's not necessarily good news if the unwanted side effects of using XSDs gunk up your systems. The one cannot necessarily make up for the other. It is not just about "ugly syntax", nor is it even about ugly syntax at all.

The problems lie in the lack of expressiveness (semantics more than syntax) and the unnecessary dependencies XSDs can ripple through one's systems if one is not exceedingly careful. Such care is not often promoted by tools based on XSDs, yet in this realm people tend to rely on tools much more than wisdom.

Kill Java

Some people apparently want to kill Java. Hey, I am not entirely against that idea, but it should be deliberate.

In this case, some people want to continue adding to Java until it becomes nothing by trying to be everything. Java is essentially what it will be. Yeah, generics, closures, etc. are arguably helping or hurting depending on the situation... that's not what I am talking about. Read on from Paul Browne...

Now that you have Java in your open source toy bag, can I have Duck Typing please?
Yeah, right. Do you understand either Java or duck typing?
P.S. I still want to keep compile time type checking to make sure I don’t make any mistakes.
OK. Apparently not.

Here you go: if you want Java and duck typing, use Jython or JRuby or Rhino/Javascript or...

Do not add duck typing to Java. Ever. Period. End of sentence.

Thursday, November 30, 2006

Today's Englebartian Shake Up

This proclamation from bit-tech.net...

DirectX 10 is probably the most important revolution in games development, at least since the introduction of the programmable shader in DirectX 8.0. Because of the way that Microsoft has designed the new driver model, DirectX 10 will only be available for Windows Vista users and there will not be a version released for Windows XP. Along with DirectX 10, Windows Vista will come with DirectX 9.0Ex – this is because pre-DirectX 10 hardware will not work under the new API due to the complete overhaul.
Of course Wii disagree. Everyone expects graphics to get better on all systems, this is not just a Vista thing.

The *true* Revolution is how the Wii's remote controller changes forever the human-machine experience at $250 USD complete. You may not like gaming, you may like Sony more than Nintendo. Nevertheless, Nintendo has taken human-machine interaction in general to an entirely new *practical* level for everyone.

This is an Englebartian shake-up.

Sorry. That's just the way it is. Period. End of sentence.

Friday, November 24, 2006

Nothing Is All Or Nothing

(via Stefan Tilkov)

A sorry commentary on the state of the software industry from Steve Jones...

SAP, Oracle, IBM and Microsoft... These are the companies who your CIO goes to visit and sits through dinners and presentations on their product strategy, and what they are pushing is WS-* in all its ugly glory. This means that in 3 years time you 100% will have WS-* in your company, in a company you work with, or in a company you want to work with.
Don't worry about WS-Dominance. It will never arrive. But beware of WS-Stupidity.

Having some large software vendor or partner inject SOAP into your data center is no reason to allow it to infect all of *your* work. Push WS-Complexity out to just those edges whose outside forces require it. Stop the enemy at the gates. Make the rest as simple as possible. Always assert your control over your own architecture or you will be a loser.

That's what we're doing anyway. We have a CIO that believes in smart people, incremental development, and lasting systems.

Thursday, November 23, 2006

Yow. More Wii Fun

Maybe you're tired of my just blathering about the Wii. My son's been bogarting that Wii, but I reached another milestone with it last night. We played doubles in Wii sports. That another level of gaming fun that I don't believe can be matched with any other system.

Sorry Microsoft. Sorry Sony. The Nintendo Wii is the best thing in gaming in the last 20 years, and you have a ton of work to do to catch up.

Last night my son and I bowled, played tennis, golfed, etc. And not with some artificial hand held, buttony, doo-dah thing.

We were actually swinging rackets, clubs, putting spin on a bowling ball with our wrists, and playing *together*.

Yow. The experience playing with others is even so remarkably more amazing than playing solo.

Wednesday, November 22, 2006

Just In Time For Christmas

Everyone needs this combination under the tree... sexbuntu and christianbuntu!

If only Rev. Ted Haggard had known about these.

Monday, November 20, 2006

Design and Execution

I'd like to see Nintendo and Apple compare notes. Two brilliant design and execution companies that would appear to complement each other well.

Meanwhile the XBox 360 is ho-hum, Microsoft blows Vista, blows "Zune" (ugh - even the name), and blows yet again their understanding of open source. Ballmer, with little to do apparently in actually *leading* a company, can only resort to threatening Linux.

My prediction -- Novel is not the next SCO. *Microsoft* is the next SCO. Albeit with billions more in the bank -- they are a company desperate for what they've never been:

-- a design and execution company.

Sunday, November 19, 2006

Wii in the House

The Wii is in the house. Game Crazy had a midnight event just for the people who pre-ordered. So we got there way early, played the demo Wii, and hung out with a small number of excited employees and customers.

We got the Wii, an extra wiimote controller, a classic controller, four additional games (plus the sports game that comes with the box), some online points for classic games, etc. for a good $50+ USD under the base price of the PS3.

And on top of that we have an amazing game playing experience. Using the wiimote controller is like no other human-machine interaction I've experienced. Feel the gentle "bump" as you traverse from option to option in a dialog, e.g. while building your online characters in the "Me Channel".

Something I learned now that I've played a good bit more since my first experience a few weeks ago: driving with the controller is something like the steering wheel, but the more I "drive" with it, the more I find myself balancing the controller in my hands and tilting the weight of it one way or another to keep the truck on course. This is not really a steering wheel, but close -- it is more of a natural analog for the truck's movement on the screen. More natural than a joy stick -- there is a "feel" for the movement, gently letting the fairly lightweight controller tilt around.

Easy. Smooth. Awe inspiring... you may be a fan of the multiple processors displaying all the PS3 graphics (although I have yet to hear of a purchaser who did not sell their purchase on ebay), but I have trouble imagining someone not coming away from a session with the Wii not thinking this is a big step toward a new style of machine interaction.

Nintendo knocked this one *way* out of the park. The feel is generations ahead of the 360 and I imagine the PS3. Whatever the Wii lacks in graphics processing will surely catch up over time with hardware and software improvements. At $250 per box, I can easily buy another box next Christmas with more graphics and still be on par with the initial cost of the competitors. Nintendo made the right investments.

Monday, November 06, 2006

Diesels

Ralph Johnson writes...

...the Lisp people have been making DSLs for 20 years. I learned about them about 20 years ago, and the Lisp people had been doing it for 20 years before that, so I think they have been doing it for 40 years. Neverthless, DSLs are only starting to become a hot topic.
He also recommends Martin Fowler as a source (written and seen/spoken) for more information and suggests...
These are ideas that need to become ubiquitous.

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.