development

MS To Web Developers - not ever

May 20, 2004 0:08:48.099

MS says no to productivity:

So Jonathan Goodyear (Angry Coder) reports on the ASP.NET Pro website that there will NOT be any Edit and Continue support for ASP.NET.

Read this correctly - there will be Edit and Continue support in Windows Forms applications, but none in ASP.NET.

Did all of our pleas fall on deaf MS ears? Why incorporate this critical tool that developers have screamed over for the last few years in only half of the IDE?

Would now be a bad time to mention that I can debug the server running this blog - and modify its code - all without taking it down? Here's the path to productivity in web development

 Share Tweet This

development

Moving our way

May 20, 2004 0:50:35.884

The good news is, developers are seeing the benefits of garbage collection and objects. Things are slowly moving towards the place that Smalltalkers have been for years:

I really like the way garbage collection changes programming. You don't have all that Free What You Create overhead, so your code is smaller and clearer and easier to write. Garbage collection also makes programming even more object oriented. You want to write a function that returns an object? No problem - you never have to worry about who owns an object.

I'm particularly taken with the way everything is either already an object - like arrays and strings - or is a value type that can be boxed into an object. This makes for very flexible collection classes, and makes for type-safe code that's small and easy to read, without lots of 'wrapper' boilerplate. Anything that reduces boilerplate is good, since boilerplate is very bad - boilerplate slows comprehension and increases the number of places you might make a mistake.

Now, download this and see the rest of the story

 Share Tweet This

humor

I need this

May 20, 2004 8:26:20.870

I have got to get me one of these

 Share Tweet This

tv

Angel ends

May 20, 2004 10:21:22.496

I liked the last episode of "Angel" - but there was some oddness there as well. It had a rushed feeling to it - and it felt more like a season finale than a series finale. With the end of "Buffy", strings were tied up, loose ends dealt with, and a plausible explanation given as to why Buffy could take a break from the fight. With the end of Angel, there really wasn't any of that. Oh sure, with the effective decapitation of the Black Thorn, evil was disrupted - and I suppose it's more in tune with the leitmotif behind Angel - the fight is never over.

For me, the biggest loss here is that Joss Whedon is off TV next year - no Angel, no Buffy, no Firefly. The cheesy reality shows rule the airwaves - frankly, I'd rather surf the net than devote even a few minutes of my life to a "Survivor" style show. Ther may be some hope in the SciFi realm - SG-1 is still on (and it's still the best SciFi show out there). "Enterprise" is back, but the problems with that show are unlikely to go away - the writers haven't been fired en-masse yet. Last night's episode was the epitome of what's wrong with the series. Here's the weapon that will destroy the entire Earth - we have a team of marines who can infiltrate the ship carrying it. Do they bring any C4? No. Do they haul over a few nukes? No. They go off to rescue a captured crewman and return. Let's look at the stakes here:

  • Fate of the entire planet
  • One command crewman captured

Heck, the original Trek did better in those situations - Spock sacrificed himself to save the ship in "Wrath of Khan" (not that he stayed dead, but never mind that now). I can just imagine the SG-1 team given these options - nukes and/or C4 beamed aboard with short fuses, and the enemy ship disabled or destroyed - but in any case, the weapon no longer on the way to Earth. Someone contact UPN and beat the writers senseless, please.

I have some hopes for the SG-1 spinoff (Atlantis) - but a fair bit of spinoff wariness as well. We'll have to see if they can expand the universe of the show. After that, it's a vast wasteland. "24"? Jumped the shark eons ago - people have probably died trying to wrap their heads around the various improbabilities in that show. There's always "The Sopranos", I suppose...

 Share Tweet This

sports

Science and Math in Baseball

May 20, 2004 12:18:43.292

If you didn't take calc and physics, how would you understand the physics of baseball, or realize why it is that the umps are always replacing balls?

 Share Tweet This

BottomFeeder

Keyboard support, finally

May 20, 2004 13:32:18.805

Thanks to Holger Kleinsorgen, the guy behind Twoflower (the piece I rely on for HTML support in BottomFeeder), there's now keyboard support in the HTML pane. All the standard stuff should work, including space/shift-space. This has just been uploaded to the dev stream - you'll need to grab all the new components and restart the application.

 Share Tweet This

StS2004

