[current category: main » blosxom]
MikeyP.com

About This Site
Main Page
About MikeyP
Subscribe to Feed

Nov 09, 2010

Six Years of (sorta) Blogging

I can't believe I've kept this blog alive for six years.  I wish I was posting more often, and I hope I can get back in that routine again soon.

I still spend occasional time tinkering with the blog software and performance.  Let's call it a hobby. I've done a few things recently that have had a fairly major impact behind the scenes.

I updated my meta-robots tag to force Google to re-index the whole site.  It was indexing the pages by date, which by default was returning an entire year's worth of posts for many searches.  That's not a big deal for recent years, but older posts would cause ugly search results.  Google now indexes article links directly.  It was interesting to watch the search queries on the Google Webmaster Tools site plummet over the course of 8 weeks (!) while Google performed the indexing.

I noticed that several searches were for the Sony Qualia.  I have a picture of the Qualia 005 in an older post. I didn't think much of it at the time, but I posted the raw JPG from my camera, which was a 1.2MB file.  I've since scaled it down, but it turns out that some Qualia enthusiast sites were leeching the image and embedding it in their own pages while still being served from this site.  So I updated the .htaccess settings in my images path to load a tiny GIF if the referrer isn't my site or the feedburner feed.

Also while fixing the Google search results, I noticed that the site was loading a lot slower than I expected.  I discovered that the "moreentries" blosxom plugin was a major bottleneck.  I used it to limit the number of posts per page and show a "previous/next" button.  I never bothered to take a look at the code before, and I now I can't believe I had it in the pipeline for this long.  I yanked it and replaced it with the much faster (and 1/10th smaller) paginate_simple plugin.

While I use Disqus for new comments, the older "writeback" comments are still available to read.  However, they were a bit hidden, so now older posts with writeback comments have a "2 writebacks and 1 comment" link below the article.

Finally, I took some inspiration from Brian Cantoni's site optimization post and sped up the basic delivery of the site.  It turned out that I was only GZIPing the article text but nothing else.  Now everything is compressed by default thanks to mod_deflate, including all CSS and JavaScript.  I also forced the Cache-Control max-age to be 10 days for all images, CSS, and JavaScript.  The only thing that really slows the site down now is the Disqus comment system.  Maybe I'll code a native plugin for it some day, but I'm fine with it for now.

category: /blosxom |
comments | Share/Save/Bookmark

Oct 04, 2010

Added iPhone Stylesheet

I added an iPhone stylesheet to the site this weekend. I'm using the proper "meta viewport" tags to implement it, so it should work fine on any device supporting that tag.  I tested it with Safari and Opera Mini on an iPhone 4.  Safari looks great, but Opera Mini seems to want to make the page a little wider than the viewport.  I have no idea why, but it might be related to one of the "widgets" I have on the page (Google Reader, Twitter, Delicious, LibraryThing).

Let me know if this blog looks fine or wonky on your device.

category: /blosxom |
comments | Share/Save/Bookmark

Oct 01, 2010

Deprecated RSS Feed, use Atom Feed Instead

I finally deprecated the old RSS 0.91 feed for this blog, and redirected it to the Feedburner Atom feed.  I don't think that'll cause problems for anyone, but if it does, just head back to MikeyP.com and re-subscribe using the "Subscribe" button. Alternatively, just use the feed icon in your browser.

The direct feedburner URL is http://feeds2.feedburner.com/mikeyp

category: /blosxom |
comments | Share/Save/Bookmark

Feb 02, 2009

highlight.js Source Syntax Highlighting

I just added dynamic source code syntax highlighting to this blog. I opted to use highlight.js instead of the more popular syntaxhighlighter. Both are nice, but I liked the simplicity of highlight.js.  It uses a single JavaScript file, and the formatting is pure CSS.  It’s compatible with wiki-style markup such as Tiki or Markdown, and best of all (in my opinion), it does a reasonably good job of auto-detecting the source language.  You can also override the detection, if desired.

There is a download form on the highlight.js web site that will build an optimized JavaScript file for you.  Copy it to your server, and add these lines to your page:

<!-- highlight.js -->
<script type="text/javascript" src="http://www.example.com/js/highlight.pack.js"></script>
<script type="text/javascript">
	hljs.initHighlightingOnLoad();
</script>
<link rel="stylesheet" type="text/css" href="http://www.example.com/css/hl/sunburst.css" />
<!-- highlight.js -->

Add some CSS:


/* code block */
pre code {
	font-size:1em;
	font-family:"Consolas","Monaco","Bitstream Vera Sans Mono","Courier New",courier,monospace;
	line-height:1.1em;

	display:block;
	background: #333333;
	width: 100%;

	padding:0px;
	overflow:auto;
	overflow-y: hidden;

 	white-space:pre-wrap;
}

And you’re good to go.

category: /blosxom |
comments | Share/Save/Bookmark

Jan 22, 2009

FeedBurner and Outsourcing

