esug2006

Georg Heeg: Integrating Smalltalk Systems

September 7, 2006 4:16:19.609

It's Thursday morning, and Georg Heeg is up to talk about the ObjectStudio 8 project. The Heeg company was founded in 1987, and has been involved in Smalltalk since that time.

OST and VisualWorks:

  • ObjectStudio and VW are Smalltalk systems
  • Both owned by Cincom
  • VW is descended from the same source as Squeak (ST-80, Xerox PARC)
  • ObjectStudio was developed under the name Enfin, and was originally designed as an "Enterprise OO Development Environment"

Enfin

  • Ease of use
  • Enterprise integration

VisualWorks

  • Execution speed
  • Sophisticated meta-model

Customers want both, but don't often know that they need the meta-model. So - why is Cincom doing this, given the sad history of product integration (across the industry). There was an HPS2OS project that did not succeed. However, Georg points out that Smalltalk is all about modeling - so we should be able to model one system in another.

So ObjectStudio 8: Model ObjectStudio using VisualWorks meta-modeling. It uses reflection capabilities:

  • Compiler
  • Debugger
  • Namespaces

There were significant differences, including such things as the process model. Both OST and VW live in the same image. They share the same Smalltalk kernel and most of the same base classes. Both base OST and base VW code work (mostly) unchanged from previous releases.

The idea for this was originally Georg's - he had vocal chord surgery in 2004, and couldn't speak for 2 weeks - he started this project then, and it's become a full project inside the Cincom Smalltalk team. After that time, he could load the OST codebase - didn't all work, but it did load.

After that, he hired a new team member, Jorg, who had worked on the Windows CE VM as an intern. He's been doing much of the DLL integration for ObjectStudio 8, as well as primitive migration. That started at a rate of one primitive per day (there are 450!). That's where things went to making the OST C/C++ codebase into a VW callable DLL. He started that in February of 2005. He got a basic version completed by JUne of 2005.

At that point, compatibility testing started in earnest. If a component didn't work right, they wer either fixed, or replaced. For instance, ObjectStreams have been replaced by BOSS. This took much longer than originally anticipated :)

The original strategy was to not modify the VW VM at all. Some bugs did need to be fixed, and the Event system had to be changed somewhat - but that was it. The goal for ObjectStudio 8 on the Smalltalk side was to make VW namespaces invisible. Classes live in namespace ObjectStudio, globals live in ObjectStudio.Globals. Here's Georg in front of a (not clear in the picture) architecture diagram:

And here's a capture of the image Georg sent me afterwards:

Another set of issues came up in the way code is stored. ObjectStudio uses a different chunk format, and also stores code in CLS files (one class per file) - with additional complexity in secondary files (somewhat like the .NET partial class files, actually). The answer was a new compiler for ObjectStudio, with a new parser (both written in VW, at the Smalltalk level).

There were also some syntax differences - in OST, you can use:

