Referers

Top Searches

  • 1772× tatu naked
  • 1452× tatu nude
  • 798× lavinia milosovici nude
  • 566× nude gymnastics
  • 418× corina ungureanu nude
  • 365× ta tu naked
  • 362× tatu kissing
  • 357× ta tu nude
  • 225× lavinia milosovici japan
  • 214× nude scenes

Top Non-Search Hosts

  • 3325× goodshit.phlap.net
  • 778× radio.xmlstoragesystem.com
  • 565× subhonker7.userland.com
  • 349× livejournal.com
  • 225× ranchero.com
  • 196× technorati.com
  • 174× page3girls.blogspot.com
  • 114× excite.co.jp
  • 86× erosblog.com
  • 86× llareggolb.blogspot.com
See more... (large)

2003-03-31 23:59:00 | Comments (0) | TrackBack (0) | Meta::Referers

Finally, a standard way to detect attacks

RFC3514 has been issued, defining a standard way to recognize network-based attacks -- it defines the last unused bit in the IPv4 header as the 'evil' bit.

0×0 If the bit is set to 0, the packet has no evil intent. Hosts, network elements, etc., SHOULD assume that the packet is harmless, and SHOULD NOT take any defensive measures. (We note that this part of the spec is already implemented by many common desktop operating systems.)

0×1 If the bit is set to 1, the packet has evil intent. Secure systems SHOULD try to defend themselves against such packets. Insecure systems MAY chose to crash, be penetrated, etc.

Some hosts scan other hosts in a fashion that can alert intrusion detection systems. If the scanning is part of a benign research project, the evil bit MUST NOT be set. If the scanning per se is innocent, but the ultimate intent is evil and the destination site has such an intrusion detection system, the evil bit SHOULD be set.

Intrusion detection systems (IDSs) have a harder problem. Because of their known propensity for false negatives and false positives, IDSs MUST apply a probabilistic correction factor when evaluating the evil bit. If the evil bit is set, a suitable random number generator RFC1750 must be consulted to determine if the attempt should be logged. Similarly, if the bit is off, another random number generator must be consulted to determine if it should be logged despite the setting.

2003-03-31 18:54:00 | Comments (0) | TrackBack (0) | Computers::Security

Daily Oklahoman decides it doesn't want readers

The Daily Oklahoman (previously mentioned as the The Worst Paper in America) has evidentally decided they don't actually want, you know, readers.

As of sometime last week, reading anything beyond the headline requires registration. This isn't the annoying WaPo "what's your zipcode" registration, oh no. This is "what's your zipcode, address, gender, home phone number, birthday, education, and income" registration.

Why don't they want people to see their ads?

2003-03-31 13:14:00 | Comments (4) | TrackBack (0) | CopyrightCartel::Newspapers

Buffy Script Book, Season 1 Volume 1

Book coverThis [amazon] is just what it claims to be, so either you already know you'll like it or you won't be interested at all. I enjoyed it quite a bit, and feel the need now to watch these episodes again to check for some changes -- in particular, there's some Giles backstory in the scripts that conflicts with later revelations; I don't remember it being in the actual show.

I wish there was an introduction explaining the details of script typesetting, though -- what do the "*"s next to some actor, character and place names mean? I assume the "*"s in the margins of the actual text indicate changes since the previous version -- but maybe it's from the original version?

Some of the title pages indicate there were multiple revisions -- 7 for Welcome to the Hellmouth and The Harvest, each on a different colored paper. I'd guess the actual physical scripts they used were looseleaf pages, with just the changed pages replaced with each revision. It would be nice (although likely considerably more expensive) if these versions maintained the page colors. It would also be nice to have all the revisions, to be able to see what was changed from as well as the penultimate version.

2003-03-31 02:39:00 | Comments (3) | TrackBack (0) | CopyrightCartel::Books

All the Triplets For Kim

The government of the DPRK is worried about the parents of triplets, and is doing something about it...

In a statement to the UN Human Rights Commission in Geneva, North Korea said: "Triplets are supplied by the state free of charge with clothing, bedding, a one-year supply of dairy products and a pre-school subsidy, and special medical workers take charge of such mothers and children and care for their health."

...whether they want it or not. All triplets are raised in state-run orphanages whether their parents want to give them up or not, apparently because Kim Jong Il is afraid that one will grow up to take power from him.

Doesn't he know the story of oedipus? You can't get around a cosmic destiny just by having kids raised by outsiders. The only way to be sure is to nuke them from space.

2003-03-30 11:53:00 | Comments (1) | TrackBack (0) | Politics::PoliticsOfTheInsane::NorthKorea

Sex Toys at Amazon

Back in January, Drugstore.com created a sub-store dealing with "sexual well-being". Drugstore.com had already been selling a few vibrators (notably the stylish and deniably sculpture-like Natural Contours line) and the kind of functional-but-boring lubricants and condoms you'd find at your corner drugstore, but this new store si both more sensually-styled and more adventurous in range.

What I hadn't thought about until today was that, through their mutual-defense pact, all these new products are now also available through Amazon.

Yes, Amazon now carries:

2003-03-30 10:44:00 | Comments (1) | TrackBack (0) | Smut::Business

Macros Plugin 0+1i

This is the first general release of my macros plugin, a highly generalized macro package modelled on (but not actually based on, code-wise) Brad Choate's MT-Macros package.

This release includes string macros, pattern macros, tag macros (html-like tags without content, like html's <img>) and content tag macros (html-like tags with content, like html's <a>...</a>). String and pattern macros may be restricted to only match in content areas, not in markup. Any macro can be set to only match once per story.

See the documentation in the plugin itself, or the macro files I actually use or that I test with, for documentation and examples of the syntax.