To solve some of the compatibility issues with the Atom newsfeed, I’ve decided to route the feed through FeedBurner.  Google acquired FeedBurner last year, and there has apparently been some discontent with the service, but it seems fine to me.  The new feed URL is: http://feeds2.feedburner.com/mikeyp.  This is the default feed when you subscribe in the browser, or click on the Subscribe button.  The original Atom and RSS feeds will continue to work fine.

Originally, I wanted every element of the blog to be served directly from MikeyP.com, mainly to optimize page loads, preserve XHTML validation, and guarantee decent rendering fallback to mobile devices.  But I’m using a lot of “outsourced” services on the site now, including:

These services essentially transfer the bandwidth burden from my site to the client browser and/or service host, while requiring JavaScript support on the client.  However, not all of them validate with correct XHTML.  Generally, widgets often don’t “encode” ampersands because they inject HTML instead of XHTML, which will cause XHTML validation to fail.

category: /blosxom |
comments | Share/Save/Bookmark

Jan 17, 2009

Atom Feed and Share Link

I finally deprecated the old RSS 0.91 feed for this blog and replaced it with a proper Atom 1.0 feed. The RSS feed still works and always will, but you may want to re-subscribe with the Atom feed at some point. The feed URL is: http://www.mikeyp.com/weblog/index.atom. You can also click on the subscribe link on the side of the page, or click the little Feed icon Atom Feed in your browser.

UPDATE: See entry about feedburner.

I'm also trying out the AddToAny service which automatically shares posts to numerous community web sites. There is a now a little "Share" link at the bottom of each post. Click it to send the post to news sites, bookmark sites, Facebook, or whatever. I was tempted to use another service called AddThis, but they embed a little flash file in every link. Except for embedded items in posts, like videos, I'm trying to keep the site flash-free.

category: /blosxom |
comments | Share/Save/Bookmark

Jan 13, 2009

Styling the Google Reader Widget

When I added the Google Reader Widget to this site, I chose the style "none", which inherits the site's style and layout. However, it did some odd things with margins, so I wanted to style it manually. Google doesn't provide any styling documentation, but a quick inspection using Opera's "Show Structural Elements" option in the Author Mode button revealed class names. Here they are:

/* google reader widget */ 
div.reader-publisher-module {}        /* container for list */ 
div.reader-publisher-module ul li {}  /* list items */ 
div.f {}                              /* "Read More" link */

Also note that links in the Google Reader Widget don't have escaped ampersands, which produces invalid XHTML 1.0.

category: /blosxom |
comments | Share/Save/Bookmark

Jan 09, 2009

Added Disqus Commenting System

As much as I enjoyed creating the Rock/Paper/Scissors captcha [morerpscaptcha, rpscaptcha, rpscaptchasandwich] scheme for comments on this blog, the commenting system has otherwise been fairly primitive. I've been exploring ideas for enhancing the system and including some kind of global authentication like Google Connect, Facebook Connect, or Gravatars.

But it looks like a the guys at Disqus have most of this covered, so I'm going to give their system a shot. They support their own registration system as well as Facebook Connect, so if you have a Facebook account (with 150 million users, who doesn't these days?), you can post with your existing account.

I'm using the Javascript version of Disqus for now. If it works out, I'll convert to the backend API, which might make the pages load a bit faster. I also need to take a crack at restyling their default comment thread, which I'll do when I overhaul the rest of the site.

Comments that were posted with the previous system are still visible on the blog in the "Legacy Comments" section. However, only Disqus comments are counted in the "(#) comments" link on the main page.

category: /blosxom |
comments | Share/Save/Bookmark

Jan 06, 2009

Google Search and Link Blog

I replaced the generic search function on this blog with a custom Google Search. It provides much faster search results, and lightens the load on the server. I'll add highlights to the search results at some point.

I also replaced the Link Blog section with the list of blog items I'm sharing on Google Reader. I switched my feed reader from Bloglines to Google Reader several months ago, and haven't looked back. The formatting of the Link Blog list is a little weird right now, so I plan to spruce it up when I overhaul the stylesheet for the site.

category: /blosxom |
comments | Share/Save/Bookmark

Jan 04, 2009

Test Posts and Blog Updates

Sorry about all of the test posts that may have appeared in your feed reader. I've decided to give this blog software (good old blosxom) a bit of a reboot, and try to bring it up to some more modern standards.

This weekend I added support for MetaWeblogAPI and MoveableTypeAPI, which will let me post from external sources. In particular, I can now use Windows Live Writer to create posts. If you're on a Windows machine, and you haven't tried Live Writer, you must give it a shot. This is great software.

The Meta support comes from the BXR project, along with patches from mattn-san and a couple of tweaks of my own.

More to come!

category: /blosxom |
comments | Share/Save/Bookmark

Dec 30, 2008

MikeyP Cam is Offline

10 years is a pretty good run for a webcam. Especially one that shows nothing but a gradually aging picture of me working at my desk. ;-)

It was fun!

