marketing

Tornados

December 19, 2005 7:52:22.617

Yes, this is Scoble talking about an MS product:

The other night Chris Pirillo recorded a podcast in his house with a bunch of geeks talking about Xbox 360. It’ll give you some sense of what we’re experiencing tonight. I can’t believe the quality. Sorry, Maryam, we’re going to buy an HD screen in 2006. I’ll go more into debt for one. It’s just so freaking cool.

But, the lines outside retail outlets with XBox 360 consoles aren't hype, anymore than the fascination with the Apple Nano is. I think Microsoft might well have a small tornado on their hands here.

 Share Tweet This

news

Why New Orleans will be smaller

December 19, 2005 8:08:31.072

Read this from Philip Greenspun and you'll understand:

We did three sightseeing/photo flights over New Orleans.  The first was with Vincent, who oriented me to the area.  The second was with Ernie, who pointed out some additional sights and breaches in levees.  For the third flight, we removed the left door of the R22 and left it with the FBO.  Tony flew from the right seat while I took photos out the open left side of the helicopter.  Flying above the city, you realize what a tough challenge rebuilding is going to be.  Some of the high ground neighborhoods are more or less back to normal, with the exception of blue tarps covering damaged roofs.  The low-ground neighborhoods, however, whether formerly rich or poor, are deserted.  It looks as though a 1970s-style neutron bomb was detonated leaving the buildings and cars, but killing all the people.  No homeowner in one of those neighborhoods is going to be able to rebuild without taking on a tremendous risk.  What if the other people in his neighborhood decide not to rebuild?  He will have spent $200,000+ on a new house in a dangerous abandoned area.

There are two levels of risk involved here. One is the risk the putative homeowner is willing to put up with, based on the level of abandonment. The other is even harder to get around - the level of risk a mortgage lender is willing to deal with in order to fund rebuilding in what's now recognized as flood plain. Sure, it's always been flood plain - but potential lenders have had that fact put in front of them now. Between those two things, I expect that large parts of New Orleans will simply never get rebuilt, regardless of what kinds of aid packages go into the project.

 Share Tweet This

general

Which side do they drive on?

December 19, 2005 8:23:05.892

If you ever wondered about where driving habits (as in, which side of the road) come from, here's a background page. Interesting how much influence Napolean had over the process in Europe, especially in the case of Austria.

 Share Tweet This

product management

Thinking in Public

December 19, 2005 9:08:29.115

Another thing that I should mention in the context of this post - and the comment trail after it. On this blog, I do an awful lot of "thinking in public" - I tend to post my first impressions, not after long cogitation on an idea. Which means, my initial take on an idea does not always represent the sum total of my thinking on a subject - and a mostly dismissive reaction doesn't mean that I'm not discussing the idea with our engineers.

Having said that, bear in mind that our engineering team is engaged in a pretty darn big project - we are building a system that is as large and comprehensive as J2EE or .NET, with a fraction of the engineers that Sun and Microsoft have. Sure, Smalltalk is marvelously productive, which is why we are able to stay in the game - but we do have resource limits, and - as such - a large part of what I do is prioritization.

 Share Tweet This

cst

Small Tool Survey

December 19, 2005 9:40:27.795

I've tossed out a new Survey on our website - it's short, with a few questions about your tool desires. Let us know what you think, and send me email if you have comments that go beyond the survey.

 Share Tweet This

development

Design is language specific

December 19, 2005 10:39:34.363

Bjarne Stroustrup on language usage:

One reason often quoted for learning Smalltalk is that it is ``pure'' and thus force people to think and program ``object oriented.'' I will not go into the discussion about ``purity'' beyond mentioning that I think that a general purpose programming language ought to and can support more than one programming style (``paradigm'').
The point here is that styles that are appropriate and well supported in Smalltalk are not necessarily appropriate for C++. In particular, a slavish following of Smalltalk style in C++ leads to inefficient, ugly, and hard to maintain C++ programs. The reason is that good C++ requires design that takes advantage of C++'s static type system rather than fights it. Smalltalk support a dynamic type system (only) and that view translated into C++ leads to extensive unsafe and ugly casting.

The reverse is true as well, of course. Once you get past a high level view of your system, design will get to be language specific - you'll approach the same task differently in C++, Smalltalk, Java (et. al.). Which language to use depends on a best fit analysis - clearly, I'm of the opinion that Smalltalk is a better fit for most application level tasks. But the larger point is what Bjarne said.

 Share Tweet This

media

Live Editing of Controversial Content

December 19, 2005 15:53:05.661

Rogers' exploration of the editing practices of Jim Wales makes the same point I made awhile back - topical content is going to oscillate for a long while - especially when the content is covering something on which people disagree. Biography pieces on living people definitely fall into that bucket :)

 Share Tweet This

movies

Someone get Ebert a cluestick

December 19, 2005 16:23:11.346

Ebert on movies in 2005:

How in the world can anyone think it was a bad year for the movies when so many were wonderful, a few were great, a handful were inspiring, and there were scenes so risky you feared the tightrope might break? If none of the year's 10 best had been made, I could name another 10 and no one would wonder at the choices. There were a lot of movies to admire in 2005.

News on box office attendance numbers in 2005:

A box-office jolt from the magic kingdoms of Kong, Narnia and Hogwarts will close Hollywood's year with some holiday cheer, though not enough to offset the biggest decline in movie attendance in 20 years.

What Ebert isn't seeing is that lots of the "critically acclaimed" movies are movies that don't get much box office. I think the movie industry - and Ebert - might be able to learn something from a thing Sam Goldwyn supposedly said: "If I want to send a message, I call Western Union".

And please, enough with "risky" movies and "edgy" scenes. More acting, more story lines, less commentary. And whatever you do, keep George Lucas away from the script.

 Share Tweet This

humor

Which Action Hero?

December 19, 2005 18:35:58.745

Via Rob Fahrni - which hero are you? Looks like I'm:

You scored as Captain Jack Sparrow . Roguish,quick-witted, and incredibly lucky, Jack Sparrow is a pirate who sometimes ends up being a hero, against his better judgement. Captain Jack looks out for #1, but he can be counted on (usually) to do the right thing. He has an incredibly persuasive tongue, a mind that borders on genius or insanity, and an incredible talent for getting into trouble and getting out of it. Maybe its brains, maybe its genius, or maybe its just plain luck. Or maybe a mixture of all three.



Captain Jack Sparrow

67%

The Amazing Spider-Man

63%

Neo, the "One"

58%

William Wallace

58%

Maximus

54%

Batman, the Dark Knight

54%

Lara Croft

50%

James Bond, Agent 007

50%

Indiana Jones

46%

The Terminator

25%

El Zorro

25%


Which Action Hero Would You Be? v. 2.0

created with QuizFarm.com

 Share Tweet This

movies

Emergency Call? No Dice

December 19, 2005 22:47:38.587

Theater owners are solving the wrong problem - they want to jam cell phones:

With flat panel prices in free-fall and sizes approaching those anaemic megaplex screens, it’s no wonder the National Association of Theater Owners is in a panic about the decline in consumers willing to slap down a near-sawbuck to watch a flick. What to do? Well, it looks like cellphone jamming is the new baby jeebus in an industry attempt to lure your azz back into their buttery seats. See, NATO (er, yeah) has announced plans to petition the FCC for permission to jam cell phone signals within theatres to “block rude behaviour”

Would actually making the audience aware of a rule (silent/vibrate/off) - and enforcing it wit expulsion if need be - be just too hard? I don't typically have to worry about emergency calls during a movie, but some people (doctors, for instance) might not have that luxury.

Maybe theater owners should ask Hollywood to create a better product instead.

 Share Tweet This

humor

Now that's a ship name

December 19, 2005 23:04:49.681

For all of you who still enjoy 7th grade humor, I give you... the ship.

 Share Tweet This

development

The static/dynamic divide

December 20, 2005 8:06:32.082

Scoble asks a developer:

He says he’s walking away from Microsoft’s Web development tools. He’s going to Ruby on Rails and won’t be back until we get the magic back. Well, that’s what we’re working hard on and why we’re doing the Mix06 event.
One question, though. Have you checked out the latest ASP.NET and Visual Studio 2005? If so, what about it turns you to Rails?

To get that, he's going to have to wade into the dynamic language/static language debate :)

 Share Tweet This

itNews

The opposite of QOS

December 20, 2005 8:49:08.772

Here's a shady action on the part of an ISP:

Shaw cable has, this year, begun to roll out traffic-shaping technology on their network using technology from Ellacoya, and reportedy by this Wall Street Journal article. It seems they started using this service in early 2005 in the greater Vancouver area, probably because Shaw's network is most overloaded in that market. There have been reports that they are rolling it out to Edmonton, Saskatoon, and Winnipeg. Check out the reports, there's a lot of talk.

Ellacoya's technology works by "deep packet inspection" which is a type of firewall that's super-intelligent. That is, it doesn't just know about IP and TCP or UDP ports, it can also look inside the packet and see if it's FTP, HTTP, Bittorrent, kazaa, and etc. Therefore, it's not affcted by port numbers. This technology, while impressive, is not perfect. It can mis-identify packets, and requires constant upgrades to keep track of all potential types of data traversing the internet, of which there are many, and the possibility to create a new one today exists.

The issue here isn't that the ISP is doing this; it's that they are doing it quietly, leaving customers to figure out why their service is affected. The downside is, people tend to have fewer options with local ISP's than with other vendors - leaving them fewer options to effectively punish the provider.

A caveat - there are reports that this is exaggerated, but it's still worth watching.

 Share Tweet This

blog

The joys of weblog apis

December 20, 2005 10:12:12.893

So Troy is testing out the mt api support that I built into the Silt server. For an idea as to what kind of fun this is, have a look at the results for a Google search on "mt API". Good luck finding anything useful - I had to dig into the Google cache for SixApart docs.

Anyway, in response to getCategoryList() I was sending back an array of structs, as requested - but I was letting the code fall through to the same API in metaweblog API. The difference is that the meta API sends back a number of key/value pairs in the dictionary, while MT only expects two - category id and name (and a third, isPrimary, for specific posts). Silly me - I thought extra dictionary entries would be ignored.

Not in the tool that Troy was testing though. So, I've got that fixed and uploading to the production server. Now to find out where my next misconception comes from.

 Share Tweet This

general

Working at Home

December 20, 2005 10:41:30.479

Generally, I love working out of my home office - it would take a lot to get me back to the commuting/office style of things. However, it's not all peaches and cream - I'm constantly reminded of this Dilbert Strip, which I taped to my door - all the frames are the same, and Dilbert is talking to Ratbert and Dogbert:

CAPTION: What the Work-At-Home Person Says

DILBERT: Don't disturb me unless the house is on fire.





PANEL TWO



CAPTION: What the Rest of the Family Hears

DILBERT: I am your servant. My specialty is killing spiders.





PANEL THREE



CAPTION: What the spiders hear

DILBERT: The house is full of wounded flies.

I thought of that when I read this WSJ piece on the travails of the work at home person. I don't have trouble with my company - Cincom is actually pretty good about that, partly because we have so many work at home staffers. However, it took me a few years to convince my wife and daughter that I was, in fact, working in my office. Which is why that Dilbert strip ended up on the door :)

 Share Tweet This

development

He doesn't know what he doesn't know

December 20, 2005 11:01:27.056

Here's James Gosling explaining why Java isn't a "scripting" language"

The biggest was concerns about performance and the inevitability of scale. I can't remember how often I've had experiences where someone has proudly shown me some system they've put together using the scripting-language-du-jour: things like an Adobe Illustrator clone written entirely in PostScript; a satellite groundstation diagnostic system written as TECO macros; a BASIC compiler written as Emacs macros; fourier transform algorithms in PostScript... This list is endless. They always ended with "this is so cool, but I'd like it to be as fast as {C,Assembler,whatever}". People get into scripting to quickly build small quick things, but they often grow far beyond where the initial concept started.

