Symbolic Tagging: Tags 2.0

Tagging has become extremely popular these days, and with good reason - people naturally catalog things under various categories mentally, and are able to recall them by any of those routes. So, it makes sense to use a multiple-tagging system rather than a singular system like plain categories or folders.

Combining tagging with social networking, as Del.icio.us does, is particularly effective - a set of aggregate tags that allow a community to classify data for use by the whole. However, the problem with this is that not everyone uses the same tags to mean the same things.

The words are just symbols; tags demand meaning. It makes sense, in a simple system, to consider words and their meaning to be one and the same; however, as the system expands, it needs to understand the relationships between words and meanings. Enter symbolic tagging. Rather than making the tags the words and the words the tags, separate the two - after all, they are in fact separate.

From an architecture perspective, this means we need two constructs: the symbology (words) and the semantics (tags), with a 1..*:1..* relationship between the two. One symbol can have multiple semantics, and one semantic can have multiple symbols. As an example, let's say two symbols, "foo" and "bar" both share a semantic X. When a user searches for "foo", they will see all records associated with semantic X; the same when they search for "bar". Alternately, assume the symbol "baz" is attached to two semantics, X and Y. When a user searches for "baz", they will see all records associated with semantic X, Y, or both.

How does the system learn which symbols reflect which semantics? The same way it determines which records match which tags - community input. Take, for example, the following process for developing and refining a symbolic-semantic map.

1. As new records are added, the user adding them tags those records as they normally would. Any time a user inputs a tag that isn't already in the map, a new symbol is created for the tag, and a new semantic is created for it as well. At initialization, the two share a 1:1 relationship.
2. The user may opt to go through a refinement process, either manually initiated, or initiated as an additional step in the new-record process. This refinement process prompts the user with a list of tags they have used, and for each tag T, lists other tags associated with records which are also associated with tag T. The user may mark zero or more of these related tags as being synonymous with the tag in question.
3. For each tag being marked synonymous, if that tag is associated with more than one semantic, the user may chose one or more semantic associations between the two tags. The semantics can be identified by the list of tags associated with them. If none of the semantic lines is appropriate, the user may choose "other" to create a new semantic and link it to the two tags being compared. If the tag in question is only associated with one semantic, that semantic is automatically used, avoiding the additional step.

This allows the system to continue its organic social self-construction, while greatly improving the quality of the tag browsing/searching system as a whole, and imparting exponentially more meaning on the dataset itself, which can be used in other areas of research - the data from one large-scale implementation could prove invaluable for semantic computing, computer linguistics, and social networking research and development.

So, Del.icio.us - are you up to the task?


Sustainability, Energy Independence and Agricultural Policy

Long, but definitely worth the read.

The Oil Drum | Sustainability, Energy Independence and Agricultural Policy

One of the biggest threats the USA faces today is a serious shortage of energy. Vulnerabilities in our system have been made glaringly obvious several times; since the 1970's the USA has had social and economic upheaval due to the actions of foreign oil producers, and two hurricanes in 2005 showed just how fragile our remaining domestic supplies of oil and natural gas are. The fact that the nation has a Strategic Petroleum Reserve shows that this is a matter of national security.

For such a serious matter, it's being treated in a very casual fashion. There is no national program to manage oil demand in the event of a supply crisis, or employ market forces to help. Neither is there a long-term initiative to reduce oil dependence and the size of the threat. While the US looks to become dependent upon imported natural gas in addition to oil, there's nothing in the works for a Strategic Natural Gas Reserve. And as for a national building code or even minimum standards for building codes, there's nothing worth mentioning.

Other, less-serious problems have been dealt with far more competently. The USA had a plan for achieving the goal of saving the peregrine falcon and bald eagle from DDT, and another for saving the world's ozone layer from halocarbon emissions. Both of these were carried forward both domestically and internationally, with considerable success on both programs. Given the last ten years of concern about global warming and three decades of concern over energy supplies, you would expect something similar would be in the works for those also.

The Top 100 Alternative Search Engines

The Top 100 Alternative Search Engines

Ask anyone which search engine they use to find information on the Internet and they will almost certainly reply: "Google." Look a little further, and market research shows that people actually use four main search engines for 99.99% of their searches: Google, Yahoo!, MSN, and Ask.com (in that order). But in my travels as a Search Engine Optimizer (SEO), I have discovered that in that .01% lies a vast multitude of the most innovative and creative search engines you have never seen. So many, in fact, that I have had to limit my list of the very best ones to a mere 100.

Not a bad article, despite him being an SEO guy.


Cirque du Soleil: Corteo

Just got back from Corteo, my first live Cirque show, and it was awesome. I've wanted to see Cirque live forever, and I wasn't dissappointed. Of course, we blew near $300 just on souvenirs and gifts, and the tickets weren't cheap either... but it was well worth it! I wish you were allowed to take pictures, I'd be able to post some good shots up here - oh well.

