rss

Interesting...

May 12, 2004 0:38:58.040

Every so often there's a "where are all the Java apps" thread on the comp.lang.java.advocacy newsgroup - for instance, here's the latest thread. Well, that got me to thinking - RSS/Atom/Syndication has gotten to be a fairly active application area - there are many, many readers out there - here's one list of the most popular ones. What I've noticed is that there are a bunch of .NET based aggregators, a bunch of aggregators specifically for Windows and/or Mac - but none of the commonly used aggregators are Java based. Now, I know that there are lots of Java developers out there - and yet somehow, no one has created a widely used aggregator in Java. That's fascinating. Oh, yeah - there is a widely used Smalltalk based aggregator :)

 Share Tweet This

smalltalk

Why Smalltalk?

May 12, 2004 0:49:07.020

Patrick Logan points to a ComputerWorld case study of the Kapital system at JP Morgan:

Technology is essential to the success of any high volume derivative business. The technological underpinning of Kapital is based on one of the earliest and some would say most pure object oriented development languages currently in existence 13 Smalltalk. The current incarnation of this language called VisualWorks has been married with a database technology called Gemstone. The combination of Smalltalk and Gemstone was the technology of choice at the start of Kapital. It continues to be the technology of choice today as it enables the following system characteristics:

  • The creation of an application architecture that hides the technical complexities from financial developers.
  • Distributed calculations are decoupled from the financial domain and increased compute power is achieved through machine on-boarding (e.g. recent machine on-boarding using PC blades and Linux)
  • Allows business users and financial developers to create any type of new business object and save it and share it.
  • Allows for disparate development teams, who are focused on different business areas, to develop solutions at different rates

Why are they using Smalltalk with all the Java and .NET buzz about?

Identifying new market opportunities is available to all investment banks. However, profitability and success come from being able to execute on those new market opportunities before the competition. Using Kapital, enables both business and IT staff to prototype and develop new ideas that can be promoted into product sets. This rapid turnaround of idea to product empowers JP Morgan to market and trade new deals before most of the competition. In the world of highly complex derivative products, JP Morgan is the number one investment bank.

Oh, and that canard about it being "too hard to find Smalltalkers?"

With the size and complexity of the system (14,000 classes and 400,000 functions) written in an esoteric language and database, one would assume that the technology would be the limiting factor in its continued growth. However, the greatest difficulty for Kapital is not the technology, but understanding the business and business processes themselves. With the developer firmly in mind when Kapital was originally put together, new financial developers can be on-boarded and be productive within four to six months

Go read the whole thing - and then download Smalltalk and try it out.

 Share Tweet This

marketing

Of Tablets and markets

May 12, 2004 9:57:30.470

There are a few posts on the Tablet PC this am - Scoble over here, Julia Lerman here, and the story that spawned these posts here. I think the lot of them miss something crucial - IMHO, the Tablet is a niche product. Yes, I'm sure that people do like them when they see them. I'm also sure that most people have no real need to scribble on a screen. Think about it - how many tasks do you actually do in a day that would justify the extra cost of a Tablet? To my mind, the Tablet is a great product for a set of vertical markets - and a nice to have, but not important thing for everyone else.

Now, that may change - 5 years ago, notebooks were not something that most people thought of as a desktop replacement - that's not the case now. Over time, the Tablet may become that way as well - but I think this will happen only as the price differential drops towards nil.

Update: Matt Crowden makes my point:

Price is probably the number one factor that is keeping the Tablet PC install base down.  I've looked at a few TabletPC models at my local Micro Center, which usually has a few in stock, and their sales guys know much more than your standard CompUSA or Best Buy.  I played with a Tablet PC.  It was a compelling experience.  Unfortunately it wasn't two grand compelling.  It wasn't twice as much as I ended up paying for a higher spec'd but bigger (and non-tablet) laptop that I ended up getting

Price is the reason I bought a 386 based PC back in the late 80's instead of a Mac. I liked the Mac - but I didn't like the $2k price differential. Ditto for the Tablet...

 Share Tweet This

blog

Welcome Ralph Johnson to the CST blog site!

May 12, 2004 10:17:36.836

We have a new blogger on the Cincom Smalltalk Blog site - Professor Ralph Johnson of UIUC (and one of the co-authors of the GOF book). The blog is here - subscribe to his feed here.

 Share Tweet This

spam

SpamCop and Spammers fight in court

May 12, 2004 10:46:50.232

TechRepublic.com reports on a judicial block of a SpamCop blacklisting:

