smalltalk

Adding WebDAV support

August 13, 2005 9:46:03.976

Michael has published support for WebDAV into the public store - check it out - it's in the NetResourcesWebDAV.

 Share Tweet This

java

Why design matters

August 13, 2005 9:52:43.220

Marc Derricutt examines Java's exception model, and ends up demonstrating how much the original design sucks:

But what if we introduced a new RuntimeObject class/interface that relaxed the requirement for compile time casting. As well as eliminating the object casting, the java compiler could inject a reflection based method call for any operation on the RuntimeObject (the sooner the object is bound to a strict type the sooner we could revert to whatever traditional method call operation javac generates). Using the above scenario, the default objects for Map/Set/Runnable could be replaced with RuntimeObjects, letting the developer write things like:


public void doSomethingWithARuleMap(Map rules) {
  if (map.get("nameIsMark").check("mark")) {
    // do something
  }
}

Because the Map returns a RuntimeObject, the call to check() is reflected, and a suitable MethodNotFoundException could be thrown as runtime (I believe such an exception already exists somewhere) if the Map contained an unexpected class. I don't know how hard this would be, or if its a viable approach, but the code is certainly ALOT cleaner than the crap I've seen with generics, with the added bonus that it puts us a step closer to other dynamic langauges. I'm not saying we could call java "dynamic" with this change, maybe just "flexible"?

 Share Tweet This

management

Merging out the synergy

August 13, 2005 10:04:22.391

ARmadgeddon comments on the outflow from the Gartner acquisition of Meta Group, and makes some points that I think make sense in general:

We expect other ex-META analysts to leave sooner or later GG. As predicted since the beginning, the super-bureaucratic work environment and the cultural differences are taking over the attempt of GG to retain the remainining pieces of the former competitor.

