Happy New Year!
From my daughter:

As sure as the sun rising is impedance mismatch in the development world. Ted Neward explains:
XML will start to lose its luster. People are finally beginning to see the object-hierarchical impedance mismatch, and realize that "objects" and "XML" don't, in fact, go together like peanut butter and chocolate. More like apple cider and wine, if you ask me. XML will continue to be in demand, but on its own, as a data format, rather than as "another way to express an object".
As if relational databases weren't enough, now we have trees to deal with :)
Update - Dare Obsanjo posts on the same topic
Dave Winer has set up an interesting ranking service - you upload an OPML export of the things you read in you aggregator, and the site creates rankings. It's early days on this; thus far, only 15 submissions have been ranked here. I just uploaded my BottomFeeder aggregation list; go ahead and submit yours.
My readers know that I like boardgames - I mention Puerto Rico often enough. I used to be an avid role player as well - I went so far as to create my own rule and magic system for a game I ran for a number of years. With that in mind, it's just infuriating to watch the madness at Hasbro.
Here's a company that purchased Avalon Hill a few years ago. In the wake of that, they discontinued the vast majority of AH games. That purchase ticked off quite a few gamers I know - including me. It was also a stupid move. Hasbro was selling mass market family games. AH was selling niche strategy games. The cross-over between the two market segments was virtually nil, and yet - there they went, buying it up - and closing it down. That yielded them a bunch of bad word of mouth, and no real gain in sales. I'd love to ask the genius at Hasbro who came up with the idea just what they heck he was thinking. But it gets worse.
Hasbro also bought up Wizards of the Coast, which itself had bought TSR - makers of D&D. Wizards of the Coast had started putting up some nice game shops, which stocked a large selection of role playing games, and a large selection of strategy games. So what did Hasbro do?
This last one has to be looked at specifically. My friends and I play a lot of strategy board games - we play at least once, sometimes twice a week. So we - and people like us - will regularly drop a good deal of money when we go to a game store and shop. Are we buying things like Cranium? Maybe, but are we buying it at Wizards? Heck no, we buy that sort of thing at Toys R Us, Target, and WalMart - just like everyone else. The target audience for mass market games was never going to walk into a Wizards store; the committed gamers were. That is, until they eliminated most of the games we buy. At that point, we started going to Funagain to buy what we were interested in.
The upshot of all this? Hasbro is closing down Wizards of the Coast retail stores. Now, why is that?
is it really that big a surprise that it hasn't worked out? This sort of thing happens in all sectors - IT, retail, you name it. It happens when senior managers who don't understand market segmentation decide to expand their business through rapid buying. It continues when the same management is stunned at how badly it goes, and finishes when they end up closing down the thing they bought. I watched this at ParcPlace, where management bought and killed, VSE. I watched it with FAO Schwartz, where they bought, and have now killed, Zany Brainy. I'm seeing it again with Hasbro and their stupid purchases.
Seemingly, an awful lot of companies need a CSO - a Chief Slapping Officer. What would that person's job be? To slap the CEO every time he decides to buy a company...
Keith Ray relays some interesting news:
Quoting Business Week Online:
Six months ago, I could find high-level programmers in India willing work for $15 an hour, vs. the $100-plus an hour I was paying Americans for the same work. In only six months, that rate has climbed to $25 an hour in India, while my domestic rates have dropped to around $35-$50. On the last project I bid out, two proposals from India came in higher than domestic contractors. Admittedly, I'm in a very small sector of the larger market, and it's too soon to tell even here whether the trend will last, but I've heard similar reports from other businesses (see BW Online, 12/2/03, "U.S. Programmers at Overseas Salaries").
Not a big surprise - India's tech boom has been going like the pre-2000 bubble here - and that sort of thing pushes salaries up quickly as companies compete for the same pool of existing talent. Sure, there are other places offshoring can go, but the same pattern is likely to be repeated.
The Pomo blog links to an interesting story on TV - the sweeps periods are likely to end:
"Within two years, sweeps aren't going to exist," Zucker predicts. "When you're doing (year-round programming), it just doesn't make sense to save all your big programming for three four-week periods."
You can see what's been driving this - there are lots of new shows popping up on cable - the SciFi channel, HBO, Showtime (etc) - and they don't always follow the traditional fall to spring schedule. The major networks, bleeding viewers as the number of choices has expanded - and soon to bleed advertisers as time shifting (ReplayTV, TiVo, etc) simply had to wake up to the changes sooner or later. In particular, if you sell lots of advertising during a specific 2-4 week period, and vast parts of your audience opt out of the ads via time shifting, then you have a problem. You can see the dawning realization of that here:
..."Undoubtedly, advertisers at some point are going to be unwilling to pay more for less," (Fox president Sandy) Grushow said. "Networks have got to figure out a way to open an alternative revenue stream."
Now, this isn't going to be limited to TV. Listen to marketing folks wax lyrical about your website, and you'll find that they want to track visitors, get visitors to stay around... not a lot different from what the tv guys want. There are a number of forces working against that - the sheer volume of available "channels" on the web, and the increase in syndication (RSS/Atom). Over the next few years, a significant number of web users are going to start preferring (and voting with their mice) syndicated content, tuned specifically to their interests. That's an opportunity, not a problem - but as with TV execs, watch an awful lot of marketing execs rage against it, as they struggle to make the (increasingly less relevant) home page more compelling
Via Instapundit I found this talk by Michael Crichton - where he talks about the difference between hard science and faith:
The Drake equation cannot be tested and therefore SETI is not science. SETI is unquestionably a religion. Faith is defined as the firm belief in something for which there is no proof. The belief that the Koran is the word of God is a matter of faith. The belief that God created the universe in seven days is a matter of faith. The belief that there are other life forms in the universe is a matter of faith. There is not a single shred of evidence for any other life forms, and in forty years of searching, none has been discovered. There is absolutely no evidentiary reason to maintain this belief. SETI is a religion.
That's the sort of statement that a lot of people are going to argue with, but I see little wrong with his analysis - go read the article and look at the Drake equation. Once you realize that none of the terms are known, you see where he's coming from. While you read the rest of the article, you simply have to set your political beliefs aside. Evaluate what Crichton says, not what you think the political effects of what he says are or should be. Hard to do, but go ahead and try
Let me use that as a way to pivot over to an only slightly related topic - business strategy. take a look at how the company you work for makes decisions. How many of us work for companies that rely more on leaps of intuition than on actual facts and data? This isn't to say that intuition plays no part in business or marketing; clearly, it does - else new markets would never get created. On the other hand, most of what we do every day could be improved - a lot - by actually looking at real data. Instead, what do we do?
Do we ever stop to think whether the analyst report or the bandwagon make sense for our business given what we know (via actual data) about our customers and prospects? Based simply on this post from yesterday, I'd say we very often don't. We make uninformed decisions based on herd behavior, rather than actually posing thoughtful questions about how and why - i.e., how will a given direction help us, and why are we making that decision if we don't know?
The internet bubble of the late 90's was only the best example of this in recent memory - the failures of companies like Hasbro and Fao Schwartz similar, but more recent. The rate of failure in the IT sector is another example - tons of IT shops engage in herd behavior without once asking what the actual benefits might be - how many Java conversions were done over the last 7 years that actually delivered a quantifiable business benefit, for instance? I'd guess very few.
Go ahead and read Crichton's article, and then apply the same thinking to the way your company makes decisions. I'd be willing to bet that there's more magical thinking out there than any of us would like to admit
Clarence Westberg points to a very handy looking device - a simple backup server that you set up, configure a bit, and leave alone.
Scoble enages in some premature optimization - I followed his suggestion here:
Want to see the difference weblog optimization makes? Open my weblog and then compare the time it takes to open it when compared with Sean and Scott's weblog, which also is done in Radio UserLand. Now, look at their code. First off, they have indents in their code that are done with spaces. Get rid of the indents and you save 5% or more on file sizes. Then, look at all the MS Office stuff.
A 5% size differential just disappears into the haze of lag on the internet. Maybe it makes a difference for the (ever smaller) dialup users - most of whom aren't reading Scoble's blog, I'd guess :) I can't see any page loading difference at all on my end, using comcast cable modem service.
This all points to one of the mistakes that is very, very easy to make in software systems - premature optimization. You should never assume that you know what the problem is; instead, you should actually test it out. Back when I was a consultant, I can't count the number of times I ran into this:
Check first, then optimize. Otherwise, you might well optimize the wrong thing.
Doc Searls is getting the same referer crap from Starprose that I've been seeing. It looked like a dreadfully boring website (like Doc, most of the referer spam I see is porn related). Now, Doc tells us that the spam is originating from Joe Lieberman's official campaign site. Now, my apache logs arent giving me the specifics that doc's getting; here's what he's got:
aca3cc09.ipt.aol.com - - [02/Jan/2004:18:50:27 -0800] "HEAD / HTTP/1.1" 200 0 "http://joe2004.com/?starprose" "StarProse Referrer Advertising System 2004"
That's slimy. I'd be turned off by a product that pulls that kind of stunt, and politics is nothing if not product placement. I'm not much caring for the strategy...
Scott Johnson links to an IBM developerWorks article on RSS. It's a pretty good summary, even if they didn't mention BottomFeeder :)
Smalltalker and XP guy Joseph Pelrine has a blog. Subscribe to his feed here.
I've said before that Web Services is this decade's version of CORBA. Now Bob Martin Chimes in with the same point.
David Buck explains why some "laws of development" (in this case, the Law of Demeter) should not always be followed strictly. It's important to know when rules need to be followed; it's even more important to know when they should not be.
If you have been following the dev stream updates to BottomFeeder (the VW 7.2 based version), you've seen a lot of updates over the last couple of weeks. I've been working on some font encoding issues - and lately - integrating with the newer revs of Twoflower. Holger has been adding some features, and some of the changes are related to that. The upshot of this, from your perspective, has been to see some older items re-appearing as new. That's likely settled down now, but there will be additional changes as Twoflower evolves.
Found on madbean - how software developers will end the world:
"The most likely way for the world to be destroyed, most experts agree, is by accident. That's where we come in; we're computer professionals. We cause accidents."
Nathaniel Borenstein
heh. I find that terribly amusing...
Update: I love this one, being a Product Manager
"There is probably no job on earth for which an ability to believe six impossible things before breakfast is more of a requirement than software project management."
hehe
Don Park passes on some foolish thoughts on piracy:
Nick has no innate right to have people pay for his software, just as I have no right to ask people to pay for use of my name.
Even if he did, most people who pirate his software probably would never use it anyway, so they aren't costing him any money and they're providing him with free advertising.
Don derides this rather simplistic attitude with exactly the right thought: So what if I burnt a house down? No one got hurt! Don's right - this is the slippery slope to hell. And heck, it doesn't event work on the vaguely utilitarian grounds advocated - if you don't pay the craftsman for his work, how much more work do you suppose he'll do?
Update: Dare Obsanjo responds to Aaron. Very nice wrap up by Dare
Dare Obasanjo has two posts on non-reproducible problems. I identify with this one - I get bug reports about BottomFeeder that I can't reproduce on a semi-regular basis. It's very frustrating when you know that someone can't make use of something you built - and you can't really see what the problem is first hand.
Derek has another wonderful customer service experience. How many of us work for outfits that find it easier to lose an existing customer than retain an existing customer - for reasons painfully similar to the ones Derek outlines?
Someone has to pick up the dead:
Amid rising hopes for a high-tech turnaround, there's this sobering sign: Martin Pichinson -- a man who has buried nearly 150 failed startups since 1999 -- has swooped into Silicon Valley like a vulture lurking over a pack of wounded animals.
Pichinson, a self-described "doctor of reality" who helps liquidate companies, says he wouldn't have moved from Los Angeles to Palo Alto a few months ago had he not smelled more high-tech trouble looming.
Sobering reminder that most startups do not have happy endings...
There's been some discussion in the various RSS mailing lists and sites regarding single click feed subscription. It's been centering around a new "protocol" tag:
feed:urlToFeedGoesHere
Would subscribe to the feed in question, just as mailto: spawns the mail client. I've got this working in test, on Windows, here. I need to have the installer for Bf make the relevant registry entries, and see if I can't have the runtime check for (and install) those itself (or offer to). I'll have to look into what's possible on non-Windows platforms.
Looks like Lieberman isn't the only guilty party - now Carol Mosely Braun has her net people creating referer spam to my blog. Who do these bozos think they are impressing? Given the subject matter of this blog, such a referral isn't terribly likely...
Stéphane Ducasse has been collecting Smalltalk books and putting them up online. Visit and say hi!
Keith Ray points to an article by Dave Thomas tracing the history of Smalltalk. It's dated (speaks about ParcPlace in the present tense!) - but provides some useful background info
Joseph Pelrine will be giving a talk in Berne, Switzerland on cross-dialect Smalltalk work on Tuesday January 13th at 5:15 pm:
"Smalltalkers are friends separated by a common language". One of the unfortunate side-effects of Smalltalk's popularity in the 90's is the plethora of more-or-less incompatible dialects. The ANSI standard and Camp Smalltalk notwithstanding, it still happens too often that high quality, existing code does not get reused because it's only available in one dialect or version, and the pain of porting often outweighs the benefits.
This talk will describe a number of state-of-the-art techniques being used in Camp Smalltalk and other projects to increase cross-dialect compatibility and assist migration between existing Smalltalk implementations. Demos will include moving code from VisualAge to S#, and using ENVY/Developer with VisualWorks 7 and Squeak.
The talk will be held at the IAM, room 107
Interesting topic
Joi Ito has an idealistic (and wrong) set of ideas about blogging:
To finally tie it into the discussion about technological determinism vs social constructivism, I think we need to be aware that we have an active effect on how the architecture of this technology evolves. I don't think we can yet "show the blogging world to be a just institutional structure", but rather we can try to determine what is just and strive to make the blogging world into something we feel is just. This requires us to dive into some of the questions that even Aristotle didn't answer. What is right? What is just? Hopefully the tools themselves will help guide this discussion, but rather than be nihilistic or deterministic, I think we should be actively involved in a dialog that best represents a consensus of our views. In order for this to be just, we must try be as inclusive as possible of everyone and on this I agree with danah. The tool is not yet inclusive. I think that blogs are right in many ways, but are far from right in many others. How can we try to make blogs as right and just as possible. I think that this is the question that faces us today.
Blogging and justice? Good gosh, this is the same ridiculous elevation that journalists give themselves. Blogging just is - whether a given blog is "right" or "just" depends on the author, not on the technology. The only thing to worry about is free expression - and there's not much on the technological side of things to deal with there. Sure, technology can be applied for good or ill. But that's the point - the application. It's the voices that matter, not how they got there.
Over the last twelve to eighteen months, a new kind of website has emerged - the web log (or blog, as they are often called). If blogging has a father, it would be Dave Winer, of Scripting News. Dave started Scripting News back in'97, before anyone had really coined the term blog. Over the next few years, blog syndication (RSS), news aggregation tools, and blog servers were born. This field is still in its early days - there are lots of small companies (such as Six Apart) creating tools, but no offerings (yet) from any of the large vendors, such as Microsoft, Oracle, etc. The questions I'll try to answer here are:
Briefly, a weblog is an online journal, typically focused on some topic. Most weblogs are authored by one person, although there are collaborative efforts. Most weblogs focus on a topic or set of topics - i.e., politics, some aspect of technology, marketing, etc. The main visible difference between a web log and a "normal" website is that the web log will get updated much more regularly - often more than once per day. Additionally, most web logs use an XML format (either RSS or Atom, or both) to syndicate their content. What does that mean? It means that you can use a news aggregator (there's a nice list of available ones at http://www.hebig.org/blogs/archives/main/000877.php) to subscribe to the content being produced. The aggregator will check for new updates in the background, allowing you to keep track of content you care about without having to keep an enormous list of bookmarks in your browser. Ultimately, a web log is like a journal, and there are tools that allow you to subscribe to the journal. Some web logs are interactive (allowing comments from readers) - but an up tick in spam comments is shutting a lot of that down.
That gives you an idea of what a web log is. The question then becomes, why should you care? I'm going to limit my answer to the realm of product and services companies here - blogging on politics, religion, philosophy (any non-business topic) is outside the scope of this article. With that in mind, why you should care is fairly simple - marketing and outreach. It's nearly always the case that you could stand more interest in, and more knowledge of, your products and services. As the Product Manager for Cincom Smalltalk, I'm certainly in that position. I'm responsible for a niche product in a fairly crowded space (application development and delivery platforms), and getting more awareness of Cincom Smalltalk out is clearly a good thing. There are standard marketing answers for some of that - advertising, speaking at trade shows, customer success stories, etc. You still need to do all of those things, but everyone else is doing them as well, and many of your competitors - like mine - have bigger budgets for these things. Having a web log presence is one way to route around that.
How does creating a public blog help in that regard? Well, that depends on how you run the blog. Simply creating a thing that looks like a blog and filling it with marketing press releases isn't going to cut it. Blog readers are looking for authentic voices - they can find pre-processed marketing fluff anywhere. There are also (literally) millions of blogs; I subscribe to over 200 of them myself. When I look at new content to subscribe to, I'm not interested in press releases; I'm interested in actual viewpoints from real people. As it turns out, there are many to choose from - some in (seemingly) the least likely places. Microsoft has taken to blogging in a big way, and many of their project managers and product managers are online now - have a look here:
http://www.microsoft-watch.com/article2/0,4248,933657,00.asp
It's instructive as well to look at Robert Scoble's blog
Scoble was hired by Microsoft as a marketing evangelist - and a large part of his pull that way is his blog. While he doesn't limit himself to MS topics, he posts about MS a lot. The impact of that (and of his fellow MS bloggers) is huge - it's placing a human face on the borg image of Microsoft.
Now, not all (or even most) companies have a need to modify parts of their public image to the same extent as Microsoft does. On the other hand, getting the word out to an interested audience is something we could all use. Let's go to my blog as an example. I started running the blog in the summer of 2002. At the time, I had no idea whether it would lead to anything useful. Over the first few months, I was getting on the order of a dozen visits a day - in other words, it was having no impact. Now, in January of 2004, I'm getting between 1000 and 3000 visitors a day - how did I manage that without any marketing budget?
Those two things alone started driving the number of visitors up tremendously. That's a good thing, but - how is it helping the Cincom Smalltalk business? Well, we offer Cincom Smalltalk as a free download (for non-commercial purposes). I've promoted that fact on my blog, and have promoted the free BottomFeeder tool as an example of a Cincom Smalltalk application. I've been receiving a steady (and increasing) number of inquiries about Cincom Smalltalk in my email as a result, as well as an increase in the number of downloads of the product. There have been a few sales of the product that I can trace back to conversations started on my blog. In other words, my blog has become a low cost marketing channel for the product.
It's important to keep in mind that this requires work. Coming up with interesting content on a regular basis is not easy. It's part of my job as product manager - blogging (and reading other blogs and journals) helps keep me current, and gives me plenty of fodder for posting. Creating original content to post is hard work, and it's something you need to do on an ongoing basis. Another important thing is focus - your blog should not wander over too wide a stream of topics. What you are looking for is an audience that will be interested in what you have to say - and as a side effect - interested in your products and/or services. That doesn't mean that every post needs to be specifically about your product, but it does mean that you should limit yourself to a few areas. I avoid politics and religion, for instance - it's hard enough to evangelize a product without trying to be a spokesman for a political point of view. Not to mention the fact that some of your customers are likely to have different political views than you - their money will still pay the bills.
Should you start a blog, or allow employees to run them? I think you want to jump into the water on this one soon. It's easy to get started - blog serving software can be had free or cheap (take a look at Blogger or at MovableType), for example. You can either host a blog, or start out with a free Blogger account. There's something to keep in mind though:
This is already true, of course - a document on your website will be cached by Google (et. al.) eventually. The difference with a blog is the notification. If you use the various notification schemes (like the weblogs.com one that I alluded to above) in order to increase awareness of your blog, the caching will be immediate. The upside of this is that your words will spread far and wide quickly. Yes, you have to be careful - but there's no reward without risk. Can you afford to have everyone else blabbing about their products while you keep yours in the shadows?
Sun is trying to create a "standard" tools framework for Java - IBM (maker's of Eclipse) is not interested. Here's the clueless part:
"Eclipse wants to be the framework for all tools. Oracle disagrees with that," said Ted Farrell, chief architect and director of strategy for Oracle's tools division. "There should be a common API (application programming interface) so people can plug into all frameworks easily."
A common API "for all frameworks"? What the heck is he smoking? Maybe Sun and Oracle will find the OMG as they search - the OMG was last seen creating CORBA extensions that no one cared about....
Dan Ingalls has an embedded Squeak system available:
Fellow Smalltalkers -
I have a fledgeling company that sells a weather station I designed in Squeak. To make it a real product, I had to come up with a low-cost processor that runs Squeak acceptably. Finally last year I found one based on the Mini-ITX board that looked promising. I engaged Michael Rueger and Ian Piumarta to come up with a compact Linux capable of supporting Squeak, and that could be booted from Compact Flash, and we now have what is effectively an embedded Squeak machine. I've negotiated with my supplier (for weather stations) for a "Squeak Box" configuration at a special price. Since it's a cool thing, I thought I'd let people know in the wider Smalltalk community.
The price is $250 (I get none of this). After unwrapping you get...
A black box that is just the right size for an LCD display stand (1.75"x9"x11.5"). Also a 12v power supply that plugs into the wall. Inside is a 533MHz VIA Mini-ITX motherboard with 64M of memory installed. There are no fans in the box, and it still stays cool. On the front is a slot that accepts a compact flash card, which appears to the processor as an IDE disk drive. The Squeak PC is shipped with a 96M flash card installed which includes
- A compact Linux 2.4 boot system,
- A full Squeak 3.6 (plus OSProcess and Games) with Linux VM, and
- about 60MB of free space
On the back is a host of connectors that include stereo audio in and out, network, 2 USB, RS232, mouse, keyboard, display, video and printer port.
The unit is complete and ready to boot. All you add is keyboard, mouse and display. With no fans and no disk, the only moving parts are the boot button and the electrons -- it is *silent*. The 12v setup is nice, since you can get UPS for the price of a battery, or power it straight from your car (it draws about 1 amp).
The supplier is SolarPC.com. They make a specialty of Mini-ITX products. Check out their web site at http://www.SolarPC.com and motherboard details at http://www.solarpc.com/bepia.htm.
There is an order page at http://205.147.44.194/store/commerce.cgi?product=SolarPC. The Squeak configuration is at the bottom of the page.
The Flash is set up for Squeak but, of course, it could be anything else that is happy with this Linux. Other squeak images should run fine (you can import them via FTP, or a USB memory stick), and other compact Linux-compatible systems should run fine as well. Of course you can put in more memory, and use bigger Flash or even a hard drive, but we wanted to make the Squeak Box simple and cheap. We have started a Swiki area on this (see http://minnow.cc.gatech.edu/squeak/3502), and presumably it will grow as people think of more things to do with the box.
Happy New Year
Dan
Nifty
Via Ted Neward comes this lovely bit from the Shark Tank. Read it and weep :)
As if it's not enough that the RIAA wants to make it impossible to listen to music in any way other than over-priced CD's, now they are creating referer spam. Like I'd ever want to know what those bozos have to say...
Ted Leung looks at conditional get. The blog server we use here is mine, with some (slightly dated) information here. Now, the interesting thing is that Ted shows my RSS feed as not producing 304 (not changed). Hmm. This server simply drops a new version of the feeds whenever there are additions or updates, so the files in question are served by Apache. Here's the relevant header info (before this post went live):
| last-modified | Wed, 7 Jan 2004 00:50:55 -0500 |
| etag | "2e2a75-ace1-3ffb9e3f" |
| server | Apache-AdvancedExtranetServer/1.3.23..... |
The html part of the page is served by Smalltalk, and the feeds are created by Smalltalk - but they are simply static pages served up by Apache. I just ran a test using the libraries BottomFeeder uses for Http access, and sure enough - I get back a 304 on successive queries. I suspect that NetNewsWire isn't actually making use of conditional-get, at least not in Ted's tests
Charles Miller finds seven different StringUtil classes in his Java project - as opposed to the one String class in my Smalltalk project. Why? Because I can directly extend String. Here's the part I find interesting:
Today, I found myself wanting to do a pretty basic String operation that wasn't on the main class, so I sent IDEA ooff hunting and there were seven classes in my Classpath called either StringUtil or StringUtils, all of them from different projects.
So I wrote the method myself. Finding the one I should have been using amongst that lot was just too much effort :)
Just one more reason why there tends to be less duplication in Smalltalk; things go where they belong...
Jon Udell notes that the Enterprise players - Sun, MS, etc. - still aren't paying attention to dynamic languages:
We hoped 2003 would bring a rapprochement between the dominant enterprise VMs, Java and .Net, and the dynamic-language VMs that are still in many ways well-kept secrets. That mostly didn't happen. At the JavaOne 2003 technical keynote in June there was a nod in the direction of JSR (Java Specification Request) 223, which would enable languages such as PHP to be used in the Java Web tier. But the stewards of the enterprise VMs still aren't pushing to integrate them with the popular and productive dynamic-language VMs.
Jython, the Java/Python hybrid, has a growing cult following, but isn't on Sun's radar screen. Microsoft has yet to deliver on its early promises to make dynamic languages first-class citizens of the CLR. Here's hoping that the many VMs that flourished in 2003 will work better together in 2004. (Full story at InfoWorld.com - part of 2004 Technology of the Year)
The big boys are still trapped in group-think mode, where of course we need static typing....
The trade rags are confused by the proliferation of Java related "standards" bodies:
Developers, not to mention journalists, must have their heads spinning trying to decipher the differences between these three outfits. Evidence of the confusion was witnessed during a press conference call Tuesday, when it was noted that a perception exists, incorrectly, that Eclipse is working on its own variation of Java.
reminds me of the old army axiom - "Any order that can be misunderstood, will be misunderstood"
The Cincom Smalltalk online tutorials have been updated to reflect changes in VisualWorks 7.2. Check them out today, and download the NC
Someone hand Michael Nascimento Santos a Smalltalk system, and show him how exceptions predate Java. Since he's just seeing that CheckedExceptions can be a problem, this could be enlightening:
I would like to point out, though, that it is very easy to speak about something that was conceived almost 10 years ago, after many years have passed and after using it and seeing others using it; it's a huge advantage the original creators couldn't have. James Gosling and all the other folks at Sun have made a great job designing Java and its API and, after nearly a decade, it is obvious there are things that could be better. I'll write more about other things - some far more critical than the way exceptions work - soon. Stay tuned!
The thing is, they weren't 'conceived' 10 years ago; they were badly copied....
Derek points out more "how to irritate the people who pay the bills" behavior - this time from the TV networks:
NBC started playing games with ER's start time, ensuring that my TiVo season pass for CSI would always get kicked to the curb by the higher priority ER, because they changed the start time from 10pm to 9:59, creating a conflict.
With the move of "Ed" to Friday nights, they're now doing the same thing with "Ed", starting it at 8:59, so that it will now conflict with "Boston Public".
This is just stupid. Time-shifting is the new reality; the networks simply have to deal with it. This happens in all businesses; sometimes, a fundamental change rolls through. The outfits that rage against the darkness die, and the ones that figure out how to adapt to the change make it through. It looks to me like NBC is in full-on "rage against the darkness" mode...
Patrick Logan comments on this piece. At issue is why vthe big language vendors - Sun and MS in particular) - don't offer much in the way of dynamic language support. Patrick asserts that in fact, they are moving that way - just very slowly:
I think an answer to the question above has more to do with the psychology and sociology of programming than it does with anything else. The big companies are almost by definition the ones whose value chain ends with giving the majority what they want. What they want is not always what works good in laboratories, nor is it necessarily what is "best for them".
Looking at language evolution in the long run, especially as plotted against a graph of Moore's Law, clearly the trend is to become more dynamic. A good indicator is a major industry journalist writing about such things.
True enough. In the meantime, people interested in productivity can take a look at Smalltalk.
Joseph Pelrine points to a great quote:
Humphrey's Requirements Uncertainty Principle "for a new software system, the requirements will not be completely known until after the users have used it".
How true that is, and - according to Joseph - it comes from a co-inventor of CMM!
The European Smalltalk User Group is proud to announce that it will organize an academic track for the 12th year of existence of the ESUG Conference with an excellent program committee.
Scope:
The goal of the academic track is to have a forum for publications related to Smalltalk and dynamically-typed languages. We encourage authors to submit excellent quality papers as we plan to produce proceedings. The organizing committee strongly discourages the submission of product presentations and other marketing related material. The academic track is about research!
A non exhaustive list of topics is
The best papers will be published in a special issue of the Elsevier international journal "Computer Languages"
Program Chair:
| Dr. Noury Bouraqadi (Ecole des Mines de Douai, France) | bouraqadi@ensm-douai.fr |
| Prof. Stephane Ducasse (University of Berne) | ducasse@iam.unibe.ch |
| Prof. Roel Wuyts (Université Libre de Bruxelle, Belgium) | Roel.Wuyts@ulb.ac.be |
Program Committee:
Important Dates:
Format information:
Preferred format: PDF
Maximum paper length 15 pages
How to submit a paper:
Send your paper in pdf format to Noury Bouraqadi, Roel Wuyts, and Stephane Ducasse.
To start this new year full of smalltalk we propose you to attend the following talk by Joseph Pelrine on Tuesday the 13th (January) at 17h15 at the iam room 107
Breaking down the dialect barrier
New techniques for cross-Smalltalk interaction
"Smalltalkers are friends separated by a common language". One of the unfortunate side-effects of Smalltalk's popularity in the 90's is the plethora of more-or-less incompatible dialects. The ANSI standard and Camp Smalltalk notwithstanding, it still happens too often that high quality, existing code does not get reused because it's only available in one dialect or version, and the pain of porting often outweighs the benefits.
This talk will describe a number of state-of-the-art techniques being used in Camp Smalltalk and other projects to increase cross-dialect compatibility and assist migration between existing Smalltalk implementations. Demos will include moving code from VisualAge to S#, and using ENVY/Developer with VisualWorks 7 and Squeak.
An apero will be given after sponsored by our sponsors:
Sounds like an interesting talk
The Cincom Smalltalk blogs now have accurate referer links. I hadn't looked at the code for that in a long time - in fact, not since I was the only one blogging here. The upshot of that was, the referer links that had been on this blog were actually for all the blogs here. That's no longer the case; the lists are now accurate for each blog (modulo referer spam, which I'm still seeing).
Linux today reports that SCO fooled itself. According to Novell:
On June 26, LaSala wrote: "SCO's statements are simply wrong. We acknowledge, as noted in our June 6 public statement, that Amendment No. 2 to the Asset Purchase Agreement appears to support a claim that Santa Cruz Operation had the right to acquire some copyrights from Novell. Upon closer scrutiny, however, Amendment No. 2 raises as many questions about copyright transfers as it answers. Indeed, what is most certainly not the case is that "any question of whether UNIX copyrights were transferred to SCO as part of the Asset Purchase Agreement was clarified in Amendment No. 2 (as SCO stated in its June 6 press release). And there is no indication whatsoever that SCO owns all the patents associated with UNIX or UnixWare."
The rest of the article is well worth perusing. It's starting to look like SCO's management team convinced itself that it had the goods - without actually verifying that fact. The SCO responses to these assertions look an awful lot like hand waving and "pay no attention to the man behind the curtain" theatrics. This whole thing may well end with nothing more than an epic destruction of shareholder value - SCO's.
I'm noticing that developers are reporting an "out of memory" exception in VW 7.2, with no idea how they are getting it (typically at image start). Here's the likely cause - Loading the VisualWave (Web Toolkit) server and not resetting ObjectMemory policies. In 7.2, loading the server resets the memory settings in a way that is appropriate to a server with lots of memory - but not necessarily for a client. Try this:
You'll see something like this: #(10.0 10.0 250.0 1.0 1.0 5.0 1.0). Look carefully at that third value - 250.0. What these numbers represent are multipliers - how much bigger to make a specific segment of VW's Object Memory at startup. That third one is LargeSpace. The reason it's been expanded has to do with appropriate sizes of socket buffers in a web application system. If you save your image in this state, it will try to allocate 250X of the third value returned by ObjectMemory defaultSizesAtStartup (204,800 bytes on my Windows box). That means that your system is going to ask for a lot of RAM (51MB on my system) for LargeSpace at startup. The exception means that the OS wouldn't yield up that much RAM to your process.
The solution? For development, do something like this before saving your image: ObjectMemory sizesAtStartup: #(10.0 10.0 10.0 1.0 1.0 5.0 1.0). Save your image, and you'll have more reasonable defaults for a development system. For a deployed server, the 250x may be more appropriate, but that depends on the specific configuration (RAM, swap space, etc) of your server - check the class comment and class side documentation of ObjectMemory for details
Lambda the Ultimate points this presentation by David N Smith (of IBM) on class behavior in Smalltalk.
I remember years ago, when ParcPlace started up a consulting group - I went to the Austin TX office for a meeting. A few of the guys who had just started with Smalltalk had a wheteboard covered with a hierarchy diagram, complete with the "wrap around" that occurs at Object. They were scratching their heads, trying to make sense of it all. Too bad they didn't have this paper! It's a bit dated (referring to ST/V on OS/2) - but the concepts explained are still current
Dave Winer has been building an interesting site showing off voluntarily submitted feed lists. Now he's interested in subscrbing to them; BottomFeeder can already subscribe to OPML feedlists. I just added the top 100 to mine...