A Northern California District Court judge issued a temporary restraining order to prevent SpamCop, an antispam operation, from interfering with messages sent by alleged junk e-mailer OptInRealBig.com.

Now, spam irritates me - a lot. On the other hand, I despise blacklists. The way SpamCop runs them, it's virtually impossible to get removed from such a list, and they occasionally block mail from large ISP's - I've had them block outgoing mail from my ISP's email server. A pox on both their houses....

 Share Tweet This

security

Phishing for usernames

May 12, 2004 11:40:31.877

Scott Johnson points to a really, really nasty attck based on presumed trust - and he's dead on about how easily people (tech geeks included) will fall for this. That is one nasty, nasty idea there.

 Share Tweet This

marketing

Forgetting one thing...

May 12, 2004 23:19:23.872

Scoble raves about the Tablet again:

But, this whole thing points out a disconnect. I'm using the latest latest stuff. It has radically changed my life. I can't, and will not, buy a portable computer without the Tablet PC features anymore. It's changed my life that much.

Why? Well why don't you meet me in Southwest Airlines on Friday evening and I'll show you why the Tablet PC is so superior for air travelers?

All this reminds me of 1986. Remember that year? Remember what they were saying about the Macintosh? "It's dead," they said.

Notice one crucial thing about the Mac - the market share. And it's not because DOS was better. It's because a Mac was $2k - $3k more expensive than a DOS box was. That's why I bought a 386 DOS box instead of a Mac back in 1987 - I was unwilling to part with the extra $2K. Well, the same now applies to Tablets. Ink is nice and all, but it's not $2k of nice. It's a niche product until the price point equalizes.

 Share Tweet This

marketing

Not Impressed

May 13, 2004 11:39:12.916

Patrick Logan is not impressed with the Tablet PC:

The software sucks. Badly. Really, the pen interface seems slapped on top of the typical mouse-based Windows. And the total experience is *horribly* schizophrenic. The pen/tablet experience is trying to get along with its mouse-based alter ego, but they just seem uncomfortable with each other. Their like relatives who see each other once every year or so. They have something in common, but no deep understanding of each other.

Hmm. This is a slightly less rave review than I've seen from the Tablet evangelists. I'll take a look eventually, but:

I'm not going to shell out $500 extra for the ability to write slowly on a small screen. I don't touch type, and I still type faster than I write. This is looking a lot like a solution desperately in search of a problem to solve....

 Share Tweet This

smalltalk

Seaside in VW

May 13, 2004 11:42:14.290

There's a Seaside Tutorial for the VW port of Seaside - grab vwnc, then get public store access - and have a look.

 Share Tweet This

cst

Why Pollock is the future

May 13, 2004 12:49:52.229

Yesterday, I had a request come through the Smalltalk IRC channel - why not allow users to eliminate the horizontal scrollbar on the grid view in BottomFeeder? Well, that was a reasonable request - it's now a setting in the latest dev stream build. The way it's implemented illustrates perfectly why the Pollock effort is so important. Take a look at the code that turns the scrollbar off:

| sub ds |
sub := self widgetAt: #feedID.
ds := self
     getComponentFromSubcanvas: sub
     withID: #Dataset1.
ds component container component component components first container useHorizontalScrollBar.

Yes, it's that ugly. The issue is the way the VW GUI adds "decorations" like scrollbars - they are added in via wrappers. It's not simple to navigate down to the correct layer of wrappers - I figured out how to get there via an inspector on the running application. Now, once you get there, there's a nice simple API to turn scrollbars on/off - and yes, I suppose one could surface that via a higher level APi that hid all this nuttiness (but that's non-trivial - wrappers get added based on a lot of variables). This is why Pollock is the future - no one should have to do this to toggle scrollbars :) Thanks to Travis for pointing me in the right direction when I was taking a look at this last night....

 Share Tweet This

xml

Danger Will Robinson - baroqueness ahead!

May 13, 2004 17:13:15.877

The W3C intends to get involved with Atom. If you thought there were bizarre happenings there before (mime encoded, large binary data in the feeds!) - just wait until the wizards at the W3C get done with it. At least the current specs are written in identifiable English - the W3C positively strives for odd wording and hard to understand sentence structure....

 Share Tweet This

xml

Almost useful

May 13, 2004 17:22:07.988

Google has added Atom Feeds for newsgroups - for example, here's the feed for comp.lang.smalltalk. This adds fine in BottomFeeder, so long as you are using the dev stream (where 0.3 formatted feeds are fully supported). The feeds aren't that useful though - only partial content for each item is included. It's not time to abandon my Agent yet....

 Share Tweet This

