StS 2005 starts on Monday morning - a bunch of us will be around on Saturday and Sunday - we have a semi-organized outing to the theme parks on Saturday and Sunday. We'll be back before 6 on Sunday - the coding contest finals are Sunday night. If you want to join us at the parks this weekend, contact me.
The new list extension MS announced looks pretty easy to deal with - if I wasn't going to be busy with Smalltalk Solutions next week, I'd have an update with support ready in a day or two. I'll plug away at it in spare moments, and should have something out before the end of the week after StS. The cool thing is that Bf already has all the sorting/filtering capabilities this extension requires; all I need to do is capture the meta-data and expose it.
I like Steve Rubel's writing, but this comment is just... odd:
However, Microsoft needs to be very careful not to push the technology too far so that it only benefits them. It will be interesting to see if the extensions they are planning to add to RSS are truly open to everyone on all platforms (e.g. Linux and Mac) - not just Windows. Otherwise, it could be a repeat of embrace and extend - which got Microsoft into a bit of trouble back in the heyday of the browser wars.
How exactly could a new spec be made Windows specific when we are talking about an XML format? It's tags in a namespace guys, not Windows library code :)
Looks like MS has announced the big RSS news. The news? RSS integration into Longhorn (the OS) and IE. Apparently, the IE team is now the RSS team - you can see the Channel 9 video (warning - 1 hour long) here.
As usual with these channel 9 videos, the whole interview format just irritates me. I would much, much rather have a screencast showing me the cool stuff instead of an hour of blather that I really don't care about. Yes, it's nice to give the team some recognition. No, I still don't care :)
So what's new? Well, there's a roundup of links here, but the thing people are noticing is another RSS extension that allows for ordering of items. If I recall correctly, this was discussed on the Atom list, but I don't think they ever resolved it. About the time of the umpteenth "angels on the head of a pin" discussion, I tuned out. Anyhow - here's the Simple List Extension spec. I'm going to have to have a look see, and see what I'll have to do to deal with this in BottomFeeder.
In Longhorn, it looks like MS is trying to make RSS-centric development easier on the Windows platform. It looks to me like MS has given this some thought - but with Longhorn scheduled to be released sometime during the next millennium, it may not be that relevant.
Cincom and Knowledge Systems Corp. are announcing a partnership around Cincom Smalltalk and services:
KSC to Provide Educational Services to Cincom Smalltalk(TM) Customers
CINCINNATI, OH -- (MARKET WIRE) -- 06/24/2005 -- Cincom Systems, a global leader in business process application development, announced today a strategic business alliance with Knowledge Systems Corporation (KSC), a leading provider of object-oriented services. KSC will provide training, mentoring, certification, and migration services to Cincom Smalltalk customers.
KSC, with expertise in the Cincom Smalltalk product line since 1985, is offering a variety of courses now available to Cincom Smalltalk customers:
- Object-Oriented Analysis and Design Workshop
- Introduction to Cincom Smalltalk VisualWorks®
- Effective Testing for Object-Oriented Programmers
- Advanced Cincom Smalltalk VisualWorks
- Tutoring in Smalltalk
"As the largest provider of commercial Smalltalk, we have the responsibility to provide the best product and services for the Smalltalk community," said Jim Hazel, Cincom, director U.S. services. "By partnering with KSC, we can enhance our Cincom Smalltalk user experience and continue to grow the Cincom Smalltalk community. KSC has the product expertise and Smalltalk course curriculum readily available to launch this relationship and services program immediately."
"Knowledge Systems Corporation is delighted to be working with Cincom. Cincom's drive and dedication for its Smalltalk products coupled with KSC's long history with Smalltalk makes for a natural partnership," said Allen Davis, CEO of KSC.
For nearly 40 years, Cincom's software and services have helped thousands of clients worldwide simplify the management of complex business processes. Cincom specializes in the five areas of business where simplification brings the greatest value to managers who want to grow revenue, control costs, minimize risk, and achieve rapid ROI better than their competitors: Data Management; Marketing, Sales and Customer Service; Application Development; Manufacturing; and Outsourcing/Hosting.
Cincom serves thousands of clients on six continents including BMW, Citibank, Boeing, Northwestern Mutual, Federal Express, Ericsson, Penn State University, Messier-Dowty, Siemens, Rockwell Automation, and Trane.
For more information about Cincom's products and services, contact Cincom at 1-800-2CINCOM (USA only), send an e-mail to email@example.com, or visit the company's website at www.cincom.com.
About Knowledge Systems Corporation
Established in 1985 and located in Cary, North Carolina, KSC is the world leader in Smalltalk education and services and has employed some of the nation's defining authorities on object technology. The bookshelves of programmers around the world reflect the contributions that KSC has made to enterprise software development. Used extensively in enterprise software development, Smalltalk is the best-supported, pure object-oriented programming language available.
KSC offers a longstanding success record and a wealth of technical expertise to its clients. KSC has worked with companies in numerous industries including: insurance, banking and financial, telecommunications, warehousing and distribution logistics, healthcare and manufacturing.
CINCOM, Cincom Smalltalk, VisualWorks, and The World's Most Experienced Software Company are trademarks or registered trademarks of Cincom Systems, Inc. All other trademarks belong to their respective companies.
© 2005 Cincom Systems, Inc.
Knowledge Systems Corporation
Cincom Systems, Inc.
SOURCE: Cincom Systems
Steve Rubel points to a Gnomedex announcement - Audible is offering their audio content via secure (i.e., subscription) RSS:
They are making its wide selection of periodic audio content available via secure RSS. Audible customers can schedule automatic delivery of their periodic programming to their computers and to any one of more than 135 AudibleReady handheld devices.
BottomFeeder will deal with that nicely - you can use the Enclosure plugin to manage automatic downloads of the podcasts.
In a Slashdot story on cell phone use, an interesting side point got made about dealing with consumer complaints:
Also of note: Intelliseek's Pete Blackshaw 'says companies used to dismiss vocal complaints from one or two consumers as an aberration. But now, they have to pay attention because now those complainers may have blogs. '"
If you own a TiVo, or a Media Center PC, or a PVR from your cable company, you're part of an elite. A new research report from Accenture says that the percentage of U.S. homes with personal video recorders will increase by 500% in the next four years, but even in 2009 more than half of U.S. homes still won't have the equipment to record, pause, or time-shift TV.
To me, the problem is the difficulty in explaining a PVR to someone who doesn't have one. I get answers like "there's nothing good on anyway", or "we don't watch much tv anyway". The thing is, a PVR optimizes whatever you do watch - there are programs I watch now that I have no idea as to when they actually air :)
The bad thing is, the slow rate of adoption means that the current network tactic of starting or ending programs a few minutes early/late will keep happening :(
Remember the legal ruling from the EU that forced MS to sell/ship a version of Windows XP without media player in Europe? Well, they have that version out there now, but it seems that the regulators are the only ones who want it:
Retailers in Europe report that there's no interest in the XP N versions. The problems are price and perception. Despite lacking a key feature of the mainstream XP versions, the XP N editions are priced identically to their non-N counterparts. Too, the lack of a media player means that XP N buyers need to manually download a media player, which, believe it or not, is still a daunting process for many people.
Some PC makers--notably Dell and Sony--have simply refused to ship the XP N editions. "From our experience, customers purchasing computers expect them to come equipped with the capability of playing back digital media files," a Dell spokesperson said.
Having fixed up more than one Windows installation in my time, I can verify that - I still recall my neighbors, who are not dumb by any means - but they couldn't get their printer installed, and it "only" required a download of the appropriate driver.
Apparently, MS is about to announce a few things about RSS and the way they are tying it into IE and Longhorn. There's also something of a controversy over a possibly violated NDA, but I have no idea about that - I certainly wasn't privy to any of that stuff :) CNet picked up the story here - and Paul Thurott (first link above) said that you should watch here for news. That last site has a feed.
Real Tech News reports on a nifty gadget for the collector who has everything - of course, you have to be pretty well off to afford this as a gift:
“There is no greater anguish for a wine collector than to spend thousands of dollars on a 50-year-old bottle of Bordeaux, only to have it taste like vinegar when it’s opened. But now a New Jersey real estate developer and wine enthusiast says he has found a way to guarantee wine drinkers will never taste sour grapes again.
Like the Real Tech News folks said, you can file this under "problem solved that you don't have" :)
Gartner's Office of the Ombudsman has launched its own blog. Written by two Gartner veteran analysts and Ombudsman program leaders -- Nancy Erskine and Larry Perlstein -- the weblog is intended to support "an open and frank discussion on topics related to Gartner's analytical independence, accuracy, and integrity."
In a snarky tone, he said "well then, there probably won't be many entries then - possibly none..."
Or even more snarkily: "Maybe there will be tons of posts, in order to explain the general lack of cluefulness..."
I find this hilarious. Greasemonkey scripts work by effectively screen scrapping the website and inserting changes into the HTML. Stephen and others who are upset by Google's change are basically saying that Google should never change the HTML or URL structure of the website ever again because it breaks their scripts. Yeah, right. Repeat after me, a web page is not an API or a platform.
I'm getting a Spy vs. Spy (Mad magazine) visual here :)
David Buck talks about a problem that can crop up when using Intellisense. I'd be curious to know how much this comes up. I don't use either of the auto-completion goodies in VW, and I don't do enough development in any of the environments with Intellisense to have a good notion.
I'm already in Florida ahead of the 2005 Smalltalk Solutions show - spending a few days in Melbourne Beach, where my parents live. My daughter is enjoying a visit with her cousins, who live in Texas. We went out to the beach today - as you'll see in these pictures, it wasn't a great looking day today. Warm enough, and the water was nice (good surf too). Here's a shot looking north, up the beach:
That looks a lot different than it did last year. The dunes were a lot higher. Have a look at the other view, looking south:
Now, compare that to the post-hurricane shot that my parents sent me last year:
That driftwood was mostly buried before the hurricanes, and we used to use it as a towel rack. Now it's just gone. The sea bottom is different too - the drop off is closer to shore than it was last year. In general, you can really see the difference. Another thing I found interesting - lots and lots of the houses are still damaged (nearly a year later!). Have a look at these condos that are beachside, and part of my parent's neighborhood:
Apparently, only three of the units there are in use right now - you can't see it in the picture, but many of those units have been completely gutted. Finally, a happier picture - my daughter and her cousins going into the water with my brother in law:
One question this raises is how does this markup survive a trip through an aggregator? I have done a little testing and found that Bloglines keeps class attributes intact. Are there exceptions? Do 'rel's pass through unmolested? What do other aggregators do?
Well, I certainly don't preserve the XML as it passes in BottomFeeder. As content is read and parsed, I create Feed and Item objects, and those are what get saved to disk. Keeping the original XML around would bulk up the save file size quite a bit, so I simply haven't seen a good reason for doing it. Unless the micro-content is in the description/content element, in which case it will still be present. What I ought to consider is some kind of user accessible extensibility system for defining things to look for...
Cincom is having a customer/partner get together on Tuesday evening at the Wyndham (Smalltalk Solutions) - if you are a Cincom Smalltalk developer, or interested in our products and services, come enjoy the barbecue! We'll have flyers announcing the event at the show - see you there!
Inspired by Daniel Horn's Obfuscated V contest in the fall of 2004, we hereby announce an annual contest to write innocent-looking C code implementing malicious behavior. In many ways this is the exact opposite of the Obfuscated C Code Contest: in this contest you must write code that is as readable, clear, innocent and straightforward as possible, and yet it must fail to perform at its apparent function. To be more specific, it should do something subtly evil.
Heh. Unlike a lot of C code out there, it shouldn't be unintentionally evil :)
James Governor makes a small error in describing a putative Eclipse evangelist:
I can easily imagine a really excellent Eclipse RCP blog that was not written from a developer perspective, but that of an end user. So Ryan makes a great point but I would probably not be so binary. Authority and credibility comes in many different shapes and sizes. It increasingly comes from communities of interest, rather than "top down high church you shall obey" certifiers (Pace Michael Lewis and Stephen Johnson). High priest geeks are still high priests, and those are the folks we need to keep on their toes, regardless of the field of authority.
Eclipse's end users are developers, given the nature of Eclipse. IMHO, any non-developer evangelist for Eclipse would not be useful at the end user level - what information of use would they convey?
Sometimes I forget just how many tools I've added onto BottomFeeder. Have a look at this post from this morning, for instance - where I went through a script I used to find feeds that had not been updated recently. I mentioned that after doing a few manually, I went ahead and wrote a script - to which Troy responded that I ought to have support in the tool itself.
Oddly enough, I did have such support (although there was a bug that could bite you on it, which I've just patched). Have a look at the System>>Feed Maintenance menu pick - it brings up a tool that looks like this:
It's a pretty simple tool - select the cutoff date, hit the button, and you get a list of feeds that haven't updated since the cutoff (by default, 60 days back, once you get the update). Select the feeds you want to delete, and then just remove them - boom, all gone. So Troy - the functionality is already there, I had just forgotten about it :)
I love technologically incompetent people attempting to say useful things about the IT space - here's Judge Penfield Jackson (of the MS case that settled in 2001) waxing nostalgic:
"Windows is an operating system monopoly, and the company's business strategy was to leverage Windows to achieve a comparable dominion of all software markets," Jackson said. "Nothing has changed, to my observation, in the five years that have elapsed since my decision...Microsoft has won the browser war in the United States. Netscape Navigator, if it is still available at all, has only a small fraction of the browser market."
Hey Penfield - while IE still commands a huge market share, the leading edge has been adopting Firefox for quite some time now - and Safari (on Apple) is showing up more than you might think. The market responded while Jackson was blathering. And in case anyone is still wondering what he was really after, have a look at this:
Jackson, who is now an attorney at the Jackson and Campbell firm, used Tuesday's appearance to fire back at the appeals court. "When the reversal of my consent-decree case rulings on the contempt petition finally came down, it became apparent to me that I faced a very real prospect of reliving the 'trench warfare' experiences of my colleagues who had handled the AT&T and the IBM antitrust cases."
He wanted his shining moment in the sun. Instead, he got more than his 15 minutes. Thank goodness he's not on the bench anymore.
I got this job notice from the ESUG mailing list - there's an English and German description for the job, which is in Switzerland:
netstyle.ch is looking for an experienced SMALLTALK DEVELOPER as a project team leader
In the context of client projects your key task is to develop demanding web applications with Smalltalk. Your assignment starts with the conception and analysis of customer needs and ends with the transfer of the application in the productive environment and the following maintainance. In conjunction with a small team you are responsible for the realisation of the projects. As a main developer you are directly involved with the technical realisation. You are managing the teams work and coordinate the realisation of the project together with the project manager.
We are looking for candidates with wide experience in the area of object-oriented applications in Smalltalk and the conception and development of such applications. You have well-founded education in computer science and several years of experience in managing and realising challenging projects. Preferably you also have know-how in the area of web applications. You may be characterised as highly autonomous and love to work in a young and dynamic team. As the leader of the project team you posess good communication skills. You speak fluent English, preferably also German.
What we offer:
We offer you a chance to lead innovative projects in a small ambitious company. Thanks to our openness for new and unconventional approaches and open source technologies you have the possibility to broaden you horizon continuously. An uncomplicated work atmosphere with good personal relationsships within a small team promote a pleasant work. Interested? Do not hesitate to contact us!
Please send us your CV per e-mail or snail mail to:
netstyle.ch sucht einen erfahrenen SMALLTALK ENTWICKLER als Projektteam-Leiter Ihre Aufgaben: Im Rahmen von Kundenprojekten entwickeln Sie anspruchsvolle Web- Applikationen mit Smalltalk. Ihr Aufgabengebiet beginnt mit der Konzeption und Analyse der Kundenbedürfnissen und endet mit dem Übergang der Applikation in den produktiven Betrieb und der danach folgenden Betreuung. In einem kleinen Team tragen Sie die Verantwortung für die Umsetzung der Projekte und sind als Haupt-Entwickler direkt an der technischen Realisation beteiligt. Sie leiten die Arbeiten im Team und koordinieren die Entwicklung des Projektes zusammen mit dem Projektleiter.
Wir suchen einen erfahrenen Entwickler mit ausgezeichneten Fähigkeiten im Bereich, Konzeption und Entwicklung von objekt- orientierten Applikationen in Smalltalk. Sie verfügen über eine fundierte Informatik-Ausbildung und Erfahrung bei der Leitung und Realisation von anspruchsvollen Projekten. Vorzugsweise verfügen Sie über Know-how im Umfeld von Web-Applikationen. Sie zeichnen sich durch eine hohe Selbstständigkeit aus und arbeiten gerne in einem jungen, dynamischen Team. Als Leiter des Projektteams sind Sie eine Persönlichkeit mit guten Kommunikationsfähigkeiten. Sie beherrschen die englische Sprache schriftlich und mündlich; Deutsch ist nicht zwingend erforderlich.
Was wir bieten:
Wir bieten Ihnen die Chance in einer kleinen, aufstrebenden Firma innovative Projekte zu leiten. Dank unserer Offenheit für neuartige und auch unkonventionelle Ansätze und open-source Technologien haben Sie die Möglichkeit, Ihren Horizont stetig zu erweitern. Ein unkompliziertes Arbeitsklima mit guten persönlichen Beziehungen innerhalb eines kleinen Teams erlauben ein angenehmes Arbeiten.
Haben wir Ihr Interesse geweckt? Dann zögern Sie nicht, mit uns Kontakt aufzunehmen! Bitte senden Sie uns ihre Bewerbungsunterlagen per E-Mail oder Post an:
My daughter and I arrived in Melbourne Beach a couple of hours ago - she's visiting her cousins and grandparents for a few days - I head off to Orlando for StS on Saturday. In the meantime, I'll be spending some time on the beach. Ahh, relaxation....
Ryan Lowe makes a great point in the course of noticing that the Eclipse foundation is trying to hire an Eclipse evangelist:
Not only would a project give the evangelist invaluable experience with the Eclipse platform and something to blog about but it would also help them sympathize with developers, the exact people they are evangelizing to. It would put the evangelist on equal footing with other developers -- the evangelist wouldn't just be some suit telling me to use a platform because of x,y and z.
Exactly. An evangelist who isn't living on the platform just isn't credible - how can he (or she) possibly empathize with real users and their problems? I can tell you from experience - I spent many years as a sales engineer, doing demos, writing examples - and while it was useful, it never really gave me the same experience that our customers have. Over the last few years as the Product Manager, I've written (and deployed) some real applications - both client and server. It's given me a much better perspective on the highs and lows of the Cincom Smalltalk platform - one I don't think I could have acquired any other way.
Being offline does give me time to do something I need to do - "spring cleaning" on my feeds. I've crept up over 300 feeds again, and that seems to be my personal overload point. So here I am at 30,000 feet, deleting feeds. I have a pretty simple methodology for this - as a first pass, I just blow away anything that hasn't updated in the last 2 months. I suppose I ought to enable the Bf feature that tracks that and disables feeds in that state, but there it is :)
Of course, I ddidn't want to do that by hand, so I wrote a script in the workspace BottomFeeder provides:
| ts | ts := Timestamp readFrom: ('5/1/05' readStream). RSSFeedManager default getAllMyFeeds select: [:each | | all | all := each allItems. first := (all notNil and: [all notEmpty]) ifTrue: [all first] ifFalse: [nil]. shouldUse := first notNil ifTrue: [first pubDateString < ts] ifFalse: [true]. shouldUse]
It's a simple selection script, and it returned an inspector. With that, I could just walk through the list of feeds, and send the appropriate message to the UI when I wanted to delete one. Much nicer than walking through it manually. I suppose I ought to add this sort of "find the unupdated stuff" thing as a standard feed search. The end result? Back down to 286 feeds, which feels much more manageable to me :)
I should really know better than to book a flight this early in the morning. As I write this, it's just after 6 am - and I'm sleepy. It's a short hop to Charlotte NC, followed by a wait, followed by my flight to Orlando. I suppose I should be happy that I'll have a full day in Florida, but I'll probably want to sleep most of it away :)
Here's a great story outlining the utter absurdity of the DMCA, and it even includes a typically asinine statement from Jack Valenti. An Intel exec was at a technology/law kind of meeting, and laid this out:
“I used a program to copy a few seconds from the DVD of the movie Rudy,” he said. “It’s the scene showing the final game of the Notre Dame season with Rudy’s family in the stands cheering wildly when he got to play. I then spliced in some snippets of pro players doing a touchdown dance from NFL Films, and I overlaid it with audio from ‘Who Let the Dogs Out?’
"I stitched this all together with video of my son, and it turned out to be the piece of home video that gets watched the most in our house. When relatives or members of the football team come over, we pop it in and we just laugh. The added scenes and music really bring it all to life.”
There was just one problem. “It turns out to do this, I violated the DMCA. I used the DeCSS program to circumvent the encryption and access the movie clips on the DVD that I own,” Whiteside told the aides. “The end product is a DVD that I don’t sell or distribute but is considered a derivative work under copyright law.”
And cue the idiotic statement from Jack Valenti:
To their credit, none of the congressional aides flipped open their cell phones to call the attorney general. (When I described Whiteside’s home movie to Jack Valenti, he said, “He’s committing a violation of federal law.”)
Gee Jack, what's he doing wrong here? Is fair use that hard a concept for you? I guess so, since you insisted on pointing out the illegality, without noticing how stupid it makes you look.
The Intel exec has the right idea:
“This is precisely the kind of exciting consumer creativity that should be enabled,” he said. “I don’t claim to have all the answers. Should I have to go clear rights to use ten seconds from Rudy in my son’s video, or does it fall under fair use? Should I have to pay pennies for every second of a snippet? I don’t know. But I do know that we have to figure out a way for consumers to do something creative without breaking the law.
The MPAA has an easy answer, and it's the one they use for comedic effect in the Capital One ads - the answer is "NO", without regard to what the question is.
Frank Hayes spots a security violation that's going to cost the University of Kansas some heartache - and probably some money:
That banging sound is my head against the top of my desk. The Associated Press is reporting that 119 University of Kansas students were notified by e-mail that their financial aid was in jeopardy because they had failed classes. Unfortunately, all 119 notices were sent in a single message that included 119 e-mail addresses in either the to: or the cc: line.
I suspect that many of these students won't need financial aid after the settlements are done. I also suspect that some heads are going to roll in the IT department...
I'm not sure what possessed me, but I arranged a flight to Florida for 5:30 am tomorrow. I'm taking my daughter down to visit her grandparents and cousins, and staying through Smalltalk Solutions. Tomorrow promises to be a bleary eyed day...
Huge sinkhole/pothole in NYC - but do you know what the Abe Beame reference is from :)
Tim Bray explains why he would like to see a basic blog tool that was hacked in Java patched up:
Henry Story has been struggling mightily to turn Bloged from a weekend hack into a real blogging tool, because near as I can tell, there isn’t such a thing that’s in Java and works about the same everywhere
Well, it's not in Java, but it does work about the same everywhere - the BottomLine posting tool that comes with BottomFeeder. It's written in VW Smalltalk, so it's instantly portable to a very wide array of platforms. WYSIWYG editing, of course.
A side note - since it's not in Java, I haven't had to "struggle mightily". Too bad for Henry, I suppose...
And here's a screen shot
James Gosling demonstrates a lack of awareness of how servers work:
The problem ended up being with the metaweblog API and its realization in Roller: while Roller allows the publication date to be set manually through a web page, there's no access to that through metaweblog. Which leads to all the thrashing about other blog APIs, like Atom. I'm so looking forward to something that works...
In any reasonable server, the publish time has nothing to do with the posting API - the server assigns the time stamp based on when you push the post to a published state. Atom adds some ancillary meta data around that - specifically, a "modified" attribute that's supposed to allow you to differentiate the original publish time from some later edit time. [This is what he's on about above, which makes the next lines unnecessarily harsh on my part - I'll leave it here though, rather than try and airbrush my original post...] Is Gosling completely clueless, or just unable to write clearly? There are problems with the MetaWebLog API (specifically, passwords are sent in the clear. Yes, one could use https to deal with that issue) - but they have nothing to do with the publish time of a post....
Update again: The problem is the "writing clearly" part. He's migrating old content to a new server. Since he works at Sun, and the Roller guy works at Sun, you would think that they could have worked out some kind of import scheme. That's what I should have said...
Update: Apparently, easy to find permalinks and correct links in the RSS file are over his head too. I've updated the link in the post above after noticing that the original wandered off to a test server (at least, it looks like one....). I then had to hunt for the permalink, since putting it near the post would apparently be obvious or something. Sheesh.
So what's wrong with Remote Assistance? Who knows, but apparently, MS support isn't allowed to use it:
Bright and early Saturday morning, the reader called the Windows support number. "I was glad that at least my case ID was still there, but I still had to confirm every detail one more time," the reader wrote. "The Windows support tech I talked with sent me an e-mail with three links -- one to download an installer cleanup utility, and others to install .NET framework and upgrade it. He was very good and we were done in ten minutes. Then I asked him two questions. How come this procedure is not in the knowledge base articles? He developed it himself, he said. Since I had problems copying and pasting URLs from multiple lines in his email message, why does he not use Remote Assistance? Because Microsoft does not let them."
That's just.... interesting.
In a comment to this post, Wilkes Joiner asks if StS presentations will be posted. The presentations should be up shortly after the show - in addition, I'll have notes for all of the talks I attend, and I expect that other people will have similar notes that will get posted. Check here during the show for updates, and - for a back channel look - hop on the Smalltalk IRC channel.
So I have a new wire from the cable box, a new cable modem, and a new router. And still, I'm playing the old "unplug, replug" game with the hardware. Joy.
Time for my weekly look at the log files. First up - the weekly BottomFeeder downloads. Volume is holding steady in the low 300s (around 320 per day last week):
Platform BottomFeeder Downloads Windows 565 HPUX 441 Mac 8/9 342 Sources 253 Linux x86 208 Mac X 173 CE ARM 97 Update 62 Solaris 25 Windows98/ME 21 Linux Sparc 19 AIX 18 Linux PPC 6 SGI 5 ADUX 5 CE x86 2 Source Script 2
Those download numbers aren't much different than they have been - but again, you can see the value in having a seamless cross platform tool - there's a lot of interest from platforms that aren't well served by other tools. I'm relieved to see the Win98/ME numbers dropping - maybe that means less overall use and a pattern of upgrading to newer releases of Windows? One can always hope :) Now I'll have a look at the accesses to the blog pages on a per-tool basis:
Tool Percentage of Accesses Mozilla 55.3% Internet Explorer 31.6% Other 6.7% Google Bot 3.7% MSN Bot 1.7% BottomFeeder 1%
That's access to the html blog pages by tool - it's pretty clear that my readership is skewed over towards Mozilla based (likely Firefox) tools. Finally, let's have a look at the tool accesses to the RSS feeds:
Tool Percentage of Accesses Mozilla 22.8% BottomFeeder 18.8% Net News Wire 14.4% Other 7.4% Safari RSS 4% NewsGator 3.9% BlogLines 3.4% Java 3.1% SharpReader 3% BlogSearch 2.9% Lilina 2% Planet Smalltalk 1.8% Liferea 1.8% MSN Bot 1.5% Feed Demon 1.4% Internet Explorer 1.3% Feed Reader 1.2% Feed Tagger 1.1% RSS Bandit 1% Opera 1% Python 1% Google Bot 1% Jakarta 1% JetBrains 1%
You can see that I've broken "other" down a bit more - there's more variety in the reader space than I had been tracking. It still looks like I'm getting a disproportionate number of Mac users, which is interesting.
For someone in my position (Product Management), a news aggregator is more than interesting - its an absolute necessity. For instance - the only reason I found a reference to a BitWise Magazine article on Smalltalk is a BlogPulse RSS search for references to "Cincom Smalltalk". I have similar searches set up using Feedster, PubSub, and Google. I track references to VisualWorks, ObjectStudio, Smalltalk, "Cincom Smalltalk", and our Smalltalk competition. I also look for references to myself and to BottomFeeder.
There's simply no way that I'd have the time or patience to follow that many bookmarks in a browser. It doesn't catch everything, to be sure - there's no substitute for communicating with your customers and prospects. But it's a highly useful piece of the puzzle.
My daughter is going to a pool party today, and I get the fun of fixing up the parent's hacked computer. Who knows what I'll find when I get there, but I'm sure it will take awhile to clear out. Ahh, the joys of unattended IE use, old, unpatched versions of Outlook, and no firewalls...
Dermot Hogan thinks that OOP is the problem rather than the solution:
There is no silver bullet: Object Oriented Programming has failed.
What? But surely the world and its dog Microsoft and Sun, naturally are object-oriented … C# (which some cynics would argue is little more than a Java clone) and even Visual Basic (God help us all!) are class based. Well, so they might be, but in the twenty or so years since object-oriented programming emerged from the universities, there is not one single documented, cast-iron, nailed-to-the-ground, proven case study that OOP works.
Here's a tip Dermot - we haven't found anything that works that well yet - the various non-OO systems out there haven't exactly covered themselves in glory either. Well heck, none of this is a huge surprise. The people doing development in Java and C# now - for the most part - never actually learned OO. They were C programmers who picked up a C++ compiler, and then went with the syntax flow. Along the way, their OO knowledge hasn't really grown any.
That's the basis of an awful lot of development projects, and it's a reason (hardly the only one) why many fail. Sure, Smalltalk projects fail too - I'm not about to claim that Smalltalk is a magic wand that will wipe away all your problems. However, it is simpler, cleaner, and easier to develop with. Which means that at least one of the layers of complexity in software development is lost when you use Smalltalk. In any case, back to the article - here's Dermot's great example of OO's failure:
For example, there’s a little thing in the banking world called “reconciliation”. It means tracking down and fixing the host of small errors introduced by the users of the system - people, in other words. Now just try to find a real person in an OOP design. Hmmm - difficult. Anyway, reconciliation fundamentally requires cross-referencing, cross-checking and often painstaking detective work. At the bottom, this requires looking inside what is going on which is directly contradictory to the whole idea of OOP.
None of the designers working on the class library thought of this, of course. Reconciliation? That’s what clerks do! Of course, the great OOP banking system was delayed - and delayed. Delayed because nobody who had the misfortune to use the class library could work out what the hell it was doing. I don’t know the end of the story, whether the great OOP banking system was ever built, or whether it joined the 70 percent or so of failed IT projects. Somewhat disillusioned, I left for pastures new.
Sigh. It would be nice if he identified the actual problem here. This issue has nothing to do with OO, or procedural, or functional (etc.) development. It has to do with non-interaction with actual users of the system. You know, that real world customer thing that the agile folks like to talk about. I'd bet good money that the designers of Dermot's system walled themselves off and designed this thing in glorious isolation - and were then stunned when they discovered all the hidden use cases (like reconciliation). Surprise! Not dealing with actual users has consequences. If Dermot fails to realize that, then woe betide the next system that he works on, because it will fail for the same reason, and he'll be utterly stunned.
Next, we find that Dermot has an eye for the obvious:
What I’d done was to modify the behaviour of a base class. And this behaviour had then propagated with effortless ease through the whole damned system. But, with financial systems, this is a no-no. In a typical financial system, all responsible users have to sign off on a change before it goes live. After all this is real money we’re taking about here. Especially if it’s the bank’s own. With this particular system, that sign-off involved users in most of the capitals of Europe!
The point is that when you modify a base class, you potentially change the entire derived class functionality. So, you have to re-test all of the down-stream bits of the system. While you can easily find the ancestor of an object, it’s not so easy to find the descendants. It’s even less easy (to err on the side of understatement) to find the users of the descendant systems and get them to re-test, especially if the bug didn’t directly affect them in the first place. Eventually, I had to put the bug back into the base class and override the troublesome code in the one derived class that was the cause of the problem.
I guess the concept of a change request in a mission critical system is an utter mystery to Dermot. Heck, a lot of things are an utter mystery to him. Say his system had been fully procedural, and lots of components relied on a few shared libraries. Now, say you changed the behavior of one or more of those libraries. Wow! We have the exact same problem, and there aren't any objects in the vicinity! Perhaps the problem isn't OO, and it's instead a matter of process. Too bad Dermot isn't capable of seeing that, and instead wants to find something other than his own limitations to blame. See, here's the final kicker:
So what’s the silver bullet then? That’s the point there isn’t one, and there never will be. To understand that, just dump all your books on OO methodologies and read “The Mythical Man Month” by Frederick P. Brooks. More of Fred Brooks next month. OOP is snake-oil.
If he'd actually understood any of what Brooks wrote, this op-ed piece wouldn't have happened. OOP isn't snake oil; it's one possible solution to the software development puzzle. Simplicity and consistency help a lot (which is where I think Smalltalk comes in), but hey - I don't think anything will help Dermot's development problems. He needs to go back to basics, and figure out stuff like use cases, listening to end users, that sort of thing. Until he figures that out, it really doesn't matter what he uses.
Last time I looked, IBM had pretty much bet their farm on open source.
Bizarrely, they just emailed Eastgate (and, doubtless, lots of other vendors) with a demand that we certify that we don't use any open source software. If we do use any open source software, they want a pile of paperwork for each one. The email threatens that firms that don't comply will be dropped from the approved license database.
You'd think IBM would want to encourage people to use systems from companies like, well, IBM.
They do... so long as that includes the use of expensive systems like WebSphere and the army of consultants that comes with it.
Rafe Colburn tries to pass off a real danger as "move along, nothing to see here" thing:
Basically there are two kinds of software out there. Software that's too big to die, and software that isn't. If the software is too big to die, then it doesn't matter whether it's open source or not. If MySQL AB were to shut its doors tomorrow, the MySQL database would be just fine. Companies like Google and Yahoo rely on it, it's provided by hundreds of hosting providers, and it's mature. It's no more likely to suddenly go unmaintained than Microsoft SQL Server or Oracle.
That's true to an extent - even users of IDMS still have a home, for instance. Having a home doesn't mean that support will be cheap though. Quite the contrary - moribund legacy-ware is usually a very expensive proposition. The danger isn't that support would dry up - rather, it's that it would suddenly get very, very expensive, and possibly hard to get.
Here's a chance to get some recognition for a Smalltalk application near you - write up a short essay on your favorite app, and why you like it:
About The Contest: How do you win? It's easy.
- Read our editors' essays. This week, ten TechWeb editors have written their hearts out to convince you that their favorite software applications are the best there are. Read them — because they're clever; because you'll learn about some really fantastic tech; because they'll clue you in on the type of essays we're looking for; and because, well, we've worked hard on these!
- Write 200 to 500 words about some software you're nuts about. Impress us with your erudition, make us laugh, dazzle us with your well-reasoned arguments, do something to make us sit up and take notice. Remember, in our contest -- as in life -- style counts. Write as often as you like -- but each entry has to be about a different product, technology, or true story.
- Send us your deathless prose using the contest form on the last page of this article.
- Keep your fingers crossed!
All entries must be received by July 5.
The prizes look pretty nifty - grand prize is an iPod Photo.
How? It's trivially simple. Why do carriers give handsets away for free? Because they make money on the subscription necessary to receive the handset. Why do banks give away free checking, or free credit cards? Because they acquire new customers. Why do Google and Yahoo! give away free search? Because there's a fortune in the end result.
So why on earth would we give our OS away for free?
Because it'll ensure those without the economic wherewithal to pay for it will still consider using it. Companies that suffered from piracy a decade ago now know the lesson well - piracy is a good thing so long as the pirates are folks who could never afford your products. So stop calling them pirates, call them users. Free software has no pirates. As I've said forever, there's value in volume, even if you're not paid for it.
The strategy he outlines only works when you have very, very large volume. Even then, you'll notice that MS jacked the prices up for MSDN subscriptions - which ought to tell you something about the limits of free/cheap pricing in the heavy volume arena. The problem with giving things away is that the number of people who will actually pay you for related services tends to be really small - which again, calls for massive volume. Here's a tip - Open Solaris won't have massive volume - which means that Sun will be losing money on this right from the start.
Combine that with their highly dubious purchase of StorageTek, and you have to wonder what they are smoking out there...
So why not have a look at Smalltalk - its much more OO and more dynamic than Java. You can change the program while it is running and as soon as you have understood a few concepts you can use it. For web application building I would recommend the www.seaside.st framework and for development either the free open source Squeak project (http://minnow.cc.gatech.edu/squeak) or the non commercial version of VisualWorks (http://www.cincomsmalltalk.com). Take care - Smalltalk is a drug - you will find Java less powerfull after you have really understood it. Use the free smalltalk online books (http://www.iam.unibe.ch/~ducasse/FreeBooks.html) to get started or the Web tutorial for Seaside: http://www.cincomsmalltalk.com/CincomSmalltalkWiki/Seaside Tutorial
I like the way he sums up:
What took you so long to realize this? ;-) EJBs are a major catastrophe rather than a technology which helps you get the job done. Too much Noise in between your coding, loads of XML and other stuff which has nothing to do with what you really need to do. Besides, most EJB apps are damn slow and fat...