{ ["code here"] ["code here] }

to define an array of blocks. The VW compiler didn't do that, so they created code transformations that changed that kind of code over. As well, in ObjectStudio, you can assign to a method parameter. Again, transformations were defined to generate temp variables. Finally, there were some semantic differences - here are a few examples:

CodeVisualWorksObjectStudio
1=0 ifTrue: [1]nilfalse
[:n | ] value: 11nil
Array new add: 1Error#(1)
(Array new: 1) at: 1 put: 77#(7)

The team defined a set of substitutions in order to execute ObjectStudio versions of messages that are like the examples above - i.e., where OST specific behavior should be preserved.

There were also mappings for the ObjectStudio chunk formats, so that OST 8 can read and write the classic OST file formats. In ObjectStudio, there is a very string integration between Smalltalk and C: there are numerous cases where the image and the VM call back and forth. OST has always been intepreted, so optimizing this callback scheme made sense. So there are five ways to call C:

  • Direct Primitives
  • Numbered Primitives - <primitive: 123>
  • Named Primitives - <osprim: MFC openWindow>
  • Module/EnfinModule
  • ExternalProcedures

To handle this, a wrapper DLL was created using DLLCC. It uses __oop as a parameter and return type. It calls ObjectStudio primitives using a simulated ObjectStudio stack.

Another issue: In OST, object pointers never move - and this assumption gets used (for instance, in Windows API calls). In VW, the garbage collector moves object pointers all the time. The solution was to make OST OPTR objects into a C++ wrapper class, which handles this. Primitives either map directly to VW primitives, or got replaced by auto-generated replacement code, which goes into the wrapped DLL.

In ObjectStudio 8, Unicode capabilities are available, period. No more variant VMs and images.

Finally, the process model differences.

VisualWorks

  • Processes run at different priorities
  • Windows Events are handled (almost) any time
  • Shared queues move events to the target processes
  • Implemented in C

ObjectStudio

  • The caller of all execution is the Windows event model
  • All message sends in the ASendQueue are executed when the Windows Event is empty
  • Implemented in C++

This is where some modifications to VW event handling had to be made. There are specific subclasses now that communicate directly with the Windows Event system, rather than a generic cross platform wrapper.

ObjectStudio also has some interesting features missing from VW: for instance, class proxies. It has the same name as a missing class, and handles DNU by loading the missing class/application. This gives ObjectStudio lazy loading. In VW, you have parcels, but they don't do lazy loading.

A few Performance Issues:

  • In OST, Smalltalk message sending is slow, while calling C is "free"
  • In VW, message sends are fast, while calling C is expensive
  • This has driven different optimization schemes :)

Another issue: file-in some .st code in VW:

  • If a load takes 1000 seconds
    • 900 are refreshing the RB
    • Of 100 seconds
      • 90 are repeatedly relinking the system
      • Of 10 seconds
        • 9 are disk flush
        • 1 second compiling

This has been optimized. A pleasant side effect is, it helps both VW and OST. New stuff for ObjectStudio: Store, the RB, the debugger, the inspector, related tools (code critic, etc). Note: ObjectStudio developers do not need to migrate to Store. They can continue to use the same source code control tools they use with their current ObjectStudio code.

Where are we? We have been working closely with a customer for feedback and porting data. We intend to have a first preview (beta) ready for general customers to see in the winter. Some known incompatibilities:

  • Immutability
  • Declare pool dictionaries
  • In the modeling tool, export in ASCII (binary format is incompatible)

Georg's parting question: Integration of Smalltalk systems is possible. So, are there other systems that should be integrated? Squak, VA, VSE? Smalltalk-X, Dolphin, Gemstone? What about other languages, like Ruby, Java?

Technorati Tags: ,

 Share Tweet This

esug2006

Erlang

September 7, 2006 5:49:24.844

Now we have Joe Armstrong - an invited speaker to talk to us about Erlang. I've always been curious about Erlang - Patrick Logan has said good things about it, for instance. He's worked in Smaltalk, and likes it. His work has been in telephony, and Smalltalk was a bit slow for their purposes (this is way back). Ordered a Tektronix Smalltalk machine (that's how far back :) ) - but there was a two month wait for it.

In the interim, he fell into Prolog by accident. By the time the Smalltalk machine arrived, he was more interested in working with Prolog. He gave the Smalltalk machine away, and Objectory came out of that donation. In further experimentation, he added concurrency to Prolog - and this is where Erlang was born - Joe is the inventor of Erlang. He's curently a senior system architect at Ericsson AB.

One thing that Erlang is very good at is creating large numbers of processes. In Java, for instance, processes map down to the OS (threads) - and that takes away predictable behavior. So what you want is:

  • create large numbers of processes
  • work the same on different OS's
  • are garbage collected
  • are location transparent
  • cannot damage other processes
  • are defined in the language
  • creating and destroying processes should be lightweight

Niall Dalton: Erlang is Smalltalk the way Alan Kay wanted it to be - this got a nice laugh from the audience :)

Assertion: To make a fault tolerant system, you need at least two computers. That means that you are doing distributed programming. To simplify the problems, have:

  • No sharing
  • pure message passing
  • no locks

Sharing gets in the way of fault tolerance. This gives us Concurrency Oriented Programming:

  • A style where concurrency is used to structure the programming
  • large number of processes
  • complete isolation of processes
  • no sharing of data
  • location transparency
  • pure message passing

So the design rules:

  • Identify the concurrent operations in the problem
  • identify the message channels
  • write down the set of messages seen on each channel
  • write down the protocols
  • write down the code

Try to make the design isomorphic to the problem - i.e., a 1:1 correspondence between process/message structure in the model and the problem.

In 1998, Erlang got banned at Ericsson, due to a "we must use standard languages" wave (sounds familiar). The upshot was, Erlang got open sourced, and the Erlang folks formed Bluetail. Bluetail was later acquired.

The basic concept here: systems should be black boxes that can communicate - failures in one black box should not crash another black box. This leads to making all communication asynchronous. The problem domain:

  • Highly concurrent - hundreds of thousands of parallel activities
  • Real time
  • Distributed
  • High Availability - down times of minutes/year - never down
  • Complex Software - millions of lines of code
  • Continuous Operation - years
  • Continuous Evolution
  • In service upgrade

So to get this:

Concurrency processes
Error encapsulation isolation
fault detection what failed
Fault identification why it failed
Live code upgrade evolving systems (multiple versions at same time)
Stable storage crash recovery

Isolation is key here: It's why hardware components are easier to build. Erlang is designed to operate concurrently via message passing, with isolation. So:

Processes have share nothing semantics and data must be copied. Message passing is the only way to exchange data. Message passing is asynchronous. My program should not be able to crash your program.

Programming for Errors: If you can't do what you want to do, try and do something simpler :) Using these techniques, they've built a 9 nine's reliable GPRS system in Europe.

Technorati Tags: , ,

 Share Tweet This

itNews

Bursting the Vista Bubble

September 7, 2006 6:18:15.909

InfoWorld's Oliver Rist is underwhelmed by Vista:

Instead, I now have a much slicker-looking version of Windows XP ¦ along with significantly increased hardware requirements. I don't mind the 1GB of RAM baseline so much. But the need for a 3D-accelerator in any PC that wants to run Aero sticks in my craw. Executives will start out seeing reason, but soon enough they'll want Aero running everywhere. That means fancy-shmancy video cards. And fancy-shmancy video cards mean added complexity, and that means more trouble for the desktop admin set -- all for something that really amounts to glitz and little else.

I'm starting to think that Vista is astonishingly like Sony's PS3: it's an incremental improvement over the previous generation, but it's being pitched as a huge change. The big price tag for fairly small benefits is not a great marketing campaign, IMHO.

Technorati Tags: ,

 Share Tweet This

esug2006

Seaside for Web 2.0

September 7, 2006 8:10:59.810

Lukas Renggli is up again, this time talking about Seaside and how it fits with the "Web 2.0" meme. So Seaside does a lot of things out of the box:
  • XHTML
  • CSS
  • RSS
  • AJAX

Heh. He said I'd get on their case for bad RSS. Lol :)

This talk is about Seaside's use of AJAX, which gives you client level interactivity.

You want to concentrate on your web app, not on browser issues (especially browser incompatibilities). Seaside masks that by using Javascript [ed: Depending on how well your browser handles Javascript: see TinyMCE, for instance...].

The integration is via the Scriptaculous Javascript library. It handles things like drag and drop, in place editing, etc. The important thing is, you can express all of this in Smalltalk - Seaside has APIs for that.

Here's a small example of something interesting: shared state across multiple browser instances:

Example:

 
 

html effect
	id: 'hint';
	shake.

becomes:

new Effect.Shake('hint');


You integrate this the same way we saw in the short example 2 days ago.

The kind of code you can write:

 

html (updater | periodical | request | evaluator)
	[OPTIONS]; *
	[HANDLER]; *
	[TRIGGER]; *
	[CALLBACK]; *


Note: I don't guarantee that the code examples are perfect :)

 

"in place editor"
html span
	script: (html inPlaceEditor
	       triggerInPlaceEditor: [:v | anItem title];
	       callback: [:r | r render: anItem];
	with: anItem title.

"drag & drop"
html form id: 'checkboxes'; with: [
html div
	id: 'items';
	script: (html sortable
	       tag: 'div';
	       onUpdate: (html request
	               triggerSortable: 'items'
	               callback: [:v | self model item: v]));
	class: 'items';
	with: [self renderItemsOn: html]]


For debugging, you can usually debug in the Smalltalk debugger. If you have issues at the Javascript level, use Firefox and the FireBug extension that gives you some Javascript debugging capability. And see scriptaculous.seasidehosting.st.

Technorati Tags: , , ,

 Share Tweet This

podcasting

Another podcast coming

September 7, 2006 9:32:37.223

I interviewed Georg Heeg this afternoon, and I expect to post the talk this evening. This one is a bit longer; 25 minutes, plus whatever I add for lead-in/coda.

Technorati Tags: ,

 Share Tweet This

esug2006

Scrum in Practice

September 7, 2006 9:57:51.158

The next session is Rowan Bunning talking about Scrum - Rowan's the Product Manager for SwS, so methodology is something he'd be interested in.

Rowan started with Wizard (from which SwS was spawned). They've been a Smalltalk shop for the last decade, and he's been in the Information Services group (one of 5 there). They made a move from bespoke applications to products awhile back.

He learned about Scrum from Scott Ambler's presentation at the 2003 Smalltalk Solutions - he's become a Scrum Master and Mentor since. Scrum is used extensively at Wizard and Software with Style now. Why?

Scrum has executive backing at Wizard, and it delivers positive reinforcement to the developers. Smalltalk works really well for rapid development, which makes it even better.

Scrum uses a defined process - you try to make reality follow an upfront plan. It's also empirical - you continually adapt and adjust based on how things are going.

"Slice it like Sashimi"

There are three Scrum roles:

  • Product Owner - represents customer, users
  • Scrum Master - guides process
  • Scrum Team - 5- 10 people - multi-disciplinary, builds product - self organizing

At Wizard:

  • 2 Week Sprints
  • 2-4 hour reviews and meetings
  • retrospectives integrated into review
  • task allocation often left open
  • testing on development server - bug reports from tool
  • transition to QA server - formal change tracking

The rest of this session was a walk through of how they might take a task and move it through the cycle. An excellent point made: Avoid Critical Risk Tasks at the End of a Project. Words to live by in product development :)

Technorati Tags: , , ,

 Share Tweet This

esug2006

ESUG 2006 Pictures

September 7, 2006 10:01:08.716

Wondering what ESUG 2006 in Prague looked like this year? Check out Adriaan van Os' pictures.

Technorati Tags: , ,

 Share Tweet This

development

Microsoft has Iron Python...

September 7, 2006 15:03:11.112

Sun has picked up JRuby. Boy, you would think this dynamic language thing was important, or something. I did find two things to quibble with, one in the Ruby posting:

Will they [ed: The JRuby guys] work on JRuby full time?
Yes, but they also have a mandate to think about developer tools. Right now, developers who use dynamic languages like Python and Ruby are poorly served, compared to what Java developers have.

Perhaps Tim missed Smalltalk, which has always had superior tools.

Then, patrick Logan spotted this (via Jon Udell) from Jim Hugenin:

I'm not a dynamic language zealot, and in general I don't really understand zealots. I wrote the first three versions of the IronPython compiler in Python, but today it's written in C#. Part of the reason is that now I understand it, so the values of prototyping, and the looser thinking that really helped a lot in the early days, don't really help as much any more. Also there are now more people working on the compiler, and there are some real benefits to the static typing, and the support you can get from Visual Studio.

Well, I think Jim missed the boat there. Why? Well, it came up in Georg's talk about ObjectStudio 8 today. ObjectStudio 8 will be hosted inside VisualWorks, and the compiler (which was in C in classic OST) is now a subclass of the SmalltalkCompiler in VW. Why is that good? Because it made the whole process a heck of a lot easier: you write Smalltalk faster than C (or C#), period. It's also a heck of a lot more extensible that way. Having a language level compiler for Iron Python would have opened up a lot of cool things to developers; having it in C# just locks it away in useless-land.

Technorati Tags:

 Share Tweet This

podcast

An Interview with Georg Heeg

September 7, 2006 15:07:34.171

Today, I interviewed Georg Heeg. he's got a long history with Smalltalk, and works very closely with Cincom now on Cincom Smalltalk - both in development and in services for our mutual customers. You can listen to the MP3 file here.

Technorati Tags: , , , , ,

Enclosures:
[http://www.cincomsmalltalk.com/audio/heeg_interview_final.mp3 ( Size: 9460800 )]

 Share Tweet This

DRM

"For the Artists" Explained

September 7, 2006 15:23:09.164

It seems that the interests of the artists have more in common with the rest of us than with those of the RIAA or the MPAA:

On last night's episode of The Tonight Show, actor Ben Affleck revealed that he used his video iPod to help him prepare for his role in the upcoming movie Hollywoodland. Portraying the late George Reeves who starred as the original Superman, Affleck put every episode of the original series to his video iPod to he could watch them repeatedly in order to get a feel for Reeves' mannerisms.
Since the original Superman series is unavaiable through the iTunes Music Store, is can likely be assumed that Affleck acquired DVDs of the series and used his computer to "rip" them into iPod-compatible format. This is in stark contrast with the movie studios' collective claim that the simple act of ripping a legally purchased DVD into a computer is a violation of the law.

The RIAA and MPAA continue to bray at the moon, and continue to become less and less relevant..

 Share Tweet This

media

Article Published

September 7, 2006 15:40:16.817

This is neat - I got an article published in "Network Support" magazine. Click this link to see the cover, and then on the part of the cover that shows a Javascript jump to page 16. Click anywhere on the page to zoom and make it readable :)

Update: It appears that I have access to this, but most people don't. I'm not logging in, so I have no idea why.

Technorati Tags: ,

 Share Tweet This

PR

A new candidate for worst negative PR Event

September 7, 2006 15:52:45.513

I missed the HP story earlier this week, but boy - those guys stepped in it. In their zeal to find the source of an information leak, they started dumpster diving on their board members. That raises the obvious question: if they are willing to delve into the privacy of their own board members, just how far would they go with a blogger? Or a reporter? Or a line employee?

I think Scoble said it best:

I’m sure the board of directors at HP is hoping this one just blows over. Here’s a hint. It won’t. Until you get rid of Pat. A message MUST be sent that the ends do NOT justify the means.

Apparently, these bozos learned nothing from the Sony rootkit fiasco: trying to stay silent (or worse, as Sony initially did, trying to justify the mistake) just doesn't work. This is now a PR black mark, and someone is going to have to pay for it - just like someone at AOL had to pay for their mistakes.

Technorati Tags: ,

 Share Tweet This

esug2006

Gemstone 64

September 8, 2006 3:41:06.915

First up Friday morning - Norm Green, Smalltalk engineering director at Gemstone. The main topic: Gemstone/64. Gemstone is a privately held firm, with a very experienced development team - many have been there 10-20 years.

Brief background: Gemstone is an Object Oriented Database. Objects are stored in object format - there are no relational rows or columns, no O/R mapping. Gemstone supports ACID transactions. Gemstone is also a Smalltalk dialect - it comes with a complete set of kernel classes. The database contains the data and the behavior, which makes it a full multi-client, multi-language application server:

  • Smalltalk: VW and VA
  • Java
  • C/C++
  • Unix shell (topaz)

Why 64 bit? Customers wanted to get past the 4 gb of addressable memory limit:

  • 2-3 gb page cache limit
  • 1 billion object limit

For a 100 gb database, only 2% of the database can be cached, which can lead to issues - you only get 2-3 gb page cache (depends on the platform). They came up with a 2 phase project:

  1. Phase 1: 64 bit address space
  2. Phase 2: 64 bit object identifiers

In phase 1, they improved performance, and addressed some of their garbage collection issues. They can now support very large page (shared) cache: up to 16 TB. That gives you a "database in memory" capability.

In the old design, old objects sometimes persisted, even when they shouldn't have. That's been addressed. Online backups are now safe, and garbage collection has been parallelized and improved greatly.

The biggest thing they did in phase 1 was a major change to the VM design (which is how the stuff above was accomplished). Norm has benchmarks for the improvements in performance. The entire rewrite took 15 months. The new VM is in use by customers in production.

In phase 2, they increased the possible size of databases - up to 32 TB in size. They further improved VM performance - 30-50 percent VM speed performance. By moving SmallIntegers to 2^60 from 2^29, they were able to add additional bytecodes. Doing more in a single bytecode improves performance. Additional extensions (new class: SmallDouble) are compatible with the 64 bit work being done on VisualWorks.

How do you upgrade? You need to be on Gemstone 6.1.5 or later. When they deployed to a major shipping client, performance improvements (DB side) of 30-50 percent were seen in the field, although there was an increase in the network load (larger bytecodes). The VW client runs slower (30-50 percent) because 64 bit ids become LargePositiveInteger objects. They are working on that, but it should also improve with 64 bit VW client (on their roadmap).

They currently support Solaris and HP - adding AIX and Linux (64) shortly. Their roadmap has a number of items for future performance improvements on it.

Technorati Tags: , ,

 Share Tweet This

esug2006

Rethink Smalltalk

September 8, 2006 4:58:14.909

Mathieu van Echtelt of CosmoCows - here's the intro to his session. They've created a development environment on top of VisualWorks for building Business Administration systems.

Their systems are mixed, involving Smalltalk, and C, Javascript, HTML. They use Seaside to try and keep those under control - even with the Squeak VM, they use the Slang Smalltalk subset to do modifications. Their goal has been to build along the lines of the original Smalltalk design principles:

  • Personal Mastery: "If a system is to serve the creative spirit, it must be entirely comprehensible to a single individual" (Dan Ingalls)
  • Storage Management: "To be truly object oriented, a computer system must provide automatic storage management" (Dan Ingalls)
  • Reactive Principle: "Every component accessible to the user should be able to present itself in a meaningful way for observation and manipulation" (Dan Ingalls)

The rest of the session was a live demo

Technorati Tags: ,

 Share Tweet This

esug2006

Packaging freeware/small apps in VisualWorks

September 8, 2006 6:00:17.525

Rob Vens is talking about an interesting topic: building and distributing freeware using VW. I do that - BottomFeeder :) Rob's first language was Smalltalk, so even though he's not currently working with ST at work, he does shareware/freeware work in it.