Another was about testing, reliability and maintainability. One of the common properties of scripting languages is brevity. This tends to lead to omitting declarations, weak typing and ignoring errors. Generally a great thing if you're quickly putting something together; not so great if you want checks and balances that crosscheck correctness.

It's telling that he lumps all scripting/dynamic languages together as weakly typed (casting in Java, anyone?). Makes me wonder if he's even looked at Smalltalk or Ruby - since both are strongly, but dynamically, typed. In Smalltalk, you can't get a type error - you'll get a well understood exception.

Then there's his assumption of slowness - not all dynamic languages are interpreted. Lisp, for instance, has implementations with type inferencing and all the speed of optimized C. Most Smalltalk implementations use a JIT, and are plenty fast (although, doing arithmetic tests is not an area Smalltalk shines at). Ruby is interpreted, but there's at least one project - YARV - out to create a JIT.

The fun part is, Gosling caught a lot of crap for that post, and mostly backed off, retreating into the "chains are good for you" position:

One of the slogans that was brought up in the commentary to my previous blog entry was "freedom vs. safety". Once upon a time I used to believe that: it has certainly been conventional wisdom for years. But a lot of the time, the truth is actually that safety is freedom (eg. a good safety harness and rope give you the freedom to climb a mountain).

When I'm writing a function and declare a parameter to be an Image, I am free to trust that it is an Image. I'm free to trust that no one's array access has smashed my data structure. Examples abound.

Ahh yes, argument by assertion. "Examples abound", so he needn't give any. I've made this point many times - the kind of error that type checking catches is extremely rare - it's come up a handful of times for me over the last 13 years of Smalltalk development. The kind of type checking that Java requires comes at a high cost - it catches errors that almost never come up, and adds in expensive rigidity (generics are simply the latest attempt by the Java guys to muck their way past the casting issue).

Which reminds me - casting is a lie to your compiler, and walks right past this vaunted type safety. So if the "safety"offered by Java style typing is so phenomenal, then why do you allow casting at all? Wouldn't you be even more safe and more free without it?

 Share Tweet This

development

Rigid vs. dynamic, from the trenches

December 20, 2005 18:55:48.417

If you don't trust my word on this debate, have a look at this piece, which goes through things at Amazon. Good read, and a lot of good points. Also way too long for me to hack out snippets and comment. Read the whole thing, and ponder.

 Share Tweet This

media

Un-Knowing

December 20, 2005 19:22:36.974

Dave apparently missed the memo on Wikipedia versus "real" encyclopedias. As I've said before, the main areas of contention are going to hit topical pages - biographies of living people and items on events where many of the protagonists are still alive.

I fail to see how any encyclopedia is going to do well in those areas - unless you play "my facts win, because I'm me".

 Share Tweet This

tv

Firefly: Just not popular enough

December 20, 2005 19:43:51.111

Firefly is at an end:

''In the end, it was what it was: a tough sell,'' says Whedon, adding that it appears the Firefly saga has reached its conclusion. He has no regrets -- and he's moving on.

Sad news for me - I loved that show, and liked the movie quite a bit. It's simple though; not enough people liked it.

 Share Tweet This

development

No change, no change!

December 21, 2005 8:07:11.553

Seems that Bruce Eckel is unhappy over all the attention that Ruby (specifically, Ruby on Rails) is getting - so he wrote up a counter to Bruce Tate's "Beyond Java". I don't think he's unfair to Tate's book, although I must admit that I have more sympathy for Tate's argument. In any case, Eckel recycles the "Humane Interface" discussion from awhile back, and - like most of the Java enthusiasts - misses the point:

Martin's argument is that Java's List interface requires you to say aList.get(aList.size -1) to get the last element, and this seemed silly to him. Which it is, if you have unified all sequence containers (that is, list containers) into a single type, as Ruby and Python do. Java, however, follows the C++ STL approach of providing different types based on the efficiency of various operations. The Java libraries do not unify to a single list type because of efficiency issues, so you have to decide if you are going to be fetching the last element from a list a lot, and if you are you use a LinkedList, which does have a getLast() method -- a fact which was completely left out of Martin's original discussion, and the ensuing firefight (other than some ignored comments).

What he misses is the pragmatic approach that Ruby and Smalltalk take. Convenience protocol is no bad thing, and - given decent tools (like Smalltalk has), lots of methods in a class aren't a problem. At least in Smalltalk, most of the convenience protocol landed in the Collection classes based on many, many years of usage - and Ruby was, to a large extent, modeled on Smalltalk. The big problem in a language like Java is that you can't just add a new method to an existing class - instead, you get an explosion of "helper" classes wrapping them. I suppose that's a pragmatic approach given Java's design, but I wouldn't call it an instance of good design.

Eckel approaches all that with the thought that developers should know up front that they'll need a given method, and then pick the right class. Umm, yeah - I always have full information when I get started. I guess in his world, he never runs into that "oh, crap" moment when you realize that some object is missing protocol that would make life simpler. Elliotte Harold, who weighed in on this extensively, never really got that point either.

Anyway, David Heinemeier Hansson (the Rails guy) had some thoughts on Eckel's response to Tate:

I'm losing track of the ill-conceived comparisons, but I do know what's astoundingly clear: Bruce Eckel doesn't like Ruby, he doesn't like the attention its getting, and he doesn't like people such as Bruce Tate fueling that attention. No beef, that's cool. But why not just say it like that?
You could even have presented yourself as the polar opposite to the so-called hyper-enthusiasts: A hyper-detractor! The label comes complete with a cape, an evil smirk, and long tirades about how the other side is no match for your master plan.

David does get a bit too snarky over Eckel's changed opinion on Python - it is possible to change your mind over time. Writing extensively on the web simply makes it possible for people to find your old opinions more easily and imply it's some kind of hypocrisy.

Hat Tip to Tim Bray.

 Share Tweet This

sports

Fitting the square peg in

December 21, 2005 9:02:59.631

The Yankees have a center fielder - Johnny Damon. Now, it'll be interesting to see how he looks with shorter hair and no beard :) Seriously though - he should make for a great leadoff hitter.

 Share Tweet This

development

On to the next tool

