blog

More blogging enhancements

February 24, 2005 21:25:46.452

I've been working on the posting tool - and on some matching back end code - all afternoon (well, other than the hour or so spent sledding with my daughter). Up until now, there was no support for uploading images to the server. I've been addressing that this afternoon, and I've got it working in test. What you can do is specify a set of files to upload, and then you can upload them to the server. They'll default into a subdirectory of the blog directory (the place where the SSP files live). I'll be rolling the new servlet into production shortly, and testing it myself. Once I'm sure it works, I'll release the new version of the client tool.

 Share Tweet This

itNews

Rinse, repeat

February 24, 2005 13:32:18.494

I see that Tech Republic is reporting that Sun's latest round of layoffs has grown to 3600 people. Sun is a fascinating company. I like their OS (Solaris), and, back when I worked on their hardware regularly, I liked their boxes. Somewhere during the dotCom boom, Sun really, really lost its way.

The first problem is that they seem to believe their own marketing materials too much - they still seem to think that Java is a net postive money maker for them - note to Jonathan Schwartz - all those Java enabled handsets you are so proud of? They don't represent positive net revenue to Sun. I had friends come back from JavaOne last year who were incredulous that Sun was pushing the notion of Java games as a business opportunity. They jumped on the Linux on intel bandwagon way, way too late - their low end is being eaten alive by Dell, and IBM still pounds them on the high end. That might have something to do with costs on the low end, and IBM's ability to milk revenues off of Java on the high end (WebSphere, anyone?). Meanwhile, Sun gives away the software they could charge for (application servers), and sells the stuff that goes head to head with Office (StarOffice).

The thing is, I've seen this business plan before, only with far smaller piles of money to throw away - the whole PPD/OBJS nightmare was a lot like it - the same executive cluelessness, the same lack of engineering direction, and the same lack of decent oversight by the board of directors. Just as a sane board would have given Bill Lyons the boot sometime in 1996 (when things could potentially have been turned around), a sane Sun board would have cleaned house a few years ago, after watching the fruitless years of attacks on Microsoft. Instead, they seem to be watching a repeat performance, only without the dotCom bubble to support it.

They've learned nothing; their marketing is still all attack based, only the target has changed. Heck, I think they might be taking some of the anti-MS screeds from the late 90's and republishing them after a global copy/replace operation - IBM in, Microsoft out. Have a look at this note from Schwartz, for instance. Yeah, if I were IBM I'd be quaking in my boots over that. At least when I take aim, it's in pursuit of a target I might actually be able to hit.

 Share Tweet This

marketing

It's not blogging, it's common sense

February 24, 2005 12:57:11.868

Doc Searls Weblog makes some good points about the "power" of the blogsphere - which should calm down some of the triumphalists - and wake up some of the angry journalists who seem peeved that people are paying attention to what they write:

Second, people get fired every day for blabbing about private company stuff, whether or not it's in blogs. Earl Gilmore, the first tech client of my old ad agency (way back around the turn of the 80s) had an employee policy manual with two pages in it. Page 1 said "Rule #1: Use good judgement." Page 2 said "Violate Rule #1 and you're in deep s***." So, when somebody drowns in s*** for syndicating their own bad judgement, that's not a black eye for blogging. It's stupidity with an RSS feed.

Exactly right. The various media people who've been "brought down" by the blogsphere made their own mistakes. They engaged in bad PR that reflected badly on their employers - the only difference between now and 10 years ago is that RSS feeds and blog pages have a bigger soap box than letters to the editor and talk radio did. It's not complicated. If you say something that your employer will find embarrassing, it's more likely to get noticed now - but it was just as stupid 10 years ago.

 Share Tweet This

DotNet

But can you maintain that?

February 24, 2005 12:40:50.451

Sriram Krishnan posted something interesting about the CLR garbage collector:

I was talking to a former MSFT employee who worked on the CLR team. The conversation drifted towards languages used to implement virtual machines. Here's what I learnt.

The CLR's Garbage Collection was initially written in Lisp by a Patrick Dussud (I can't find a blog). This code was then run through a Lisp->C converter which was then cleaned up by an intern.

That's interesting - it demonstrates to me that when MS needed something done fast, they knew well enough not to do it in C or C++ (assuming this story is correct, of course). On the other hand, if you do what they did:

  • Write a sub-system in language 1
  • Generate the C from the resulting code
  • Manually modify the results

Can you actually maintain the results? Generated code is always hard to grok. It's one thing if you write in a high level langiage and then generate C (never actually looking at the C) - you can look at the C as something akin to byte code in that case. But if you muck with the generated code before deploying it? I'm not sure that you end up with something you can maintain...

 Share Tweet This

blog

Using the Silt Server

February 24, 2005 12:28:56.942

Steve Kelly has been lending me a hand with the blog server code - there's a new bundle in the Public Store called Silt. We moved the client (blog posting) tools out of the server package - they add a bunch of dependencies not really needed on the server. Steve's done some nice Q/A on this code for me, and has sent some instructions on how to set it up. You'll want to visit two pages on the wiki:

Thanks for the help Steve!

 Share Tweet This

development

I have a better idea

February 24, 2005 1:02:19.390

I just noticed an SDTimes promotion for a "cross platform build seminar" in my email:

John Graham-Cumming, chief scientist at Electric Cloud, Inc., will discuss how to build a manageable cross-platform build system using GNU Make. The system is flexible, capable of supporting many different platforms (including Windows, Linux, and all versions of Unix) and easy to maintain. He'll also outline a strategy for migrating an existing build system to a clearer Makefile structure that incorporates the ideas presented.

I have a better idea - visit our site, start up VisualWorks, and build an application. Ready for the cross platform build part? Just build the application on one of our supported platforms, and then deploy it. That's what I do with BottomFeeder. I bet my solution is simpler than theirs, and it doesn't require a full seminar to explain, either :)

 Share Tweet This

spam

Humorous spam

February 24, 2005 1:01:52.233

Every so often I get a piece of junk that makes me laugh. I was going through my junk folder (a small percentage of real mail lands there.... grr...) and ran across a bogus offer for office programs. For one thing, get a load of their "sales pitch":

Are you looking for affordable operation progeam and system for your PC? Then you have found the best right store. You can check the site for a wide selection of quality program discs on sale. More than 850 program discs for office operation, programming, server maintenance, PC diagnostics, finance and graphic design& processing.

I love that word selection (not to mention spelling) - "affordable operation progeam and system for your PC". Makes me want to dash right off and click on the link they provided. Here's the best part though - at the very end of the message was this text, apparently intended to defeat filters:

media reported late Sunday that the head of Palestinian security in Gaza, Rashid Abu Shbak, added running back Brian Westbrook, who decimated the Viking defense early in the game as a

I guess that counts as broken field running :)

 Share Tweet This

travel

On the way home

February 24, 2005 1:01:25.184