StS2004

More StS notes from John McIntosh

May 13, 2004 17:38:12.125

John McIntosh's StS 2004 notes start here on the Camp Smalltalk Wiki - links to successive reports are at the bottom of each entry. I am still expecting more notes, and I'll post them or link to them as I get them. Enjoy!

 Share Tweet This

blog

People are shocked

May 13, 2004 20:41:51.093

Don Park links to an interesting post from one of the commenters on Six Apart's new licensing for MT. It's kind of amusing to watch. I'm sure that a lot of people have enjoyed using MT for free, and gotten a lot of blogs set up. Now ask yourself - what has Six Apart gotten for that? And don't say "positive press" or "love from the open source community" - because neither of those things pays any bills. There's a simple reason that MT is going to start costing real money - it's a business, and I'm sure that the developers want to be able to eat.

Not everyone wants to give away their software and "sell services around it". That often requires travel, and guess what? Not everyone wants to travel. Take it from someone who's spent a lot of time on the road - you pay a price for it. You don't expect your stereo to be free, or the TV - why the heck should you expect software to be free?

 Share Tweet This

development

Extensibility in Languages

May 14, 2004 9:27:58.444

Dr. Gregory V. Wilson wants more extensible programming languages, and points to Lisp as an example of one. The Planet Lisp crew picked up on that here. If you read the paper, you'll see that Wilson wants simplicity and extensibility. Well, another possible answer to that is Smalltalk - it's a very simple, very powerful language that lets you "extend the language" in very simple ways - take a look at the implementation of #select: in Collection, and then ponder the fact that you can add your own additions to class Collection as needed. None of these things are going to happen in C# or Java - they are both too rigid. VB has become rigid by forcing it onto the CLR. We need something better, but it's not going to come from the mainstream....

 Share Tweet This

development

When in doubt, pick the worst option

May 14, 2004 9:45:56.830

Here's an interesting post from Dare Obsanjo on XML tech. He's explaining why they don't plan to support XSLT 2.0, XPath 2.0 and XQuery 1.0. Here's the basic explanation:

We'd rather implement one more language that we push people to learn than have to support and explain three more XML query and transformation languages, in addition to XPath 1.0 & XSLT 1.0 which already exist in the .NET Framework. Having our customers and support people have to deal with the complexity of 3 sophisticated XML query languages two of which are look similar but behave quite differently in the case of XPath 2.0 and XQuery seemed to us not to be that beneficial.

This all makes sense - you have to make choices about what you will and won't support - you can't support everything out there because there's simply not enough time/resources to do so. What struck me was this:

XPath 2.0 has different semantics from XQuery, XQuery is strongly and statically typed while XPath 2.0 is weakly and dynamically typed. So it isn't simply a case that if you implementing XQuery means that you can simply flip some flag and disable a feature or two to turn it into an XPath 2.0 implementation. However all of the use cases satisfied by XPath 2.0 can be satisfied by XQuery