Last bit for StS 2004

May 20, 2004 15:21:34.129

If you attended StS 2004, then you should fill out our comment survey and let us know how it went. The feedback will help us plan a better event next year - thanks!

 Share Tweet This

movies

What a great flick

May 20, 2004 23:16:33.096

My wife just bought me "Miracle" on DVD - I just watched it. It was absolutely enthralling. I remember watching those games, and this movie really, really brought back all the intensity of them. Kurt Russel was amazing as Herb Brooks - you could fell the energy right through the screen. I'd recommend this movie to anyone - sports fan or otherwise. Now I wish I'd taken the time to see it in the theater - it would have been great on a big screen.

 Share Tweet This

rss

Food for thought

May 21, 2004 8:31:19.475

Scoble makes a few points about RSS:

On the first, you should ALWAYS include full text in the feed. Why? Because you'll get far less traffic if bloggers don't read you and don't link to you. We can send a ton of Google traffic your way (three links from "A list" bloggers will guarantee you first page appearances). The feed that does it worst? Microsoft's own Slate. I unsubscribed and will never visit their HTML (and, you never see me link to them, do you?)

On the second, feed producers should ALWAYS leave the reader in control. Please, no special fonts, no special colored backgrounds, no CSS, no branding. Thank you. Why? It's easier to read. Imagine if the New York Times put a different font on each article.

On the third, this would take care of itself if news aggregators had the ability to automatically sense whether or not there's a feed and present the choices to me in some sort of UI.

On the fourth, I hate it when webloggers don't have their syndication feeds as an XML icon. The XML icon is easy to find, and its behavior is easy to learn. NewsGator lets me right-click on any XML icon and choose "subscribe."

That third one would be a lot easier if feeds were presented with their own url form - something like the feed:// form that has been proposed. That way, aggregators could simply be registered as the "default" handler for that url type. I'm not seeing any movement on that front though. The second point is one I hadn't thought of, but it's a good one - pick up any news magazine or newspaper. Does the font and background color vary? I'm thinking that web designers still have a lot to learn from the print business here.

As to full content feeds - I agree with that completely. I understand the desire to pull people to your site, but - I'm noticing that over time, I read fewer and fewer sites that don't include full content. Yes, that's clearly anecdotal. However, going to the site is an extra step - and certainly more work than just moving along to the next new item in my aggregator....

 Share Tweet This

development

Colin Putney on typing

May 21, 2004 17:03:37.922

Colin Putney has an interesting take on static/dynamic types, and would like to see the dynamic community and the functional community cooperate. This is an interesting analogy:

Dynamic folks like to take a gardening approach to programming. They're up to their knees in the mud, hands dirty, planting and pruning, swatting bugs as they appear and composting weeds for fertilizer. They view the system as a living, evolving thing, and value testing, feedback and iterative development for figuring out what works and what doesn't. They don't worry about ensuring that everything goes right from the beginning, because a little pruning or landscaping can fix any problems that come up.

Static folks, on the other hand, take the architecture approach. They sit at a drafing table, and design structures of concrete and steel. They view the products of their work as monuments which must withstand the pressures of time and work hard to imbue them with mathematical grace and harmony. They know that structural failures can be catastrophic, so they build safety into their designs from the beginning.

Not a perfect analogy, but it gets his idea across.

 Share Tweet This

blog

New Community Blogger

May 21, 2004 19:37:43.885

Time to welcome another blogger to the Cincom Smalltalk community blogs - Eric Winger just started today. Stop by and say hi

 Share Tweet This

blog

Refer back to Value

May 21, 2004 19:46:56.618

Dave Winer gets it wrong:

It's lame to charge for weblog software based on how many weblogs you make and how many authors there are. A weblog isn't that big a deal. Manila lets you make as many weblogs as you want with as many authors as you want. Today's modern $2K computer can manage thousands of weblogs. Charge a fair price and don't fuss over how many blogs they make or how many people edit them.

Go read this again - adding authors and blogs to a site increases the value of a site - and value is what you are paying for. It's pointless to just yell "charge a fair price" - there is no such thing as an objectively fair price. A "fair price" is what a buyer and a seller agree to exchange based on the value each is getting from the transaction.

 Share Tweet This

development

He wants Smalltalk....

May 21, 2004 20:17:14.133