The presentation went well - I would have loved to stay for drinks, but I had a train to catch (which, ironically, is late - I'm entering this from the Amtrak lounge in Penn Station, NY). We had a good conversation about the Cincom Smalltalk - Pollock, GLORP, and ObjectStudio being of interest to people. As always, tip of the hat to Charles Monteiro for setting it up.

 Share Tweet This

travel

On the way home

February 23, 2005 21:16:49.819

The presentation went well - I would have loved to stay for drinks, but I had a train to catch (which, ironically, is late - I'm entering this from the Amtrak lounge in Penn Station, NY). We had a good conversation about the Cincom Smalltalk - Pollock, GLORP, and ObjectStudio being of interest to people. As always, tip of the hat to Charles Monteiro for setting it up.

 Share Tweet This

general

Well, I should pay attention to the pub dates

February 23, 2005 16:46:19.508

That deep linking thing below dates from 2002. I guess I should pay attention to that date column in my aggregator :)

 Share Tweet This

web

Deep Linking madness

February 23, 2005 16:42:16.145

Better Living Through Software explains in language simple enough for even a Gartner analyst to understand why the deep linking controversy is so stupid

Here's how it works:

  1. Publisher gives a URL to a web page
  2. Someone else uses the URL to hyperlink to the web page
  3. Someone else clicks on the link, and is taken to the web page

This is not, as the Wired article implies, a "killer app" of the web, it is the web.  It is the only thing the web does!  The only reason you would assign a URL to a page is so that people could link to it.  If you don't want people hyperlinking to a page, you just don't give it a URL.  It's not as if documents assign URLs to themselves -- the only way a document gets a URL is if the doument owner assigns it a URL, and the only freekin' reason that a document owner would be assigning a URL to a document is so that people can hyperlink to it.  Assigning a URL to a document is a contract between the publisher and the world saying, "Please hyperlink to me". 

If some guy is upset that people are hyperlinking to his document, one wonders why the guy published the document by assigning a URL in the first place.  Even more puzzling is why he doesn't just remove the URL.  The ability to "deep link" is something that the publisher can withdraw from at any time, by simply removing the URL assignment for the document in question.  It sounds to me like some people accidentally assigned URLs to some of their pages which they didn't want to be linked, and don't know how to fix it, and now they want to sue the rest of the world for what is actually gross incompetence on their part.

That's about the size of it. Don't want your document found unless they come through the front page? Then set up your website so that it works that way. Don't moan about how - doggone it - users found your document by following *gasp* a link.

 Share Tweet This

travel

Arrived in NYC

February 23, 2005 16:31:04.325

I've arrived in NYC - so of course I headed straight to a Starbucks so I could use the WiFi. I'm camped across the street from where I'm supposed to meet Charles at 5pm - I'll be heading to the STUG meeting with him. I'll see everyone there, and I've come with NC CD's

 Share Tweet This

events

Talking about the CST Roadmap

February 23, 2005 11:00:56.333

I'll be in New York City tonight to talk about the Cincom Smalltalk Product Roadmap. The meeting details can be found here. Here are the directions:

Address:

Suite LLC offices
440 9th Avenue, 8th Floor

Subway:
Take E or C train to 34th (Penn Station) walk to corner of 34th and 8th. Walk up one block to 9th. We are almost always on the 8th Floor.

If you are there early, meet us for dinner around 5 at the New Yorker hotel

 Share Tweet This

smalltalk

On a related note

February 23, 2005 10:16:56.577

Well - right after I made that last post (scroll down one), I ran across something even more interesting on the IBM Smalltalk front. I don't think I can post the information I got - it didn't come to me through any kind of "official" channel :) Suffice to say, if you are being pitched on "transition strategies" or "Smalltalk modernization" - by which IBM seems to mean "migrate to Java and start using WebSphere", you might want to read over this post I made back in 2002. There's related information here. What you really need to ask yourself is this:

  • If I do what they recommend, and migrate to Java - how long will it take me to stand still and end up with the same application I have now, only in a less maintainable language?
  • If I instead looked at another Smalltalk implementation, wouldn't the transition be quicker, easier, and cheaper? After all, a transition from Smalltalk to Smalltalk is going to be simpler.

If you don't know where Cincom is going with Cincom Smalltalk, then check out our product roadmap.

 Share Tweet This

marketing

Give them credit

February 23, 2005 7:49:43.467

With so many people asking "what the heck has MS done with IE lately", it's nice to see that the IE Team is responding with some good information. Read through the comments as well - I think it's a credit to MS that they are having this conversation with interested users - many of those comments are pretty hostile.

It's so much easier to hide behind a wall of "we don't discuss plans in public" and "sign this NDA if you want to hear product plans". One of our competitors in the Smalltalk space is doing that dance right now - IBM. Here, have a read of this cls thread, and then go and read this one.

Does it look like the "say as little in public as possible" theory of corporate communication is helping matters? Or is it throwing logs on an already smoldering fire, and making people ask "I wonder what they meant by that".

 Share Tweet This

rss

So we don't need power?

February 23, 2005 7:36:35.621

Every so often one of the IT pundits will make the claim that "we have all the processing power we need" on the desktop already". One of those guys should talk to Ted Leung about the present and future of news aggregators:

If I take out software development activities, the application that is pushing the limits of my hardware is my RSS aggregator. This is not in any way a slam on NetNewsWire, which is very, very, fine application. It's a reflection of the way that my relationship to the web has changed. I hardly use a standalone browser anymore -- mostly for searching or printing. I don't have time to go and visit all the web sites that have information that is useful to me. Fortunately, the aggregator takes care of that. Once the aggregator has the information, I want it to fold, spindle, and mutilate it. I'm at over 1000 feeds, and on an average day, it's not uncommon to have 4000 new items flow through the aggregator. It takes 25 minutes (spread out over two sessions) just to pull the data down and process it -- and I have a very fast connection. NetNewswire uses WebKit to render HTML in line -- a feature that makes it easy to cut through piles of entries, but one which is demanding of CPU and memory.

But that's just the basics. What happens when we start doing Bayesian stuff on 4000 items a day? Latent Semantic Indexing? Clustering? Reinforcement Learning? Oh, and I want to do all of those things on all the stuff that I ever pulled down, not just the new stuff. What happens if I want to build a "real-time" trend analyzer using RSS feed data as the input? The processor vendors should be licking their chops...

Now, I'm not pushing as hard as Scoble and Ted are - I'm sitting at 255 feeds right now (down from 300). Still, my aggregator (BottomFeeder) is using more resources than anything else I run - and with the sorts of capabilities that Ted is talking about, it will push even harder. Hmm.

 Share Tweet This

itNews

Promoting Linux on PPC?

February 22, 2005 22:45:02.125

It looks like IBM and SuSe are promoting Linux on PPC:

WALTHAM, Mass., Feb. 10 /PRNewswire/ -- Novell (NASDAQ:NOVL) and IBM have launched a joint promotion to encourage software developers to build their applications for Novell's SUSE(R) LINUX Enterprise Server on IBM POWER platforms. SUSE LINUX Enterprise Server 9, with the scalability and performance enhancements of the 2.6 Linux kernel, combined with the processing capabilities of IBM POWER5 processor-based servers, including IBM eServer OpenPower, IBM eServer BladeCenter JS20, IBM eServer pSeries and IBM eServer iSeries, provides a strong foundation for a full range of applications. By promoting the creation of new applications for the popular Linux on POWER platform, this initiative will expand customer options for what they can run on Linux.

VisualWorks already supports Linux on PPC - I'm even seeing a few downloads of BottomFeeder for that platform. If this is a platform that interests you, have a look at our product.

 Share Tweet This

smalltalk

On teaching Smalltalk to kids

February 22, 2005 21:03:27.014

With regards to Don Box's post on finding a language to use to teach kids to program - I think that using EToys as a starting place would work out very well. It teaches logic without getting into syntax or anything low level - and you can follow from there straight into the Smalltalk code when you think they are ready.

 Share Tweet This

BottomFeeder

BottomFeeder downloads

February 22, 2005 18:17:47.155

I periodically take a look at the download rates for BottomFeeder - it looks like I'm getting just under 180 downloads per day now. The interesting thing is that I'm getting about half the downloads for Windows, and about half for non Windows. Here's the breakdown for the last 18 hours (why that interval? The log file on the server just split, and that's what I have uncompressed :) )

PlatformNumber of Downloads
Windows 2000 +116
Mac OS X60
x86 Linux27
Mac OS 8/923
Win CE (ARM)18
Windows 98/ME9
PPC Linux3
AIX2
HPUX2
SG2
Solaris2
Sparc Linux2
Dec Alpha1

That last one is a surprise :)

 Share Tweet This

cst

VW on Fedora Core redux

February 22, 2005 17:02:04.311

A few days ago, I posted on VW and Fedora Core - I've gotten a few additional comments in the interim. There seem to be a number of variances, probably depending on your kernel level and installation procedure:

  • If they have /proc/sys/kernel/exec-shield then they need to either 'echo 0 > /proc/sys/kernel/exec-shield' or try using the utility they provide [named something like 'execstack'] to run vw without the shield.
  • Some Athlon users need to execute this: setarch athlon -L ${VISUALWORKS}/bin/linux86/vwlinux86 visual.im

and finally, I've had this reported as being required to run the installer:

> cd /media/cdrecorder
> setarch i386 -L ./autorun

Let me know if any other magic incantations seem to be required. We think we have this one addressed in the next VM build.

 Share Tweet This

BottomFeeder

BottomFeeder reviewed

February 22, 2005 16:50:40.493

BottomFeeder gets a mostly favorable nod in this review. I think he missed Newspaper mode, since he was looking for that style view in other readers.

 Share Tweet This

humor

Paid Placement silliness

February 22, 2005 16:24:08.748

I found this search result amusing. look at the paid placement results at the top - I especially like this line:

Find Stupidity and anything you are looking for on Ebay. Opening an account is free. Bidding is free. Try it today.

Heh.

 Share Tweet This

development

Who's code is that anyway?

February 22, 2005 13:40:53.284

Now, here's an interesting post - code ownership horrors. It's a good post - the introductory summation explains the problem quite well:

As a result, my interest in these projects has dipped precipitously close to zero. Why should I care? I'm a middleman. I have no ownership stake in the project. And neither do the offshore developers, except in terms of fulfilling their contractual obligations. What happens when nobody owns a project? Well, that's why lots of internal software sucks pretty badly. Renters don't take pride in their homes. Only homeowners do.

This is true whether the code has been outsourced to a local consulting firm, a "big" consulting firm, or sent offshore. The rental/owner dichotomy is a good comparison, I think. There are tons of people who want to turn software production into an assembly line process. I have my doubts. It seems to me that software production is still a craft - more akin to making a movie than to building a set of hardware widgets. Lots of hardware production is completely automated, and it's mostly a matter of "how many in what time interval" at this point. Movies have been being made for a long time now - and they aren't managed like an automated process.

I think software is a lot more like movie production than it is like hardware - and I think that understanding that points out a lot of the issues with outsourcing and automation.

 Share Tweet This

blog

Spiffed the site

February 22, 2005 10:14:27.401

I suppose I should have done this a long time ago, but I never quite got around to it. Awhile back, Vassili created the style sheet that makes the main page of the blogs here look good - prior to that, there was a simply awful table driven thing I had done. I intended to move the archive and comment entry pages over to the new templates, but never quite got around to it. Well, now I have, and they look a lot better.

 Share Tweet This

web

A thoughtful voice on smart tags

February 22, 2005 9:39:58.276

Joshua Allen makes some good points about the whole "smart tags redux" kerfuffle that's erupting around the blogsphere. His analogy works very well, I think - especially given that you have to install the google toolbar to even see their version of smart tags. Don't like them? Then don't use the toolbar. I've come to the conclusion that this really is much ado about nothing at all.

 Share Tweet This

events

Student Volunteers for ESUG 2005

February 22, 2005 8:47:26.249

I just got this call for volunteers for ESUG 2005:

Are you a student and who wants to attend the next ESUG Joint Event (the first European Event on Smalltalk)? ESUG has a student volunteers program so that you can get the conference for free. Your duties will be low - you will have to help the local organizers. ESUG will not pay for travel, but the conference itself will be free and possibly the hosting will be also free depending on the number of students.

For students that cannot afford the travel costs we may set up a private sponsoring program - some companies are ready to sponsor some students. But nothing is certain yet.

Do not wait the last minute to register. Student volunteers should submit a request by sending an email to Noury Bouraqadi. Please use the following template:

Subject: ESUG 2005 Student Voluteers
First Name:
Last Name:
Email where you can always be reached:
University:
Level in Curriculum:
Motivation:
Explanation why you need the help of ESUG:
Special information:

ESUG is a great event - if you can attend, you should

 Share Tweet This

marketing

Too much stupidity

February 22, 2005 8:24:44.641

When you see speculation like this from Ed Foster, you know that the lawyers have not only muzzled the marketing department, they've had them lined up and shot:

After noting the popularity of HDTV devices that are not yet broadcast-flag compatible and industry efforts to even restrict analog devices, one reader started looking at his old equipment in a new light. "I recently tossed three old VCRs because they were broken, and with the cost of repairs so much higher than the cost of a replacement unit, figured it wasn't worth the effort," he wrote. me. "I am beginning to think I made a mistake. Do you suppose my old 2X CD drive that I got with my Mac in 1998 might be worth something after all?"

Maybe so. In fact, I'm wondering if it might not be a good idea to hold on to any pre DRM-era TV sets, DVD players, CD drives, Tivo or other DVRs, hard drives, motherboards, and versions of Windows and other software that don't have to activated. What do you think?