Never mind the specifics of this deal - it's a common problem. Company A buys Company B, claiming that there will be "synergy". Company B's staff bleeds out the door (and, commonly, much of Company A's staff as well). All too often, instead of the sum of the parts adding up to more, they add up to less. Look at HP, for instance - that Compaq buy really helped them out, didn't it?

The bottom line is, there really aren't shortcuts in this business. If you want to succeed, steady, organic growth is the most reliable way to do so. The VC's and MBA's don't want to hear that, but it's the way it is. Now, you could point out that Cincom acquired the Smalltalk group and that it went pretty well - and you would be correct. However: we aren't a public company, so corporate was able to be more patient with the integration. As well, our staff wasn't uprooted and forced to move - in fact, we've added more geographically distributed staff. There have been cultural clashes, but not anything like the nastiness that happened in the hothouse at ParcPlace-Digitalk. Meaning, if you do think about acquisition, you need to take a very light handed approach to the new group.

 Share Tweet This

smalltalk

Why Smalltalk, again

August 13, 2005 10:19:10.342

Via Blaine, Hwee Boon explains why Smalltalk is better than the Java alternative, and why he always considers Smalltalk first:

To avoid what Tim Bray experienced here if I can. Not to say it is perfect or that Java is totally lousy, but Smalltalk just fulfills most of my needs more easily.
 Share Tweet This

general

A nice day in Epcot

August 13, 2005 18:18:52.870

We had a pleasant day in Epcot today - last night, we rode Soarin' once the crowds died down. That's a heck of a ride - a simulated flight over various typoes of terrain, complete with appropriate scents as you zoom over. There were points where the illusion was very complete - when we came down towards the rapids, I couldn't help but think that my feet were going to get wet.

This morning, we headed back there, and rode "Mission Space". My daughter and I rode twice - Jackie wasn't up for a second trip. The G's are very well done in concert with the video of a launch - it really does feel like you are going up. I took a couple of shots of the exterior around there - here's a view of "Test Track", which we didn't get to on this trip:

Test Track View

And here's a shot looking towards Mission Space, where the the cool space simulation is:

Mission Space View

All in all, a good day. We didn't get to rent a boat - the rental place said that the sky looked too threatening. So, we'll try that tomorrow, before we head out.

 Share Tweet This

development

Attempting to un-complexify

August 13, 2005 20:05:39.819

Don Box points to a laudable effort to remove complexity from C# (and the CLR), but notice how much verbiage still has to be deployed to describe a null object. Contrast this to Smalltalk where nil is - wait for it - an instance (the sole instance) of class UndefinedObject. Which also means that in Smalltalk, you can add behavior to the null object, or derive new object hierarchies from there (typically for creating proxy objects that respond specially to MNU.

 Share Tweet This

development

Manifest typing, explained

August 13, 2005 20:09:51.325

Spotted in MemoRanda:

Why smart people defend bad ideas" quotes: ... one thing I did learn after years of studying advanced logic theory is that proficiency in argument can easily be used to overpower others, even when you are dead wrong. ... The problem with smart people is that they like to be right and sometimes will defend ideas to the death rather than admit they're wrong. ... if they got away with it when they were young ... they've probably built an ego around being right ... Until they come face to face with someone who is tenacious enough to dissect their logic, and resilient enough to endure the thinly veiled intellectual abuse they dish out during debate ... they're never forced to question their ability to defend bad ideas.
 Share Tweet This

humor

Blogging explained

August 13, 2005 21:55:32.904

 Share Tweet This

general

A fun dinner

August 14, 2005 1:19:48.701

We had dinner here at the hotel, in the "Whispering Canyon". It was a hoot! The waiters have a whole bunch of fun things they do to liven things up. Say you ask for ketchup - the waiter hollers Ketchuuuuup! really loud, and every bottle in the restaurant is brought over. Next time it happens, your table has to run the bottles over. Here's a picture (grainy) I took of all the ketchup on our table, as it was leaving:

Whispering Canyon: Ketchup

So at one point, just before this happened, my daughter asked for ketchup, but the server forgot to yell. We went over to another table and grabbed a bottle from the bunch - and promptly had the waitress at our table having the entire restaurant point at us and call us ketchup thieves. It was great fun.

The food was good as well, and there was a lot more going on. Next time you go to DisneyWorld, it would be worth your time to head over to the Wilderness Lodge and eat at this place.

 Share Tweet This

development

Pick the right tool

August 14, 2005 10:22:55.602

Kevin Barnes examines needless complexity - it's a good article, and you should read the whole thing. This paragraph is worth looking at by itself though. Too many people see (insert currently fashionable language here) as the answer to everything. Kevin responds:

The point is that we need to be willing to take risks if we are going to do the best job possible.  I've seen more complexity leaked just because people assumed that the generally accepted norm was correct than for any other reason.  Don't be afraid to break the rules if it makes sense.  Write your code in Smalltalk or Lisp if it looks like the best way to solve your problem.  Use Perl or Python or JavaScript code.  Write to a file rather than a database.  Remember that the problem you are facing and the solution you will provide are real and not an academic exercise.  Choosing a non-status-quo solution implies that you have taken the time to understand the repercussions of that decision and that you will not be leaking complexity (installation complexity, code complexity, licensing complexity), but otherwise don't stand on custom.  Properly containing the problem is the most important aspect.  On the flip side, don't just be an iconoclast to be an iconoclast.  The decision must always be about the problem and not just an arbitrary expression of personality.
 Share Tweet This

travel

One trip in the bag, another to go

August 14, 2005 17:02:02.159

Well, I'm sitting in the Orlando airport (free WiFi!), waiting to head back home. The cab picks me up at 8:30, and I'll be on my way to ESUG. I'm staying a few days afterwards, in order to do some site seeing. I'll be back home just in time for my daughter's school to get started - it's amazing how fast this summer has flown by.

 Share Tweet This

travel

Better late than never

August 14, 2005 23:28:51.664

Well, we were being told that we were about to board in Orlando when I watched multiple lightning strikes out the windows. Well - that slowed things down a lot. The airport closed, and we sat there for 45 minutes - which wasn't too bad, really. No WiFi from the high gate area in Orlando though, so I just had a snack.

Then the really boring part arrived - the 45 minute hold once we boarded. I hate those - I wish they would just keep us in the terminal instead, but there it is. Anyway - as I write this, I've got a beautiful sunset out my window, and tunes on the iPod. Back in the air tomorrow morning, although the exciting 6 hour layover at O'Hare will keep me looking for WiFi...

 Share Tweet This

rss

A tip for the clueless

August 15, 2005 1:34:37.958

Scoble has a better idea of where things are (and where they are going) than Dave Winer does. By a lot. Scoble wants to expand the playing field for RSS and syndication in general, without worrying about what it gets called or how it gets displayed on a page. Winer, meanwhile, is utterly fixated on the irrelevance that is the term "RSS" and the orange icon. Let me tell you - they don't add clarity. Slap an orange XML icon on a page, and hand an aggregator (any aggregator) to a new user. I've tried this - I've introduced this technology to a bunch of new people, both at Cincom and out in the wider world. You know what they do when they see an Orange XML icon? They click on it. If there's an stylesheet for that page, all they wonder about is why the page looks less glitzy. If not, they think they made an error, and decide that the XML icons are some geek thing that other people (i.e., people who aren't them) use somehow, for gosh knows what.

That's why aggregators have auto-discovery - so that Joe NewUser can just try to add any old page, and have a feed added for him. The key? The non-technical user neither knows nor cares that XML is being used, has no idea what that stupid icon means, and doesn't want to know either.

 Share Tweet This

travel

This looked smarter on paper...

August 15, 2005 7:53:29.651

Arriving home last night and heading to Europe this morning, that is. Add in one very late flight, a need to find a 24 hour supermarket on Sunday, and a need to pack, and it suddenly looked a lot less bright. Urk

 Share Tweet This

general

Stay on the soapbox

August 15, 2005 12:40:42.361

Blaine vents about the relentless "loser" stereotypes that software developers, engineers, scientists (et. al.) get tagged with - worse, we often tag ourselves:

I just found this document on the net entitled "How To Become A Hacker" By Eric Raymond. I read through a bit of it and I couldn't believe it. I stopped reading it immediately. Am I the only programmer offended by crap like this? I hate the words "geek" and "nerd". And "hacker" to me means someone who programs Big Balls Of Mud and doesn't care. This kind of junk just keeps stereotypes of smart people alive. It's derogatory and offensive. It's like the stereotypes of southern people. We don't all live in trailer parks and listen to country music. It's just like not all smart people are social misfits, play dungeons and dragons, and can't wash ourselves properly. I'm tired of the demonizing of intelligent people. We are the problem solvers of the world and you'd think that would be respected and revered. You'd think we wouldn't perpetuate bull crap like this. OK, ok, I'll get off my soapbox.

I see this myself - the culture has taught my daughter that engineers (of any stripe) are geeks, and that being a geek is bad.

Yeah, as if relentlessly following the foibles of the rich and clueless are cool. Watch TV for a bit - the unproductive slackers are celebrated, and the people who actually accomplish anything are denegrated.

 Share Tweet This

development

Poetic

August 15, 2005 12:40:53.394

 Share Tweet This

smalltalk

3D browsing?

August 15, 2005 12:41:09.896

A 3D Squeak browser has been demonstrated, and written up for BitWise Magazine.

 Share Tweet This

games

Cyberspace crosses into meatspace?

August 15, 2005 12:41:32.264

Slashdot reports something interesting - people are spending real money in order to buy game money:

On ebay people are paying real money to buy WoW gold... while some guy in Korea murdered another guy over a rare sword that existed only in an MMORPG. This essay looks at the way more and more people are failing to draw a distinction between their real and online lives and takes it to its logical, yet utterly insane, conclusion.

Give technology a few years, and I think we'll start seeing people who want to live in cyberspace. Cue up the "Red Dwarf" music and hand out copies of "Better than Life"...

 Share Tweet This

law

Wording for the real world

August 15, 2005 12:41:48.155

Tim Bray shines a spotlight where it really needs shining - inscrutable legalese. Too many companies - including my own, sad to say - make contracts needlessly complicated. I understand that law is a profession with its own jargon, but - as with acronyms in IT - it looks to me like a lot of it is designed solely to make things hard on the layman.

 Share Tweet This

humor

Quick, to the BatCave!

August 15, 2005 12:47:35.360

Super-villains use Linux. Be afraid, be very afraid....

 Share Tweet This

travel

Oh, this travel plan was a bad idea

August 16, 2005 10:14:45.326

First there was my short sleep. Then there was the sinus headache on the flight. After that, there was the rental car extravaganza. I got lost in Brussels, but not for long. I found what I thought was my hotel (the one I asked for, as it happens). Nope - travel had booked me into a hole in the wall down the way (including the excitement of exposed wires!). Screw that, back to the Royal Windsor. Took a bit to get the room I wanted (my wife and daughter are coming in 2 days) - but they were very nice about it, and helpful with directions as well.

Then... Off to VUB, where the conference is. Got to the University without an issue, but the website instructions were not that great - walking between E and F didn't cut it. Fortunately, I found an information desk (nearly everyone I spoke to is fluent in Englisg, btw - sparing them from having my lame French inflicted on them). Finally, I'm here, taking notes... but no internet! I see an ESUG WiFi, but I can't attach...

 Share Tweet This

esug2005

Adapting Smalltalk bytecodes at runtime

August 16, 2005 10:14:55.820

Well - I'm finally here (that's another post). Now, I'm trying to pay attention to Markus' talk on bytecode x-forms. What he's done is implement a library (Squeak) called ByteSurgeon. It provides a high level API, and should be portable. So... why muck at the bytecode level?

  • No need to change the VM
  • No source needed
  • Other languages are possible
  • Performance - no need to change any sources or worry about decompilation

The idea - simple API:

Instrument: [:instruction | InstrCounter increase].
InstrCounter reset

InstrumentSend: [instruction | InstrCounter increase].

What about transforming bytecode? There's #insertBefore:, #insertAfter, #replace: It's easy to see how those are useful for debugging and method wrappering - in fact, the VW debugger uses bytecode insertion in order to add breakpoints. It's also a simple way to add in no cost (at runtime, not at dev time) logging.

What about accessing various pieces of useful state? meta variables to access receiver, arguments, result, etc.

InstrumentSend: [:s | m insertAfter: 'Logger logSendTo: <meta: #receiver>].

That opens up a number of possibilities. The nifty thing (at least for Squeak and VW) is that the Smalltalk level compiler is accessible, and you can jump in and insert additional steps at the AST level (which is what Markus is talking about). Using ByteSurgeon to create Method Wrappers - 40 lines of code, not much slower on execution (5x). Simple MOP achieved.

At least in Squeak, using ByteSurgeon is faster than whole method compilation (2x faster than the optimized Squeak compiler).

Futures?

  • AST vs Bytecode
  • Gepetto MOP
  • Omniscient Debugger
 Share Tweet This

itNews

follow the bouncing ad dollars

August 16, 2005 12:15:58.517

Via Glenn Reynolds:

Julie Roehm has more than $2 billion to spend this year, and the way she's been spending it worries executives at News Corp., the Washington Post Co., and virtually every other media company on the planet. As Chrysler's director of marketing communications, Roehm, 34, oversees a budget that Advertising Age ranks as the sixth-largest pool of ad dollars in the nation. . . .
Roehm rarely misses a chance to talk about how delighted she is with online advertising. Last year she spent 10% of the budget online; this year she is allotting closer to 18%; next year, she says, she will allocate more than 20%. Do the math: In 2006 roughly $400 million of Chrysler's money that used to go into TV, newspaper, and magazine ads will be spent on the Internet. Says Roehm: "I hate to sound like such a marketing geek, but we like to fish where the fish are."

It's a sign of things to come.

 Share Tweet This

rss

Identifying the real problem with feeds

August 16, 2005 12:16:08.269

Tim Bray hammers it home:

Call ’em what you bloody well want. It won’t matter. Until we have one-click subscription working, most people won’t use them. And whoever gets one-click subscription working first probably gets to choose the name that sticks. I’d be happiest if it was done in an open standardized works-in-all-the-browsers way, but whatever. So if you really want to influence the name, stop agonizing about it and get going on that one-click subscription.
 Share Tweet This

esug2005

A Taxononomy of Unit Tests

August 16, 2005 12:17:00.729

Markus Galli is in the Software Composition Group at the University of Berne, and is going to tell us about better unit testing strategies. He's had a lot of experience in this area. The goal: facilitate the navigation between tests and methods, and improve the composition of complex test scenarios.

The root of the taxonomy focuses on this question - does a test focus on one method? A One Method test - "tests the outcome of exactly one call of a method under test". A data point - 53% of the Squeak tests are of this sort.

On Method Test Suite - tests the outcome of a single method under many circumstances. Again, in Squeak, 15% fall here.

2% are Pessimistic Methods - checks that an exception is thrown if a method's preconditions are not met.

Most of the rest fall into Mutiple Method Commands - although most of those can be refactored into single method tests of one sort or another.

MultiFacet test suite - reuse a test scenario to test several candidate methods - 2% of Squeak test methods fall here.

Cascaded Test Suites - decomposable into One Methid tests. 4% of Squeak tests hit here.

Constraint Test - also decomposable. checks the interplay of several methods w/o focusing on any one. 10% of Squeak tests fall here.

Cascaded Test Suite - results of tests are used to set up other tests. Decomposable.

He's demonstrating some tools (5 pane browsers, etc.,) - but I'm just too tired to follow it all...

 Share Tweet This

itNews

Good news, bad news

August 16, 2005 15:06:42.262

Scoble points to the Blogger news:

The Blogger news? They have a free plug-in for Microsoft Word that works with Blogger. The Blogger blog has the details.

The good news - the "default" memo tool used in business can be used to edit blog posts. The bad news? That truly awful MS Word HTML will spread far and wide...

 Share Tweet This

esug2005

ESUG Photos

August 16, 2005 18:42:26.125

Aim your browsers here, and then over here for more. Yes, I was sleepy when that shot was taken :)

There's even an RSS feed...

 Share Tweet This

media

And they call themselves journalists

August 17, 2005 5:42:23.459

Scoble puts out another fire based on a poorly sourced ComputerWorld story - note that Geek News Central does the right thing, and posts a nice retraction. Now back to ComputerWorld, to see if they can fix their end.

This is one of the things that drives me bats about the mainstream media - both news/politics wise and IT wise. They like to pose as defenders of truth and the public, but it's clear that - in way too many cases - they just make crap up. Blogs may not be a replacement for news, but they sure are providing a useful fact checking service.

 Share Tweet This

esug2005

REST and Seaside

August 17, 2005 8:01:54.229

Walking into the middle here. Lukas Renggli on using Seaside for a RESTful web app. REST (Representational State Transfer) assumes that there's a well known URI for any point. Seaside is somewhat in conflict here, as Seaside URIs don't represent an endpoint, but a current application state. My take on this - Seaside solves one set of problems, but not all problems. For instance - I don't think it works particularly well for a blog, since a blog consists of nothing but well known end points.

However, this little talk provides a framework for url rewriting that allows Seaside to dabble in the REST world. That's probably a good thing, since it extends the space of applications for which Seaside can work. The state issue is solved by having a new session (and thus, a new set of domain objects) forced when returning. That's not a requirement, btw - the framework allows for session maintenance if you really want it.

So what this allows is the external appearance of a RESTful application with a Seaside back end. The complexity can get out of hand if the back end domain model is very complex.

 Share Tweet This

esug2005

HTTP Unit Testing

August 17, 2005 8:02:22.841

David Shaffer on testing Seaside components. David's been doing a fair bit of Seaside work, and teaches Smalltalk at Westminster University. He and his students do a lot of Seaside work. Small aside here - there's a lot of Squeak/Seaside at this conference, especially in comparison to June's Smalltalk Solutions.

Some of what's up in Seaside testing:

  • Tests run on the server (i.e., access to the tested component)
  • Uses the Smalltalk debugger
  • Web test runner
  • Available for Squeak and VisualWorks (hat tip to Cincom's Michel Bany for the port)

Provides a test harness with a simulated web browser environment. You render the component into the harness. Setting up:


testComponent1
	self newApplicationWithRootClass: SCTestComponent1.
	self establishSession.
	self assert: (self lastResponse stringWithId: 'main') = 'hello'.

The nice thing here - you don't need to drive the web app to a specific point - you can do actual unit/component level testing. You can follow anchors this way, and then make assertions (as in normal unit testing) about where you should be and what state you should be in. The simulated browser environment hands back an XHTML DOM (XMLElement). The framework provides convenience methods for extracting useful bits.

Side point from me - it seems to me that you could combine this with WithStyle to provide a more visual unit testing framework - and they have a whole lot of useful code for dealing with XML.

So what can be tested?

  • State - often tests of state are less brittle than display tests
  • answer - components that provide a Seaside answer
  • callbacks - components that provide hooks

For Seaside, you need to be able to backtrack, and the framework handles that as well. Other possible topics:

  • Sessions are accessible
  • There are hooks for configuring applications
  • The history in the web test runner is "live"
  • Marking interactions for visual inspection (so that you can look at the actual output later - important for GUI level examination. Note - framework masks self as Mozilla).
  • David's site

Not tested - visual appearances, although snapshots (see above) can be saved. JavaScript not fully supported, but working with a JavaScript test framework (Selenium) for that. He would like to make the APIs consistent so that test cases could move back and forth. Other frameworks:

  • SmallHttpUnit - VW, runs outside the server, excellent API for accessing page elements
  • HttpUnit - Java, external as well
  • Cactus - runs in server (Java) like HttpUnit
  • Struts has a framework as well

Question - would using WS or Twoflower for display help? Not so much. Having a "is it basically right (visually)" would be nice, but most visual issues are on the order of "looks ok in Mozilla, it's screwed in IE" sort of problem ("up level experience" notwithstanding).

 Share Tweet This

esug2005

WithStyle - new frontiers on the Smalltalk User Interface

August 17, 2005 9:21:18.580

After lunch - Rowan Bunning is up to talk about WithStyle. They see the kinds of things they can do in WithStyle as a counterpoint to AJAX style web development - why sacrifice the power of that client you have burning up cpu cycles?

  • Intro to WithStyle
  • Basic Examples
  • Architecture
  • Applications and Case Studies
  • XML WithStyle
  • WithStyle V4
  • Future Possibilities

Heh - I'm using WithStyle to blog about the talk - WS is the editor behind the BottomLine blog tool. Where is SwS - Canberra, Australia. They've been working in Smalltalk for many years (at Wizard, in VA). Many community projects: LibTidy, LibXSLT, NetResources, BottomFeeder, BottomLine, NetResources, WebDAV interface, Typeless. They really are tireless this way - they have provided a ton of useful tools.

Rowan is the XML WithStyle Product Manager - he's got a blog as well, as does Michael Lucas-Smith. WS is:

  • XML UI for Smalltalk
  • CSS based rendering
  • 100% Smalltalk objects
  • Open and Highly flexible
  • Building a synergy between the desktop UI in Smalltalk and the web browser

So - why should we care? This stuff is end user configurable (as opposed to the typical desktop UI). It uses technology that is smack in the mainstream (XML, CSS). Allows you to move between the web and the desktop easily, and brings the full power of the desktop. Differentiators for WS -

  • Targeting business apps, not general web space
  • Many deployment possibilities
    • Intranet/Extranet
    • Thin Client
    • Embedded desktop/fat client

Stable V3 engine now (used in BottomFeeder/BottomLine). Released EzyXML (editor). Supports CSS2. Supports scripting (Smalltalk). About 33,500 lines of code - working on V4 (Pollock based).

Some demo apps - the example browser, the slide viewer - showing how you can build small apps quickly using WS. I can attest to this - moving BottomFeeder from Twoflower to WS was not at all hard. The Architecture:

  • Developer Tools
  • Editing - rich editing on top of a schema)
  • Layout (CSS)
  • XML
  • Network layer - download manager and protocol services

In the layout layer, V4 uses Pollock styled by CSS. Michael and I have talked about this for all or part of the BottomFeeder UI. In the editor, there's spellchecking (external C lib), text editor behaviors, structured (schema based) editing, and XML and Object backmapping. BottomLine (the BF blog tool) uses this stuff.

What applications are there? Embedded Browser/Editor, Web App Client, WYSIWYG editor, BottomFeeder, BottomLine, Seaside Rich UI, ExyXML. Next, demos - he showed of WS in BottomFeeder and in the BottomLine posting tool. They were pretty darn easy to integrate, and made my life massively simpler. The concept behind the Seaside Rich UI is to allow Seaside usage in a thin, non-browser based UI. Instead of JavaScript/AJAX, you get Smalltalk - i.e., a smart client. EzyXML, and editor that's been deployed at the ACS (Australian Federal Level government). XML WithStyle - a more full content edting system, hooked up with network services (including WebDAV). Beta available now, plans to get to DocBook and HR-XML. Features multiple undo/redo, specllcheck. Based on open standards - uses XSLT and CSS. Highly configurable.

Coming up - V4

  • Better "Box" model
  • CSS3
  • StyledXML
  • Speed, flexibility (Pollock based)
  • Drag/Drop editing
  • Before/After (CSS)
  • Paging
  • Zooming

Once they get to Pollock, they intend to allow embedded widgets - i.e., Pollock Widgets in WS forms. They will support HTML Forms, and Pollock's XML UI definition. They would like to get to XForms, XUL, and maybe Avalon.

Question - what about licensing? It's still being worked up - something will be announced soon. We've been concentrating on getting the code ready.

Question - Seems to be a little slow? The demos are on the Mac, where VW performance in general has been an issue. That's being addressed by Cincom.

 Share Tweet This

esug2005

Effective SUnit Testing

August 17, 2005 11:24:11.295

Joseph Pelrine: "Anytime we run code, we are testing". So in fact, we test code all the time - SUnit simply formalizes the process. Heh - the demos are all in VA, and Joseph felt compelled to announce that this shouldn't be taken as any kind of endorsement of one ST over another - all the code he's going to talk about is available for multiple dialects.

Smalltalkers should be proud that unit testing spread out of Smalltalk - it's another thing that we originated. The cross dialect versions of SUnit originated at a Camp Smalltalk in 2001. "This talk is about the interesting and cool stuff in SUnit that no one knows about or understands". JUnit - it's a big, fat version of SUnit - apparently, the elegance has been lost, and the other revs for other dialects have come from the JUnit version.

Now it's demo mode. Joseph has added descriptions to assertions (which can be logged) - allows you to see something about the failure without having to jump into the debugger. That would help when running a long set of tests. So - instead of:

self assert: someBooleanDescription.

We add:

self assert: someBooleanDescription description: 'Describe Failure Here'

Another thing is that it's often the case that - instead of just stopping on a test failure, we want to resume (perhaps other tests depend on this). So, Joseph has added a resumable test case that lets a failure get logged (see above), but doesn't stop.

"Unit tests are the only valid functional specification of a system"

Moving along - what about TestResources? In the simple case, we have #setUp and #tearDown (set a test up, tear it down). If you run a lot of tests, this could get expensive if you are using the same resource over and over again (say, opening an HTTP connection, opening a db connection, etc). A TestResource is a way of allowing such shared resources to move across multiple test cases. If the TestResource initialization doesn't work, none of the affected tests are run at all. Basically, it's an extended #setUp/#tearDown. It uses that same API as well. Like test cases, you derive new TestResources from the common superclass TestResource.

On the class side of the test case, you add a method like this:


resources
		^Array with: MyTestResourceHere 

Sometimes, you want to be able to use other tools with your testing - thus ExtensibleTestCase. The example - a simple test that compares two strings, failing if they don't match. What the extension does here is hook a text differator into the results - Joseph has used it to hook SUnit to ENVY Q/A and TestMentor. Nifty example - Joseph has a demo that hooks the "Debug" option to SmallLint instead. The hookup? An abstract class that specifies which methods are test methods (instead of the default, which picks up all the ones that begin with 'test'). Then, an override of the #performTest method to have it run the right test, and then apply SmallLint (or what have you) in case of failure - specifying which rules to apply.

This is actually one of the really cool things about SUnit - you can whack this sort of thing into the framework easily. Doing the equivalent kind of hacking in Java (or C#, et. al.) would be much more complicated.

Coming features:

  • Remove TestRunner - better integration in all major dialects
  • Integrate the description (first part) with hover help, so that moving the mouse over the list of failures will show the results w/o having to jump in
  • Integration with a logging framework that Joseph has (Toothpick). Came out of someone wanting log4j like capability - Joseph decided to see what such a thing would look like if you did it right.
  • Make TestErrors and TestFailures into new objects, instead of just exceptions.
  • Integrate Continuations, allowing you to backtrack to the error state - note - that piece won't move to all dialects.
  • What Joseph really wants to do is create a tight common core, and have other people configure specifically for each dialect.

Joseph has a download site for lots of the stuff he's talked about here, plus other stuff (like the Smalltalk Balloon graphics, Knights of the Square Bracket logo, etc). Look here.

Question: Why do so many people misunderstand/misuse TestResources? There hasn't been enough explanation - it's been passed by word of mouth and code reading. More needs to be done there - there's a manual at the link above.

Question: Two roles for helpers. One is for "heavy hitters" to do dialect specific work. Another one is for people to read/review the new TestResource manual.

 Share Tweet This

blog

More ranking in the Blogosphere

August 17, 2005 12:04:26.339

Feedster has debuted a new ranking system - the Feedster top 500. Seems to be authority based, where authority is counted via the number of inbound links. I'm at ESUG this week, but I need to take a closer walk through the list and look for anything I'm missing.

 Share Tweet This

management

Clues for the completely clueless

August 17, 2005 12:59:38.985

Jeff Jarvis explains to Dell why their management/marketing response to customer complaints (not just him - they shut down their customer forums as well) is a really bad idea. Dell is running plays from a 1995 playbook. Sadly for them, it's 2005. Bad word of mouth doesn't just spread locally anymore - it crosses time zones in minutes.

I've said this before, and I'm sure I'll say it again: Define your message, or have it defined for you. Right now, Dell has been having their message defined for them due to a massive PR failure on the part of their management, marketing, and PR folks.

I've got 41 custom search feeds out there now, across multiple search engines and across multiple search terms that involve my company and our products. When a comment is made in the Blogosphere about any of that, I hear about it within minutes - and I respond via email or comments on the blog in question immediately, making it clear that a deeper conversation is possible if needed. Clearly, Dell doesn't realize just how crucial that sort of monitoring/response cycle is - and it's part of what's costing them money right now.

 Share Tweet This

cincom

Tom Nies audio interview

August 17, 2005 13:14:34.989

Cincom CEO Tom Nies was recently interviewed for the "Stevie" awards - there's an audio cast of the interview here. About the "Stevie" award:

The "Stevie" Award – "The business world's own Oscar Awards" - The New York Post.

Stevie is taken from the name Stephen, which is derived from the Greek word for "crowned."

R.S. Owens, the same company that makes the Oscar®, Emmy, and Clio Awards, has designed the StevieTM, the trophy of The American Business AwardsSM.

Stevie is approximately 16 inches tall, and is hand-cast and finished in 24-karat gold.

The crystal pyramid held aloft by Stevie represents the hierarchy of human needs, a system often represented as a pyramid that was developed in the 1960s by psychologist Abraham Maslow, who observed that after their basic needs are met, human beings seek the esteem of their peers.

 Share Tweet This

news

Hostage crisis in Brussels

August 17, 2005 17:52:19.599

I had a pleasant dinner with a bunch of people here at ESUG, and then took the metro back to Central Station. That's when things got odd. I walked down the street towards my hotel, the Royal Windsor, when I ran across a police cordon. It stretched from the Meridien Hotel around the block - it wasn't at all clear that I'd be able to get into my room. Apparently, there's a hostage crisis going on somewhere in or near the Meridien, and the block is cordoned off - which made my hotel problem seem kind of trivial.

I walked around the block, and got lucky - there's a restaurant attached to the hotel that's just outside the cordon, so I was able to get in that way. There were police and medical folks camped in the lobby here, along with a bunch of hotel security staff. Apparently, this stabdoff has been going on since a little after 7 pm local time - and with these things, there's no telling how long they'll last.

Oddly, I haven't seen anything about this on BBC world news or CNN International - I would have thought a hostage standoff in the center of Brussels would be pretty big news. On the other hand, there's the whole Gaza thing and a huge bomb report out of Baghdad, so I guess I can see how this fell under the radar. Still, I was a bit surprised to see no notice on any of the news websites I visited (and I only saw one local media truck sitting near the cordon). No idea what's up - I'll post more if I find out. If you look at this map, you'll get an idea of where the cordon is.

 Share Tweet This

news

Hostages - more details

August 17, 2005 18:14:22.904

I got a few more details from the concierge downstairs in the hotel. Apparently, the standoff is in an apartment across from the hotel - the Meridien is at the outer edge of the cordon as well. Sometime around 7, someone took a family - 3 adults and a few children - hostage. I don't have any details on why, but I found out that the negotiators managed to get the children released. From what little I know about these kinds of incidents, any cooperation is a good sign (although the situation is still fluid - there were more police out front when I went downstairs.

I'm going to go use the exercise room, and then see if I can find any more details. Back later.

 Share Tweet This

news

No new news

August 17, 2005 19:30:44.132

1:15 AM local time, and no new news. After working out, I wandered down to where I came in earlier - the restaurant is closed, of course, and there was a hotel security guy watching the door to the hotel. For all I know, things are totally locked down. I saw more police on the streets, and they were wearing flak jackets - that was new - earlier, the police I saw just had t-shirts on.

Still nothing on the news, or on the news sites I've seen. It's late here, of course - but this all started at 7 pm local time. I'm somewhat surprised that there's no major coverage, since this is a touristy area of the city, and Brussels is both the capitol of Belgium and of the EU.

Well - I'm off to bed now. I'll be up early, to get my wife and daughter from the airport. If this is over, I drive up. If not, I take the train. We'll see.

 Share Tweet This

news

Hostages in Brussels - still no resolution

August 18, 2005 0:22:41.713

I'm back up - apparently, I'm in one of those "sleep fine the first night, stay awake the second" swings. I cheerfully await sleep tonight, I guess. In the meantime, the hostage crisis here still has the area cordoned off. There are police and medical units camped out here at the hotel, and they have that "up all night" hangdog look going - one of the medical guys was trying to sleep on the sofa.

There's still a way in and out of the hotel though - I checked with the front desk, and we can get in and out near the restaurant. Which means a train ride to and from the airport, looks like. I don't have any real news about the hostage thing, other than the nearly 12 hour duration of it - not a good sign, IMHO. I thought the early release of children sounded good, but now it doesn't look so good. Then again, I'm in a cocoon here, so what do I know?

I'll try to pick up some news on my way to and from the airport, and see if any of this hits the media in the meantime.

 Share Tweet This

news

The hostage crisis continues

August 18, 2005 3:58:58.565

I got a few more details talking to the police this morning. There were originally four hostages - two children, aged 3 and 8, and two adult women. The hostage taker is an ex-boyfriend of one of the women, and she's apparently had trouble with him before. Now, he's holding the two of them in their apartment with a grenade. The police have the whole area - about a 2 block square - cordoned off. I heard a few snippets about it on the radio this morning, while taking a cab back to the hotel, so the media finally has it.

So, no sign of end to the standoff - the police look pretty settled in. I'll be heading up to the conference - there's supposed to be a guided tour of the city this afternoon. I don't know how that will be impacted by the standoff - I'll post more details as I get them.

 Share Tweet This

news

Better Details on the Hostage Situation

August 18, 2005 5:20:18.521

Seems that better information on things is out this morning. Apparently, the guy behind this is an escaped prisoner - more properly, he was on some kind of leave, and went AWOL. He's holding two women in a bar - his wife (possibly ex-wife) and some woman who happened to be in the wrong place at the wrong time (apparently, a bar, not an apartment). There were two children let go last night, so that was accurate - and they are his children. No progress on getting the final hostage out though, so things are still buttoned down. I don't know if I'll have more for awhile - I'm off to the conference, and I don't know if I'll have time or info to post. I'll update this tonight when I get back.

There's a comment from Dirk up this thread, and he informs me that there are two people trapped in a nearby apartment who can't leave due to the cordon. That's probably part of the initial confusion on the number and location of the hostage taking.

 Share Tweet This

news

The hostage situation update

August 18, 2005 16:55:53.599

The situation is still unresolved. I managed to get better info from local media - here's what I know now:

  • This whole thing started at 7 pm or so last night. The hostage taker was out of jail on a 1 day furlough, and went to a bar/cafe - probably in search of his ex-wife. He found his ex mother in law and ex sister in law instead, who had his kids with them
  • There was some kind of ugly argument at the bar, and the police were called. A police woman showed up, and the perpetrator took out his gun and shot her - fortunately a slight wound to the arm
  • That's when things went to hell - she called for backup, and he grabbed his hostages - the two women and the kids. At some point, the kids were let go
  • I don't know whether he has a grenade - that was reported, but I had not heard of the gun earlier. Multiple policemen have told me he has a grenade
  • Ironically, this guy was in jail for taking his family hostage!
  • Apparently, the police are no longer releasing news updates of any kind - the perp has been monitoring news reports, and gotten angry about things he thought were wrong. So... no press conferences, etc.

That's what I know now. I'll have to see what new info - if any - turns up tomorrow. The only thing I have left is pure speculation, but here goes - I have a very bad feeling about this. The longer this goes on, the more likely it is (IMHO) that this guy will convince himself that "it's too late to go quietly". At that point, either the police use snipers to take him out, or he ends the whole thing violently himself. Again, that's pure speculation on my part - above this paragraph is stuff I'm reporting based on actual sourcing.

 Share Tweet This

esug2005

ESUG Tour afternoon

August 18, 2005 17:35:02.777

On a more pleasant note, we had a nice walking tour of Brussels today. I started out heading to the airport (by train - my car is stuck in the garage due to this hostage situation). Picked up the wife and daughter, had a cab run us back here. We then went up to VUB to meet up with everyone.

We headed out on the tour after lunch - we had a nice, very funny guide. I'll have some pictures to post tomorrow or the next day - I'm too tired to play with the camera just now. Anyway - things ended at a brewery (only one running in Brussels), and that tour was kind of fun - although the warm air in one room triggered my jet lag and sent me to sleep.

Back at the Uni for the banquet and awards - the prizes went as follows:

  1. RoelTyper
  2. SqueakSource
  3. Intensional Views

There was a funny "10 things I hate about Smalltalk" speech at the banquet - things like "I hate how productive it is - think about job security!", but delivered in a humorous way. All in all, a good day.

 Share Tweet This

development

When he doesn't get it, he doesn't get it

August 18, 2005 18:00:09.178

Joel Spolsky says:

As I worked through the screens that would be needed to allow either party to initiate the process, I realized that Aardvark would be just as useful, and radically simpler, if the helper was required to start the whole process. Making this change in the spec took an hour or two. If we had made this change in code, it would have added weeks to the schedule. I can’t tell you how strongly I believe in Big Design Up Front, which the proponents of Extreme Programming consider anathema. I have consistently saved time and made better products by using BDUF and I’m proud to use it, no matter what the XP fanatics claim. They’re just wrong on this point and I can’t be any clearer than that.

Well - I have to admit - as with exceptions, when Joel misses the point, he doesn't miss by a little. Look at his assertion - "If we had to make the change in code..."

Well. This assumes two things:

  1. You got the spec right before you got started, because - according to Joel - once you start, it's just too hard to change the code
  2. You won't get into analysis paralysis due to fears about (1)

BDUF assumes that the spec can be made perfect, after which the coding will just be automatic. Well - if that's the case, why does he care about getting "the best" developers? Clearly, they have very little work to do in the bizarro universe where Joel lives - after design, they just code to the spec.

The reality is, specs are never complete - new requirements always arrive, and the first cut of a spec can't possibly catch them all. The whole point of agile is to accept this reality and move on. Joel wants to pretend otherwise, which makes him... foolish.

I suspect that Joel's developers have gotten into the habit of nodding their heads politely at Joel, and then rolling their eyes as he turns around. He's gone past the technical world into the "used to be technical and think I still am" project manager role. People like that are a real pain to work for, because you end up having to put up a false front - "sure, we'll do it just like you say, Joel" - followed by doing it the right way. Joel is a good product marketer - that's where he ought to spend his time. The technical side? He needs to stop making it obvious that he has no clue what he's talking about.

 Share Tweet This

news

Crisis Over

August 19, 2005 4:41:08.304

The hostage crisis ended last night - apparently, the police rushed the place around 3:30 am. Must not have been too loud - I didn't hear anything. In any case, the word is that they caught him, and the hostages came out unharmed. So it was a long, nervous wait for the police and the two women's families, but it all ended far better than I had feared it would

 Share Tweet This

rss

The more specs the merrier

August 19, 2005 4:46:43.605

Unlike last time, it looks like this page actually is planning an RSS 3. Oof.

 Share Tweet This

development

Recognizing the obvious

August 19, 2005 4:55:59.236

Blaine points to an interesting story on BEA - apparently, they want to be able to support scripting (read: dynamic) languages on top of their servers:

"The goal is to meet the developers where they are living, and clearly there has been an explosion of new ways of building applications," said Roth. "Java and J2EE (programming models) are still important but innovations in programming can't be denied."
 Share Tweet This

esug2005

SOA - Risks and Benefits

August 19, 2005 5:51:11.102

It's raining out, so it's a great time to be inside and hear about the new buzz terms as they hit Smalltalk. Andy Berry is going to cover what SOA (Service Oriented Architecture) is.and what the business benefits and risks are. In particular, he'll cover how it interacts with Smalltalk.

What is "architecture"? Let's pretend that you won the lottery and ask a builder to build you a new house... Heh - Andy has a picture of what you have in mind, and a picture of what the builder actually produced (I lived this one when we had our house built - we didn't get the cathedral ceilings at all where we wanted them...). Like Andy says, the builder always has a rationalization at hand to explain why things went the way they did.

So... consider a city, where you end up with lots of buildings. You want it to all mesh. Now, apply that to IT - you have apps for Sales, Billing, Q/A (etc) - they probably are all silos. They should all tie together (eg - a Sales Enquiry should be able to "turn into" an Invoice w/o any hard work). The bottom line - a suite of applications that work together this way will save money.

An IT architecture must tell us how to link things together. Has to consider both the business itself and the world around it. At this point, imagine a circle ("The World") with boxes for your customers, your suppliers, your company, and your enablers. That's what your architecture has to tie together.

"A Service Oriented Architecture is a way of including everyone - Customers, Suppliers and Enablers - as partners in your IT system" So, an SOA is an architecture designed around services. What's a service? posit a taxi driver, who you call to take you from point A to B - the taxi driver has provided a service. Side note - how the driver gets paid is an interesting point all by itself.

Services:

  • Business Oriented - don't tell the taxi driver how to drive
  • Asynchronous - I make a request, and it later happens
  • Normally, you get what you ask for

Returning to IT - Always ask yourself - can I imagine myself doing this? If so, it could probably be made into a service. A service to submit an invoice is high enough level to call a service. Where does this fit - design/architecture level, or code level? Is SOA:

  • The most important development in the last ten years?
  • An interesting development that your company should monitor?
  • Just a messaging application?

Andy falls into camp two above - start thinking about it, and see how you could/should use it. Consider doing an internal project before trying to go outside the company's walls. So Andy asks us: Can you think of three business oriented services that would allow parts of your company to work more effectively together?

Implementation:

  • Do it yourself
  • Us a supplier like IBM, Iona (et. al.)
  • If you do that, make sure you get monitoring

One option is to use what's called as ESB (Enterprise Service Buss). InfoWorld just did a wrap up on those, iirc - I think I threw rocks at it :) The basic idea is that you wrapper your applications in a messaging layer. What goes on the "bus" - messages - typically, Web Services messages.

At the implementation level, a web service is a service delivered by XML encoded messages. Andy is referring us to "The Semantic Web" by Berners-Lee. This is where you end up intersecting with the "Web 2.0" folks - including the RDF crew.

So what are the benefits? You automate (as much as possible) your communications flow with your suppliers. A simple example of this sort of thing is how we (Cincom Smalltalk) handle "goodie" submissions from authors. They register with us, and then have access to an FTP site. Our normal build process pulls the latest from there - thus eliminating the need for reminder emails. The upshot here is to end up with an architecture rather than a set of isolated silos. You should end up automating out a bunch of things with customers and suppliers.

The risks? At this point, you'll be an early adopter - meaning that you'll inclur extra costs, and be off the wrong way if the buzz ship moves along. How can you mitigate that? Andy's suggestion is that Smalltalk helps here, by dint of its flexibility - and it's supported in Smalltalk (VW and VA, for sure). More:

  • Don't bet the business - start small
  • Ensure access to mentors that have done this before
  • Choose a product before you start implementing.

At the end of this, you want an architecture, not just another "cool" use of buzzword bingo technology. Start small, get buy-in from the right people in your organization, and try to pick an obvious starting point to prototype.

Back to that taxi driver and payment - we just hand him money. Translated to IT, what we really want is "pay as you go" services that are metered. Yes, it sounds utopian - but it's probably a level of outsourcing that will work.

 Share Tweet This

esug2005

Smalltalk Marketing update

August 19, 2005 5:56:54.054

Suzanne Fortman is talking about Smalltalk promotion in the community at large, and specifically at Cincom. No slides - this is a general introduction on her part to this community. I blogged about her StS talk here.

 Share Tweet This

management

AOL following Dell down the road to unhappiness

August 19, 2005 6:01:39.771

Ed Foster spotlights the difficulty people have with AOL and cancellation. This reminds me of the Dell thing from last week. This kind of "death grip on the customer" approach is the kind of thing that generates a lot of bad PR. As with Dell, it used to be something you could hide - there would be an occasional press story, but nothing much that spread. Now? Now you have the searchable web. Like Dell, it looks like AOL is going to have to learn this lesson the hard way.

 Share Tweet This

PR

Pay attention to the buzz

August 19, 2005 6:22:39.233

Troy sent me a link to this piece in AdRants - which puts a nice exclamation point on my earlier post about AOL:

Jarvis explains to Dell and to any marketer wondering about this whole blog thing why they should pay attention to blogs and how they should join the conversation about their company rather than attempt to control it with anachronistic, uninformed marketing logic. All marketing directors should read what Jeff has to say, pay very close attention to it and act accordingly. Lest, one day, you'll wake up and quietly, all your customers will have left your store.
 Share Tweet This

esug2005

Mark Johnson on VA Smalltalk

August 19, 2005 8:43:43.363

It's after lunch, and Mark Johnson is up to talk about VA Smalltalk. I blogged both talks on this at StS. The difference here is that Mark is a marketing guy, not a technical guy - so the tone of this talk should be somewhat different than at StS. On to his agenda:

  • Who Instantiations is
  • Relationship with IBM
  • Roadmap information

Mark has been at Instantiations since 1999, in Marketing and Business Development roles. His charter at Instantiations is to promote Instantiations tools - Smalltalk and otherwise. For those who don't know, Instantiations is a small (25 staff) company in Oregon. They were re-founded in 1997, they mostly partner with IBM, working with Rational, Eclipse, WebSphere.

They've been selling a bunch of VA add-ons for ever since Instantiations was re-founded out of the wreckage of ObjectShare. Late last year, Instantiations started working with IBM at the Raleigh lab to provide 2nd and 3rd level support for IBM. More recently, Instantiations was able to announce and offer VA Smalltalk. They are an Advanced IBM Business Partner. They have been a VisualAge Smalltalk Solution Team Member, member of STIC, and also associated with similar programs for Rational tools, WebSphere, etc.

Now we see the slide that IBM showed at StS - the "either run or walk to Java" slide. Even the maintain Smalltalk slide calls that a "Staged Transformation". Mark is pointing out that Instantiations is taking over marketing and support, so that there's no need to migrate - the choices IBM are laying out are to migrate now, or go to Instantiations.

VA Smalltalk 7 (Instantiations Product):

  • Lengthens viable life of VAST applications
  • 100% compatible with VA
  • Includes VA Assist, WidgetKit/Controls, GF/ST
  • Modernized product
  • Fully Supported (by Instantiations)
  • Roadmap for the future (out 2 years)
  • Instantiations is 100% committed to product development

The roadmap:

  • VA 7: Summer delivery (late August, early September) - VA 6.0.3 with the additional components listed above
  • VA 7.5 (Next year)
    • ANSI support
    • More modernization
    • Integrate RB
    • Newer Windows Widgets
    • More WS* stuff
    • All additional migration stuff
  • VA 8 - follow link above

They plan to evolve their own pre-existing tools as well, and integrate them more fully into VAST. Small note - GF/ST will remain a "goodie" (i.e., unsupported). By contract with IBM, they have to include the migration assistance tools from Synchrony Systems. The release was delayed somewhat by the slowness of the 6.0.3 release from IBM. Still on track for Windows GA version shortly (within a week), with Linux, AIX, and Solaris by end of August. Looks like you can contact Mark for a copy of the slides.

Mainframe stuff is still at IBM - Academic licenses are not free. hmmm.

 Share Tweet This

esug2005

Speaking at ESUG 2005

August 19, 2005 16:05:42.334

I spoke at ESUG today, after Mark's talk. Here's a picture Suzanne snapped while I was talking:

Speaking at ESUG 05

The talk went pretty well - I had a good crowd, and they seemed interested. After that, Suzanne and I spoke to a few people and headed out. She's on her way back to California, I'm taking a short break here in Brussels. I'll be posting some pictures we took on the tour yesterday in a few minutes.

 Share Tweet This

travel

Touring Brussels

August 19, 2005 17:14:01.912

We took a walking tour of Brussels yesterday as part of ESUG. It was a nice tour - my wife shot a few pictures while we walked, and I thought I'd post a few of them. The area around Grand Place in Brussels is just beautiful - have a look at this view from the courtyard:

Grand Place Courtyard

Here's another shot of the same place, different part - we would have more, but a huge stage set up in the middle for a festival blocked some site lines:

Grand Place Courtyard

Next, there's a marvelous covered street near Grand Place. It's about 8.5 meters wide, and covered with a glass ceiling - shops on the ground floors, apartments above. They sounded small (about 100 sq meters in general), but it would be a fun place to live, I'm sure:

Covered Street

Here's another view, near the end of that street - look at the artwork:

Covered Street

Last, a nice fountain in a courtyard - there were matching fountains, this is a shot of one. It's in a nice little courtyard, small and cozy:

Fountain

 Share Tweet This

stupidity

Outlook to power users: drop dead

August 19, 2005 17:31:52.875

We have ways of downgrading your machine: better not try to use Outlook 2003 on a machine with more than 1 GB of RAM - MS can't count that high:

Still no luck there, though. I had to do a Google search to find the relevant page on MSN. There I find the "cause" of my tribulations (emphasis mine): If you are using Outlook 2003, and have more than 1GB of RAM available on your machine, you may encounter problems with Outlook. This is a known issue in Outlook, and a fix for this will be available shortly from the Outlook team. To avoid this problem, you can remove memory so that your computer has 1GB or less of RAM, or you can disable memory above 1GB.

Shades of "640k is enough for anyone" :)

 Share Tweet This

