travel
December 5, 2006 2:12:35.780
I would have put this post up last night, but the hotel's internet service crapped out. So, here we are are this morning :)
With some time to kill, a few of us decided to go see some local museums. What we didn't know is that museums tend to be closed on Monday here in Germany. We did manage to see some interesting buildings though; here's a shot of a church tower taken near the Christmas fair:

Here's another one looking at the other side of the street at the fair:

The fair was packed on the weekend, according to people who were awake enough to get out that day. That wasn't me - I passed out around 5 pm :) Finally, here's a river view I took once we realized that the museums were closed, and all we could accomplish was lunch:

Technorati Tags:
frankfurt
Share
travel
December 5, 2006 2:15:49.829
We had a pre-conference dinner last night - mostly Cincomers and Heeg folks. Here's a picture I took of one end of the table (my camera's batteries went after this):

From the left, that's Magnus Jakt (Heeg), Helge Nowak (Cincom), Georg Heeg (Heeg), Andreas Hiltner (Cincom), and Suzanne Fortman (Cincom). I'm off to exercise and get breakfast, and then down to the conference. Everything looks good for recording the sessions, too!
Share
userConf06
December 5, 2006 5:07:03.610
The conference has begun - we are recording the sessions, and I should be able to get podcasts up sometime after the conference ends. They'll all end up in the same podcast feed as the regular ones. Here's Dave Wood, EMEA Director for Cincom, opening the conference.

We have a good crowd - a total of about 100 people, including Cincomers and partners. Should be a good conference. Here's Suzanne Fortman, who followed Dave Wood, and then Monika Laurent:


Technorati Tags:
users conference, smalltalk, cincom smalltalk
Share
userConf06
December 5, 2006 6:32:09.603
George Bosworth is one of our keynote speakers - he's spent the last few years at MS (as part of the CLR design team). He had previously been one of the leads at Digitalk, for the Smalltalk/V VM. He's doing some consulting now under the name "Ephemeral Consultants". Here's George:

And here's the audience:

The title of the talk is indicative of the content: "Small things matter a lot". George makes the point that as he transitioned from Pascal to Smalltalk (this is way back, before Digitalk was founded), he noticed how much easier it was to read Smalltalk code and understand what was going on.
"Too many details can make it harder to understand"
Here's a nice point: "programming in the small", as opposed to "programming in the large". To wit: Programming in the Small means that you have white box usage and text level reuse, you rewrite/refactor often. Programming the Large means that you have black box usage, object level reuse, and you standardize and attempt to fit things into your framework.
Here's another great quote, that George took from one of the early customers of Digitalk (and still one of Cincom's Smalltalk customers:
"Risk should be managed, not eliminated"
Risks are indicative of upsides and downsides; you can't win if you don't play. Another good one:
"When nothing is working, failure is not to be feared"
This one came out of an IBM lab where they decided to throw caution to the wind, since they figured that they would all be fired if they couldn't deliver their demo app within the (shrinking) time frame they were looking at. Often, we do our best work when there's no other choice :)
Another good insight:
"The critical innovation may not be the software"
Unless the software is actively getting in your way, the real innovation usually needs to happen on the business side, not the development side. Another great point:
"Usage is better than analysis"
"dogfooding" will teach you more about your product than anything else. He gives a great example from Microsoft - they started using SQL Server internally, so that they could learn first hand what did and didn't work. Here's where George sees things going:
- Large Systems
- Huge multi-cores
- Software always on
- old tradeoffs are no longer appropriate
On the multi-core issue, there's been some discussion of that on the blogs here recently - see Runar's post, and Bruce Badger's thoughts on the same subject. His final thoughts here:
- Requiring perfection leads to disaster
- Mistakes are to be encouraged and learned from (if you don't play, you can't win)
Smalltalk encourages the latter. Having fun is important too!
Technorati Tags:
smalltalk, users conference, cincom smalltalk
Share
gadgets
December 5, 2006 9:28:43.774
Spotted in Techmeme:
Microsoft Corp.'s Zune device dropped to fifth place from second in the U.S. market for digital media players in its second week in stores, market researcher NPD Group Inc. said.
Week one sales were better than early reports, but ot looks like things are settling down to mediocre for week two. I still think MS made a huge error in killing PlaysForSure and not supporting Windows Media Player.
Technorati Tags:
music, zune
Share
userConf06
December 5, 2006 9:50:18.305
I gave my roadmap talk at 2:00 pm; you'll have to wait for the podcast to get the lowdown on that. Up now, we have Andreas Hiltner and Georg Heeg, who are talking about the ObjectStudio 8 project. ObjectStudio 8 is ObjectStudio running on the VW VM (actually, inside VW).
First, a brief history - VW descends (like Squeak) from the original Smalltalk-80 at PARC. ObjectStudio was a greenfield Smalltalk (originally Enfin) aimed specifically at Enterprise users (easy DB hookups, mainframe connectivity, etc). Here's Georg and Andreas getting set up:

Smalltalk has classically been a great system for modeling - so we can model one Smalltalk system in another. VW has the higher performance VM, so we modelled ObjectStudio inside VW. So ObjectStudio and VW live together in the same image, meaning that you can use all the capabilities of both environments inside one codebase. The goal was to make it possible to use existing OST and VW code seamlessly; we've gotten pretty close to that. In most cases, there's only minimal porting necessary for existing ObjectStudio projects.
So the history of this project:
- June 2005: First "Alpha" - not tested
- Then we started testing, fixing compatibility issues (or deciding to use something else. For instance: BinaryObjectStreams are gone, you need to use BOSS instead)
- December 2006: We've been working with some early access customers to test on real applications
Now Georg is going over the basic approach taken. The idea was to model OST in VW, preserving syntax and semantics. This meant:
- Created an ObjectStudioCompiler
- Embedded in a namespace
- Shared much of the kernel code (collections, magnitude, etc)
The other goal was to make OST global names act like they did in older ObjectStudio. One of the interesting things is that ObjectStudio 8 can export code the same way as classic ObjectStudio always has - which means that the source code control strategy OST developers have always used will continue to work.
So we now have:
- One installation
- One VM
- Two sets of DLLs
- One image
- Decision at startup as to what you want to use
Another interesting fallout of this project is the way the event loop is handled: classically, the event loop in VW has been in the VM, and a subset of events have been pumped up to the image. That's been changed: the event loop is now image level (i.e., in Smalltalk). There's a positive side to this even if you aren't an ObjectStudio developer; you can create your own event handlers at the Smalltalk level now.
On source code, ObjectStudio developers can do one of two things: they can use Store, the system used by most VW shops, or use the SmalltalkArchives, which allows file based storage (one file per application). You can also write out class files as you always have in classic OST.
So our schedule: we are entering open beta this winter, and will have a supported release of ObjectStudio 8 this summer (2007). Some known issues:
- Immutability (of literals)
- Declaring Pool Dictionaries
- You must export modeling tool definitions in ASCII (binary format is incompatible)
Another thing to note: The Modeling Tool will not be supported in the initial release of ObjectStudio 8 - we would appreciate feedback from the Smalltalk community on this.
The cool thing is that everyone benefits. OST developers gain access to all the components of VW (WS*, web apps, etc, etc). VW developers get native GUIs on Windows (if they rewrite the GUI using OST frameworks). They also get access to mainframe connectivity.
In OST 8, the VW browser and debugger are used, while the OST inspector and workspace tools are still around.
Technorati Tags:
smalltalk, users conference, cincom conference
Share
userConf06
December 5, 2006 12:36:44.400
Niall Ross is talking about in place updating of an application. Here's Niall:

The fantasy scenario: "We'll port to (insert language here - could just be a new major release of something like Cincom Smalltalk), freezing development while we port". Fantasy, because no one can go through the porting period with no new features.
The reality: Frantic development continues while you port - which makes the porting task all the more difficult.
Niall recommends an agile approach: work with the pressures, not against them. So you minimize early code changes (namespaces, class definitions, etc).
Porting from single namespace Smalltalk to modern VW - create a single name that will be used, and to start with, do this:
- Build a package with only a namespace and the right resolutions
- or...
- define a "faux" namespace that actually maps to the Smalltalk namespace (which allows you to make the bigger change later).
Niall also recommends keeping the old (non-namespaced) and new (namespaced) codebases in synch, in Store. You can do this by creating rewrite rules and reconciling code between Store packages/bundles. One key tip: defer broken initialization issues until later. Loaded code is easier to fix than unloaded code.
The demo Niall is showing is pretty cool - using rewrite rules and a port of Store for Glorp to VW 3, he's replicating code from VW 3 into a Store repository, and then reconciling it in VW 7.x. Another cool thing - Niall and a few other people have extended the rewrite engine piece of the RB with menus, in order to make it easier to use.
Share
userConf06
December 5, 2006 13:30:14.265
This is Andreas Hiltner and Mark Grinnell going over how you approach a migration from OST classic to ObjectStudio 8. Some limitations:

- ObjectStudio allows "- 500" as a message - that's not supported
- For backwards compatibility, method parameters can be overwritten. VW typically does not allow that.
- Global Variables are now SharedVariables defined in the ObjectStudio namespace.
- The ObjectStudio 8 compiler does not allow duplicate names between instance and class instance variables
- Immutability: literals cannot be changed at runtime (however note: in the Parcels directory, there's a backwards compatibility parcel).
- All loaded ObjectStudio code will end up in the ObjectStudio namespace (and, you need to descend from those classes in order to get the ObjectStudio Smalltalk compiler)
- If you subclass collections, you need to implement the instance method #copyEmpty: in order to copy any new instance variables you want to preserve.
- Note the #at: and #at:put: have different return semantics between OS and VW. The OS semantics have been preserved in the OS8 classes.
- Note that #whileTrue: now returns nil, and #whileFalse: also returns nil. In classic OS, they had returned true and false (respectively)
- The new Date class only allows valid dates (it raises an exception on errors). Also, month names are now case sensitive.
- Processes: Classic OS uses native threads for Smalltalk processes. In OS 8, these are all green threads (eliminates a host of synchronization issues). The ThreadBrowser has been replaced by the ProcessMonitor.
- SendHooks don't exist - MethodWrappers are the VW version of that.
- Breakpoints do not have much overhead any longer.
- User written primitives: you may well have to make some modifications to these - we provide an example makefile showing what you need to do.
- Nil (with the capital) is now a special instance of OPTR. Any pointer should be checked against Nil, not NULL or 0 (zero)
- SQL Server: The old db-lib interface has been deprecated - the interface now uses ODBC.
Share
music
December 6, 2006 3:32:30.319
Can you say "selective enforcement"?
On the last day of the recent Reuters Media and Marketing Summit in New York, Warner Music Group CEO admitted that he was "fairly certain" that one or more of his seven children had downloaded music without the permission of the copyright owner, which Reuters referred to as stealing.
Despite the alleged infringers' proximity to the major label head and his direct awareness of it without the use of ISP subpoenas, somehow no lawsuits were deemed necessary, although Bronfman said that his kids had "suffered the consequences"
You know, this is the sort of hypocrisy that makes the RIAA in general, and Bronfman in particular, look like a complete tool.
Technorati Tags:
DRM, piracy, stupidity
Share
userConf06
December 6, 2006 3:43:46.338
This morning's keynote is from Heinz Roggenkamper, VP of Development at SAP Labs. His team does R&D at SAP, as a way of introducing the rest of SAP to possible futures. They've been looking at Cincom Smalltalk as one of those possibilities.

A Smalltalk test was done using a duplicate invoice finder problem as a test. They were pleasantly surprised at how quickly they got to a working proof of concept with help from Heeg. Those three weeks included a one week training class. One of the big take aways for them was that they felt like they understood the domain better at the end of the process.
They did a second proof of concept in a project called xCarrier, which deals with supporting shipping management: selecting the carrier, etc. They implemented an awful lot of the rule engine in 3 weeks, and got the proof of concept integrated with ABAP and Java components (web services). Georg Heeg picked up at this point to explain how things went from the Smalltalk side:

The approach taken was the classic one - model the known domain, and learn the rest of it as you go. This involved very short iterations with constant feedback. For the integration piece, a connection between Cincom Smalltalk and SAP NetWeaver (SAP's Web Services piece) was built by Heeg's team.
What does SAP like? They like the fast feedback from customers, and the ability to build executable case studies. Right now, they are using Smalltalk as a learning/exploratory tool rather than as a deployment tool.
Technorati Tags:
users conference, smalltalk, cincom smalltalk
Share
userConf06
December 6, 2006 4:25:16.868
Up next are Ralf Ehret of SAP, and Taylan Kraus-Wipperman of Heeg, talking about the Smalltalk to NetWeaver connection project.

What does this enable?
- SAP can use Smalltalk for exploratory modeling
- SAP customers can use Smalltalk with SAP
- Provides a standard way of integrating Smalltalk and SAP in a project
This provides a connection to all SAP back end services, and is a first step to being a part of the SAP Enterprise Service Architecture [ed: maybe the enterprisey types will notice :) ].
This is all built on the industry standard WSDL/SOAP model. This allows Smalltalk to invoke RFC-enabled modules. The NetWeaver Connection makes Smalltalk a first class citizen inside the SAP NetWeaver world - it allows anyone to use Smalltalk with or instead of Java and ABAP.
The Smalltalk side is built on top of the WS* stack on VW. With that, it's a demo of the xCarrier project, using the SAP order system and the VW Transportation Zone system (the VW piece of the xCarrier project). The steps:
- Process incoming order
- Find business partner
- Get TPZ for incoming order
- Use TPZ for truck load planning
The demo shows an SAP application talking to VW via the WS* stack - you can see a similar thing in one of the screencasts I did recently. This stuff is going to be available (beta) with VisualWorks 7.5. There's future development going on: deeper access to the SAP BAPI repository, automatic access to RFC function definitions, and access to the Enterprise Service Repository.
Technorati Tags:
smalltalk, cincom smalltalk, users conference
Share
userConf06
December 6, 2006 5:44:34.742
After a few interesting hiccups with his slides, Alan proceeded to talk about Store futures:

The topics: Shadow Compilation, updated Merge Tool, Glorp as a Store back end, Projects and Streams, and Internationalization (for Store).
Shadow Compiling: motivated by partial code loading - i.e., errors that occur while the code is loading from Store. Source loading involves filing in code from the repository, which can lead to file-in load ordering issues. For instance: you are loading a new version of the Oracle Database Connect while using the Oracle Database Connect as your repository connection.
Parcels obviate these issues by installing code after all the code has been read. Parcels also supports the loading of code that cannot be fully installed (but will be if/when the pre-requisites for it are loaded). Store loading works in one of two ways: Source (like file-in), Binary (like parcel loading). Source loading does handle unloadable definitions better than filing in. Binary loading does not.
So Shadow Compilation: like file-in, compiles source. Like binary, defers installation (loads into a shadow namespace). From the user's point of view, it's an atomic load. This stuff will be included in 7.5, but will not be turned on by default. It's essentially preview (beta). To turn it on:
Store.Bundle useShadowLoader: true.
There will be an option in settings for that.
This next part is mostly demo, of the new merge tool that's been done. It's a much nicer tool now - you'll just have to look at it when 7.5 ships.
Store For Glorp: a Glorp back end for Store. It adds an actual object model to Store. In the process it improves performance, makes for better queries, and supports schema modifications (at present, this is hard). This is in preview now, but a number of people are using it (including Cincom engineers). Features:
- Replication/Auti-Replication
- Publish
- Load
- Compare
- Merge
- Repository Crawler
- Browse Class Versions
- Store Worksbook - a workspace of useful Store expressions
- Auto-reconcile
Projects and Streams: Addresses "configuration management" issues in Store. Very early stage, design level work. We do want feedback.
Projects:
- Higher level code organization
- Tools aspect of that
- Code management aspect of that
We want projects to be partially loadable, aware of deployment and non-Smalltalk artifacts. We also want to support explicit branching. Streams more or less means a series of versions with branching supported. To do that now, you have to go by naming convention. Streams will allow something akin to Envy "open editions".
Technorati Tags:
smalltalk, cincom smalltalk, users conference
Share
userConf06
December 6, 2006 6:27:21.186
This is Dr. Jochen Eckert of DB Systems, who's going to tell us about train scheduling using Cincom Smalltalk:

The goal of this project: They needed to accurately schedule their trains with correct times, and without conflicting train paths. They have 40,000 trains/day, over 35,000 km of tracks. They needed:
- a GUI for Visualization and user interaction
- Detailed calculation of running times. times of usage, conflicts
- Multi-user access - 7 regional business units, around 50 users per unit.
The client is a VW 7.4.1 "fat client" connected to an Oracle 9 DB and some Smalltalk servers. There's also a lighter weight version for notebooks that uses personal Oracle.
Technorati Tags:
smalltalk, cincom smalltalk, users conference
Share
userConf06
December 6, 2006 8:48:44.829
Next up: Martin Kobetic, who's going to talk about the security frameworks in Cincom Smalltalk:

This talk will be covering SSL, client authentication, and certificates in Cincom Smalltalk. The web server being used for demonstration is a simple web server implemented in Opentalk. To use a secure connection, the first thing we need is a certificate. Typically, you get a certificate from a trusted source, but you can create them from code (probably for testing), or import one that has been issued:

You can save (and restore) keys that you generate for this to and from disk (or a database, etc). You can save and restore certificates the same way (in fact, I've done that in BottomFeeder). So with that out of the way, Martin is creating a secure (https) server. This looks just like creating a normal one, but with the additional step of handing it a certificate, and telling it to use a transport of https instead if http. With that done, using Firefox, we get the normal "Do you trust this certificate" prompt from the browser.
Unlike browsers, we don't ship CST with pre-trusted certificates. The reason? It's a hard job to make sure that the ones you ship are up to date and valid. You can add certificates to the registry (and save that to disk) pretty easily:
registry := X509Registry new.
registry addTrusted: someCertificate.
Likewise, there's protocol to handle revoking and removal of certificates. Also, you can export the certificates out of the browser and read them in using class CertificateFileReader.
Technorati Tags:
smalltalk, cincom smalltalk, users conference
Share
userConf06
December 6, 2006 9:34:26.342
Uwe Liebold of AMD is here to talk about testing frameworks that they use in their Smalltalk applications:

The CEI application is part of their APM (Automated Precision Manufacturing) approach. The APM powered fabs are controlled by software/hardware that Uwe calls their "central nervous system". The CEI baseline began with Fab 25 in Austin, Texas in the early 90's. It's been extended, enhanced over time. Currently, they are using VisualWorks 7.2. They have:
- ~3000 classes
- ~45,000 methods
- 27 MB runtime image
They have gotten more and more interested in testing as time has gone by - they simply cannot afford downtime in a 24x7 manufacturing system. At the same time, they have continuously changing requirements, so implementation and integration are never done. They started to get more serious about unit testing after they migrated up from VW 5i.4.
They've put testing on an equal footing with development - they now run all their tests after every integration, and they use SUnit both in development and in deployment (using RuntimeTestRunner, a tool that logs results rather than reporting to a GUI). They've introduced a concept called Matric Tests, which is based on hardware test scenarios. It's a 4 step process:
- Set parameter(s)
- Run component
- Read result
- Validate result
He's wrapping up with a demo - the TestMatrix stuff is kicked off the same way that normal SUnits are - using the browser extensions, straight from the RB.
Technorati Tags:
cincom smalltalk, smalltalk, users conference
Share
development
December 6, 2006 10:21:56.702
In last Sunday's podcast, Peter Fisk mentioned that MS had released WPF/E for the Mac. Here's the link:
“WPF/E” (codename) is a browser enhancement module that enables browsers to render rich content in addition to HTML. ‘WPF/E” is compatible with both the Safari browser and Firefox 1.5.0.8 on MacOSX 10.4.8. The Dec 2006 CTP will expire on February 18, 2007 at which point when a web page that uses it is rendered, it will prompt the user to update to the latest version. “WPF/E” (codename) will periodically ping Microsoft.com to verify its integrity (at which point the only information that will be communicated will be your IP address and the module version).
So there you go - it looks like Vista Smalltalk won't be just for Vista...
Technorati Tags:
vista smalltalk, smalltalk
Share
userConf06
December 6, 2006 10:47:32.838
Alan's going to cover some advanced ideas using Glorp - for instance, how can you use Glorp to do what Ruby on Rails /ActiveRecord does. Glorp itself is an open source (LGPL, with Smalltalk qualifications) that works across Smalltalk platforms. It's also the O/R future for Cincom Smalltalk. Glorp is meta-data driven.
So to basically define Rails - "opinionated software":
- Go really fast, in one direction
- Reaction against J2EE/.NET
- "Greenfield" projects
- Ruby based
- Some Smalltalk like "tricks" in RoR
- ActiveRecord pattern for persistence
To contrast: Glorp uses explicit metadata, while ActiveRecord is implicit. It uses strict naming conventions, hints at the class level, and is aware of (English) language forms. It does code generation (mostly for the web).
Glorp uses a single broker (session). It's responsible for object identity and manages automatic writes. It's agnostic to use (GUI, web, etc). Rails is actively for the web, classes act as brokers, there's no object identity, only one global session. Glorp puts a premium on flexibility, while Rails puts a premium on simplicity - there may not even be a domain model (per se).
So the question is, can we provide some of the benefits of Rails without losing our advantages?
- Automatic persistence
- convention driven
- but be less restrictive
- use a bit more information
- allow a graceful transition to non-automated
So first, we have to be able to read the DB schema - Glorp can now do that (at least, for Oracle and PostgreSQL). After a bit of explanation of how the schema is read, it's off to a demo. The demo hooks up one of the standard Seaside demos (the Sushi Store) to use a database instead of in-image data.
Technorati Tags:
smalltalk, cincom smalltalk, users conference
Share
userConf06
December 6, 2006 11:39:29.828
Martin is back up to talk about the WS* stack in VW. This is mostly a demonstration of the WS* tools that have been appearing in the product over the last few releases. The first demo is actually something I covered here, in one of my screencasts. Martin's next demo is exposing a Smalltalk service via WS*, and the example is a time service - which I posted on awhile back.
Finally, Martin demonstrated the new support for SOAP headers, both in the stack and the supporting wizards.
Technorati Tags:
smalltalk, users conference, cincom smalltalk
Share
spam
December 6, 2006 12:44:10.483
The NY Times reports that spam has simply exploded over the last year (especially the last few months):
You’re not the only one. Spam is back -- in e-mail in-boxes and on everyone’s minds. In the last six months, the problem has gotten measurably worse. Worldwide spam volumes have doubled from last year, according to Ironport, a spam filtering firm, and unsolicited junk mail now accounts for more than 9 of every 10 e-mail messages sent over the Internet.
That kind of volume is going to kill free email. I'm not sure how a paid system would push itself onto the net, but I would bet that a paid (and open only to members) service by a large vendor would attract interest.
Share
userConf06
December 6, 2006 13:11:53.624
Next we have 4 short presentations. First, Andre Schnoor of Cognitone:

Cognitone sells products that enable music prototyping. The editing allowed is pretty cool. Andre claims that he has saved 75% of the time he would have taken using anything else.
Next up: Jan Lukes, who's going to talk about using Store in a more Envy-like fashion:

What he's trying to get:
- Auto-publish
- Versions for classes
- Tool like ApplicationManager
- Better comparison tools
- Color coding for versions
They decided not to muck with Store itself, just the tool level interface to it. For auto-publish, they issue a sub-versioning publish on each accept. For class versions, they use one package per class, and hide packages completely. They treat Bundles more like Envy applications.
Next: Alfred Wullschleger - he's going to present a dynamically defined state model that's not based on the state pattern:

What they were after was a user configurable state model, so they created a state model that works a little like an event model.
And finally, Uwe Danzeglocke is going to talk about deploying cross platform software:

He also went briefly over some IT best practices standards and configuration management best practices. Interestingly, they base all of their products on one image, and control what can and cannot run based on license keys that unlock modules. They support one look and feel across the products, and have multi-lingual support.
Technorati Tags:
cincom smalltalk, smalltalk, users conference
Share
userConf06
December 7, 2006 4:40:27.060
One of the limitations for building web 2.0 apps: have to use existing (legacy, even) browser technology (i.e., what IE 6 can do). So we have XHTML, CSS 2.0, RSS, XML, HTTP, and Javascript. None of these are new - they are all mature technologies. So instead of a "big bang" of new stuff, we have a series of "small bangs".
So to Seaside: one major thing is that we have no templating. It's all done in Smalltalk. The metaphor is canvas and brushes.

Most of the presentation is a Seaside demo, which - without shooting video - I can't really convey well here. Michel concentrated on covering Seaside support for CSS, XHTML, and Javascript. On the latter, it uses the standard Scriptaculous libraries. One of the nicer things is that you write the actions in Smalltalk, and the Javascript gets created for you - you stay in Smalltalk at all times.
Another nice thing is that most debugging is in Smalltalk, using the Smalltalk debugger. Michel recommends using Firefox with the Firebug plugin at the browser level.
Technorati Tags:
cincom smalltalk, smalltalk, users conference
Share
userConf06
December 7, 2006 5:31:52.076
I couldn't take notes during Scott's talk - my machine was busy recording the talk. Scott introduced us to the open UP process that he's championing at IBM, which you can get information on here. Most of Scott's talk should come through pretty well on the podcast. I'll get that posted sometime next week - there's an awful lot of audio to go through though :)

Technorati Tags:
cincom smalltalk, smalltalk, users conference
Share
userConf06
December 7, 2006 7:12:39.817
I gave my talk this morning, and then we had a feedback session, where Suzanne, Georg Heeg, and I took questions from the audience. Here I am, giving my talk:

Then we moved on to feedback, and here's the three of us when we started that:

And finally, the audience we sat in front of for that panel:

It's been a great set of sessions; now we have a set of BOF sessions to do before we wrap up with a dinner.
Technorati Tags:
cincom smalltalk, smalltalk, users conference
Share
smalltalk
December 8, 2006 16:16:02.385
Peter Fisk is doing what Smalltalk did back in the early 90's: getting out in front of the bigger players by being more nimble:
Over the past couple of weeks, I have been focused on building an integrated GUI designer for Vista Smalltalk. The most difficult parts are now completed and I expect that a functioning tool for building simple user interfaces will be available before Christmas.
I think Peter's work bears watching.
Share
development
December 8, 2006 16:16:44.590
This post on Java Generics is as good an example as any for why dynamic typing is just better. The sorts of edge cases and issues being debated simply don't come up for Smalltalkers.
If it walks like a duck, and quacks like a duck... you don't really need the compiler to tell you it's a duck.
Technorati Tags:
duck typing, smalltalk, generics, java
Share
itNews
December 8, 2006 16:57:07.931
Share
music
December 9, 2006 11:43:13.397
It turns out that the artists don't really need more money from the public: just the studios:
Sure, the RIAA hasn't exactly been on the good side of the general public since, oh, this century began, but it sure isn't doing itself any favors with this latest hint of persuasion. While the agency has fought grandmothers, children, and cash-strapped citizens quite vigorously to "ensure artists are getting due payment," it has seemingly opened up a chink in its own armor by pleading with judges to "lower artist royalties."
Maybe Bronfman needs to buy a new house or something, now that he's given his own kids a "good talking to" about piracy.
Technorati Tags:
PR
Share
userConf06
December 9, 2006 13:20:58.934
During the conference, Bruce Boyer took some photos (with a much nicer camera than I had with me). Here are a few of them. First, Alan Knight during his talk:

Next, Georg Heeg and Andreas Hiltner, during one of the ObjectStudio 8 talks:

Here's a picture of Michel Bany, during his Seaside for Cincom Smalltalk talk:

And a last photo for this post, Suzanne and Andreas Hiltner during one of the BOF sessions held in the evening:

Technorati Tags:
photos, cincom smalltalk, smalltalk, users conference
Share
userConf06
December 9, 2006 13:32:19.559
Here are some more photos from Bruce, starting with one of Mark Grinnell, in a talk about ObjectStudio 8:

Next, two shots of the feedback session near the end of the conference - first a shot of Suzanne, Georg Heeg, and I at the table, and then one of me talking to the audience:


Finally, one of Suzanne talking to the crowd:

Technorati Tags:
photos, cincom smalltalk, smalltalk, users smalltalk
Share
podcast
December 9, 2006 15:19:20.750
Here's the roadmap session I gave at the users conference last week. I spoke for a bit over 30 minutes, including questions. I guess I didn't restate all the questions, and they weren't all audible - but they should come out decently from the context of my answers. In any case, enjoy. You aren't missing any slides - I didn't use any.
Technorati Tags:
cincom smalltalk, smalltalk, users conference
Enclosures:
[http://www.cincomsmalltalk.com/audio/userConf06/cst-roadmap-userConf06-3.mp3 ( Size: 12006565 )]
Share
smalltalk
December 9, 2006 15:45:16.796
Craig Latta got a spread in this week's SD Times - with an article about how he produces music with Smalltalk:
Most concertgoers are used to seeing large projection screens behind the performers. Trippy or poignant visuals are a standard part of any major musical performance these days. But when Craig Latta performs his extemporaneous pieces in front of an audience, the screens behind him project source code.
These musical performances don’t come from a set list, and his visual performances aren’t just precooked movie clippings or looped mandalas. Latta, instead, improvises the creation of both his musical and visual presentations. His instrument is the keyboard, and his music staff is accessed via Smalltalk.
Share
media
December 9, 2006 15:55:19.641
I just love this kind of article - it shows up from time to time in a mainstream media production - probably in order to reassure the author that he's still relevant. This week's entry in the "columnists are soooo much better than bloggers" sweepstakes is Andrew Binstock, a man I've written about before - often enough that it's more useful to provide this google search than to point at individual posts. Suffice to say, Binstock has a casual relationship with the concept of research. Having gotten that out of the way, let's move along to this week's dreck:
You can quickly come to 90 percent of content if you add up the self-absorbed blogs of tweens, teens and college kids; the hate blogs; and, of course, the many, many abandoned blogs. Of the remaining 10 percent, you then eliminate topics that don’t interest you. You now are way under 1 percent -- yet you have literally hundreds of blogs to choose from. If software development is your thing, you’ll want to skim off the blogs by engineers or CEOs who are shills for their companies; those who evangelize their pet technology; and most especially, those who are always attacking or condemning some person, some company or some technology. Finally, you’re in the clear, with the handful of truly useful blogs.
Maybe, just maybe, Binstock has heard of this recommendation notion; i.e., "if I like this guy's writing, perhaps I'd also like this other guy he seems to like". Nahh, that would require research, and he's just allergic to that. Far better to spin out a few hundred words, collect the check from corporate, and keep stumbling cluelessly along.
The funny thing is, his entire article could just as easily refer to media (online and offline) in general. Ever been in a suburban hotel that's away from most things, where the only place you can find to get a magazine is the local quick mart? After you eliminate the porn and the celebrity rags, there's not a lot left.
Share
podcasting
December 10, 2006 9:47:09.599
The pile of audio to be editing wasn't enough, so Michael, David, and I recorded a podcast last night. We spoke about the OS 8 project - actually, more on the idea of embedding some other language into VW in a similar fashion. That carried us back to IBM's VisualAge product line, and we sallied forth from there. I'm editing the audio now, and will have that and the jobs report ready later today.
Share
media
December 10, 2006 12:53:23.360
Nick Carr, and the NY Times' Jon Pareles (who he quotes, below) don't like the new, more open media environment:
When it comes to producing and, equally important, filtering and packaging creative work, the masses seem every bit as crass and conservative as the corporate overlords they're said to be replacing. Maybe more so, in fact. As Pareles writes:
The open question is whether those new, quirky, homemade filters will find better art than the old, crassly commercial ones. The most-played songs from unsigned bands on MySpace -- some played two million or three million times -- tend to be as sappy as anything on the radio; the most-viewed videos on YouTube are novelty bits, and proudly dorky. Mouse-clicking individuals can be as tasteless, in the aggregate, as entertainment professionals.
There's a phrase the two of them should read until it sinks in: One man's trash is another man's treasure. Supposedly "sappy" music is fairly harmless - why do they care? If the market enjoys music these guys don't like, it's no skin off anyone's nose. How many years has Hollywood been promoting utter dreck through the Oscars, while the rest of us go off to see movies that actually entertain us? Sometimes, escapism is all you really want.
Share
logs
December 10, 2006 13:34:29.517
My return from Europe interfered with this post; here it is, a day late. BottomFeeder downloads went pretty well last week - a pace of 208/day (plus the 30 or so per day I'm seeing from CNet). The details:
| Platform | BottomFeeder Downloads |
| Windows | 422 |
| Update | 356 |
| Mac X | 179 |
| Linux x86 | 135 |
| CE ARM | 67 |
| Mac 8/9 | 59 |
| Windows98/ME | 40 |
| Solaris | 37 |
| HPUX | 35 |
| Linux Sparc | 32 |
| AIX | 24 |
| Sources | 23 |
| Linux PPC | 19 |
| SGI | 15 |
| ADUX | 9 |
| CE x86 | 5 |
So that takes me to the HTML page accesses:
| Tool | Percentage of Accesses |
| Mozilla | 44.4% |
| Internet Explorer | 41.3% |
| Other | 6% |
| Planet Smalltalk | 4.8% |
| MSN Bot | 2% |
| Opera | 1.5% |
Traffic dropped a bit last week, and it looks like most of the drop was from IE users - the Mozilla numbers are back on top. Finally, syndication numbers:
| Tool | Percentage of Accesses |
| Mozilla | 21.8% |
| BottomFeeder | 17.8% |
| Other | 8.6% |
| Net News Wire | 8.9% |
| Google Feed Fetcher | 6.8% |
| Safari RSS | 6.5% |
| Internet Explorer | 5.4% |
| BlogLines | 3.6% |
| NewsGator | 2.8% |
| Planet Smalltalk | 2.1% |
| Java | 1.7% |
| Vienna | 1.4% |
| Akregator | 1.3% |
| Zibber | 1.2% |
| SharpReader | 1.2% |
| Liferea | 1.1% |
| RSS Bandit | 1% |
| Python | 1% |
| JetBrains | 1% |
| News Fire | 1% |
| Jakarta | 1% |
| Opera | 1% |
| RSS 2 Email | 1% |
| BlogSearch | 1% |
| MSN Bot | 1% |
No slacking off of tool diversity there.
Share
sports
December 10, 2006 21:05:45.452
Ballbug reports that the Yankees may be getting Pettite back - and possibly Clemens:
The Yankees' solution for their immediate future may come from their recent past. Andy Pettitte is committed to pitching again, and Roger Clemens could eventually join him for a reunion with the Yankees.
It's like "Back to the Future" here. I'd rather get younger arms, but those guys do know how to win.
Technorati Tags:
baseball, yankees
Share
blog
December 11, 2006 9:32:08.044
There's going to be a break in production of Smalltalk Daily - or, if I do get to it, it will be later in the day. I have a lot of audio from the conference to deal with, and I'll be plowing through that for the next little while.
Share
media
December 11, 2006 11:31:36.018
Jeff Jarvis throws out some thoughts on what internet media is and isn't - and how it relates to classic journalism. Like Jeff, I'm not sure that the old rules apply real well to this medium - it's a work in progress either way.
Share
cst
December 11, 2006 14:43:04.303
Bruce Badger points to some screencasts that demonstrate setting up and using Store and PostgerSQL for Cincom Smalltalk.
Technorati Tags:
smalltalk
Share
podcast
December 11, 2006 16:17:04.438
There's still too much hiss under Niall's talk, but you can hear the whole thing. In this session, Niall discussed strategies for porting a running system from one version (or dialect) of Smalltalk to another, while still making changes to the old stuff.
Enclosures:
[http://www.cincomsmalltalk.com/audio/userConf06/niall-ross-userConf06-5.mp3 ( Size: 15794561 )]
Share
music
December 11, 2006 16:30:21.239
Nick Carr is suggesting that the music studios may be close to that "when all else fails, try some actual thought" moment:
Last week, I noted a Wall Street Journal article describing how online sales of digital music appear to be flattening this year. Because those sales are dominated by Apple's iTunes store, the numbers suggested that music companies would be under increasing pressure to seek strong new outlets for online sales, which would in turn likely require the sale of songs in unprotected MP3 format - in other words, without copy protection.
I predict another year or two of raw stupidity, partially propped up by the hope of device royalties (thank you, clueless chowderheads at Microsoft).
Technorati Tags:
DRM
Share
development
December 11, 2006 18:07:58.485
Hmm. It looks like Jason Pontin, who interviewed Bjarne Stroustrup recently, spent some time in a reality distortion field to prepare:
C++ remains the archetypal "high level" computer language (that is, one that preserves the features of natural, human language), and it is still used by millions of programmers. Many of the systems and applications of the PC and Internet eras were written in C++. For all that, the language remains controversial, largely because it is notoriously difficult to learn and use, and also because Stroustrup's design allows developers to make serious programming mistakes in the interest of preserving their freedom.
I might describe C++ in a lot of ways, but comparing it to "natural, human language" wouldn't be one of them. Stroustrup's comments in the interview are worth reading, but boy - the interviewer is living somewhere else. I wonder what color the sky is there?
Share
events
December 11, 2006 21:03:21.529
Andrew McNeil, our man in Australia, has forwarded me this:
Due to public demand and the presence of a quorum there will be a xmas edition of the Sydney Smalltalk Users Group at the James Squire at Kings Street Wharf down at Darling Harbour.
Date and Time: Thursday 14th December from 6:00 PM.
http://www.malt-shovel.com.au/frames.asp?page=brewhouse.asp
No presentations are scheduled, but feel free to spontaneously break out in a demo. I should have a few CDs with me containing recordings of the Cincom Smalltalk Users Group conference in Frankfurt last week as well.
Look forward to seeing everybody there.
Regards
Andrew McNeil
It's a fun group down there; enjoy!
Technorati Tags:
STUG
Share
development
December 12, 2006 7:50:36.265
Cees has a long post up comparing Smalltalk and Java - from the standpoint of a Smalltalker who has now spent a significant amount of time in Java. It's a long post, with fair critiques of both languages - well worth reading the whole thing. Here's the point I wanted to bring out, which I think is very important:
Ok, first what I miss - I dearly miss the image and the fact that a Smalltalk system is just always “there”, alive and waiting for your next command. In Eclipse, you will not find “Inspect” or “Debug” menu items in your pop-up, and I don’t think they are likely to ever appear. Although… Eclipse is already closer to a Smalltalk IDE than what I ever thought possible 5 years ago, so I’m not betting on it . But the system not always being alive is the biggest thing I miss - it hurts even more than the whole static typing thing.
There are a lot of benefits to having an image, and most people just don't even know what they are missing.
Technorati Tags:
smalltalk, java
Share
podcast
December 12, 2006 8:51:48.725
Here's the last session from Day one of the conference. Andreas Hiltner and Mark Grinnell went over the major differences between ObjectStudio classic and ObjectStudio 8, and what steps developers will need to take in moving to OS 8. This one is just under 39 minutes, and the noise levels aren't quite as bad as they were in the posts I put up over the weekend.
Technorati Tags:
cincom smalltalk, objectstudio, smalltalk, users conference
Enclosures:
[http://www.cincomsmalltalk.com/audio/userConf06/andreas-mark-os8-userConf06-6.mp3 ( Size: 14025109 )]
Share
screencast
December 12, 2006 11:50:20.082
I had time to put together a Smalltalk Daily today - this is Smalltalk to Smalltalk Opentalk, using ObjectStudio to VisualWorks - and Windows to Mac. I'll be plowing forward with this example for a few days.
Share
development
December 12, 2006 18:17:52.865
In a response to Cees' post, this guy has the opposite viewpoint on "final":
One thing that made me go ‘whhueungh?!?’ is the conclusion that ‘final’ is a big mistake. I thoroughly don’t get this. Personal experience and generally accepted wisdom both agree that as a rule extending classes is a bad idea unless a class was designed for it in the first place. In fact, I litter ‘final’ statements all over the place. It mostly marks a class as: Don’t try and extend this! Just wrap it - to any developers that come after me. This works out fine. Where there is a generic element to extract (e.g. The functionality conveyed by java.util.Collection and java.util.Set where a HashSet is concerned) there’s usually an interface which gives you the option of wrapping. I wonder which classes he’s so bent on extending.
This assumes that any class is ever "done". I'd argue that such a beast simply doesn't exist, and that - as developers - we have absolutely no idea how the next guy down the pike who has to look atc our code is going to use it. We can guess, we can make assumptions - but that's about it. "Final" simply bakes in our assumptions, and gives that next guy the middle finger. Not with the intention of flipping him off, no - but flipping him off nevertheless.
Share