category: /blosxom |
comments | Share/Save/Bookmark

Nov 09, 2008

Four Years of (kinda) Blogging

In retrospect, my original 2004 goal of averaging one post per day seems a bit… ambitious. I have plenty that I'd like to write about, but something about blogging seems like too much effort. Especially for someone who is in crunch mode as much as I am.

And a lot has changed in the world of the internet over the past four years. There are many more neat ways to communicate with folks today, such as Facebook, Flickr, Twitter, etc., and they are getting more and more interesting by the day. Exciting!

So what to do with a blog? Well… I'm not sure. I certainly won't be posting a new entry every day, but I still want to keep central home for MikeyP on the net. I'm thinking of trying something new… maybe a mashup of different services, maybe something like a retro Web 1.0 zine, who knows. I should have some time to play with this site in January, so we'll see what happens.

One thing is almost certain: the webcam's days are numbered…

category: /blosxom |
4 writebacks and comments | Share/Save/Bookmark

Dec 15, 2007

Enabled GZIP Encoding

While I was doing some blog system maintenance today, I decided to enable GZIP encoding. I can't believe I didn't do this sooner. Pages now load significantly faster, and of course, use a lot less bandwidth.

Next up: dealing with the brute force comment-spam attacks on my Rock/Paper/Scissors captcha [morerpscaptcha, rpscaptcha, rpscaptchasandwich] system…

category: /blosxom |
comments | Share/Save/Bookmark

Nov 08, 2007

Three Years of Blogging

Yeah, I know, my blog posting frequency has dropped off a lot, but hey, three years on, and I've still got a blog. And I'm still running Blosxom, with a hack or two here and there to fend off comment spam. I have yet to find a reason to switch to any other software.

I've got plenty more to blog about in the future, so here's to the next year of blogging. B-)

I suppose I should update my CSS stylesheet one day…

category: /blosxom |
1 writebacks and comments | Share/Save/Bookmark

Sep 22, 2007

Added Amazon Ads

I originally added Google Advertising to this blog simply to have some more dynamic content on the site. The blog is cheap enough to operate that I don't need ad-supported revenue.

However, I dumped Google ads last year as I was seeing too many unscrupulous advertisements. I've now replaced the Google ads with Amazon Associate widgets. I'm using the "Omakase" type, which basically customizes the ad panel based on what you, the reader, have recently browsed at Amazon. Hopefully, this will create some meaningful, and less shady, content.

And for those of you who read via the RSS feed, the feed remains ad-free.

category: /blosxom |
comments | Share/Save/Bookmark

Apr 24, 2007

Added Link Blog to Right Column

I read a bunch of other blogs via Bloglines. Bloglines has a built-in blogging system, so I've started clipping interesting things I've read to a blog I created there. It is strictly a "link blog" - I'll keep my usual blog posts here at mikeyp.com.

I've added an automatic feed of my link blog to the right column of mikeyp.com. If you want to read the feed directly, just click here.

category: /blosxom |
comments | Share/Save/Bookmark

Nov 08, 2006

Blogging for Two Years

Wow, two years really does fly by fast. I'm sure not posting blog entries as frequently as I'd hoped, but I plan to keep on keepin' on for the duration.

As I watch other bloggers struggle through upgrades, formatting issues, spam, and outages with their mainstream blog software, MikeyP.com is still truckin with the old and simple (and probably "obsolete") blosxom software. My home-rolled Rock Paper Scissors captcha system [morerpscaptcha, rpscaptcha, rpscaptchasandwich] has kept the comment spam at bay… at least for now. And along with the Tiki Formatting (wiki-style) to hide the HTML formatting hassles, I see no real need to switch to any other software anytime soon.

category: /blosxom |
comments | Share/Save/Bookmark

Jul 06, 2006

Four Years of (kinda) Blogging

As you've noticed, I have Google ads on this blog along the right side of the page and along the bottom. I don't have them to make revenue. Rather, I wanted some semi-non-intrusive elements of active content on the site. The ads rotate according to some proprietary Google algorithms, so you tend to see something new and hopefully interesting every day.

Unfortunately, a bunch of the ads I've seen recently on this site have been what I would consider scams. Basically, they are the type of ad that screams "Free iPod! Just fill out a survey!" I don't want that crap on my web site, but Google's ad configuration page doesn't have a way for me to disable this stuff. Yes, I can block ads from a specific URL, but that is obviously a useless hassle.

So I'm thinking of dumping Google ads. I still want some active content in that space, so I think I'll try an Amazon Associates panel. It might look overpowering, however, so we'll see.

Hmmm, maybe I'll create a fake adserver app that serves up a regular dose of fake ads for fake companies and products…

category: /blosxom |
comments | Share/Save/Bookmark

Feb 26, 2006

Rock Paper Scissors Sandwich JarJar

