Autobiomarvel

An adjunct to my world. It makes it easier to operate.

Saturday, August 26, 2006

Foreshadowing

Haven't posted in a while. This isn't what I'd intended, but it's to be expected. These last few weeks before the end of the summer are busy indeed. I've got a Master's project to finish up, and there've been some bad social situations, and I've been busy with friends and family. Also, I have to cram all of the recreational reading I'd had planned for the summer in before school starts again.

  • I would like to recognize Robert Barrington-Leigh, who died recently in terrible circumstances.

A few things I'd like to "blog" about in the next few weeks when I get time:

  • My studies in differential geometry.
  • My 3D RPG adventure game engine, in progress.
  • My programming language specification and compiler, in progress. This unnamed project is my real baby, and when it finally lifts off, I'm going to be talking about it more here.

Hey Annat! First comment on my blog! 'Sup?! Check back here, because in the next few months I intend to earn a readership. This will become a place of record.

Thursday, August 10, 2006

What Google and Wikipedia mean for hyperlinks

I was thinking about the changing way in which I use the internet, and how nowadays the rate at which I'll Firefox-right-click-Google a term or name while reading is several times an article. Google and Wikipedia are such powerful and fast sources of information today, that any link which fails to be very specific, e.g. simply giving definitions or background information, fails to be worthwhile. Links themselves are becoming less strongly distinguished from regular text.

My very modest proposal is that rather than fretting too much over policies about which words in an article should be hyperlinked and when (e.g. only the first occurrence?), we should hyperlink as freely as we want, whenever we think we can do better than a cursory web search, and then (my bright idea) we should downgrade the current colour-highlighted-and-underlined link typeface standard to something more subtle, or in some cases completely undistinguished, to reflect the fact that links aren't quite as significant to the reader as they once were, and to make these hypothetical new link-crazy articles more comfortable to read. (Let's face it: a hyperlink in the middle of a sentence is jarring.)
Update: Done for this blog.

Of course, if we all decide to start linking less generously, this creates a paradox, since Google feeds on links. I suppose we will eventually come to some sort of equilibrium where the usefulness of adding another link is just barely outweighed by the ease of searching on the now-crippled Google.

What is this Semantic Web people are talking about? Is the main idea that hyperlinks now have richer semantic information than their mere existence? If page authors are forced always to put this information in themselves, explicitly or implicitly, then it'll never work. Authoring tools need some hope of figuring out from context what extra things might be meant by a link. Which is to say, they're doing a computation that a sufficiently clever search engine, were it looking over their shoulder, could do as well, the difference being that they're storing the results of incremental, local computations in a way which could be useful for more global algorithms (and also perhaps the behavioral information that never makes it onto the web could give the authoring tool a leg up). Rather than talking out of my ass I should Google the topic, or talk to one of my student friends who know something about it.

Talking out of my ass, mostly for my own benefit, is what I'll be doing on this blog. Time to have tea with Veronica and friends. Bye for now!

Wednesday, August 09, 2006

A Scandal Mine

Perhaps you know, AOL has released a database of three months worth of web searches by "anonymously identified" users. Despite AOL's equivocating apologies, the anonymity is mostly worthless. I would expect that most of the users in this database could be identified with enough work. Here's an example from the New York Times:

A Face Is Exposed for AOL Searcher No. 4417749

While AOL has taken the data down, it's conveniently available at (among other places) aolsearchdatabase.com.

There are examples of people who are apparently planning to commit murder, view highly illegal images, and so on. I wonder how long it will be until someone puts up a website which identifies users categorized by crime. I wonder how many lives will be ruined when this happens!

I can't really volunteer, since my coding skills aren't really appropriate for doing it quickly and I'm busy anyway. Anyone?

Second post

I should not be so impersonal. I should be your friend. Hi there!

First post---productivity

I'll make this brief, since it's late. I was talking a little while ago with my friend Mike about a topic which, just in the last few weeks, has taken on an importance for me which for some reason it never had before. The topic was productivity. I was interested in finding the best possible life-organizing software for making me into a productive person, but he was happy to tell me some things he'd read about the theory of productivity generally. In his few brief comments, the theory grabbed me, as Theory is wont to do, but I recognize that I daren't (for the sake of productivity!) make this into yet another of my intellectual projects quite yet.

However, I'll make it into a very limited, very practical project, with a clearly-defined near term. In light of that, consider the absurd prospect that I intend on doing, myself, a mockup (in some easy baby language) of more or less what I think I need in a productivity program. Someone will generously interrupt me (by, please, leaving a comment!) by pointing out an existing piece of software which does more or less exactly what I want and more. I am quite the naif in this area. In the meantime, the program I will put together should have the following capabilities:

  • A dependency hierarchy for tasks and subtasks, which perhaps shall be multipurposed into a classification of tasks. More complex structures than hierarchy may emerge as I build.
  • A good method of displaying and interacting with this structure visually. Colours, icons, blinking, etc. can represent priority. In particular, it should be editable in a stream-of-consciousness manner, much like I'm doing now, the difference being the superior structures. It should feel like effortless note-taking.
  • Prioritization on many axes, or rather along paths of the data structure. First of all, however priority is set, in line with something Mike said it should at the very least reflect separate notions of importance and urgency. These parameters, possibly together with due dates and other data, create a time-profile of the priority of an item. Second, these time profiles are actually time-and-space profiles: it should be possible (even typical) for this data to be relational in the sense of the underlying structure. This task is very urgent and somewhat important to that goal, for example. Transitivity of priorities will, neccessarily, be highly nonlinear.
  • This prioritization system, the core of the program, should lend itself naturally to an overall priority measure which causes the representation of the data structure to fold and unfold, or alerts to be sent or not sent, etc. It should easy to send signals which intelligently affect these processes, both directly (e.g. by unfolding a topic or making a query) and indirectly (e.g. by indicating my readiness to be interrupted by different categories of things). To say more:
  • Several (at least two) somewhat separate, mutually agile reference frames. For example, it should be possible, if my mood (reflected in some structure) changes, for the relative priority of different tasks to change accordingly. In fact, on the assumption that I quickly get bored and am not good at working singlemindedly on monolithic tasks, a major goal of this program should be to allow me to work opportunistically, i.e. if I don't want to work on its first suggestion, it gives me another.
  • Obviously, an interaction with the rest of my computer is ideal. At the very least, nodes should have an activation command which opens a working application. But to the greatest extent possible, this productivity program should be interlaced down into the applications themselves. I.e. below a certain level the relational structures should be reflected somehow in the "working file," either through location tags in a text file, or through some other means in other contexts. Getting back to the ease-of-use point earlier, it might be so effortless that it feels like I'm writing or editing within the productivity hierarchy.
  • A back-reaction whereby it should be easy (e.g. selected text and a context menu a la Firefox's search feature) for me to put tasks I'm working on in an application into the productivity program. Here it becomes clear again why it is useful for the productivity program to be interlaced into the application, so that context in the application can be used for appropriately placing and prioritizing things.
  • Effective import and export, on-the-fly script and database parsing. In fact, for my program to draw some of its data back automatically from the working apps or other databases somehow would be a bit of a holy grail.
  • A tool that lets me profile my own effectiveness at getting my tasks done.
  • A tool that lets me profile the program's effectiveness at helping me.
  • Holistic and/or statistical methods of guessing priorities. (I.e. effects too clever for my discrete data structures.)
  • Efficiencies and coarse-graining and forgetfulness all over the place, agile data structures to facilitate this.
  • Can we get some Web 2.0 up in this shit?