Sadly, this is still how most of the software world thinks - they pick rigidity over flexibility, and static over dynamic. Productivity goes out the window in the cosmic quest for "safety" (which is illusory - the Capers Jones data from the 90's shows that error rates are lower in languages like Smalltalk than they are in languages like Java) - and yet, the major players keep marching down the path towards rigidity. MS is doing it universally - VB, which used to be somewhat dynamic is being shackled to the rigidity of the CLR, and is losing any residual goodness it had left.

All the progress in software is coming from the margins at the moment - people experimenting with Python, Ruby, Smalltalk, Lisp, and other dynamic systems.....

 Share Tweet This

StS2004

STIC on StS 2004

May 14, 2004 13:09:58.572

Here's a press release STIC just dropped:

Seattle Hosts Successful Smalltalk Solutions

Cary, North Carolina, May 14, 2004 -- The Smalltalk Industry Council (STIC) is happy to announce that this year's Smalltalk Solutions in beautiful Seattle was a rousing success. Smalltalkers of all ages and abilities from throughout the world descended upon the Seattle conference to experience the rich variety of talks and presentations that were offered. The hotel buzzed with conversation as colleagues both old and new traded ideas, shared their experiences and debated throughout the three-day conference. The Council would like to thank all the presenters and attendees who helped make the show one of the best ever.

The presentations, tutorials, and BOF's were a big hit and offered a little something for everyone at the show. Attendees selected from a wealth of choices from pension-plan management and emergency-services dispatch to internet syndication and garbage collection. The talks generated much interest among the conference-goers with many conversations making their way out of the classrooms to the exhibit hall where others could enjoy and join in.

It was standing room only when the conference keynote speakers took the floor. George Bosworth of Microsoft discussed Smalltalk and CLR virtual machines. Former Hotspot architect Lars Bak discussed Smalltalk for very small embedded devices. And Seaside inventor Avi Bryant talked about Smalltalk's role in redefining web development. STIC would like to publicly thank the keynote speakers for the wonderful job they did in informing and enlightening the conference on such exciting topics.

About STIC

The Smalltalk Industry Council (STIC) is a nonprofit trade association whose goal is to promote awareness and increase demand for Smalltalk. STIC was reorganized in 2002 by Cincom, GemStone, IBM and Knowledge Systems Corporation, creating a cohesive Smalltalk community where information, technical issues, new ideas and concerns are openly discussed to benefit businesses as well as the software industry. STIC's membership consists of users, service providers and vendors of Smalltalk tools, components, databases and services. For more information on STIC, please visit www.stic.org

Contact:
Jason Jones
Smalltalk Industry Council
919.789.8549 x.21

Stay tuned for news about next year's show - if you have suggestions for a location, let us know now

 Share Tweet This

movies

Ash vs. the bad guys

May 14, 2004 15:33:22.655

Sci Fi Wire reports that we may see an Ash vs. Freddy and Jason movie - but it will be hard to bring off:

Bruce Campbell, who played Ash in the Evil Dead horror films, told SCI FI Wire that there is "some validity" to the rampant rumors about the possibility of a movie that would pit his character against Freddy of A Nightmare on Elm Street and Jason from the Friday the 13th franchise.....
Campbell added, "[That] means you have 17 lawyers, each going, 'Yeah, look at my franchise. Yeah, look at my franchise.' So you have to get past that. Then you have to get past the question of 'how will the characters be treated?' What would you do with Ash? There's no way I'd be in it if I lost. No way. The good guy has to win, especially in that movie. You couldn't kill two whole franchises, but we could sure maim them."

Now that would be a cool flick! Hail to the King, baby

 Share Tweet This

smalltalk

Nifty Smalltalk projects

May 14, 2004 17:00:18.436

Ralph Johnson pointed me to this page - the projects he had students working on at UIUC this last semester. Some of these are really cool sounding. A couple stood out to me:

Also lots of games - check them out. maybe I'll make one of them a BottomFeeder plugin...

 Share Tweet This

blog

Not quite...

May 14, 2004 18:28:39.808

Mark Pilgrim covers the MT imbroglio pretty well - but draws the wrong conclusion, to my mind:

It's not about who has a right to make a living (everyone does); it's not about how nice Ben and Mena are (I've met them, they are very nice); and it's certainly not about eating. I've taken the $535 that Movable Type would have cost me, and I've donated it to the WordPress developers.

It's not about money; it's about freedom.

I don't think "freedom" is the operative issue here, exactly. This is a much older problem with respect to a product - appropriate price points. After reading the many, many takes on this (including comments to yesterday's post), I've come to the conclusion that Six Apart probably (it's early yet; I could be wrong) misunderstand the market they are in. Their pricing indicates that they want to play at the low end of the Enterprise market - but that doesn't seem to be who's using their product right now. The problem is, by putting out their product at a low (free) price, they made it very, very difficult to move up the price chain as rapidly as they are trying to.

I have a lot of sympathy for this problem - as a Product Manager, I am involved in discussions over the pricing of our product all the time - and believe you me, it's not simple. You have to pick a price that allows you to pay your ongoing costs, or you don't stay in business. You may have costs that are too high, or prices that are too high - or the reverse. Screw this up and you limit your ability to grow, or grow too quickly without bringing in sufficient revenue. It's not an easy balance, and I think Six Apart is only just walking into this particular buzzsaw.

 Share Tweet This

tv

NBC - hand them a cluestick

May 14, 2004 18:40:38.886

The rocket scientists at NBC apparently don't want me to watch "must see TV". For the last couple of months, they've been screwing with program start times - moving them from 9 to 8:59, for instance. Why do this? To screw with people who use DVR's to record the shows, obviously. All this really does is irritate a growing proportion of their audience though The more NBC plays around like this, the less likely I am to watch any of their programming - I don't have enough time in the day to second guess them like this. Here's a clue folks: your economic model is broken. We aren't watching your ads anymore. This behavior is simply a last desperate attempt to deny reality - and the net result of it is to tick off viewers who are actively seeking your programming. Is this really who you want to cheese off?

 Share Tweet This

