« January 2009 | Main | March 2009 »

February 27, 2009

Area Code Change in Utah on Sunday

Utah Population Density Map

Image via Wikipedia

This Sunday, the new, 385 area code will become available in Utah. Unlike past changes to area codes in Utah, this will not be geographically based, but an overlay. Plenty of other places in the US have done this already, but this is a first for Utah and the first time most people will have to dial a 10-digit number for all calls. So, updte your phone directories in your cell phone to include the area code and bask in the joy of knowing you live in a growing, vibrant area instead of complaining about the extra three digits.

There's a bill in the Utah House HB 215 (PDF) that would stop this and force the phone companies to split the geographic area now served by the 801 area code and assign 385 to part of it. Silliness. I'm not sure how it would work anyway given that the change is happening before the legislation would be law. That would be ugly.

3:51 PM | Comments () | Recommend This | Print This

February 26, 2009

Safari 4 Public Beta Kills MailGrowl

Growl

Image via Wikipedia

I'm a big fan of Growl, an OS X add-on that creates a universal messaging system on the Desktop. Various plug-ins for Growl allow other applications to send messages. One is GrowlMail, a plug-in for Mail.app, that sends notifications of incoming mail.

Last night I installed Safari 4 Public Beta and then Mail quit working. After a little exploration, I found this notice from Apple that "After installing Safari 4 Public Beta in Mac OS X v10.5.6, Mail may unexpectedly quit when opened if a third-party Mail plugin is installed." It specifically references GrowlMail. I removed it from ~/Library/Mail/Bundles and all is well.

As far as Safari 4 goes, it's pretty cool. Lots of neat features. Some of them have been in Chrome, but of course OS X users don't have access to Chrome. Someone remarked that when Chrome finally comes out for OS X, Safari will have taken all of the wind out of it's sails. Safari 4 is fast, beautiful, and has lots of fun toys. There's only one fatal flaw: it's not reliably or easily extensible the way Firefox is and that's why Firefox will win this battle--at least on my desktop.

7:16 AM | Comments () | Recommend This | Print This

Making Sense of Digital Identity

iiw_194.JPG

Image by dsearls via Flickr

Gabe Wachob is going to be teaching a course on digital identity as part of the Blue Oxen Associates Sense Making series. From the intro:

Digital identity has always posed unique social and technical challenges centered around security, privacy, and convenience. The Internet has made these challenges even more complex. The good news is that a number of new technologies are creating new opportunities for creating a secure and private Internet, where individuals are in control of their own data. This is a win-win scenario, because it creates new opportunities for service providers. The challenge is that this area is complex and rapidly changing.

Our coach, Gabe Wachob, will help you navigate this space quickly and act on this information intelligently. He will:

  • Help you understand the challenges unique to Internet-scale digital identity and how these new technologies fit into Web 2.0 and the enterprise.
  • Walk you through the alphabet soup of Internet Identity (from OpenID to Information Cards to oAuth and XRD), including how these technologies are being used, how they're evolving, and what their practical limitations are today.
  • Give you insight and access into the community that is developing these technologies, and explain how you can influence their evolution.
  • Work with you on the aspects of Internet Identity that are most relevant to you.

If you're in the Bay Area and have wanted to understand the ideas behind digital identity better and especially find out how it can affect your business or project, then this is a great place to start.

7:06 AM | Comments () | Recommend This | Print This

February 24, 2009

CTO Breakfast this Thursday

Utah Lake from the mouth of American Fork canyon

Image by windley via Flickr

We'll be holding February's CTO breakfast this Thursday (Feb 26) at 8am in the Novell Cafeteria (Building G, Provo campus - map). Whether you're a CTO or not, you're welcome to come. The discussion is about building high-tech products, building companies, and what's hot right now. We'd love to have you join us.

Here are future dates to mark on your calendar:

  • Feb 26, 2009 (Thursday)
  • Mar 27, 2009 (Friday)
  • Apr 24, 2009 (Friday)
  • May 28, 2009 (Thursday)

I have created a Google Calendar with dates for the CTO breakfast that you can subscribe to.

Or if you'd rather subscribe from iCal or Outlook, here's the iCalendar link.

I hope to see you there.

9:28 AM | Comments () | Recommend This | Print This

February 20, 2009

SMS Phishing Attack

Extreme Fly Fishing

Image by Chaddycakes via Flickr

I received several texts this morning, allegedly from my bank that said:

FRM: FARWESTBANK MSG: Urgent Far West Bank message AUTHORIZATION. To verify call TOOL FREE 8662249038.