Miguel de Icaza just doesn't know that's what he wants yet:

My personal wish: I would like a C#-like scripting language myself. Sprinkle a few perlisms, rubyisms and pythonisms in there. Drop the class carcass.

A small patch I have been playing with in my copious spare time is one to turn all unresolved method calls in C# to a dynamic code translation. So basically:

  object a = new XmlDocument ();  a.Load ("/tmp/a.xml");

Here's the answer.

 Share Tweet This

xml

RDF and the semantic web

May 22, 2004 13:40:24.298

Dare Obasanjo points to this piece by Elliotte Rusty, which questions the value of RDF:

I guess the RDF model is a little simpler. It's all just triples, that can be automatically combined with other triples, and thereby inferences can be drawn. Does this actually produce anything useful, though? I don't see the killer app. Theoretically a lot of people are talking about combining RDF and ontologies from mulktiple sources too find knowledge that isn't obvious from any one source. However, no one's actually publishing their RDF. They're all transforming to HTML and publishing that.

That's part of it. The other part is that this is a lot like the problem with OO and the holy grail for a generic "Customer object". The problem is that your definition of a customer is likely to be different than my definition of a customer. In the same vein, the RDF triples defined by one group of developers is unlikely to match those defined by another one. The basic problem is vocabulary - go read this book on the creation of the OED to see how hard a problem that is :)

 Share Tweet This

tv

Good SciFi, Bad SciFi

May 22, 2004 17:28:38.606

I just watched the season finale to "Andromeda", and while this show has some weirdness to it - the whole Trance thing, for instance - it's way, way better than "Enterprise". The characters on Andromeda get presented with hard choices, and they don't always work out for the best - the season finale, for instance, was no cake walk. Mainly though, this series just seems to accept some harsh realities better - Captain Hunt realizes that there's no negotiation possible with the Magog - I can't ever see that sort of realization dawning on Archer (or on Picard in NextGen, for that matter). Now, if the people behind Trek would fire all the writers and bring in, say, Whedon...

 Share Tweet This

humor

Ow, Ow

May 23, 2004 0:31:40.729

 Share Tweet This

humor

Oops - that's why

May 23, 2004 9:07:45.285

A German couple learns why they are still childless. Maybe they spent the last few years trapped in a 50's sitcom :)

 Share Tweet This

movies

Soft spot for bad flicks

May 23, 2004 9:15:47.209

I have a soft spot for bad flicks. I actually sat through all of "10.5" - which was really, really bad. Back in the 80's, I went to a bunch of bad movies - I think this and this were perhaps the worst two things I ever spent money on. But maybe not - I'm planning on seeing "The Day After Tomorrow" - based on the trailers, it seems to be based on the book "The Coming Global Super Storm". I picked that up in an airport somewhere, when I had plenty of time to kill (and boy, does that book kill time :) ). Then again, I have some hopes for the special effects to be cool. I guess my taste in TV isn't any better - I continue to donate hours of my life to "Enterprise" and "24", no matter how bad they get....

 Share Tweet This

BottomFeeder

Ask and ye shall receive

May 23, 2004 11:05:25.216

Mark wanted different keyboard navigation behavior:

With a recent dev. update one of these - keyboard navigation was implemented and has since received a minor update, but still doesn't quite reach what I'm after. So what do I want? To quickly, and easily, read through blog entries without having to click back and forth with the mouse, or hit cryptic key combos back and forth. In alot of recent usenet and email clients, once a message/post has been displayed the space bar is used to

  • "page down" the content of the post if there's more than one screen worth
  • if at the end of the message - select the next unread message in the current group/folder, and finally
  • if theres no more unread messages in the current folder, select the next folder with unread messages and display the first item.

All regardless of which widget has focus ( unless its a text entry widget ).

And that's what BottomFeeder now does, if you grab the latest dev updates to the BottomFeeder and Twoflower parcels. You'll need to restart; the event handlers for this are installed at startup.

 Share Tweet This

marketing

Here's an outfit to avoid

May 24, 2004 8:45:23.557