xp

SmallMock - Mock Objects for Smalltalk

May 15, 2004 11:13:25.998

Dave Astels has posted up SmallMock - Mock Objects for Smalltalk for download. There are versions for VW, VA, and Squeak on the site. The short description:

SmallMock is an open-source tool for creating Mock Objects in Smalltalk quickly and easily. It is similar in approach to EasyMock for Java, and comes in three flavors: VisualWorks 7.1, Squeak 3.4, and VisualAge 5.0.

Mock Objects are especially useful for testing resources whose states are hard to control, or to which access is hard to get. Mock Objects take the place of real objects for the purposes of testing some functionality that interacts with and is dependent on the real objects. There is a site dedicated to the concept: www.mockobjects.com.

This is what Dave was going to talk about at StS 2004, but he had to cancel at the last minute. Check it out and see what it's all about

Update: Posted to the public store - read the license

 Share Tweet This

development

Making things worse

May 15, 2004 23:53:32.227

It's interesting to watch the way things go with the mainstream development tools. Given a choice, they always seem to go towards higher complexity. Sun could have picked a reasonable model for generics; instead, they got their inspiration from the horror that is C++ templates. It's no better over in CLR-Ville - look at this post from Julia Lerman's Blog - VB developers are looking at the complexity of C#, and having a hard time of it. For all its warts, VB used to be relatively simple and productive. Now, it's a mass of increasing complexity forced by the rigidity of the CLR.

There have been better, more highly productive answers for years - Lisp has been around for decades, as has Smalltalk. People are discovering Python and Ruby as well... and then there's MS and Sun, wedded to complexity.

 Share Tweet This

open source

Linux in the library

May 16, 2004 8:52:41.655

Who would have thought that my county government was this daring? Normally, they are way too busy installing "Traffic Calming" devices in the road to make things worse. Via Matt Croydon comes word that the local libraries are moving to Linux for their public terminals:

(NewsForge]) Over the past year, the Howard County (Md.) Public Library has migrated more than 200 public PCs from Windows 98 and Windows NT to Linux. These PCs are used both to surf the Internet and to access the library's catalogues. NewsForge recently spoke with Brian Auger, associate director of the library, and the IT team responsible for the migration. We wanted to learn more about why and how it was accomplished, and how pleased they are with the results.

Interesting. I'd guess that licensing fees for things like Office are pretty steep for (typically cash strapped) organizations like public libraries.

 Share Tweet This

general

So much for that

May 17, 2004 1:15:00.275

Bob Congdon links to this story - which shows that the fames Dvorak keyboard is not, in fact, better than the Qwerty keyboard. Urban myth...

 Share Tweet This

blog

Actually...

May 17, 2004 8:47:14.055

Scoble takes himself to task over some blogging advice he gave to his boss:

We were talking about weblogging and he was having trouble getting going. He was scared that people might not understand, or accept his political views. I told him to take the safe road and work to not piss off his readers.

I thought about that advice all weekend long and it bothered me. It's not a healthy way to live.

That's not bad advice, but it may not work for you depending on your reasons for blogging. My blog focuses on the tech sector in general, and Smalltalk in particular. I get plenty worked up on those subjects, and I get a decent number of rocks tossed my way every time I let loose on Sun or Microsoft. On the other hand, I don't discuss politics (world/US) here at all. Why not? This is an advocacy blog, and I'm trying to put across a POV in favor of dynamic languages in general, and Smalltalk in particular. I'm not going to advance that cause by sticking my neck out on politics. It's enough for me to try and find common ground within this scope without making it harder by advocating a political position.

I suppose that some of my posts on legal matters are somewhat political, but again - I'm trying to stay within the bounds of my chosen topic area. To my mind, it's not a bad thing for a blog to have some focus, and that's the main reason I avoid the political arena.

 Share Tweet This

blog

Better Searching

May 17, 2004 14:12:03.920

I've been twiddling with the way searches work on this server for a few days. I now have a caching scheme for keyword searches - once a search is made, the results for it are cached (and new posts are checked against the cache). I scanned the logs to see what searches were being made, and pre-filled a few. I also made another change. Some searches bring back a huge number of results - and asking a browser to display hundreds (or more) doesn't work very well. At this point, any search that brings back more than 10 results will result in a page of results being shown, with links for Previous/Next added to the bottom. That makes results start coming back much more quickly.

 Share Tweet This