general

Scoble and Jobs and Winer, oh my

August 19, 2005 17:36:59.027

Seems Scoble ran into Steve Jobs:

Then I follow him outside and introduce myself. "Hi I'm Robert Scoble and I work at Microsoft and it's an honor meeting you." By then Dave and Dean walk up. "I'd like to introduce you to Dean Hachamovitch, he runs the Internet Explorer team and this is Dave Winer."
He then said something like "cool, nice to meet you. It's nice to see that you're copying our stuff." Ouch. But then Dean invites him to see the rest of Internet Explorer and Windows Vista and says we have a few innovations to show him. Steve graciously hands over his email address and invites us over.

Too bad I wasn't around - I'd have given Jobs crap for copying all of our stuff...

 Share Tweet This

PR

I spoke about this yesterday

August 20, 2005 5:10:26.226

Via BitWorking comes this post from Kottke, where he's ragging on Technorati. Come to think of it, there are searches I've tried on Technorati that almost never work - ones for links to my blog, for instance. I always get a "the database is busy" error. In any event, I spoke about this yesterday at ESUG - I have 41 search feeds set up in BottomFeeder now, cutting across products and terms that I care about. I suspect that the folks at Technorati are clued in enough to notice Kottke's post (I would hope they are, given the field they are in!).

 Share Tweet This