December 21, 2005 9:43:52.648

I tried running Eclipse again this morning - I had previously added the JDK I installed so that I could browse Java sources - now it crashes on startup. I'm sure I'm doing something wrong here, but it's more trouble than it's worth. I downloaded IntelliJ to take a look at that.

First off, they have an actual installer - and when you get it installed, and create a package, it asks you which JDK you want to use. Right off, this was better than Eclipse - it worked. So anyway, I added a new project to work on, and it went ahead and indexed the JDK for me, so that browsing would be possible. That's where I hit a point I'm not following.

There are a bunch of ancillary Java libraries with sources (network, security, plugin, etc) - but the runtime - rt.jar - shows up as an unbrowseable thing. Again, I'm sure I'm missing something here, but I have no idea how to just browse the base Java libraries.

Ok, just to get a feel for the tool I go down the tree to a package that has source - ldapsec.jar. I open the tree to StartTlsResponseImpl, and select it. Nothing. Ok, I have to double click to get source. Why that is, I have no idea - seems like a bad idea to me on the usability front.

Well, on to the project I created. I select my project - and have a "what now?" moment. Yes, I know that people downloading CST NC have the same issue, which is why we have the WalkThru document. So, off to the help, and it tells me what to do - I create a new file in the project (analogous to creating a new class in a CST package, mostly). Now, a fair bit of my problem here is my burned in expectations as a Smalltalker - I really don't think about source files, and I know that this is not a problem for most developers - so this is an issue on my end, not the tool's. I do notice that there are a bunch of XML files already associated with my project - gosh knows what those are, but I'll leave those alone. So I created a simple program:


class HelloWorldApp {
    public static void main(String[] args) {
        System.out.println("Hello World!"); //Display the string.
    }
}

Hit "Build", and got a compiler error. Hmm. I suppose it's significant that the tool tells me that it can't resolve "String" - likely means I've got some configuration thing wrong. I have no idea what that might be though, so I can't really get into any of IntelliJ's refactoring - I have to figure out how to get it properly set up first.

 Share Tweet This

development

Let's look at NetBeans

December 21, 2005 10:00:59.333

Well, I'm really starting to wonder about the raves that Eclipse gets. They don't include a Windows installer (heck, even I include one for BottomFeeder) - IntelliJ and NetBeans both do. I'd suggest they run off to find NSIS and have a look at that - it's simple, and it's free. Doing so would probably get rid of the problems I had.

So anyway, after a brief look at IntelliJ, I'm grabbing NetBeans. First set of points over Eclipse - they ship an installer for Windows. Heck, it's smarter than the IntelliJ installer - rather than trusting me to find a JDK, it searched for a suitable one at install time. Which limits the number of setup mistakes I could make.

Well, that was shortlived. On trying to run, it tells me that it can't find java.exe in a tiny dialog box. I think I've found the source of the odd Eclipse issue, and of many of these other ones - my path has a 1.3.1 JRE in it, which was installed by Oracle's client. So it looks like I need to muck with the OS level path. Joy.

 Share Tweet This

java

The Saga Continues

December 21, 2005 13:44:21.812

Well, it seems that my configuration is confusing the tools. The 1.3.1 install that Eclipse was moaning about was from an installation of Oracle Tools (something I did over a year ago) - it seems that Oracle buries a JRE in there. So, I grabbed the latest 1.5 from Sun and installed that. It complained about installing files as it got close to finishing (apparently, I should have quit Firefox before starting). The upshot? I ended up with a corrupt set of files. So, I blew those away and have started installing the 1.5 files again.

Meanwhile, NetBeans seems to be fixated on an older rev that I blew away, and won't start or uninstall. That's lovely - highly friendly, that. IntelliJ collapsed after I uninstalled the version of the JDK I told it I had - it's idea of informing me there's a problem is a modal dialog with one button that pops up over and over again. Not impressed with that either. So, I think I'll have to just delete NetBeans and IntelliJ, and start the installs over.

All this just to look at tools that supposedly have great features I need to borrow from :)

Update: Ok, I removed all the old JRE and JDK stuff from the system, grabbed the 1.5 stuff from JavaSoft, installed, and dutifully rebooted Windows. Then I unzipped the Eclipse files again, and tried that. No dice - as it's trying to set up a workspace, it tosses an exception - java.lang.ExceptionInitializerError. Even better, eclipse is still running, as is the JVM it started. I couldn't delete the offending directory until I killed both. Restarting eclipse led to the same error.

I don't think "simple" describes what I'm seeing. There are words that do describe it, but they aren't family friendly...

 Share Tweet This

java

The fault

December 21, 2005 15:33:07.790

In the comments here, I have a number of people telling me to uninstall Oracle stuff and move on from there. Well, here's the thing - I actually use the Oracle tools (my Smalltalk source code repository is an Oracle DB on my Linux box). So, suggestions that I start yanking software I actually need out will not be taken seriously.

In contrast, let me explain something - I have VW 2.5, 2.5.1, 2.5.2, 3.1, 7.1, 7.2.1, 7.3, 7.3.1, and 7.4 all installed on this system. None of them interfere with any of the others. And yet, I'm being told that to get Java to work I have to yank out an installation that is (or should be) unrelated to what I'm doing?