development

Forward to the rear

May 17, 2004 15:51:57.014

MS to Developers: Someday, you too can be productive. Not soon, mind you, but someday. Maybe. If we get around to it. In the meantime, pay no attention to the fact that this "edit and continue" stuff is old hat for the more advanced systems out there

 Share Tweet This

itNews

Cincom's President nominated for award

May 17, 2004 16:45:30.380

Cincom's CEO, Tom Nies, has been nominated for the [2004 Technology Entrepreneur of the Year Award:

Tom Nies of Cincom Systems, Inc., the longest-serving CEO in the computer industry and hailed by former President Ronald Reagan as the epitome of the entrepreneurial spirit of American business, has been selected as a finalist in the technology category of the 2004 Ernst & Young Entrepreneur of the Year® program.

The Ernst & Young Entrepreneur of the Year program is the world's most prestigious business award for entrepreneurs. Recognized globally, the award honors the most outstanding entrepreneurs who inspire others with their vision, leadership, and achievement.

 Share Tweet This

java

More lost productivity

May 17, 2004 20:56:40.948

Charles Miller points out that Java's type system is stupid even if you like static typing:

A good way to get an idea of how stupid Java's type system is, is to use a modern Java IDE for a while. Start using IDEA's intention actions, and see just how often IDEA knows what the type of an object is going to be before you bother to assign it a type, or make a cast. Every time you ask the IDE to assign a cast, create a field or iterate over a collection and you select the default value, you're telling the compiler something that IDEA was smart enough to know already.

And with 1.5 and the introduction of generics, the type system is getting even stupider, giving you more and more places where you have to tell the compiler what types to expect because it's too stupid to work it out for itself. Even though the IDEs are smart enough to do this, it's still annoying and disruptive for the programmer to have to make the context switch and alt-enter a cast into place. I'd much prefer Java itself was better able to this sort of stuff itself

In the church of complexity, more is always better...

 Share Tweet This

food

Hot Sauces

May 17, 2004 21:06:42.705

This evening I made fajitas for dinner - and I added 1 (yes, that's one) drop of this stuff to my fajita sauce. I used the "Beyond Insanity" one - it's rated at 119,700 Scoville units. As I write this, the tip of my nose - which I rubbed after getting the sauce on my fingers - feels slightly burned. Now, the really insane thing is that there are hotter sauces in this line... like "Da Bomb - The Final Answer". It weighs in at 1,500,000 Scoville units. You have to love a product that comes with a warning like this:

Da' Bomb The Final Answer - The hottest of all of the Da' Bomb line. Rated at 1,500,000 Scoville Units. Not for direct consumption, use as a food additive only. Warning: Do NOT eat straight out of the jar!

I think I'll have to order some of that...

 Share Tweet This

itNews

Secure? What?

May 17, 2004 21:15:40.754

ArcterJournal points us to this fascinating message. MS says that Outlook 2003 is "secure by default". I think this counts as oops. Go read it and weep - and then find a different mail client....

 Share Tweet This

smalltalk

Productivity

May 17, 2004 22:31:04.389

Earlier today, I commented Edit and Continue in the context of the MS tools and languages. I should explain what I meant when I called Smalltalk a more productive environment. I'll use a simple example - a small class Counter, with a single instance variable - count, and a couple of API methods:


Smalltalk.Demo defineClass: #Counter
	superclass: #{UI.Model}
	indexedType: #none
	private: false
	instanceVariableNames: 'count '
	classInstanceVariableNames: ''
	imports: ''
	category: 'Demo'


addOne
	self count: self count + 1

subtractOne
	self count: self count - 1

I'll add a very simple UI so that you can get an idea of what I'm talking about:

Ok, so we have a simple UI, a simple counter. Now, with the UI running (which means that an instance of our domain model, the Counter class has been instantiated), let's make a change - I'll change the #addOne method like this:


addOne
	self count: self count + 10

Ok, it's a silly change. But when we press the 'Add' button, we get the change immediately, in the running application:

That seems like a small thing, until you step back and think about it for a moment - this is exactly how I update this server. In fact, it's how I updated the search facility this afternoon. Ok, but what about edit and continue? Well, I'll toss a breakpoint into the changed method and press the 'Add' button again:

I change the method back to the original code, adding just one - and I get a result of 11. This is what Smalltalk has given you for decades - and it gets better - I can do more than modify just that one method, I can rewind the stack and modify any method, and restart from there. I've done this with the blog server as well, using X11 over SSH. This is the kind of thing that MS says they'll provide in a limited form for C# someday. Mind you, you don't need to have a breakpoint set to jump into a debugger - any unhandled exception tosses you there as well (extremely helpful during development). In fact, it's not uncommon for a Smalltalk developer to create a basic shell of a set of code, and then build out the code from inside the debugger. This allows us to use Smalltalk inspectors, and have the entire object model exposed to us as we develop. To a Smalltalker, objects aren't dead text fields - they are putty in our hands to be shapped and molded. That's what productivity looks like.

 Share Tweet This

development

More on Final

May 18, 2004 8:32:38.748

Gary Short links to Eric Gunnerson discussing the whole idea of sealing classes. The long and short of it - Eric thinks that library designers know everything and that one of the primary jobs is to protect those dumb application developers. There's just no telling what they might do if we let them.

My reasons have everything to do with predictability and robustness. If you can't conceive of a user extending your class in a specific way but still choose to provide such extensibility, then it's pretty clear that you don't have an extension scenario in mind, which means that neither your code nor your tests are likely to ensure that it does work - especially across versions. Sure, it's possible that it may work in the current version, and may even continue to work in future versions, but I wouldn't call it a supported scenario. I'd prefer to use classes where I know what I'm doing is supported.

The second issue is around understandability. If I walk up to a class (in the metaphorical sense, of course, you can't really 1Cwalk up 1D to a class) and it has 29 virtual methods, it's hard for me to tell whether the author *intended* me to extend the class through a certain method or set of methods, or whether they just left them virtual 1Cjust in case 1D. Where if a class only has one (or a small number) of virtual methods, that's a good indication that the designer wants me to use them (ie they're part of a supported scenario).

So, if I (as the application developer) can't see the author's intent, I shouldn't be allowed to subclass? I'm sorry, but that's just stupid. Yeah, that's the word I want. Who's in the better position to determine what needs to be done on a project - the application developer (who's actually there and sees the problem first hand), or the library designer, who likely built the set of classes in question in isolation? According to Gunnerson, the library designer has a better viewpoint on this - and gosh forbid I put the code to any use but the one that the original designer intended. Better to build a brand new set of classes than question the original design. This kind of thinking makes me wonder.... a lot.

 Share Tweet This

