development

When your tools suck...

October 17, 2007 20:09:43.360

I love this theory that not having a decent debugger is somehow a good thing - here's Giles Bowkett:

Asking why Ruby has weak debugger support is like asking why a dolphin doesn't have gills. Ruby has weak debugger support because Ruby programmers shouldn't be using a debugger. Ruby supports TDD and BDD better than any other language except possibly Smalltalk. Debugger support is for languages that you can't run tests against gracefully.

Yes, Smalltalk supports it better, in large measure because we have a debugger. For instance, have a look at this short (unnarrated) screencast. The summary: The Smalltalk debugger can support TDD:

Debugger Screencast

So no Giles, the absence of a debugger is not a feature - it's a fairly significant lack in your toolset.

Update: I love this. I left a short comment on Giles' blog, with a tinyurl link back here. His justification for deleting my comment:

when I said write politely or post in your own blog, I didn't mean that links to rude blogs were somehow not rude. I wish you people were more respectful with my time. There was a very reasonable counterargument, complete with excellent screencast, which I had to delete. Please understand, if your comments are rude, I will delete them, no matter how well-reasoned they are, no matter how polished their presentation, no matter how much I might respect you. I do not tolerate rudeness on my blog, and there are no exceptions. Please respect my time and your own. Posting comments I'm guaranteed to delete is wasteful.

Sounds a little odd, especially when we we get here:

For a quick summary, the commenter did a screencast of the Smalltalk debugger. The screencast showed the debugger in action. I admit, it looks cool. However, it still looks like a crutch to me. The screencast's argument was basically, look, here's the Smalltalk debugger, see how cool it is? Therefore it can't be a crutch. Of course it can. Haven't you ever met a beautiful woman who was mean to people, or a highly intelligent alcoholic? People make crutches out of their best features in real life all the time. Somehow it's impossible in computers? Of course not. Haven't you ever seen a useless but fun high-tech toy? A feature can be cool and still a crutch nonetheless.

Hmm. Yes, my post here is snarky. However, if Giles thinks I was just showing something cool, he missed the entire point of the post: the Smalltalk debugger supports TDD. Watch it again, Giles - I wrote a test, ran it. It failed. I debugged the test, had the debugger create the missing method for me - whereupon I wrote the code for the method in the debugger, and ran the test again. That's not a crutch: it's taking TDD to the next level.

Face it, Giles - you have the worst of this argument. Ruby ought to have a Smalltalk style debugger, and if it did, every Ruby developer would use it. The fact that Ruby doesn't have such a debugger is not a feature. Does this mean that Ruby sucks? No, of course not. I just think the argument that not having a debugger is a good thing is lame.

Update2: When you know you've lost, just close comments to make sure you get the last word. Oh, and make sure to swear (see his update stream for that) while you're at it - that shows 'em:

Although I am aware that the Smalltalk debugger works in the context of TDD, and was initially aware of that when I wrote the post, before any comments were made, because anyone with any knowledge of Smalltalk's history or the history of TDD knows that, it doesn't change my opinion that debuggers work backwards. Debuggers are based on the idea that the code base has enough places bugs could happen that the work of locating the bug is involved enough to justify machine assistance. This is not true of well-tested code. More importantly, the whole point of [T|B]DD is that you identify the bugs before you write the code. As tools which track down bugs in existing code, debuggers presume and encourage a workflow which is exactly backwards.

Umm, yeah - because we all write perfect code the first time, right out of the gate. Sure. And stop/restart is ever so much more productive than what I showed in the screencast, where you never leave the context of your code. Sure Giles - it's far more productive to do the test/run/break/test/run/break cycle than what I showed. You keep believing that - I'll be over here, being productive :)

Update 3: Oh, this just takes the cake - In the comments, Giles says:

Why on earth would I? How is supporting me rude? Why would I be offended by an offer of support?

So it's pretty simple, really - suck up to him, and it's open season. Disagree, and you get edited out. I've seen that behavior on political blogs, but sheesh.

Technorati Tags: , ,

 Share Tweet This

Macintosh

MacBook Pro and Sleep

October 17, 2007 13:44:18.542

Phil Windley has a good rundown on how to adjust the sleep/hibernate modes on the MacBook Pro. I'm posting this mainly so that I can find this later, when I want it :)

 Share Tweet This

screencast

Smalltalk Daily 10/17/07: HTTP and Scripting

October 17, 2007 11:53:46.279

On today's Smalltalk Daily, we use Smalltalk as a scripting solution for a simple HTTP issue - restoring spammed Wiki pages.

Technorati Tags: ,

 Share Tweet This

management

No Reviews, Please

October 17, 2007 7:32:03.132

While I understand what the Cafe in this story is worried about, trying to pre-censor customers is not the best way to proceed:

What I was told, in a nutshell, is that the café staff has encountered a stream of would-be critics “with attitude,” predisposed to take issue with or be critical of the business. Whether or not this is a correct perception, there are many more outlets (Yelp being only one) for customers and consumers to voice opinions about businesses on the Internet. And there’s little most of these businesses can do about it, for better or for worse.

For good or ill, you just have to take the commentary. Anyone can be a critic now; it's no longer limited to the food guy at the local paper. Are you going to get unfair, negative, personal attacks? Yes, you will - but putting up a sign that asks people not to do that isn't part of the answer, IMHO.

Here's what I do, in my role as product evangelist: I have search feeds set up for various terms that might come up in a discussion of our product: Smaltalk, Cincom, Cincom+Smalltalk, etc. I scan the results every day, and I respond to the negative ones - not with exasperation, but with questions for details on the problem tat generated the negative post. Is that going to solve every issue? No - there are trolls, and there's nothing you can do about them. Over the long haul, your dedicated customers will recognize and tune out the trolls though.

Ultimately, you can't stand back and to stop the tide of commentary. The best you can do is jump in and try to ride along.

Hat tip Mathew Ingram, which is where I noticed this.

 Share Tweet This

music

When you aren't hated enough

October 16, 2007 16:51:22.020

The music labels apparently aren't satisfied with how hated they are; they are going after Usenet now:

Major record labels - Arista, Atlantic, BMG, Capitol, Caroline, Elektra, Interscope, LaFace, Maverick, Sony BMG, UMG, Virgin, Warner Bros. and Zomba have filed a copyright infringement lawsuit against Usenet.com.