Ever since I created a Rock Paper Scissors [morerpscaptcha, rpscaptcha, rpscaptchasandwich] validation game to combat comment spam, the amount of comment spam on this blog has dropped quite a bit. The exceptions have been little flurries that happen every 8 hours or so. The spams always choose the same answer to Rock Paper Scissors, so if they choose an answer, they basically have a 1-in-3 chance of winning and successfully posting a spam.

I need to change how I present Rock Paper Scissors. Currently, I present a challenge choice in English text ("I choose ROCK"), then require the poster to select an answer by choosing an image. I think I'll remove a lot of the "luck" if I reverse this: Present the challenge as an image, and require the answer to be typed in. For a non-spammer, this won't be any more of a challenge, but I hope spammers won't bother with the hassle.

But first…

Looking a the logs, I realized the spammers not only always choose the same answer, but they always choose either the first or last answer in the list. I suspect this is because the posts are automated from zombie apps residing on unsuspecting computers around the world (the IP addresses are from Indonesia, Israel, Portugal, etc.). So I tried an experiment: I added completely invalid choices to the Rock Paper Scissors game. In addition to the three valid answers of Rock, Paper, or Scissors, the first answer is now a picture of a sandwich, and the last choice is a picture of JarJar Binks.

I've been hit with two flurries of comment spam since I put the experiment online. All of their "winning choices" in a game of Rock Paper Scissors?
A Sandwich
Sandwich! :-D

Update 03/10/06: 60 spam attempts since I added the "Sandwich / JarJar" decoy, and all failed to successfully post a spam.

category: /blosxom |
comments | Share/Save/Bookmark

Dec 07, 2005

Update on Rock Paper Scissors Captcha

So far, my experiment with a Rock Paper Scissors game for writeback spam reduction [morerpscaptcha, rpscaptcha, rpscaptchasandwich] has been pretty successful. Until today, I've had zero successful writeback spams.

Today, I had seven attempted spam posts, all for different blog entries, and five spams were posted successfully. But oddly, all five successful posts had exactly the same winning answer to the Rock Paper Scissors game. All five had chosen the answer "scissors", and got it right on the first try. The odds of the same answer coming up 5 of 7 times seems weird, as the RPS game is random. Or at least, that's how the code is supposed to work.

I'm beginning to wonder if my Perl [WikiPedia] coding skills suck worse than I think…

Update 12/8: 29 more spam post attempts, 6 successful, all 6 answered "scissors". Definitely need to take a look at the code this weekend.

Update 2/20: I looked at my code, and couldn't find any glaring errors. After a couple of months with no successful spam posts, I'm getting a small flurry again, about 6-10 attempts per day, with 2-4 successes. And this time, all successful posts are answering "rock." Wild.

category: /blosxom |
2 writebacks and comments | Share/Save/Bookmark

Nov 07, 2005

Rock Paper Scissors Captcha

Sure enough, as soon as I began pinging weblogs.com and Technorati.com, I started receiving comment spam on this blog. I figured it was time for me to implement captcha [WikiPedia] authentication or maybe an email verification scheme, but I became curious: are the spammers humans or robots (automated computer programs)?

To find out, I decided to add a simple Turing-type test to the comment form [writebacklfbug-fixed, writebacks, writebacklfbug, writebackformatting] on my blog. I ask every poster to play and win a game of Rock Paper Scissors before they can post a comment. The comment page simply asks, "Let's play Rock Paper Scissors. I choose ROCK. What is your choice?" Since even a two-year old can answer that question correctly, the minor inconvenience of playing RPS shouldn't trip up anyone posting comments - even spammers. But I figured it would trip up your average spam-bot, at least until someone took 5 minutes to write some trivial code that would play and win the game. (Since MikeyP.com is an insignificant blog out in the boondocks of the internets, the odds of that seemed fairly slim).

As if on cue, the day after I added the RPS game, a spammer posted a comment. They had played the game, entered the correct answer, and posted a spam. The spammer was a human, not a robot. As I wondered how I could make the test game a little more challenging, things took an interesting twist. Over the next four days, I got three failed post attempts. All three were spammers who failed to win Rock Paper Scissors (!), and thus were not allowed to post a comment. And then… none. I haven't had any comment spam since.

So what happened? Did the spammers find the RPS game too much of a waste of time to play, and they moved on to other blog targets? Perhaps they can't read English? Or maybe my crummy Perl [WikiPedia] programming skills simply introduced a bug in the comment form.

I'm sure I'll get some comment spam again soon enough, and I'll likely just shut down the comment system rather than hassle with it. But for the time being, I'm pretty smitten with my "win a game, get to post" approach. Maybe in a few years I'll require posters to win a level of Arkanoid [WikiPedia] before they post comments. ;-)

category: /blosxom |
1 writebacks and comments | Share/Save/Bookmark

Sep 19, 2005

Update Pinging Enabled

I finally got around to adding a blosxom plugin to my blog config that pings blog-tracking sites whenever I update an entry on http://www.mikeyp.com.