Rob started doing these kinds of apps by making things he'd built for his own use available (personal finance applications to start with). Problems?

  • Small team (just yourself, usually)
  • Lack of free time
  • High but inconsistent release schedules
  • Anonymous user community
  • As many platforms as possible
  • Bug and feature driven
  • Very much depending on user feedback

I identify strongly with all of those, as I face the same issues in my projects (BottomFeeder and Silt). More issues he encountered:

  • Packaging
  • Distribution
  • Installation
  • Platform Compliance
  • Versions, bugs, feature requests
  • User feedback
  • Licensing
  • Making some money?

Tools: VisualStudio (scripting), 7-Zip, Xara3D, Axialis Icon Workshop, ResHacker for Windows exe files. His update scheme involves downloading and replacing the entire deployed image/executable.

For distribution, he uses his own website - you choose a platform and download.

Platform Compliance: this is always hard, as are icons, and version/readme file issues. Tracking bugs? User feedback? Not easily tracked, mailing lists didn't work out.

Technorati Tags: ,

 Share Tweet This

travel

Prague Castle and Mala Strana

September 8, 2006 15:54:31.976

After ESUG wrapped up, I went out to jog, so I could find my way to the castle. Once I did that, I went back and walked up with my camera. Here's a view of the entry, looking at Kohl Fountain and the Chapel of the Holy Cross:

It's beautiful up on that hill, and if you visit Prague, make sure to head up there. I walked across the castle grounds, outside, and took this photo looking back at the gate:

Here's another shot of the same location, from further back:

Here's one more: A shot of St. Vitus Church:

I'll have another post in a few minutes with shots from the Mala Strana and old Jewish Quarter areas.

 Share Tweet This

travel

Around Mala Strana

September 8, 2006 16:07:52.170

I walked from the castle down the hill and across the bridge to Mala Strana, an older part of town. The old Jewish Quarter (mostly empty of Jews since WWII) is in that area as well. Here's a small monument to 1968 I passed by:

Here's a monument erected after WWII, to commemorate the victims of the Nazi occupation:

On the same theme, here's an ad for the museum of communism: you can't read the lower text (bottom right), but it says: "directly above McDonald's ". Hilarious:

I fly back home in the morning - it'll be a long day.

 Share Tweet This

DRM

Security vs. DRM

September 8, 2006 16:16:54.933

James Governor quotes Bruce Schneier on which matters more to Microsoft: security holes, or DRM holes?

If you really want to see Microsoft scramble to patch a hole in its software, don't look to vulnerabilities that impact countless Internet Explorer users or give intruders control of thousands of Windows machines. Just crack Redmond's DRM.

Way to create good PR, Microsoft. The irony is, the patch has already been hacked. So, anyone else want the MS engineers to spend their time on something valuable? Or should they keep being the RIAA's butt boys?

Technorati Tags:

 Share Tweet This

PR

The HP thing gets worse

September 9, 2006 14:37:26.976

The HP Board's probe snagged two CNet reporters along with the board members. meanwhile, I heard on the Buzz out Loud podcast (for September 8th) that Patricia Dunn was "shocked" to find out about the pretexting to get private data. Sure, sure - she's shocked in exactly the same way that the police chief in Casablanca was "shocked" to find gambling going on at Rick's Cafe.

Just how stupid does Patricia Dunn think we are?

Technorati Tags:

Technorati Tags:

 Share Tweet This

news

Fair Trade Coffee: A sham

September 9, 2006 14:43:21.707

Awhile back, Troy sang the praises of Fair Trade Coffee. At the time, I expressed cynicism along these lines: If a commodity can have its market price raised by being tagged as somehow fairer, the motivation to game the system (in order to scheme even more profit from the commodity in question) would be overwhelming.

Well, color me unsurprised by the story in the Financial Times this morning: "Ethical Coffee Workers paid below market wages":

"Ethical" coffee is being produced in Peru, the world's top exporter of Fairtrade coffee, by labourers paid less than the legal minimum wage

I'm shocked, shocked to find out that there's gaming of the system going on. meanwhile, the Fairtrade people are utterly unwilling to deal with reality:

As the board member of one Peruvian Fairtrade-certified coffee producer told the FT: "No certifier can guarantee they will purchase 100 per cent of a cooperative's production,, so how can they guarantee that every bag will be produced according to their standards?"

I seem to recall making that point, and then being roundly criticized for it :) What Fairtrade mainly accomplishes is this: it provides a way to add markup at the consumer end without having to actually do anything at the producer end. The bottom line: if you buy Fairtrade coffee so that you can feel better about it, don't. Just buy the non-Fairtrade stuff, because all you're really doing is providing extra margin to the sellers. In fact, it's worse than that; you're providing them a huge incentive to screw you and the farmers over. To make that point more brutally obvious:

The FT has been told of Fairtrade coffee being planted in protected national forest land in the northern Peruvian jungle.
Using global satellite mapping, a Canadian NGO found that about 1/5th of all coffee production in one Fairtrade certified association was illegally planted in protected virgin rainforest.

Oops.

Technorati Tags: ,

 Share Tweet This

travel

Silly Security, Part II

September 9, 2006 14:44:37.252

On my way out to ESUG, I ran into bozo security at BWI - including being told that the list of banned items is classified (never mind that you can view that list online, here). Well, not to be outdone, the security folks at Heathrow have also removed their capacity for thought.