StS2004

Next StS

May 18, 2004 12:23:42.768

We are going to have a survey up shortly asking for feedback on this year's show - I'll post a link to it as soon as we get it finalized. In the meantime, we are starting to discuss where to have next year's show. Nothing's finalized about that yet - we are in preliminary discussions at this point. We would like to make an earlier announcement than we did this time around, so as to let people make plans earlier. Any feedback from the community as to places that would attract/repel you from StS 2005 would be great - let us know now.

 Share Tweet This

food

Hotter Sauces

May 18, 2004 12:30:20.015

I posted yesterday on hot sauces - now I've just run across this list of the hottest sauces. Wow - the "Da Bomb, Beyond Insanity" I have is rated at 119,700 Scoville Units. So check out the madness here:

New - started shipping late September 2003. These Incredible bottles are filled with Earth Shattering Pure Pepper Resin Ranging from a low of 10.3 million Scoville units to ...Are you Ready......16 million

This is Pure Capsicum crystal. You can see it inside the bottle.......Due to the unique nature and and the fact that Blair made only 80 oz of Pepper resin at a time, each batch Does vary. Only 999 will be made, each numbered. As this is pure Capsicum - it's impossible to get any hotter

Whoa - that's just crazy :)

 Share Tweet This

cst

Improving the Browser

May 18, 2004 17:47:57.787

Travis Griggs points to a truly useful addition to VW.

 Share Tweet This

tv

Wow - DVR's make people happy

May 18, 2004 18:00:50.349

The Pomo Blog has some fascinating survey data on how people report their TV viewing experience pre-DVR and post-DVR:

Satisfaction With TV Viewing Before/After Acquiring DVR

Satisfaction Level Before After
Extremely Satisfied 7% 72%
Somewhat Satisfied 34% 12%
Neutral 30% 6%
Somewhat Dissatisfied 21% 2%
Extremely Dissatisfied 7% 8%

This tracks how it went for us after we got the ReplayTV devices. We never miss stuff we want to watch, we find a lot of things we wouldn't have found otherwise, and we never feel like we need to sit down on a schedule chosen by someone else. It's made out viewing much more enjoyable.

 Share Tweet This