This is an example of how not to do marketing. I got up, started looking through the news items in BottomFeeder. I notice that there are new comments on my Good Sci Fi, Bad Sci Fi Post, so I have a look - and there's a comment advertisement for a bunch of clowns at a company called digiBlitz. Well, the bozo who left the comment - one Suresh Balabesigan - has guaranteed that if I ever have a need to recommend the kinds of services his company offers, his company will not be contacted. Here's a tip - if you want to advertise, it costs money. Here's another tip - you might notice that I'm not running ads on this site - which means that my level of tolerance for ad spam is going to be really, really low.

Update: I complained to the firm in question, and got an apology. That counts as a positive action on their part - hopefully, they'll have learned from this :)

 Share Tweet This

development

How to encourage code bloat

May 24, 2004 9:04:54.951

First, make sure that your library designers use "final", a lot. Then sprinkle in "Code Snippet" support - and voila - you too can have massive amounts of copy-pasted code! But it's ok, because the library designers know best

 Share Tweet This

cst

A discussion on Store

May 24, 2004 9:26:27.298

Eric and Runar have kicked of a discussion of Store - Runar is talking about Store in general, while Eric is focusing more on the Public Store, and how hard it can be to navigate. Take a look!

 Share Tweet This

BottomFeeder

Moving to Events from change/update

May 24, 2004 12:18:20.933

Eventually, BottomFeeder will be moved to Pollock. In the meantime, a simple step on the way there is converting all the change/update code to use trigger events. This is actually fairly simple - I suppose I could have used the RB's rewrite tools to do it. It's a fairly simple task, and in the process I cleaned up a lot of dangling hooks that had crept into my code. So what's the change look like?

Well, the old code might have looked like this:

in RSSFeedViewer

initialize
....
self feedManager addDependent: self.

update: anAspect with: aValue from: anObject
	self perform: anAspect with: aValue.

and the model might kick it off by doing:
in RSSFeedManager


addedNewContent: content
	self changed: #addedNewContent with: content

So what changes? Well, I removed all the dependency hooks. I changed all the self changed: #foo code to read self triggerEvent: #foo instead. Then instead of adding a dependency, I hooked the events:

In RSSFeedViewer


postOpenWith: bldr.

	...
	self feedManager when: #addedNewContent: send: #addedNewContent: to: self

That leaves cleanup. In the old code, I just sent self feedManager removeDependent: self. Now, I just send self feedManager removeAllActionsWithReceiver: self. That's pretty much it. Now, the interesting thing was that doing this helped me find bugs. It turned out that I was adding multiple dependencies during execution - and doing this exercise helped me find those problems and fix them. The result should be a cleaner application, with easier to understand code. Which is, IMHO, far more important than the fact that it makes my code more Pollock ready.

 Share Tweet This

development

First class messages and straight jackets

May 24, 2004 12:26:25.204

There's an interesting thread on typing over on LtU - The comment I just linked to is interesting:

Premature lockdown of types or classes has the potential to harm projects. Plain and simple. Rigid human thinking creates brittle software. The vast majority of projects fail and I wonder how many fail as a result of the kind of rigid thinking imposed by typed variables and other brittleness spreading features of current languages

Read the entire thread starting here

 Share Tweet This

spam

Comcast steps up

May 24, 2004 22:31:05.946

Well, this is nifty - Comcast is going to try a targeted approach to hitting the zombie boxes:

Comcast's engineers plan to try the innovative approach of identifying the zombie PCs and surreptitiously sending the subscriber's cable modem a new configuration routine that prevents outbound connections on port 25. Zombie-infected users won't even notice, the thinking goes, because most people use Comcast's mail servers for outgoing e-mail. Anyone wrongfully blocked can call and complain.

That's a clever idea, and it might even work. More importantly, it shows that the Internet's biggest spammer is finally trying imaginative ways to save our in-boxes from its subscribers

This is good news - it means that Comcast is going to try and solve the problem w/o punishing the innocent.

 Share Tweet This

spam

Blog Comment spam

May 25, 2004 8:45:06.075

Ryan Lowe has been getting hammered by comment spam. Thus far, I've only had minor damage on the community blogs here. Partly it's due to not using a common blog system - these blogs use a server of my own design (although "design" might be stretching it - the server has evolved from a very simple "how hard could it be" thought 2 years ago :) ). I've received some - I deleted one just yesterday, in fact. I think the main thing is that blogs that use a widely known server attract spammers - the commonality attracts bot writers. Which is nasty, because it means that over time, blog commenting is going to go the way of email - ruined by the shallow end of the gene pool....

 Share Tweet This