I'm using a slightly modified version of the ping_weblogs_com_xmlrpc plugin written by Tatsuhiko Miyagawa. I have it set to ping http://www.weblogs.com, http://www.technorati.com, and http://www.blo.gs.

The question is, why the heck did I bother with this? So far, the only thing I've noticed is that recent posts from my site have appeared on Google's Blog Search. I wonder when the comment spam will start rolling in… :-\

category: /blosxom |
comments | Share/Save/Bookmark

Aug 08, 2005

MikeyP.com Search Enabled

To enable searching of past posts, I finally got around to adding the Find plugin to this blog. You can see it in the lower right column.

"Find" is yet another simple and elegant plugin for Blosxom. I love this software.

category: /blosxom |
comments | Share/Save/Bookmark

Jul 16, 2005

Four Years of (kinda) Blogging

If you have an Amazon Associates account, you know that you can serve images from amazon.com on your own web site. But did you know that you can also alter many of those images? Aaugh.com (a Peanuts fan site) lists the many ways you can manipulate amazon.com images, such as rotating, adding drop shadows, using alternate images, and adding text overlays.

category: /blosxom |
comments | Share/Save/Bookmark

May 18, 2005

About That Q Tag...

The Tiki formatting that this blog/wiki uses dutifully transforms quotes (") in to <q> and </q> HTML [Answers] tags. This allows me to add nice CSS [Answers] formatting to quoted text. If you use Firefox, Opera, Dillo, etc., you would see quote marks where the <q> tag appears.

If, like me, you use Internet Explorer 6.0, you wouldn't see a damned thing.

As this poor sap found out, IE doesn't support the <q> tag. Even though it's been around for years.

Ah well, I just edited the Tiki source to use the good old &quot markup instead, and that works just dandy for everyone. Maybe the IE7 team will fix this…

category: /blosxom |
comments | Share/Save/Bookmark

Apr 24, 2005

Fixed Writeback Tiki Formatting

I believe I fixed the tiki formatting in writeback [writebacklfbug-fixed, writebacks, writebacklfbug, writebackformatting]. Turns out, I still had some legacy code that escaped special characters and newlines to prevent 'tomfoolery' in my pre-tiki support. Tiki already escapes that stuff, so I was getting doubly-encoded writebacks.

BTW, since I put up this blog/wiki, I'm amazed at how many times I've reached for my Linux in a Nutshell [0596004826] book. (And ironically, my blog runs on FreeBSD [Answers] :-) ).


category: /blosxom |
comments | Share/Save/Bookmark

Apr 23, 2005

Writeback Formatting Bug

Sorry folks, I seem to have a bug in my writeback [writebacklfbug-fixed, writebacks, writebacklfbug, writebackformatting] hack for tiki support. Linefeeds aren't being stored properly, which causes a variety of Tiki formatting errors.

Workin' on it… :-\

category: /blosxom |
comments | Share/Save/Bookmark

Mar 31, 2005

Answers.com InterWiki Tag

I just added Answers.com [Answers] to the list of supported interwiki. Very cool site, and a much faster way to get content from WikiPedia [WikiPedia].

category: /blosxom |
comments | Share/Save/Bookmark

Mar 20, 2005

smilefie Plugin Mod for Writeback

I made some slight modifications to Jason Silver's smilefie plugin to support emoticons in writebacks. ozean asked me to post my mods, so here they are.

smilefie

You can get the modified smilefie by clicking here. (I left credit to Jason, as my mods aren't really that significant.)

writeback

I've hacked on Rael's writeback plugin too much to provide a download at this point. I promise that I'll clean it up and provide it some day. In the mean time, to use the new smilefie plugin with writeback, open writeback in your favorite text editor, look for the function sub story, and add this line directly after the line that reads my $writeback = &$blosxom::template...

if ($blosxom::plugins{smilefie} ) {$param{comment} = &smilefie::smilefie_this($param{comment})};

The whole code block should look like this:


      if ( $line =~ /^-----$/ ) {

        my $writeback = &$blosxom::template($path,'writeback',$blosxom::flavour)
           || '<p>... BUNCHA HTML IN HERE...</p>';

        if ($blosxom::plugins{smilefie} ) {$param{comment} = &smilefie::smilefie_this($param{comment})};
        $writeback =~ s/\$writeback::(\w+)/$param{$1}/ge;

        $writebacks .= $writeback;

        $count++;
      }

That's all there is to it. Note that I force smilefie to run 'late' and writeback to run 'early' by renaming the plugin files to 99smilefie and 00writeback.

Good luck!

category: /blosxom |
comments | Share/Save/Bookmark

Feb 09, 2005

Tiki Formatting Supported in Writebacks

You can now use tikiformatting in writebacks, including Wiki-style links to other blog entries on this site, interwiki links, and of course, emoticons.

My Perl mostly sucks, so please let me know if (when) you find a glitch.

category: /blosxom |
comments | Share/Save/Bookmark

Feb 05, 2005

Now that I have a decent amount of content on this site, I realized that my blosxom config wouldn't allow me to view more than my maximum number of entries per page (set in $num_entries). I have $num_entries set at 7 to provide fast page loading and minimum bandwidth usage for mobile and low-bandwidth users. (I wish all bloggers would consider the mobile/lo-fi world.)

Fortunately, Steve at AgilityNerd has a nice mod of the moreentries plugin that enables previous and next links, and it worked more or less drop-in-and-go. Thanks Steve (and the original moreentries author, Jason Clark)

category: /blosxom |
comments | Share/Save/Bookmark

Feb 04, 2005

Shameless Plugs Enabled

I hacked up Rael's (formerly) elegant wikiwordish plugin for blosxom to add support for custom amazon.com 'Buy Now' boxes. Here's an example:

Don't you just feeeeel like spending some money now? I know I do!

category: /blosxom |
comments | Share/Save/Bookmark

Jan 07, 2005

Writebacks and Trackbacks are Available

I've enabled Writebacks (comments) and Trackbacks [WikiPedia] so you can finally tell me what a boring blog this is.

I modified the original blosxom writeback plugin to require valid email addresses and to log IP addresses, but don't worry, neither is displayed publicly.

Formatting isn't supported in the Writebacks, but I plan to enable full tikiformatting, interwiki, and emoticon support, which would make this blog a work lot like a wiki [Wiki].

Also coming eventually: Captcha [WikiPedia].

category: /blosxom |
comments | Share/Save/Bookmark

Emoticons Now Supported

I just added Jason Silver's smilefie plugin to allow support for graphical emoticons. Here's what I've got (with images lifted from Trillian Pro):

:-) :-( ;-) :-D :-O B-) :-S :-| :-\ :-z :-P