development

MS thoughts on Edit and Continue

May 18, 2004 22:37:22.579

I just stumbled across this post from one of the MS C# guys on "Edit and Continue" - you know, what we've had in the Smalltalk debugger since the beginning. Just read the way these guys think about this style of development, especially with regards to their "metaphor developers":

The posts themselves are fairly reasonable, but some of the comments to these posts are just astonishing - this came out in the comments to "Einstein":

Unfortunately, a lot of .NET developers are new to this game. Why should we encourage bad habits? I'm sure the Einsteins out there wouldn't mind not having E&C.

That's right campers, some of these folks hear the sound of productivity approaching and they run from it!

 Share Tweet This

spam

Spam is a Tragedy of the Commons

May 19, 2004 8:55:34.007

CNet News has an interesting take on spam - it's a tragedy of the commons problem. i.e. - Email addresses are a "commonly held" thing (not an individual property - and things in that state tend to erode:

Users' claims on rights--be they rights of privacy or rights of use or protection--are currently pretty weak and based more on expectation and assumed common understanding than any law or fixed structure. This leaves individual users and their e-mail unprotected and uncared for. Not a good place to be. Without individual users, the Internet is meaningless. No matter how much money is invested in the global network, it's worthless without users.

Interesting take on the issue, and I think it's on the mark. Right now, the cost to spammers - whether we are speaking about dollar costs or legal costs - is pretty much zero. Until that changes, the volume of spam isn't going to go down.

 Share Tweet This

smalltalk

Up All the time

May 19, 2004 9:34:52.461

After I explained the process of runtime modification, I found this post from a .NET developer, who wishes he could do this. The easiest thing to do is to download Cincom Smalltalk NC and take a look at it as a possibility for future projects. Especially on web projects, integration of disparate products is pretty easy - the Cincom website is running things as diverse as Smalltalk, Java, and ASP.

 Share Tweet This

marketing

How not to market

May 19, 2004 13:21:49.081

Remember when MS had people (commonly called shills on USENET) posting anonymously, pretending to be neutral outsiders - that did damage to MS' credibility (and arguably, they are still recovering from that image-wise). Well, now there's word that the JBOSS folks have been up to the same thing.

 Share Tweet This

general

Ward on Wikis

May 19, 2004 13:28:18.192

Via UnknownReference comes this link to MS' Channel 9 site, with a video interview of Ward Cunningham on the history of the Wiki.

 Share Tweet This

smalltalk

Interesting LtU thread on messages and messaging

May 19, 2004 13:29:55.842

That would be messages in the context of OO messages. Start at the top here and keep going. The comments from Patrick Logan alone make the thread worth reading

 Share Tweet This

marketing

Whoa - secret marketing

May 19, 2004 13:48:01.249

Via Scoble comes this link to secret marketing campaigns. Fascinating tactics.

 Share Tweet This

sports

ESPN Feeds

May 19, 2004 14:23:43.667

Via Dave Winer - ESPN now has feeds. I'm subscribed to the MLB feed. Now, if the Yankees would give me a feed...

 Share Tweet This

marketing

Software values

May 19, 2004 14:38:48.089

Mark Bernstein does a great job of explaining the value of software:

The only thing I expect, if I'm paying $700 for a software package, is that it be worth $700. If I buy a $700 program, and it promptly saves me $750, I'm as happy as a clam.

To illustrate this, he uses an example:

You want software that gives you the best return on your time and your money, the software that lets you get things done. If we're talking about software you use all the time -- weblog software, writing tools, personal information assistants -- the acquisition cost is nearly irrelevant.

Professor Clump works at Miskatonic University. She earns $65,000/year, and the University pays about $70,000/year for her office, facilities, support staff, benefits, and perks. She spends about 30 minutes a day, writing her weblog. What does her weblog cost? About $12,000/year.

Tom Clump, boy scientist, thinks that's a silly way to compute this. 'If Mom didn't have tenure', he says, 'she'd be bagging groceries.' (Tom, having been grounded after his science experiment burned a hole in the bedroom floor, does not hold his Mom in high esteem at present.) 180 hours at the local Museum of Fruits and Vegetables will earn Tom, or his mother, about$1,375.

Read the whole thing - it's a great post.

 Share Tweet This

tv

Star Trek - boldly going where shows are sent to die

May 19, 2004 17:40:30.413

"Enterprise" will return for a 4th year - but likely on Friday nights, the graveyard of TV shows....

 Share Tweet This
-->