Please. If Java is that brittle, then I'm simply too busy to be bothered. Maybe I'll try installing some of this stuff on my Mac after I upgrade the memory (256 is all it has at present, and that's not going to be enough with the heft of these tools).

 Share Tweet This

general

Time Waster

December 21, 2005 16:37:45.895

Here's a fun time waster I got via a link on the Smalltalk IRC channel - try to keep that red block from hitting anything. The best I managed was just over 18 seconds - see how you do.

 Share Tweet This

DRM

meanwhile, back in DRM-land

December 21, 2005 19:18:07.369

Sony's legal problems continue to get worse:

Texas Attorney General Greg Abbott expanded his lawsuit against Sony BMG Music Entertainment on Wednesday, alleging that a second form of anti-piracy technology used by the label violates the state’s spyware and deceptive trade practices laws.

Abbott sued Sony BMG in November, saying the world’s second-largest music label surreptitiously included spyware on millions of CDs through technology known as XCP. That technology, included on 52 Sony BMG titles, could leave computers vulnerable to hackers, he said.

The new allegations involve an unrelated CD copy-protection technology known as MediaMax, which was loaded on 27 Sony BMG titles, including Alicia Keys’ “Unplugged” and Cassidy’s “I’m a Hustla.”

This is getting to be a hugely expensive headache for Sony - and, if the criminal charges go forward, it could get worse than just expensive. The RIAA and the various labels are going to have to re-think their positions.

 Share Tweet This

development

Where's the innovation?

December 21, 2005 19:36:08.026

Jonas Bonér has some interesting thoughts on Java and language innovation over the last decade. I know that many people I speak to have mentioned that the last decade of OOPSLA has been a do-over - same old ideas, recast in Java. Anyway, it's a mostly thoughtful piece, with some honest questions. The one glaring flaw is the idea that AspectJ represents innovation. It's a compile time hack attempting to mimic Lisp MOP. Which goes to my comment: nearly all the useful ideas to date have come through Lisp and Smalltalk - and everything else has been poorly implemented (and in too many cases, poorly thought out) "improvements" to them.

 Share Tweet This

general

Ahh, Predictions

December 21, 2005 19:48:27.309

I just ran across the first prediction page for next year (well, at least the first one I've seen). The first item is highly amusing:

Mozilla will release an upgrade to Thunderbird that interfaces to gmail through an API, and has full support of labels, archiving, etc

Hmm. I hate to break it to you, but that happened, a long while back. Gmail is available via pop and smtp already (which is how I use it). Eudora interfaces to it just fine, and I have to assume Thuderbird does as well. The rest seem reasonable, although number 14 is, well, amusing. And 16? Delusional at best :)

 Share Tweet This

holiday

Seasonal Time Compression

December 22, 2005 8:55:53.166

I don't know what it is about this year, but December just disappeared. I didn't even have to travel this month - and thank goodness, since we had no time anyway. I've finally gotten all the shopping done, and all my gifts wrapped - my wife is still doing her end of that. We've only just gotten to the Christmas decorations. I need that wayback machine :)

 Share Tweet This

web

Search feed overload

December 22, 2005 9:04:53.495

One of the things I use is search feeds - I have a bunch of them (40+) set up in BottomFeeder. I use a variety of search engines, and I have them returning things on competing products, on Smalltalk mentions, BottomFeeder mentions, and, of course, the vanity feed (my name).

Well, as Troy pointed out yesterday, a rather more famous James Robertson hit the news. That's made my vanity feeds nearly useless :/ Not a lot I can do about that, and I don't think there's a heck of a lot to be done at the search engine level, either. I guess all I can do is wait for the news to die down :)

On a positive note, that news got such wide play that I suspect our name was googled a lot over the last few days. At least I can be amused by the puzzled reactions of news junkies looking at the top result.

 Share Tweet This

general

More Predictions

December 22, 2005 9:08:41.166

John Battelle has a set of predictions for 2006 up - a number of them deal with Google. They all seem fairly reasonable to me.

 Share Tweet This

cst

Downloading CST Non-Commercial

December 22, 2005 11:34:06.716

A question came up in the comments here, and it looks like we need to update our website to be less confusing. The question? Based on the options listed here, what do you download? Well, I can explain the options here, and get a request in to update that page.

  1. Download the ISO Image - this will grab the entire CD, and let you either mount that (depending on your OS/available tools) or burn a CD. You can then install from that
  2. Download components - grab only the pieces you want. This is useful only if you already know how CST works, and know what to get
  3. ObjectStudio - just grab ObjectStudio, which is Windows specific

Regardless if which one you select, you'll get taken (ultimately) to a login/registration page. Once you go through the process, you'll get the three options above, plus a new fourth: grab a network based installer which will download a 5MB executable (pick your platform) and then do the install via the network.

Yes, the page that the commenter mentioned is too confusing - I'll have it fixed.

 Share Tweet This

java

Java Setup: No Progress

December 22, 2005 14:34:18.684

Well, I'd love to take a look at some of the Java tools out there (for ideas), but I can't get there. There is some kind of oddball configuration issue on my system. I've installed the latest Java 1.5 JDK; I've changed the CLASSPATH to eliminate the Oracle stuff and have just a path to the JDK lib directory; I've pre-pended my PATH with the 1.5 bin directory. Never mind the tools; here's what I get just trying to compile a simple "Hello World" program:


Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/tools/javac/code/Symbol$ClassSymbol
        at com.sun.tools.javac.main.Main.bugMessage(Main.java:628)
        at com.sun.tools.javac.main.Main.compile(Main.java:615)
        at com.sun.tools.javac.main.Main.compile(Main.java:544)
        at com.sun.tools.javac.Main.compile(Main.java:67)
        at com.sun.tools.javac.Main.main(Main.java:52)


Clearly, there's something very basic wrong with my configuration - but I'm at an utter loss as to what. I've tried specifying the jvm to use via command line args and path specification to the javac compiler as well - and I get the above. I'd like to thank the various people who have been honestly helpful - this is confusing to me as well. I've had people asking me questions about Smalltalk installation that were equally as befuddling to them and me, so I know this kind of problem from both ends.

 Share Tweet This

java

Apparently, my Java 1.5 download was corrupt

December 22, 2005 17:29:14.668

I got some help from one of the commenters on my blog, and we came to the conclusion that my JDK install was hosed. So I blew that away, and grabbed the 1.4.2 JDK. Then I re-unzipped Eclipse, made sure that the JDK was in the path in front of the Oracle crap, and it worked. Now I'll have to install the other tools again and have a real look. Thanks to all those who were helpful. And a lump of coal to the one or two of you who weren't :)

 Share Tweet This

holiday

Finally Ready for Christmas

December 22, 2005 23:32:29.688

I'm finally ready for the holiday - shopping done, tree and decorations up. I still have no idea where my month went.

Christmas 2005 Tree

 Share Tweet This

cst

Cincom Smalltalk Winter Release: Ready

December 23, 2005 0:17:22.967

