A full measure of food
Like just about everyone else in the US, I'm now stuffed. I'm thankful for everything I have though, and realize that lots of people aren't as fortunate. Happy Thanksgiving!
Like just about everyone else in the US, I'm now stuffed. I'm thankful for everything I have though, and realize that lots of people aren't as fortunate. Happy Thanksgiving!
When I updated the NetResources exception handling, I made a small error - and that error broke support for authentication (both normal and digest). I've updated the dev stream, and I'm doing another full build now. The longest part of that is the upload to the server, which seems like a perfect use of computing resources on Thanksgiving :)
Sam Gentile points out that the MS TDD page - which many people complained about (my comments here) is being fixed. When companies pay attention to the feedback available in the blogosphere, they can turn a mistake into a positive experience. Or, they can be like Sony. Or, apparently, like Dell.
The Lisp guys make the productivity point:
Rails is not a Silver Bullet. However, widely reported results place productivity increases over modern Java methodologies (e.g., J2EE, Struts, etc.) in the 6-fold to 10-fold range (with many of these claims coming from long-time Java luminaries). Preliminary tests by our Technical Lead put the code reduction for a normal module in our Java stack converted to Rails at roughly 20:1.
This is what you would see with Smalltalk (or Lisp, etc) as well. If you want a leg up on the competition, you won't find it with Sun or Microsoft.
Sony's little adventure into Rootkit installation may have even worse (for them, and possibly other labels) fallout: Second thoughts from the artists themselves. Van Zant's new album was ranked 882 on Amazon before the DRM scandal broke - now look at things:
Overnight, Get Right with the Man dropped to No. 1,392 on Amazon's music rankings. By Nov. 22 -- after the news made headlines and Sony was deep into damage control, pulling some 4.7 million copy-protected disks from the market -- Get Right with the Man was even further from Amazon's Top 40, plummeting to No. 25,802.
The Business Week article notes that most artists have been ok with DRM, as a way to prevent pirating. However, that kind of sales drop gets their attention - they are now seeing that the potential negatives are, in fact, pretty big. At the very least, I expect to see artists doing some due diligence with the labels over this kind of thing. More evidence of that:
"We're really upset about this," says Patrick Jordan, director of marketing for Red Light Management, which represents Trey Anastasio, former front man to jam band Phish. Anastasio's latest solo album, Shine, was released Nov. 1, just as news of Sony's rootkit was worming its way onto Internet blogs and listservs. "I'm expecting a decrease in sales," Jordan adds.
Indeed, Shine debuted with 15,000 sales its first week. But by week two, when the rootkit fiasco was in full swing, sales had plummeted to 7,000. Weekly numbers will be released Nov. 23, and Jordan is bracing for the worst. "It's been damaging, and certainly we're going to discuss that with the label," he says.
Another sign of the labels - like Sony - being way behind the curve - their failure to work with Apple:
As Sony BMG and other labels release more CDs with tracks that can't be dragged to iPods, artists are hearing from outraged fans. In response, some artists -- including Tim Foreman, guitarist for Switchfoot, whose Nothing Is Sound release was part of the Sony recall -- used a fan site to post instructions for disabling Sony content protections that prevent consumers from dragging tunes to their iPods.
It's one thing for fans to try and find a way around DRM schemes - when the artists start pointing out how to do it, it's a pretty clear sign of a disconnect.
The Sony debacle is, I think, simply the straw that broke the camel's back. The disconnect between artists, labels, and fans has been growing for a long time now - this event simply opened the floodgates and got people talking about that disconnect.
This year's Smalltalk Solutions will be held in conjunction with the Linux World and Network World Expo in Toronto, April 24-26. See http://www.lwnwexpo.plumcom.ca/ for more information on the conference in general. We are now looking for presentations concerning all aspects of Smalltalk usage, both commercial and non-commercial, and for all dialects and operating systems. That is to say, even though the main conference has Linux in its name, it is not a requirement that Smalltalk Solutions presentations involve Linux.
Note that the conference format will be slightly different from previous years, with tutorials held on April 24th, ahead of the main conference. Regular session slots will be one hour, rather than the 45 minute slots we have used previously.
To submit a proposal, please use the form at http://www.lwnwexpo.plumcom.ca/sts_call_papers.cfm which also includes more detailed information. You can also e-mail Alan Knight with any questions.
Finally, and most important, note that the submission deadline is November 30th, so get your proposal in as soon as possible!!!
Scoble wants to see some new stuff and get outside the echo chamber:
One great thing about traveling is that I get out of my echo chamber and see the world from new perspectives. I wonder who’ll be sitting next to me on the plane. Will it be a teacher? A janitor? An executive? An accountant? Will he or she hate computers? Love them? Be a Mac user?
Well. He'll be in Paris for a conference soon - if he wants a new perspective on web development, he should drop by the Paris Smalltalk party - I'm sure that someone there would love to give him a Seaside demo.
The Nintendo DS is getting cheaper:
For $99 dollars this December you'll be able to pick up a Nintendo DS at your local Target store
Don't underestimate Nintendo in the game console wars - price points matter quite a bit in this space.
French Smalltalkers have a party coming up in Paris on December 3rd:
Le groupe des utilisateurs francophones de Smalltalk (French Smalltalk User Group) vous invitent à une Smalltalk Party, c'est-à-dire une journée de présentation et de démonstration de Smalltalk et de Squeak.
- Lieu : Paris, INJS de Paris, 254bis Rue St-Jacques 75005 Paris, Salle Bébian
- Transports en commun : RER B - Station Luxembourg
- Date : le 3 décembre 2005 de 9h à 18h (pause repas dans un restaurant à petit prix du quartier).
- L'emplacement de la SmalltalkParty
Sounds like fun!
Chris Petrilli likes Seaside quite a bit:
I’ve been playing with Avi Bryant’s continuation-based web framework Seaside, which is written in Smalltalk. Wow. That’s all I can say. After some recent work with Rails, I had come to admire the cleanliness of the framework -- even if, on occasion, I had some complaints about short-cuts taken that need not be necessary. Compared to Seaside, Rails seems to me to be a jalopy. Don’t get me wrong, it’s a seriously pimped out jalopy, but the easy with which one can build interactivity and modify it on the fly with Seaside is mind-blowing.
Now, he does have some concerns about database interfacing - MySQL in particular. MySQL is a database that we are looking at seriously.
In contrast to Sony's woes, Microsoft has a different problem with the XBox 360 - not enough on the ground, and an audience that is absolutely rabid for the product. For instance:
The shortage is very real, and it has plenty of people angry and frustrated. At one of two Circuit City stores that I visited, there were two separate lines, one for people who had shown up before the store even opened and were given "vouchers," and another for the voucher-less people hoping that someone backed out of the deal. I got in the second line to gauge people's hopes and expectations. The result? The overwhelming majority of people in line were actually people who had pre-ordered units from other stores, most notably Gamestop and Electronics Boutique. One individual, Dennis, had two pre-orders, and was still in the (hopeless) line. Why? It's a common story: Dennis got a call from his pre-order stores. "Sorry," they said, "but we cannot fill your order, and will not be able to do so until after Christmas." Dennis claims that he placed both of his orders in July.
It's even getting uglier than that - robberies at gunpoint and the like. I've seen numerous reports like this one. Having a wildly popular product that people really want is a good thing, but MS is going to have to stay on top of this - excitement can turn to fury quickly.
Mark Watson - like Ed Burnette, who he points to - advocate a slower moving Java language. Here's their point:
Java is great because of the huge amount of 3rd party software available for it. The majority of open source software in the world today is written in Java. It's nearly ubiquitous. But Java has to stabalize or we'll lose that advantage. It's 10 years old and it should be mature. Not dead, just mature.
What they point to is a problem that any commonly used language (like C and C++ before it) runs into - if your user base uses a diverse set of tools, then the amount of movement possible in the language itself becomes minimal. The pushback against new Java features is increasing for exactly that reason - and Burnette points out that C# doesn't face that problem, because MS can update it pretty much at will.
We do the same thing here at Cincom - any VM is downwardly compatible within a given generation (2.5.x, 3.x, 5i.x, 7.x) - but not down to a former generation. That allows us to make changes and not stay static - but it's a luxury we can afford because of the fact that we aren't in a commodity position, like Java is. It's an interesting conundrum - once a language reaches mass popularity, improvements to it become harder and harder - and you'll have to look outside that language for real jumps.
We are in the last push to get the winter 2005 release of Cincom Smalltalk out, but we aren't the only ones working on a Smalltalk product - the Object Arts guys have just pushed out Dolphin 6. Congratulations!
Ryan Lowe gets the value of dynamic languages after working in Ruby. Of course, I think Smalltalk is better :)
I had another look at the NetResources library, and I found out that it wasn't as flexible about setting the user agent as I'd like. I changed that, added a setting to my build, and now it's up - in the development downloads. The last few revs have been advertising themselves as Mozilla compatible, and there turns out to be a problem with that - at least one site I subscribe to classifies that kind of agent string as robotic. So, BottomFeeder is back to properly identifying itself, now that the right API is being used.
Over the weekend we went to see "Harry Potter and the Goblet of Fire". I really liked it - it started a bit slowly, I thought - but once it picked up steam it was "hold the edge of your seat" good. I thought they did a good job of portraying the interpersonal difficulties the characters were having in that book - something I had wondered about, given the action centering around the three challenges. The climactic scenes were well done - pretty much just as I had imagined them.
In my opinion, this is a movie well worth going to - run, don't walk.
Sometimes, being too aggressive about handling exceptions can be worse than not being aggressive enough. Over the last couple of months, Michael has been tweaking the NetResources library (it's in the public Store) to deal with some locking issues in the caching code. Last month, there was a change made that caused a few problems - it started trying to handle exceptions that it shouldn't. Here's the relevant code snippet:
response := [client executeRequestDo: [:connection | client getNotifyingResponse: connection]] on: (self class httpExceptions, Error) do: [:ex | self behaviourForException: ex. nil]. response ifNil: [^self].
The #executeRequestDo: message send executes the HTTP request (or not; it actually implements conditional-get). When you make an HTTP request, any number of bad things can happen - you can get timeouts, other network errors, redirects - if you don't get a response object, you'll get an exception. Some of those exceptions (like redirect) can (and usually should) be resumed - while others (server error) most certainly should not be. Still others - timeouts - can be resumed or restarted, but the decision is an application level issue.
Note the exceptions being caught - #httpExceptions is a list of http and network level exceptions, and Error is a catch-all. The logic is in #behaviorForException:. The mistake was in the old version of this method, and in the old version of the handling code. In the previous version of the above, the code was catching Error (i.e., pretty much everything, undifferentiated). Here's the handling code:
behaviourForException: ex ex class = Security.SSLBadCertificate ifTrue: [Security.X509Registry default addCertificate: ex parameter parameter]. (self class possibleTimeoutExceptions includes: ex class) ifTrue: [^self class triggerTimeoutEvent: url]. (ex isResumable and: [self class exceptionsWeShouldResume includes: ex class] ) ifTrue: [ex resume] ifFalse: [self reportTheErrorType: ex]
What that does is check the sort of exception we got, and then handle it based on that information. The old code just checked whether the exception could be resumed and then did so; that led to situations where BottomFeeder would report low level socket errors - the code being resumed was in no state to be resumed. The relevant check is not only whether the exception could be resumed, but whether it should be resumed. In this case, that check is a simple check against this list:
exceptionsWeShouldResume "which ones should we actually resume?" ^Array with: Security.SSLBadCertificate with: Net.HttpRedirectionError.
Note that the handler stuffs the certificate, which allows us to resume. In the original caller (excerpted at the top) there's logic for dealing with a redirect, so that gets dealt with. Other errors are presumed to be transient, and simply reported. For the purposes of an application like BottomFeeder, where we'll try to read a feed every hour (or whatever the interval has been set to), there's no reason not to ignore most errors. The only additional handling - which is done at the feed level - is to check the response to differentiate between a 404 (presumed to be transient) and a 410 (permanently gone). In the latter case, the app automatically disables the feed in question.
The bottom line is this - you shouldn't mindlessly resume exceptions. It's as sloppy as swallowing MNU errors, and gets you into states that are really, really hard to diagnose.
The legal blowback over Sony's DRM escapade continues: California was already suing, and now Texas and the EFF have joined in. This is going to end up being a very, very expensive mistake for Sony - and a huge distraction that they can ill afford.
Something for the puzzlewits at the RIAA to consider, if they have enough sense to do so.
Avi has some thoughts about SSE from the versioning/synching standpoint:
If you look at SSE as a versioning system, there’s one somewhat glaring omission, which is that it doesn’t seem to handle the repeated merge problem that plagues CVS. In an SSE context, that would happen when, for whatever reason, you try to re-sync with the same set of concurrent changes for a second time (possibly because you’re syncing with a third party who got them from the same place you did originally). In the SSE spec as it stands, these would get marked as conflicting a second time (and potentially a third, and a fourth…), even though the user presumably already resolved that same conflict when they first saw the changes.
It's a good (and constructive) critique - you should read the whole thing if XML formats are of interest to you. My concerns are more pedestrian - in looking at the spec, I see a two duplications between SSE elements and core RSS elements that concern me:
Overall, it looks ok. Those two duplicates are a bit worrisome though.
With the launch of the XBox 360, Microsoft gets a leg up on Sony - a year's lead time to woo game developers and customers. Meanwhile, Sony is still trying to figure out what hurts, and why.
I guess it's cool that you can download the entire Wikipedia in XML, but wow - that's going to be one huge set of XML docs :)
Hypothetical Labs has an interesting take on what you should learn and why. I agree with the general principle being espoused, but I think he misses the static/dynamic divide. In any case, it's an interesting read.
Cary Sherman is a complete moron:
“The problem with the SonyBMG situation is that the technology they used contained a security vulnerability of which they were unaware. They have apologized for their mistake, ceased manufacture of CDs with that technology,and pulled CDs with that technology from store shelves. Seems very responsible to me. How many times that software applications created the same problem? Lots. I wonder whether they’ve taken as aggressive steps as SonyBMG has when those vulnerabilities were discovered, or did they just post a patch on the Internet?”
I can think of a lot of words to describe the way Sony acted in this case. Sadly, "responsible" isn't one of them. This statement from them kind of says it all:
Sony BMG’s Global Digital Business President Thomas Hesse: “Most people, I think, don’t even know what a rootkit is, so why should they care about it?”
Yes, they stepped away from that. After getting slapped repeatedly.
Paul Graham has a lengthy article on Web 2.0 up; I liked the article, and it's well worth reading in its entirety. I wanted to pick out a few segments that really resonated with me. First, on "Democracy" and the web:
The second big element of Web 2.0 is democracy. We now have several examples to prove that amateurs can surpass professionals, when they have the right kind of system to channel their efforts. Wikipedia may be the most famous. Experts have given Wikipedia middling reviews, but they miss the critical point: it's good enough. And it's free, which means people actually read it. On the web, articles you have to pay for might as well not exist. Even if you were willing to pay to read them yourself, you can't link to them. They're not part of the conversation.
I've said that about WikiPedia before, and it's true about a lot of things on the web. Graham makes an even better point about content that lives behind a pay wall on the web:
On the web, articles you have to pay for might as well not exist. Even if you were willing to pay to read them yourself, you can't link to them. They're not part of the conversation.
Which is what's happened to the New York Times since they created "TimesSelect". No one links to them (for that matter, few people link to Salon, either). The ironic thing about the approach taken by the Times is that they've decided that you should pay for the commodity material - opinions (whether it's politics, sports, food, theater, whatever). I don't know whether the Times has noticed, but the web is awash in opinion content. The kicker is - their columnists just aren't good enough to warrant payment. It's not just them; almost no one is. Graham nails this in his piece:
My experience of writing for magazines suggests an explanation. Editors. They control the topics you can write about, and they can generally rewrite whatever you produce. The result is to damp extremes. Editing yields 95th percentile writing-- 95% of articles are improved by it, but 5% are dragged down. 5% of the time you get "throngs of geeks."
On the web, people can publish whatever they want. Nearly all of it falls short of the editor-damped writing in print publications. But the pool of writers is very, very large. If it's large enough, the lack of damping means the best writing online should surpass the best in print. [3] And now that the web has evolved mechanisms for selecting good stuff, the web wins net. Selection beats damping, for the same reason market economies beat centrally planned ones.
That's the problem that sites like the Times and Salon are raging against - there's simply too much "good enough" (not to mention the occasional really good) stuff out there. Why pay for opinion pieces? The funny thing is, The Times has something of value that the mass of the web can't do - actual news reporting. Anyone can do analysis and opinion mongering (not necessarily well, but you get my point) - but the Times is one of the few organizations with real global reach. They have (either directly or by agreement) people "on the ground" nearly everywhere - if an event (like the east asian earthquake, for instance) takes place, they can get news out faster than nearly anyone else. Meaning, that content actually has value. I don't know that they can charge for it, but they should certainly be able to command premium ad rates for it.
I'm doing the next Dev Build for BottomFeeder now - I'll have it uploaded by this afternoon. I've made some modifications to the network error handling - the library we use was catching too many errors and trying to resume (which could cause problems). There are a few other small changes here and there, and an update to the browsing code from SwS.
The whole DRM picture for CD's and DVD's just gets sillier and sillier. Have a look here - if you want to defeat DRM, all you really need is some tape:
Applying a piece of opaque tape to the outer edge of the disk renders the data track of the CD unreadable. A computer trying to play the CD will then skip to the music without accessing the bundled DRM technology.
The problem is not easily solved, either - there are tons of "legacy" players out there, and I can't see the industry being stupid enough to create a "day zero", after which no new CDs or DVDs will work on the older players. Not to mention the difficulty of getting the Linux community to care. Not to mention the fact that - in an international market - it just isn't that hard to get hardware from somewhere else (good luck convincing overseas vendors to avoid a money making opportunity).
Then there's the simpler issue - any noise in that direction would simply accelerate the move to downloadable content. Meanwhile, Gartner is proving that software isn't the only sector that they have a weak grasp on - check this bit of mutton-headedness out:
Gartner predicted that the music industry will start to lobby for legislation that requires computer makers to include DRM technology on their systems.
But the analyst advised that, instead of limiting what users can do with music they have already purchased, record labels should focus on tracking this use.
This would enable a "play-based" model where users are charged a fee based on how they consume music.
Yeah, "phone home" setups go down so well with people. Follow their advice on this one, and you'll have the kind of PR nightmare that Sony is dealing with.
Phil Ringnalda gets on these guys - they say that they'll rate your site for popularity, design, and usability. Meanwhile, when you visit with Firefox, you'll see this:

As if they would know :)
Learning Seaside points to a downloadable video of Avi and Andrew Catton's talk to the Vancouver Lisp group - they were demonstrating Dabble (details on that here) - Dabble is a database piece for Seaside. Check it out.
Update: More here.
I'm paging through this week's SDTimes, and I come across the opinion pages. Here's an article on software development by Djenana Campara (CTO of a company that sells Q/A tools), talking about how software development is a discipline, not an art.
Ok, I'm interested in that - so I read the article - is she going to advocate a CMMI type approach, an agile type approach... I don't know. After I finished, I still didn't know. I have no idea what she's advocating. She repeated the term "discipline based approach" over and over again, as if that should mean something to me. Sorry, it doesn't. It could mean anything, from a paper driven "fill in the form before proceeding" style to an XP/Agile lightweight set of processes. All by itself though, the term is meaningless. Here's an example:
But to be successful, companies must get their developers to buy into the discipline approach. Coders need to understand how a discipline-based development approach will improve their work life by helping them write code that adheres to corporate guidelines; reducing the monotony of testing for errors, tracking down defects and implementing fixes; and improving their coding quality and productivity.
In addition, by enabling their managers to better gauge the status of a project and the impact of requirement changes, developers will have a better understanding of how realistic project deadlines are.
The payoff? One large development corporation reports that embracing a discipline-based approach has cut the time its developers need to understand an application’s context in half. Another company says that a code analysis that typically required one week now takes only one hour.
It's buzzword bingo, but with a kicker - she won't take the time to explain what the buzzwords even mean. I'd love to know what she's advocating here, but it's impossible to tell.
I just got an email from a Smalltalker in Germany - Deutsche Bahn got some publicity for their rail scheduling application, which just happens to be written in Cincom Smalltalk. The video is in German - here's the info:
Last week BahnTV, the company television of Deutsche Bahn (German Railways), featured a 6 minute video on RUT-K, the VisualWorks based software produced by DB Systems which is used to build all the train path schedules in Germany. The video (in german) is online here.
Nifty!
Multi-threaded software as a scalability answer is apparently harder than most people think. Consider:
With both SQL Server and Citrix Terminal Server installations, HT-enabled motherboards show markedly degraded performance under heavy load. Disabling HT restores expected levels, according to reports from within the IT industry.
I've recommended multiple processes vs. multiple threads for years, but most people figured I said that because VisualWorks doesn't map Smalltalk threads to platform threads. It's not just me though:
"It's ironic," said Ibbotson. "Intel had sold hyperthreading as something that gave performance gains to heavily threaded software. SQL Server is very thread-intensive, but it suffers. In fact, I've never seen performance improvement on server software with hyperthreading enabled. We recommend customers disable it when running Citrix and our software on the same server"
Of course, this doesn't help matters much either:
Earlier this year, Intel hyperthreading was revealed to have a security flaw where threads could find information from each other through the shared cache despite having no access to each other's memory space.
I'd be more interested in knowing whether that flaw can be accidentally exploited to cause problems in an application.
BTW, this brings us around to the EFF, which now claims to be supporting the interests of bloggers. Well they miss this one very basic point. We're inevitably headed for a faceoff with Google, just like the one with the book publishing industry. I think it's pretty clear that the EFF will be defending Google, not us.
If that made a smidgen more sense, I'd call it incoherent. Never mind Google and the book publishing industry (although, I tend to think that's part of the same disintermediation that's happening with music downloads) - what exactly can Google do to bloggers? I suppose they could remove a blog from their search index for reasons A, B, and C but - there's no legal problem with them doing that.
Here in the US, a lot of people get confused about the first amendment. It guarantees that the government will not censor you. It says nothing about your friends, your associates, your employer (etc). Unless you get to the level of defamation or libel (or physical threats), any non-governmental entity can try to censor you as much as it likes.
Go ahead, start wandering around the halls at work yelling "The CEO is a (insert insult here)". See how much free speech you have :)
Update: Time for the tinfoil hat.
Chris Pirillo spots a lawsuit settlement - apparently, there was a class action suit against Sony making claims about the PS2:
Lawsuits were filed regarding the PlayStation®2 computer entertainment system models 30001, 30001R, 35001, 39001, 39010, 50001, and 50010 (“PS2”). The plaintiffs in those cases claim that certain inappropriate “Disc Read Error” messages are displayed. They also claim that some PS2s fail to play and that some of them cause damage to CDs or DVDs during playback. The companies that were sued, including Sony Computer Entertainment America Inc. (“SCEA”), say they did not do anything wrong and there is nothing wrong with the PS2.
With a settlement, you have no idea if there was actually a problem - companies settle suits all the time, because the cost of litigation exceeds the cost of paying off the lawyers (did someone say "legal extortion"?).
However, given Sony's recent troubles over the rootkit DRM, this is just more bad news that makes you go "hmmmm..." about purchasing Sony stuff.
Morgan McLintic's post on the artwork in his building reminds me of my general theory about art:
If it could be created by accident by a toddler, it's not art. And that applies to abstract shapes in metal/plastic/what have you - if a toddler could create a small version of it in play-do, it's not art either.
Michael found the problem in BottomFeeder that bunched up some of the marked up text (italics, bold, links) - it was an issue with the way we were using libtidy (which is why people on platforms without libtidy weren't seeing it). The latest code is part of the dev stream updates, and will hit the next dev build - which I'll probably do tomorrow
Well, I won two quick games of PR this morning, which got me into the semi-finals. That was a nail biter. I voluntarily took first position (I wanted a quarry) - and lost 48-47 - just missing the finals. Victoria came up in the late afternoon and tried a game, but didn't make the cut either. We had a good time though - she tried a game of Railroad Tycoon (board game based on the old PC game - go figure), and I got in a round of Carcasonne and Lost Valley.
A decent day, even if we were out later than we should have been. Off to bed!
I think Cisco is trying to get ahead of the curve - they just bought Scientific Atlanta (big provider of cable set top boxes - Comcast uses them, for instance). The follows their 2003 purchase of Linksys, and makes them a pretty big player in the home network space.
Three lackluster Puerto Rico games didn't cut it last night. I did win a round of Settlers, but - since I didn't get there in time for the first round, I didn't have enough points for today's final. Back up to the convention to see if my luck turns.
Time for this week's log report. BottomFeeder downloads stayed strong at 355 per day; here's the platform distribution:
| Platform | BottomFeeder Downloads |
| Windows | 560 |
| HPUX | 465 |
| Mac 8/9 | 366 |
| Sources | 284 |
| Linux x86 | 176 |
| Mac X | 169 |
| Update | 168 |
| CE ARM | 95 |
| Linux Sparc | 57 |
| Solaris | 47 |
| Windows98/ME | 42 |
| SGI | 19 |
| AIX | 16 |
| Linux PPC | 12 |
| ADUX | 5 |
| Source Script | 4 |
| CE x86 | 1 |
Not too shabby - and 4.1 should be out soon. Next: The HTML page accesses:
| Tool | Percentage of Accesses |
| Mozilla | 40% |
| Internet Explorer | 35.9% |
| Other | 16.9% |
| MSN Bot | 4% |
| Google Bot | 3.2% |
Curious - Mozilla rose back up again. Is that a shift in readers, or a shift in what readers are using? Finally, the RSS Accesses:
| Tool | Percentage of Accesses |
| Mozilla | 34.4% |
| Other | 13.1% |
| Net News Wire | 10% |
| BottomFeeder | 6.7% |
| Safari RSS | 4.3% |
| News Fire | 3.7% |
| Magpie | 2.6% |
| Planet Smalltalk | 2.5% |
| RSSReader | 2.5% |
| NewsGator | 2.2% |
| Internet Explorer | 2.1% |
| BlogSearch | 1.9% |
| SharpReader | 1.8% |
| Liferea | 1.7% |
| Feed Demon | 1.4% |
| BlogLines | 1.3% |
| RSS Bandit | 1.3% |
| Feed Reader | 1.2% |
| JetBrains | 1.2% |
| Java | 1.1% |
| Google Bot | 1% |
| Opera | 1% |
| Python | 1% |
Looks like the relative weight of Mac readers is up on the RSS side. Hmmm
I'm off to Timonium, barely leaving myself enough time to get there for the Puerto Rico tournament. With any luck, I'll have happier news to report than I did last time I did this.
When we got our new Comcast HD/DVR box, we opted to keep the old digital cable box (yes, we like tithing more money to our cable provider :/). The main reason - we wanted the Replay TV to continue recording the (large volume of) non-HD content that comes through the old digital box, while having the (really lame) Comcast DVR record the HD stuff.
That was a fine plan, except that the IR blaster cable broke - that's the cable you hook into the Replay so that IR signals sent to it can be routed through to the cable box. Turns out, a replacement was a mere $6.95 plus shipping away. It just arrived, and it works great! Back to too much TV to ever be able to watch nirvana :)
Joel hits paydirt on the rationale for variable pricing of music - it allows the industry to maintain control:
Theoretically, when a super-duper-blockbuster comes out, like, say, Lord of the Rings, there's so much demand that the movie theaters just end up turning people away. Econ 101 says that they should raise the price on these ultra-popular movies. As long as the movie is sold out, why not jack up the price and make more money?
And why don't they do that? Joel explains that the price sends a signal - if a movie came out with a lower price on first run, it's a massive, public "Thumbs down" on the movie - the likely result would be fewer viewers, not more based on lower price. How does that relate to music?
Now, the reason the music recording industry wants different prices has nothing to do with making a premium on the best songs. What they really want is a system they can manipulate to send signals about what songs are worth, and thus what songs you should buy. I assure you that when really bad songs come out, as long as they're new and the recording industry wants to promote those songs, they'll charge the full $2.49 or whatever it is to send a fake signal that the songs are better than they really are. It's the same reason we've had to put up with crappy radio for the last few decades: the music industry promotes what they want to promote, whether it's good or bad, and the main reason they want to promote something is because that's a bargaining chip they can use in their negotiations with artists.
The upshot - they can hold a gun to the head of artists, threatening them with the lower price. Instead of what happens at the box office - and on the iTunes interface - the industry can continue to promote the artists they want that way, and ditch the ones they don't want. The iTunes system gives end customers much more power over the system - and enables the artists to more reliably gauge their actual worth. As Joel says, that's the last thing the industry wants.
Unless something comes up, I'm going to release 4.1 on Monday. The development build on the site is what I'm running, and it looks pretty good - I've not had trouble since I've been using it.
The New York City STUG is meeting December 7th - this is from Charles:
Hi members, I'm a bit late with sending this off and since I'm taking off for the weekend I thought it best to at least provide a heads up on our next presentation. Here it is:
Date: Wed., December 7th, 2005
Time: 7pm , open house at 6:30pm
Place: same as always, check out the wiki for directions
Topic: VisualWorks and Algorithm design
Speaker: David SiegalDavid has been working on some algorithms involving measuring distances between strings and which can also be applied to issues such as DNA analysis. The implementations are in VisualWorks Smalltalk.
I'll update our wiki on Monday with David's abstract and bio. Here is the link for the wiki.
In the MS world, they have you creating a list of tests you think you'll need, then using VisualStudio to generate your code, then using VisualStudio to generate tests. Then you compare the tests to the list, and add any that are missing.
Michael Feathers has a few issues with that:
The key advantage that TDD gives you is feedback. You write a failing test case, make it pass, and then you formulate the next test case. The wonderful thing is that when you get to that next test case, you have the feedback from getting the first one to pass to draw upon. Often that feedback will lead you to formulate the next test case in a different way. It could even lead you to produce a different interface for the class you were writing.
...
The style of TDD described in the guidelines would have us jump ahead and write five, ten, maybe twenty test cases before getting the first one to pass. You can do that, but it's like putting on a set of blinders. When you don't have to formulate the next test case right after passing the last one, there isn't much chance to think about improvements. Worse, there is a disincentive to thinking about them: if you find any, you have to delete all of the speculation you've hardcoded in the tests and interfaces you created in advance.
What it sounds like to me is this: The VS team tried to warp TDD so that it hit the strengths (as they see them) of their tools. I wouldn't call what they came up with TDD though.
Rod Serling, through the magic of old footage and computer work, will introduce the Nov 21 episode of "Medium". They are having an actor provide his voice though. I think we'll see the ability to have the original actor - via sampling of audio of them speaking - provide their own voice in the not too distant future.
Makes you wonder whether we'll eventually see "new" Ginger Rogers/Fred Astaire dance scenes...
Smalltalk work, looks like it's in Miami - help upgrade an application from VW 2.5.1 to VW 7.
Scoble and Shel Israel make a good point about blogging - you can't force it:
He and I met the other day and he told me that he is hearing lots of companies thinking about integrating blogging into their marketing plans. You know, treating it as yet another marketing “chore” that teams need to do to be able to ship. He thought that idea is lame and will end in failure for those who approach blogs that way. I agree.
Blogging is writing, when you get right down to it, and you can't really force that. When your organization produces white papers, you probably have specific people who produce them. Sure, they get feedback from a variety of people in the organization, but those people don't each write a paragraph.
The same thing applies here. If you want effective blogging, it needs to come out as a natural voice. Forcing it on a team as part of their day to day job isn't going to result in a natural voice, and - if they are irritated by the mandate - then that irritation will shine through.
Bruce Schneier has a good summary of the mess - and he looks places that a lot of us missed. He points out that the anti-virus manufacturers were (and are) in the tank on this one - even MS, hailed for announcing that their tool would remove the malware, was very, very late to the party:
The story to pay attention to here is the collusion between big media companies who try to control what we do on our computers and computer-security companies who are supposed to be protecting us.
Initial estimates are that more than half a million computers worldwide are infected with this Sony rootkit. Those are amazing infection numbers, making this one of the most serious internet epidemics of all time -- on a par with worms like Blaster, Slammer, Code Red and Nimda.
What do you think of your antivirus company, the one that didn't notice Sony's rootkit as it infected half a million computers? And this isn't one of those lightning-fast internet worms; this one has been spreading since mid-2004. Because it spread through infected CDs, not through internet connections, they didn't notice? This is exactly the kind of thing we're paying those companies to detect -- especially because the rootkit was phoning home.
But much worse than not detecting it before Russinovich's discovery was the deafening silence that followed. When a new piece of malware is found, security companies fall over themselves to clean our computers and inoculate our networks. Not in this case.
That is an amazing thing, and Bruce is the first (that I've seen) to bring it up. Read his whole post - some of the companies have really, really lame excuses. It does end up sounding a lot like collusion.
Tomorrow evening and Saturday I'll be north of Baltimore at EuroQuest 2005, a board gaming tournament. I'll be getting there in the late afternoon, in time for the Puerto Rico tournament. I sure hope I do better than last time, when I completely washed out in round one. Should be fun!
InformationWeek has a roundup on the storm that engulfed Sony over their DRM rootkit over the last few weeks. I've been writing on this one extensively - InformationWeek provides a nice summary of the event. The upshot for companies is here:
"It seems crystal clear that but for the citizen journalists, Sony never would have done anything about this," says Fred von Lohmann, senior intellectual property attorney for the Electronic Frontier Foundation, a cyber liberties advocacy group that has been vocal in its condemnation of Sony and may eventually file a a lawsuit against Sony, in addition to three that have already been filed. "It's plain to me that it was Sony's intent to brush the story under the rug and forget about it."
Alan Scott, chief marketing office at business information service Factiva, said, "I think that we're in an entirely new world from a marketing perspective. The rules of the game have changed dramatically. The old way of doing things by ignoring issues, or with giving the canned PR spin response within the blogosphere, it just doesn't work."
Thomas Hesse, Sony BMG's Global Digital Business President, attempted to do just that by dismissing the online protests. "Most people, I think, don't even know what a rootkit is, so why should they care about it?" he said in a November 4 interview on National Public Radio's Morning Edition. He added, "The software is designed to protect our CDs from unauthorized copying and ripping."
That last paragraph might well have worked a decade ago. All Hesse would have had to do is convince a few journalists from Time, Newsweek (et. al.) that their intentions were good, and it would have been the end of the story. It's not as if most business reporters understand technology - they would have played it as Sony vs. a bunch of black hat hackers (various bad examples like the Morris Worm would have come up), and poof - end of story.
Now, there are plenty of knowledgeable people - like Mark Russinovich - have a platform on which to explain the problem. Others can then echo the original report, linking back to it as a source of authority. Over time, the MSM picks it up, and the story catches fire - leaving the original (third paragraph, above) response from the company in question looking stupid.
Sony learned this the hard way - they spent a couple of weeks taking damage, and - in the process - convincing a lot of people like me that Sony products just aren't trustworthy. A rapid response - would have made the whole thing go away. There are a lot of PR/marketing people out there who simply haven't adjusted to the new reality. If you do something lame, you can't just spin and watch the problem go away as the media gets distracted by something shinier. I rather suspect that no one in a position of influence at Sony was watching the rising BlogStorm, so management just chugged along, confident in their outdated view of how messaging works.
There's a lesson in that for other companies - but I'm willing to predict that an awful lot of them haven't paid any attention to this mess, and will make the same mistake when it happens to them.
Here's another breathless story on the $100 (actually, looks like it will be $200) notebook. There's some cool things about this, including the fact that it can be powered by a hand crank. However, there are a number of simple problems too -
This is a pie in the sky solution, IMHO. It's like deciding to hand out cheap cars, and only later noticing that there are no gas stations for the recipients to use. I understand that the people behind this are well intentioned - but laptops are only useful when there's a hell of a lot of other infrastructure supporting them. The well intentioned folks behind this plan need to aim a lot lower.
PR Opinions is really, really unhappy that the general public has the ability to pierce the PR veil and make their opinions known:
I, like many others, have grown tired and weary of the self-satisfied, holier than thou, "A-list bloggers" who believe they hold disproportionate sway on the matters of the day. This isn't everyone of course but the sooner we call time on this endless circle of self-gratification the better.
Yes, it was much better back in the day when PR pros held all that power, wasn't it? A phrase comes to mind:
"If you can't stand the heat, then get out of the kitchen"
There are a lot of PR folks out there who can't tell that there's no return to "the good old days", when they were the only ones you could hear. Bah.
There might yet be a chance that Civ 4 will actually work on my machine. Apparently, there have been a large number of complaints, and a patch is coming. I'll report the results when I see them
I took a look at the game console business yesterday - and then I ran across this "future history" piece. It's a decent piece of analysis, including a set of caveats at the end, where the author (Aaron Stanton) notes various things that could muck with his predictions.
I found it to be well written, and very insightful. We'll see how it plays out - but I think Microsoft is the big winner here. Nintendo is profitable in the console space, and I agree with Stanton that they'll stay that way. Between Sony's DRM nightmare, the PR screw up surrounding it, and their continuing business problems, I think they drop to number three.
Learning Seaside points out that there's a Smalltalk party at the University of Berne tomorrow. Get all the details here.
This is the kind of thing you would rather see in the pre-demo tests:
In the programme, Mercedes drives 3 S-classes behind each other. The first car hits the brakes, and the two following cars brake down automatically, to avoid a crash. In theory. In practice, the first car braked, and the two others continued right into the back of each other, resulting in a 3-car pile-up at the test site.
According to a German news site, the blushing Mercedes security engineers soon discovered the problem: The test had been done in a hall which was made of steel. This confuses the radar, and the system doesn't work properly, causing more than £150,000 worth of cars to crumple into each other.
The system "works perfectly in all other circumstances", according to Mercedes. For now, though, it may be worth keeping your foot near the brake pedal.
Reminds me of the "Windows Live" demo. If you plan to give a demo with cameras rolling, it's always a good idea to try a dry run in the same place first.