Consider two things:

  • In Prague, the fellow in line in front of me had a huge bottle of orange soda in his laptop bag. No problem - on the plane to the UK he went. Apparently, bad actors only care about flights between the US and the UK
  • At Heathrow, I arrived with my laptop bag and a small paper bag. The bag held my headphones and camera bag, because I didn't want to crush either one. Nope: one bag limit. I could carry my book, drape the headphones around my neck, and stuff the camera into my laptop bag, so long as I only had one bag. What that did to improve security, I have no idea.

Here's the really stupid part about all this. The bozo security checks generate huge lines outside the secure area. What do you call a huge mass of people that have been herded into a central area, where there's no security check? I don't know what the morons at TSA call it, or what the equivalent set of morons in the UK call it, but I call it a target waiting for a bad actor to notice it.

Technorati Tags: ,

 Share Tweet This

logs

Weekly Log Analysis: 9/9/06

September 9, 2006 18:55:12.566

Time for my weekly look at the logs - BottomFeeder downloads were brisk, at a pace of 232 per day:

Platform BottomFeeder Downloads
Windows 583
Update 395
Linux x86 184
Mac X 93
CE ARM 83
Mac 8/9 80
Windows98/ME 51
Sources 30
Solaris 24
Linux Sparc 23
HPUX 22
AIX 21
Linux PPC 18
SGI 11
ADUX 7

Those are nice numbers - I plan to push a new release with all the bug fixes shortly. The HTML accesses:

Tool Percentage of Accesses
Mozilla 50%
Internet Explorer 36.6%
Planet Smalltalk 5.6%
MSN Bot 2.2%
Other 2.2%
Opera 1.4%
Megite 1%
BottomFeeder 1%

Firefox edged up a bit. Finally, the RSS accesses:

Tool Percentage of Accesses
BottomFeeder 27.3%
Mozilla 16.4%
Other 9.6%
Net News Wire 8.3%
Safari RSS 6.1%
BlogLines 5%
Google Feed Fetcher 4.1%
Internet Explorer 3.8%
NewsGator 3.7%
Planet Smalltalk 1.9%
RSS Bandit 1.6%
Opera 1.4%
Liferea 1.3%
Akregator 1.3
SharpReader 1.2%
RSS 2 Email 1%
JetBrains 1%
News Fire 1%
MSN Bot 1%
Java 1%
Lilina 1%
BlogSearch 1%

And that wraps another week - the diversity of aggregation tools is still quite large.

 Share Tweet This

general

UI Consistency

September 10, 2006 9:27:51.590

Tim Bray has been looking for a new car, and has come to a conclusion on the UI issue - i.e, whether it's easier to switch computers, or cars:

The computers are, by and large, an easier switch than the cars. Yes, the pedals and steering wheel and shifter are consistent, but getting the windshield wipers to do what you want is a research project on every car, as is setting the interior lighting and adjusting the audio for bass, treble, and so on, and a bunch of other minor functions that you need to do all the time. But cutting and pasting and moving files and editing text and browsing the web and reading mail and improving photos and so on, these days that’s all much of a muchness, whatever computer you’re sitting in front of.

I have to say that I agree. I'm not shopping for a new car, but I rent them on travel a fair bit. A decade ago, it took me less time to get out of the rental lot. Now, I always make sure to spend a few minutes locating things like the seat adjustment, the radio controls, the wipers, defroster... you get the picture. You might wonder about the radio, but in my experience, even those are harder to deal with than they used to be.

Technorati Tags: ,

 Share Tweet This

DRM

Unboxed: undone by DRM

September 10, 2006 9:35:57.222

Scoble hyped Amazon's Unbox the other day, and has now linked to a bunch of deeper (and not positive) reviews:

A couple of days ago I said that Amazon might be the fearsome Microsoft killer we were expecting Google to be. But after reading the latest reviews of Amazon’s new Unboxed, I should take that back.

Follow the link to Scoble's blog for the reviews - the one that sticks in my head was Friday's podcast from Buzz Out Loud - Tom Merrit was livid over the way Unbox works. He had a few large complaints:

  • The files that come down play only in the Amazon player
  • Amazon's software runs at startup whether you want it to or not
  • Amazon's software tries to phone home at startup (probably for updates)

His irritation came not with the phoning home, but with the fact that it did so without telling him. The DRM is what makes it useless though; why download something that can only be played in one viewer? I have a large scree TV; I probably want to use it. This is yet another example of the MPAA standing between customers and what they want, and it's not going to help their sales.

Update: Tom Merrit goes into great detail on the problems here, on his blog

Technorati Tags: ,

 Share Tweet This

law

Evidence? Who needs Evidence?

September 10, 2006 10:13:29.577

The RIAA's scattershot strategy of suing anything that moves ran into a snag last week - they found a plaintiff that was unwilling to to pay his lunch money to make them go away:

In Elektra v. Wilke, the Chicago RIAA case in which defendant Paul Wilke has moved for summary judgment, the RIAA has filed a motion for "expedited discovery", alleging that it does not have sufficient evidence to withstand Mr. Wilke's motion. The RIAA's lawyer said
"Plaintiffs cannot at this time, without an opportunity for full discovery present by affidavit facts essential to justify their opposition to Defendant's motion.

Here, let me translate: "We didn't think we'd need any evidence. We intended to extort a few thousand dollars from this guy, and move along to the next victim. Since when do we need actual facts?"

Technorati Tags: ,

 Share Tweet This

general

Oh boy, dishwasher part II

September 10, 2006 10:33:30.493

Oh boy, my dishwasher has decided to take up smoking - again. Last time was an epic saga of marginal performance by Sears repair. The same symptoms happened this time, with smoke pouring out of the front panel. I'm fairly certain that it's no longer under warranty, but I'm on the phone now to verify that. If it is under warranty, I'll have to wait for the part again. If it's not, we'll be buying a new dishwasher. Maybe we can get something quieter...

Technorati Tags: ,

 Share Tweet This

smalltalk

The value of simple

September 10, 2006 15:29:23.858

Over in the MSDN forums, Martin Unterholzner recently discovered Gemstone, and how much easier it makes life for the application developer:

Recently I started to work on a Smalltalk project using Gemstone as ODBMS. Gemstone goes one step further than other ODBMS systems like db4o. Gemstone does not even require an explicit query or storage operation of your objects into the DB. It is enough to make your business object subclass of PersistentObject such that it will automatically be stored and read. In this way, only minimal coding overhead is required enabling object persistence (almost) for free. However, for providing this powerful mechanism the database and the virtual machine need to be closely linked together.
With the integration of LINQ into .NET Microsoft is going to dramatically increase the value and the productivity of .NET. Nevertheless, I am wondering if Microsoft has the intention to develop a native ODBMS technology for .NET in the near future since, being the producer of the .NET framework, it has the opportunity to integrate a powerful object oriented database engine providing the same features as Gemstone does for Smalltalk.

Gemstone is the simplest thing that could possibly work for object persistence - it's a Smalltalk implementation and a database, so you can drive your objects right there on the server. What if you have a well entrenched RDBMS as the "database of record"? Well, Gemstone can act as an application server/cache in front of said DB, and drop data to it on a regular basis - they have RDBMS connectors for that kind of thing. There's a non-commercial version of Gemstone right on our NC CD, so you can download it and try it out.