The cluemeter isn't reading zero anymore; it's in the red, and falling

 Share Tweet This

BottomFeeder

About the scripts

February 22, 2005 8:15:18.092

I mentioned yesterday that I had put together a bunch of scripts for the various comics that I read. In the comments to that post, I was asked about sharing those scripts. If you navigate over to the scripting page on the wiki, you'll find instructions, the script plugin, and all the scripts I've put together. If you have problems getting any of this to work, let me know

 Share Tweet This

smalltalk

There's a Croquet Blog

February 21, 2005 21:54:33.240

Julian Lombardi has set up a Croquet blog - the Atom feed is here. Subscribed!

 Share Tweet This

smalltalk

Planet Smalltalk update

February 21, 2005 21:07:58.826

Looks like Peter William Lount has lent a hand - you can get to Planet Smalltalk via this url now: http://planet.smalltalk.org/

 Share Tweet This

general

No more comics via RSS?

February 21, 2005 20:55:38.228

Well, that's disappointing. I just noticed that a bunch of the comics I read every day stopped updating in BottomFeeder. I tried browsing the site (dwlt.net), and found out that the domain has expired. Hmm. Nothing a few minutes of Smalltalk scripting couldn't fix though - I now have scripts to grab Dilbert, Get Fuzzy, and Pearls Before Swine. Crisis averted :)

 Share Tweet This

smalltalk

You know where to turn

February 21, 2005 20:50:27.277

I spotted a question about VAST support over in the CLS newsgroup:

IBM has posted a date of 12/2005 as the end of support for IBM Smalltalk/VisualAge. Is this the end of the road? They haven't announced a new version or update... anybody hear anything?

Well, I can't speak for IBM. However, if you are looking for a Smalltalk vendor that is committed to the technology, then you should contact us.

 Share Tweet This

books

The reading backlog

February 21, 2005 17:36:33.663

I knew I had a reading backlog. It just got worse. We bought new lights for the bedroom - the old ones are flaky, and don't always go on. That meant moving the bed side tables, which in turn meant going through the mountain of books that have piled up there. I thought I had a backlog of about 4-5 books to read. The cleanup uncovered a bunch of past gifts that I had forgotten about as new ones came in. So, my backlog is now more like 15 books. The sad part is, that doesn't include the backlog of magazines and technical journals that are piled up.

 Share Tweet This

development

Building a VM

February 21, 2005 17:32:12.763

For anyone interested in what kinds of issues you face when building a VM, have a look at Sriram's three VM posts - VM part I, VM part II, and VM part III. While you probably won't end up laboring under the time constraints he's facing, you will hit the issues he's talking about.

 Share Tweet This

general

Back on the air

February 21, 2005 15:49:08.831

Well, I'm finally back online. My network dropped before I got up this morning - I went through the whole "unplug the cable modem, unplug the router, reverse" routine - no dice. Called Comcast, and to my initial surprise, it wasn't them - my router had gone wonky. I've been having some flakiness with it of late, and I guess this explains that. So, I ran down the road to a local PC shop, hoping to get a replacement. The owner had decided to take his lunch break at that point, I guess - his sign said "open", but the door was locked. Great, I had to run all the way into Columbia proper to the CompUSA store. I picked up a nice little NetGear b/g router (it also claims to support the non-standard 108 mbs thing, but I don't have that). Set it up, bing, everything came right back up. I had to go in and change the password and the default IP range (I have a couple of things on the net with static IP addresses, and the default 192 range used to have issues with the Cincom VPN). In any event, I've got connectivity back. Now I need some lunch...

 Share Tweet This

movies

Not politics, reality

February 21, 2005 1:18:02.239

I found this amusing. Variety is implying that there are fewer "R" rated movies due to the "political climate":

But even those who are reluctant to conclude that today's kids are any less interested in R-rated drugs, sex and violence than they were five years ago, say the continued political pressure over public decency has changed industry practices and made it harder for R pics to make money.

I was a little skeptical, and suspected a more humdrum financial angle - and sure enough, in the same article:

Perhaps even more startling is the fact that in 2004, PG films outgrossed R pics for the first time in two decades: $2.3 billion to $2.1 billion. The last time PG was bigger business than R was 1984, the year the Motion Picture Assn. of America introduced the PG-13 rating.

While PG films have been making more money -- "Shrek 2," "The Incredibles" and "Harry Potter and the Prisoner of Azkaban" were all rated PG -- the box office generated by R-rated films has been falling precipitously.

My quick translation of all this - the finance guys in Hollywood are pushing for the stuff that sells, and the creative guys would rather make what they consider to be art. Over a long enough interval, good market data beats "gut feeling". Don't buy it? Have a look here, at the top ten grossing films - not an "R" rating in the bunch. Generally speaking, when it comes to business decisions like this - look for a financial rationale before you look for a more esoteric one.

 Share Tweet This

smalltalk

Now, take the next step

February 20, 2005 23:41:55.728

Ok, this is interesting. Have a look at this post from Don Box. In a discussion about what language to use to teach his kids to program, he mentions Lisp, ML, Smalltalk, and Ruby. Then he explains why C# and Java are absent from the list:

There are some conspicuous absences from this list. I don't care if any of my three kids ever grok the difference between an abstract class and an interface or between a pointer and a reference, so languages like C++, C#, Java, and VB.NET are out. Honestly, if the industry is still forcing programmers to ask these kinds of questions by the time the next generation of programmers comes to the table, I'll consider my generation to have really squandered an opportunity.

My plan is to learn Ruby and relearn Smalltalk to inform my decision. In the meantime, comments or flames (public or private) from the Peanut Gallery are most appreciated.

Now, the obvious next question is - if those languages are too complex for teaching programming to kids, why are they useful for doing productive development work? Does anyone need that level of complexity?

 Share Tweet This

development

Ironic

February 20, 2005 23:20:50.445

Now, this is ironic - I stumbled across this IBM VAST partner site today. That page offers Web Services expertise using VAST. Now, scroll about 2/3 of the way down, and note what they use to bolster their argument:

So, why go for Smalltalk?

"Over-complexity? Gartner reports that 70% of Java projects fail. They also report that something like 80% of J2EE projects don't use EJB (or much at all from J2EE) - mostly they use these products as scalable app servers for JSP. That's an awfully expensive strategy"...James Robertson, Product Manager, Cincom Smalltalk

See also: http://www.cincomsmalltalk.com/blog/blogView?showComments=true&entry=3217524055

Heh. If they can use my arguments to sell Smalltalk based Web Services, maybe they should try out the product I was talking about

 Share Tweet This

BottomFeeder

More Fun with BottomFeeder

February 20, 2005 18:31:27.512

After this post yesterday, I thought I'd take a shot at generalizing and extnding the ad-hoc search script. So, I came up with this set of code:

First, a block that defines a "reporting" function