Being the curious sort, I called and played around with it. The system was an IVR that asked for credit card information (all of it). I recorded the call so you can listen too. Click here for the MP3 file.

The places with low audio are me typing my responses. Of course, I didn't give it a real credit card number but I did give it a good test number so that if they were doing CRC checking on the number, they would accept it.

First time I've been phished via SMS. I'm afraid that many might see it as legit just because of the infrastructure involved and fall for it.

I tried to contact the Utah Div. of Consumer Protection. They offer a convenient PDF form that you can print and mail in for reporting things. Ended up just sending it to the AG's office.

8:45 AM | Comments () | Recommend This | Print This

February 17, 2009

Context Automation

Kynetx Logo

Judith Burton has written a good piece on context automation and what we're doing at Kynetx. She says:

When browsing the Internet, each web site encounter throughout the browsing episode is a separate or ad hoc experience. There is no thread or connection from one site to another except in the user's mind. The user must hold the context of the browsing episode outside of each web site encounter.
From Context Automation
Referenced Tue Feb 17 2009 09:30:53 GMT-0700 (MST)

And then later:

To create a context across multiple sites, an abstraction layer may be employed that is capable of gathering information from the user and from each site throughout the entire browsing experience. This interactive cross-site abstraction layer is called Structured Browsing.
From Context Automation
Referenced Tue Feb 17 2009 09:31:45 GMT-0700 (MST)

Having an abstraction layer that is easily programmed on one hand and easy to interact with on the other is the key. Such an abstraction layer can be programmed to manage different kinds of context while giving the user a consistent experience.

We're working hard to get the Kynetx abstraction layer, which we call KNS, ready for a more general deployment. We hope to offer limited access to developers interested in creating contexual Web experiences in the next several months. In the mean time, I'll be blogging thoughts here. Also, if you haven't read the white paper (PDF) it will explain much of this in more detail.

9:36 AM | Comments () | Recommend This | Print This

February 16, 2009

Book Review: The Advent of the Algorithm

Computers are important--everyone knows that. But computers aren't nearly as important as the ideas behind them. If you want to understand why computer science is important, then you need to read Berlinski's book, The Advent of the Algorithm: The 300-Year Journey from an Idea to the Computer. Berlinski ranks the algorithm as the idea, next to calculus, that has most shaped modern science and, consequently, our world.

If there's one things that gives me pause in recommending this book, it is that I'm not sure how accessible it is to the layman. For someone with a Ph.D. in Computer Science its entertaining and thought provoking and very understandable. I'd appreciate knowing what you think of it.

10:44 AM | Comments () | Recommend This | Print This

February 13, 2009

Just in Time for Valentine's Day: Bob Blakley on Relationships

IIW2007: Day 1

Image by orcmid via Flickr

When Bob Blakley presented his ideas on relationships at IIW a while back I blogged it and so did others (like Drummond). After Bob released his paper on the subject to Burton Group subscribers, I blogged about relationship providers (with pictures even). Then Scott and I interviewed Bob on the subject for IT Conversations. Needless to say, I think this is an interesting idea. Now, I'm happy to report that Bob and Burton Group have made the paper publicly available. Go get it and read it. There are some great ideas in there.

8:32 AM | Comments () | Recommend This | Print This

February 12, 2009

SpokenWord Has Launched

SpokenWord logo

Doug Kaye has launched SpokenWord.org, a "new free on-line service that helps you find, manage and share audio and video spoken-word recordings, regardless of who produced them or where they're published." SpokenWord lets you build collections of programs or follow someone else's collection. There are a number of things you can do with a collection (from the FAQ):

  • Add Tags to help others find your Collections. Go to My SpokenWord and click on the collection's [edit/tag] link.
  • Add Comments.
  • Click on the Share This link to send via email or post to services such as Facebook, del.icio.us and Digg.
  • Subscribe to any collection using the RSS/feed icons for iTunes, Google Reader, My Yahoo!, etc.

Very nice stuff. I think SpokenWord.org is going to set a new standard for helping people find and manage their podcasts.

9:35 AM | Comments () | Recommend This | Print This

February 10, 2009

Is SOA Dead?

SOA victims

Image by crazbabe21 via Flickr

At the first of the year, Anne Thomas Manes wrote a provocative blog entry stating that SOA is dead. This week's Technometria podcast is a discussion with Anne about her thesis and what it means for practitioners and technologists. I think you'll enjoy it whether you're a fan of SOA or not.

From the description at IT Conversations:

Service-Oriented Architecture (SOA) provides ways to group functions around business processes, packaging them as services. This allows for better coordination between services. Anne Thomas Manes of the Burton Group joins Phil and Scott to discuss whether SOA is dead.