PR

Be careful how you advertise

August 20, 2005 5:15:49.811

Phil Ringnalda is not amused over the advertising he finds at xml.com:

O'Reilly's XML.com, a site I used to take very seriously, because of all the scary-smart people who write there? Brought to you by hotel spam, mortgage refinancing spam, and one of those "directories" that only exists to feed off confused searchers by sending them right back around through Google's AdSense division when they arrive from a Google search.
How horribly low have we sunk, that I'm not willing to link to O'Reilly sites without a rel="nofollow", because they are a bunch of low-life search engine spammers? X-bloody-ML.com, something that I won't touch without a nofollow condom? This just sucks.

The ads in question are low key, text only ads - nn the other hand, they are spam crap that will show up in search results because of this, so maybe I should be as upset as Phil. In any event - if you are targeting developers (and O'Reilly most certainly is) - then this sort of advertising is pretty much guaranteed to generate negative linking.

 Share Tweet This

travel

Touring Brussels

August 20, 2005 14:54:03.433

I have some more pics from the walking tour - these were all taken by my daughter. The first shot is of a remnant of the 12th century city wall, now inside the Radisson. It's actually reconstructed; the old wall was moved during the building of the hotel:

Brussels City Wall

Here's a picture of the cathedral near Grand Place:

Cathedral

Here's a shot of the Covered Street I mentioned yesterday::

Covered Street

And finally, a picture from the brewery we went into at the end of the tour. This shot is of some hops - they use hops that age for a year:

Brewery Hops

 Share Tweet This

news

It's not the law anymore

August 20, 2005 16:51:37.939

Slashdot reports that 186,000 miles/sec is no longer the speed limit:

"With off-the-shelf components, scientists have managed to speed up light beyond the 'universal' constant of c, or roughly 300 million meters/sec. This, and the previous ability to slow light down could shake up the telecom world, according to the story at Science Blog."

Follow this link for the details.

 Share Tweet This

news

Lions? Cheetahs? Excuse me?

August 20, 2005 17:08:32.032

Well, here's a pack of morons at work - a group of bozos wants to import large animals (including predators) into North America. Yeah, that's how I want to explore a natural park - looking around to make sure I'm not becoming prey:

"Obviously, gaining public acceptance is going to be a huge issue, especially when you talk about reintroducing predators," said lead author Josh Donlan, of Cornell University. "There are going to have to be some major attitude shifts. That includes realising predation is a natural role, and that people are going to have to take precautions."

I have an idea - why don't we introduce the predators in his neighborhood. Let him explain to local parents that they will have to "take precautions".

 Share Tweet This

travel

An afternoon in Antwerp

August 20, 2005 17:47:03.001

We drove over to Antwerp this afternoon, and after a nice lunch hopped on the local tourist bus and made our way to the Fine Arts museum. It's a lovely museum - abstract art downstairs (not my favorite - IMHO, if a 2 year old could duplicate it by accident, it's not art) - but the works by Rubens and other masters upstairs were well worth the trip. Here's a front view of the museum - my daughter took all these shots:

Fine Arts Museum Antwerp

Victoria took a lot of shots in the museum, but it seems that a bunch were blurred. Not enought light/resolution, and we couldn't use a flash. Her camera is only 2 megapixels. Here are three of the best shots:

Husband and Wife

Heaven and Earth

Christ's Baptism

 Share Tweet This
-->