"creates an HTML report for the pattern match"
htmlReportBlock := [:collection | | stream out |
stream := WriteStream on: (String new: 10000).
stream nextPutAll: '<html><body'; cr; cr.
stream nextPutAll: '<p><b>Amazon Reference Report</b></p><p>'; cr; cr.
stream nextPutAll: '<table width="100%">'; cr; cr.
stream nextPutAll: '<tr>'; cr.
collection do: [:each |
	| key value |
	key := each key.
	value := each value.
	stream nextPutAll: '<td><a href="',  key link, '">', key title, '</a></td>'; cr.
	stream nextPutAll: '<td>'.
	stream nextPutAll: value size printString.
	stream nextPutAll: '&nsbp;&nsbp;('.
	1 to: value size do: [:cnt | | each1 |
		each1 := value at: cnt.
		each1 getMyLink isNil
			ifFalse: [	stream nextPutAll: '<a href="', each1 getMyLink, '">', cnt printString, '</a>&nsbp;'].
					cnt = value size
						ifFalse: [stream nextPutAll: ',&nsbp;']].
		stream nextPutAll: ')'.
	stream nextPutAll: '</td></tr><tr>'; cr].
stream nextPutAll: '</table></p>'; cr.
stream nextPutAll: '</body></html>'.
out := 'bookReport.html' asFilename writeStream.
out nextPutAll: stream contents.
out close].

That gave me a reusable block of code for simple reports. Well, marginally reusable :). Next, the basic search function, now with an inbound search string:


"execute with an inbound pattern, answers the matches"
matchItemsBlock := [:pattern  |
	| amazonCollection  matches |
	amazonCollection := SortedCollection new sortBlock: [:a :b | a value size > b value size].
	RSSFeedManager default getAllMyFeeds do: 
	[:each | | items |
		items := each allItems.
		matches := items select:
			 [:eachItem | | desc |
				desc := eachItem description.
				desc 
					ifNil: [false]
					ifNotNil: [pattern match: desc]].
		matches notEmpty ifTrue: [amazonCollection add: each->matches]].
		amazonCollection].

Now, notice how that block has the resulting collection by itself on the last line? That's because blocks, by default, return the result of the last expression. Thus, we need to make sure that it does. Now that we have our functions defined, we can try them out:


"look for matching books, then report on it"
| matches |
matches := matchItemsBlock value: '*href*amazon*asin*'.
htmlReportBlock value: matches.

That will first gather the matches, and then execute the HTML report. We can then look at in a browser, post it to a blog... whatever. What if we wanted to track book references across all of our feeds and items on an ongoing basis? Well, there's a scripting plugin for BottomFeeder - so I can create a simple script that makes use of these functions to create a local feed:


"create a local RSS feed for this search"
| matches |
matches := matchItemsBlock value: '*href*amazon*asin*'.
out := 'bookReport.xml' asFilename writeStream.
matches := matchItemsBlock value: '*href*amazon*asin*'.
[writer := RSS20_SAXWriter new output: out.
writer prolog.
writer startRSS.
writer startChannel.
writer title: 'Amazon Book Report'.
writer description: 'Amazon Book Report for:', Core.Date today printString.
writer pubDate: Core.Timestamp now.
matches do: [:each |
	|  items |
	items := each value.
	items do: [:eachItem |
		writer startItem.
		writer link: eachItem link.
		writer title: eachItem title.
		writer guid: eachItem guid.
		writer pubDate: eachItem pubDateString.
		writer description: eachItem description.
		writer category: eachItem category.
		writer author: eachItem author.
		writer endItem]].
writer endChannel.
writer endRSS]
	ensure: [out close].

If I stick that in my "scripts" directory, I can use the script tool to add it to the set of running scripts. Now I can add this feed to BottomFeeder via a file URL, and have immediate access to all book referencing items. Pretty neat.

 Share Tweet This

cst

Getting Started

February 20, 2005 11:23:47.396

I ran across this post from an apparently new user of VW non-commercial. He raises a lot of potential problems that new users might run across, so I figured I should explain some of them. First off, he ran into the infamous "Smart CR/LF" handling of WinZip:

First thing I wanted to do is getting Store working. I ran into my first smalltalk problem at that time. For some reason, when I loaded some base VisualWorks packages, Store was launching some obscure exception for some of them, refusing to load them and breaking the currenly running image. I also had problems with some parcels refusing to show up the code in the browser even if the source file was present in the correct directory.

After some experimentations, I found a documentation stating that Winzip's "smart CR/LF conversion" should be disabled before extracting the archives. I reinstalled and restarted everything from scratch after disabling that so-called smart feature and that fixed my problems. But I'm still wondering why that caused so many troubles and why VisualWorks did not report an understandable error message. Weird.

if possible, you should just grab the entire ISO file and install that - it will obviate this entire issue. People on slower connections do download the compressed archives though, and we know this is an issue - we intend to post a network installer in the near term future. Here's what's going on though - the compressed archives are tar gzip files. By default, WinZip has an option called "Smart CR/LF conversion" turned on - what it does is convert Unix style CR or LF lines into DOS cr/lf combos. What's the problem? Well, the parcels (loadable components) of VW ship as two files - a .pcl (binary) and .pst (source). The binary file contains pointers into the source file so that you can browse loaded code. If the file is munged by the WinZip conversion, you lose source access. As well, you can get strings for menus (etc) completely hosed up. If you see that the launcher menus are screwed up when you start vw nc, this is what happened. Turn that option in WinZip off, and try again.

The next issue Ludo ran up against is GUI building - specifically, building UI's that look good on Window resize:

Then I started playing with the GUI Painter. I must say that this tool is of very high quality and that the doc is quite well done. The only thing I found a bit crappy is the handling of window resizing. Maybe I did not understand how it's really working but I could not manage to get a nice looking resizeable GUI. Weird.

This is something that I used to have trouble with as well - but fortunately, there are two excellent summaries of what you need to do on Vassili's blog:

I found both of those posts to be invaluable for me - I was able to fix up BottomFeeder properly only after reading those. Highly recommended. Next, Ludo ran across some database problems:

Then I wanted to play with databases. So I read the Database App Dev Guide and tried the "New database application" wizzard. All I got was MessageNotUnderstood: #newDataMain exception. It took me an hour to figure out that I did forget to load the Lens-Dev parcel. Weird.

This is easier to run into than it should be. In general, what you need to do is make sure that you've loaded one the "for Lens" database connects. That will make sure that you have all of the necessary pieces. However, something else you should probably check out is Glorp. The parcels are all in goodies/parc, and are being developed rapidly. Glorp is where our database stuff is going, and it's well worth looking at. If you have questions, stop by the Smalltalk IRC channel; Alan or one of the other Glorp users are usually on hand and willing to answer questions.

Finally, Ludo had a look at Seaside, the continuation based web app server that Avi is largely responsible for:

Finally I read about Seaside and continuations. Sounds so cool that I must try it. I loaded the parcel and started reading the one-page tutorial and quickly started playing with the counter example. Then with the multi-counter example. Amazing. Simply amazing. This framework is much more powerful than everything else I've seen before. So I wanted to create my own application from scratch using Seaside. I could not understand how components are related to each other nor what are the basic rules to create an app. I read the docs. Twice. But still could not understand. Maybe because the doc is sparse, maybe because the code is not documented and I still have difficulties reading Smalltalk, maybe something else but I could not manage writingg something equivalent to the store example. I also tried to understand the store example which was also a dead-end so I tried to remove its code from the image hoping things would become a little clearer just having the framework code to read but one more time I failed to do it. So I abandoned my idea of writing a Seaside application thinking I needed much more experience in Smalltak first. Weird.

We only just started including a Seaside port with VW as a goodie - it was developed in Squeak, and proted by Michel Bany, one of our tech guys in Europe. There is doc on the net for this, but you have to look for it - this is another thing that we ought to include some pointers to. In any case, here's a pointer to a Seaside tutorial (pdf).

All of Ludo's complaints are pointers to things we need to improve on - and we intend to do so. At this point, you might wonder how I stumbled on Ludo's post - I wasn't even aware of his blog's existence before this morning. Well, I subscribe to a PubSub feed that searches for references to "Smalltalk" - and this post turned up in it. I subscribe to a bunch of search feeds using PubSub, BlogDigger, Feedster, and Technorati - they make my Product Management job much, much easier.

 Share Tweet This

rss

Finding References

February 19, 2005 20:31:05.596

I was inspired by this post from Jon Udell, where he used XQuery to walk through his feeds and find all the items that made a reference to Amazon - which is a pretty good approximation for all the posts that reference a book. Well, I'd much rather play with Smalltalk than with XQuery, and - as it happens - I have a lot of the development system available to me in the BottomFeeder runtime. So - I opened a workspace (off the System menu) and ran the following script:


| amazonCollection stream matches |
amazonCollection := SortedCollection new sortBlock: [:a :b | a value size > b value size].
RSSFeedManager default getAllMyFeeds do: 
	[:each | | items |
		items := each allItems.
		matches := items select:
			 [:eachItem | | desc |
				desc := eachItem description.
				desc 
					ifNil: [false]
					ifNotNil: ['*href*amazon*' match: desc]].
		matches notEmpty ifTrue: [amazonCollection add: each->matches] ].
stream := WriteStream on: (String new: 10000).
stream nextPutAll: '<p><b>Amazon Reference Report</b></p><p>'; cr; cr.
stream nextPutAll: '<table width="100%">'; cr; cr.
stream nextPutAll: '<tr>'; cr.
amazonCollection do: [:each |
	| key value |
	key := each key.
	value := each value.
	stream nextPutAll: '<td><a href="',  key link, '">', key title, '</a></td>'; cr.
	stream nextPutAll: '<td>'.
	stream nextPutAll: value size printString.
	stream nextPutAll: '  ('.
	1 to: value size do: [:cnt | | each1 |
		each1 := value at: cnt.
		each1 getMyLink isNil
			ifFalse: [	stream nextPutAll: '<a href="', each1 getMyLink, '">', cnt printString, '</a> '].
					cnt = value size
						ifFalse: [stream nextPutAll: ', ']].
		stream nextPutAll: ')'.
	stream nextPutAll: '</td></tr><tr>'; cr].
stream nextPutAll: '</table>

'; cr. ^stream contents

By inspecting the results, I got a ready to post set of html, which I pasted below. The nice thing is, I already have objects for all the feeds and items - and those objects have a nice rich API for me to exploit. Since I have access to tools like inspectors and workspaces (no browser or debugger though), I can do this in the application, with all of the application data at my fingers. So, here's the output from my 250 feeds - all of the items in all of my feeds that make a reference to Amazon, complete with links to the matching feeds and items:

Amazon Reference Report

John Porcaro: mktg@msft 9  (1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 )
The Daily Brief: We'll Try To Be Nicer, If You'll Try To Be Smarter! 7  (1 , 2 , 3 , 4 , 5 , 6 , 7 )
0xDECAFBAD Blog 6  (1 , 2 , 3 , 4 , 5 , 6 )
Miguel de Icaza 6  (1 , 2 , 3 , 4 , 5 , 6 )
PubSub: Smalltalk 5  (1 , 2 , 3 , 4 , 5 )
Making it stick. 5  (1 , 2 , 3 , 4 , 5 )
Jon's Radio 4  (1 , 2 , 3 , 4 )
Java, .NET, and Religion 4  (1 , 2 , 3 , 4 )
Ted Leung on the air 4  (1 , 2 , 3 , 4 )
WebSense 3  (1 , 2 , 3 )
Frank Patrick's Focused Performance Blog 3  (1 , 2 , 3 )
beyond bullets 3  (1 , 2 , 3 )
Phil Windley's Technometria 3  (1 , 2 , 3 )
Planet Lisp 3  (1 , 2 , 3 )
Web Things, by Mark Baker 3  (1 , 2 , 3 )
Panopticon Central 3  (1 , 2 , 3 )
Matt Croydon::Postneo 2.0 3  (1 , 2 , 3 )
Bob Congdon 3  (1 , 2 , 3 )
Instapundit.com 3  (1 , 2 , 3 )
Extremetech 2  (1 , 2 )
Dare Obasanjo's WebLog 2  (1 , 2 )
WonderBranding: Marketing to Women 2  (1 , 2 )
Bill Clementson's Blog 2  (1 , 2 )
Doug Tidwell's weblog 2  (1 , 2 )
misbehaving.net 2  (1 , 2 )
d2r 2  (1 , 2 )
Sam Gentile's Blog 2  (1 , 2 )
Clemens Vasters: Enterprise Development & Alien Abductions 2  (1 , 2 )
Brad Abrams 2  (1 , 2 )
John Lam: Building Better Software, Faster 2  (1 , 2 )
freeform goodness 2  (1 , 2 )
PragDave 2  (1 , 2 )
Martin Fowler's Bliki 2  (1 , 2 )
Dare Obasanjo aka Carnage4Life 2  (1 , 2 )
Derek's Rantings and Musings 2  (1 , 2 )
Aaron Swartz: The Weblog 2  (1 , 2 )
Radio Free Blogistan 1  (1 )
phil ringnalda dot com 1  (1 )
manicwave 1  (1 )
Don Park's Daily Habit 1  (1 )
Scobleizer: Microsoft Geek Blogger 1  (1 )
PR Opinions 1  (1 )
Incipient(thoughts) 1  (1 )
Jonathan Schwartz's Weblog 1  (1 )
The Fishbowl 1  (1 )
Ryan Lowe's Blog 1  (1 )
Larkware News 1  (1 )
Lambda the Ultimate - Programming Languages Weblog 1  (1 )
Ralph Johnson - Blog 1  (1 )
Smalltalk Tidbits, Industry Rants 1  (1 )
Bob Westergaard - Blog 1  (1 )
Joel on Software 1  (1 )
Scripting News 1  (1 )
NRO Corner Feed 1  (1 )
MOOREWATCH 1  (1 )
Lessig Blog 1  (1 )
Belmont Club 1  (1 )
Tapped Feed 1  (1 )

 Share Tweet This