Many of her ideas are built around the idea that people are bad at architecture. She reviews examples of concrete architectural practices, including arch and process normalization. As part of her review of SOA, she shows why spectacular gains come from spectacular efforts.

From Anne Thomas Manes
Referenced Tue Feb 10 2009 14:30:26 GMT-0700 (MST)

You ought to also read Anne's post on the responses to her original article for a few laughs.

2:33 PM | Comments () | Recommend This | Print This

February 9, 2009

More on Context Automation, Privacy, and Kynetx Business Models

Kynetx Logo

Joe Andrieu posted a response to the white paper I released last week. I'm grateful that Joe would take the time necessary to read the paper in depth and offer a long, well-thought out, and helpful set of questions and critique. From his article it's clear to me that Joe understands the problem space well and has a firm grasp on what Kynetx is doing there.

Joe raises a number of questions and points that I'd like to respond to.

First, Joe asks who the target developers are: Web sites or third party services. Or both? Our primary offering is aimed at third party services, but we also recognize the value that Web sites can add by responding to people more appropriately. For example, we have an OEM arrangement with Parity for their RemindMe service. Their customers (i.e. people with RemindMe cards) benefit, however, if Web sites work well within this larger context. Incidentally, those Web sites benefit as well. We believe this dual-use strategy is the right way to go since we want to see the kind of silo-spanning context-aware services that third parties are likely to build and yet know that there has to be a way for the silos to play the game too.

Joe's second question foresees a user experience nightmare with users managing A cards on B sites and getting caught in a crush of A x B "identity ceremonies." Something that isn't clear from the white paper is how this user experience is managed. In most cases (certainly the kind of casual-browsing, context-management activities mentioned by Joe), Kynetx is the relying party--not the individual Web sites. Before data from cards is sent to the site, of course, a separate ceremony establishing a identity session between the site and the person would have to be performed. But this happens only when the user is intent on dealing with that site, not when just cruising around.

This might raise some questions about privacy and security, so it's important to understand in these scenarios that the user data isn't ever leaving the browser. Some session data is sent back to Kynetx servers, but not the data out of the cards themselves.

Joe also mentions in his discussion the idea of user data stores. Yeah. That's one reason I'm interested in first class namespaces in programming languages. We'd love to collaborate with Joe on the idea's behind Search Map and user-driven search since user controlled data stores are important to us as well. I foresee the day when a KRL rule can use and respond to the data in a person's SearchMap. KNS has the ability to link to data stores on the Web and on the user's machine (permissioned, of course) but accessing those in a coherent way within KRL requires more advanced linguistic leverage than we now have. It's on my list...

Joe says that user's do want to manage their context, but they haven't been given the right tools. Fair enough--in fact, I don't think we're actually saying different things. We don't anticipate that people would have no part to play in managing context. We see KNS as a tool for managing context and using it effectively. Right now, Web users mostly manage context in our heads--there is a dearth of tools for helping with that task.

Joe also raises questions about privacy and data rights management of data inside information cards (or OpenID attributes, for that matter). That's a bigger issue that Kynetx alone can solve, but I do think we're in good shape in that regard. As I mentioned above, most of the data stays in the browser and Web sites never see it until the point that the person is ready to take action. Joe uses the AAA and Hertz example. When you use your AAA card at Hertz, Hertz knows you're a member and can tells others. We don't solve that problem, but we don't make it any worse. In fact Kynetx decreases the frequency that you'd have to reveal you're a AAA member while still letting you receive the benefit of knowing what it will get you as you cruise the Web. We allow merchants to respond to you without you having to reveal data to those merchants.

Perhaps's Joe's most important discussion from my perspective is on business model. He's right: CPM charges for ruleset evaluations increases friction at the adoption point and for smaller players. That's a problem and we're open to fixing it. I'm not opposed to more open models--in fact I see great value there.

That said, Kynetx also has to survive and right now that means getting funding. The because of model is great as far as it goes, but I don't find the idea of selling consulting and IDEs to be very compelling. I frankly can't imagine myself sitting with a VC and pitching it. Maybe I'm gun shy or lack vision, but I'm unsure how it would play.

At any rate, I'm anxious to collaborate with Joe and others on this. Our vision is similar and our methods aren't that far apart either. This is a fun time to be working in the Web.

Update: I forgot to comment on Joe's point about centralization. His idea of using a reputation network with strong identity in place of centralized certification is brilliant. We're definitely not looking for ways to make this more centralized. Quite the opposite.

1:22 PM | Comments () | Recommend This | Print This

February 6, 2009

First-Class Namespaces in Programming Languages

A graphical depiction of a very simple xml doc...

