ws page 27 - Dave's Blog

Search
My timeline on Mastodon

fontplore // an interactive application designed for searching and exploring font databases

2009 Jul 31, 6:09An interactive touchable table to help you browse and select fonts.PermalinkCommentsart visualization design font typography surface table touchscreen video

Anyone can write this crap (Phil Gyford’s website)

2009 Jul 31, 5:57"Is it worth the sensationalism and scaremongering? The endlessly inaccurate and dangerous science reporting? The pointless and news-free lifestyle articles? Do newspapers that prioritise stories based on celebrities and spectacle rather than importance to the world deserve to exist?"PermalinkCommentsvia:sambrook internet news journalism media

Kill or cure?

2009 Jul 29, 11:00"Help to make sense of the Daily Mail’s ongoing effort to classify every inanimate object into those that cause cancer and those that prevent it."PermalinkCommentshumor journalism health via:bengoldacre news science

Common Sense Journalism: Local news value = 0? Not exactly, but ...

2009 Jul 28, 5:07Suggests that local news must provide the raw facts and only in particular cases do a 'story' on top of that -- not everything needs to be a story.PermalinkCommentsnews via:sambrook journalism

Self-Portrait Machine - we make money not art

2009 Jul 27, 4:29"Jen Hui Liao's Self-Portrait Machine is a device that takes a picture of the sitter and draws it but with the model's help. The wrists of the individual are tied to the machine and it is his or her hands that are guided to draw the lines that will eventually form the portrait." With video!PermalinkCommentsvideo drawing art technology machine robot automation self-portrait

IE8 Search Providers, Accelerators, and Local Applications Hack

2009 Jul 25, 3:23

There's no easy way to use local applications on a PC as the result of an accelerator or a search provider in IE8 but there is a hack-y/obvious way, that I'll describe here. Both accelerators and search providers in IE8 fill in URL templates and navigate to the resulting URL when an accelerator or search provider is executed by the user. These URLs are limited in scheme to http and https but those pages may do anything any other webpage may do. If your local application has an ActiveX control you could use that, or (as I will provide examples for) if the local application has registered for an application protocol you can redirect to that URL. In any case, unfortunately this means that you must put a webpage on the Internet in order to get an accelerator or search provider to use a local application.

For examples of the app protocol case, I've created a callto accelerator that uses whatever application is registered for the callto scheme on your system, and a Windows Search search provider that opens Explorer's search with your search query. The callto accelerator navigates to my redirection page with 'callto:' followed by the selected text in the fragment and the redirection page redirects to that callto URL. In the Windows Search search provider case the same thing happens except the fragment contains 'search-ms:query=' followed by the selected text, which starts Windows Search on your system with the selected text as the query. I've looked into app protocols previously.

PermalinkCommentstechnical callto hack accelerator search ie8

Engineering Windows 7 : Federating Windows Search with Enterprise Data Sources

2009 Jul 17, 4:36"For Windows 7, we’ve added support for Federated Search using OpenSearch v1.1 and worked to make the experience a seamless one." Explorer in Win7 supports OpenSearch descriptions (that use RSS)PermalinkCommentsopensearch search windows win7 technical

Apple Admits British Man Invented iPod in 1979, Uses Him to Win Patent Lawsuit - Apple - Gizmodo

2009 Jul 16, 3:28"I was up a ladder painting when I got the call from a lady with an American accent from Apple saying she was the head of legal affairs and that they wanted to acknowledge the work that I had done"
PermalinkCommentshumor history music apple legal patent ipod ip

Town Hall Meeting to Announce the Quadrennial Diplomacy and Development Review (QDDR)

2009 Jul 14, 4:28"Can you please let the staff use an alternative web browser called Firefox? I just – (applause) – I just moved to the State Department from the National Geospatial Intelligence Agency and was surprised that State doesn’t use this browser." Starts at 26:30 in the video.PermalinkCommentsfirefox government via:boingboing video browser web clinton technical

Real photographs | Everything is Miscellaneous

2009 Jul 12, 2:56"...I asked him if he was allowed to do that, and he said the rule was that he could do anything with Photoshop that he could have done in a darkroom. I thought of him when I saw..." On press sanctioned photoshopping including links at the end.PermalinkCommentsnews photo photoshop photography david-weinberger

Digg the Blog - Blog Archive - Much Ado About IE6

2009 Jul 10, 9:43"This goes directly to why most folks use IE6: they don't have a choice. Three out of four IE6 users on Digg said they can't upgrade due to some technical or workplace reason."PermalinkCommentsie digg ie6 statistics web development browser technical

Code Rush - Mozilla documentary (PCR | Click Movement)

2009 Jul 10, 7:37"Code Rush aired nationally on PBS in March 2000. It documents the Mozilla team as they struggle to publish the first open source release of the Netscape Browser."PermalinkCommentsvideo mozilla browser browser-war internet opensource documentary free download web technical

Are Violent Video Games Adequately Preparing Children For The Apocalypse? | The Onion - America's Finest News Source

2009 Jul 10, 7:31"72% of kids said they know how to find items to barter at weapon shops and how to use medicine packs to heal zombie bites"PermalinkCommentshumor video internet videogames onion parody apocalypse fallout3 zombie

Eat Pants - Interactive Fiction Sessions from my Server Logs

2009 Jun 29, 4:19

I've looked at my web server logs previously to see if anyone had used my Web Frotz Interpreter and until recently didn't realize that awstats (the web server log report generator) was truncating the query from my URL, so I couldn't tell that anyone was actually using it. But after grepping the logs manually I've pulled out the URLs of visitor's text adventure sessions. If you'll recall, my Web Frotz Interpreter stores the game state in the URL so its easy to see user's game states in the web server logs.