humor

Looking for a gift?

February 19, 2005 16:48:55.690

if you are looking for a gift for the Barbie set girl that has everything, Gizmodo has your answer. Every little girl needs her very own hot pink assault rifle :)

Hat tip to Mike

 Share Tweet This

movies

Fine Cinema

February 19, 2005 16:01:34.823

If you are looking for a bizarrely funny movie to watch, then look no further than your local rental/DVD place and pick up Shaolin Soccer. We watched this flick last night with friends, and it was hilarious - in a bizarre sort of way. Imagine, if you can, a cross between "The Matrix", "Kill Bill" (vol 1, the good one), nearly any 70's era Kung Fu flick, and almost any sports flick you've ever seen - you've now got "Shaolin Soccer".

It's a hard film to describe - there are parts that just made me scratch my head and go "huh??", and other parts that cracked me up. There was soccer (with "Matrix" style effects, there was fighting (but no killing - you can let kids watch this), and there was even a "boy meets girl, buy loses girl, boy gets girl back" romance. Check it out - it's an hour and a half of completely harmless fun.

 Share Tweet This

general

But I thought we had a copy

February 19, 2005 15:53:42.197

Well, last night was another exercise in humility (as if I needed one after the circuit breaker stupidity). My car failed the Maryland emissions test last month, so I had to have it looked at. I finally got around to taking it to a mechanic, who found a simple problem and fixed it. The trouble started when he asked me if I wanted to pick it up, even though he was closing soon. I said "sure", and he asked if we had a spare key. As my wife mentioned "I don't think so" in the background, I said "sure". And there went a few hours of last night, as we went back and forth to the mechanic twice, with keys that weren't for the car. Well - my mother in law had some sense, and suggested that we call AAA.

That worked out fine (although, it's unsettling to watch how easy it is to break into a late model car). With that done, we had the remainder of our evening back. Here's the part that really made us feel dumb - as we headed to bed, we located the spare key in the kitchen, hanging on a hook. Something tells me that I need more sleep...

 Share Tweet This

general

To golf, or not to golf...

February 19, 2005 12:08:05.001

Dave Winer asks "Should I take up golf? or is golf evil?" Heh. Well, I've been playing golf since I was 16 - and like everyone else who's stuck with the game, I really wish I could get out more often. It's a funny game though - I've got some friends I can play golf with (my cousin, for instance) - while other friends simply find the game frustrating. I think it depends a lot on your level of patience (with yourself). If you find that you get more and more angry when you just can't quite get it, then golf may not be for you. Why? Well, the first few times you go out (unless you are some kind of prodigy), you'll screw up your drives. You'll top the ball and hit a lot of grounders. You'll muff more putts than you could believe is possible. And yet... there's always that one unbelievable shot that you just have no idea how you managed to make. That's what keeps me going back. For anyone else? I think you have to try it.

 Share Tweet This

marketing

Don't make him mad

February 19, 2005 11:57:53.941

When you get under Scoble's skin for bad marketing/PR, just watch him go wild. On the other hand, things are starting to turn around on that front here at Cincom. The guys doing the web site have noticed blogs and RSS, and they've been asking me questions about it. There's a general redesign of the main Cincom site underway (yes, it's a pretty stock 1996 kind of site right now). They want to start getting into blogs and RSS, so I'm encouraged.

 Share Tweet This

events

Smalltalk codefest in Berne

February 19, 2005 11:29:25.964

I got this note in my email this morning - if you're a Smalltalker in central Europe, this should be of interest:

SSUG is organizing a Smalltalk Party/SqueakNic/Coding Party - We invite all Smalltalkers to join this event to share their enthusiasm and knowledge about Smalltalk.

What -- Smalltalk Event
Where -- University of Bern - IAM Bern, Switzerland
When -- Saturday 12th of March 2005 -- 12pm until ...
Contact -- email

Bring your lunch with you and contact me so that we can arrange something.

An apero sponsored by our sponsors will end the day. Our sponsors:

If you plan to come, please add yourself on this list.

Here some directions for getting there:

 Share Tweet This

cst

VW on Fedora Core

February 19, 2005 1:31:52.312

We've had many reports of trouble running VW on Fedora Core (RedHat). Here's the answer from engineering:

If they have /proc/sys/kernel/exec-shield then they need to either 'echo 0 > /proc/sys/kernel/exec-shield' or try using the utility they provide [named something like 'execstack'] to run vw without the shield.

The problem is caused by the fact that we were writing the CPUID instruction sequence into data segment memory and executing it.

 Share Tweet This

humor

Finally, a meaningful online quiz!

February 18, 2005 23:25:19.670

Which D&D class are you? Here's what they told me:

You scored as Bard. It is said that music has a special magic, and the bard proves that saying true. Wandering across the land, gathering lore, telling stories, working magic with his music, and living on the gratitude of his audience: such is the life of a bard.

 Share Tweet This

smalltalk

Smalltalk Coding Contest Announced

February 18, 2005 15:54:46.445

The Smalltalk Industry Council Announces the First Annual Smalltalk Solutions Coding Contest

Cary, North Carolina - February 18, 2005: The Smalltalk Industry Council is pleased to announce the first annual 2005 Smalltalk Solutions Smalltalk Coding Contest. The Smalltalk Solutions Technical Conference being held in Orlando June 27-29, 2005 will serve as the home for the coding competition finale. Smalltalk Solutions is the premier forum for bringing together Smalltalk users, developers, vendors, and enthusiasts.

Coding contest prizes include:

  • 1st Place - $1,000 USD to be used towards a future Camp Smalltalk attendance
  • 2nd Place - iPod
  • 3rd Place- iPod shuffle

Each of the finalists will also receive a Smalltalk Solutions 2005 conference registration valued at $670 USD as well as a complimentary individual membership to the STIC. This does not include travel, lodging meals, tutorials, or any other fees associated with the conference attendance. The Smalltalk Solutions Coding Competition is broken into two phases of competition. The first phase begins on Monday, May 16 at 9 a.m. EST and ends on Wednesday, May 18 at 9 a.m. EST running for 48 consecutive hours. Registration will begin March 1 and participants must register for the competition online at www.stic.org by May 13 at 6 p.m. EST. Confirmed registrants will receive the requirements for the first phase online. All coding must be done in Smalltalk. Conference registration is not required to participate in the first phase of the competition.