He had a minor bug or two that I fixed, and I added proper support for XHTML. I also made the alt tags more lynx friendly, and ended up having to rename the plugin to 99smilefie to force it run after tiki and wikiwordish.

I need to learn a little more regex kung fu to make this really work correctly with tiki (such as preventing emoticons in code blocks).

category: /blosxom |
7 writebacks and comments | Share/Save/Bookmark

Nov 18, 2004

MikeyP.com on Bloglines

For those of you who use Bloglines, you can add MikeyP.com to your blogroll by clicking here:

But you already knew that, didn't you?

category: /blosxom |
comments | Share/Save/Bookmark

Nov 14, 2004

Add to My Yahoo

Do you Yahoo? Yahoo supports RSS feeds in My Yahoo. You can add the RSS feed for mikeyp.com to My Yahoo by clicking this button:

category: /blosxom |
comments | Share/Save/Bookmark

Nov 11, 2004

InterWiki Support

Thanks to the MoinMoin [MoinMoin] crew, here are the InterWiki's supported on this site:


_MikeyP additions:_
ASIN http://www.amazon.com/exec/obidos/redirect?tag=mikeypcom-20&path=ASIN%2F
Answers http://www.answers.com/


_MoinMoin additions:_
MoinMaster http://purl.net/wiki/moinmaster/
FOLDOC http://foldoc.doc.ic.ac.uk/foldoc/foldoc.cgi?query=
ISBN http://www.amazon.com/exec/obidos/ISBN=
RFC http://www.ietf.org/rfc/rfc
FreshMeat http://freshmeat.net/
BrainBench http://www.brainbench.com/transcript.jsp?pid=
Thinki http://www.thinkware.se/cgi-bin/thinki.cgi/
PythonFaq http://www.python.org/cgi-bin/faqw.py?req=show&file=faq$PAGE.htp
DseWiki http://www.wikiservice.at/dse/wiki.cgi?
DocBook http://docbook.org/wiki/moin.cgi/
AwarenessWiki http://taoriver.net/aware/
PythonWiki http://www.pythonwiki.de/
TamTam http://boo.mi2.hr:10000/TamTamDev/
JuraWiki http://jurawiki.de/
SpackOrg http://www.spack.org/index.cgi/
ESW http://esw.w3.org/topic/
OSPedia http://ospedia.osdir.com/