Technorati Tags: ,

 Share Tweet This

sports

Things are back to normal

September 11, 2006 0:51:30.335

Ahh, it's headlines like this that I like to see:

With the A.L.’s Best Record, the Yankees Are All Smiles

That's how things should be at this time of year :)

Technorati Tags: ,

 Share Tweet This

news

Remember

September 11, 2006 7:39:27.969

A solemn day for all Americans

9/11 Flag Raising

Technorati Tags:

 Share Tweet This

DRM

Unboxed and Un-Smart

September 11, 2006 7:51:57.068

I commented on Unbox (Amazon's new video service) yesterday - today, I see that there's a pretty good summary on the problems available at Uninnovate:

Even though downloaded movies cost just as much as regular dvds, Amazon won’t let you watch the movies on your DVD player. Unbox allows you to back-up downloaded movies on blank DVDs, but the backups are encypted to prevent you from doing anything useful with them. Amazon has taken what was potentially the most compelling feature of Unbox and removed it from the service. This is classic uninnovation.

And how does Amazon want you to watch your expensive downloaded movies on your new HDTV? Amazon’s only suggestion is to buy a clumsy Windows Media Center PC and use an antequated s-video cable to connect it to your television. Welcome to picture quality circa 1995.

The bigger problem is that most PC's are nowhere near the TV, so running an S-Video cable is kind of pointless to begin with. Things get even worse - the license agreement they ship has some pretty egregious clauses - for instance, you have to agree to apply any and all patches Amazon ships for Unbox. Amazon also reserves the right to delete all your downloads if you uninstall Unbox (and uninstallation is no picnic - see Tom Merrit for that mess). To cap it all off, they can change your terms of service at any time. So, I can pay the same amount that a DVD costs me down at Target, only the DVD from Target will play on any device I own. This is one of the most stupidly crippled things I've ever heard of. Somewhere in the bowels of Amazon, there's a smart guy who made that point at a meeting 12 months ago - maybe if he or she is lucky, they'll have a chance to say "I told you so".

Technorati Tags: , , ,

 Share Tweet This

DRM

Best Description of DRM Ever

September 11, 2006 7:56:53.473

James Governor has the best description of DRM I've seen yet:

DRM is digital lard.
its greasy, opaque and is going to give a lot of users heart attacks.

That's simply brilliant :)

Technorati Tags:

 Share Tweet This

cst

The new website is live

September 11, 2006 15:14:57.161

The new version of our website is now live - if you navigate here or here, you'll land on it. There's an RSS feed available, so you can follow changes in your aggregator as well. We expect to have more CSS options for the site soon - in the meantime, enjoy the upgrade.

Update: Fixed the RSS link

Technorati Tags: ,

 Share Tweet This

cst

About the site update

September 12, 2006 0:23:36.689

I mentioned earlier that we rolled in the new website today. One thing that is not complete is all the url mappings. We've mapped many of them over, but some 404 responses are still out there. If you run into any, please send me the details.

Technorati Tags:

 Share Tweet This

smalltalk

Strongtalk goes open source

September 12, 2006 9:34:14.883

This is interesting news - Sun has fully open sourced Strongtalk, including the VM. From the site:

Strongtalk development was halted before it was fully productized, so considerable work remains to polish-up Strongtalk before it is ready to be used in real-world applications. But with the release of the virtual-machine source code, a whole new world of possibilities has opened up. What will become of Strongtalk? Now, the answer is finally in the community's hands!

I'm sure that our VM engineers will have a look, but there's no telling what can be gleaned from this.

Technorati Tags: ,

 Share Tweet This

BottomFeeder

New BottomFeeder build coming

September 12, 2006 10:43:20.301

I'm in the process of putting together a new dev build of BottomFeeder. This should lead to a quick release of 4.3 - there were a number of bugs in 4.2 that I'd like to roll up into a general release. I'll have the dev build up later today, and - if everything looks good - roll a new release this week.

Update: the new dev build is up

Technorati Tags: , ,

 Share Tweet This

PR

Dunn is Done

September 12, 2006 11:31:30.777

There's more proof that a negative PR event can't just be brushed away - HP's Patricia Dunnis stepping down:

Hewlett-Packard Co. said Tuesday that Patricia Dunn will step down as chairwoman of the computer and printer maker in January amid a widening scandal involving a possibly illegal probe into media leaks. She will be succeeded by CEO Mark Hurd.

Hurd will retain his existing positions as chief executive and president and Dunn will remain as a director after she relinquishes the chair on Jan. 18.

"I am taking action to ensure that inappropriate investigative techniques will not be employed again. They have no place in HP, " Hurd said in a statement.

This is fairly fast for a large organization to move, but there was still the requisite round of denials and explanations from Dunn first (which only made things worse). It's a new world of PR now - 10 years ago, you only had to deal with the trade press (and maybe the general media if the firestorm got big enough). Now, there's the whole "Army of Davids" thing - which may not be enough to effect change all by itself, but can certainly generate enough heat and light to get the notice of everyone else.

 Share Tweet This

news

In other news of the obvious...

September 12, 2006 11:53:13.342

Hey look - researchers have discovered the blatantly obvious: air travel helps spread flu:

Scientists have found what they call the first real evidence that restricting air travel can delay the spread of flu -- a finding that could influence government plans for battling the next influenza pandemic.

Air travel has long been suspected of playing a role in flu's gradual spread around the globe each year, but yesterday, Boston researchers said they finally have documented it: The drop in air travel after the September 11, 2001, terrorist attacks seemed to delay that winter's flu season by about two weeks.

In other news, the same crack research team announced that the sun rises in the east.

Technorati Tags:

 Share Tweet This

development

Explaining the Nature of Reality

September 12, 2006 15:29:21.690

Avi Bryant explains the nature of reality to Joel Spolsky:

Joel’s wrong. Yes, Ruby is slow, and yes, that has to do with Ruby’s naive implementation of method dispatch, but no, it’s simply not true that you can “never get something compiled down” to the point where it’s fast enough. A proper implementation of a duck typed language will get method calls down to a single jump plus a single compare, 95% of the time. There’s no vtable indirection needed, which means that it’s generally faster than C++, because branch prediction works and the pipeline doesn’t stall.

In general, Smalltalk can do message dispatch faster than C++. Read the rest of Avi's post for a complete explanation.

Technorati Tags: , , , ,

 Share Tweet This

smalltalk

Variant Method lookup in VW

September 12, 2006 19:55:12.117

This is interesting - apparently, you can execute a "super super" (starting as far up the chain as you like) in VisualWorks. Eliot Miranda posted this in comp.lang.smalltalk:

 

perform: selector withArguments: anArray startingAbove: aBehavior
     "Send the receiver the message indicated by the arguments, starting
      the lookup in the superclass of aBehavior. The argument selector is
      the selector of the message. The arguments of the message are the
      elements of anArray.  Invoke messageNotUnderstood: if the selector
      is not understood by the receiver.  Fail the primitive if aBehavior
      is not the class of anObject or any of its superclasses, or if
      anArray is not an Array with the same number of elements as the
      number of arguments expected by the looked-up method."

        <primitive: 515 errorCode: ec>
        ^self primitiveFailed 


So to test that out, I defined a small hierarchy:

 

Object
	Grandpa
	       Dad
	           Son


Each implements a method #foo, which prints to Transcript, telling me who got executed. So, I ran these in a workspace:

 
son := Son new.
son foo

son  perform: #foo withArguments: #() startingAbove: Son.
son  perform: #foo withArguments: #() startingAbove: Dad


As expected, the first prints the result from class Son. The second executes the one from class Dad, while the last line executes the one from class Grandpa. Kind of neat, but this is definitely a dangerous hack to rely on - especially if your runtime can have new classes inserted into a hierarchy via dynamic updates.

Technorati Tags:

 Share Tweet This

itNews

Who's paying for that?

September 12, 2006 20:12:05.375

Here's a question: who's paying for the bandwidth upgrade that YouTube just got?

"We selected Level 3 because we needed a carrier with a highly advanced, stable, scalable network and a service portfolio that would enable us to manage the magnitude of growth that we continue to experience with more than 100 million videos being watched per day on our site," said Steve Chen, chief technology officer and co-founder at YouTube. YouTube has been one of the Web's breakout hits, hitting the spotlight late last year with the popularity of the "Lazy Sunday" video from Saturday Night Live's Adam Samberg and Chris Parnell (which was later "reclaimed" by NBC and moved to its site). YouTube's subsequent popularity has led to substantial bandwidth requirements, estimated by some reports to cost up to $1 million a month.

Note the comment about NBC reclaiming popular content. I still don't know what the heck the business model for YouTube is, or how they intend to keep paying the bandwidth bills. Sure, they have tons of viewers. Monetizing that is an entirely different question though, and thus far, I just haven't seen anything.

I'll go back to something Jason Calacanis let slip on a Gillmor Gang podcast awhile back, too - if a big player were to buy YouTube, then the mother of all lawsuits would fall on them (copyright infringement) about a nanosecond after the deal was closed.

Update: John Dvorak made a similar point on August 30.

Technorati Tags: ,

 Share Tweet This

management

Pointy Hair Syndrome?

September 13, 2006 7:49:26.987

There's a fair bit of piling on Joel Spolsky this morning - I had a go at him here, after seeing Avi Bryant's post. This morning, there's a lot more - Bob Congdon, John Lam, DHH, and finally, Jeff Atwood, who asks (after a long list of Joel's most insane posts:

All of this makes me wonder: has Joel Spolsky jumped the shark?

I think there's a simpler explanation for this. Based on the success of his company, I very much doubt that Joel is an "in the trenches" developer anymore. He started the long march into the ranks of the formerly technical awhile ago, and now he's fully there - complete with idiosyncratic ideas based on out of date information.

It's clear that Joel knows his stuff when he talks management, product management, and marketing. It's less clear that he has anything useful to say about the practice of code production. That's not a bad thing - it simply means that he's no longer doing that work. Maybe it's time he recognized that.

 Share Tweet This

development

Dynamic is the Future

September 13, 2006 8:26:01.186

Jon Udell notes the rising interest in dynamic languages.

Technorati Tags:

 Share Tweet This

smalltalk

Welcome Chip Dice to the Site

September 13, 2006 9:57:12.097

We've added another Smalltalker to the lineup here: Chip Dice. He'll be talking about practical issues surrounding Smalltalk use in a business environment.

Subscribe here.

Technorati Tags:

 Share Tweet This

PR

Banning Negativity

September 13, 2006 11:00:43.008

Cingular should have picked a better error message when they decided to start filtering out references to Engadget in their forums:

Oh, Cingular. We know you're pissed at us -- you stopped returning our phone calls a while ago after we posted that product roadmap we got our hands on -- but banning all mention of our name, as well as our URL, from your user forums is a little cheap and heavy-handed, don't you think? Guess you don't want your users making informed decisions about your service. Anyway, we must be doing something right, because here's the message users get when trying to post anything to Cingular's customer forums with the word "engadget" in it:

The message body contains the following prohibited content: 'Engadget' You must remove this content before submitting your post.

That just makes them look lame. You have to wonder about the brain wattage of the genius at Cingular behind that...

Technorati Tags: ,

 Share Tweet This

DRM

Content? It's the DRM!

September 13, 2006 13:18:39.092

This would be funnier - if it weren't so close to the mindset of the RIAA and MPAA:

"The great thing about our product is that it puts an end to all those troublesome issues that can arise when so-called content is mixed in with valuable DRM," said Microsoft representative Christopher Dixon .

"We have found that it is easier if we remove the superfluous content part that has traditionally been included in digital downloads. This is DRM that works."

File under sadly true...

Technorati Tags:

 Share Tweet This

DRM

Tales of DRM Futility

September 13, 2006 20:02:02.486

Wired reports that iTunes 7 DRM is already cracked:

The latest version of Hymn can already remove DRM protection from songs purchased from the iTunes 7 store to enable playback on non-iPod players.

So let me get this straight: DRM irritates paying customers, and prevents them from moving their music around as they want to. Bad actors can move music around at will. So....

From a marketing perspective, exactly whose needs are met by DRM? The customer? No. The seller? No. Who then? RIAA members too stupid to read, perhaps?

Technorati Tags: ,

 Share Tweet This

sports

A Nice Problem to Have

September 13, 2006 20:45:08.914

The Yankees have the sort of problem most teams would kill for: more good players than there are spots to play them in. Matsui and Sheffield have been out for months, but both are back now. Their replacements have helped power the team to the commanding lead it has now, so - where to put them?

Technorati Tags:

 Share Tweet This

java

Just add baroque syntax

September 14, 2006 8:15:09.233

That static type system sure makes adding closures to Java simple - witness the latest update to the Java closure spec. I especially liked the discussion of Unreachable.

Now, contrast that with blocks in Smalltalk...

Technorati Tags: ,

 Share Tweet This

product management

Where is CST Going?

September 14, 2006 9:30:56.298

We have a roadmap published on the Wiki, but I'd like to take a look at one of the areas that we are focusing on: ease of deployment. What I'd like to do is ask our community to rank a few things:

  • Ability to ship a Cincom Smalltalk application as a DLL/Shared lib
  • Easier integration of C libraries
  • Easier creation of a Smalltalk runtime image/executable

Of those three things, which one most needs work? I have my view of the relative importance of them, but I'd really like to know what the Smalltalk developer community thinks. Either add a comment, or drop me a line.

Technorati Tags: ,

 Share Tweet This

cst

Current Documentation online

September 14, 2006 10:19:12.398

I've made the current (OS 7.1.1 and VW 7.4.1) documentation available on the Smalltalk site: just follow this link. The VW doc is all PDF files. The ObjectStudio doc is a self extracting executable you can download and install locally.

Technorati Tags: ,

 Share Tweet This

gadgets

Nintendo: Ready for the Christmas Season?

September 14, 2006 11:14:49.251

Unlike Sony, Nintendo looks to have set themselves reachable goals for the Wii launch. I grabbed this from ExtremeTech:

Nintendo's Wii will ship November 19 and retail for $250 if a report by The New York Times (by way of the Seattle Post-Intelligencer -- who appears to have leaked the story early, as it hasn't shown up on the New York Times webpage, yet) turns out to be legit.