The show is themed around a look at death in the 1920's; the music, costumes, and plotful interludes follow this theme, though of course, the acts themselves aren't particularly plot-related - not that that makes them any less spectacular. My three favorite acts were the ribbon act (that girl is fabulously gorgeous - wow), the juggling act, and, my top favorite of the night, the chandelier act at the very beginning of the show - I can't wait to see it again on video (DVDs were $30, so I skipped that - it'll be on Bravo for free soon enough), as I'm sure there's a ton I missed while I was paying attention to the orchestra, the extras, or the angels constantly floating through the rafters, dropping things off, picking things up, and raining glitter down onto the stage.

There was also a great interlude where they put a midget in a harness, hooked her up to a mass of balloons, and floated her out into the audience, who got to bounce her around, kind of like a beach ball at a concert. It was hilarious, and inspiring: I'm determined to find a way to construct a similar rig for Boris, so we can float his lazy, furry ass around our apartment!

Okay, off to bed now - too much excitement for one night...

Foreign Perspective on the State of the Union

The American hostility towards Iran

"One of the notable features of President George W Bush's State of the Union speech was its hostile attitude towards Iran."

This is the title and tagline of the BBC's article analyzing President Bush's State of the Union address last night. And it's not off base. Bush may manage to drag America headlong into the third middle-east conflict of the Bush Administration. It's no wonder the entire rest of the world thinks that America is destructively stupid on an epic scale - it's true.

History of the Oil Wars

YouTube - History of the Oil Wars

Very interesting video on the state of oil in America, and how we've gotten where we are. Highly recommended.


HDCP: beta testing DRM on the public?

Ars has a nice summation of the state of HDCP/HDMI, and how we got there. A lot of this wasn't news to me, but it's put into perspective very nicely.

HDCP: beta testing DRM on the public?

When the supposedly uncrackable copy protection used on DVD was indeed cracked back in 1999, two very different messages were received. Hackers and most tech enthusiasts took the crack as yet another sign that these encryption schemes will all, ultimately, fall to the efforts of hackers. The titans of the entertainment industry received another message—a challenge, as it were, to build an even more "robust" content protection system.


I, Cringely -- When Being a Verb is Not Enough: Google wants to be YOUR Internet.

From TFA:
I spoke recently with an old friend who is a bandwidth broker. He buys
and sells bandwidth on fiber-optic networks around the world. And he
told me something that I found not completely surprising, but I
certainly hadn't known: Google controls more network fiber than any
other organization. This is not to say that Google OWNS all that fiber,
just that they control it through agreements with network operators.

I knew they'd been snapping up fiber en masse for years, but I didn't know they'd managed to control more fiber than anybody else. That's a hugely impressive feat... I dunno if Cringely is right here, but I'm just as curious as he to see exactly what they're up to.


Giving in to the Deliciousness

That's right - I've finally given in and started a del.icio.us account. I've been resisting it since they started to get popular a couple years ago... but, in keeping with my ongoing attempt to "join in" on this whole community-driven internet deal, I'm jumping on the tasty bandwagon. Who knows - maybe I'll be using Digg a couple months from now (perish the thought!)

Anyway. I've added my del.icio.us feed to the right-hand pane of this site, and it's further accessible here.


10 Business Lessons From a Snarky Entrepreneur

10 Business Lessons From a Snarky Entrepreneur by Steve Pavlina:
As a companion to 10 Reasons You Should Never Get a Job and 10 Stupid
Mistakes Made by the Newly Self-Employed, here are 10 positive lessons
I learned from more than 12 years as an entrepreneur. A few of these
are rehashed from the 10 Mistakes article, but most are new.
Fantstic article; I also highly recommend the two noted articles (10 reasons not to get a job, 10 stupid mistakes), as well as pretty much everything he's written on business, including 10 myths about self-employment, and how to earn $10,000 in an hour. I've been wrestling with the idea of entrepreneurship for the last several years, picking and choosing from the array of ideas I come across on a daily basis, trying to decide what will work and what won't and how much it'll cost to get it off the ground; his blog has convinced me it's high time I just picked one and dove in whole-heartedly, and make it succeed. It's not about the planning, it's about the doing, and it's time for the doing to be done.

Wish me luck.

Long time, no post

It's been a while since I've posted here, so I thought I'd catch up everything that's happened before I get myself back into the swing of posting random nonsense.

Chronos is running smoothly with its new PSU, no issues since the replacement, save for some bizarre incompatibility between my D-Link USB 802.11b/g+ WiFi adapater and the uTorrent BitTorrent client. I have no idea how they could even manage to be incompatible, but somehow, if I run uTorrent, after a few minutes Windows will lose my wireless, and I have to unplug and replug the USB adapter for it to get back on. This will let the connection stay up for another few minutes before the cycle repeats itself. It only happens when uTorrent is open; if I get disconnected, reseat the USB adapter, and close uTorrent, I can stay connected for days on end. I don't get it.

