2008 Aug 6, 2:56
Online and offline YouTube link to video download and conversion tools.
2008 May 18, 6:45
While re-reading Cryptonomicon I thought
about what kind of information I'm leaking by posting links on Delicious. At work I don't post any Intranet websites for fear of revealing anything but I wondered if not posting would reveal
anything. For instance, if I'm particularly busy at work might I post less indicating something about the state of the things I work on? I got an archive of my Delicious posts via the Delicious API
and then ran it through a tool I made to create a couple of tables which I've graphed on Many Eyes
I've graphed my posts per week and with red lines I've marked IE7 and IE8 releases as stated by Wikipedia. As you can see, there doesn't seem to be much of a pattern so I suppose my concerns
we're unfounded. I use it for both work and non-work purposes and my use of Delicious isn't that consistent so I don't think it would be easy to find a pattern like I was thinking about. Perhaps if
many people from my project used Delicious and that data could be compared together it might be easier.
For fun I looked at my posts per day of week
which starts off strong on Mondays and decreases as the
week goes on, and my posts per hour of day
. It looks like I mostly post around lunch and on the extremes I've
only posted very late at night twice at 4am: converting media for the Zune
, and Penn's archive of articles
. In the morning at 7am I've posted only once: document
2008 Mar 8, 11:23
"Translating a fragment of MathMLPurpose: To get the MathML matrix related, apply, minus, times, divide, and eq tags to translate to VML and to SVG via XSLT."
2008 Mar 8, 11:14
Perhaps an IE plugin to support SVG by converting to VML could use this?
2008 Feb 26, 11:47
This is the readme for bsp2wrl which converts Quake BSP levels to VRML. Two out of date file types that taste great toghether. The zips for the tool are in the same folder.
2008 Jan 30, 1:15
Turns photos into 3D environments.
2008 Jan 3, 11:41
The legal reasons why you shouldn't compute Pi in binary.
2007 Nov 28, 1:23
One of the new Zune features that had me the most excited was the claimed improved Windows Media Center integration which unfortunately turned out to simply mean support for the Win MCE video format
(with an exception for HD
). I wanted to be able to pick shows recorded by my Win MCE and have the Zune automatically sync up the
latest episodes. However, with the improved podcast support in the Zune software one can easily create a ridiculous hack to accomplish this.
The new Zune software has podcast support which does everything I'd want to do with a
Win MCE recorded TV series so the goal is to shoehorn a TV series into a Zune podcast. An overview of the steps: Create an XSLT that converts Win MCE data to a podcast, run the XSLT as a scheduled
task every few hours per TV series, setup a Web server pointed at the resulting podcasts and the Win MCE Recorded TV directory, and subscribe to the resulting podcasts in the Zune software.
- Reading through the Win MCE data stored as an XML file in "C:\ProgramData\Microsoft\eHome\Recording\Recordings.xml" and the spec for podcasts I created an XSLT to convert a series from Win MCE data to a podcast.
- I added a new task to the Scheduled Tasks to run my XSLT using my xsltproc.js script. The task runs a handful of commands that look something like the following:
For each TV series I run a command like the above and that outputs a podcast for that series into my "D:\Recorded TV\" directory.
C:\windows\system32\wscript.exe C:\users\dave\bin\xsltproc.js C:\Users\Dave\Documents\trunk\development\mce-zune\mce-to-podcast.xslt
C:\ProgramData\Microsoft\eHome\Recording\Recordings.xml --param title "The Daily Show With Jon Stewart" --param max 4 --param baseURI "http://groucho/" --param thisRelURI "tds.xml" -o
- Zune only allows http URIs for its podcasts so I installed a web server on my Win MCE server. I'm running Vista Ultimate so it was quick and easy for me to install IIS7 but any Web server will do. Then I pointed it at "D:\Recorded TV\".
- Once all the above was done I just subscribed to the resulting podcasts via my Web server and viola! Since I'm forced to use a Web server I can even run the Zune software on a machine other
than my Win MCE server. You can see a screen-shot above of my Zune software showing my Colbert Report podcast.
2007 Oct 24, 3:26
Convert HTML into RSS with some predefined strings to look for.
2007 Oct 14, 3:12
I've updated my homepage by moving stuff about me onto a separate About
page. Creating the About page was the perfect opportunity
to get FoaF
, a machine readable way of describing yourself and your friends, off my to do list. I have a base FoaF
file to which I add friends, projects, and accounts from delicious
using an XSLT
. This produces the FoaF XML
resource on which I use another XSLT to convert into HTML
and produce the About page.
I should also mention a few FoaF pages I found useful in doing this:
FOAF Vocabulary Specification - The standard on which I based my XSLT to add in info from delicious.
FoaF Explorer - Turns any RDF XML FOAF resource into a webpage with links to the other people, projects, etc mentioned in the FOAF file.
FoaF-a-Matic - I used this to produce my base FoaF file.
RDF Validator - This is the closest thing I could find for validation. It does RDF in general but unfortunately not FoaF specifically. I found two
links to sites that are down or dead that claimed to do what I actually wanted.
2007 Aug 6, 5:40
I was messing with the XSLT to XSL Converter
source which is a
that simply runs an XML file through
an XSLT. I also wanted to run this from the command prompt without writing "cscript ..." everytime. I decided to make like perl programmers I've seen and make a JS file that works as a batch file and
a JS file at the same time.
Here's a basic version of what I ended doing applied to a 'hello world' script named helloworld.cmd:
/* 2> NUL
Says 'Hello world.' when you run it.
var outText = 'Hello world.';
Running this on a command prompt gives the following:
However, after a little more experimentation I found this was slightly overkill for my purposes since if I rename the file to helloworld.js and just type its name like a command it is run by
Microsoft (R) Windows Script Host Version 5.7
Copyright (C) Microsoft Corporation. All rights reserved.
So this time I didn't need all that but if ever in the future I need to run a batch file then a JS file I can do it with one file...
2007 Jul 6, 5:25
How to convert video files to something suitable for the Zune.
2007 Jun 17, 11:59
I expected more from Safari -- more like Opera. There weren't many exciting features to convert me.
2007 May 11, 8:55Last time, I had written some resource tools
to allow me to view and modify Windows module resources in my ultimate and noble quest to
implement the XML content-type fragment in IE7. Using the resource tools I found that MSXML3.DLL isn't signed and that I can replace the XSLT embedded resource with my own, which is great news and
means I could continue in my endevour. In the following I discuss how I came up with this replacement for IE7's XML source view
At first I thought I could just modify the existing XSLT but it turns out that it isn't exactly an XSLT
, rather its an IE5 XSL
. I tried using the XSL to XSLT converter
linked to on MSDN, however the resulting document still
requires manual modification. But I didn't want to muck about in their weird language and I figured I could write my own XSLT faster than I could figure out how theirs worked.
I began work on the new XSLT and found it relatively easy to produce. First I got indenting working with all the XML nodes represented appropriately and different CSS classes attached to them to make
Next was the XML mimetype fragment which uses XPointer
, a framework around various different schemes for naming parts of an XML document. I focused on the
which is an extended version of XPath
. So I named my first task as getting XPaths working.
. From this this I can execute XPaths, however there's no builtin way to map from the XML nodes selected by
position in the document. For instance 'a3-e2-e' is the name produced for the 3rd attribute of the second element of the root element of the XML document. When producing the HTML for an XML node, I
them to their corresponding positions in the HTML.
With the hard part out of the way I changed the onload to get the fragment of the URI of the current document, interpret it as an XPath and highlight and navigate to the selected nodes. I also added
an interactive floating bar from which you can enter your own XPaths and do the same. On a related note, I found that when accessing XML files via the file URI scheme the fragment is stripped off and
The next steps are of course to actually implement XPointer framework parsing as well as the limited number of schemes that the XPointer framework specifies.
2007 May 3, 12:52
A free tool to convert old style XSL documents into XSLT documents.
2007 Mar 28, 3:53
Software to convert DVDs or other video into something for your iPod. Recommended to me by Matt.
2007 Mar 1, 7:26
Tutorial on getting TV shows that I've recorded with Windows Media Center Edition onto my iPod.
2007 Feb 22, 2:35
Tool I've built that allows you to turn Mozilla's search descriptions into OpenSearch descriptions that may be used in IE7.
2007 Feb 14, 3:09
Richard Ishida's website that converts between encodings of UTF-8, UTF-16, and HTML NCRs.
2006 Dec 3, 7:21
Free encoding conversion application I made. Convert strings between various Internet related encodings including character sets, HTML encoding, URI encoding, and more.