Milestones

Monday, January 31st, 2005

Some things which have occurred in the last few hours:

  • for the first time intepid.com received more than 100 visitors within a 24 hour period
  • for the first time intepid.com received more than 500 visitors within a 7 day period
  • demo downloads topped 1000

That the overwhelming majority of visits came via a single site [ www.ovelho.comThanks! ] means that it will probably be a transitory thing, but I’ll still enjoy it while it lasts.

The rather spiky distribution of the 500+ visits to intepid.com over the past week.

Number Crunching

When I say "visitors" I am referring to visits to at least one page on intepid.com which result in the loading of a background image; this is a metric that from my experience gives the most conservative [and realistic] estimates you can get. Eg the popular analysis tool AWStats informs me that I have received 1651 visitors in the last week, but this figure is seriously unrealistic, since AWStats is not nearly aggressive enough in weeding out robot visits and page-reloads.

How can I be so sure?

One of the benefits to having such an image-heavy site is that I can easily deduce the maximum number of people who may have read a given post, simply by checking how many times an associated image has been downloaded. For example, my logs tell me that the entry Still Life² from a few days ago has [to date] been viewed by no more than 162 people… hmm, that’s actually a lot lower than I thought it would be, given that it’s been a big week and that figure includes RSS feed readers as well…

I’d love to say that stats aren’t important to me, but that would be like saying "I don’t care whether people listen to me", which would of course be a total lie.

I need to get out more.

Bits and Bobs

Sunday, January 30th, 2005

I have been doing a teeny bit of work on a new version , but it’s coming along a little slowly because I am in the process of porting it to C++, which really means I’m rewriting it, since the original sort of evolved in a very organic way and is written in very messy JujuScript.

I’m not working on it right this second because a) It is very late, and b) I have nasty stomach cramps [probably because I’ve consumed only toast, chocolate and coffee today — although it could also be related to the enormous amount of leftover pasta I ate last night]

I’d go to bed, but aforementioned cramps are bugging me too much, so instead I will blog — something I had only just privately resolved to do a little less of [in favour of more productive activities]. And not only will I blog, but I will blog about unrelated subjects within the same post…

Got ClearType?

I use an LCD monitor, and therefore it makes sense for me to enable ClearType*. But for the past fortnight I have been using a CRT [while houseminding] and was surprised to find that even when using a CRT, I have come to prefer the appearance of ClearType over that of the "Standard" font renderer [on WindowsXP].


Standard


ClearType

If you are using WinXP, and your fonts currently look like the first example but you would prefer the second, you can change your preference by opening ControlPanel->Display->Appearance->Effects and choosing ClearType for font smoothing.

* Link to previous post: LCD, ClearType™, Tahoma and MS Sans Serif

Robots

A minor issue with blogs is that you can often get multiple search results for the same terms, because those terms are repeated on the front page, permalink pages, monthly archives etc. At time of writing a Google search for returns 4 results on intepid, and although Google is obviously very smart and seems capable of guessing that the permalink version is the "best" one, I’d really prefer it if that was the only result that was returned [ Yahoo seems less smart, returning links to the fron page for such searches ]

To this end I am going to ask search engines not to index any pages on intepid.com except for permalinks, by adding the following to the headers of all non-permalink pages:

name="ROBOTS" content="NOINDEX,FOLLOW">

In theory this should mean that the page will not be indexed but the links will still be followed, so Google [and others] should still be able to find their way to the permalink pages. Should be interesting to see how quickly this works [if it works].

Still Life²

Wednesday, January 26th, 2005

[ also exported as an SVG file — which would be a fantastic format if it were natively supported in browsers ]

Scribbling with JujuSketch again… hopefully I’ll post a version here sometime for Wacom enabled people to try out, but then I’ve promised that before, so don’t count on it anytime soon [sorry!]

~

downloads are starting to wane, having dropped back to around 4 or 5 per hour, and I’m trying not to feel too sad about it. I’ve traced back a bunch of the referrers, and some of the reactions are extremely encouraging [ eg here, here and here ]. The mini-comments that people choose to attach to their del.icio.us links are fairly indicative of the overall response, and give me the feeling that people really "get it".

~

Did some PHP scripting to allow Bloglines and Del.icio.us links to appear on the sidebar without hitting their sites every single page load [which slows down my page loads and wastes their bandwidth] Now the links and blogroll will be cached for at least an hour on my server. Another benefit of doing it this way is that if/when their services go down you’ll still get the "last known good" data, and not some hideous PHP error message.

If anyone wants to know how to do this for their own site, let me know in the comments section.

~