According to Billboard, the complaint filed in the District Court in New York states that Usenet.com provides access to millions of copyright infringing files and, with a nod towards the Grokster Decision, apparently “touts its service as a haven for those seeking pirated content.”

Usenet "encourages" infringement in the same way that the net in general does - it allows arbitrary content to be passed around. If Grokster applies to Usenet based on tunneling, then it applies to all of the net based on ssh tunneling. In their ideal world, everything would be broadcast only - and that's just not the world we live in.

Technorati Tags: ,

 Share Tweet This

cst

Contributions We Rely On

October 16, 2007 16:17:33.881

An interesting topic came up on one our calls today: what components in the "contributed" (i.e., not supported) section of our installation do our supported components rely on? Seems like a pain in the neck to test and figure out, but it turns out that the information is easy enough to come by. Using this code snippet, you can read the header of a parcel file:


properties := [CodeReader new readInfoFromFileNamed: 'parcelFileHere.pcl' asFilename] 
				on: OsError, CodeReader fileFormatSignal
				do: [:ex | ex return: Dictionary new].

Armed with that, the following script was easy to create:

"get the contributed parcel names"
contributedDirs := (('..\contributed' asFilename directoryContents) 
	select: [:each | ('..\contributed' asFilename construct: each) isDirectory]) asOrderedCollection.
contributedDirs := contributedDirs collect: 
		[:each | ('..\contributed' asFilename construct: each) asString].
contributedDirs add: '..\contributed'.
all := OrderedCollection new.
contributedDirs do: [:each |
	| current |
	current := each asFilename directoryContents.
	current := current select: [:each1 | '*.pcl' match: each1].
	current := current collect: [:each2 | each2 copyUpTo: $.].
	all addAll: current].

"now get the supported stuff"
top := 'c:\vw7.5.1' asFilename.
dirs := #('advanced' 'com' 'database' 'dllcc' '
DotNetConnect' 'DotNetConnect\parcels' 'dst' 'examples' 
'icc' 'net' 'opentalk' 'packaging' 'parcels' 'pdp' 'plugin' 
'preview' 'seaside' 'security' 'store' 
'wavedev' 'waveserver' 'web' 'webservices').

bad := OrderedCollection new.
dirs do: [:each |
	| dir |
	dir := top construct: each.
	files := dir directoryContents select: [:each1 | '*.pcl' match: each1].
	files do: [:each1 |
		| file |
		file := dir construct: each1.
		properties := [CodeReader new readInfoFromFileNamed: file] 
				on: OsError, CodeReader fileFormatSignal
				do: [:ex | ex return: Dictionary new].
		prereqs := properties at: #prerequisiteParcels ifAbsent: [#()].
		prereqs notEmpty
			ifTrue: [prereqs := prereqs collect: [:ea1 | ea1 first]].
		(prereqs anySatisfy: [:ea | all includes: ea])
			ifTrue: [bad add: (file asString ->prereqs)]]].

bad := bad collect: [:each |
	reqs := each value select: [:ea | all includes: ea].
	each key -> reqs].

Yes, the script could be cleaned up some, but it works for this purpose. Next, time to create a simple HTML table of results:

stream := WriteStream on: String new.
stream nextPutAll: '<table border="1" cellpadding="2"><tr>'; cr.
stream nextPutAll: '<td>Component Name</td><td>PreReq</td></tr>'; cr.
bad do: [:each |
	stream nextPutAll: '<tr>'; cr.
	stream nextPutAll: '<td>', each key asFilename tail, '</td>'; cr.
	stream nextPutAll: '<td>'.
	each value do: [:ea | stream nextPutAll: ea.
					ea ~= each value last
						ifTrue: [stream nextPutAll: ', ']].
	stream nextPutAll: '</td></tr>'; cr].
stream nextPutAll: '</table>'.
^stream contents

And the results:

Component NamePreReq
DotNETSUnitTests.pcl SUnitUI
Non-Commercialization.pcl StoreForPostgreSQL
RBRegexExtensions.pcl Regex11
RBStoreExtensions.pcl HotDraw Framework
RBSUnitExtensions.pcl SUnit
Tools-StartupOrderingTool.pcl HotDraw Framework
Seaside-Comet.pcl Seaside-Scriptaculous
Seaside-Crossfade.pcl Seaside-Scriptaculous, Seaside-HTML5
Seaside-CSSBarGraph.pcl Seaside-Scriptaculous, Seaside-HTML5
Seaside-FadeIn.pcl Seaside-Scriptaculous, Seaside-HTML5
Seaside-NumberedList.pcl Seaside-Scriptaculous
Seaside-PlotKit.pcl Seaside-Scriptaculous, Seaside-HTML5
Seaside-protoGrowl.pcl Seaside-Scriptaculous, Seaside-HTML5
Seaside-Reflection.pcl Seaside-Scriptaculous, Seaside-HTML5
Seaside-SeaChartDemo.pcl Seaside-Scriptaculous, Seaside-PlotKit, Seaside-Crossfade, Seaside-CSSBarGraph, Seaside-FadeIn, Seaside-NumberedList, Seaside-Reflection, Seaside-StarRater, Seaside-protoGrowl
Seaside-ShoreComponents.pcl Seaside-Scriptaculous
Seaside-StarRater.pcl Seaside-Scriptaculous, Seaside-HTML5
Seaside.pcl SUnitToo
Wave-Server.pcl Regex11
WebToolkit.pcl Regex11, Base64Encoding
WebServicesDemo.pcl Protocols-TestingExtensions

Now, some of that is spurious - there are duplicate parcel names for Seaside, as we are still sorting that out. We don't need to worry much about the non-commercialization parcel either - but the other results are interesting. For instance, before I ran this script, I had not remembered that we use HotDraw in the browser. Interesting information all around...

Technorati Tags: ,

 Share Tweet This

screencast

Smalltalk Daily 10/16/07: Glorp and Active Record I

October 16, 2007 12:09:29.839

On today's Smalltalk Daily, we set up the database table for the Todo app (see yesterday's screencast) - this will give us the foundation for adding persistence to the Todo Seaside app.

Technorati Tags: , ,

 Share Tweet This

music

Competition in Digital Music

October 16, 2007 7:41:08.488

Looks like Apple is responding to Amazon's DRM free, 89¢ - 99¢ play - their DRM free tracks will be dropping to 99¢, along with the DRM tracks. They are also adding some Independent labels:

Apple plans to expand iTunes Plus to include certain indie music labels starting Wednesday, October 17 (or sometime this week, at least). This tiny step is encouraging for those of us who like freedom with our music, but it sucks that more of the larger labels are still holding off from hopping on board. This expansion won't include all independent music labels just yet, although we're optimistic that more will be included in the future.
The bigger news on the iTunes Plus horizon, however, is that Apple plans to drop the price of all iTunes Plus tracks. Currently, each track is $1.29 while "normal" DRMed tracks are 99¢ apiece. That discrepancy will be no longer, as Apple will begin pricing all of its iTunes Plus songs at 99¢ apiece (DRMed tracks will also remain at 99¢).

This is the kind of competition that makes most of us smile, even as it makes the RIAA cry.

 Share Tweet This

seaside

Seaside UI Builder?

October 16, 2007 6:22:11.234

Based on the way Seaside's component model works, I've been thinking that a UI builder ought to be possible. Well, it looks like someone has taken that idea and run it with it. Via Torsten Bergmann, I ran across this work:.

Torsten has a screen shot; head on over there to see it.

Technorati Tags: ,

 Share Tweet This

cst

ObjectStudio 8 News

October 15, 2007 16:14:52.642

Cincom Systems

Cincom releases Cincom Smalltalk ObjectStudio 8

ObjectStudio now hosted on VisualWorks

CINCINNATI, Ohio - October 15, 2007 - Cincom Systems has released Cincom Smalltalk ObjectStudio 8, which means that ObjectStudio is now hosted on VisualWorks virtual machine and libraries. ObjectStudio 8 is the integration of Cincom Smalltalk ObjectStudio and Cincom Smalltalk VisualWorks.

The following enhancements are now available to customers:

  • Increased performance, from running a faster virtual machine
  • Access to a larger class library

With these advancements, ObjectStudio continues to provide native widget support and ObjectStudio syntax enhancements. ObjectStudio 8 supports VisualWorks emulated widgets simultaneously with the native widgets, and both can be used in the same application.

"Both Smalltalk systems consisted of tons of customer applications and components, most of which were only available in one system, not the other. The idea was then born to bring these two systems together in such a way that both, each VisualWorks application and component and each ObjectStudio application and component, works unchanged in the joint system, now called ObjectStudio8", said Georg Heeg, Premier Cincom Smalltalk partner.

For further information on ObjectStudio and ObjectStudio 8, please visit the ObjectStudio blog .

About Cincom Systems

Cincom delivers and supports innovative software and services to simplify complex business processes. For nearly 40 years, we have empowered thousands of clients worldwide to transform their businesses and outperform the competition by providing ways to increase revenue , control cost , minimize risk , and achieve rapid ROI .

Cincom serves clients on six continents including BMW, Citibank, Boeing, Ericsson, Penn State University, Milacron, Siemens, and Trane. For more information about Cincom's products and services, contact Cincom at 1-800-2CINCOM (USA only), send an e-mail to info@cincom.com, or visit the company's website at www.cincom.com .

Cincom Systems

Media Contact

Suzanne Fortman

Smalltalk Program Director

Cincom Systems, Inc.

949.722.8928

sfortman@cincom.com

Technorati Tags:

 Share Tweet This

stupidity

Pot, Kettle, Redux

October 15, 2007 15:25:11.446

Dave Winer thinks that people sniping at him is just bad:

Usually I ignore the moralistic snipes that come from a handful of bloggers, but to characterize a post of mine with a term like "hate" is really over the top

So just out of curiousity, I tried this Google search. Hmmm - he's not as bad as the anonymous troll I had a run in with last week, but he definitely visits the same neighborhood regularly - and, like that troll, he has his own set of enablers who cheer him on.

 Share Tweet This

web

Who are the Web 2.0 Winners?

October 15, 2007 13:33:28.819

Nick Carr notes that for web 2.0 - as with web 1.0 - it's all about infrastructure:

In its latest quarterly financial report , Caterpillar revealed that, in North America, "sales for electric power applications increased 41 percent [from year-earlier levels] supported by data center installations." (One of Caterpillar's major competitors, Cummins, also reports record revenues in its generator business, with worldwide sales jumping 33 percent over the course of the past year.) Demand for the generators is so strong, in fact, that shortages of the machines appear to be significantly delaying the construction of new data centers. A year ago, Data Center Knowledge reported that the lead time for the delivery of a two-megawatt generator, a mainstay of today's data centers, was a full year. I hear that supplies remain short today, delaying construction projects nine months or more. Rumor has it, in fact, that Microsoft and Google have locked up a significant portion of Caterpillar's production for the foreseeable future.

I have to say, I would not have guessed at Caterpillar as being one of the winners in this. It makes sense, but it was not obvious to me.

 Share Tweet This

blog

Smalltalk Only?

October 15, 2007 12:15:41.339

If you would prefer to see only the Smalltalk related posts here, I've created a new feed that aggregates those, and excludes the various other topics I write about. Subscribe to this feed, and that's all you see. I've sent a note to Planet Smalltalk - if they switch over to the new feed, then the non-ST stuff will drop off that site as well.

Update: Planet Smalltalk is now using the new feed, so the non-Smalltalk posts I make here are no longer part of that site.

Technorati Tags:

 Share Tweet This

seaside

Smalltalk Daily 10/15/07: A Simple Seaside App

October 15, 2007 10:26:09.433

On today's Smalltalk Daily, we tip our hat to Francois Beausoleil, who provided the example application I used - a simple To Do application. It's a longer than normal screencast, because it walks through the entire creation of the application, start to finish.

The code is in the public store repository; one caveat though. The pre-reqs are set appropriately for the in-development Seaside 2.8 work here at Cincom, so if you aren't part of vw-dev, then just load SeasideFor WebToolkit or SeasideForSwazoo (2.7 or better) first, and then ignore the pre-req warning.

Technorati Tags:

 Share Tweet This

seaside

How Simple is Seaside?

October 15, 2007 7:02:57.602

Francois Beausoleil, who says this about his Smalltalk and Seaside skills:

Also, I am no expert on Smalltalk, Squeak or Seaside. There are probably a couple of things I could have done differently, and I hope some people out there might be interested in helping me learn more about Seaside.

has posted a simple ToDo Seaside app in 218 lines (he did the authentication himself, so a truly minimal version might be less). Sure, there are issues if you planned to actually use the code (non-encrypted passwords) - but it's a demo/proof of concept, as he freely admits.

It's very cool to see how much you can get done in so little Smalltalk code :) I think Francois sells himself a bit short in the Smalltalk and Seaside arena :)

Technorati Tags:

 Share Tweet This

itNews

More Better Messaging?

October 15, 2007 6:42:45.982

The NY Times' John Markoff is covering MS' latest big announcement - they are announcing a new line of business in the IP communications arena:

There is a great deal of brave talk from existing players about being both a partner and competitor to Microsoft, but in fact they should be about as glad to see Microsoft as the minicomputer industry was to see the upstart three decades ago.
In fact, Microsoft is opening a new front in its software strategy that mimics its Windows and Office approach to desktop and corporate computing.

The latter assertion is an interesting one. They are going to have to target the enterprise space, and get IT departments to really push, because messaging software is common (skype, AIM, Yahoo) and free. If they see this as an "Office Size" business, it's going to require more than a software release - they have to convince people like me to stop using skype and start using their stuff.

 Share Tweet This

smalltalk

The WayBack Machine Visits the DynaBook

October 15, 2007 6:22:19.575

Here's an interesting reminiscence of the DynaBook concept from 1988 - the ActiveBook project. Like a lot of early Smalltalk projects, this one had good ideas that were ahead of their time.

Technorati Tags:

 Share Tweet This

smalltalk

More Smalltalk

October 14, 2007 16:39:53.719

GNU Smalltalk is up to version 2.95e, as of yesterday. The announcement is here.

 Share Tweet This

itNews

The Downside of Accessibility Laws

October 14, 2007 13:59:48.854

Scoble points out one of the scaling issues with accessibility laws: ironically, they favor the big players:

Now, imagine a world where every video is forced to get a transcript so that it’s accessible to blind people? Yeah, some sites like mine would just pay to have transcripts done. But most video bloggers can’t afford that. So who would pay for this?

Take the podcasts we do here on Industry Misinterpretations - say I had to provide a transcript for those. I looked into that once, and - while the price wasn't onerous for a corporate site, I can definitely see questions coming up at budget time. For larger companies, providing a transcript would be a pain, but a small one. For smaller outfits, it could easily be a back breaker.

I have sympathy for the blind (or deaf, etc) who want access to the same things the rest of us have access to - but at the same time, Scoble's "who pays for that?" question is not coming from a place of harshness. It's a real problem for smaller players with limited budgets.

There's also a gap between the reasonable accessibility steps (alt text, etc) that help screen readers, and the reality of increasingly less accessible video technologies. Let me use a simple example: Smalltalk Daily. Those are narrated screencasts, where I do demonstrations of how Cincom Smalltalk works. If you can't see it, there is audio - but how useful is it? There's definitely a "lost in translation" thing there, IMHO. The same would apply to a lot of video, even if a transcript were provided. Not everything online can be reduced to an interview.

Technorati Tags: ,

 Share Tweet This

games

Civ IV Woes

October 14, 2007 11:56:51.059

Well, this has been an interesting morning. Michael and I decided to try a game of Civ IV, and immediately on connection, we got "Out of Synch" errors. We are both using Windows, so it's not the dreaded Windows to Mac issue. No, it's the recent 313 patch. A quick round with Google turned up this thread, so we turned off random events. That did the trick. So now, I guess we wait for the next patch. Given how quick this one popped up in MP play, I'm surprised it wasn't caught in testing.

Technorati Tags: ,

 Share Tweet This

development

.NET gets more dynamic

October 14, 2007 11:25:43.127

Ariel Niesen talks about dynamic languages and Silverlight - it looks like Microsoft is making progress in the dynamic language space.

Technorati Tags:

 Share Tweet This

podcast

Industry Misinterpretations 57: GLASS

October 13, 2007 15:44:01.855

This is the third Seaside podcast we did during the last week of September, 2007 in Cincinnati. For this one, I was in the same room with Michael and Arden, with Dave Buck and the Gemstone guys (Dale Henrichs, James Foster, and Monty Williams) on the phone. We talked about what Gemstone is up to with Seaside (you should also check their blog). They did most of the talking - we pretty much let them have the mic and explain things to us.

As always, feel free to send feedback to smalltalkpodcasts@cincom.com - or vote for us on Podcast Alley, review the podcast on iTunes, or visit our Facebook group.

Technorati Tags: , , , ,

Enclosures:
[http://www.cincomsmalltalk.com/audio/2007/industry_misinterpretations57.mp3 ( Size: 14460471 )]

 Share Tweet This

spam

It works better when you turn it on

October 13, 2007 14:42:05.545

Last week, some spam hit the Cincom Smalltalk Wiki - it's easy enough to restore the original pages, but I was afraid that I was looking down the same barrel that the UIUC wiki is - one of relentless, un-ending spam attacks.

However, a simple investtigation revealed a stupid problem I inflicted on myself - in the last patch I pushed up, I accidentally turned off the spam checker on the Wiki. After turning it back on, I started seeing failed attempts reported in my logs, from the same IP addresses that hit UIUC. I have to periodically update the filters, but things are back to normal. If you came to the site and saw spam last week, my apologies.

Technorati Tags: ,

 Share Tweet This

development

Non-Programmer Development: Not Ready Yet

October 13, 2007 14:32:20.135

Via Patrick Logan, I came across this piece by Robert Cooper - and this quote on the utility of BPM tools to make development easier:

And here is where it breaks down. All these unusable drag and drop tools, and “easy” XML programming languages aren’t targeted at programmers. They are targeted to suits who can buy into the idea that some non-techy is going to orchestrate these services and modify business rules. These products are unworkable because they are based on the idea that “You won’t need programmers anymore!” at least at a core level. Once you make that assumption you start building things that get in programmers way, and still include enough abstract programming concepts that no non-programmer is ever going to be able to work with it proficiently

The funny thing is, this idea of eliminating the programmer was one of the original goals of Smalltalk. It hasn't worked out that way; neither mainstream languages (like Java), nor the niche ones (Smalltalk, Lisp) have been picked up as general purpose tools for the masses.

There are DSL tools out there that provide higher productivity for general audiences; you can consider spreadsheets with their macro languages to be DSLs, for instance. Even there, everyone sees the scaling problems - we've all seen overly complex, unmaintainable spreadsheets.

The bottom line is, we haven't reached nirvana yet. Unless you have a highly focused (and smallish) problem, you probably need software developers.

Technorati Tags: ,

 Share Tweet This

PR

A Small Point on the Recent Madness

October 13, 2007 14:14:01.821

If the post I made on the recent madness on the part of a supposed PR person interests you, just follow the original post. Any and all updates will be landing there.

 Share Tweet This

seaside

Third in the Seaside Series on Tap

October 13, 2007 11:58:28.067

Today or tomorrow (I'm waiting on some audio to mix in), I'll have the third in our Seaside series of podcasts out. This one was also recorded in Cincinnati, during the last week of September at our internal "Camp Seaside". We spoke to Gemstone about their GLASS (Seaside) work - look for it in iTunes by the end of the weekend.

Technorati Tags: , , ,

 Share Tweet This

cst

Better FFI all the way around

October 13, 2007 11:43:27.839

Andreas explains how ObjectStudio 8 makes calling C from ObjectStudio easier - DLLCC (from the VW side) is a lot easier to work with. We aren't satisfied with DLLCC though - we are doing a number of tings to improve the experience:

  • Faster calls from Smalltalk to C, and from C back into Smalltalk - you'll see that in the January Release
  • A better front end DLLCC parser - right now, the parser has trouble with many header files. We expect to have preview level improvements by January, with more to follow
  • VM as a DLL - if you read Dave Buck's piece, you see that we are making it possible to use Smalltalk as a shared library on Windows, Unix, and Linux. We should have at least preview level capability by January, and we may be able to ship that in production.

Things are shaping up nicely for January - I'll have some details on the tools/UI work soon. In the meantime, the roadmap has been updated.

Technorati Tags: ,

 Share Tweet This

music

Hating your customers as a strategy

October 13, 2007 10:25:51.343

Just when you think the music labels have hit bottom, you find another piece of news demonstrating that there might not be a bottom: The UK equivalent of the RIAA (PRS) is suing a car repair chain, claiming that mechanic's radios were set loud enough to qualify as a public performance:

The PRS claimed that Kwik-Fit mechanics routinely use personal radios while working at service centres across the UK and that music, protected by copyright, could be heard by colleagues and customers.
It is maintained that amounts to the "playing" or "performance" of the music in public and renders the firm guilty of infringing copyright.

Hmm. By that logic, every party I've ever been to needed a performance license. Lots of the cars on the road need one to - never mind FM broadcasting from the mp3 player, I'm just talking about volume. Is this really where the labels want to go? Do they have any idea how stupid this makes them look?

Technorati Tags: ,

 Share Tweet This

music

Hall of Dumb Ideas

October 12, 2007 17:08:22.796

I'd take apart the RIAA's latest dumb plan, but Mathew Ingram has already done it. All I can say is, "what he said".

Technorati Tags:

 Share Tweet This

games

Better than Life: The Beginning

October 12, 2007 17:04:14.678

Via Nick Carr, I see the beginnings of a "Better than Life" (Red Dwarf ref there) interface:

The system consists of a headpiece equipped with electrodes that monitor activity in three areas of the motor cortex (the region of the brain involved in controlling the movement of the arms and legs). An EEG machine reads and graphs the data and relays it to the BCI, where a brain wave analysis algorithm interprets the user’s imagined movements. A keyboard emulator then converts this data into a signal and relays it to Second Life, causing the on-screen avatar to move. In this way, the user can exercise real-time control over the avatar in the 3D virtual world without moving a muscle.

Technorati Tags:

 Share Tweet This

news

The Cola War Heats Up

October 12, 2007 16:47:45.783

Who knew that delivering soda could require hazard pay?

State police in Indiana, Pa., are investigating after a Pepsi employee allegedly assaulted a Coca-Cola employee while making a delivery at a Wal-Mart in White Township on Oct. 1.
According to police, Robert Koscho, 48, of Ebensburg, and the Pepsi employee, who has not been identified, were bickering back and forth while making their deliveries at the Oakland Avenue store. Police said the two are also accused of trying to run each other over with pallets full of soda bottles.

Maybe the next confrontation will include Mentos based mortars.

 Share Tweet This

cincom

Tip of the Hat to Steve Kayser

October 12, 2007 13:18:43.506

A couple of posts I made here about a certain non-transparent "PR" person have generated a huge stream of very obnoxious emails - and not all of it to me. I want to say thanks publicly to Steve Kayser, who has been a big help in this little blog-storm. Thanks Steve!

 Share Tweet This

seaside

Even More Seaside

October 12, 2007 12:26:53.087

More good news for fans of Smalltalk and Seaside - the Instantiations guys have put Seaside on their roadmap. The more the merrier, I say :)

Technorati Tags:

 Share Tweet This

tv

Comcast and Tivo, finally

October 12, 2007 10:48:50.805

PC World reports that Comcast will finally be rolling out cable boxes with the Tivo interface - and has started to do so already, in fact:

NEW YORK (Reuters) - Comcast Corp, the largest cable operator in the United States, and TiVo Inc said on Thursday they have started rolling out TiVo- enabled Comcast digital video recorders in New England. The companies said in a joint statement that the service will be rolled out to customers over the next few months.

Not a minute too soon - the existing DVR boxes have an interface that no one could love.

Technorati Tags: ,

 Share Tweet This

events

Smalltalk in NYC

October 12, 2007 10:36:52.091

Charles Monteiro has announced the next STUG meeting in New York City, November 7 at 6:30 PM. Follow the link for directions to the meeting:

Charles A. Monteiro will be discussing issues encountered as well as techniques/strategies in our quest to have an Oracle centric direct sql VW application speak to a Postgres backend without having to change application layer code.

Technorati Tags:

 Share Tweet This

books

The More Things Change...

October 12, 2007 10:08:49.900

While reading through the new stuff in BottomFeeder this morning, I came across this item from Mike Arrington - where he explains how easily some people toss lawsuits (or threat of same) around, and how much time that can waste. It's commonly thought that things are worse this way than ever, and I used to think so - but I've been reading "Empire Express", which covers the building of the transcontinental railroad by the Central Pacific and the Union Pacific. Lawsuits and threats of suits were tossed around like water back then (just after the civil war).

It's also commonly said that Congress is worse and more corrupt than ever - I'd invite anyone who thinks so to read this book - the kinds of deals and sinecures being handed out back then are just amazing - if things like earmarks bother you now, you might well have exploded in the late 1860's :) It's a fascinating book - there's the actual building of the road, the legal battles, the corruption, and the personalities. I'll be sad when I reach the last page.

Technorati Tags: ,

 Share Tweet This

screencast

Smalltalk Daily 10/12/07: Squeak Code to CST

October 12, 2007 8:43:10.478

On today's Smalltalk Daily, we take a look at porting some code from Squeak to Cincom Smalltalk. The package I ported is a JSON reader; it's a small example, but illustrates the issues involved quite nicely.

Technorati Tags: , ,

 Share Tweet This

cst

JSON handling in Smalltalk

October 12, 2007 7:55:00.228

After the earlier post on JSON, I decided to take a look at the Squeak package. Importing it into Cincom Smalltalk was fairly simple - here are the steps I used:

  1. Downloaded the mcz file
  2. Unzipped it to get the files
  3. Loaded BraceConstructor and FileOut30 into my image. The former is for Squeak array compatibility; the latter handles bringing in Squeak files
  4. During the file in, I had to deal with namespace issues (TestCase), and a missing class (SystemOrganization)
  5. Fix up all the uses of _ instead of :=
  6. Create a new namespace and move all the JSON classes into it
  7. Test out a few examples, found here.

I published it as JSONReader in the public store (there's a JSON package out there already - it seems to be focused on serializing to JSON). I should probably consider unifying the two. Anyway, I can't vouch for this code much - but it's a start.

Technorati Tags: ,

 Share Tweet This

web

Connection Pooling from the Times?

October 12, 2007 6:21:15.695

Looks like everyone is building interesting stuff for use on the web. Via Danny Ayers, I found out that the New York Times has built (and released openly) a database front end they call DBSlayer. It talks via JSON, does connection pooling - it looks fairly interesting. All you need to talk to it is HTTP and JSON libraries. I've made fun of JSON before, but perhaps I let my cynicism get out in front of me.

Update: Looks like there's a Squeak package for JSON - if it works, a port to Cincom Smalltalk should be fairly easy.

 Share Tweet This

PR

When Edgy turns into Self Satire

October 11, 2007 17:52:16.795

A couple of days ago, I noticed that Strumpette was going offline. I've never thought much of the supposedly satirical, relentlessly un-funny site - probably the best description would be "bullying" - what else to call someone who posts anonymously, and feels free to toss obnoxious invective around?

Taking note of this, I posted a short " so long, no one will miss that " thing up, and promptly forgot about it. Until last night, when I started getting email from "Amanda Chapel". The mails started off nasty, and quickly moved to incoherent and sophomoric. With the swear words "bleeped out", here's the entertaining sequence from this *cough* PR professional *cough*:

 


From: Amanda Chapel 
To: jrobertson@cincom.com 
Sent: Wednesday, October 10, 2007 8:32 PM
Subject: A Note from Amanda Chapel
 
Jim,

F*** you a******.

Sincerely,

- Amanda

From: James Robertson [mailto:jrobertson@cincom.com] 
Sent: Wednesday, October 10, 2007 8:15 PM
To: Amanda Chapel
Subject: Re: A Note from Amanda Chapel
 

Ah yes, not even able to express yourself without profanity.  The
mark of a true amateur in the PR game.


From: Amanda Chapel 
To: 'James Robertson' 
Sent: Wednesday, October 10, 2007 9:33 PM
Subject: RE: A Note from Amanda Chapel

And who the f*** are you?!

Like I said in my resignation: I seem to spend all my time
revisiting the same battles previously won. I spend all my time
trying to keep the Web's rising tide of small literal minds at bay.

I was referring to you Jimbo.

From: James Robertson [mailto:jrobertson@cincom.com] 
Sent: Wednesday, October 10, 2007 8:52 PM
To: Amanda Chapel
Subject: Re: A Note from Amanda Chapel
 

And you can't refer to me, or anyone else, without cursing.  Which
shows that you have poor communication skills.  I can insult you
from now to next year, and I won't have to swear once.  You?  You
can barely manage a full sentence without cutting loose.

From: Amanda Chapel 
To: 'James Robertson' 
Sent: Thursday, October 11, 2007 8:13 AM
Subject: RE: A Note from Amanda Chapel

Raising one's voice to an idiot is a natural thing.  And
yes, I do agree, you will likely continue to be an insignificant
f*** from "now to next year," at the very least. 


From: James Robertson [mailto:jrobertson@cincom.com] 
Sent: Thursday, October 11, 2007 7:37 AM
To: Amanda Chapel
Subject: Re: A Note from Amanda Chapel


Wow, it took you a whole day to compose another sentence that
includes an expletive.  So how does a middle aged guy masquerading
as a young woman manage to confuse himself with a PR professional? 
Are there powerful narcotics involved, or is the delusion something
you managed to bring on without extra help?


From: Amanda Chapel 
To: 'James Robertson' 
Cc: [ed: removed Cincom Marketing and Legal People's Email
Addresses] 
Sent: Thursday, October 11, 2007 8:44 AM

Subject: RE: A Note from Amanda Chapel

You are exposing your company.


From: James Robertson [mailto:jrobertson@cincom.com] 
Sent: Thursday, October 11, 2007 7:52 AM
To: Amanda Chapel
Subject: Re: A Note from Amanda Chapel

Here's the thing: I use this thing called transparency.  I post
under my own name, so that people can honestly evaluate what I say.
 As opposed to, say, you.


From: Amanda Chapel 
To: [ed: removed a fellow Cincomer's email]
Cc: 'James Robertson' ; [ed: Removed a fellow Cincomer's Email]
Sent: Thursday, October 11, 2007 9:38 AM
Subject: RE: A Note from Amanda Chapel


[ed: Cincomer name removed],

Can you stifle this Cincom knucklehead please?
 
See

http://www.cincomsmalltalk.com/blog/blogView?showComments=true&printTitle=One_Outpost_of_Stupidity_Gone=3369395102


.  See below.

Thank you.

Regards,

- Amanda Chapel

From: James Robertson [mailto:jrobertson@cincom.com] 
Sent: Thursday, October 11, 2007 8:49 AM
To: Amanda Chapel
Subject: Re: A Note from Amanda Chapel
 
Ooh, you've gone and called a lawyer now.  You could do what real
people do - post under your real name, and explain why I'm wrong.

That might require some courage though.


From: Amanda Chapel 
To: 'James Robertson' 
Cc: 
Sent: Thursday, October 11, 2007 9:53 AM
Subject: RE: A Note from Amanda Chapel

YOU ARE NOW HARRASSING ME USING CINCOM PROPERTY.


From: James Robertson [mailto:jrobertson@cincom.com] 
Sent: Thursday, October 11, 2007 9:07 AM
To: Amanda Chapel
Subject: Re: A Note from Amanda Chapel

Hmm.  I seem to recall that I'm the one who's being called names.

From: Amanda Chapel 
To: 'James Robertson' 
Cc: [ed: removed fellow Cincomer Email Addresses]
Sent: Thursday, October 11, 2007 10:34 AM
Subject: RE: A Note from Amanda Chapel

IT'S NOT ABOUT NAME CALLING YOU F****** LOSER.  IT'S
ABOUT YOUR MISUSE OF CINOM PROPERTY.

STOP IT IMMEDIATELY!




This is what happens when you take a completely self-absorbed "PR" person who has come to believe that their audience is other PR people. Edgy is all that matters; never mind those actual prospects who might want to spend real money buying a product. When you take it too far - as this person has - you get an astonishingly thin skinned, can dish it out but can't take it bully. Go read through the archives at the Strumpette site - the author is all too willing to toss invective. Call BS though, and his/her spleen bursts.

Update: Apparently, Strumpette is not amused. Now he/she has taken to sending emails to Cincom's executives. I guess "can dish it out, but can't take it" really, really applies here.

Update 2: This truly is a molehill. I'm getting more referrals for this search than I am for Strumpette :)

Update 3: I guess I had no idea just how unhinged Brian Connolly (the man behind the anonymous troll) really is - check out this post from Robert French - the F-Bombs sent to fellow Cincomers and Cincom management are hardly all that this guy is capable of; more than one person has been harassed by phone as well. On a humorous note, I now see why Connoly went bats when I asked about the masquerade - check out the picture over at French's site :). Hat tip to Mike Krempasky for the link.

Update 4: Looks like the kind of nastygrams sent to my management are par for the course - check out this from 2006, at Media Orchard:

This is not a new tactic. Strumpette enjoys attacking people, but prefers opponents who are unable to defend themselves. Strumpette and/or Brian have approached the employers of several bloggers who have criticized the Strumpette blog, trying to shut them up. In general, Strumpette's intimidation tactics have worked like a charm.

Update 5: Look gang, the formerly anonymous troll has decided to graduate up to plain troll - he's put up a blog under his own name, but sadly, he still can't communicate without vulgar language. Maybe someday he'll leave 7th grade behind...

Update 6: This Connolly guy is something else. He posted what I suppose he thinks is clever (go ahead and visit futhermore.com if you wish - no Google juice from me :) ). Suffice to say, it was yet another 7th grade level, vulgarity laced post. So I sent this via his comment form:

Congratulations, Brian - you've graduated from being an anonymous troll to merely being a troll. Someday perhaps, you'll learn to express yourself without using vulgar language. Until then, enjoy being mostly ignored.

So, he sends the all too common response to a colleague in marketing, and cc's corporate management:


From: Brian Connolly <bconnolly@furthermore.com>
Date: Wed, 24 Oct 2007 11:48:07 -0500
To: [ed: Cincom Address Removed]
Cc: [ed: Cincom Address removed]
Subject: Furthermore

Steve,

Again, will you PLEASE stifle your employee!!!!

Thank you.

Brian Connolly 

Showing again, Brian sure can dish it out, but he goes crazy if you dare to criticize him. It goes on, as I responded to an email he sent one of my colleagues:


From: James Robertson [mailto:jrobertson@cincom.com] 
Sent: Wednesday, October 24, 2007 12:41 PM
To: bconnolly@furthermore.com
Cc: Kayser, Steve
Subject: Linkbaiting


It's a fine attempt at linkbaiting, Brian, but it's not going to work.  Try looking at:
 

link:http://furthermore.com
 

Which shows nothing for your site.  Now have a look at Rubel's numbers (who you tried linkbaiting in your post about me):


link:http://micropersuasion.com

Or even the results for my smaller niche blog:

link:http://www.cincomsmalltalk.com/blog/blogView

So no, I won't give you the satisfaction of a link. I very much doubt that Rubel will spend more than a second on you either. 

Again, predictably, he went nuts:


From: Brian Connolly    
To: [ed: removed Cincom employees' email addresses]
Cc: 'James Robertson'    
Sent: Wednesday, October 24, 2007 1:54  PM
Subject: LAST NOTICE: STOP  IMMEDIATELY

Steve,

FOR THE LAST TIME? CAN YOU STIFLE YOUR  EMPLOYEE!!!!!

Brian Connolly


I'd add commentary, but it speaks for itself...

Technorati Tags: , , ,

 Share Tweet This

usability

Self Targeting

October 11, 2007 17:20:38.805

I noticed that Target got itself into a class action suit on web accessibility last week. I didn't think too much of it at the time, but the story popped at me again while I was reading the dead tree edition of ComputerWorld. I'll note that IANAL, but there are some obvious things Target is doing wrong, just from a basic accessibility viewpoint.

Go ahead and visit the site - then put the mouse over any of the images. Notice what's not there? No alt text. Now, I'm hardly perfect about that on my blog; I often let the default "jarober uploaded a file" text stay, for instance. Over on the main Smalltalk site though, I've tried to make sure that there's alt and title text for all the images - if I've missed something, I'd love to hear about it.

The funny thing is, this rather salient fact went unmentioned in many of the stories I saw on this - news.com being a notable exception. There may be other accessibility things necessary, but Target isn't even doing the basic stuff.

Technorati Tags: ,

 Share Tweet This

cst

Public Store Repository Upgrade

October 11, 2007 13:49:53.141

Important Announcement: The Public Store Repository will be offline for approximately 30 minutes (starting as I post this) - we are migrating the database to a newer, faster server. If there's a delay for any reason, I'll update this post.

Update: It's back online, and the performance improvement is noticeable.

Technorati Tags:

 Share Tweet This

weather

Finally Fall

October 11, 2007 10:42:02.228

Two days ago, it was hot like August. Today, fall decided to show up again:

At least I won't be coming back in from exercising looking like I went swimming in my jogging gear :)

 Share Tweet This

itNews

Storage is a Utility

October 11, 2007 10:02:57.195

It wasn't that long ago that getting a big, fast drive was fairly expensive. Those days sure passed quickly - via Nick Carr, I found this account of using Amazon's S3 for backup:

Two days ago I received an auto-generated warning from S3 about my account status:
"AWS was unable to charge your account based on the payment information you provided. Please update your payment method information using the Your Web Services Account section of the AWS web site."

Worried, he contacts his credit card company, and discovers that the payment issue was simple: Amazon tried to charge a penny, and that was too small an amount to process. So - Amazon just waived the fee. This was for a month's worth of backups, too. That's kind of amazing. It's a whole new world of utility storage out there.

Technorati Tags:

 Share Tweet This

screencast

Regular Expressions in Cincom Smalltalk

October 11, 2007 9:40:49.946

On today's Smalltalk Daily, we take a look at the Regular Expression support in Cincom Smalltalk. This isn't a detailed excursion into Regex; rather, it's a look at where to load the support from, and how to find the documentation for it.

 Share Tweet This

media

Reality, "Professional" Writers

October 11, 2007 8:05:37.535

Mathew Ingram has a fascinating look at the way old publications are trying to come to grips with the web - and it's not always management that provides the stumbling block. Employees and unions suffer from the same kind of old think - after Time Magazine's management set out a policy requiring their writers to target the website, things got silly:

It may have been rather poor timing for a call to arms, however, considering the writers’ union was in the process of negotiating a new contract with the publisher of Time, People, Fortune, Sports Illustrated and Money magazines. I expect the idea of tying job evaluations to web writing was like red meat.
The upshot: in return for other concessions, according to Women’s Wear Daily (which seems to have been the best source of coverage for this particular story, oddly enough), the management at Time agreed to a clause that says while employees will be “encouraged” to write for the Web, “there will no negative impact on any employee for not volunteering to do Web site work.”

I love that "no negative impact" thing. With circulation plummeting, how can there be anything other than negative impact? The denial of reality there is thick enough to cut with a knife.

Technorati Tags: ,

 Share Tweet This

music

The Pyrrhic Victory Meme Spreads

October 11, 2007 7:07:09.400

Tony Long spreads the pyrhic victory meme on the Jammie Thomas thing. His main points:

  • Regardless of wrongdoing, Jamie Thomas is potentially sympathetic. Not well off, a single mom... did the RIAA decide that an "own goal" was what they wanted, in PR terms?
  • The labels continue to screw the artists, and the artists are starting to realize that they don't have to take it anymore

Once the dust settles, maybe some of the useless middlemen working for the labels can find real jobs somewhere.

Technorati Tags: ,

 Share Tweet This

seaside

Travel with Seaside

October 10, 2007 15:28:27.046

Answers.com is now using a widget for travel that takes you to a Seaside application - do a search like this one, and the reservations application after the widget is Seaside. (Via Squeak News). (Corrected based on the comment that came in).

Seaside Reservations Widget

Incidentally, I did a podcast with Liz Cohen of Answers.com awhile back.

Technorati Tags: ,

 Share Tweet This

screencast

Smalltalk Daily 10/10/07: Active Record in GLORP

October 10, 2007 14:35:14.514

On today's Smalltalk Daily, we run through a few simple Active Record (database mapping) examples using Cincom Smalltalk and GLORP. You should probably watch the episodes from the 8th and 9th first.

Technorati Tags: , ,

 Share Tweet This

cst

The User Experience

October 10, 2007 13:57:57.382

I found this in a comment to an unrelated post, so I figured I'd highlight it and address the issues. He also complained about the installer; I sent that to the relevant engineer here at Cincom:

My real frustration comes from trying to install packages from the sTore.  I wanted to install Pier, so I went to the pier website, read the installation instructions, and it says to load the pier package from the store.  So I did that, yet the installation crashed because magritte was not loaded.  So I tried to load magritte, yet the installation crashed because seaside was not loaded.  So I tried to load Seaside, but the installation crashed because of some kind of 'dllcc' problem.   
Perhaps I should continue looking into this issue, maybe I made a mistake somewhere.  Yet, when installing packages, I'm used to it either telling me what I need, in plain english so that I can get the package, or giving me the choice of installing it automatically. 

This has to do with pre-requisite settings (or, in this case, the lack of them). I tried loading Pier myself a few weeks back; like the commenter, I gave up in frustration. Now in the case of Pier, I know that the VW port is a work in progress, but - at the same time - having load problems makes it very difficult for others to pitch in. This is a problem with plenty of things in the public repository (I've released code myself that is hard to load). The bottom line is: we (Smalltalkers) need to remember that there are new people coming in all the time, and having something break completely on load is very offputting.

Technorati Tags: ,

 Share Tweet This

music

Pyrrhic Victory, Part II

October 10, 2007 7:40:46.864

I might have been on to something with my thought that the recent RIAA p2p victory would be seen as pyrrhic. Techdirt notes that a small, but growing group of artists are starting to figure out that the "value add" of the music labels isn't such a great deal:

There are two key things to note in all of this. First, all these bands feel the need to ditch big record labels to do this (and, no, that doesn't mean that small bands without recording contracts can't succeed this way too). This is a sad state of affairs for the record labels -- because there still should be a place for them in helping to promote and market a band, even if they're giving away the music for free. It's just that they're not venture capitalists any more and bands don't need help in distributing content -- two businesses the record labels insist they're in.

I think this only fuels the desperation and stupidity on the part of the labels. You've got a whole ton of useless middle-men who are accustomed to a comfortable existence - and digital distribution has come in like a sledgehammer. They no longer control the horizontal, the vertical, or anything at all. Bands can promote their music in a variety of online forums, and not sell their souls for a few pennies of royalties.

Sure - most bands will have to rely on touring to make most of their money, but that's no different than it is now. The real difference is that the incremental revenue they do get from online sales of mp3 and CDs will go in their pockets instead of someone else's.

Technorati Tags:

 Share Tweet This

web

Driving Traffic

October 10, 2007 7:21:43.052

Scoble notes that we really are in the narrowcasting business:

Every time I get on TechMeme I get 500 to 3,000 visits. That matches what the Guardian and what Nick Carr are seeing.
But, truth is not many sites out there do any better. Yeah, when I get on Digg I get 20,000. When I got on the front page of the BBC a couple times in the past month I got 5,000 each time. But Valleywag? I get 100 to 1,000 visits (I’ve been on there something like 20 times including with some VERY sensational posts that would make anyone click and ask themselves “what the heck did that guy do?”)

I certainly don't see a noticeable pickup from being part of the Techmeme discussion links - and this site lands there a lot. Unless you're writing a celebrity or political blog - and even then, you have to get noticed first - you're getting mostly a set of "regulars" to your site. There's nothing wrong with that, but it's worth remembering the next time you look over your logs.

 Share Tweet This
-->