One representative from each of the four board member companies consisting of Cincom Systems, GemStone, IBM, and Knowledge Systems Corporation will judge the first phase of the competition. Each submission will be submitted to the judges as blind submissions and a total of three (3) winners will be selected to compete onsite at Smalltalk Solutions 2005 in Orlando, Florida. The winners of the first phase will be announced on June 1, 2005 on the Smalltalk Industry Council web site. The second and final phase of the competition will take place on Sunday, June 26, 2005 from 6 p.m. to10 p.m. onsite at the Wyndham Orlando during Smalltalk Solutions pre-registration. The details of the second phase of the competition will not be released to the finalists until the competition begins. Prize winners will be announced during the keynote general session on Wednesday, June 29, 2005.

Contact:
Jason Jones
Smalltalk Industry Council
1143 Executive Circle
Suite G
Cary, NC 27511
Phone: 919-789-8549
http://www.stic.org
http://www.smalltalksolutions.com
jsj@ksc.com

iPod and iPod shuffle are registered trademarks of Apple Computer, Inc.

 Share Tweet This

news

Speaking of Looney

February 18, 2005 11:25:13.239

It seems that the folks at Warner Brothers are out to damage a brand:

he old look of the cartoon character Bugs Bunny is saying "That's all folks!" to the generations who grew up with him. Bugs, the Road Runner and other Looney Tunes cartoon characters are getting a new look and even new names.

The "reimagined" Bugs Bunny is going to be renamed "Buzz" and star in a new series called "Loonatics." The series will be set in the future and will feature a tough-talking rabbit with laser eyes and who is a martial arts expert. Even Daffy Duck will get a techno-update with built-in sonar.

So... exactly how is this an "updated" set of characters instead of a brand new set of characters? Look Warner, you have a successful, well known set of characters here. Remember how well the Animaniacs did a few years ago? Now ask yourself, were those "re-imagined" characters, or new ones?

I mean - I ask you - which image below is Bugs Bunny? Bah

 Share Tweet This

sports

Hockey Fans with too much time on their hands

February 18, 2005 11:16:13.925

Some of the letter writers here have way too much free time on their hands. For that matter, the "Free Stanley" folks need to find a hobby as well...

 Share Tweet This

BottomFeeder

BottomFeeder on the Mac

February 18, 2005 9:52:23.425

If you are running BottomFeeder on OS X 10.2.x and having stability problems, try following the steps outlined by james Savidge, who walks through setting up Bf to use the X11 VM. I'm planning on packaging this to make it easier, but there it is. Thanks James!

 Share Tweet This

blog

Tools

February 18, 2005 9:24:22.502

I've finally gotten serious about providing some tools for the blog software I've been working on for the last couple of years. The latest version in the public store has some GUI (not web) tools for bootstrapping and managing blogs and users. I haven't fully tested them yet, so there could be problems. There's also a few layout issues - I slapped them together quickly, and have not gone back and adjusted them so that a window resize won't make them look wonky. At some point, I'm really going to have to go through and create a message catalog and pull all the strings as well. Having added all of those caveats, it's progress. Grab the latest rev of CST-Blog from the repository and have a look. I'll be updating this page once I do some more testing.

 Share Tweet This

sports

Well, this is amusing

February 17, 2005 21:59:21.282

Apparently, there's still a Boston Red Sox related curse out there. The last time the Sox won a World Series (before this year) was 1918. The following Stanley Cup (1919) was cancelled (the influenza outbreak). So this year, the Sox won the Series. And sure enough, the Stanley Cup has been cancelled.

 Share Tweet This

itNews

If a SmartTag falls on the internet, does it make a sound?

February 17, 2005 17:46:46.140

It seems to depend. If Microsoft created the SmartTag, it falls with an enormous thud. On the other hand, as Dare Obasanjo points out, it lands quietly if Google created it. I really like this summary line by Dare:

Personally, I can't wait to see how much cognitive dissonance  this causes the Slashdot crowd.

Heh. He's got that right.

 Share Tweet This

itNews

So long, and don't let the door hit you on your way out

February 17, 2005 17:41:31.689

I think we can file this in the "couldn't happen to a nicer bunch of guys" folder - The Register is reporting that SCO is likely to be delisted from NASDAQ. It's a fitting punishment for all of the value they've destroyed (their own) and attempted to destroy.

 Share Tweet This

news

What's that word again... Responsibility?

February 17, 2005 17:39:45.205

If the lawyers can't blame D&D, or movies, or TV... they'll try to blame videogame. Which part of "Personal responsibility" is unclear to this bozo?

 Share Tweet This

customers

Cool Customer

February 17, 2005 17:39:16.390

I met with a very interesting customer today - RubrIQ. They are based in Ottawa, Canada - the meeting was in Cincom's Montreal office. They drove over from Ottawa, I came up from Maryland yesterday. I met with David Long, who's the visionary (and a co-owner there) and John Couch, one of their customer support and all around networking guys.

These guys have a very interesting system they call Atlantis. It's built in VisualWorks, and exists roughly in the domain specific modeling area. Here's what they do - they capture the business process requirements for an application area. Their tools allow you to model it graphically, showing as much or as little detail as you want. The underpinnings of this system is a Finite State Machine - which means that the applications generated by Atlantis are always in a known state. If your requirements are wrong that might be the wrong state, but it's definitely known.

What they've done is work with a few people in business areas they are targeting - I won't go into too many details there, since we are under NDA. Suffice to say, they capture the full business process for a given problem, and they can push a full application out the back end. They believe in their own sales pitch - their internal systems (accounting, sales management, and software lifecycle) have all been built with this tool.

Before I saw what they do, I really would not have believed it was possible - given a set of business processes, they can capture them and generate a working application. In the markets they are going after, they can deliver a working product in a week - which is pretty darn impressive. I won't say that this is a silver bullet for all business areas; it's not. However, for the targets they are going after (and a few others they plan to go after) - Atlantis is simply untouchable.

I mentioned that I didn't think that a tool like Atlantis could be built in the faddish languages - like C# or Java, for instance. In a theoretical sense, that's not correct. In a practical sense, it is - while you could build this in one of those systems, it would require a larger team and a much larger up front investment in time. They make use of the dynamism of Smalltalk - and of the meta model behind Smaltalk - in ways that would be hard to deal with elsewhere.

This is an outfit that you're certain to hear more about as time goes by. John and his team have done a very, very impressive job.

 Share Tweet This

cst

An interesting meeting

February 17, 2005 13:21:46.406

I had a fascinating meeting with a customer today - Satellite Forces Canada. I'm heading off to the airport shortly, but will have some details later. I'll write some thoughts up on the plane, and post later. They have some truly cool technology that I don't think you could do easily in the currently faddish systems out there.

 Share Tweet This

travel

An inauspicious start

February 17, 2005 8:33:10.881

I figure that it's a bad sign when you get up in the morning and discover that your hotel has no hot water. Hey, it's only February in Montreal - who wants hot water? Having survived that, I'm off to find coffee before meeting with a local customer.

 Share Tweet This
-->