The winter release is ready - the master CD was validated this afternoon. However, Cincom takes the week after Christmas off, so - even though it's ready - it won't actually ship until after the new year. We should be ready to update the NC download site shortly as well, probably before the New Year.

So, when you get back to your office after the holidays, expect to see the new release arriving!

 Share Tweet This

rss

Atom Update in Bf

December 23, 2005 8:53:51.771

I made some modifications to the Atom support this morning - a lot of the link information coming in from some feeds was wrong, so I sat down and had a look at it. A few small changes later, and I was getting better base url information for the feeds I had spotted troub The upda le in.te is available on the server.

 Share Tweet This

management

Whose problems are you solving?

December 23, 2005 9:35:37.128

Mini-Microsoft interviewed a Google (ex-softie) employee recently. I love some of the comments - they are (to me at least) indicative of a large problem in the developer community at large, and a serious one for Google specifically:

[...] You get none of this in Google. Some of my fellow graduates with a deep interest in systems joined Google and got thrown into messing around with JavaScript! Can you imagine how dissapointing it is for someone who has sharpened and honed their low level C and assembly skills and hacked around with the Linux kernel day in and out to be slaving on with something WAY high up from the metal like JavaScript and having to deal with a bunch of assholes during code reviews? Sure they are making more money than me in free lunchs and stocks (not much difference in the starting base pay at all tho).

This is exactly the kind of guy Microsoft should be happy they lost. Why? Because he has no idea who's problems he's trying to solve. He wants to be a "cool hacker" - meanwhile, his employer wants him to solve actual problems that real users have - and he's irritated by that. The more of these people MS transfers to Google, the better off MS will be, and the worse off Google will be. And then this:

This week at Google, I spent three days in Mountain View, and the last two days working from home. My team includes guys in our New York Times Square Engineering office as well as folks in Mountain View. On Monday, I flew up to Mountain View and arrived in the office at 10am. I worked until 3am and guess what. I wasn't the last one in my area of the building the leave! There was plenty of company. All these guys are proud of their work, love what they are doing, and wanted to nail their deadlines and then take a few days off for the holidays. At 330am I arrived at my apartment, slept for a few hours, and then arrived at the office at 8am, grabbed a free hot breakfast, and put in another full day leaving work at 4am. Again, i was not the last one to leave. I work in an area where a team is preparing for an upcoming launch and 90% of that team was there when I left at 4am, and they were there when I returned at 830am the next day.

That's not "energy", you fool - it's called a death march. If you need to work hours like that running up to a launch, then your team or your product manager (probably both) screwed up. In a huge way. The resulting launch will likely be bug ridden - and with the kinds of hard to understand, caffeine-buzz driven bugs that take eons to iron out. I begin to understand why gmail is still listed as "beta", and why Google Analytics got overwhelmed on day one - it's because of the work ethic listed above.

Management tip: If your team is working this way on an ongoing basis, you have a serious problem that needs fixing right away. It can be fun for some people for a few weeks (or even months), but then it leads straight to shoddy code and burnout.

Yeah, there's a plan. Scoble is right about this guy.

 Share Tweet This

smalltalk

Seaside in the Rails House

December 23, 2005 9:38:32.857

Avi has been interviewed for the Rails Podcast - the audio (especially at the beginning) is a little rough. It's cool to see cross-pollination between Smalltalkers and other dynamic language enthusiasts.

 Share Tweet This

management

The downside of outsourcing

December 23, 2005 9:45:30.147

Outsourcing has been a huge trend for some time now, but there are minefields - you really, really don't want to outsource critical business functions. Sure, your own IT systems can fail too, but it's kind of like what you tell your (small) kids when they want to carry something delicate - at least if you break it, you know who's fault it is. With that in mind, witness the Saleforce.com outage:

A Salesforce.com outage lasting nearly a day cut off access to critical business data for many of the company's customers on Tuesday in what appears to be Salesforce's most severe service disruption to date.

Salesforce stores customer information for thousands of businesses, delivering data "on-demand" via the web. The lack of that data interfered with some customers' sales and customer service activities on a critical pre-holiday business day.

When you rely on external suppliers for mission critical functions, you are gambling. It's one thing if you have a small company, and building out that kind of infrastructure is beyond you. It's another thing entirely if you had such infrastructure, and decided to save a few pennies. That'll be a fun conversation with executive management.

 Share Tweet This

cst

CST Installation on Ubuntu

December 23, 2005 9:54:07.039

As a commenter pointed out here, there are issues installing Cincom Smalltalk on Ubuntu Linux. We've had reports from numerous people, and have been looking at the issue. The reason this is going to still be an issue (in the short term) for the upcoming release is that we only ran across this problem late in the development cycle, and didn't think it warranted holding up the entire release.

Having said that, we hope to have this solved prior to the next release.

 Share Tweet This

logs

A brief look at the referrals

December 23, 2005 12:30:18.051

I grabbed last week's logs again in order to see where the referrals might be coming from - I don't provide counts on the server side, so I had to run some scripts to cut that stuff out. This is fairly procedural code, because it's just slapdash stuff in a workspace - but Smalltalk is good for that kind of thing, given the immediate response. After reading in all the log entries, I had to clean up the list - my log viewer does this, so I just stole code from there:

 
 
 
 

"take the logs and cut down to the real referers"      
cruft := #('.jpg' '.gif' '.js' '.png' '.swf' 'inc/' 'servlet/'
'css/' '.wmv').
cleans := refs entries reject: [:each | | val | val := cruft
detect: [:each1 | '*', each1, '*' match: each command] ifNone:
[nil]. val notNil].
cleans := cleans reject: [:each | | val | val := ReferralScanner
currentRejects detect: [: each1 | each1 match: each referer]
ifNone: [nil]. val notNil].


That yanks out all the image fetches, and css, etc, etc. Next, I ran through the entries to figure out what the top referers were:

 
 
 
 

"now that we have that, we can get some data"
dict := Dictionary new.
cleans do: [:each |
	| stream cmd total|
	stream := each command readStream.
	stream through: Character space.
	cmd := stream upTo: Character space.
	dict at: each referer ifAbsentPut: [cmd->0].
	total := (dict at: each referer) value + 1.
	dict at: each referer put: (cmd ->total)].
