A PersonalLogServer is, very simply, a tool to record and serve simple time-stamped notes over the Internet. It’s intended for use on a personal basis, but it could be useful for many types of moment-by-moment tracking.

Use Examples

Intended uses:

If you sneeze, it will be difficult to get the information into the PersonalLogServer. There is a feature that could be used.

It need not only store logs, it could store some time-independent data attached to your person.

Privacy & Security

Note that everything is done by consent. Nothing is mandatory. Also, you don’t have to release information to every client. You should be able to tell the server, “Here’s this information. Don’t release it to any clients that I don’t authorize to receive it.”

You probably want a PGP authentication signature system for all writes, and some reads. You also might want to be able to stage commits, pending approval from you later. (Provided it’s not too late, by that point..!)

Right now, while we experiment with this technology, there will probably be no security. If someone wants to make it look like you’re doing goofy or dangerous things, well- it’s just experimental technology. But eventually, we will need to protect against that sort of thing.


The interface can be anything, but it’s presently XML-RPC, just because it is so incredibly easy to use.

You could just log into your PersonalLogServer by some sort of web page to set permissions, and to read, post, and modify your data.

Sign-up should be a simple process. You should not need to be on the server to sign up for it. That way, while you register for some wiki, you can simultaneously sign up for the PersonalLogServer. Then you just give the address of your PersonalLogServer to future wiki. In fact, you may not even need to do that, if the wiki already knows of some log servers. It could just check each one for one matching your name.


It’s actually a pretty simple thing. I’ve made a basic version, that can log just about anything you want, in 100 lines of Python. It could easily be far less.

However, once you put security and multiple interfaces into the system, it may turn out to be quite complicated.

Protocol Construction

The protocols are not complicated, and do not require a standards body.

Log entries are just by popular convention.

As it is, right now, every log entry has the following:

You take it from there. Attach whatever you want to the log entry.

Right now, for the wiki post, I have:

Did I miss something important? Just make up a name for it, and slap it on there. Tell us it about it later.

Development Status

I’ve uploaded the python server and client code, and protocol notes.

I’ve also written up a small tutorial, and pointed to the running test server.

I’ve hacked MoinMoin to report edits to a plog server, and written down the instructions on how to repeat it. It’s careless code. But it works.

Next, I’ll likely either make a MoinMoin macro to publish a person’s pageviews, or work on PyBlosxom?, to work on a module for it to show recent activities on wiki and what-not.

The really big dark nasty aweful bad cloud in the sky is “security.”

On Topic?

BayleShanks and I have been debating talking about this here. Is it OnTopic? OffTopic? Well, the resources we need to put it in a place where it is OnTopic, but still seen by our peers, isn’t quite in place yet, so I’m swayed by Bayle, and posting this here.


It’s on-topic. If CommunityWiki’s OnTopic really subsumes MeatballWiki’s, then part of its mission is to serve as a WikiEngine-neutral place for discussion wiki software technology.


Ideas that probably already have Wiki Words for them:

Ideas to refactor on their own page:


btw, so far what you have on the server side is just a general-use lightweight XML-RPC database, right? i wonder if there is anything like that out there already. If not, that sort of thing may be useful for more than just plog.


No good reason.

:no good reason for what?

I can think of a lot of trade-offs.

It took me about 15 minutes to write plog, and it’s obvious how to extend it.

If I do it as a database thingy, it’s not nearly so obvious and easy, and I’m not sure if I can extend it how I want it go.

Do you want to do it differently?

:naa, let’s stick with your instincts

I’m open.

(Tangentially related: WikiFeatures😀atabaseCapabilities.)


Should this page be moved to IntComm? – BayleShanks

Why not use HTTP, rather than XML-RPC, as the protocol for interacting with the PersonalLogServer? See IntComm:HttpIsaDatabaseAccessProtocol?.

I don’t think this is a good idea. As you describe it, you first need to tell content providers to push the data to your log srever. What if someday your log server goes down? How do they know it’s permanent/temporary? Better use newsfeeds (RSS) to pull the data from providers. Not sure whats worse: providers pushing to non-existing consumers or consumers pulling from providers that don’t have new data. – (Unsigned)

See also the “personal public wiki” idea on WikiAsPim, WritersLog.

See also comment on Dries' weblog, which is itself a link to a post by Bill Kearney.

See also ProjectLogServer

See also MeNow




Define external redirect: InterWikiName MicroBlog ConnectingWikiEssay PyBlosxom HttpIsaDatabaseAccessProtocol LooseProcessWritingProtocols WikiURL MicroBlogging PageURL

EditNearLinks: WikiAsPim PageName MoinMoin WikiEngine CategoryInterCommunity IntComm WritersLog MeatballWiki