Additionally, the report details that Nintendo expects to ship four million units worldwide by the end of the year (it does not specify whether that is the calendar or fiscal year). For $250, consumers won't just be getting the Wii-system, however. From the report:

Nintendo intends to announce today that every Wii will come with a game compilation called Wii Sports -- including tennis, golf, baseball and bowling -- meant to show off the machine's intuitive controls.

Since Nintendo isn't trying to bundle a bunch of new components, they should be able to hit that date. With the $250 price tag, I think they'll really hit the sweet spot of disposable income at the holiday season.

Technorati Tags: , ,

 Share Tweet This

marketing

Buzz Deficit

September 14, 2006 11:17:19.914

Spotted in CNET News.com:

Not to be outdone by Apple's big ipod announcement, Microsoft is reportedly getting ready to take the wraps off Zune

Anyone else noticed the obvious disparity in marketing skill? The September 12 Apple announcement was heavily anticipated, while Microsoft's Zune announcement is a back page story.

Technorati Tags: , ,

 Share Tweet This

humor

Yes Virginia, there is an Unreachable Clause

September 14, 2006 14:09:49.685

John Duimovich says everything that needs to be said about the new closure support coming to Java soonish:

Yes, VIRGINIA, there is a Unreachable Clause. It exists as certainly as do generics, primitive types, exceptions and inner classes, and you know that they are bound to give to your code its highest beauty and joy. Alas! How dreary would be the world if there were no Unreachable Clause! It would be as dreary as if there were no java.lang.Object Smalltalk. There would be no childlike faith in type systems, no runtime errors, no exceptions to make tolerable this existence. We should have no enjoyment, no programming joy. The eternal light which complex type systems fills in programmer's heads would be extinguished.