Nicole Kidman didn’t get Australian of the Year, thank god! I mean she’s lovely and everything but that would have been almost as fawning toadying handjob-giving lame as GWB winning Time’s Man of the Year [again].

~

Am houseminding at the mo’, and have been using a DVD recorder for the first time ever… it’s very cool! Also used a dishwasher for the first time… it’s marginally cool!

Cool… I mean, w00t!

Tuesday, January 25th, 2005

Just checked my [much neglected] server stats and look at what I found!

That big blue spikey thing represents visitors to my Drivey page, which as you can see has sort of risen a tad in the last day or two. Further investigation of the log files shows:

  1. Most of the new visitors are thanks to Del.icio.us links, a service which seems to be growing in popularity but I haven’t actually tried myself. [ UPDATE: further investigation shows that most of the traffic is coming in from just 2 sites: Waxy.org and O Velho ]
  2. More than half of those visitors are actually downloading the demo [488 so far — big numbers for me!]
  3. The rush has not necessarily peaked yet… downloads are still going strong right up to the end of the log, with a new one occurring every 5 minutes or so.

I’m keeping an eye on overall traffic, but at this point I’m not worried about exceeding my allotted bandwidth — unless it keeps up like this for the next week or so. If it’s still this strong tomorrow I might reduce the page-bandwidth a little, since there are quite a few images there, and it all adds up.

You know, sometimes it’s nice to be popular for a while :)

Hexels and Hexmaps

Monday, January 24th, 2005

Some time ago, in my first ever blog entry, I mentioned that I was interested in the concept of hexagonal pixels:

Exploring utterly frivolous hexagonal pixel rendering technique… virtually no practical value in it but it’s just sticking in my head and I’m finding myself wishing that hardware could support hexagonal pixels and triangular shading rather than the more convential square bilinear approach.

Now, after more than two-and-a-half years, I finally got around to trying out the technique on some real images!

[ NOTE: in an attempt to avoid ambiguity I will herein use the term texel to refer to a color sample from a regular source image, or texmap, and the term hexel to refer to a color sample from a hexmap, an image specially prepared so that its samples are arranged in a honeycomb pattern. ]

Regular texels

The following two images represent the two most common methods for displaying, zooming and resizing a standard bitmap. To people accustomed to using image editing software or playing 3D games, the visual characteristics should be very familiar.

The first is your classic unfiltered or nearest-neighbour approach, where each texel shows up as a square. It’s cheap, common and ugly, and generally what texture mapping looked like in the good ol’ days of software based 3D engines.

The second uses standard bilinear filtering, a technology now available even on the cheapest graphics hardware, but still relatively expensive to implement in software [which is why bitmaps in flash animations often look more like the first image than the second].

Hexagonal texels, or hexels

Now compare with the following images, which were created quite differently, using a specially prepared hexmap [instead of a regular texmap]:

Instead of appearing as squares on a grid, the unfiltered version now consists of tiny hexagons layed out in a honeycomb arrangement.

The difference between filtered texels and filtered hexels is a little more subtle; instead of a soft stripey appearance we get a kind of dotty look, as though the image is being viewed through a bumpy screen. Although there is an extra sharpness there, there seems to be some additional noise as well.

Hexmaps

The difference between a texmap and a hexmap is that a texmap’s values are taken from points on a regular square grid, whereas a hexmap’s values are taken from points on a triangular grid — Note here the relationship between the underlying grid and the honeycomb arrangement of the hexels themselves.

When displaying an unfiltered hexmap, the nearest-neighbour approach is used, whereby the color of a destination pixel is determined by the nearest hexel only. To display a filtered [or smoothed] hexmap, the three surrounding [nearest] hexel values are interpolated [equivalent to Gouraud shading].

Conclusion?

I wanted to try this is because in the real world small objects tend to pack most efficiently in a honeycomb formation [rather than a grid], and I wanted to know if a similar sort of effect could be observed when using such a layout for image storage. The result was pretty close to what I expected, in that the technique seems to lend itself best to organic shapes, whereas sharp, straight edges tend to acquire a slightly dotty appearance.

[ Perhaps D&D players will have an instinctive understanding as to why this is the case ;) ]

Note that the two very different maps were created to be [as close as possible to] the same overall size. The dimensions of the regular bitmap are 128×128, whereas the dimensions of the hexmap are 120×136.

Whether or not I will use these methods for anything beyond experimentation I don’t know yet, but I’m quite pleased with the results so far. It’s possible that current generation 3D hardware could be used to render hexmaps at super speeds, but [ until I get around to investigating programmable shaders ] I can’t say for sure. If it can be done without a performance hit, it might be worth doing for the novelty factor.