_Updated 2002-05-10 from http://www.usemod.com/cgi-bin/mb.pl?InterMapTxt:_
ALife http://news.alife.org/wiki/index.php?
AbbeNormal http://www.ourpla.net/cgi-bin/pikie.cgi?
AcadWiki http://xarch.tu-graz.ac.at/autocad/wiki/
Acronym http://www.acronymfinder.com/af-query.asp?String=exact&Acronym=
Advogato http://www.advogato.org/
AndStuff http://andstuff.org/wiki.php?
Annotation http://bayle.stanford.edu/crit/nph-med.cgi/
AnnotationWiki http://www.seedwiki.com/page.cfm?wikiid=368&doc=
BenefitsWiki http://www.benefitslink.com/cgi-bin/wiki.cgi?
BridgesWiki http://c2.com/w2/bridges/
C2find http://c2.com/cgi/wiki?FindPage&value=
CLiki http://www.telent.net/cliki/
Cache http://www.google.com/search?q=cache:
CmWiki http://www.ourpla.net/cgi-bin/wiki.pl?
CreationMatters http://www.ourpla.net/cgi-bin/wiki.pl?
DejaNews http://www.deja.com/=dnc/getdoc.xp?AN=
Dictionary http://www.dict.org/bin/Dict?Database=*&Form=Dict1&Strategy=*&Query=
DolphinWiki http://www.object-arts.com/wiki/html/Dolphin/$PAGE.htm 
EfnetCeeWiki http://purl.net/wiki/c/
EfnetCppWiki http://purl.net/wiki/cpp/
EfnetPythonWiki http://purl.net/wiki/python/
EfnetXmlWiki http://purl.net/wiki/xml/
EljWiki http://elj.sourceforge.net/phpwiki/index.php/
EmacsWiki http://www.emacswiki.org/cgi-bin/wiki.pl?
Foldoc http://www.foldoc.org/foldoc/foldoc.cgi?
FoxWiki http://fox.wikis.com/wc.dll?Wiki~
FreeBSDman http://www.FreeBSD.org/cgi/man.cgi?apropos=1&query=
Google http://www.google.com/search?q=
GoogleGroups http://groups.google.com/groups?q=
HammondWiki http://www.dairiki.org/HammondWiki/index.php3?
Haribeau http://wiki.haribeau.de/cgi-bin/wiki.pl?
IAWiki http://www.IAwiki.net/
IAwiki http://www.IAwiki.net/
IMDB http://us.imdb.com/Title?
JargonFile http://sunir.org/apps/meta.pl?wiki=JargonFile&redirect=
JiniWiki http://www.cdegroot.com/cgi-bin/jini?
JspWiki http://www.ecyrd.com/JSPWiki/Wiki.jsp?page=
KmWiki http://www.voght.com/cgi-bin/pywiki?
KnowHow http://www2.iro.umontreal.ca/~paquetse/cgi-bin/wiki.cgi?
LegoWiki http://www.object-arts.com/wiki/html/Lego-Robotics/
LinuxWiki http://linuxwiki.org/
MathSongsWiki http://SeedWiki.com/page.cfm?wikiid=237&doc=
MbTest http://www.usemod.com/cgi-bin/mbtest.pl?
MeatBall http://www.usemod.com/cgi-bin/mb.pl?
MetaWiki http://sunir.org/apps/meta.pl?
MoinMoin http://purl.net/wiki/moin/
MuWeb http://www.dunstable.com/scripts/MuWebWeb?
OpenWiki http://openwiki.com/?
OrgPatterns http://www.bell-labs.com/cgi-user/OrgPatterns/OrgPatterns?
PPR http://c2.com/cgi/wiki?
PangalacticOrg http://www.pangalactic.org/Wiki/
PersonalTelco http://www.personaltelco.net/index.cgi/
PhpWiki http://phpwiki.sourceforge.net/phpwiki/index.php?
Pikie http://pikie.darktech.org/cgi/pikie?
PurlNet http://purl.oclc.org/NET/
PyWiki http://www.voght.com/cgi-bin/pywiki?
PythonInfo http://www.python.org/cgi-bin/moinmoin/
SVGWiki http://www.protocol7.com/svg-wiki/default.asp?
SeaPig http://www.seapig.org/ 
SeattleWireless http://seattlewireless.net/?
SenseisLibrary http://senseis.xmp.net/?
SourceForge http://sourceforge.net/
Squeak http://minnow.cc.gatech.edu/squeak/
StrikiWiki http://ch.twi.tudelft.nl/~mostert/striki/teststriki.pl?
TMwiki http://www.EasyTopicMaps.com/?page=
TWiki http://twiki.org/cgi-bin/view/
Tavi http://tavi.sourceforge.net/index.php?
TwistedWiki http://purl.net/wiki/twisted/
UseMod http://www.usemod.com/cgi-bin/wiki.pl?
VisualWorks http://wiki.cs.uiuc.edu/VisualWorks/
WebDevWikiNL http://www.promo-it.nl/WebDevWiki/index.php?page=
Why http://clublet.com/c/c/why?
Wiki http://c2.com/cgi/wiki?
WikiPedia http://www.wikipedia.com/wiki/
ZWiki http://www.zwiki.org/
category: /blosxom |
comments | Share/Save/Bookmark

Dec 31, 1969

Tiki Formatting

This Blosxom config uses the TikiText formatting plugin. Tiki is a wiki-like formatting markup. It is still in development, but is sufficiently useful as-is.

Block-Level Formatting

Block-Level formatting is set by one or more characters at the start of line followed by a space. Multiple consecutive lines with the same starting format are treated as part of the same block. A block is terminated by at least one blank line. HTML breaks (<br />) are now supported inside of paragraphs and blockquotes.


