Steve Rubel says that the big news from MS (which Scoble hinted at earlier today) is that Office is switching to XML as their default save format. That's the big, earth shattering news? A format change that will take up even more space on my hard drive? Oh, puh-lease... wake me when something relevant happens. In the meantime, cue all the people who think that XML is the universal answer to everything - half of whom will applaud this, the other half of whom will condemn it. Bored now....
Country Music Television has selected its first "vice president" for the Dukes of Hazzard Institute. The first task for the New York-based executive: Upgrade the Institute's new facilities.
In other words, get cable and a new TV set for his apartment.
Yes, Christopher Nelson's new job, which comes with a $100,000 salary and a one-year contract, will be to watch reruns of "The Dukes of Hazzard" weeknights on the Country Music Television cable channel and write blog postings for the network's Web site.
I think I just heard my aggregator barfing...
James Governor thinks that Eclipse might be the next client platform for applications, not just development:
I have long argued that Eclipse was going to shake up the smart client space. In fact, i was arguing that before IBM even began its rich client work under the auspices of the Eclipse organization. The thing is, Eclipse was never going to be just an IDE. It was never going to be a tool only used by developers or operators. Eclipse is a framework for everything, and when did a developer environment not drive an approach to the client, especially when it has so much cross platform widgetry?
He may be right; Eclipse is widely used. On the other hand, "extensibility" in Eclipse is limited to plugins - if you want real extensibility, you want the ability to sling code in the runtime. I did a screencast on that awhile back. I've added the feature discussed there to BottomFeeder since that cast, and it's available as an update. As to this:
Eclipse RCP may be nowhere near as rich as Flash, nor have even a micro-fraction the number of users. But it is an environment where tons of developers live every day. Where they can view source across any component. And as the Web has repeatedly shown, the richest experience doesn't always win. The sourciest does. Obviously AJAX building styles are in the mix too, for the same reason, and Flash and AJAX are showing nice familiarity.
The source for the entire Smalltalk image has always been available. Heck, as David Buck demonstrated awhile back, you can change the compiler (on a class by class basis) if you want to. Smalltalk may be a niche player, but it's definitely the "sourciest" environment around - and always has been.
One of the things many of us have come to internalize is the notion that the modern era - the 20th century in particular - was more brutal than any time that had come before. Reading Tuchman's "A Distant Mirror" has disabused me of that notion - there's a reason she used the subtitle The Calamitous 14th Century.
The book focuses on 14th century France (and in turn, on England, as this was during the span of the 100 year's war). The casual slaughter she documents is startling. The first thing you have to realize is that warfare was a different matter then - states only partially existed, and loyalty was to individuals - lords and the royalty. After a King raised an army, he had to figure out how to pay it (typically via harsh taxation of the already poor peasantry). Woe betide the countryside if the army survived until "peace" was declared - many of the nobles who raised armies took to a life of rapine and pillage once peace came. It was bad enough in France after the black death hit in 1349 - the various companies of soldiers who were no longer fighting for the French or English in the wake of that catastrophe took to raiding the countryside.
One thing she documents is that the population of France may have dropped by half between 1300 and 1400 - due to plague, the 100 years war, and banditry. An absolute eye opener...
I was emailed a link to this post on language trends - the post notes that circa 1995, Smalltalk had good mindshare and decent usage, but by 2005 and dropped into niche status. He asks:
So what's the point of all this? Well for me it's background for a bigger story: The decline of Smalltalk. I'm interested in understanding why Smalltalk fell from its zenith as an OO language of choice in 1995 to its current status as a great platform that hardly anyone uses. Is this the future of Java? If I can better understand the fall of Smalltalk (not to mention Objective C), I can better anticipate the future of Java and other languages.
Well, there were two things that impacted Smalltalk usage - the actions of ParcPlace-Digitalk (later ObjectShare), and the actions of IBM. Let me address PPD/OBJS first. ParcPlace was a growing company in 1995, before the merger with Digitalk. Even then the company was showing some organizational strains - the management team was sub-optimal at best (finely illustrated by their decision to merge with Digitalk)
That merger ate the next 18 months and tons of cash. The company not only spent 18 months trying to merge VisualWorks and VSE, it:
- burned through cash making multiple fruitless acquisitions
- failed to release any new versions of VW or VSE during the code merge attempt
- failed to manage the merger itself, leading to internecine warfare within the engineering and consulting groups
Needless to say, that kind of thing didn't engender confidence in the customer base. That was bad enough - then rumors of financial problems started to float, and in winter of 1997 management announced EOL of VSE (without any migration strategy), the termination of the code merge of VW/VSE, and a new Java strategy. Thus the VSE customer base bled out, and the VW customer base, already nervous over the non-existance of new releases, wondered how much focus the product would get with the new Java focus.
Things went that way until the new management team came in and changed the company name to ObjectShare (one of the firms that had been acquired during the old management's mad buying spree). Things muddled along, the Java product was released with a thud, and VW 3.0 crawled out. The new management tried to prop up share prices and failed, and things continued to slide (again, not engendering confidence in customers or prospects). Finally, Cincom bought the Smalltalk business in 1999 (and things have been recovering on our end since then).
That explains part of the slide. For the rest, you have to look at the introduction of Java and the actions of IBM. As of the mid 90's, IBM had a successful Smalltalk product, and they had been basing all of their development environments on it - from VisualAge Smalltalk came a C++, Cobol, and ultimately, a Java toolset. IBM was doing well with this stuff, and had managed to scarf up most of the existing VSE accounts (since PPD had just ditched them). However, Java was getting a lot of buzz, and IBM was spending a lot of their own money to build the VA infrastructure. Mind you, this part is speculation on my part, but here's what I think happened:
- IBM saw the Java buzz growing
- They realized that it would be cheaper to be a free rider on Sun's Java than to maintain their own set of development tools based on VAST
That latter point was enabled by Sun making Java freely available, and licensing the JVM widely. While both actions helped the spread of Java tremendously, I am not at all convinced that they helped Sun in the least. That's another story though - in the Smalltalk world, IBM was slowing down their Smalltalk investments (culminating in their hand off of the technology to Instantiations this year), and ramping up their Java story. This didn't engender confidence in the Smalltalk customer or prospect base - especially when IBM's sales folks started aggressively pushing their Java line and talking down Smalltalk.
To summarize - ParcPlace (and its descendent firm, PPD/OBJS) committed suicide, which roiled its customer base and dropped confidence in Smalltalk amongst potential adopters. Meanwhile, IBM started moving away from Smalltalk and towards Java - which had the same effect. The other Smalltalk vendors of the mid 90's were too small to affect the growing meme that Smalltalk was dying.
Things are different now - Cincom has been working diligently on Smalltalk since late 1999, and we have a growing, profitable business. There are plenty of other Smalltalk dialects out there, including what is now going to be called VA Smalltalk. Smalltalk isn't in the mainstream at this point, but it's being used by a growing number of companies that want a productive alternative.
To recap: Friedman, imagining himself Columbus, journeys toward India. Columbus, he notes, traveled in three ships; Friedman "had Lufthansa business class." When he reaches IndiaBangalore to be specifiche immediately plays golf. His caddy, he notes with interest, wears a cap with the 3M logo. Surrounding the golf course are billboards for Texas Instruments and Pizza Hut. The Pizza Hut billboard reads: "Gigabites of Taste." Because he sees a Pizza Hut ad on the way to a golf course, something that could never happen in America, Friedman concludes: "No, this definitely wasn't Kansas."
After golf, he meets Nilekani, who casually mentions that the playing field is level. A nothing phrase, but Friedman has traveled all the way around the world to hear it. Man travels to India, plays golf, sees Pizza Hut billboard, listens to Indian CEO mutter small talk, writes 470-page book reversing the course of 2000 years of human thought. That he misattributes his thesis to Nilekani is perfect: Friedman is a person who not only speaks in malapropisms, he also hears malapropisms. Told level; heard flat. This is the intellectual version of Far Out Space Nuts, when NASA repairman Bob Denver.
Read the whole thing.
PR Opinions describes some "interesting" analyst reactions at a meeting recently:
- Sorry you can't meet with Analyst X because according to our records you briefed him/her eleven months ago and as you are aware non-clients can only brief a analyst once in any given twelve month period
- Thanks for getting in touch. Unfortunately we never made any progress in working together and our analysts have to keep a balance between client and non-client work. Why don't you see if there's an opportunity for us to do some business and come back to me.
That sounds just like the kind of "pay me and I might have an opinion you like" behavior I've come to expect from my favorite group of analysts. There are decent analysts out there, you just have to look carefully.
Dana Blankenhorn writes about how open source - both in writing and in software - is affecting both industries:
- The journalism model of superficial ads against superficial content no longer works.
- The programming model of paying for stuff not warrented to work no longer works.
There are new business models out there, models I've been writing about for many years. But publishers are doing quite well not paying writers, so they refuse to pursue them. And those software companies who sell services on top of free code, without helping pay the freight of people writing that code, are doing the same thing.
The solution is in our hands. Get me the funding and I'll prove it to you.
There is something of a free rider problem with business models built on top of free software. Mind you, it's a mixed bag - there are positives as well. The thing to keep in mind is that the FSF vision of paradise is every bit as flawed as the claim that Open Source is communist.
"You see, regardless of what topic or subject matter you've built your website around, there's valuable content out there... articles and information written by some "expert" in that particular field.
And since that kind of content already exists - AND a large portion of it is available through the magic of RSS feed capability - YOU don't have to create the content yourself."
These are exactly the kinds of jerks that end up ruining things for the rest of us. Heck, they don't even have any shame - look at how the latter site promotes itself:
Have you tried hiring writers or searching for related articles in article directories around the web? If you have, you must know how tiring it can be to search through thousands of articles in hopes of finding something remotely related to your web site topic. Or if you have opted to hire writers you need to worry that they are being honest in their writing and haven't plagarized someone else's work.
Why worry about dishonest writers - cut out the middleman and just steal the content yourself! It's clowns like these that give the overreaching types at the MPAA and the RIAA enough oxygen to live.
I guess my biggest problem with smalltalk is it's greatest asset. I'm just not a huge fan of Smalltalks images. It's not like you have a seperate smalltalk application, you have a full run environment that has been customized to perform some function.
Granted, it's been nearly eight years since I've dabbled, but I still haven't seen a Smalltalk optimizer that reduces the image size by paring out unneeded code, maybe because with smalltalk it's impossible to make that distinction.
So, I posted this response, also in comments:
VisualWorks, descended from the original Smalltalk-80 at PARC, has shipped with RuntimePackager for years - and before that, with a more basic stripping tool. Here's an example Smalltalk executable for Windows
After you run the installer, look in the install directory - you'll find bottomFeeder.exe, which is a 13MB executable. The development image that I use is 38MB.
I'm somewhat surprised that people aren't aware that you can, in fact, create Small Smalltalk apps. Smalltalk MT is fully compiled, and I know you can create Small apps with Dolphin. Heck, I've created executables that are under 4MB using VisualWorks - although I don't really strive for small executables. There's been a fair bit of research on this in Squeak, too - check out this page, for instance.
I blogged about the new categorization searches in BottomFeeder last week, there were two small problems:
- I iterated towards the core code in a workspace, and left a specific search string from testing in the code. Thus, it didn't really work.
- While it would have been natural to save the categorized searches as search feeds, that wasn't done
Both of those defects have been fixed now. You can define any kind of categorized search, and save it as a search feed. Just grab the latest dev update and restart.
One of the more interesting things to watch in business is the need for simple answers, regardless of the question. Take RSS and syndication, for instance - lots of PR folks are out there looking for an RSS "strategy" now. Have a look at this page, which tries to explain RSS to the uninitiated (yes, it's old - I point it out because I was pointed to it in email).
The focus of that page is on the utterly irrelevant aspects of syndication - the technical implementation. Sure, that stuff is of interest to those of us implementing aggregators and/or servers (that produce RSS) - but it's not of any use to PR and general business staff. How the content is syndicated isn't the interesting part - it's how the content is produced that matters.
What I'm seeing is a desire on the part of PR folks to have this be magic - to somehow wave a magic wand, and via the magic of syndication, have the stuffy old website suddenly be relevant. I have a hot tip for you - it's not enough. Syndication is a means to an end, it's not an end in and of itself.
What you really need is fresh content. More than that, you need content that is updated on a regular basis. Take your average corporate website - is there any good reason to visit more than once every few months? For the most part, no - the content is mostly static, and almost always completely bereft of actual human voice. There's no there, there, as was famously said about Oakland.
What do actually want? You want people to return to your website again and again. What do you usually provide? Bland oatmeal. Consider your TV viewing habits - do you watch TV shows that cover the same ground relentlessly, or do you watch shows that have plot development and action? Just so with your website - you need to have something that attracts people back. A better color scheme isn't going to do it, nor is just slapping a little orange RSS icon up. What you need is some useful and interesting content. To see the difference, go visit channel 9, and then visit microsoft.com. Which one of those two looks like it might be worth coming back to?
Register now for Smalltalk Solutions 2005, so you can hear Colin Putney talk about Monticello:
Putney, Colin: Quallaby
Tuesday 2 pm to 2:45 pm
Abstract: In the last 2 years Monticello has emerged as a viable tool for source code management and versioning of Squeak applications. Having accumulated some real world experience with Monticello, we've designed a next-generation versioning engine which will form the core of Monticello 2.0.
This talk will examine three hard problems in versioning software, and explore Monticello's unique approach to solving them. Along the way, we'll also see comparisons to other versioning systems, including Store, ENVY and Monticello 1.
First is the "repeated merge" problem. This occurs when we have two (or more) parallel lines of development. Repeatedly merging code back and forth between the two lines can create artificial conflicts during merges, forcing developers to explicitly avoid conflicts as they work. A good versioning tool allows developers to save or merge their work at any time, and records enough history information to prevent spurious conflicts from arising.
The second problem is also one of spurious conflicts. Often, during a merge, we want to apply only some of the changes implied by the merge. But this "cherry picking" of changes introduces a risk that either spurious conflicts will be interoduced to future merges, or genuine conflicts will be missed. Again, the challenge for versioning tools is to record enough history information to allow developers to work naturally, while still doing merges accurately and automatically.
The final problem is so difficult that most versioning tools don't even attempt to solve it. Only Smalltalkers would demand to be able to update a running program with new code, including the kernel on which the versioning tool its self is running! Though still quite experimental, Monticello 2 attempts to solve the "brain autosurgery" problem as well.
Bio: Colin Putney is a software developer at Quallaby Corporation, writing on network monitoring software in VisualWorks Smalltalk. He the author of OmniBrowser and co-author of Monticello, both open source development tools for Squeak Smalltalk. Though he has been programming for many years, he began working in Smalltalk in 2002.
See you in Orlando!
I watched most of "BraveHeart" tonight - I hadn't watched it in a few years, and had forgotten just how moving a film it was. It coincides nicely with what I'm reading, "A Distant Mirror", by Barbara Tuchamn. The book chronicles the 14th century through the life of a minor noble, Enguerrand de Coucy. She sets quite a bit of background first, and analogizes a lot of the events to those of August 1914 (not a big surprise, as she had previously written "The Guns of August").
It's fascinating to read about this period - it's so alien to our time. The chapter that covered the black death, for instance - since the people of that era had no notions of micro-organisms, they attributed the deaths to all manner of superstitions. Of course, blaming "the other" came up then as it did later - there were a lot of anti-semitic pogroms. The eye opener (even though I had some vague notions about this) was the population loss - through the 14th century, due to the plague (more than once), wars, brigandage, etc - the population of Europe was nearly 50% lower by 1400 than it had been in 1300. That's a rough estimate, of course - it's not as if anyone was keeping accurate records at that point.
I posted some pictures of our flower gardens a few days ago - we've had some rain since then, and the Peonies have started to bloom. Here's a shot of the garden on the left side:
And here are the ones on the right:
Sadly, the picture phone isn't quite good enough to pick up the red peonies in the riot of flowers in the top picture. I dug those gardens out the hard way a few years back - wheelbarrow, shovel, bags of topsoil. Fortunately, the house two doors down hadn't been built yet, so I was able to dump all the dirt in that empty lot - if I were to put in another garden now, I'd have to haul all the dirt into the woods across the street.
Inspired by Tim Bray's post on search engine blog accesses, I decided to take a look at my own logs for search engine referrals. The results aren't a terribly big surprise: here's a small image of the chart I came up with going back through April:
You should be able to click that image for a larger version of it. The red line is Google - you'll note that it outpaces all the other search engines by quite a bit - but it's been dipping of late, with a slight rise from Yahoo. Ask Jeeves and MSN search are nearly invisible. Getting that chart was an interesting process all by itself - I used a simple Smalltalk script over the logs I downloaded, building up a dictionary of weekly accesses:
logDict := Dictionary new. refs := ApacheLogScanner scan: 'f:\logs\blog_log.0' recordSeparator: Character lf. begin := Date readFrom: '5/8/05' readStream. end := Date readFrom: '5/14/05' readStream. scanned := refs entries select: [:each | each timestamp asDate >= begin and: [each timestamp asDate <= end]]. dict := Dictionary new. dict at: 'google' put: 0. dict at: 'yahoo' put: 0. dict at: 'msn' put: 0. dict at: 'askjeeves' put: 0. dict at: 'googleImage' put: 0. last := nil. lastWasImage := false. scanned do: [:each | | referer | referer := each referer. ('*www.google.*search*' match: referer) ifTrue: [dict at: 'google' put: ((dict at: 'google') + 1)]. ('*search.msn.com*' match: referer) ifTrue: [dict at: 'msn' put: ((dict at: 'msn') + 1)]. ('*web.ask.com*' match: referer) ifTrue: [dict at: 'askjeeves' put: ((dict at: 'askjeeves') + 1)]. ('*search.yahoo.com*' match: referer) ifTrue: [dict at: 'yahoo' put: ((dict at: 'yahoo') + 1)]. ('*http://images.google*' match: referer) ifTrue: [(each origin ~= last and: [lastWasImage not]) ifTrue: [dict at: 'googleImage' put: ((dict at: 'googleImage') + 1). lastWasImage := true]] ifFalse: [lastWasImage := false]. last := each origin]. logDict at: begin put: dict.
It's pretty simple minded code, and it chews a lot of memory on large log files - but it works, and it's pretty quick. I dumped the results to a file and imported them to excel, where I made the mistake of using Pivot charts. Ack! That wasn't what I wanted. I then found the chart wizard on the toolbar, and created the simple chart above.
Then, having no idea how to export a graphic from Excel (if you can, it wasn't obvious to me), I took a screen shot, trimmed the result in Paint, and then shrunk it down with irfanview for this post. Whew. All that just to post a simple chart :)
Scary story out of SMU.
A professor who kept an annonymous blog about her experiences on campus was let go - the school says it wasn't about the blog, she says it was.
Either way, she's been canned.
Makes for some scary thoughts - what if an employer finds out you've said something about them, and fires you for... "not fitting the corporate culture?"
Well, if you say something in public which reflects badly on your employer, what do you expect? This is nothing new, really - the same thing can happen (and I'm sure has happened) over published articles and speeches. The only difference is the medium (blogs), and the apparent thought on the part of this person that posting anonymously was a shield.
I've been holding off on releasing a "final" 2.5 version and a new prebuilt image until the release of Squeak 3.8. Now that 3.8 is out there, I've done both of these things; a 2.5.0 version is on SqueakMap and a new image is up at http://www.seaside.st/Download/Images/ .
Check it out. There's also a VisualWorks port, with an older rev in the goodies (on the cd), and the more recent port is in the public Store.
ABC has put together a cool teaser for Season two of "Lost" - have a look at this page, which explains how to activate the teaser. Pretty cool, if you've been watching the show.
An amusing Google Fight: Which sucks more, Java or Smalltalk?
Memorial Day goes back to the US Civil War - have a look at this WikiPedia Page for a few details. Personally, I salute those in uniform, and have a lot of respect for those who've been killed or injured in the service - regardless of the particular conflict they fell during.
Here's a nifty little "why blogs don't work" article from Jesse Taylor: Why Smart Companies don't use corporate weblogs. Here's the crux of his rationale:
Public weblogs have very low accountability, and they return no information or insight back to the author about their audience. Authentic customer communication is hard to come by and the fact that weblogs do not gather information about the viewer means that weblogs are just another publishing vehicle that is no more valuable than the website maintained today.
Well, hold on a second there. With a stock corporate website, there's no reason to visit more than once. It rarely changes, and there's hardly ever anything worth reading there. With a blog, you get the voice of an actual person who actually cares about their product(s) - go read Scoble for awhile, for instance. Whether you like MS, hate MS, or don't care about MS, you can always get a decent feel for what's going on there from his blog, and from the channel 9 site that he promotes. What about the main MS site? Nothing but those gosh awful, insulting "dinosaur" ads for Office.
But wait - Taylor's article is more disingenuous than that - it's actually a pitch for some kind of hopeless social networking system:
Blogworking is a combination of social and business networking within a like minded community, by way of weblog publishing. Blogworking allows members to authentically communicate their ideas in a fun and safe way, while establishing themselves as active enthusiasts or thought leaders within that community. This addition compliments traditional weblogs by combining authorship, content and information with accountability, authenticity and visibility.
That's right folks - you should sign up for a service that's invisible to your potential market, and costs you money as an added bonus! Steve Rubel agrees, it would seem.
I just finished "The Birth of the Modern" - it's a great book, but takes work to read. Johnson skips around the world of 1815-1830 - the end of the Napoleonic age, and the beginning of the Industrial world. It's mostly Europe, and of that, mostly England - but there's coverage of Russia, the far east, the US, and South America as well. I enjoyed the book, and feel like I have a better grasp of that era now - I'd like to find something good that covers European history between the fall of Napolean and the revolutions of 1848 next. In the meantime, I'm continuing my eclectic reading patterns by picking up a book I got quite some time ago - Tuchman's "A Distant Mirror", which covers Europe in the 14th century. I'm reading her "The Guns of August" as a bedside book, so I know her prose style already.
This post over on VodkaPundit made me sit up and think - it's about the ongoing bubble in the housing market:
As recently as 2002, only 11% of the new mortgages in the [San Francisco Bay] area were interest-only mortgages. But today 66% of new mortgages in the area are financed that way. While such mortgages are not as common nationwide, the upward trend extends across the country. Fewer than 10% of new mortgages nationwide were interest-only mortgages in 2002 but that has now risen to 31%.
The author, Will Collier, pulled that from the San Francisco Chronicle. He then lists a bunch of (admittedly anecdotal) evidence of disquiet underneath the booming housing sector. What really got my attention were two things:
- How many new loans are of the Interest Only type
- How many foreclosures he found in some "well off" areas
That latter one made me think - I've noticed more ads recently on local radio and on TV for "quick sales" on homes - the pitch being that you can get a cash payment for a house quickly if you need to (I would guess that these sales go for dimes on the dollar, if that). I hadn't given those ads much thought, but then I noticed the post I linked above - and it was a real epiphany.
I've been thinking that the bubble can't go one - Condos across from the Columbia Mall (a suburban mall, for gosh sakes!) are going for more than $500k. Houses in my neighbohood are selling for more than 2X what people paid for them just five years ago. New houses adjacent to my daughter's middle school are selling for $900k and up, and a small clutch of new houses on the way into my neighborhood - on lots that are a fifth of an acre at best - are going for $900k and up. The last ones I mentioned are off a private road as well, which means that they get no county plowing in the winter, and no road repair, ever. And still they go for absurd amounts of money.
This also clicked with me because of a section of "The Birth of the Modern" that I've been reading. In the early 1820's, there was a huge boom in England, and it rippled out through Europe and into the US. Credit was easy, and all sorts of schemes were floated, including a number of very risky ones in the newly independent (or still fighting) South American regimes. It was all fueled by easy credit. When that came down, there was ruination everywhere, and industrialization was set back by decades (longer in some places, like South America). The housing boom isn't quite like that, and history never repeats itself perfectly - but boy, it was a discomforting coincidence reading about that crash and then taking a look at some of those housing numbers.
James Gosling points out what it means to speak in the age of blogs - you're always on the record:
I need to stop talking to reporters. It's so easy for what results to get misunderstood. I was not trying to say that all open source projects are chaotic: there is a spectrum. Apache is at the very high end of the scale, on average exhibiting excellent behaviour. Their governence rules are very effective. Apache and the Linux kernel set the Gold Standard. But they aren't all of the open source universe, and there's some decidedly oddball behaviour that goes on. The problem is that it's often the crazy behavior that becomes publicly visible and it tarnishes everything. When I made the comment that got so misunderstood I was talking about the perception of the open source community by outsiders.
It wasn't really the reporters who made this story though - it was when it hit slashdot and the blogosphere - at which point, Gosling had to issue a "what I meant to say, was" kind of statement.
The funny thing is, this sort of thing is giving me more sympathy for politicians and other public figures. They've been in the "always on" bubble for quite some time now, and the media has been playing "gotcha" with them for years. That whole game is moving down the scale. It's not as if the same number of people care, but it's every bit as damaging for the niche audience that does...
It's amusing to see IBM suddenly get all uppity about open source. Apparently it's just fine when it's taking business away from Microsoft or Sun (Eclipse), but just awful when it's taking business away from big buck products like WebSphere. Spotted this in Sam Ruby's comments:
IBM says LAMP users need to grow up. Woodshed!Let’s do it: According to Daniel Sabbah, general manager of IBM’s Rational division, LAMP — the popular Web development stack — works well for basic applications but lacks the ability to scale.
I think it might be time to hand IBM a mirror. That sound they hear? It's their own support of OSS projects eating their very own market out from under them...
I've just added two things to BottomFeeder (dev update stream only) that make it easier to deal with your subscriptions. The first thing is a maintenance tool - select a cutoff date, and you can find all the feeds that haven't updated since then. Select the ones you want to delete, and you can blow them away.
The second one is a bit more complex, but possibly more useful. Here's a screen shot of the tool in use in my development environment:
What I've done is define a general category called "aggregators", with a bunch of search terms. With that done, all inbound items will be scanned for any categories I've defined - and thus made easily searchable by the categories I've set up. The "Categorize Now" button allows you to kick start the whole thing after you initially define a category.
That's something I've been pondering for awhile now, and I decided it would be a nice modification.
The "get rid of the old stuff" idea came from this post by Scoble. I realized that I periodically scan my feeds for old crap anyway, so having a tool do it for me would be loads simpler.
It turns out that those nice folks at the MPAA are only out to help us - witness Dan Glickman's op-ed piece:
As CEO of the Motion Picture Association of America, my principal concern is protecting the magic of the movies. So why should I care about a so-called broadcast flag regulation?
The answer is simple. I want to make certain that the American people will continue to have the opportunity to see our movies and television shows on free television in the digital age.
That's right folks - he's concerned about the three people left in the US who aren't watching via satellite or cable - apparently they are the source of massive piracy that can only be ended via the broadcast flag. But wait, he's not done - he's out to show us how technically literate he is too:
the broadcast flag is to assure a continued supply of high-value programming to off-air digital television consumers. Failure to implement the broadcast flag on the July 1 date will be a significant step backward in the transition to digital television. It would also lead to unnecessary confusion in the marketplace, since most television manufacturers have already changed their production to incorporate broadcast flag technology.
Oh gosh - if all those flag ready devices detect a steady stream of zeroes instead of the occasional one, we'll all be doomed - it'll be cats and dogs sleeping together, 40 days and 40 nights, and that worst of all possible things - fair use. We can't have that - Dan's there, ready to protect us from a fate worse than death. It's better - why, the broadcast flag is so smart, it can tell how things are being copied, and whether we've been naughty or nice:
Some say that this regulation would take away TiVo, but in fact, the FCC has certified a TiVo implementation of the broadcast flag. The broadcast flag does not inhibit copying, nor does it prevent redistribution of programming over a personal home network; it only restricts unauthorized redistribution of programming over the Internet and other digital networks.
That's right folks - it will only restrict copying on the WAN - copy to your hearts content on the local LAN. What's that you say? An ssh tunnel defeats that, so pretty much all copying would have to be banned? Perish the thought - the MPAA and Dan are out to help us. And it looks like we'll all suffer for our arrogant desire for fair use - the MPAA is just going to take it's ball and go home:
Our companies want to continue to show their movies and television shows to viewers who don't or can't subscribe to cable or satellite systems. But without the broadcast flag, that option will look less and less appealing. In the end, it will be the consumers who suffer the most if the broadcast flag is not mandated for the digital era.
He's right about who'll suffer - if twits like Glickman and the MPAA get their way, all of us will suffer. Fair Use? It'll be a distant memory.
We played two interesting Puerto Rico games this evening. I made a ton of mistakes in the first game, and got completely waxed - 20 points behind the pack. The second game was pretty cool. I went straight out for a shipping strategy - I managed the corn boats pretty well early, and got a wharf - after which the VP's just flowed in.
By the end of the game I had 40 shipping points, which is pretty amazing. I even managed to get the Residence - so I cleaned up. I can't get too big a head over this though - that first game I was buried so deep no one could find me :)
Here's a talk at ESUG 2005 - porting a VAST/Gemstone app to C# and SQL Server. The cognitive dissonance part?
This experience report presents a process that is currently being used to migrate a large, mission-critical VisualAge GemStone Smalltalk system to C# and .NET. Described is an effective, test-first methodology that assures the .NET version system will be source-code identical to the existing GemStone Smalltalk system. Described are the steps of this migration process. Also presented are techniques to deal with the short-comings of the C# language. Experience with moving from GemStone persistence to SQL server is also discussed.
"source code identical"? What the heck does that mean? Especially given the "dealing the shortcomings of C#" bit. My brain hurts just reading that...
I was asked a question about my OSS rant in the Smalltalk IRC channel, so I thought I'd clarify. I'm not hostile to open source in general - heck, I've released BottomFeeder as open source, and we ship open source components (GLORP) with Cincom Smalltalk. What I object to are glib "it should all be free" statements by people like Eben Moglen.
Smalltalk has always been "open source" in the sense that all source is available with the product (at least in our case), and in the sense that the Smalltalk level code is all modifiable.
Register now, so you get the lowdown on Smalltalk usage in medical devices:
Using Smalltalk in Medical Instruments
Hodges, Andy: Medtronic
Wednesday 9:15 am to 10 am
Abstract: Our group is using Smalltalk to develop software applications for use in medical instruments. These instruments are used by clinicians to interrogate and program pacemakers, defibrillators, and other implantable devices. This experience report will describe our basic system and how the Smalltalk software interfaces to other system components, how we have adapted several agile practices (test first design, automated unit testing, shared ownership, limited pair programming), and how we merge with traditional development processes to create artifacts required by the FDA (requirements spec, VT spec, test reports, etc.). We have been able to successfully incorporate Smalltalk technology into a highly regulated, high process environment. It has provided the flexibility and productivity increases that help reduce our product cycle times.
Bio: I have been developing software at Medtronic, Inc. for almost 15 years. For the last 5 years, I have been working in one of our Research organizations and have been almost exclusively programming in Smalltalk. Our software systems are used in research studies intended to collect the clinical data necessary for the delivery of the next generation device features and algorithms.
See you in Orlando!
It looks like it's time for my weekly log analysis. First off, I'll have a look at the BottomFeeder downloads over the last week:
Platform BottomFeeder Downloads Windows 701 Mac 8/9 368 HPUX 320 Mac X 196 Sources 190 Linux x86 186 CE ARM 125 Windows98/ME 57 Update 37 Linux Sparc 32 Solaris 10 Linux PPC 10 AIX 3 SGI 2 Source Script 2 ADUX 1
That's a total of 2240 downloads over the last week, for an average of 320 a day. Smaller than last week's, but in that variable 300-400 a day range that Bf has been hitting for quite some time now. And yes - I'm still baffled by all those HPUX downloads :) Now let's take a look at the HTML accesses, and see what tools are being used there:
Tool Percentage of Accesses Mozilla 41% Internet Explorer 34.8% Other 15.4% Net News Wire 2.5% BottomFeeder 2.5% Java 1.8% BlogLines 1% Opera 1%
That looks about the same as last time. Finally, let's see what the RSS access logs show this week:
Tool Percentage of Accesses Mozilla 24% Other 21.1% BottomFeeder 17.1% Net News Wire 13.9% BlogLines 3.7% SharpReader 3.6% Internet Explorer 3.5% NewsGator 3.5% Liferea 1.9% Planet Smalltalk 1.9% Feed Demon 1.5% RSS Bandit 1.2% Feed Reader 1.1% Shrook 1% JetBrains 1%
That's a slight variance from last week's look, but not a lot. That's the long and short of it.
What else? Now here is a play that might be of particular interest to the Smalltalk ecosystem, especially if IBM ( a big name if not an active player recently) leaves it: Smalltalk companies co-operate on the parts of Smalltalk where there is no worthwhile competitive advantage. i.e. they use a common base and compete on new more interesting areas. Co-opetition. Painful whilst the common base is constructed, but it could save money for each company. This saved money can now be used to either allow survival if customers leave the arena, or allows investment in new areas to compete with Java, C# et al.
So the fact that companies pay people to work on Open source is neither some new revelation , nor a dirty secret. I see it as a sign of people trying new business models - and some are succeeding.
The problem with that is, all the Smalltalk vendors already have that base implemented. There's really no motivation to go that way as a result. There's also the fact that the various implementations vary quite a bit. As to "trying to business models" - well, I'll make the point again: show me one that works for Cincom Smalltalk and funds the level of development we do.
Well, Lucas once knew how to make a good movie. He forgot how a few hundred million bucks ago. I went into this movie with very, very low expectations - and boy, I wasn't disappointed. The movie lost me early on, as a consequence of one of Lucas' boneheaded plot devices from the last movie - the whole "A Jedi must not love" thing. We end up with Padme and Anakin living together in the capital, but claiming that they've married in secret. Yeah, right - as if those Jedi mind masters wouldn't have figured that one out.
The whole movie went that way. We had a loosely connected set of battle scenes (and boy oh boy, I won't even try to explain the idiotic conspiracy theory behind Palpatine's war for control of the Republic - it didn't pass the smell test. See, here's the problem. We went to see "Sahara" last night. Think "National Treasure", but in the desert. Improbable plot, RoadRunner style escapes, the whole bit. However, here's what it had going for it:
- The dialogue worked
- The emotional interactions of the characters worked
- The pacing was relentless, so you never had to stop and actually consider the improbability
Which is why "Sith" sucked so much in comparison. The pacing was glacial. The dialogue was actually painful to listen to. The characters made stupid choices again and again. Not to mention the improbability surrounding the central fear point of the movie, that Padme would die in childbirth. Apparently, hyperdrive is one thing in the Star Wars galaxy, but knowledge of C-Sections - nope.
This was perhaps the worst movie I've been to in a long while, and that includes a lot of dogs. I don't know what Ebert and Roeper were smoking when they gave this film a thumbs up, but I rather suspect that the after effects of those drugs were very, very bad. My wife was tempted to just walk out, and there was a point halfway through when I nearly fell asleep.
My recommendation - if you have a choice between "Sith" and "Sahara", go see "Sahara". Heck, if you have a choice between "Sith" and "The Annihilators", watch the latter. Yes, it's really that bad.
For once this month, the weather is neither cold nor rainy. So I'm out on my patio, enjoying the WiFi, the breeze, and my gardens. Here's a shot of the one to my left as I sit here:
And here's a shot of the ones on the right:
Like the patio I'm sitting on, we sunk those circle stone paths ourselves, with shovels, bags of sand, and a wheelbarrow. It was a lot of work a couple of years ago, but it's all good now :)
The lawyer, also a professor of law and legal history at Columbia University Law School, said the time has come to again treat science like physics or chemistry, by promoting a free exchange of ideas the way Galileo Galilei proposed.
"We are responding to a lengthy, but temporary period during which software was a proprietary, closed science..." Moglen told the audience. "The consequences of that process produced bad software at high prices. We are reversing that situation. What we do is help people think well and share."
Moglen said certain incumbents, which he did not directly name, refuse to share their software ideas despite having originally taken much of the foundation of their products from the free software community.
Gee, that's nice of him. How does he suppose that a decent size software team funds development efforts without being able to hold the rights to it? Say we (Cincom) followed his advice with Cincom Smalltalk, and just gave it away. Just charge for support, I suppose Eben would tell me.
Sure. Experience in this industry tells me that people will avoid paying if they can, and delay payment for support until it becomes required. There's another problem as well - the vultures that would swoop in and offer cut rate support that we couldn't match if we hoped to keep our developers on staff. We have fewer people handling support than we have doing new development. That means that a competing firm - in a scenario where the entire suite was free - could swoop in with a handful of support staff and charge far less than it costs us to manage our developers. The result? We would either go out of business, or end up with virtually no developers on staff.
Has Eben looked at the big, successful Open Source projects? Like Apache, Eclipse, and yes - Linux itself? The dirty little secret is that all of those are funded by a handful of large firms. The reason? Open Source allows them to play the "Robin Hood" card against Microsoft. One of the things people forget about MS is that they became successful early on by offering lower prices for things than their competition did.
I'm hardly the only person thinking this - witness this article in Forbes Magazine:
Open source advocates have pushed McVoy to "open source" his product--that is, to publish the program's source code, or basic instructions, and let the world use it for free. But McVoy says it is simply not possible for an innovative software company to sustain itself using an open source business model.
"We believe if we open sourced our product, we would be out of business in six months," McVoy says. "The bottom line is you have to build a financially sound company with a well-trained staff. And those staffers like their salaries. If everything is free, how can I make enough money to keep building that product for you and supporting you?"
Which is exactly what I said above. Torvalds objects, of course - but I notice that he doesn't object to the salary that he gets as a result of big company largesse:
"Open source actually builds on a base that works even without any commercial interest [which] is almost always secondary," he says. "The so-called 'big boys' come along only after the project has proven itself to be better than what those same big boys tried to do on their own. So don't fall into the trap of thinking that open source is dependent on the commercial interests. That's nice gravy, but it is gravy."
I love that phrase "without commercial interest". Sure Linus. Next time that stupid thought crosses your mind, go trace where the money they use to pay you comes from. I'll caution you though - your head just might explode. McEvoy gets it right here:
"It costs a huge amount of money to develop a single innovative software product. You have to have a business model that will let you recoup those costs. These arguments are exceedingly unpopular. Everyone wants everything to be free. They say, 'You're an evil corporate guy, and you don't get it.' But I'm not evil. I'm well-known in the open source community. But none of them can show me how to build a software-development house and fund it off open source revenue. My claim is it can't be done."
No one has shown me a model whereby I could fund Cincom Smalltalk via an OSS model either - and I'll point out that the open source language environments out there are either
- Effectively funded by a big company (Eclipse)
- Run by tiny companies with a handful of staff, who are willing to do lots of side consulting
In that latter case, if you watch the products run by those small staffs - they don't tend to evolve that fast. Why? If you have to spend all your time paying the bills with consulting gigs, it's hard to do proactive product work.
Here's a tip for Eben, since he's convinced that the future is in non-proprietary software: Put your money where your mouth is. Instead of blathering, go run a company that builds OSS software for the general market, and let's see how far you get. And oh, Eben - since you think Sourceforge is such a vast well of great stuff:
Moglen said users who need software can find an abundance of code to use for software building in online machine tool shops, such as SourceForge. In that community, he said some 95,000 programming projects are being worked on by roughly 490,000 programmers in their spare time.
Why don't you also give us the activity stats for those projects? I know why you would rather not - it would be embarrassing. It's kind of like shouting "10 million blogs" without also pointing out that most of them have one or fewer entries, and will never have more than that.
Red Sox were told Schilling could be out 12 weeks
I though it sounded like a bad idea for Schilling, even though it worked out for the Sox.
PR Differently makes a bold sounding prediction:
The second half of 2007 is when we will witness the death of the first "big" newspaper from the convergence of blogs, podcasts, and the like.
by this, I mean we will see the shuttering of a "major" player - think the Times, the Journal, something like that, and in its place will rise up the digital-only version. Be it "digital paper," (which will probably be cheaper than regular paper) or web/cast based, the newspaper will die as we know it, and others will follow.
I suspect that the NY Times subscription plan is going to be a lot less successful than they hope - I sure won't pay $49.95 a year for a paper with loose to non-existant editorial standards (think Jayson Blair), and with mostly dull editorial writers - I can get far more interesting commentary - from all parts of the political spectrum - from the blogosphere. Wouldn't surprise me a bit to see the Times be first in line, especially if their dead tree numbers keep dropping.
It's the last day for early registration for Smalltalk Solutions 2005:
Today is the last day for early registration for Smalltalk Solutions. After today, all registration fees will increase by $100. Please visit the Smalltalk Solutions web site to register.
If you have registered, then you need to hurry and reserve a room at the conference hotel. Our block of rooms is nearly gone. You can find more information about how to register here
See you in Orlando!
Podcasting is supposed to be the next big thing, and I don't really get it - although, using full disclosure here, I'm listening to a James Lileks podcast as I type this. The thing is, Lileks is funny - I enjoy his writing, and I like listening to his occasional diner bits.
Having said that, here's what I don't get about podcasts - they're like radio personality blather, but without the "radio voice". I've tried listening to a few podcasts - some by Winer, some by Curry, a few others. Maybe this is a personal taste thing, but I get the same urge when I hear those casts that I get when the DJ's on the local mix station start blathering - reach for the dial now!
The problem is, it takes a very long time to get someone's point when they insist on making it verbally. Something that takes 15-20 minutes verbally would take me fewer than 5 minutes to wade through in print. Which gets to the heart of the issue, for me: if your podcast could go to paper with no loss of information, you are wasting your time. This is what separates most podcasts from the sort of thing Lileks is doing - he's mixing in pop culture references in musical form, and I find that interesting. I'm sure that there are people who find Lileks dull - like any art, this is a matter of taste.
Back to the main point though - with a Lileks cast, it couldn't be delivered in print - not without a huge loss of information. Take your typical podcast though - it's 15-20 minutes of thinking out loud - a verbal rough draft, if you will. Thanks, but no thanks.
Gordon Mohr has a disturbing post on the interrelationship between Hepatitis B and the demographic overage of boys in Asia. It's engaging and disturbing, all at the same time.
Jonathan Schwartz relates an anecdote, illustrating that FUD is still being used by some of your larger firms out there:
It's also amazing to hear what our competition's been telling some of our European customers. IBM told several that they couldn't port their apps to Solaris 10 because Sun is withholding information - but only on Opteron. Which even the customers knew was ridiculous. It's tough to withhold information when the product's free, and code's open. (They offered another customer a "private version of WebSphere on Solaris 10, supported by IBM Global Services" - um, no thank you.) I'd like to thank the customers that continue to demand choice, and the ton of partners we're signing up to deliver it. I think we've cleared 1.5M license downloads.
They even do this on the niche level - go back to the SDTimes quote I pulled from an anonymous IBM source.
Scoble illustrates the quandary that dite owners are faced with in the syndication space. People like Chris Pirillo need visitors to their site (it's how they get paid - advertising). That means that they are driven to provide partial content feeds in order to "force" aggregator readers to the site. Sadly for him, this runs smack into this:
I'm tired of reading feeds that treat me badly. I have more than 1,300 full text feeds. There's one or two exceptions. The New York Times. CNET. Slashdot.
The ironic thing is, Pirillo's site illustrates what I wrote about over here almost perfectly. No, Chris isn't providing brochure-ware. But his site requires effort to read, and that extra effort - when combined with a partial content feed - makes it less likely that I'll bother. What am I talking about, you ask? Well, follow that link I provided to his site. Not only does he provide partial content in his feed - he only provides partial content on his site. If one of the extracts looks interesting, I need to follow a [more] link to read the whole thing. Uhh, Chris - that's not going to happen IMHO - not for most people. I understand the quandary on the feed side (although, IMHO, the answer is to provide full content feeds that point back to "premium" site only content - not to provide an extract that I'll blip by).
I don't think this post helps either:
I love how everybody whines when they don't get their way - it's human nature. So, for all of you who unsubscribed from my RSS feed because it wasn't the way you wanted it (even though you're not the one providing it or paying for it), then you won't ever know that I considered going back to full feeds.
Vinegar, honey, all that. If you want to drive people to your site, I don't think that useless extracts are the way to go - it's far easier for me (even with only 281 feeds, as opposed to Scoble's astounding 1300+) to filter it right out than to follow the link. While I get the problem, I don't think he's found the answer.
Don Park is more down on Atom than I am:
For example, what is the point of requiring all entries to have a unique identifier when feed clients have no incentives to reject feeds that violate that requirement? Filtering of duplicate entries from multiple sources is a quality of service problem that is best dealt with in a separate opt-in specification. Clients and servers that support the opt-in spec will be more popular if resulting differences in user experience and distribution are significant enough. If not, there was no need for it anyway.
The reality is, aggregator implementors are not going to charge out and ponder the spec in great detail. We are going to do a sanity check on Atom 1.0 feeds as they appear, tweak existing code as necessary, and move along. In BottomFeeder, RSS feeds, RDF feeds, and Atom feeds all end up being pushed into the same object model - from the end user's standpoint, a feed is a feed, and whether it's Atom, RSS, or RDF just doesn't matter.
The net value of the entire Atom exercise? Very close to zero.
As you know if you read Troy's blog, he's off having gastric bypass surgery. I've been getting email updates on his status, and this morning I found out that he had been suffering a small fever since just after the original surgey. Today they went in to check the sutures - they wanted to make sure that there was no infection caused by leakage. The good news is that there's no leakage, and his fever is going down. Here's the update I got:
Troy is out of surgery, and they did not find any suture leaks, or any problems with the surgery. They are not sure what caused the fever, but it seems to be going away this afternoon.
So good news for Troy!
When I announced CST Summer 2005 yesterday, the NC files for ObjectStudio weren't updated on the server - the 7.0 files were still there. That's been updated, so you should now see ObjectStudio 7.0.1 as one of the download options.
PVRBlog links to a Steven Levy piece on TV watching habits:
The result may be that when all the time-shifting and space-shifting is accounted for, most people will watch the same stuff by the same creators. In fact, even with today's relative abundance, most people stick to only a few channels. According to Nielsen Media Research, households that receive about 60 channels usually watch only 15. Households whose systems can receive 96 channels (around the national average) actually watch... 15. What's more, a recent study conducted at the UPenn Annenberg School for Communications showed that when people were offered more programming choices, they stuck to fewer selections—and, alarmingly, watched fewer news shows.
Well, the thing is that those "15 channels" vary a lot, I think. While each of us may only watch a small set of the available stuff, I'd bet that the small set varies quite a bit over different households (and varies quite a bit over time depending on the household demographics, as well). For instance - we watch a lot less Nickleodeon now that our daughter is 11 than we did when she was 5.
The hard bit of market research here is figuring out what part of the target audience any particular household is in.
Steve Rubel points to an interesting fake blog occurrence - where whoever is behind the fake blog is spamming negative comments about the company in question with positive spin. Fake blogs are getting more common - take a look at the results of this Google search on the term. Of the supposedly 10 million + blogs out there in the US, I wonder how many are either:
- Dead (i.e., one post and gone)
- Troll blogs of the sort I mentioned above
One things for sure - it'll be really hard for search engines to filter this out - not least because the service being abused most is run by Google...
Update: The faux blog has gone 404. I guess Panera Bread doesn't like being caught out :)
I spend half my time trying to identify what performance systems are doing by reproducing their behaviour in a performance testbed. It isn't always successful - I'd like to get profile information directly from the production systems, but even low overhead profilers can't get certain types of information in a low enough overhead way (I've tried, believe me I've tried).
One piece of info that is really useful to know is how many of each type of object has been created and has been GC'ed by the JVM. That information isn't available from the JVM, except if you use a profiler (with the honorable exception of JRockit which I think will give you this info in a low overhead way).
But all it takes is two instance variables added to each class object: countCreated and countGCed. And then the JVM just needs to increment each counter for each class when an object is created or GCed. That must surely be a neglible overhead added to the cost of object creation and garbage collection.
This is really the biggest bang for your buck I can think of to add to the JVM for improved monitoring of the system. With that information, so many things become possible, including automatic detection of memory leaks, identification of what may be causing high GC loads, etc.
Gads. Does this guy have any idea how many instances of an object could get created in a normal application? Remove your hands from the code browser, and return your seat to the full and upright position....
My windows inside Eudora were disappearing, and it seemed to make no sense - I'd summon one of the mailboxes from the list, move the mouse over, and *poof*, it would just disappear (but still be listed as open). Very bizarre. I couldn't get the windows to "stick", even after closing and reopening Eudora multiple times. Then I got myself into a very bad situation by telling it to float the mailbox window - and watching that one disappear.
This looked very bad. Then I moved the mouse to another app, and noticed that Windows thought that the center button was down. No amount of toggling fixed that - Windows was just in a bad state. Finally, I rebooted to clear that, and all was well. Really, really weird.