And it’s just nice to try something different now and again…

Demo

You can download a 430K demo [Win32 only] of filtered and unfiltered hexmap rendering, and allows you to toggle between regular texture-mapping and hexmapping.

__________

NOTE: I am not claiming to have invented the concept of hexels, nor to be the first to implement it — I do this kind of stuff because it is fun and/or challenging, and I don’t mind at all if that means I spend a lot of my time reinventing the wheel… I’m used to it ;)

Now with 10% more ego!

Saturday, January 22nd, 2005

My current gravatarHave decided to add gravatar support in the comment section… currently it would seem that no one else who comments here has one yet [I only just got one myself].

It’s a pretty cute idea, and much less threatening than the full-on identity management concepts like Passport and Typekey. Basically you just associate an image with your email address and that’s it! Any blog [or web page] can request that image from a centralized server, and wha-a-a-lah! Portable thumbnail! See the comments section for example of how it appears…

I first encountered gravatars on Binary Bonsai, and as you can see from this page, it’s quite a nice way to identify commenters.

Bitmap Filtering

Friday, January 21st, 2005

More code clean-up stuff, now looking at bitmap filtering. Once again, this tech is not exactly new, but I have yet to put it to good use…

I’ve created a little demo app for download [Win32] which quite effectively demonstrates the different ways a bitmap can be filtered, including a novel method which allows you to keep the pixels but lose the horrible ripple effect you often see in Flash animations [run demo to see what I’m talking about].

Here’s a previous article describing the concept in more detail.

Gradients

Thursday, January 20th, 2005

[ new test shots from , a project which is not yet dead ]

Linear + Radial gradient fills.

Not as fast as flat shading but not too slow either — and I haven’t yet knuckled down and coded them in MMX [or any of the several other MultiMedia extension type instruction sets]. Really I am just tidying up a bit of code and combining stuff I’ve been tinkering with for years [path renderer + simple software shaders]. I’d love to come up with a way to combine path rendering with current generation hardware pixel shaders… maybe I should check out the DX9 shader language sometime and see what’s possible.

BTW I’ve decided that [until I change my mind] I will refer to the silhouetted graphical style I am experimenting with as CameoVision.

One more time

Thursday, January 20th, 2005

The pedant in me loves Language Log, especially when they riff on Dan Brown — I just can’t get enough!

But clogged recycling centers are now refusing to accept copies of Brown’s book, and libraries are closing their after-hours book drops to avoid having people getting rid of them that way by night.

__________

See also my original Dan Brown rant from six months ago…

People Get Ugly

Monday, January 17th, 2005

Sometimes I think I should probably write a bit more about my feelings on political issues here, but then I see what can happen to people who do, and I think maybe it’s best to just steer clear of all of it. Tim Lambert is galled by the treatment he receives [in the comments section] on , and I don’t blame him. What’s icky here is not that he is being insulted so much as the fact that the site admininstrator joins in with the insults/ridicule [and she is indeed known for banning dissenters].

An Unexpected Visitation

Sunday, January 16th, 2005

I do… or do I?

Friday, January 14th, 2005

I saw a teaser yesterday for LOST, the upcoming "television event", featuring Dominic Monaghan and friends. There was a part of the voice-over that didn’t seem to work for me, and it went something like:

"They’ve survived the worst… or have they? "

It bugged me for ages although I couldn’t quite work out why. Then finally I realized that the wording made it sound like the last question was asking "or have they not survived?" rather than "or is there worse to come?", and of course I assumed that the latter was intended — And only just this instant am I going "duh" at myself, realizing that it may actually have been worded that way for a reason, because this series is supposed to be all creepy and mysterious isn’t it, and maybe the characters didn’t survive the mysterious crash, and maybe the bloody cheesy voice-over on the promo has just gone and given it all away…?

Anyway, even if this particular example is semantically correct, I do hate this grammatical construction… or do I?

See how crap it sounds when the tag isn’t negative? Compare the following:

I have green eyes, have I not?

I have green eyes, haven’t I?

I have green eyes, or have I?

Only the first two sound right to me, although I accept that all three have slightly different meanings. The third is making a statement followed by a rhetorical question which immediately undermines it, and that seems wrong to me. Losing the question but preserving the tease, I would rephrase it: "I have green eyes, or so you might think."

Probably I dislike the "… or have I?" form because of its coy rhetorical nature. I would only use it myself if the tag question was real, as it might be should it strike me to suddenly doubt the very thing I am asserting. As in, "Yes, I turned the gas off… or did I?"