interface page 2 - Dave's Blog

Search
My timeline on Mastodon

Firefox Mobile Concept Video on Vimeo

2008 Jun 12, 10:45Neat stuff for a Mobile Firefox concept: "A demo of an experimental UI for Mobile Firefox by Aza Raskin, Head of UX for Mozilla Labs. See azarask.in/blog/post/firefox-mobile-concept-video for more information."PermalinkCommentsbrowser interface video firefox mobile ui phone

IEnumXXXX

2008 Apr 4, 11:26"IEnumXXXX To allow you to enumerate the number of items of a given type that an object maintains, COM provides a set of enumeration interfaces, one for each type of item. "PermalinkCommentscom msdn microsoft rerference ienumxxx ienumxxxx interface programming

Internet Explorer 8 Beta 1 Released with Activities

2008 Mar 5, 11:36

Internet Explorer 8 Beta 1 is available now. I can finally talk about some of the stuff I've been working on for the past year or so: activities. Activities let you select a document, some text on a document, or a link to a document and run that selection through a web service. For example, you could select a word on a webpage and look it up in Wikipedia, select an address and map it on Yahoo Maps, select a webpage and translate it into English with Windows Live Translator, or select a link and add it to Digg.

IE8 comes installed with some activities based on Microsoft web services but there's a page you can go to to install other activities. However, that page is missing some of my favorites that I use all the time, like del.icio.us. Accordingly, I've put together a page of the activities I use. MSDN has all the info on creating Activities.

Activities are very similar to other existing features in other browsers including the ability to add context menu items to IE. There's two important differences which make activities better. Activities have a preview window that pops out when you hover over an activity, which is useful to get in place information easily provided by developers. The other is that the interface is explicit and takes after HTML FORMs and OpenSearch descriptions. Because the interface is explicitly described in XML (unlike the context menu additions described above which run arbitrary script) we have the ability to use activities in places other than on a webpage in the future. And because activity definitions are similar to HTML FORMs, if your webservice has an HTML FORM describing it you can easily create an activity.

PermalinkCommentsmicrosoft technical activity openservice ie8 ie activities msdn

Chris Harrison - Rethinking the Progress Bar

2008 Mar 3, 3:32Research paper on progress bar UI improvements counters my thoughts on progress bar demanded for case where we only know when we're done: set progress as function of time where function has asymptote at %100. Zeno's progress bar.PermalinkCommentsdesign gui hci interface paper progress progress-bar usability research

HIMAGELIST Stream Size

2008 Jan 12, 2:26If you're like me you need to serialize an object that contains an HIMAGELIST via IMarshal for COM's marshalling. I could use ImageList_Write to actually write the HIMAGELIST to a stream for IMarshal::MarshalInterface, but I needed to know the size of the data that I was going to write for IMarshal::GetMarshalSizeMax. I thought I'd use HIMAGELIST_QueryInterface to get an IPersistStream pointer which works, but alas its implementation of IPersistStream::GetMaxSize just returns E_NOTIMPL. Ultimately I called ImageList_Write on a special stream that ignores the data passed to it and just records how much data is written to it. In this fashion I could get the size the HIMAGELIST would require when written to a stream.PermalinkCommentstechnical himagelist boring serialize imarshal com

IPv6 Roundup: Address Syntax on Windows

2008 Jan 9, 11:34

IPv6 address syntax consists of 8 groupings of colon delimited 16-bit hex values making up the 128-bit address. An optional double colon can replace any consecutive sequence of 0 valued hex values. For example the following is a valid IPv6 address: fe80::2c02:db79

Some IPv6 addresses aren't global and in those cases need a scope ID to describe their context. These get a '%' followed by the scope ID. For example the previous example with a scope ID of '8' would be: fe80::2c02:db79%8

IPv6 addresses in URIs may appear in the host section of a URI as long as they're enclosed by square brackets. For example: http://[fe80::2c02:db79]/. The RFC explicitly notes that there isn't a way to add a scope ID to the IPv6 address in a URI. However a draft document describes adding scope IDs to IPv6 addresses in URIs. The draft document uses the IPvFuture production from the URI RFC with a 'v1' to add a new hostname syntax and a '+' instead of a '%' for delimiting the scope id. For example: http://[v1.fe80::2c02:db79+8]/. However, this is still a draft document, not a final standard, and I don't know of any system that works this way.

In Windows XPSP2 the IPv6 stack is available but disabled by default. To enable the IPv6 stack, at a command prompt run 'netsh interface ipv6 install'. In Vista IPv6 is the on by default and cannot be turned off, while the IPv4 stack is optional and may be turned off by a command similar to the previous.

Once you have IPv6 on in your OS you can turn on IPv6 for IIS6 or just use IIS7. The address ::1 refers to the local machine.

In some places in Windows like UNC paths, IPv6 addresses aren't allowed. In those cases you can use a Vista DNS IPv6 hack that lives in the OS name resolution stack that transforms particularly crafted names into IPv6 addresses. Take your IPv6 address, replace the ':'s with '-'s and the '%' with an 's' and then append '.ipv6-literal.net' to the end. For example: fe80--2c02-db79s8.ipv6-literal.net. That name will resolve to the same example I've been using in Vista. This transformation occurs inside the system's local name resolution stack so no DNS servers are involved, although Microsoft does own the ipv6-literal.net domain name.

MSDN describes IPv6 addresses in URIs in Windows and I've described IPv6 addresses in URIs in IE7. File URIs in IE7 don't support IPv6 addresses. If you want to put a scope ID in a URI in IE7 you use a '%25' to delimit the scope ID and due to a bug you must have at least two digits in your scope ID. So, to take the previous example: http://[fe80::2c02:db79%2508]/. Note that its 08 rather than just 8.

PermalinkCommentsroundup ip windows ipv6 technical microsoft boring syntax

311 customer service rep has a window onto San Francisco's secret heart.

2007 Oct 9, 5:12San Francisco has a free 311 number similar to 911 except not for emergencies. You describe a problem or question and they find the correct city agencies to help you. Sounds like a great interface to public political agencies.PermalinkCommentsvia:thedpshow blog article humor phone advice sanfrancisco 311 news

Carl.Kenner - GlovePIE download

2007 May 20, 2:39GlovePIE provides a simple scripting interface to Wii remotes. It also comes with a bunch of premade scripts for example wiimote accel. controls the mouse.PermalinkCommentsbluetooth nintendo programming coding tool videogames wii wiimote wireless research:wii-remote

New at Pentagram: New Work: One Laptop Per Child

2007 Mar 15, 11:27Article describing the One Laptop Per Child interface. I hadn't seen the collaborative browsing before. Looks neat.PermalinkCommentsolpc interface gui design article visualization

Jensen Harris: An Office User Interface Blog : The Best Outlook Feature Ever

2005 Dec 6, 2:17The Best Outlook Feature EVAR!!1!PermalinkCommentssoftware microsoft outlook easteregg

Bus Monster

2005 Jul 18, 3:03Search Puget Sound bus stops with Google Maps interfacePermalinkCommentsgoogle bus tools hack search
Older EntriesNewer Entries Creative Commons License Some rights reserved.