Also, I bought a MacBook (13" widescreen, 2.0GHz Core 2 Duo, 1GB DDR-667, 80GB HD, SuperDrive), and I love the thing to death. The old Dell Latitude D600 was a POS from the day I got it, and I rarely used it (it's a work machine - I didn't actually buy a $2k laptop and never use it.) The MacBook, on the other hand, has more CPU power than my desktop, it's extremely portable due to its size and weight, and the power adapter is far more portable than any laptop charger I've ever seen. The screen quality is fantastic, and I'm actually starting to get back into the swing of MacOS.

Five or so years ago, I had never used a PC. I used an Apple //c when I was five, started programming it in BASIC and assembly when I was 7, got a Mac SE at 10, a Mac Quadra 605 at 14, and a PowerMac G3 (Blue & White) at 16. Then I got a job doing tech support for an ISP, and had to get a Windows-based computer to be able to keep up with the issues experienced by our majority-Windows customers. So, at 19, I bought my first PC, and built it myself from parts, just to have the experience. I sold my last remaining Mac when I was 21, and now I'm nearing my 24th birthday, and I have a Mac again.

Why did I ditch the Mac in the first place? Mac OS X. I've used every Mac OS from System 4 on the IIgs to System 6 on the SE to System 7 on the Quadra to MacOS 8, 9, and eventually X on the G3. It kept getting better and better; every update was faster, easier to use, more feature-full than the last. With MacOS 9.1.2 my system was more responsive than it had ever been.

Then Mac 9.2 came out, designed to ease the migration to MacOS X, laying the groundwork for a whole new Mac OS. I tried the OS X public beta; it was dirt-slow, a total memory hog, and it eventually hosed my hard drive - but hey, it was a beta. I used 10.0 final, it was nearly as bad; 10.1 was a slight improvement, but I never got over how much the interface had changed; I still think Mac 9.1 was the easiest to use, and I think at this point Mac has come down to be roughly on-par with Windows in terms of intuitiveness; a significant fall from grace.

Now I'm using a Mac again, and it's taking some adustment, but it's not as bad as I remember it. Some of the more annoying issues have been fixed; others I suppose just don't bother me as much any more because it's been a very, very long time since I was used to the smooth effortlessness of Mac OS of old. Whatever the root, I'm taking a liking to this new OS.

Expose, which allows you to quickly view all open windows, all windows in the current application, or your desktop, with the push of a button, is very nice. Rather than icons representing each window, when you hit the button, the windows slide and shrink and move around so that you can see them all on-screen at once; these zoomed-out windows are still the real deal, however, and still update while you're looking at them in their miniature form; progress bars still update, and so on.

The Dashboard is handy as well; I'm using iStat Pro to keep an eye on CPU, memory, disk, and network use directly from the dash, as well as Sing that iTune, which automatically looks up the lyrics for whatever track is currently playing in iTunes (I can't help it, I'm a compulsive sing-along-er.)

I haven't used the iLife kit much (iMovie HD, iDVD, iPhoto, etc.), though I have tinkered briefly in GarageBand. Yet again, I find myself using iTunes even though it's a desperately sub-par product; it's become such a juggernaut that few are willing to attempt to compete - on Windows you're up against WMP, iTunes and WinAmp, not an easy fight to fight - and on MacOS, well, iTunes has a pretty significant stranglehold. There are a couple of alternatives, but nothing suitable. So iTunes remains my photo app. It also includes an app called PhotoBooth that uses the built-in webcam to let you take photos - I use it for my gtalk buddy icon, which I sign onto using iChat (works just fine, although it does require that I use a seperate app for gmail notifications - luckily Google has released a full-featured email and calendar notification pack for Mac that works extremely well for me.)

I've also got a Wireless Mighty Mouse, which works very well, aside from a small issue with the connection; it seems if I turn off the mouse, then later turn it back on (as I am likely to do quite often, what with it being a laptop - sometimes I have the room to use the mouse, sometimes I have to use the trackpad), it'll pair automagically, but it won't connect, even though the mouse as marked as a "favorite device"; every time I have to go into the Bluetooth panel and force it to connect by going through the entire pairing/connecting process again. A minor nuisance, but highly irritating when you want to just pull out the laptop and the mouse and get to work.

The Unix side of MacOS is just as one would expect; so far, the main difference between the Darwin base and any other *nix system I've used is the directory structure and a couple of missing apps, which I've since been able to easily install by compiling from source. I managed to install AMP (apache/mysql/php) with little difficulty, aside from some confusion which arose due to the apache 1.3 installation that MacOS comes with, which I didn't realise was there until it had already become a problem.

I've been able to use Automator to create a simple script which runs a bash script; I'm already using this on a daily basis, as it lets me put an item in a global menu to quickly execute a shell script. This is extremely handy; I only wish that, like under *nix windowing environments, I could run any file marked executable just by double-clicking it on the desktop. C'est la vie, maybe a future version will feature this; in the meantime, it's a relatively simple workaround to create an Automator workflow or AppleScript to trigger a shell script to run.

I'm already running jEdit (which has a very solid native Mac port), NetBeans (again, very solid Mac support), NeoOffice (a Cocoa port of OpenOffice.org; so far so good, though I've used it very little as of yet), MySQL GUI Tools (same functionality as it has on windows/*nix - but with a better interface!), FireFox (of course - I didn't use IE, and I'm no more enamored with Safari), I've got a BT client (Azureus - I don't like it, but it works, and I haven't had time to try out Transmission, which I've also installed), a Subversion client (ZigVersion, because I can't get svnX to work at all - it hangs as soon as I try to connect to my server), and of course the JRE. I still need to find a way to sync my Q to the MacBook, but that's not a huge priority for me right now.

I've loaded the thing with a sampling of my movie & music collection from Chronos (the full collection is about 60G, a bit much for the 80G disk the MacBook came with), and I find the display to be perfect for movie-viewing. The speakers are lame, but that's to be expected with a laptop; I just use the earbuds that came with my iPod, and I've got a pair of much better quality earbuds coming in the mail (look for a review shortly!)

All in all, the switch back to the Mac has been a positive experience so far; I've always appreciated Apple's attention to detail, and they haven't failed me with the MacBook itself (from a hardware standpoint), though I still find some shortcomings with MacOS as a whole. I suppose only time will tell how effective it is; if I run into critical usability or compatibility problems, you can be sure you'll see it mentioned here.

I've also upgraded from my old Palm Treo 650 to a snazzy new Motorola Q, on Verizon service. Aside from the fact that Verizon's service beats the pants off of Sprints (at least across the Atlanta area, western North & South Carolina, eastern Tennessee, and western Virginia), the Q itself is far and away the better phone. Gone is the irritating touchscreen and easily-lost stylus; here is your clickable scroll wheel (thank god). Also, much to my surprise, Windows Mobile 5 is more stable, more responsive, easier to use, and has more and better software available than PalmOS ever did, in my experience. I've already got a pocket NES emulator running on the Q, with a mini-SD card loaded with every NES game ever made; for the cost of an SD card I now have over nine hundred games available on the go, compared to the $10 - $20 per game you pay to download a game from your provider (Sprint or Verizon, Q or Treo, the download prices seem about the same.)

The Q has better call quality (both due to improved reception, and improved mic & speaker), better speakerphone quality, better bluetooth support, and built-in voice-dialing and WAV/MP3 ringtone support (both of which were shockinly missing from the Treo.) Also, while the monthly service through Verizon is slightly more expensive than my service through Sprint was, the Q itself was only $100 with 2-year, while the Treo 650 was $300 with 2-year. I also thoroughly appreciate the Q's smaller, lighter form-factor; compared to the Treo, I barely notice it hanging on my belt, and I find it much easier to handle, particularly due to its thinner depth.

That's all from me for now - hopefully you'll be reading news of the fruits of a couple of new projects here in the near future, but until then, it'll be more mindless ramblings from me!


Click "I Agree" To Proceed...

Okay, this is just getting under my skin. I "sign" agreements all the time, every day. You do to. I agree to things I never read. You do that too. Everyone does it. All the time.

I'm talking about EULAs, ToSs, T&C's, and, of course, "privacy policies". What is this stuff? Well, the end-user license agreement, or EULA, tells you what you can and can't do with a piece of software you're about to install, and it probably mentions anything shady that the software is about to do. Why be so upfront? You're not going to read it, and it absolves them legally. Unfortunately, perfectly legitimate software has EULAs too, and it's too hard to figure out which is which that way.

Terms of Service, or ToS, are what service providers, like ISPs and web hosts and such, use to lay down the litany of things which are, should they unfortunately occur, not in any way their problem. It also likely details the things which you are not, under any circumstances, to do with the service in question, regardless of whether it might seem like a perfectly viable use to you or the general public.

Terms and Conditions, or T&Cs, are usually required right before you sign up for something, like internet or cell phone service. Again, this often outlines exactly what you're not to do with the service, and exactly how much it would cost you if you did.

Privacy policies are my favorite one of all. Why? Because most of the time, you aren't actually agreeing to the privacy policy. You're just required to read it. I find this odd - typically, a company requires their employees to know their policies, not their customers. I find this particularly frightening since the only reason I'd be required to know about it is if there's something shady in there.

Of course, just like you, I still check the box and click the button and make my merry way toward whatever courtroom doom might befall me.

Click "I Agree" to proceed.