collection := OrderedCollection new.
dict keysAndValuesDo: [:key :value |
	value value > 20 ifTrue: [collection add: key->value]]


That creates a dictionary of associations, matching up the referers to the pages on my server (and the counts from that source). Finally, sorting it:

 
 
 
 

collection := collection asSortedCollection: [:a :b | a value
value > b value value]


Then it's just a small matter of pushing out an HTML table:

Count Referring Site Blog Page
514 http://martinfowler.com/bliki/HumaneInterface.html Blog Page
223 http://blo.gs/ping.php Blog Page
178 http://planet.smalltalk.org/ Blog Page
155 http://www.artima.com/buzz/index.jsp Blog Page
89 http://www.whysmalltalk.com/EZine/index.htm Blog Page
85 http://www.google.com/reader/lens/ Blog Page
69 http://www.smallthought.com/avi/?p=8 Blog Page
67 http://www.damninteresting.com/?p=168 Blog Page
64 http://farm.tucows.com/blog/_archives/2005/12/9/1443435.html Blog Page
51 http://www.cincom.com/global/eng/blogs/ Blog Page
50 http://en.wikipedia.org/wiki/OPML Blog Page
47 http://www.artima.com/buzz/index.jsp?start=15&thRange=15 Blog Page
44 http://www.smalltalk.org/main/ Blog Page
42 http://www.artima.com/buzz/community.jsp?forum=155 Blog Page
37 http://planet.lisp.org/ Blog Page
36 http://www.cafeaulait.org/ Blog Page
33 http://www.netvibes.com/ Blog Page
32 http://weblogs.java.net/blog/johnm/archive/2005/12/humane_interfac.html Blog Page
31 http://planet.debian.org/ Blog Page
31 http://reddit.com/new Blog Page
30 http://www.artima.com/buzz/index.jsp?start=30&thRange=15 Blog Page
24 http://planet.smalltalk.org/index.php?page=2&hours=48&cat=all Blog Page
24 http://smallthought.com/avi/ Blog Page
23 http://mywebpages.comcast.net/brazz/ Blog Page
22 http://tech.memeorandum.com/ Blog Page
22 http://c2.com/cgi/wiki?JohnVlissides Blog Page

More than one of those is actually from Martin Fowler's "Humane Interface" post - I had to intervene manually to clean that up. I also eliminated all the posts that got 20 or fewer referrals. That list also doesn't include the scads of search engine referrals, because they didn't tend to cluster over the week I looked at. Now that I have a script, I'll probably take a periodic look.

 Share Tweet This

cst

Heh - Cincom Smalltalk is ready

December 23, 2005 15:30:37.596

Bob reports that all is well with the release - and he has the weights and measures to prove it!

 Share Tweet This

web

Technorati Troubles

December 23, 2005 15:41:21.362

Maybe Doc or Joi - can figure out why the service indexes my blog just fine, but won't index Troy's (same server) - and won't give him more than junk mail level responses to his questions.

 Share Tweet This

sports

A clean shaven Damon

December 23, 2005 16:05:39.653

 Share Tweet This

usability

iTunes - not complex enough for developers?

December 24, 2005 10:45:41.592

I love this post from Winer about iTunes and the iPod - he's off criticizing its usability:

The user interface on iTunes is awful. It's the worst piece of crap I've ever used. People would tell me when I was a Windows user that it was because the Windows version of iTunes is crap but the Mac version is easy. Well, both programs are head-up-butt impossible to figure out. The user model makes no sense. When is something on the iPod? How many copies of the music do I have? Where the fcuk are they? How do you delete something? Is it really gone? Why does it wipe out the contents of the iPod when I don't say it's okay to?

I have no idea how he managed to get an iPod to delete files - I've hooked it up to systems that don't have my library, and it prompts about synching - all I can figure is that he went and hit the wrong option in a dialog box without paying attention. And hard to use? Please. I asked my Dad about that - he's a former teacher, not a developer. His comment was unprintable, but more or less, he questioned the sanity and intelligence of anyone who finds the iTunes software hard to use.

Now, having said that, Rex Hammock makes some good points on how (and why) you should back up - and Apple should let you re-download stuff you've bought.

 Share Tweet This

holiday

Waiting for Santa

December 24, 2005 10:55:08.643

Almost all set here - except for the cooking, which will fill today. Merry Christmas to all!

Christmas Eve

 Share Tweet This

open source

Is free the answer?

December 24, 2005 11:30:01.288

Pito Salas has some questions about pricing expectations in the software field:

Have you noticed how man how many new apps that have appeared of late are available free of charge?
Web 2.0 services like gada.be or flickr or del.icio.us. And more conventional client apps like Firefox? The list is approximately infinite. They come and go at an amazing rate. And they are all free.
Not only are they free, users seem to expect them to be free. I am not sure how this came to be...
Is it a unintended consequence of the open source philosophy? Is it a incorrect reframing of the fact that major and well known services like google and yahoo are (apparently) free (although ad supported?)
Whatever the reason, I worry about the chilling effect this can have on innovation in our industry.

He's got a point there - I know that the development tool sector has this problem in spades. The direction things are going is something like this: "Any tool you want, so long as it's Eclipse" (with apologies to Henry Ford).

The bottom line is, developers cost money - like everyone else, they have to pay rent (or mortgage), buy food - etc. My experience in this field tells me that you simply cannot rely on support costs to fill the gap - too many people will do without. What's the answer? I don't know. But like Pito, I wonder how it's going to play out.

 Share Tweet This

smalltalk

Smalltalking resumes shortly

December 24, 2005 17:35:53.789

Ludo wants Solaris x86 support:

I went back again to my VisualWorks learning trail but suddenly I asked myself where the solaris x86 version of the virtual machine is ? I decided that I would stop using software at home that cannot run on it. Yeah, I agree it's one more platform for cincom to support with not that many users and blah blah blah. But if the VisualWorks codebase is really portable, it should not take more than an hour to make that port. Until I can get that version, I will stop using it. Just like I did for Eclipse.