Paragraph:             (Line without block formatting)
Blockquote:            > 
Preformatted Text:     (space) or (tab)
Code (Block):          % (A special type of PRE section where TikiText is ignored.)
Table:                 | (See the section on Tables for more.)
Headings:              !# (i.e !1, !2, ! alone implies level 1)
Horizontal Line:       ---- (A line with 4+ dashes.)

List Formatting

Like block-level formatting a list is defined by one or more characters at the start of a line. List types cannot be intermixed and definition lists cannot be nested.


Unordered List Item:       *
Ordered List Item:         #
Definition List Item:      ; Definition
                           : Text 

Multiple lines beginning with a : (colon) allows for multiple text definitions to be associated to a definition. For example:


; foo
: A sample name for absolutely anything, like files
: Term of disgust.

For clarity the practice of place the semi-colon and colon on the same line is no longer supported.

Inline Formatting

Inline formatting differs from block-level formatting and lists in that they do not have to start a line. They also tend to mark a smaller piece of data. Inline elements are used within a block of list structure such as a paragraph or blockquote. Inline formatting cannot cross lines.


Strong/Bold:           *hello world*
Emphasis/Italics:      /hello world/
Inserted:              +hello world+
Delete/Strikethrough:  -hello world-
Subscript:             ~hello world~
Superscript:           ^hello world^
Quote:                 "hello world"
Code (short):          %hello world%
Cite:                  @hello world@

Hyperlinking

Like inline formatting the notion for creating a hyperlink cannot cross lines. URLs (the text following the colon) can be an external, absolute, relative reference. (TikiText takes in everything after the colon until the first space and use that string for the href.)


Hyperlink:	[Text to link]:URL 

Images

Simple image insertion is supported in TikiText. In this version only partial functionality has been added. Like the notion for creating a hyperlink, image markers cannot cross lines. URLs (the text following the colon) can be an external, absolute, relative reference. (TikiText takes in everything after the colon until the first space and use that string for the href.)


Image:	{Some sample alternate text}:IMG-URL 

Acronyms

Authors can create acronym tagging in TikiText and are encouraged to do so. TikiText will scan for words in all capitals followed immediately (no space) by parenthesis with the full description contained.


Acronym: ACRONYM(The description of ACRONYM)

Tables

TikiText supports basic tables. All table blocks begin with the | (pipe) character. Each line is a row. Columns are also seperated by the pipe character. All rows should end with a pipe character. Table headers, cell aligns and columns spans are supported. Nested tables are not support nor are row spans.


|                     Column seperator.
|!                    All cells in this row are headings.
|<                    Left justify this cell.
|^                    Center this cell.
|>                    Right justify this cell.
|(span)||             A column span. (The last cell is spanned over blank 
                       cells that follow.)

Leading and trailing whitespaces in each cell are ignored. This way authors have the option to make tables more readable without being parsed. This assumes the author is using a fixed-width font. For example this TikiText…


|!heading 1|heading 2|heading 3|
|< left    |^ center |> right  |
|^ centered across 3 columns |||

…would produce the following table:


	<table>
	<tr>
	<th>heading 1</th>
	<th>heading 2</th>
	<th>heading 3</th>
	</tr>
	<tr>
	<td align="left">left</td>
	<td align="center">center</td>
	<td align="right">right</td>
	</tr>
	<tr>
	<td align="center" colspan="3">centered across 3 columns</td>
	</tr>
	</table> 

Automated Functions

TikiText also provides several automated features for convenience that are derived from the semantic structure of the input and standard best practices.

Typographic Conversions

TikiText will convert symbols usually commonly represented using multiple character to their typographic equivalants similar to John Gruber's SmartPants plugin for MovableType. The following is a list of multi-character representations and their numeric entity equivelents TikiText will convert.


--                                 (em dash)
- (spaces on either side)          (en dash)
...                                (horizontal ellipsis)
(R)                                (registered tademark)
(TM)                               (trademark symbol)
(C)                                (copyright symbol)
1/4                                (fraction one-fourth)
1/2                                (fraction one-half)
3/4                                (fraction three-fourths)
(digets) x (digets)                (multiply sign)

Wiki Word Links

In addition to TikiText, Wiki-style links are supported. To link to another post, refer to the post by name, surrounded by [[ ]] (brackets), like this:
[[tikiformatting]] == tikiformatting

In addition, InterWiki links are supported the same way, like this:
[[Google:toilet Relief]] == Relief [Google]
and this:
[[ISBN:B0000683DH Khan!]] == Khan! [ISBN]

The list of all supported InterWiki links is on the InterWiki links page.

Emoticons

The following emoticon images are available. Hover over each image with the cursor to see the text pattern:

:-) :-( ;-) :-D :-O B-) :-S :-| :-\ :-z :-P

Not Supported

This is a list of formatting that IS NOT supported by TikiText. Some of this unsupported feature is out of scope. Others are unimplemented features. Please see the the TO DO in the module's embedded documentation for more information.

category: /blosxom |
comments | Share/Save/Bookmark
MikeyP.com

About This Site
Main Page
About MikeyP
Subscribe to Feed