I've put some of the links up on the Web Frotz Interpreter page. Some of the interesting ones:

PermalinkCommentsserver-logs technical zork frotz pants interactive-fiction uri if

PowerShell Scanning Script

2009 Jun 27, 3:42

I've hooked up the printer/scanner to the Media Center PC since I leave that on all the time anyway so we can have a networked printer. I wanted to hook up the scanner in a somewhat similar fashion but I didn't want to install HP's software (other than the drivers of course). So I've written my own script for scanning in PowerShell that does the following:

  1. Scans using the Windows Image Acquisition APIs via COM
  2. Runs OCR on the image using Microsoft Office Document Imaging via COM (which may already be on your PC if you have Office installed)
  3. Converts the image to JPEG using .NET Image APIs
  4. Stores the OCR text into the EXIF comment field using .NET Image APIs (which means Windows Search can index the image by the text in the image)
  5. Moves the image to the public share

Here's the actual code from my scan.ps1 file:

param([Switch] $ShowProgress, [switch] $OpenCompletedResult)

$filePathTemplate = "C:\users\public\pictures\scanned\scan {0} {1}.{2}";
$time = get-date -uformat "%Y-%m-%d";

[void]([reflection.assembly]::loadfile( "C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Drawing.dll"))

$deviceManager = new-object -ComObject WIA.DeviceManager
$device = $deviceManager.DeviceInfos.Item(1).Connect();

foreach ($item in $device.Items) {
        $fileIdx = 0;
        while (test-path ($filePathTemplate -f $time,$fileIdx,"*")) {
                [void](++$fileIdx);
        }

        if ($ShowProgress) { "Scanning..." }

        $image = $item.Transfer();
        $fileName = ($filePathTemplate -f $time,$fileIdx,$image.FileExtension);
        $image.SaveFile($fileName);
        clear-variable image

        if ($ShowProgress) { "Running OCR..." }

        $modiDocument = new-object -comobject modi.document;
        $modiDocument.Create($fileName);
        $modiDocument.OCR();
        if ($modiDocument.Images.Count -gt 0) {
                $ocrText = $modiDocument.Images.Item(0).Layout.Text.ToString().Trim();
                $modiDocument.Close();
                clear-variable modiDocument

                if (!($ocrText.Equals(""))) {
                        $fileAsImage = New-Object -TypeName system.drawing.bitmap -ArgumentList $fileName
                        if (!($fileName.EndsWith(".jpg") -or $fileName.EndsWith(".jpeg"))) {
                                if ($ShowProgress) { "Converting to JPEG..." }

                                $newFileName = ($filePathTemplate -f $time,$fileIdx,"jpg");
                                $fileAsImage.Save($newFileName, [System.Drawing.Imaging.ImageFormat]::Jpeg);
                                $fileAsImage.Dispose();
                                del $fileName;

                                $fileAsImage = New-Object -TypeName system.drawing.bitmap -ArgumentList $newFileName 
                                $fileName = $newFileName
                        }

                        if ($ShowProgress) { "Saving OCR Text..." }

                        $property = $fileAsImage.PropertyItems[0];
                        $property.Id = 40092;
                        $property.Type = 1;
                        $property.Value = [system.text.encoding]::Unicode.GetBytes($ocrText);
                        $property.Len = $property.Value.Count;
                        $fileAsImage.SetPropertyItem($property);
                        $fileAsImage.Save(($fileName + ".new"));
                        $fileAsImage.Dispose();
                        del $fileName;
                        ren ($fileName + ".new") $fileName
                }
        }
        else {
                $modiDocument.Close();
                clear-variable modiDocument
        }

        if ($ShowProgress) { "Done." }

        if ($OpenCompletedResult) {
                . $fileName;
        }
        else {
                $result = dir $fileName;
                $result | add-member -membertype noteproperty -name OCRText -value $ocrText
                $result
        }
}

I ran into a few issues:

PermalinkCommentstechnical scanner ocr .net modi powershell office wia

Setting Up AWStats

2009 Jun 26, 5:44A person with nearlyfreespeech.net hosting their web content recalls how they setup awstatsPermalinkCommentsawstats statistics nearlyfreespeech.net linux howto tutorial technical

James O'Neill's blog : Borrowing from Windows Explorer in PowerShell part 2: extended properties

2009 Jun 26, 8:59"When I stated looking at what could be done using explorer objects from PowerShell I 'discovered' the extended properties."PermalinkCommentsshell windows powershell tutorial code programming explorer technical

Michael(tm) Smith - WebKit destined to get its own content sniffer

2009 Jun 22, 3:09"Web/browser-security maven and coder Adam Barth has been working on implementing a content sniffer in WebKit, based on a content-sniffing algorithm that was originally specified in the HTML5 draft, but that's now specified as a separate IETF draft that Adam is editing and that's titled, Content-Type Processing Model."PermalinkCommentsmime mime-sniffing webkit http technical

Chromium Blog: DNS Prefetching (or Pre-Resolving)

2009 Jun 22, 2:55"To speed up browsing, Google Chrome resolves domain names before the user navigates, typically while the user is viewing a web page." In addition to noting what and how they do it, and how web devs can control it, they give a few stats on how much it helps.PermalinkCommentsgoogle dns chrome dns-prefetching browser networking performance technical

HP All-in-Ones-The Scan Button on the All-in-One Does Not Function When the Printer is Connected to Windows Vista

2009 Jun 20, 9:45"When the scan button is pressed on the product, nothing happens. The scan button does not work correctly." The workarounds are all basically, "don't use that button then." They say their Vista driver doesn't support sending the appropriate event. Lame.PermalinkCommentsvista hp scanner driver lame technical
Older EntriesNewer Entries Creative Commons License Some rights reserved.