Image via Wikipedia

Over the last few years, I've written plenty of programs--in various languages--that used a HTTP library to fetch an XML document pointed at by a URL and then used XPath to grab parts and pieces of that XML document. The problem with this is that I'm using two different namespaces (the URI and the XML) neither of which is directly supported by my programming language.

Programs that use relational databases suffer similarly: a datastore with a namespace that is extralingual. One of the great selling points of JSON is that it reduces the cognitive load of programmers by getting rid of at least one namespace by simply reading the data into the program's namespace directly.

Historically, programmers dealt in local, in-memory data structures that they usually built themselves programmatically. Modern programmers face the challenge of multiple namespaces at every turn and yet our programming languages haven't grown up to help us meet those challenges. They provide nice linguistic abstractions for dealing with local data, but force the programmer to make all the mental leaps necessary to translate between the local store and any remote ones.

This week Drummond Reed came to visit for a day and as we talked, I realized that you could resolve this situation by giving the programming language a namespace vocabulary rich enough to handle most remote and local situations. Further, with what we've learned about namespace resolution over the last decades, we can resolve namespace references in ways that programmers wouldn't have to worry about whether data was local or remote. Programmers could just use a reference and anywhere a variable would do and let the underling system worry about the details.

Of course, since I was talking to Drummond, XRI and XDI were the primary focal points of our discussion. XRI is a well-thought-out system for creating URL-like namespace references. XDI is a way to resolve those references into data. Using XRIs you can create abstract references to data regardless of whether it's local, comes from a URL/XML combo, lives in a session hash, or even resides in an information card on the user's machine.

I believe that incorporating XRI references into a programming language as first-class objects would offer a powerful abstraction on data. I'm anxious to give it a shot. The trick, of course, is to continue to make easy things easy to do without complicating every variable reference while at the same time allowing programmers to leverage the power of other namespaces when needed.

I'm sure there's a programming language out there--maybe even a dozen--that provide support complex namespaces. I'd love to know what they are and how they've worked. In the meantime, this is what I think about when I'm driving.

8:48 AM | Comments () | Recommend This | Print This

February 4, 2009

The Advent of Next Generation Browsing

Kynetx Logo

Today I'm releasing the first of a series of white papers on Kynetx and what it's trying to accomplish: The Advent of Next Generation Browsing (PDF). I introduce the problem in the first few paragraphs like so:

We are mired in a tangle of architectural legacies that make today's Web browsing experience uncomfortable, confusing, and tiresome for many users. In particular, the lack of Web site independent identity has hampered the ability of the browser to effectively intermediate the Web on the user's behalf. But change is coming and we are about to witness a significant improvement in the nature of Web browsing---indeed, the nature of the browsing experience is about to change forever.

In the early days of the Internet, companies sought to give users the benefit of a consistent experience by building portals that integrated multiple activities. Portals are now mostly a thing of the past; a few large examples such as Yahoo! and MSN still exist, but by and large they have fallen victim to what must be the most important law of the Web: a different site is only a click away. As users sought out the best sites for any given purpose, the browsing experience fractured and became ad hoc. As a result, disaggregation of Web sites and services is now the norm.

An example from the world of ecommerce illustrates this. Shoppers use search engines like Google or Yahoo! to find a product and choose an online retailer from the search results. Before buying they might research products at independent review sites like Epinions.com and Viewpoint.com. They might discuss those same products on myriad blogs, Twitter, and social networking sites like Facebook.

As we'll see, disaggregation causes users to manage too much of the experience themselves. This situation is untenable and must change. Fortunately, three major technology trends are creating the needed opening for improving the browsing experience.

Certainly I can't hope, in a short blog post, to lay out the vision that the white paper carefully develops in many pages. You'll have to read it to get the full story; but, we structure the browsing experience using explicit episode context to the benefit of users and Web-site operators. This paper explains why that's desirable and explains the system we've developed to make it happen. I hope you'll take a few minutes to review the paper and let me know your thoughts.

I should mention that we owe a great debt to Craig Burton for patiently working with us to clarify and strengthen our vision. He worked magic and has our gratitude. I'd recommend him without reservation to anyone developing a product vision and strategy.

7:44 PM | Comments () | Recommend This | Print This

February 3, 2009

This Week on Technometria: Aaron Iba on EtherPad

This week Scott and I speak with Aaron Iba about EtherPad and the AppJet platform that it's built on. There are plenty of interesting problems involved in creating a real-time collaborative editing environment with Javascript in the browser. I loved the discussion and got a few ideas about designing collaborative services.

7:15 AM | Comments () | Recommend This | Print This