Heh. Read the rest :)

Technorati Tags:

 Share Tweet This

stupidity

How not to make your point

September 14, 2006 14:29:13.998

So I was browsing my Congressman's website, and I ran across a link to the "New Direction" document his party is pushing out. Curious, I decided to take a look. Here's the full URL:

http://democraticleader.house.gov/NDResources/nd06.doc

What would possess you to put up a Word Document for download? Heck, as bad as the resulting HTML is, Word has been able to save to HTML format for awhile now. Who's the bright guy who made that call?

 Share Tweet This

cst

New Patches and VM Updates

September 14, 2006 15:08:39.782

We've released a new set of VMs for the latest (7.4.1) release of VisualWorks. head over to the main site for details.

Technorati Tags:

 Share Tweet This

cincom

Cincom gets an "Extra" Engineer

September 14, 2006 15:31:09.045

Travis Griggs has been hired to join our Smalltalk development staff:

Starting September 25th, I won't be able to consider myself an "extra" to the Cincom Smalltalk development process any more. I'll be a real live employee working on the inside, rubbing elbows with, and learning a lot from a very talented team of people. I am very excited about this opportunity. It's a good opportunity for me, and sort of an obvious end game after 15 years of very active Object/VisualWorks involvement.

This is great news for all of us at Cincom - Travis is a great guy. He'll be at OOPSLA this fall, so say "hi" if you see him there. Welcome!

Oh, if you want the lowdown on "Extra" up in the title, read Travis' post :)

Technorati Tags:

 Share Tweet This

marketing

Microsoft Marketing Redux

September 14, 2006 18:13:43.979

Chris Pirillo asks some good questions about Microsoft's direction with the Zune:

I don’t get it. Should I be using Napster, URGE, or Zune? Should I be using the Clix or the Zune? Should I be using Windows Media Player 11 or the Zune Marketplace software? There are too many choices, many of which are not interoperable, coming to me from the same company: Microsoft . Instead of simplifying the market, they’ve made it slightly more complicated with Zune (and likely pissed off countless partners in the process).

If you partnered with MS in the music space recently, that pain you feel is from the stick they just beat you with. Contrast this with Apple, which has a nice, simple message: iPod/iTunes. Someone at Microsoft failed Branding 101.

Technorati Tags:

 Share Tweet This

windows

Why Office has a long life left

September 14, 2006 18:31:52.579

Nick Carr explains why Web Office suites will have a slow takeup:

Whatever the flaws of Microsoft Office, most end users are comfortable with it - and they have little motivation to overturn the apple cart. What is absolutely unacceptable to them is to take a step backward in functionality - which is exactly what would be required to make the leap to web PPAs today. Web apps not only disappear when you lose an internet connection, they are also less responsive for many common tasks, don't handle existing Office files very well, have deficiencies in printing (never underestimate the importance of hard copy in business), and have fewer features (Microsoft Office of course has way too many, but - here's the rub - different people value different ones). Moreover, many of the current web apps are standalone apps and thus represent an unwelcome retreat to the fragmented world of Office 1.0. Finally, the apps are immature and may change dramatically or even disappear tomorrow - not a strong selling point for the corporate market.

There's another thing about connectivity, and it's going to be true for a long while yet: travel. Say I fly to Europe, or Asia. I might well want to do some work on the way. If I rely on "Web 2.0" apps, I'm stuffed: there's no connectivity in the air, and there's not likely to be any anytime soon. There is power though, on an awful lot of carriers. Which means that I can work if my tools reside on my laptop.

If they reside in the cloud? Not so much. Until they get that teleportation thing working, expect to see Office on the laptops of the traveling business guy.

Technorati Tags: ,

 Share Tweet This

copyright

Judgement day for YouTube?

September 14, 2006 19:00:28.169

It looks like YouTube's carefree existence might be coming to an end: Universal is starting to get torqued about their service:

Universal Music chief Doug Morris launched a loud salvo at YouTube, warning the upstart Internet firm that it could come into the legal crosshairs of the world's largest music company.

YouTube, the prolific swapper of videos online, consistently violates the music industry's copyrights when it allows users to post videos, Morris said in a speech at a Merrill Lynch conference in California.

Mind you, the clues aren't very thick at Universal - they think they lost money on MTV videos:

Morris related a frequent historical gripe often mentioned by music execs, saying the industry made a costly mistake in the 1980s when it agreed to give MTV free music videos. At the time, the industry saw the fledlging video trend as mere publicity to sell albums, rather than as a revenue generator itself.

"The poster child for this was MTV," Morris said. "Twenty-five years ago, they built a multibillion-dollar company on our software.

Yeah, no one ran out and bought a CD (at extortion prices, I might add) after seeing "Money for Nothing". Right. Does the elevator go all the way to the top over there?

I'm not condoning theft, but does anyone think that a video of someone lip synching to a song (recorded with poor quality) is something I want instead of a CD or an iTunes download?

Technorati Tags: ,

 Share Tweet This
-->