Happily, that will be done shortly - the 7.4 release has a VM for Solaris x86 - and the NC will be available for download in about a week (Cincom is closed for the holiday season next week).

 Share Tweet This

logs

Weekly Log Analysis: 12/24/2005

December 24, 2005 19:39:09.708

Time for the weekly log look - BottomFeeder downloads held steady at 350 per day this week. The breakdown:

Platform BottomFeeder Downloads
HPUX 771
Windows 430
Sources 292
Mac 8/9 291
Update 239
Mac X 125
Linux x86 112
CE ARM 68
Linux Sparc 25
Solaris 22
Windows98/ME 21
AIX 19
Linux PPC 15
SGI 11
CE x86 6
ADUX 3
Source Script 3

I still don't get those HPUX numbers :) The Blog HTML page accesses:

Tool Percentage of Accesses
Mozilla 52.8%
Internet Explorer 26.8%
Other 11%
MSN Bot 5.6%
Google Bot 2.8%
BottomFeeder 1%

I can't figure out what the constant ripples in the browser stats mean - the percentage for the two major browsers flips a lot from week to week. Either I get a lot of transient readers based on subject, or people are flipping browsers, or who knows what :) Finally, the RSS accesses by tool:

ToolPercentage of Accesses
Mozilla24.4%
Other15.9%
Net News Wire9%
BottomFeeder8.8%
Safari RSS5.3%
Internet Explorer4.9%
Liferea4.4%
BlogLines4.1%
BlogSearch3.9%
Magpie2.6%
SharpReader2.4%
NewsGator2.2%
Planet Smalltalk1.9%
JetBrains1.4%
Feed Demon1.4%
RSS Bandit1.3%
Feed Reader1.1%
MSN Bot1%
Java1%
News Fire1%
Python1%
Google Bot1%

The most interesting thing is that over 14% is definitely coming from Mac users.

 Share Tweet This

rss

Pain ahead for Newsgator?

December 24, 2005 22:26:55.554

Yes, I know that Newsgator is mostly focused on server side stuff now, but this news - upcoming Outlook support for RSS/Atom - won't be a happy thing for them.

Update: Techmemeorandum picks up the story.

 Share Tweet This

holiday

Merry Christmas!

December 25, 2005 0:29:30.086

I hope Santa is kind to you this year!

Santa on the Roof

 Share Tweet This

development

Weird Syntax and Language Adoption

December 25, 2005 12:47:38.961

In Sam Ruby's comments (it's old, but I only just noticed):

“If programming languages are Reinventing Smalltalk, why don’t we just use Smalltalk?”

Keith said:

Because Smalltalk’s got a weirdass syntax.

well, that attitude cost me *years* of what would have been productive Smalltalk time. I got over it.

Merry Christmas, and download Cincom Smalltalk Non-Commercial for a treat!

 Share Tweet This

holiday

A good time was had by all

December 26, 2005 1:31:10.785

It was a great Christmas - we had 13 family members here, and served a huge meal (with copious amounts of Mulled Wine) to all of them. It was a Christmas/Hannukah dinner - today was the rare time that the start of Hannakah lines up with Christmas.

I got a lot of great books, my daughter got a Nintendo DS and a bunch of games for it (although - she liked the iTunes gift cards almost as much), and my wife enjoyed playing the Karaoke GameCube game with Victoria. All in all, a great day - and no political arguments!

 Share Tweet This

spam

Blog Spam for all

December 26, 2005 10:38:13.586

Julie Lerman sees it too:

I got a ton of referral spam yesterday, then left the house at about 2pm. When I came home our power was out and I didn't boot up my computer until this morning.
Outlook has been downloading email for over an hour! It's all referral spam on my blog. Thousands upon thousands. I have never seen anything like it.

I moved my referer list behind a password wall (with the admin pages) awhile back, because keeping the black list up to date was just too much of a chore. I still do it, but if I miss, I'm not embarrassing myself in public.

So anyway, when I took a look at that list yesterday, wow! There were tons of splogs that got created on blogspot. I ended up throwing my hands in the air and putting blogspot on the blacklist. Great Christmas present, that.

Update: Blogging Roller spots the same thing, and he may have the issue pegged:

Apparently, a bunch of morons bought themselves blog spam software for XMAS and spent the holidays setting up blogspot blogs and trying (unsuccessfully, thanks to Roller 2.1-dev) to spam my site via trackback. I took the time to visit each one of the splogs and to set the "objectionable content" flag -- not sure if that'll do much, but it felt good just the same.

My sites haven't seen the trackback thing, but referers, yeah.

 Share Tweet This

games

Revolution ready for production?

December 26, 2005 14:10:56.641

If this is correct, then the Revolution is ready for mass producte before the May launch (i.e., no shortages):

Thus, according to gamemag.ru, who is citing Inside Gamer, is seems that Nintendo Revolution’s configuration is complete and the device is ready for mass production. And since the release date for the Revolution is in May, that gives the Japanese manufacturers 5 months in order to manufacture enough consoles. Well, it’s hard to define "enough" in this case, as the success of Nintendo’s console is relatively uncertain, at this moment.

And the second console system will beat Sony to market. I suspect that they'll have to hit a grand slam to catch up.

 Share Tweet This

gadgets

Why I don't have an email PDA

December 26, 2005 19:36:37.501

Scoble explains the problem:

When showing my phone around I actually get a lot of questions about whether or not to go with a keyboard-style phone. Here’s why I don’t: I used to have a Blackberry (back when I worked at Fawcette) and I used it so much that my hands hurt. Really hurt. I lost my Blackberry in a cab in New Orleans and my pain went away. I realized then that it was the thumb keyboard that was causing my hands to hurt. Let’s face it, I was addicted to that thing (and this was before blogging, imagine if I could post from my phone!)

You can make the devices smaller, but the hands are still the same size. If it doesn't have at least a laptop sized keyboard, I'm just not interested - like Scoble, I'd be tempted straight into carpal tunnel syndrome.

 Share Tweet This
-->