To install:

  1. download and unzip the plugin.
  2. Copy it to your plugins directory. Make sure it's world-readable.
  3. Create a $plugin_state_dir/.macros directory, and put macro definition files in it.
  4. Use it!
  5. Drop me a note to let me know you're using it; if you're having problems, let me know and I might be able to help. If everything's working okay, please let me know that, too.

Things that are missing (not all of them appear useful, though):

  • MT-Macros 'recursion' option isn't available. If this is a real problem for you, please let me know, preferably with a good example of what you can't accomplish currently (remember, macros are invoked in the order they're defined, which you can control with filename naming)
  • tag and ctag macros can't be used in HTML markup. This would be a big problem for Movable Type, where parameter replacement is done with psuedo-HTML, but doesn't seem to be a problem for Blosxom. If it is for you, please let me know, again along with an example.
  • MT-Macros 'no_case' option isn't available. This can be done by including (?i) in your patterns or defining them with qr//i, instead.
  • tag and ctag macros can't be explicitely named, because the 'name' parameter is already being used. Future versions may change tag and ctag to use 'string' or 'pattern' for what 'name' is currently used for, and use 'name' to define a macro. That will only be done if there's a good use for names, though.
  • Once defined, macros are always active. They can't be deactivated on a per-story basis. This might be handled with a meta- header at some point, if someone gives me a reasonable example for why they need it.
  • There's no built-in data-based macro definition syntax. It's not clear to me that a literal define_macro() call is any more difficult than MT-Macros' HTML-looking (but not HTML-acting) definition syntax, though, and as shown above simpler syntaxes ban be custom-built as appropriate. I'd be more than happy to include a simpler syntax, though, if someone were to develop one that were obviously better than define_syntax().

Plugins that I think could be replaced with this:

  • strip_unix_comments (pattern ^#.*?$ -> '')
  • asin
  • dictionary (macro definition file that reads the dictionary file to create macros)
  • citysearchtag
  • macrolinks
  • galleryref
  • amps

Plugins that can't be, but maybe should be -- missing functionality?

  • wikiwordish (would need to be able to invoke a user function to get replacement text)
  • functions (same as wikiwordish)
  • date_fullname (would need to be able to repalce text after interpolation, and to run against date as well as story)
  • date_translate
  • seemore (would need to be able to enable/disable macro based on $path or parameter)

2003-03-29 08:15:00 | Comments (2) | TrackBack (0) | Computers::Internet::Web::Blosxom::Plugins::Macros

AllConsuming Plugin 0+3i

The AllConsuming plugin has been updated (yes, again).

Changes:

  • Amazon Associate ID is a configuration variable, not embedded in the default templates
  • Multiple networking implementations: SOAP::Lite, LWP, wget, curl. The LWP, wget and curl implementations use AllConsuming's demonstration CGI script, which is presumably less supported and less stable than the SOAP interface.
  • Caching is optional (but I don't think you'd want to use it without it; it will at least not cause system errors if the plugin is installed but Storable isn't available).
  • HTML::Entities is optional; if it's not available, a simple implementation which just encodes '<', '&' and '>' is used.
  • Algorithm::Numerical::Shuffle is no longer required; the shuffle algorithm is included directly
  • For lists that are configured to not build (ie, $num{foo}=0), the data isn't even transferred.

Installation:

  1. Verify you have the requirements for one of the networking implementations installed (SOAP::Lite or the LWP suite of modules or a 'curl' or 'wget' executable); if not, choose one to install
  2. Verify you have a Storable with lock_retrieve installed; if not, decide whether you really want to try to use this, or install it.
  3. download and unzip the plugin.
  4. Copy the plugin to your plugins directory
  5. Configure the username variable; it won't do anything until you do. Configure your Amazon Associate ID if you have one.
  6. Add $allconsuming::reading, $allconsuming::finished, or the like to one of your flavour files. See the included POD documentation (perldoc allconsuming) for the complete list.
  7. Try it out -- load your blog in your browser.
  8. If everything is working, set $debug_level to 0; if not, check your error log to make sure the plugin is being loaded, and see if it's logging any errors
  9. Drop me a note letting me you're using it and how things are working for you.
  10. Enjoy!

Things still to do, still active from 0+1i:

  • locally cache the amazon image files, and supply the width and height; my previous non-plugin method did this, but I just haven't gotten to it for this.

Things I'd like to do that require Blosxom changes:

  • use the system interpolation system, getting the benefits of any interpolation plugins

2003-03-28 05:30:00 | Comments (0) | TrackBack (0) | Computers::Internet::Web::Blosxom::Plugins::AllConsuming

Who IS This?

!(image-right)amateur0173.jpg 200h(Unknown busty babe)!Does anyone know who this is? Or at least, you know, where to get more pictures of her?

2003-03-28 01:44:00 | Comments (7) | TrackBack (0) | Smut::PrettyWomen

Angel just keeps getting better and better

Angel just keeps getting better and better. With no Buffy next year, and no new spin-off, I can't believe the WB seems to actually be considering cancelling this. Are they insane or just stupid?

Spoilery speculation up through Players follows



At the end of Players, Our Heroes ask "Has Cordy been a bad bad girl?"; the Magic 8-Ball (and, in the closed captioning, Cordy) says "definitely".

I don't think so, though. In fact, I don't think we've seen Cordy since early this episode -- I think she's still up in heaven getting more and more frustrated. Whoever or whatever this is that looks like Cordy isn't Cordy at all.

2003-03-27 22:40:00 | Comments (0) | TrackBack (0) | CopyrightCartel::TV::Buffy

AllConsuming Plugin 0+2i

Update: There are newer versions available; please use the newest version unless you have a particular reason not to.

The AllConsuming plugin has been updated.

Changes:

  • several bugs in the default templates fixed (0+1i's are half table based and half list based -- oops)
  • typo fixed so shuffling actually works
  • Author and Titles are now HTML Entity encoded; this requires HTML::Entities
  • If a hash is returned where a list of hashes is expected, treat it as a 1-element list

Installation:

  1. Verify you have the necessary modules (SOAP::Lite, Algorithm::Numerical::Shuffle, CGI, Storable, HTML::Entities) installed; install them if not.
  2. download and unzip the plugin.
  3. Copy the plugin to your plugins directory
  4. Configure the username variable; it won't do anything until you do.
  5. Add $allconsuming::reading, $allconsuming::finished, or the like to one of your flavour files. See the included POD documentation (perldoc allconsuming) for the complete list.
  6. If you're an Amazon Associate, modify the template to use your ID instead of mine ('mtmolel-20'); if you aren't, but don't want to give me gratuitous hits, just remove the '/mtmolel-20' bit from the template
  7. Try it out -- load your blog in your browser.
  8. If everything is working, set $debug_level to 1; if not, check your error log to make sure the plugin is being loaded, and see if it's logging any errors
  9. Drop me a note letting me you're using it and how things are working for you.
  10. Enjoy!

Things still to do, all still active from 0+1i:

  • have a variable for the amazon associate ID rather than hardcoding mine in the default template -- oops, I meant to get that into the first release, honest.
  • locally cache the amazon image files, and supply the width and height; my previous non-plugin method did this, but I just haven't gotten to it for this.
  • use the (less-documented, less-official?) CGI-based AllConsuming API rather than the SOAP, and do XML parsing with regexes, to get the module requirements down to something sane.
  • if the above has been done, make the shuffling support optional, and don't require Shuffle if it's not wanted.
  • if/when blosxom supports it, use a plugged-in interpolate function, so interpolate-conditional can be used to conditionally include images based on the list (my previous non-plugin method did this, too, but there's no sane way to do it in a plugin, yet)

2003-03-27 20:19:00 | Comments (0) | TrackBack (0) | Computers::Internet::Web::Blosxom::Plugins::AllConsuming

AutoTrack 0+2i

AutoTrack has been updated

Interesting changes:

  • internal networking implementation using LWP; can still be configured to use curl if that's available but LWP isn't, and can also be configured to use wget 1.9beta or newer if it's available but neither LWP nor curl is.
  • the response to the ping is parsed, and errors are noticed and logged
  • if pings are attempted but all fail, the timestamp is reverted so they'll be tried again (if some succeed and some failed, though, the failed ones won't be retried)
  • if the meta plugin is installed properly, trackback ping URLs can be given with a meta-tb_ping header, for sites that don't have autodiscovery RDF, and "meta-autotrack: no" can be used to turn off autodiscovery for a story. (for this to work properly, the meta and autotrack plugin files must be named such that meta gets loaded earlier; otherwise, these headers will apply to the next story. ie, names like "10meta" and "90autotrack" are good; names like "meta" and "autotrack" will cause problems.
  • POD documentation is included

Installation

  1. make sure you have at least one of LWP, curl, and wget 1.9+ installed
  2. download and unzip the plugin.
  3. Copy the plugin to your plugins directory
  4. if you want to use the meta functionality, rename meta and/or autotrack with initial numbers to force the meta-before-autotrack order
  5. if you don't have LWP isntalled, configure $networking to use one of the other implementations
  6. Try it out -- load your blog in your browser, with ?autotrack=yes
  7. If everything is working, consider setting $debug_level to 0; if not, check your error log to make sure the plugin is being loaded. In semi_auto mode, there's no output at debug level 1unless the plugin is enabled, so you might want to leave it at 1.
  8. Drop me a note letting me you're using it and how things are working for you.
  9. Enjoy!

Barring bugs, I think this plugin is done; that makes bug reports all the more important, as this will otherwise be re-released as 1.0 soon.

2003-03-27 02:06:00 | Comments (46) | TrackBack (0) | Computers::Internet::Web::Blosxom::Plugins::AutoTrack

Fox and Friends for Cloth Control

From Fox & Friends this morn: the urgent need for Cloth Control.

E.D.:

and if the Iraqi forces...how are they gettin' these uniforms? I would think there'd be tighter control over 'em...but if they're usin' 'em...again, how do you buy these things? there should be tighter control.

2003-03-26 04:46:00 | Comments (0) | TrackBack (0) | CopyrightCartel::TV

iWax

From the "stuff nobody needs but I really really want" department..

iWax, a polishing solution for the cases of Apple's current iBooks, such as my preciouss preciousss iota, which sadly has a scratch on one edge.

2003-03-26 00:44:00 | Comments (0) | TrackBack (0) | Computers::Macintosh

Categories Plugin 0+4i

Categories has been updated.

User-visible Interesting Changes, in rough order by interestingness:

  • new $indent template variable, which is the contents of the flavour file 'indent', repeated N times, where N is the depth of the current category
  • new template variable "$prettydir", is the name of the category with spaces added to CamelCaps and instead of underlines in underlined_names.
  • The top-level directory is now called "Root" by default, not "/", and it's configurable
  • uses the built-in templating system, including any template plugin that's installed
  • variables in templates can be interpolated with ${name} as well as $name
  • cached layouts are keyed based on flavour, so if you have template files that vary by flavour it will actually work now
  • cache is only enabled if the available Storable supports lock_retrieve
  • the cache is flushed every time a story is added, not every time the timestamp of the latest file changes; if caching is enabled, the category list (usually) now shows all the categories even if a filtering plugin (such as a search system) has reduced the number of visible files.
  • the $story_count_commulative configuration variable is now spelt $story_count_cumulative, to match the actual english language. Attempts to get enlish to change to match the plugin were unsuccessful.
  • requires Blosxom 2.0rc1 2.0rc2 or newer
  • the default templates are in the 'error' flavour rather than 'html', so they're used for any flavours that don't override them (the same effect was achieved a different way in 0+4i)

Thanks to:

  • Jason Hoffman, prodding me into XHTML validation
  • Robert Hahn, for the directory-name prettification
  • Colin Eric Johnson, for an HTML validation note
  • Earle Martin, HTML validation note

Things I'd like to be able to do, but can't reasonably without Blosxom changes:

  • use the built-in interpolation system, including any interpolate plugin that's installed

To install:

  1. download and unzip the plugin.
  2. Copy it to your plugins directory. Make sure it's world-readable.
  3. Modify a head or foot file to include $categories::categories or $categories::breadcrumbs
  4. Try it out — load your blog in your browser. If you see a category tree, great!
  5. Look at your error log. Verify you have an 'enabled' line.
  6. If you're wanting to verify caching is working, load the page again, and now look for an error log line "calendar debug 1: Using cached state"
  7. Once you're satisfied it's working, edit the $debug_level configuration variable to 0. There are a couple other configuration variables you may wish to change, too.
  8. Drop me a note to let me know you're using it; if you're having problems, let me know and I might be able to help. If everything's working okay, please let me know that, too.

Molelog is running this with some customized templates.

categories.breadcrumb_between_child.html:

|&#x200b;

categories.head.html:

<form name="cat" method="get" action="$url"> 
<!-- XXX any way to do this w/o js? -->
<script type="text/javascript">
function gotocat() {
 location = document.cat.cat.options[document.cat.cat.selectedIndex].value;
}
</script>
<select name="cat" onchange="gotocat()">

categories.indent.html:

&nbsp;&nbsp;&nbsp;

categories.dir_head.html:

<option value="$url/index.html">
  $indent$prettydir /
</option>

categories.this_dir_head.html:

<option selected value="$url/index.$blosxom::flavour">
  $indent$prettydir /
</option>

categories.foot.html:

</select></form>

categories.dir_foot.html, categories.subtree_head.html, categories.subtree_foot.html, categories.this_dir_head.html, and categories.this_dir_foot.html are all empty.

2003-03-25 15:33:00 | Comments (9) | TrackBack (0) | Computers::Internet::Web::Blosxom::Plugins::Categories

PostGraph 0+1i

Next plugin up (yes, I'm procrastinating before tackling the searchlinks -- I'm still not seeing a good solution for the race condition inherent in doing that in a plugin at reasonable speed): PostGraph.

This plugin creates the two graphs over there in my Archives box; the first style shows all posts since a given start date (or all posts, period); the second, just for the current month, but gives more detail on the exact times -- and is (intended to be) directly compatible with the Movable Type blogtimes plugin.

This plugin requires the GD and GD::Graph modules, because I'm both sane and lazy.

Installation

  1. Verify you have the necessary modules installed; install them if not.
  2. download and unzip the plugin.
  3. Copy the plugin to your plugins directory
  4. Configure the $destination_dir variable; it won't do anything until you do. to be useful, this needs to be a directory Blosxom can write to, that's visible through your webserver.
  5. Add <img src="..../graph.png"> or <img src="..../blogtimes.png"> to one of your template files
  6. Try it out -- load your blog in your browser, look for the graph.
  7. If everything is working, set $debug_level to 0; if not, check your error log to make sure the plugin is being loaded, and see if it's logging any errors
  8. Drop me a note letting me you're using it and how things are working for you.
  9. Enjoy!

Things still to do, maybe:

  • Fix the configuration so the width and height bits are treated the same -- they should both be either for the overall image or for the contained graph, not one one way and the other the other.

The BLOGTIMES-specific code is directly copied from code by Nilesh Chaudhari, but he's not responsible for any bugs I've introduced.

Molelog is using this with the following configuration:

$postgraph::destination_dir = $blosxom::datadir;
$postgraph::graph_start_day = "20030202";
$postgraph::graph_num_bars  = 24;
$postgraph::graph_width     = 200;
$postgraph::graph_height    = 100;
$postgraph::barcolor 	    = "#f5deb3";
$postgraph::bordercolor     = "#83660f";
$postgraph::outlinecolor    = "#83660f";
$postgraph::boxcolor 	    = "#fffbf0";
$postgraph::textcolor 	    = "#4f0000";
$postgraph::bt_width 	    = 165;
$postgraph::bt_height 	    = 30;
$postgraph::bt_linecolor    = '#83660f';
$postgraph::bt_textcolor    = '#4f0000';
$postgraph::bt_fillcolor    = '#f5deb3';
$postgraph::bt_bordercolor  = '#83660f';
$postgraph::bt_padding 	    = 5;
$postgraph::bt_show_text    = 1;
$postgraph::debug_level     = 2;

2003-03-25 05:20:00 | Comments (0) | TrackBack (0) | Computers::Internet::Web::Blosxom::Plugins::PostGraph

Greek Independence Day

If you all drank green beer last Monday, you were acting entirely voluntarily. Today, however, Our President calls upon you to drink ouzo.

NOW, THEREFORE, I, GEORGE W. BUSH, President of the United States of America, by virtue of the authority vested in me by the Constitution and laws of the United States, do hereby proclaim March 25, 2003, as Greek Independence Day: A National Day of Celebration of Greek and American Democracy. I call upon all the people of the United States to observe this day with appropriate ceremonies and activities.

2003-03-25 01:08:00 | Comments (0) | TrackBack (0) | Politics::Observances

SeeMore Plugin 0+3i

SeeMore's been updated.

User-visible Interesting Changes, in rough order by interestingness:

  • new configuration item $more_on_article, on by default; if set, then single-article pages will show the whole article, not just the first part. This is good for people wanting summaries in index pages, not so good for people wanting spiler protection.
  • requires Blosxom 2.0rc1 2.0rc2 or newer
  • uses the built-in templating system, including any template plugin that's installed
  • variables in templates can be interpolated with ${name} as well as $name

Things I'd like to be able to do, but can't reasonably without Blosxom changes:

  • use the built-in interpolation system, including any interpolate plugin that's installed

To install:

  1. download and unzip the plugin.
  2. Copy it to your plugins directory. Make sure it's world-readable.
  3. Create a story with a formfeed (control-l) or "<;-- more -->" in it, and view it to see the "See more..." link
  4. Once you're satisfied it's working, edit the $debug_level configuration variable to 0. There are a couple other configuration variables you may wish to change, too.
  5. Drop me a note to let me know you're using it; if you're having problems, let me know and I might be able to help. If everything's working okay, please let me know that, too.

2003-03-24 21:07:00 | Comments (2) | TrackBack (0) | Computers::Internet::Web::Blosxom::Plugins::SeeMore

Tatu Do It 3 Times a Day

Julia, left, snogs Lena on German TVThe Sun, which I'm sure is the UK's most reputable newspaper, has a story about Тату's sexual habits.

The in-depth report includes such tidbits as

Julia says: "We really love each other and the sex is phenomenal. s a thousand times better than with a man. And contrary to what others might say, we don't just talk about it. We have sex at least three times a day."

Lena says: "It doesn't bother us if it's a man or a woman. But it is not as much fun with men. They are always too quick and don't always make us orgasm."

Lena says: "Maybe we've had four or fivesomes, it's our secret. After gigs we like taking a couple of sexy girls to our hotel room."

Tatu stars get close

Okay, the reporting leaves something to be desired. There are some nice pictures, though.

2003-03-24 20:57:00 | Comments (9) | TrackBack (0) | CopyrightCartel::Music::Tatu

Netflix for Porn

Private Media (PRVT), the big European smut producer, has introduced Private at Home, essentially Netflix for smut. At least, if Netflix only had movies from Warner Brothers.

The pricing is pretty in-line with Netflix's current -- $13.99/month for 2 movies at a time, up to $29.99/month for 5 -- but I think the focus on a single company's offering is a killer, and not in a good way. Sooner or later either Netflix will notice the huge market they're missing or someone else will, and there will be a real Netflix for porn.

Update: There are several others already in this market; for a comparison chart, see this post.

2003-03-24 17:01:00 | Comments (11) | TrackBack (0) | Smut::Business

Alyson's 29

AlysonToday is Alyson Hannigan's 29th birthday.

2003-03-24 16:45:00 | Comments (1) | TrackBack (0) | CopyrightCartel::TV::Buffy

Blogroll Plugin 0+4i

Blogroll's been updated.

User-visible Interesting Changes, in rough order by interestingness:

  • in addition to $blogroll::blogroll, there's a variable for each input file, named after the file with all non-alphanumerics replaced with underscores (ie, $blosxom::com_ranchero_NetNewsWire_plist). This variable includes the items in the order they're in the file, includng any hierarchy (currently only NNW plist files support hierarchies).
  • NNW plist files with items split into hierarchical categories can be read
  • cached layouts are keyed based on flavour, so if you have template files that vary by flavour it will actually work now
  • $blosxom::debug contains the debugging output, for people who can't see system error logs
  • requires Blosxom 2.0rc1 2.0rc2 or newer
  • uses the built-in templating system, including any template plugin that's installed
  • variables in templates can be interpolated with ${name} as well as $name
  • cache is only enabled if the available Storable supports lock_retrieve
  • POD documentation is included

Things I'd like to be able to do, but can't reasonably without Blosxom changes:

  • use the built-in interpolation system, including any interpolate plugin that's installed

To install:

  1. download and unzip the plugin.
  2. Copy it to your plugins directory. Make sure it's world-readable.
  3. Modify a head or foot file to include $blogroll::blogroll.
  4. Create a .blogroll directory in your plugin state directory, and copy or symlink source files into it; if symlinking, be careful with permissions -- blosxom will need execute permissions for every directory along the path (this is particularly an issue for the NetNewsWire.plist file)
  5. Try it out — load your blog in your browser. If you see a blogroll, great!
  6. Look at your error log. Verify you have an 'enabled' line.
  7. If you're wanting to verify caching is working, load the page again, and now look for an error log line "blogroll debug 1: Loaded cache"
  8. Once you're satisfied it's working, edit the $debug_level configuration variable to 0. There are a couple other configuration variables you may wish to change, too.
  9. Drop me a note to let me know you're using it; if you're having problems, let me know and I might be able to help. If everything's working okay, please let me know that, too.

Molelog is running this, with some customized templates and stylesheets.

Stylesheet:

.blogroll {
	margin-left:		22px;
}
.blogroll-item {
	text-indent:		-22px;
}

blogroll.head.html:

<div class="blogroll">

blogroll.item_xml.html:

<div class="blogroll-item">
  <a href="$xmlurl">
    <img src="/blog/xml.gif" 
         width="18" height="7" border="0" 
         alt="XML">
  </a>
  &nbsp;
  <a href="$htmlurl">
    $title
  </a>
</div>

blogroll.item_no_xml.html:

<div class="blogroll-item">
  <img src="/blog/blank.gif" 
       width="18" height="7" border="0" 
       alt="No XML">
  &nbsp;
  <a href="$htmlurl">
    $title
  </a>
</div>

blogroll.foot.html:

</div>

2003-03-24 16:15:00 | Comments (3) | TrackBack (0) | Computers::Internet::Web::Blosxom::Plugins::Blogroll

Calendar Plugin 0+5i

Calendar's been updated.

User-visible Interesting Changes, in rough order by interestingness:

  • On single-article pageviews, create a calendar for the date of the article (this only works in dynamic mode currently, requires a Blosxom change to give full $path_info support in static mode)
  • requires Blosxom 2.0rc1 2.0rc2 or newer
  • uses the built-in templating system, including any template plugin that's installed
  • cached layouts are keyed based on flavour, so if you have template files that vary by flavour it will actually work now
  • variables in templates can be interpolated with ${name} as well as $name
  • with the default templates, the current day/month is only a link if there are stories for it
  • this_day template split into this_day_link and this_day_nolink
  • this_month template split into this_month_link and this_month_nolink
  • the default templates are in the 'error' flavour rather than 'html', so they're used for any flavours that don't override them (the same effect was achieved a different way in 0+4i)
  • cache is only enabled if the available Storable supports lock_retrieve
  • the cache is flushed every time a story is added, not once a day -- this is required for the this_day_link and this_month_link support

Things I'd like to be able to do, but can't reasonably without Blosxom changes:

  • use the built-in interpolation system, including any interpolate plugin that's installed
  • create months for appropriate dates in static mode

To install:

  1. download and unzip the plugin.
  2. Copy it to your plugins directory. Make sure it's world-readable.
  3. Modify a head or foot file to include $calendar::calendar, $calendar::month_calendar or $calendar::year_calendar
  4. Try it out — load your blog in your browser. If you see a category tree, great!
  5. Look at your error log. Verify you have an 'enabled' line.
  6. If you're wanting to verify caching is working, load the page again, and now look for an error log line "calendar debug 1: Using cached state"
  7. Once you're satisfied it's working, edit the $debug_level configuration variable to 0. There are a couple other configuration variables you may wish to change, too.
  8. Drop me a note to let me know you're using it; if you're having problems, let me know and I might be able to help. If everything's working okay, please let me know that, too.

Molelog is running this, with some customized templates and stylesheets.

Stylesheet:

.calendar { }
.month-calendar, .year-calendar {
	border-collapse:	collapse; 
}
.month-calendar-head, .year-calendar-head {
	font-size:		110%;
	font-weight:		bold;
}
.month-calendar-day-head, .year-calendar-subhead {
	font-weight:		normal;
/*	font-size:		80%; */
}

.month-calendar-day-noday,
.month-calendar-day-link,     .year-calendar-month-link,
.month-calendar-day-nolink,   .year-calendar-month-nolink,
.month-calendar-day-this-day, .year-calendar-this-month,
.month-calendar-day-future,   .year-calendar-month-future  {
	text-align:		center;
	font-family:		"Georgia", "New Century Schoolbook", "Times", serif;
}

.month-calendar-day-future, .year-calendar-month-future {
	color:			#83660F;
}

.Saturday, .Sunday {
	background:		#f5deb3;
}

.month-calendar-day-this-day, .year-calendar-this-month {
	background:		#a5e4ff;
}

calendar.calendar.html:

<div align="center" class="calendar">
  <table>
    <tr>
      <td colspan="2">$calendar::month_calendar</td>
      <td> </td>
      <td colspan="2">$calendar::year_calendar</td>
    </tr>
    <tr>
      <td align="left">$prev_month_link</td>
      <td align="right">$next_month_link</td>
      <td> </td>
      <td align="left">$prev_year_link</td>
      <td align="right">$next_year_link</td>
    </tr>
  </table>
</div>

calendar.month_head.html:

<table class="month-calendar">
  <caption class="month-calendar-head">
    <a title="$monthname $year" href="$url">$monthname</a>
  </caption>

calendar.year_head.html:

<table class="year-calendar">
  <caption class="year-calendar-head">
    <a title="$year" href="$url">$year</a>
  </caption>
  <tr>
    <th class="year-calendar-subhead" colspan=$months_per_row>
      Months
    </th>
  </tr>

calendar.next_month_link.html:

<span class="text-align: right">
  <a title="$monthname $year" href="$url">$monthabbr &rarr;</a>
</span>

calendar.next_month_nolink.html:

<span class="text-align: right">&rarr;</span>

calendar.next_year_link.html:

<span class="text-align: right">
  <a title="$year" href="$url">'$year2digit &rarr;</a>
</span>

calendar.next_year_link.html:

<span class="text-align: right">&rarr;</span>

calendar.prev_month_link.html:

<span class="text-align: left">
  <a title="$monthname $year" href="$url">&larr; $monthabbr</a>
</span>

calendar.prev_month_nolink.html:

<span class="text-align: left">&larr;</span>

calendar.prev_year_link.html:

<span class="text-align: left">
  <a title="$year" href="$url">&larr; '$year2digit</a>
</span>

calendar.prev_year_nolink.html:

<span class="text-align: left">&larr;</span>

2003-03-24 05:40:00 | Comments (1) | TrackBack (0) | Computers::Internet::Web::Blosxom::Plugins::Calendar

AutoTrack 0+1i

Update: There are newer versions available; please use the newest version unless you have a particular reason not to.

AutoTrack 0+1i is a first cut at an automatic trackback pinger. There are almost certainly problems, and at this point it's probably only suitable for people who are able and willing to help diagnose any problems encountered.

It requires external utilities to perform HTTP GETs and POSTs. The current default configuration uses 'curl', which is the only utility I'm aware of that's suitable. Information on other common tools for systems without curl would be appreciated.

It can run in two modes, 'automatic' and 'semi_auto'; by default, it runs in 'semi_auto' mode. In semi_auto mode, pings will only be sent if the 'autotrack' parameter is given (ie, http://molelog.molehill.org/blox?autotrack=yes); in automatic mode, it's always enabled. In either mode, it keeps track of when it was last enabled, and will only send pings for stories that appear to be newer than that.

Update 11:26am: 0+1.1i released in place, adding a $start_from_now option, set by default. if set, it will send pings only for stories added after it's run the first time, not previously existing stories.

You almost certainly want to run it in semi_auto mode the first time; this will likely take quite a while, as it follows 40 stories' worth of links. If you're the kind of person who edits stories a couple times before being happy with them (as I am), you may want to stay in semi_auto mode permanently.

This doesn't handle trackbacks TO your weblog; for that, use Rael's writeback or the standalone MT tb.cgi.

Installation

  1. Verify you have the necessary modules installed; install them if not.
  2. download and unzip the plugin.
  3. Copy the plugin to your plugins directory
  4. Try it out -- load your blog in your browser, with ?autotrack=yes
  5. If everything is working, consider setting $debug_level to 0; if not, check your error log to make sure the plugin is being loaded. In semi_auto mode, there's no output at debug level 1unless the plugin is enabled, so you might want to leave it at 1.
  6. Drop me a note letting me you're using it and how things are working for you.
  7. Enjoy!

Things still to do, maybe:

  • parse returns, log errors, maybe figure out how to try again in case of a problem.
  • write POD documentation
  • write an optional internal LWP implementation

2003-03-23 07:32:00 | Comments (1) | TrackBack (0) | Computers::Internet::Web::Blosxom::Plugins::AutoTrack

Luxe by Shard


Luxe

Luxe

Luxe

Luxe

Luxe

Luxe

Lenny Gotter, also known as Shard, is a photographer here in the Portland Oregon area.

He's had the good fortune to photograph the lovely Luxe at least twice.

I first saw Luxe at Ken's bachelor party, dancing at Sassy's. She was by far the most entrancing dancer in the joint, and not just physically -- she is one of the few dancers I've seen here who actually dance. Her first set was memorable for the music -- Depeche Mode's Sweetest Perfection, Guns'n'Roses' Welcome to the Jungle and the "In Your Hand" Mix of Lords of Acid's The Power is Mine -- and I choose to believe she picked it out. Her third set was memorable for her costume, a japanese-ish striped sailor-boy shirt and Hello-Kitty™ panties. We left after that, on the theory that there was no way there was anything better coming up.

I haven't been back; what if she weren't there?

2003-03-22 15:09:00 | Comments (0) | TrackBack (0) | Smut::ArtSmut

Bertrand Meyer on Donald Knuth

Bertand Meyer, creator of the Eiffel language, apparently has a book review column; although I'm not terribly interested in Jesse Liberty's Programming C# [amazon], Meyer's review of it was interesting, primarily because it ended by pointing out the common problems with computer books and promising to try to focus on books that didn't have those particular problems.

Intrigued, and hopeful, I went looking for his other reviews. It turns out he only has one more, a review of Donald Knuth's Things a Computer Scientist Rarely Talks About [amazon].

It's a very short review

And a very good thing too!

2003-03-22 12:35:00 | Comments (0) | TrackBack (0) | CopyrightCartel::Books

Voting Rights Amendment

Avram Grumer suggests

A Constitutional amendment making the right to vote, including in presidential elections, a personal, individual right guaranteed by the Constitution, rather than one handed down by state legislators.

There are some obvious advantages, but there are also some drawbacks; most of the points I raised to a proposal to eliminate the electoral college apply here, too. In particular, the current system allows for the possibility (alas, not currently the actuality) of experimentation with who has the vote.

States could right now try alternate voting rights based on such things as citizenship (opening up the vote to resident aliens), intelligence and knowledge (this one obviously has some pretty severe history to work against it, but I don't think it's necessarily illegitimate if it can be designed to be provably race-neutral -- to the extent that it disenfranchised males 21 and over, it would reduce representation, but I think a state could reasonably choose to take that hit in exchange for hopefully better local government) or age:

  • everyone over 16
  • everyone old enough to perform the mechanics of voting
  • everyone over 8 who can pass a basic civics test
  • everyone, with guardians voting by proxy for those who can't or choose not to vote for themselves

There's also existing variation on whether and under what cirumstances felons and ex-felons can vote.

Now, some of those ideas are pretty obviously bad ones, but some of them aren't, and it would be interesting to see a state try them. If the US constitution nailed down exactly who had the right to vote, that's much less likely to happen.

2003-03-22 10:09:00 | Comments (0) | TrackBack (0) | Politics

AllConsuming 0+1i

Update: There are newer versions available; please use the newest version unless you have a particular reason not to.

Next up: AllConsuming (books).

Unlike most the other plugins I've released, I haven't tried hard this time to stick to core Perl modules: it requires Storable (with working lock_retrieve and lock_store), SOAP::Lite and Algorithm::Numerical::Shuffle. These requirements might be lowered in later releases.

Storable is required because I don't think anybody would want to use this without caching. Looking up the information is pretty slow, and you don't want a random user to have to wait for it.

SOAP::Lite is required because AllConsuming's API is SOAP based. Algorithm::Numerical::Shuffle is required for random selection from long lists -- that one could be removed easily, but as long as I'm requiring people to get SOAP working, adding one more easy install didn't seem too bad.

Installation

  1. Verify you have the necessary modules installed; install them if not.
  2. download and unzip the plugin.
  3. Copy the plugin to your plugins directory
  4. Configure the username variable; it won't do anything until you do.
  5. Add $allconsuming::reading, $allconsuming::finished, or the like to one of your flavour files. See the included POD documentation (perldoc allconsuming) for the complete list.
  6. If you're an Amazon Associate, modify the template to use your ID instead of mine ('mtmolel-20'); if you aren't, but don't want to give me gratuitous hits, just remove the '/mtmolel-20' bit from the template
  7. Try it out -- load your blog in your browser.
  8. If everything is working, set $debug_level to 1; if not, check your error log to make sure the plugin is being loaded, and see if it's logging any errors from the Netflix site
  9. Drop me a note letting me you're using it and how things are working for you.
  10. Enjoy!

Things still to do, maybe:

  • have a variable for the amazon associate ID rather than hardcoding mine in the default template -- oops, I meant to get that into the first release, honest.
  • locally cache the amazon image files, and supply the width and height; my previous non-plugin method did this, but I just haven't gotten to it for this.
  • use the (less-documented, less-official?) CGI-based AllConsuming API rather than the SOAP, and do XML parsing with regexes, to get the module requirements down to something sane.
  • if the above has been done, make the shuffling support optional, and don't require Shuffle if it's not wanted.
  • if/when blosxom supports it, use a plugged-in interpolate function, so interpolate-conditional can be used to conditionally include images based on the list (my previous non-plugin method did this, too, but there's no sane way to do it in a plugin, yet)

2003-03-22 06:38:00 | Comments (0) | TrackBack (0) | Computers::Internet::Web::Blosxom::Plugins::AllConsuming

Who Owns Sky?

The US "Fox" networks and the British "Sky" networks are sister networks, but what exactly does that mean?

Sky is a service of BSkyB, also knows as "British Sky Broadcasting". As of 30 November 2002, BSkyB Holdco, Inc. owned 35.4% of BSkyB.

As of 26 April 2002, BSkyB Holdco Inc. was 100% owned by Sky Global Operations, Inc., which was majority owned by Sky Global Networks, Inc., which was majority owned by Sky Global Holdings, Inc., which was majority owned by News International Plc, which was majority owned by Newscorp Investments Limited, which was 100% owned by News Corporation Limited.

CompanyMinumum Ownership by next layerMaximum Ownership by next layer
BSkyB.354.354
BSkyB Holdco Inc11
SKy Global Operations, Inc..51
Sky Global Networks, Inc..51
Sky Global Holdings, Inc..51
News International Plc.51
Newscorp Investments Limited11
News Corporation Limited

So, News Corporation Limited owns somewhere between 2.2% and 35.4% of BSkyB.

Fox News is actually "FOX News Network, LLC". In the absence of better information (pointers, anyone?), I'll assume that FOX News Network LLC is 100% owned by Fox Entertainment Group, Inc., which in turn is 80.6% owned by News Corporation.

See, sisters! They share between 1.7% and 28.53% ownership! Assuming, of course, they don't have any non-News Corporation Limited owners in common, and that FOX News Network LLC is 100% owned by Fox Entertinament Group.

Of course, the simple answer is that Rupurt Murdoch controls them all.

2003-03-21 08:27:00 | Comments (0) | TrackBack (0) | CopyrightCartel::TV

SonicBlue Bankrupt

SONICblue, the current owners of the ReplayTV, RIO and GoVideo brands, has announced it's selling its major assets and filing for Chapter 11 bankruptcy protection.

A Japanese company named D&M Holdings Inc. is buying the ReplayTV and RIO units; D&M is Denon & Marantz, makers of high-end a/v equipment. That's a reasonably good fit for where ReplayTV is, but not for where I was hoping it was going -- it's probably good news for existing customers, but I suspect it means the end of competititon with Tivo for the mass market.

GoVideo is being sold to a company named Opta Systems LLC, a subsidiary of a Camco Investments LLC; Opta's vice chairman is a former CEO of Sensory Science, the former owner of GoVideo.

The announcement is curiously silent on other brands SONICblue owns, such as S3, Diamond Multimedia, and Supra. None are terribly important in the marketplace these days, but they do have significant history. I'd think the "Diamond" name in particular might be worth something.

No word yet on what it means for employees; hopefully they'll be kept on under more stable financial circumstances.

I think I'm glad they never made that job offer, though...

2003-03-21 06:32:00 | Comments (0) | TrackBack (0) | CopyrightCartel::TV::PVR

Amélie

As I'm probably the last person in the world to know first-hand, Le Fabuleux destin d'Amélie Poulain is a delightfully charming happy film. It doesn't particularly feel French to me, but it is very much non-American, or at least non-Hollywood. A Hollywood version of this would have to be cynical, even if it still had a happy ending; this isn't cynical at all.

The translation is curious, though, at least the one I saw (the English subtitles on the Region 1 DVD release). A quote shows up several times in the movie; the last time we see it written, thankfully.

Sans toi, les émotions d'aujourd' hiu me seraient que la peau morte des emotions d'autrefois -- Hipolito

That may not be quite right -- it's hand-written, and I don't read French so the normal context clues don't help much for a couple ambiguous letterforms.

The English translation given is

Without you, today's emotions would be the scurf of yesterday's.

"Scurf"? What's "scurf" mean? Evidentally it means 'dead skin', but it's not a word I knew. Did I just have a shocking hole in my vocabulary, or did the translator choose to use a truly uncommon word? If the latter, was it an intentional choice?

(And for the record, Audrey Tautou is shockingly cute and obviously of elfish descent.)

While I'm on the subject, why is it that my name gender detector fails so routinely French names? "Raphaël" is obviously male, as is "Claude", while "Dominique" is just as obviously female. Except that I'm wrong on all of those.

2003-03-21 05:20:00 | Comments (0) | TrackBack (0) | CopyrightCartel::Movies

No Buffy Spinoff in 2003

Sean K., apparently in a position to know, says there will be no Buffy spinoff in 2003.

sigh

2003-03-21 02:41:00 | Comments (0) | TrackBack (0) | CopyrightCartel::TV::Buffy

Netflix 0+1i