Theme III: Speed
By Daniel Miessler on July 20th, 2007: Tagged as Blogging | Design | Programming
This is how fast I hope my site will be once I am done building my own custom theme. Maybe not quite as fast since my regular theme has more images and such, but pretty close.
Click on a few stories and check out how fast things are loading. Not only does this theme allow me to use wp-cache, but I’ve also placed my cache directory on a RAM drive on my server.
The site currently feels extremely responsive to me. Does it to you guys as well?
Table Tennis Coming To Wii
By Daniel Miessler on July 20th, 2007: Tagged as Sport | Table Tennis | Wii
Oh, hell yeah.
I knew I shouldn’t have sold my Wii…now I have to find another one. Figured they be everywhere by now…
Kitmee: My Big Project
By Daniel Miessler on July 19th, 2007: Tagged as Hacking | Identity | Programming | RSS | Semantic | Semantic Web | XML
I’ve alluded to a major project a few times in recent months. Well, I’m now ready to talk about what it is. I apologize for the disjoined presentation; I’m a bit excited and will clean up as needed later.
Background
One of the most annoying problems that faces computer users is contact management. Most don’t have a truly organized digital address book, and even those that do suffer from contact-rot. This is where each passing day means one more mailing address has changed, someone got a new mobile number, and another person got married and has a new last name. In other words, time deteriorates the quality of your information about other people.Many services have come and gone that tried (or are trying) to solve this problem. Most notable of these is Plaxo. Plaxo, as well as most of the other services like it, have essentially been services where you kept your updated information. The idea being that when you changed your info, Plaxo could notify the people in your address book that you had done so. At that point they could take some steps to update their information. The problem is that it’s required too much involvement with the third party service. Plaxo is, after all, a for-profit company, so it makes sense that they would want you to interact with them.
Identity Management + Semantic Web
My idea is simple: provide a free and open infrastructure upon which people can build identity-based services ranging from contact management to social interaction functionality. Focus on transparency and open standards, meaning that the exchange of informaton should be as simple as possible and should allow for infinite potential for securely sharing and manipulating the data.
Here are the two primary components:- Central, Server-Side Representation of People using XML I’m currently working on RDF for the main definition.
- Open, RSS-based Client The client piece, while completely open to various implementations, will have two components. 1) Subscriptions to contacts via RSS, and 2) translation of the server’s XML to their own address book format.
Functionality
- Maintain constantly updated contact information by subscribing to your friends’ information on a central server. You stay updated because your information is not static. The information you see when you open your address book is what was last pulled from your contact’s RSS feed.
- Your contact list is constantly maintained in a neatly defined, XML-based format on the server (OPML?). To get your contacts onto any new system (including mobile devices), install any client (there will be many) that speaks both the server-side XML protocol and the local address book format.
- Link the elements within a given definition to other namespaces that carry weight within the semantic world. In other words, allow favorite bands, favorite foods, and a multitude of other attributes to be defined in such a way that associated information can be referenced (and mashed) semantically.
The Architecture
The server resides at kitmee.com (currently living in a VMware machine in San Fransisco that’s powered off) and hosts the various identity files (RDF, etc.). As an example, we’ll say we have two accounts — myself (Daniel Miessler), and my friend (Seth Kline).
We respectively live at kitmee.com/dmiessler and kitmee.com/skline. Within whatever client we’re using for the system (again, this will be any one of many available) I’ll subscribe to Seth’s address within my client that’s installed on my local system. The client works by maintaining two types of information: who you are, and who your subscriptions are (your contacts).
More On Client Functionality
The most basic client monitors the local address book for changes to my own contact information, and upon sensing changes translates the changed result into the server’s XML format and uploads it. This updates my information on the server and updates the associated RSS feed that represents me as a person.Since people who have me in their “contact list” are actually just subscribed to my RSS feed, their respective clients (web clients, desktop clients, mobile clients) will be notified the next time they check in that I have updated my information. Their client will then update my information in their contact list (server-side) and make the associated change to the local address book on the system they are using (mobile phone, work computer, etc.).
So what we end up with is an infrastructure in which I can update my information using my own local address book, and that information will transparently be propogated (via RSS pull) to anyone who is subscribed to me using the system.
Once I have a client installed it disappears into the background. From that point on I interact only with my regular contact management application, and changes I make are propogated to my subscribers, and their changes are propogated to me.
The end result is that when I open my address book entry for Seth two years from now and dial his mobile number, I could very well be dialing a number that I never entered. He’ll still answer the phone on the other end, however, because at some point he updated HIS local address book, which updated the server, which updated MY local address book.
No extra steps. No extra hassle.
Considerations
Security is handled on the server by managing who can and cannot access your information. Obviously we don’t want just anyone to be able to pull your entire personal definition (essentially what’s now a vcard) by simply visiting a given URI. I also intend for the various elements/fields in the definition to be granularly controllable, e.g. work associates can see only your home number, while friends can see everything, etc.
Clients are the key; without them we don’t have the transparency that’s required to make the infrastructure useful. Specifically, we need the client to be able to translate between the server’s XML format and the local address book format. In later client iterations, however, I anticipate moving towards address book integration, i.e. being able to add kitmee subscriptions right into the native address book.
Final Thoughts
So that’s the project. I’m currently working with one other developer on the server side, and have not even started considering the client piece. Our development environment currently consists of a fairly stout Gentoo Linux server running in VMware. The application platform is RoR, and we’re using Subversion for version control.I am very much interested in any feedback you may have. And if you’re interested in contributing — either via conceptual input or actual development effort — I’d love to hear from you. I will be following the comments in this thread and am also available via email.
The Blackberry 8820
By Daniel Miessler on July 18th, 2007: Tagged as Blackberry | Gadgets
The new Blackberry is coming to AT&T and will have both Wifi and GPS. Unfortunately it won’t have 3G or a camera. A few things of interest here:
- AT&T seems to have a major advantage with device selection. I imagine this will draw many customers from other carriers despite their dislike of the company in the past.
- Blackberry still doesn’t have 3G. I think this is because of the battery life issue; the 3G radios are known to be quite thirsty, and RIM is famous for providing their customers with excellent battery life. I don’t think they think the tradeoff is worth it, and I agree with them.
- It sucks they couldn’t have kept the camera. It’s nice to gain the GPS and Wifi, but it’s unfortunate that we had to lose something that is on the Curve to get those features.
Obviously I’d like both — iPhone’s execution with the N95’s features — but we’ll have to wait for that. Eventually someone will get it right. It’s an exciting time to be watching the mobile device market. I like the fact that all the various manufacturers are being prodded to excel by increased competition. It only helps us as consumers.
Theme Changes II (Subversion Issues)
By Daniel Miessler on July 17th, 2007: Tagged as Blogging | Design | Programming
I’m currently battling with TextMate/Subversion issues. I’ll have this sorted out shortly and will be able to resume work on my theme. Until then enjoy the no-frills classic.
Theme Changes
By Daniel Miessler on July 16th, 2007: Tagged as Design | Programming
I’m currently tinkering with my site’s theme. Not in the usual way, i.e. choosing a different one and turning it on, but by actually trying to make one from scratch. Specifically, I’m trying to morph my existing, custom theme from my /study page.
It’s not going well.
I have some PHP and Wordpress studying to do. Oh well, the basics are working and the site should be functional; it just looks horrible. So, please pardon the mess. I hope to have it cleaned up soon enough.
Read a Book: The Video You Never Thought BET Would Show
By Daniel Miessler on July 15th, 2007: Tagged as Culture | Humor | Race
Why America Is Failing Economically
By Daniel Miessler on July 14th, 2007: Tagged as America | Culture | Economics
It’s more than just the car companies; it’s the whole culture of entitlement. We need to re-synchronize with the world on a great many things. Adapt or be left behind.
We’re trying to pretend the rest of the world doesn’t exist - like if we just watch enough American Idol we’ll never have any problems. Well, it won’t go on for much longer.

click to view the story