Tuesday, December 27, 2005
Platform standards and loose coupling
I guess I should be clear here that I'm interested optimizing for effectiveness, not efficiency. By effectiveness I mean that speed of development, quality of service, time to market, flexibility in the face of changing business conditions, and ability to adapt in general are much more important than overall number of lines of code produced or even average function points per month. That is, a function delivered next week is often far more valuable than ten delivered six months from now.
To do this, you need to start with the organization: Architecture reflects the organization that produces it. So, first you need to create an organization of loosely coupled small pieces, with a very few well chosen defining principles that let the organization work effectively.
Each part of the organization should decide on things like the application server platform they should use individually. They're the ones with the expertise, and if there really is a best answer for a given situation they should be looking for it. On the other hand, if there's no clear answer and if there's a critical mass of experience with one platform, that one will end up being the default option. Which is just what we want; there's no top-down control needed here.
So the only case where there's an actual need for top-down organizational platform standards is to get a critical mass of people doing the same thing, where the benefit accrues mostly because of the critical mass, not because of individual project benefits. There's not much benefit to bulk orders of Apache/Tomcat, so if you're avoiding vendor lock-in the main reason to do thisis to enable interoperation. But that can be accomplished by picking open standards and protocols -- pick some basic, simple, straightforward standards, make sure that teams know about them and are applying them where appropriate, and they'll be able to talk together. This is a risk mitigation strategy rather than an optimization strategy; in other words, you know you can always get something working with a known amount of effort using the loosely coupled strategy. When you're tightly coupled to anything, this is no longer true -- you inherit its risks. Tightly coupling an entire organization to an application server platform also creates a monoculture, making some things very efficient but also increasing the risk that you'll be less able to adapt to new environments.
Tuesday, December 20, 2005
Google + AOL
Wednesday, December 14, 2005
Syndicate Day 2
I'm sitting right now listening to Doc Searls give the closing comments, which is a good way to close out the day. He's just finished making fun of hotels and is talking about the Live Web so I'd better pay some Attention.
Tags: syndicate
Tuesday, December 13, 2005
At Syndicate
Great. Larry Weber just related an anecdote about an IM based test preparation service which made $30M last year... which is nearly the same as a startup idea I was tossing around with some people three years ago. Well, I guess I need to average that out with all the truly stupid startup ideas I've had in the last three years before kicking myself. :)
Monday, December 12, 2005
Beta features
panzerjohn at 6:24:16 PM PST Link to this entry | Blog about this entry | Incoming Links | Notify AOL
Beta only features (not going to journals.aol.com this week):
o An AIM presence icon showing status for screen names listed on entries or comments;
o Incoming links searches for other sites linking to that entry
Features going to journals.aol.com this week:
o Blog about this entry to make it easy to link to other people's posts
o Notify AOL about specific posts that violate terms of service
o For Private Journals, the ability to simply make your Buddy List your reader list (adding buddies adds them as readers).
Monday, December 5, 2005
RFC4287: The Atom Syndication Format
Some fun RFC numerology: 4287 is a single-transposition permutation of my office phone extension. It's also the star catalog number for Alkes Crateris, the primary star in the constellation Crater (The Cup). Clearly Atom is the Grail. Or maybe my phone is.
Wednesday, November 30, 2005
Tag Tuesday
Do meta-tags (tags applied to tags or tag-url tuple instances) make any sense? It's tags all the way down... Kevin Marks commented that co-occurrences of tags are good enough for most purposes. Need to think about that one.
Kevin's TailRank beta is a "meme finder" as opposed to an aggregator. It uses OPML subscription lists to help filter information based on what you and your friends are interested in -- and he's working on getting some kind of automatic sync-up going. Seems like this would benefit from Ray Ozzie's Really Simple Sharing initiative. There's a problem here, though -- the whole point of this is that you don't have to explicitly subscribe to feeds, but if nobody explicitly subscribes to feeds, where will the interest data come from?
Now, I really like the concept of mobile.tailrank.com. I really don't want to manage a set of subscriptions for my mobile device and it really can't handle the set of subscriptioins I have on my desktop. But something that automatically filters interesting news, with input from my desktop subscriptions, seems like a natural win for a mobile service.
Oh, and we had a smooth and uneventful Journals update this morning. Fortunately for Joseph the Intern.
Tuesday, November 29, 2005
Neat site statistics service
http://www.pubsub.com/site_stats
Monday, November 28, 2005
Stamping out brush fires, one by one
OK, so now for the geek update. The character set encoding issue? Well, basically, the major technical update in this release involved moving to a new web server and servlet engine (Tomcat). Unfortunately, we discovered too late that Tomcat by default decides that HTML form data is encoded in ISO-8859-1. Also unfortunately, Journals uses UTF-8 throughout. For most common English characters, the two encodings give the same bytes; it's when you start speaking French (or talking about your re'sume') that you run into differences. So the problem here is we didn't test this enough after the switchover and got caught by surprise. The solution involves setting the encoding to UTF-8, but doing it in the right place is a bit of a problem -- if you set it AFTER the servlet engine starts reading stuff, it ignores you. Personally I think it should throw an exception if this happens since encodings are, well, kind of important, as we've demonstrated over the past couple of weeks. In any case, the solution we're looking involves a servlet filter similar to this one. More generally, we need to figure out how to add this as a general, automatic test so that it's just not possible to skip it -- and so that we'll be alerted within hours if some other configuration change breaks things, hopefully weeks before we make that change to the live production site.
Thursday, November 24, 2005
106 Miles to Chicago
Elwood: It's 106 miles to Chicago, we've got a full tank of gas, half a pack of cigarettes, it's dark and we're wearing sunglasses.
Jake: Hit it.
-- http://www.imdb.com/title/tt0080455/quotes
Wednesday, November 23, 2005
What's happening, and a preview of the new patch
The interesting thing (from our perspective) is that the change was pushed out first to beta.journals.aol.com, and it works fine there. Which means that if you want to see a preview of the change, you can view your blog on beta (use "beta.journals.aol.com" instead of "journals.aol.com" in the URL) and take a look. My personal opinion? Might help a little, but we need to do more. (The release also includes a fix that will, hopefully, resolve the entry saving problem for anyone who still has it.)
In other news, the Washington Post story "You've Got Ads" came out this morning. Some reactions from the blogosphere are here. The press release from AOL got some facts wrong about ads on blogging services; I can't comment beyond that since that's an official communication and this blog is highly unofficial. But, when AOL issues a press release that says the sky is green, I don't think it's against our communications policy to simply note that, looking out the window, the sky looks awfully blue to me.
Wednesday, November 16, 2005
Those Banner Ads
Quote:
I was never happier to be a part of this than I was last Friday, when I got the chance to be guest editor. In the span of a weekend, I heard from a lot of people that I didn't know before, and discovered a ton of creative journals that I did not know existed. And then, just two days later, it all disappears, thanks to the inconceivable way that the higher ups of this company thought they could just walk all over us. Unbelievable. I have never encountered such a swing, from high to low, in such a short time. It's incredibly sad for EVERYONE. And for the life of me, I cannot fathom how NO ONE at AOL has the decency to at least address the situation. What are they waiting for? The damage has already been done-there are folks that won't be coming back even if the ads disappear now. -- Jim
Personal opinion, as a blogger? The ads suck. The communication about
the ads? Not so good. And the release problems? Also
not our finest hour. So, I'm feeling pretty down overall.
Now then... Given that the situation is what it is, what can we do
about it? A dialog would be good. People are commenting on Joe and John's blogs and
grouping and writing petitions
and emails, which is great. I'd suggest one
additional thing: Post your opinion on your blog. That's
what they're for, right? And when you do, one more technical
suggestion that might possibly help with the dialog. Tag your
post by adding this snippet at the end:
Tag: AntiJournalsAds
What this will do: When you click this link, you'll see a list of all blog entries and other stuff tagged the same way. More to the point, anyone at AOL can do the same thing and see what people are saying in one place. Note that you don't have to use Journals to make this work.(If you choose Viewas [HTML], you should see this: <a rel="tag" href="http://technorati.com/tag/AntiJournalsAds">AntiJournalsAds</a>.)
I'm assuming here that the posts are actually anti-ads; if you want to post in favor of them, feel free to create a ProJournalsAds tag. I'm not holding my breath.
Aside from that, we are all working to get your feedback to the right people. We'll see what happens. Personally, I'd love to do some revenue sharing between content creators and us; I think this is a case where everybody could win by taking smaller pieces of the pie while growing the pie. That won't happen quickly, though, for technical reasons.
Wednesday, October 19, 2005
TagCamp
Update: We're sending a posse to TagCamp:
EdwinAoki, SaileshDavuluri, SeanSu - Brainstorming ideas around tag spam, or SPAG.
And, we're helping out with dinner too. Wish I could be there... I might manage a drop in at some point. I hope Edwin or Sailesh or Sean will be event blogging.
Tags: TagCamp, SPAG.
Thursday, October 6, 2005
AOL buys Weblogs Inc.
Good coverage here. The lines between traditional media and blogging are going to continue to blur. And AOL is getting in on the ground floor.
Wednesday, September 14, 2005
Google Blog Search
Some of the more relevant / useful links:
Dave Sifry's reaction: Google's entry validates the space.
Bob Wyman welcomes Google Blog Search because it complements PubSub. Though I think I'm a bit fuzzy on exactly what the distinction is.
Threadwatch has some technical details.
Commentary on Technorati vs. Google from WebProNews (Charlene Li's take).
Saturday, July 16, 2005
The new Atom is here! The new Atom is here!
(Next step: Defining the general Atom protocol standard, which will enable interoperable use of Atom for things like blog editors.)
Wednesday, July 13, 2005
Blog This
With our latest rev of Journals, we've enabled a new Blog This feature. You need a special "bookmarklet" to take advantage of it. Since Journals prevents pages hosted on aol.com from hosting Javascript, I have to give the ugly Javascript code for the link in plain text:
javascript:q=""+(window.getSelection?window.getSelection():document.getSelection?
document.getSelection():document.selection.createRange().text);void(
window.open('http://journals.aol.com/_do/blog_this?js='+escape(document.title)+'&
je='+(q?escape('"'+q+'"'):escape(location.href)),'_top'))
Create a bookmark and copy and paste the Javascript URL above into the URL box. Then, select it when you're looking at a page you want to comment on. It will bring you directly to an Add Entry page with a default title and text. (If you select text on the original page first, it will copy that over automatically.)
New beta feaure: Journals panel
Cool new beta feature in AOL Explorer (http://beta.aol.com/projects/aolexplorer/index.html?): The Journals side panel. I'm posting this from AOL Explorer right now. Very nice.
This version lets you drag and drop selected text from the page you're viewing in the main browser tab. Really handy for commenting on things!
Sunday, June 26, 2005
Microsoft Embraces RSS
(The big question is, how long will we be waiting for Longhorn?)
Wednesday, June 22, 2005
Supernova: Guten Tag
On a side note, I've been behind on blogging and missed congratulating Technorati on their cool new look & features. I managed to show their new consolidated tag search to an executive yesterday -- searching for tags popped up not only posts, but photos from buzznet and flickr. It was a great way to point out the utility of interoperability.
Kevin made a good point about cognitive load. The cost of applying a tag needs to be near-zero. The iPhoto keywords feature is a great anti-example.
The ecosystem is jumping all over tags. LiveJournal added support for tags last week. The Mac "ecto" tool now has tag support as well. Oh yes -- upcoming.org does hCalendar; evdb does hCalendar and hCard. Note to self: Check all these out soon.
I do think people are waving their hands a bit around authorization and authentication, especially when Tanenbaum talks about an ecosystem of services. Do I just give all these services all of my usernames and passwords? How do I know I can trust some of these little fly-by-night web services with my private information? Also, Marty, please, please don't curse this by invoking AI.
In the future, I'll Google "concerts in the next week" and get not just websites but a consolidated, sortable list of events from all sources.
Best comment of the session (rough quote) from John Seely Brown: "You're doing pragmatics as well as semantics and that's why you'll win."
Tuesday, June 21, 2005
Supernova: Microformats
What I like about microformats: Start simple and focused. Evolve rapidly. Borrow like crazy. Keep things human readable. Decentralize completely. Get real world experience. Microformats like tags, hCalendar, and hReview are simple enough (and built on infrastructure that's solid enough) to let the community build interoperable services.
Best part for users: Microformats are based on XHTML. Which means they're human readable HTML as far as users are concerned. No weird XML gobbledygook, no strange attachments, no extra files to cart around.
Specifics: hCalendar is great because it's just vCalendar mapped to XHTML. There was a great demo of a service which turns an hCalendar link into an vCalendar data stream automatically; I'm now subscribed to Tantek's calendar through this service. hReview is based on what people are publishing on the web today, just adding some markup so machines can see the semantics.
Tools are starting to pop up. There's a Greasemonkey script for doing hCalendar in any text box. Movable Type is adding support for writing hReviews. Next step will be services like Technorati and Google paying attention to the semantics.
Next topic was tags, the uber-microformat (or nanoformat). It'll have to wait for the next post, though. Need to get some sleep.
Going Supernova
I went to Monday's Connected Work workshop mainly in hopes of getting some insights into collaboration trends. Not too many surprises -- blogs and wikis everywhere, of course. Some good points about the need to not lock down things too tightly (heresy to traditional IT departments) because your breakthrough ideas usually come from cross-fertilization. Quote: "98% of everything should be visible to everyone in the company." Hear, hear.
Thursday, June 9, 2005
How Not to Get Hired
If you're in the top 1% of coders, maybe you can get away with this. Otherwise, please run a spell checker on your resume before sending it in.
(I'm a really nice guy so I finished reading the resume; the rest was just as bad, though.)
Wednesday, May 25, 2005
Proud member of the X-List
I figure I'm somewhere in the middle of the X-List.
And yes, I think the Blogebrity Swimsuit Edition would be a really bad idea.
Thursday, May 19, 2005
My Google Debuts
Monday, May 9, 2005
Nofollow for Journals
Thursday, May 5, 2005
AIM Blogs
I'm ecstatic about our latest release of AOL Journals (just announced) -- AIM Blogs! This essentially opens up the AOL Journals blogging service to the public. Anyone with a free AIM screen name can now create blogs at journals.aol.com. Cool!
Tuesday, May 3, 2005
Stumbled across: Feed Fest
"Feedfest is a six-month online multimedia series focused on the increasingly dynamic and powerful content syndication applications that are allowing people to consume what they want, when they want, where they want and how they want. Launched last year as “RSS Winterfest”, the re-named event will feature interviews with the thought leaders who are shaping new ways for content to be published and consumed. This year’s program has expanded to include other syndication formats besides RSS, and will also explore the growing syndication of audio and video as well."
Looks interesting, though I am wondering: Why six months? Do Robert Scoble, Steve Gillmor, Bob Wyman, & co. hibernate for the other six?
Thursday, March 24, 2005
Atom Authentication
Note that the proposal also allows servers to require authentication for comments -- something that would be a helpful building block in fighting comment spam.
Friday, March 18, 2005
SD West: SOA: The Next Big Thing (Keynote)
Dave cut the Gordian knot involved in defining service oriented architecture ("the debate is both endless and pointless") by stating that it's defined by the dominant technologies: A service is what the dominant products say it is -- and WebSphere and .NET are the dominant products, so services means SOAP and WS-*. And I'm not sure, but I think he defines 'dominant products' as 'whichever platforms have the most market share among vendors selling tools to enterprise developers'. Which of course rules out anything that doesn't help sell platform tools :^). I glance at the Internet, which is mysteriously working again, and verify that Dave Chappell is an old-school DCOM guy. He seems very happy that the vendors are finally agreeing on a shared standard for communication; after the CORBA/DCOM/RMI wars, I imagine so.
He did have some useful points to make about moving to SOA within an organization, identifying two major approaches: Top down, in which you identify business needs, document requirements, design an architecture, and implement the services in a well planned, sensible way. The pros are that this is elegant, clean, and sensible; the cons are that it's (nearly) impossible. Requires high investment and long-term business buy-in. He recommended the bottom-up approach (just build one service, then another, then start thinking about central SOA issues such as security and management) as a practical if ugly approach.
He presented a toy example using C# code. Now, his main points were about the orthogonality of OO design and service architectures, which is all well and good. But I felt that the choice of an example class with "add(x,y)" and "subtract(x,y)" methods which get turned into web services sort of obscures the question -- why would we want to do that? It's a ridiculous web service. Why not pick a toy example that actually makes some tenuous sense as a web service? For example,a word definition lookup service?
In the short Q&A period, one person asked the obvious question: What about the REST-ish approaches that so many service providers such as Google, Yahoo!, etc. are using to expose services? Dave's answer was somewhat revealing, but as a tourist I'm not sure I can properly interpret it. He said, #1, web services are defined by SOAP and WS-* because that's what the dominant vendors say; and #2, he doesn't "get into SOAP vs. REST debates because the REST community..." and there he paused, and looked thoughtful, and then reiterated "I don't get into SOAP vs. REST debates". He sure seemed uncomfortable to me.
(Side note: My spell checker suggests "DOOM" as an appropriate substitute for "DCOM". Sometimes I think it's really acquired AI and it's just toying with me.)
SD West: Software Requirements: 10 Traps
Lots of good advice and pointers to resources in the talk. He had some valuable points regarding the different views of what a 'requirement' is to different stakeholders. He presented a framework for separation into business (why), user (what), and functional (high-level how) requirements, and how to categorize requirements into this framework to help avoid confusion. This becomes particularly important when doing incremental development (which is what almost everybody does): It's OK to be fuzzy on some of the functional requirements before starting a project, but the business requirements had better be very clear and solid.
Regarding change control boards, I asked how one can scale a CCB so it doesn't become a bottleneck in a large program. He said (interpreting a bit) that the way to scale a CCB is to identify policies so that you can distribute responsibilities among CCBs -- only escalating change requests up to a central CCB if its scope truly warrants it.
The slightly depressing part about this talk was that I knew most of the solutions presented; however, none of them helped to solve the really hard people problems that actually are the root cause of most requirements issues.
On a side note, the wireless network stopped working for me during this talk. I started seeing packet round-trip times of >>1sec to reach what was supposedly our DNS server. I think this highlights one of the nonfunctional requirements that should have been part of the requirements for the Santa Clara Convention Center network: When you build a wireless network for a convention center in the middle of Silicon Valley, make sure that it can handle a few thousand software engineers with laptops!
SD West: Understanding SOA
Quick takes: Mike stated that UDDI is not used much outside the corporate firewall (my personal prediction: It never will be in its current form.) IBM and MSoft are repurposing existing applications, such as Tivoli, to help manage corporate web service networks. I asked about interoperability; monitoring and development tools based on one of the "big two" platforms will have a difficult time interoperating with the other, though the web services themselves should be able to run on either platform with "some data mapping."
The most interesting statements: Dave Chappell mentioned after the talk that things like security will only have shipping implementations in 2006 and reliable messaging doesn't have a final spec yet. Also, on a totally random tangent, I overheard someone behind me saying "XSLT makes all those lies about 'you can do anything with pointy brackets' true!".
Monday, March 14, 2005
Inductive Blacklisting?
Fortunately, Journals provides a way to both delete a comment and block the commenter's user id (screen name) from future comments to that Journal, which is handy in these situations. But perhaps it doesn't go far enough. Perhaps there should be an auto-blacklisting feature: If enough different people comment-block a user id, perhaps it should be blocked from any further comments anywhere for a significant period of time. It would at least slow down the spammers.
Wednesday, January 19, 2005
Comment spam and nofollow
So AOL Journals plans to support the initiative to make at least one form of comment spam ineffective -- the rel="nofollow" attribute. The idea is that this would be honored by search engines such as Google, and would mean that these links wouldn't count towards increasing the page rank of the target. So, this form of spam would be rendered useless immediately. Of course, other forms would still persist, but I say it's better to light a candle than curse the darkness. Or at least do both in parallel.
Wednesday, January 12, 2005
Virtuous cycle of creativity
That's why the announcement of My MSN RSS aggregation with feed search is interesting; a My MSN aggregator, plus MSN Spaces means Microsoft can leverage both sides. So they could make it very easy, for example, to subscribe to the RSS feeds for Spaces owned by people who comment on your blog. Or do any number of other things which increase the value of being an MSN member. And, obviously, these tools still interoperate with the rest of the blogosphere (note that Spaces has had RSS feeds since launch).