general

Jilted Lover, Mac user, or both?

May 25, 2004 9:45:41.654

Charles Miller discusses his, umm, interesting relationship with the Mac.

 Share Tweet This

tv

Turn on the Stupo-Meter

May 25, 2004 9:55:46.434

Tonight we get the season finale of "24" - and the only think on TV that's been consistently stupider than "24" is "Enterprise". At least on "24", the CTU guys seem convinced that the bad guys are bad, and that something needs to be done. They are riven by all of the stock TV personal problems - spouses in danger, silly second story line (at least we no longer have to see Sherry Palmer though) - and so on. Over on "Enterprise", the stupidity never stops. Wait, Earth was attacked and millions died - so command sent a ship under non-military command to deal with it? And can someone explain to me why the phasers are never set on kill? Send in O'Neill from SG-1, please. Or even Red from "That 70's Show". Heck, send in Donna for goodness sakes...

 Share Tweet This

general

In the reliability corner...

May 26, 2004 8:49:59.606

Have you seen the Comcast (cable) ads that diss the dish? The ones that go on about how unreliable the dish is, and how great cable service is? I'm getting really, really tired of those ads. I lost cable (and net) service last night (again). For the last year or so, nearly every thunderstorm that has passed by has knocked out my cable. I understand the problems that a strong electrical storm can cause for cable tv - it's the constant loss of signal combined with the smug ads that tick me off. We lost service again last night, and it was out for at least 4 hours (all of prime time). Grrr....

 Share Tweet This

development

Not impressed

May 26, 2004 9:11:09.837

Patrick Logan is not impressed with the new Nullable Types in C#:

An explanation of Nullable Types which is a new concept in C# 2.0, as far as I can tell because the language designer did not get the concept of objects quite right. (For earlier evidence, consider the C# concepts of boxing and stack allocated structs vs. objects, read up on their justifications, and then consider the languages that don't expose boxing to the typical developer.)

The more layers of muck that get added to a type system, the more you have to wonder if the designers ever have the thought that they took a wrong turn somewhere...

 Share Tweet This

itNews

Becoming more cyber

May 26, 2004 10:17:33.250

This ComputerWorld story is interesting - looks like Sandia Labs is researching software/hardware systems that could cut through the "fog of war" - both combat type fog, and civilian crisis type fog:

So far, the research has been able to link various physiological responses to things like stress, fear, daydreaming and fatigue. Sandia scientists hope to create a central server that can integrate all of these readings from lightweight sensors worn on the body. Then they plan to use the software to help team leaders assign tasks to those who are most alert or to assist people in their decision-making based on analysis of their fellow team members' conditions.

For example, consider a team of air traffic controllers that's managing a major crisis with one or more airliners. As envisioned, MentorPal would assist the team leader by indicating that "Team Member A is growing increasingly excited" before that person reports what he is observing. That short period of advance notice may increase the team's decision-making speed enough to avert disaster.

Now, there's a problem with that - you have to take individuals and their varying reactions to stress into account. Still, this is an interesting idea. The good thing is, many of the people working on this seem to frecognize these pitfalls:

"This research can have merit, [but] a potential pitfall is that it can add to the fog of war by providing contradictory or confusing information," says Lt. Col. Ross Romeo, a division chief at the U.S. Army's 1st Information Operations Command.

John Pescatore, an analyst at Stamford, Conn.-based Gartner Inc. and a former analyst at the National Security Agency, is even less optimistic. "Abstracting that human element into a neural-network-based piece of software or using biometric inputs as important feeds is one of those areas I don't think will ever happen," he says. "I will believe we are within five years of that when FAA traffic controllers fly commercial airliners from their towers, and pilots serve the coffee on the planes."

Pescatore says if he ever sees "a soldier pointing a rifle at me, and he has an earpiece with a Sandia logo on it, I will run like hell and hide behind something bulletproof."

Fascinating stuff...

 Share Tweet This

security

Always the last place you look

May 26, 2004 10:48:54.751

Here's a funny tale in ComputerWorld - security team notices that a modem has gone missing (days before an audit) and starts to panic - they end up reviewing the closed camera tapes in order to see who stole it:

We continued to pull tapes, steadily closing in on when the crime occurred until we narrowed it down to around 3 p.m. on a Wednesday. So we loaded the final tape and settled back to catch the thief in the act.

As the tape played, we saw team members leaving the area, one at a time, to go to a meeting until the entire area was empty. It was the perfect opportunity for our criminal.

Then, at 3:17 p.m., the modem was suddenly gone, having disappeared before our eyes with no perpetrator in sight. Was this an X-Files thief with superhuman speed? Only after replaying the tape in slow motion did we discover the truth: I watched in horror and embarrassment as the modem rocked slightly in the air-conditioning breeze, then slid smoothly off the back of the PC and down behind the desk.

There was no thief, only a messy desk and gravity at work. Red-faced, I frantically apologized to the physical security team before rushing to the desk, where, sure enough, I found the modem hanging in the back in a mess of wires.

Hehe - it's like finding bad code, asking loudly "who the $%^&* wrote that" - only to remember that it was you that wrote that.

 Share Tweet This

StS2004

Niall Ross' StS 2004 report

May 26, 2004 17:00:22.971

Niall has taken his usually copious notes for StS and sent me a PDF file - read his report here.

 Share Tweet This

development

Call on Me!

May 26, 2004 21:10:09.428

A slashdot item points to a call for a "next generation development system:

"An interesting article written by a professor at the University of Toronto argues that next-generation programming systems will combine compilers, linkers, debuggers, and that other tools will be plugin frameworks mirror, rather than monolithic applications. Programmers will be able to extend the syntax of programming languages, and programs will be stored as XML documents so that programmers can represent and process data and meta-data uniformly. It's a very insightful and thought-provoking read. Is this going to be the next generation of extensible programming?"

That's funny. We have that already - it's called VisualWorks

 Share Tweet This

blog

Fixed comment feeds

May 27, 2004 9:57:34.295

The various comment feeds for the blogs here have been going out with incorrect link elements - I've just fixed that. Depending on which blog reader you use, you may have to reload the feed in order to get accurate link items.

 Share Tweet This

development

Why Perl is write-only

May 27, 2004 10:29:22.195

Mark points to the periodic table of Perl operators. Wow. And I thought that Java and C# were filled to the brim with cruft....

 Share Tweet This

development

Office via Web Services

May 27, 2004 10:38:16.396

InfoWorld reports that MS Office apps can be driven from back end Web Services. This is good news for Smalltalk developers, because integration via web services is far simpler in VisualWorks than is integration via COM. The 7.3 release will have some nice wizards for developing and deploying web services, and - based on this - it looks like you can just point Office apps at them. Cool stuff.

 Share Tweet This

tv

Weird endings

May 27, 2004 11:27:36.874

So I watched the season finale of "Enterprise" last night - seems Archer and the crew finally realized that defeating the enemy might mean having to kill the enemy. Mostly, it was a decent finale - until the season ending cliffhanger. Yes, it was made clear that Vortex travel could result in time travel - they had an episode dealing with that earlier. However, this raised a few questions:

  • How did Archer end up in the past? He went through the Vortex in a different ship, and when he arrived, it was the present - The Reptilians blew away a space station
  • Doesn't that also mean that the Aquatic ship is in the past? It carried "Enterprise" to Earth
  • What the heck was up with the alien Nazi?

I really, really hope they don't have some silly thing like "WWII kept going after the timeline shifted" - for one thing, even if it had, there would have been jets and missiles. Not the mention the basic absurdity of supposing that the war actually got extended that long. I suppose we'll see in the fall...

 Share Tweet This

travel

back on the road

May 27, 2004 23:05:59.677

It looks like I may get elite status on USAirways back again - I'm flying United to Australia (and I can assign those miles to USAirways). Then I go to ESUG this fall, in Germany - I suppose I'll fly USAirways there. Those two flights alone will likely get me my silver status back. So when am I going? I head to Australia on July 12th (arriving the 14th - love that dateline). I'm there until the 23rd - I'll be in Sydney and Canberra, and will be looking for something to do with on the weekend in between (I'm open to suggestions). This year's ESUG event is in Köthen, Germany - I don't plan to stay a weekend for that trip though. Before all that, I have planning meetings in Cincinnati in June, and in between, I have a vacation to Orlando in August. Looks like I'll be getting used to airports again.

 Share Tweet This
-->