2005.06.27
Changes for Mozilla Extension Developers
On the Inside Firefox blog, ben writes about Changes for Extension Developers. The changes are must-know for extension developers, but also provide some nice benefits for users.
Posted by Nate Koechley on June 27, 2005 at 01:09 AM in Browsers, Software and Tools, Web Development | Permalink | Comments (0) | TrackBack
Rendering CSS Efficiently - Insider Tips from Safari
I just came drown from altitude in the Himalayas, so I'm admittedly pretty far behind in my technology reading, email maintenance and blogging. That said, in beginning to catch up I came across this complex and interesting post from David Hyatt on his Surfin' Safari blog. For those of you that have been paying attention, Hyatt is a leading browser developer, having worked on Gecko at AOL, and in his current position largely responsible for the magic in Safari and Web Core.
His post deals with the challenges of rendering CSS:
One of the most interesting problems (to me at least) in browser layout engines is how to implement a style system that can determine the style information for elements on a page efficiently.
Hyatt has created a new, more efficient algorithm for doing this (and a few other related things). For the algorithm to work, it checks ten features of each DOM node. I'm blogging this because it presents a new optimization opportunity for web developers. By being mindful of these 10 items, and not needlessly failing the 10 tests, we'll take advantage of these new rending efficiencies in Safari. These aren't revolutionary steps, but there are situations where they will certainly be the tie-breaker between alternate approaches.
There are a number of conditions that must be met in order for this sharing to be possible:
- The elements must be in the same mouse state (e.g., one can't be in :hover while the other isn't)
- Neither element should have an id
- The tag names should match
- The class attributes should match
- The set of mapped attributes must be identical
- The link states must match
- The focus states must match
- Neither element should be affected by attribute selectors, where affected is defined as having any selector match that uses an attribute selector in any position within the selector at all
- There must be no inline style attribute on the elements
- There must be no sibling selectors in use at all. WebCore simply throws a global switch when any sibling selector is encountered and disables style sharing for the entire document when they are present. This includes the + selector and selectors like :first-child and :last-child.
In web development there are often 6 different similar ways to do the same thing. What makes a good web developer is continually choosing the best of nearly-indistinguishable paths. These insider tips from Hyatt give us a more complete understanding of the guts of the browsers, and will help us choose the best methods.
Read about it in his own words here: http://weblogs.mozillazine.org/hyatt/archives/2005_05.html#007507
Posted by Nate Koechley on June 27, 2005 at 12:42 AM in Accessibility, Internationalization, CSS Media Types, Browsers, Layered Semantic Markup, Software and Tools, Web Development | Permalink | Comments (0) | TrackBack
2005.04.08
Awesome Firefox Extensions
Anthony Lieuallen of Arantius.com has a great page called Awesome Firefox Extensions. If you're new to Firefox or extensions, or are interested in finding some great new one, definitely head over there to check it out.
One extension not listed that I would personally recommend is Target Alert. This extension adds a small icon next to any links that aren't to standard web pages. For example, it inserts a small envelope icon next to any email links, and a small PDF icon next to any .pdf links. (The PDF alert is particularily useful, since loading a PDF is slow sluggish and I often want to avoid it all together!) It offers alerts for many file extension (you can turn on and off as needed), and also alerts to links that will open new windows. The new window alert is great, because I then know to press alt-shirt to force the load into a new tab instead of a new browser window.
Anyways, I've been meaning to publish my recommended list of extensions, but this will have to do for now.
Posted by Nate Koechley on April 8, 2005 at 04:31 PM in Accessibility, Internationalization, CSS Media Types, Browsers, HOWTO's and Tutorials, References, Software and Tools, Web Development | Permalink | Comments (1) | TrackBack
2005.04.07
Three Weeks of W3C
Below are pointers to about a dozen activites coming out of the World Wide Web Consortium over the last three weeks. You can follow along on their homepage or with their feed. Standards-based design and development can be about more than using existing standards; in the best cases, it's about helping to create the standards in the first place! By being aware of the work underway at the W3C, you can have a good sense of where the industry and technologies are going, even if you don't get your hands dirty in any of the working groups.
Three Weeks Worth
Working Draft: SVG's XML Binding Language (sXBL)
2005-04-06: The Scalable Vector Graphics (SVG) Working Group and the CSS Working Group have released a third Working Draft of SVG's XML Binding Language (sXBL). The sXBL language defines the presentation and interactive behavior of elements outside the SVG namespace. The XBL task force welcomes comments and seeks feedback on three issues outlined in the status section. Visit the SVG and CSS home pages. (News archive)
Last Call: XQuery, XPath and XSLT
2005-04-04: The XML Query Working Group and the XSL Working Group released twelve Working Drafts for the XQuery, XPath and XSLT languages. Seven are in last call through 13 May. Important for databases, search engines and object repositories, XML Query can perform searches, queries and joins over collections of documents. XSLT transforms documents into different markup or formats. Both XQuery and XSLT 2 use XPath expressions and operate on XPath Data Model instances. Visit the XML home page. (News archive)
Working Draft: Compound Document Use Cases and Requirements
2005-04-04: The Compound Document Formats Working Group has released an updated Working Draft of Compound Document by Reference Use Cases and Requirements Version 1.0. A compound document combines multiple formats, such as XHTML, SVG, XForms, MathML and SMIL. This draft introduces compounding by a reference like img, object, link, src and XLink. Compounding by inclusion is planned for a later phase. Visit the Compound Document home page. (News archive)
Last Call: Web Services Addressing
2005-03-31: The Web Services Addressing Working Group has released two Last Call Working Drafts. Web Services Addressing - Core enables messaging systems to support transmission through networks that include processing nodes such as endpoint managers, firewalls, and gateways. SOAP Binding defines the core properties' association to SOAP messages. Visit the Web services home page. (News archive)
XML Binary Characterization Notes Published
2005-03-31: The XML Binary Characterization Working Group has released its evaluation, recommending that W3C produce a standard for binary interchange of XML. Published today as a Working Group Note, XML Binary Characterization is supported by use cases, properties and measurement methodologies. Optimized serialization can improve the generation, parsing, transmission and storage of XML-based data. Visit the XML home page. (News archive)
Upcoming W3C Talks
2005-03-31: Browse W3C presentations and events also available as an RSS channel. (News archive)
Last Call: XML Schema Component Designators
2005-03-29: The XML Schema Working Group has released a Last Call Working Draft of XML Schema: Component Designators. Comments are welcome through 26 April. The document defines a scheme for identifying the XML Schema components specified by the XML Schema Recommendation Part 1 and Part 2. Visit the XML home page. (News archive)
Working Draft: RDF/Topic Maps Interoperability
2005-03-29: The Semantic Web Best Practices and Deployment Working Group has released the First Public Working Draft of A Survey of RDF/Topic Maps Interoperability Proposals. The document is a starting point for establishing standard guidelines for combined usage of the W3C RDF/OWL family and the ISO family of Topic Maps standards. The group expects to publish Survey and Guidelines Working Group Notes based on this draft. Visit the Semantic Web home page. (News archive)
RDF Data Access Use Cases and Requirements Updated
2005-03-25: The RDF Data Access Working Group has released an updated Working Draft of RDF Data Access Use Cases and Requirements. The draft suggests how an RDF query language and data access protocol could be used in the construction of novel, useful Semantic Web applications in areas like Web publishing, personal information management, transportation and tourism. The group invites feedback on which features are required for a first version of SPARQL and which should be postponed in order to expedite deployment of others. Visit the Semantic Web home page. (News archive)
Call for Participation: W3C Workshop on XML Schema 1.0 User Experiences
2005-03-23: Position papers are due 20 May for the W3C Workshop on XML Schema 1.0 User Experiences to be held 21-22 June in Redwood Shores, California, USA. Schema authors and users, developers and vendors of schema-aware code generators, middleware, validators, and the W3C XML Schema Working Group will gather to discuss user experience with XML Schema 1.0. The workshop goal is to arrive at plan of action for XML Schema 1.0 interoperability, errata and clarification. Read about W3C workshops and visit the XML home page. (News archive)
Last Call: Timed Text Distribution Profile
2005-03-21: The Timed Text (TT) Working Group has released a Last Call Working Draft of the Timed Text (TT) Authoring Format 1.0 Distribution Format Exchange Profile (DFXP). The format enables authors and authoring systems to interchange style, layout and timing associated with text. DFXP helps to transform and distribute subtitles and captions to legacy systems. Comments are welcome through 11 April. Visit the Synchronized Multimedia home page. (News archive)
Working Draft: Compound Document Use Cases and Requirements
2005-03-15: The Compound Document Formats Working Group has released the First Public Working Draft of Compound Document by Reference Use Cases and Requirements Version 1.0. A compound document combines multiple formats, such as XHTML, SVG, XForms, MathML and SMIL. This draft introduces compounding by a reference like img, object, link, src and XLink. Compounding by inclusion is planned for a later phase. Visit the Compound Document home page. (News archive)
Working Draft: Timed Text Distribution Profile
2005-03-14: The Timed Text (TT) Working Group has released an updated Working Draft of the Timed Text (TT) Authoring Format 1.0 Distribution Format Exchange Profile (DFXP). The format enables authors and authoring systems to interchange style, layout and timing associated with text. DFXP helps to transform and distribute subtitles and captions to legacy systems. Visit the Synchronized Multimedia home page. (News archive)
Call for Participation: W3C Workshop on Frameworks for Semantics in Web Services
2005-02-10: Position papers are due 22 April for the W3C Workshop on Frameworks for Semantics in Web Services to be held 9-10 June in Innsbruck, Austria. Participants will discuss possible future W3C work on a comprehensive and expressive framework for describing all aspects of Web services. The workshop's goal is to envision more powerful tools and fuller automation using Semantic Web technologies such as RDF and OWL. Read about W3C workshops and visit the Web services home page. (News archive)
Posted by Nate Koechley on April 7, 2005 at 01:15 AM in Accessibility, Internationalization, CSS Media Types, Browsers, News, References, Search, Search Engines, Search Engine Optimization (SEO), Social Networking and Community, Software and Tools, Web Development, Yahoo! | Permalink | Comments (0) | TrackBack
2005.04.06
More Mac, More Firefox
John Battelle points to the updated Yahoo! toolbar and let's out a big "Yeeeehaw!" because it supports Mac users via Firefox.
Those involved in promoting standards-based developments are happy with each of these wins that directly benefit users. Way to go Yahoo! Toolbar.
Posted by Nate Koechley on April 6, 2005 at 03:44 AM in Accessibility, Internationalization, CSS Media Types, Search, Search Engines, Search Engine Optimization (SEO), Software and Tools, Web Development, Yahoo! | Permalink | Comments (0) | TrackBack
2005.03.31
Yahoo isn't just back in the game - it's winning.
Ben Hammersley writes an interesting piece in the Guardian today titled Second Sight. It's well worth reading, and looks at recent developments from Yahoo and Google, and reports that "Google, it seems, has jumped the shark." His conclusion is that it's "Three-nil to Yahoo." Give it a read, I think you'll be impressed, and probably find out some things about each company that go against the prevailing PR winds.
Yahoo is the new Google. Google is the new Yahoo. Up is down, and black is white. This spring has been very strange. Google, it seems, has jumped the shark. It has been overtaken, left standing, and not by some new startup of ultra smart MIT alumni or by the gazillions in the Microsoft development budget, but by the deeply unhip and previously discounted Yahoo.
The article provides a good overview of recent Yahoo activity, including the Yahoo Search API, research.yahoo.com (and next.yahoo.com), live traffic conditions on Yahoo! Maps, a gig of storage on Yahoo! Mail, Yahoo! 360, Flickr, and even the quietly released Creative Commons search on Yahoo!: http://search.yahoo.com/cc
Update: Danny Sullivan, Editor of the premier search industry publication, released their 5th Annual Search Engine Watch Awards today, and for the first time Yahoo! Search takes first place, bumping Google to second.Remember what I said about prevailing winds, and hold onto your hat.
Posted by Nate Koechley on March 31, 2005 at 11:30 AM in Design, Engineering, News, Search, Search Engines, Search Engine Optimization (SEO), Software and Tools, Yahoo! | Permalink | Comments (0) | TrackBack
2005.03.30
Flickr Tips: Monitoring Comments and Configuring Alerts
Monitoring Comments and Conversations
After I used Flickr for a while, I started to pay more and more attention to the social and community aspects. I haven't ventured onto the message boards or chat yet, but I enjoy leaving comments on photos and having conversations there.
In several instances, I've asked for travel advice and questions about the locations and people in certain photos. Other times I've inquired about the techniques used to capture wonderful photographs or after-effects. In all these cases, it's easy to comment but it had always been hard for me to remember where I'd commented, and notice when a reply was posted.
Then I discovered the Photos you've commented on page. This page solves all those problems for me: in a clean way, it presents all the photos you've commented on. It's ordered by most recent activity, so you see photos you've recently commented on, as well as those that have been recently replied to. It works great, and has encouraged me to contribute and participate even more.
Notes and also Comments are shown in this nicely-integrated view.
Configuring Flickr Alerts
The Flickr mailbox is OK, but it doesn't' really fit into my personal online workflow. I prefer to receive my notifications in email. To set it up so Flickr sends you email instead of only adding to your Flickr mailbox, click My Account from the top of any page. From there click Notifications from Flickr (which you'll see on the right, under the Privacy Settings header) and adjust the settings. For the four choices on the page, I have "Yes", "Yes", "As soon as it happens" and "Yes please!".
To modify which email address these messages are sent to, click "Edit your email address" from back on the My Account page. (I set up an Address Guard on Yahoo Mail, which allows you to create a unique mail address, which I use to keep "alert" messages like this out of my main inbox.)
If you haven't played with Flickr for at least 10 hours, start now. You'll discover cooler and cooler features the more you use it. In fact, this "discoverability" aspect of Flickr is one of it's great strengths and attributes.
Posted by Nate Koechley on March 30, 2005 at 09:30 PM in HOWTO's and Tutorials, Idea, Knowledge & Content Management, Metadata, Photos, References, Social Networking and Community, Software and Tools | Permalink | Comments (2) | TrackBack
2005.03.17
[Invites] Filangy - Your Personal Search Engine
Filangy is a personal search engine. There are a few startups and companies playing in this space right now, but Filangy is my early favorite. Other's have written about it, including John Battelle's Search Blog, Larry Borsato, and a thorough write-up on Rob's Blog. (You can always check the latest murmurings by running a Technorati search.
Filangy is an intelligent search tool integrated with a search engine to make searching productive. We offer features that allow users to personalize their search experience. Two of the features that we have launched in our beta products are WebMarks and WebCache.
- WebCache
- This is a secure, web-enabled archive of all your visited webpages.
- WebMarks
- These are your portable favorites that are accessible from anywhere.
In other words, Filangy captures every page you visit (while it's enabled -- its' easy to pause it if you're feeling secretive), and also allows for instantaneous bookmarking while you're on a page. When you use Filangy to search, you can limit it to either of these groups: pages you've been on before; pages you've bookmarked.
I've got a few extra invites. Leave a comment or send me an email if you'd like one of them. Please include a sentence or two on the root of your curiosity and why you'll be a good recipient. (I just want to make sure that, like extra pets, they're going to good homes.)
Like most of my favorite apps these days, the value of the services is only slowly revealed. The more you use it, the more help it's able to provide. The more you use it, the more advanced features on the interface become visible... While it's somewhat counter-intuitive to hide value initially, this wonder and dare-i-say glee of discovery pays huge dividends. Anyways, let me know what you think if you've been using it, and like I said, let me know if you need an invite.
Posted by Nate Koechley on March 17, 2005 at 03:26 PM in Gadgets, Knowledge & Content Management, Metadata, References, Search, Search Engines, Search Engine Optimization (SEO), Software and Tools | Permalink | Comments (1) | TrackBack
2005.03.16
Total Recall -- Desktop Search Products Reviewed
PC Magazine has a nice review of the desktop search space.
Desktop search tools really can make our lives easier, and since so many of them are free, there's little reason not to give one a try. Your mailbox isn't getting any more manageable, your hard drive isn't getting emptier, and after all, finding something on the PC right in front of you should be as easy as finding something on the Web.
And, I'm happy to spoil with their conclusion: "Our favorite, Yahoo! Desktop Search, is actually based on the same core software as the $75 X1 Desktop Search, and it offers almost all the same features." (The main feature that Yahoo! didn't pick up in their free version of X1 is the ability to index email outside of Outlook, specifically Eudora and Mozilla/Thunderbird.)
Posted by Nate Koechley on March 16, 2005 at 10:30 AM in Knowledge & Content Management, Metadata, Search, Search Engines, Search Engine Optimization (SEO), Software and Tools, Yahoo! | Permalink | Comments (0) | TrackBack
2005.02.18
Blogging and Culture at Yahoo!
Mark Jen was fired from Google for blogging. The is old news. What's interesting now is that he reports on his conversations with two prominent bloggers (and yahoo employees) about blogging at work, yahoo's policy/stance on worker-blogging, at last week's 106 Miles community meeting. It's nice to see that Yahoo gets blogs and blogging.
after dave's talk, i met russ. he apparently had been doing contract work at yahoo and just recently joined there full time. i took the opportunity to chat with him a little bit; mostly, i wanted to know why he chose to join yahoo out of all the other companies in the area. immediately, russ focused in on the culture and working environment. i thought, wow, a place that's working on bringing revolutionary web technologies to the masses and a great atmosphere? sounds like a dream come true.
then, i met jeremy zawodny. since my story had started making rounds with the press, i had been compared to jeremy and scoble, but i had never expected to meet them in person. we got to talking and he shared with me his experience at yahoo, which also sounded great. jeremy told me that yahoo is extremely blog friendly and that posting their personal work experiences was perfectly acceptable - given, of course, that confidential information and NDAs aren't breached. i left with his contact info and an invite to tour the yahoo campus.
Posted by Nate Koechley on February 18, 2005 at 02:17 AM in Blogging, RSS, Knowledge & Content Management, My life..., Social Networking and Community, Software and Tools, Yahoo! | Permalink | Comments (0) | TrackBack
Evolution vs Revolution in Web Standards
CNet's Paul Festa filed a story today, Fight over 'forms' clouds future of Net applications, with a subhead of "As Net heavyweights vie to define the next generation of Web applications, the Web's main standards body is facing a revolt within its own ranks over electronic forms, a cornerstone of interactive documents."
The article sheds some light on the WHAT-WG, as well as some of the players in this general saga. The most interesting section to me:
WHAT-WG members say the forms dispute illustrates a larger conflict over whether the W3C should proceed in a "revolutionary" mode, tackling problems from square one and coming up with technically elegant solutions--even if that results in the loss of backward-compatibility with older browsers--or an "evolutionary" mode, maintaining older technologies like HTML 4 and extending the usefulness of current browsing software.
I also enjoyed Steven Pemberton's comments:
"The WHAT approach works OK for small examples," Pemberton said. "But actors like the Department of Defense say 'no scripting.'"
And:
"I understand where WHAT is coming from, but they are browser makers, not forms experts," Pemberton said. "It is important to build something that is future-proof and not a Band-Aid solution. Forms (technology) is the basis of the e-commerce revolution and so it is important to do it right."
[All emphasis mine.]
Posted by Nate Koechley on February 18, 2005 at 01:56 AM in Accessibility, Internationalization, CSS Media Types, Browsers, Engineering, Layered Semantic Markup, Software and Tools, Web Development | Permalink | Comments (0) | TrackBack
2005.02.17
Casual Gaming
At last week's Mobile Monday, which I attended, Anita Wilhelm (aka MobileGirl) presented a mobile-based game her startup is working on:
Caterpillar Mobile's current product is a cameraphone game called Zooke. Zooke allows its members to create challenges for all members or only members of an immediate social circle. You might be on a mission to find the best George Bush bumper sticker in Berkeley and have other game players rate your findings. It is a community-driven reality play experience that makes everyone's day a little more exciting with minimal effort.
I liked the idea of casual gaming, the idea that you can have an experience in short segments while you're going about your normal routine. I'm also interested that this represents a shift from highly time-intensive games. Well, she follows up that with a new post last week discussing Casual Gaming and thinking about an article of the same title by Tom Hume.
He captures the essence of an important shift from hard core gaming experiences to engaging play experiences perfectly! Allowing players to engage lightly in the experience throughout their daily lives is essential to creating something compelling and addictive to be used on a mobile device. Allowing players light weight games or frameworks that they can think about while on the move, but not have to interact with continually in the virtual world is essential. Giving them tools which allow them to explore and play at their will fits the affordances of the mobile device.
I remember the days of having hours and hours to play video games, but to be honest, it's a pretty distant memory. It's cool to see people working to bring games and playing back into the lives of otherwise distracted and busy peeps like me. It's also fun to watch a new medium like Mobile develop.
Posted by Nate Koechley on February 17, 2005 at 03:53 AM in Gadgets, Idea, Location: San Francisco, My life..., Photos, Social Networking and Community, Software and Tools | Permalink | Comments (2) | TrackBack
Send driving direction to your phone on Yahoo
Send driving direction to your phone on Yahoo
Originally uploaded by natekoechley.
Following quickly on the SMS Clipping feature, Yahoo! Maps this week quietly launched a new feature that lets you quickly send driving directions to your mobile phone via SMS text message.
Brilliant. Give it a test drive.
Posted by Nate Koechley on February 17, 2005 at 03:29 AM in Gadgets, Search, Search Engines, Search Engine Optimization (SEO), Software and Tools, Yahoo! | Permalink | Comments (0) | TrackBack
Best FTP Client for Mac
Dan at Simplebits points to the just-released Transmit 3. I haven't used v3 yet, but v2 was such a great program that I'm sure this one rocks too. If you're on a Mac and looking for a friendly, powerful FTP client, this is for you.
Posted by Nate Koechley on February 17, 2005 at 03:13 AM in Software and Tools | Permalink | Comments (0) | TrackBack
2005.02.16
FeedBurner Stats, Podcasts, Specialized RSS Clients
Feedburner, an RSS feed tracking company (that I use to understand my RSS statistics and readership), has been releasing some very interesting statistics recently. This batch provides some insight into the Podcasting space:- Since the beginning of 2005, the number of podcast feeds managed by Feedburner has more than doubled from 871 to 1746.
- Four different rss aggregators specialized for podcasts are in the Top 50 RSS Aggregators list. This illustrates a trend that's sure to continue... There are already clients specializing in aggregating video -- how long until photo-specific show up?
Thanks for sharing, Feedburner, it's a great post. Thanks also for the interesting and valuable service you provide.
Posted by Nate Koechley on February 16, 2005 at 12:44 AM in Blogging, RSS, Browsers, Metadata, Pop Culture, References, Software and Tools | Permalink | Comments (0) | TrackBack
2005.02.15
News from the World Wide Web Consortium
For better or worse, I only catch up on my W3 reading every month or so. That said, here's the stuff that caught my eye recently:
- Call for Participation: W3C Workshop on Frameworks for Semantics in Web Services
- Working Draft: Glossary of Terms for Device Independence
- W3C Launches Voice Browser Activity
- 'Architecture of the World Wide Web, Volume One' is a W3C Recommendation
Posted by Nate Koechley on February 15, 2005 at 04:58 PM in Accessibility, Internationalization, CSS Media Types, Browsers, Engineering, Layered Semantic Markup, References, Software and Tools, Web Development | Permalink | Comments (0) | TrackBack
2005.02.13
Browser Speed Comparisons
"There is a speed war on the web. Browsers compete on many fronts; security, standards support, features and speed. Most people are aware of which major browser fails on three of these, but one of them is still open for grabs. Speed."
Posted by Nate Koechley on February 13, 2005 at 12:28 PM in Accessibility, Internationalization, CSS Media Types, Browsers, Engineering, Sandbox Stuff, Ugly Experiments, Software and Tools, Web Development | Permalink | Comments (0) | TrackBack
2005.02.09
Semantic Markup - Create, Support and Extract
Semantic Data Extractor
As Kevin Ryan pointed out at work yesterday, the W3's Semantic Data Extractor is a pretty sweet tool. I've been steadily promoting Layered Semantic Markup at work -- the importance of meaningful markup as the core of web development. This is a great tool to show that value, and remind that the reason you put meaning in is to get meaning out.
The tool tries to extract information from a semantically-rich HTML document. It only uses information available through the good usage of the semantics provided by HTML. “The aim is to show that providing semantically rich HTML gives much more value to your code: using semantically rich HTML allows a better use of CSS, and makes your HTML intelligible to a wider range of user agents (especially search engines bots).”
To see it in action, check out the new next.yahoo.com page. The Extractor handles it pretty well, showing a clear document hierarchy.
What is Layered Semantic Markup?
Today’s Wrong Solution is Tomorrow’s Constraint
Layered Semantic Markup (LSM) is not a technology, but a framework comprised of HTML, XHTML, Cascading Style Sheets (CSS), Javascript, DOM and other Web technologies. LSM allows for appropriately implemented principles and standards.
LSM is a development framework for creating Web documents and experiences. LSM builds for the least capable devices first, then enhances those documents with separate logic for presentation, in ways that do not place an undue burden on baseline devices but which allow a richer experience for those users with modern graphical browser software. LSM supports all user agents, and is inclusive by design. (Progressive Enhancement - Unobtrusive Javascript)
LSM has structural semantic markup at its core, which provides lean, meaningful, accessible pages. This well-built core and the clear separation of structural, presentational and behavioral layers make this development philosophy superior to many short-sighted approaches.
Today’s wrong solution is tomorrow’s constraint. A holistic vision - an underlying philosophy - must guide technical decisions. LSM provides the strategy for a sound and future-ready approach.
LSM embraces Graded Browser Support by using one markup document, subsequently layered with stylesheets and scripts that provide a gradually enhanced experience across a wide variety of browsers and devices.
This approach has profound advantages over other browser support approaches such as graceful degradation. Graded Browser Support recognizes that advanced technology support is not a guarantee of the future, and that legacy software as well as alternative devices (mobile) must always be considered. Graded Browser Support defines support in terms of current capabilities, not in terms of legacy or obsolete software; it embraces accessibility, universality, and peaceful coexistence with more feature-rich browsers/devices; and it allows for adoption of new technology and strategies without leaving any browser/device behind.
Credits
This work is heavily influenced and contains directly passages from Debra Chamra's "Progressive Enhancement: Paving the Way for Future Web Design", Steven Champeon and Nick Finck's presentation "Inclusive Web Design For the Future with Progressive Enhancement", and Steven Champeon's "Progressive Enhancement and the Future of Web Design", all of which may be found here.
Thanks also to the great people who have endlessly debated and developed these topics with me: James Berry, Sean Imler, Todd Kloots, Jon Koshi, Mike Lee, Thomas Sha, Matt Sweeney, Chanel Wheeler, and Christina Wodtke; and everybody else; and to everybody who puts their ideas online so that others may be inspired. Thanks.
Posted by Nate Koechley on February 9, 2005 at 03:22 PM in Accessibility, Internationalization, CSS Media Types, Browsers, Design, Engineering, Idea, Information Architecture, Interaction Design, Layered Semantic Markup, References, Search, Search Engines, Search Engine Optimization (SEO), Software and Tools, Visual Design, Web Development | Permalink | Comments (7) | TrackBack
2005.02.08
Analyze HTTP Headers and Smart Keyword Search with Firefox
There are several good ways to check out a file's HTTP headers. Tonight I was using http://www.forret.com/projects/analyze/, which is just a simple web form that you enter your URL into.
I know there are more snazzy ways, including Firefox's great extension LiveHTTPHeaders, but sometimes an always-available web page is a fine solution. And, while I totally love the ability to extend and modify Firefox with the ever-growing supply of extensions, I've been trying to keep my browser as lean as possible by only installing ones I really need. For services that require a query to be submitted -- a map request, dictionary lookup, feed subscription or web search -- I've been opting lately to set up Keyword Search in Firefox (as I described several months ago).
(In addition to having less extensions, I find it's just significantly faster to trigger these actions form the keyboard.)
With a few keyword shortcut's set up, my hands are liberated from the mouse to the efficiency and speed of the keyboard. My browser begins to resemble a command line interface. In addition to my newest, headers http://www.yahoo.com, I use these others constantly:
sub http://natek.typepad.com- subscribed to a feed -- fastest possible way to subscribe to an rss feed with bloglines (please don't ruin bloglines Ask!)
ys northern california hiking trails- returns Yahoo Search results page -- 100s of times a day.
wiki Thomas Frank- returns Wikipedia encyclopedia entry -- lots of info types are best answered by an encyclopedia
map [[701 N First Ave, 94089]- returns a Yahoo Maps -- always need for a map
dic efficiency- returns dictionary.com definition
the excitement- returns thesaurus.com entry
by natek- returns my company's intranet (backyard) results -- for looking up coworkers
amaz Talib Kweli- returns Amazon search results -- to grab a book cover or album track listing
imdb War of the Worlds- returns an Internet Movie DataBase (IMDB) search
how to change your car's oil- returns detailed instructions from ehow.com
techno mobilemonday.com- returns blogosphere info on who's talking about http://www.mobilemonday.com/ right now?
Did you notice the ones for Bloglines (sub)? It's great. I am generally motivated to subscribe to some feed while in the midst of being excited or engaged by the content. This time of highest engagement is the time when you least want to interrupt the session to go subscribe -- this shortcut allows me to nearly-instantly subscribe in the heat on the moment.
(In case you're curious, I was looking at headers tonight to verify that the file expiration dates were distant, so that the files would be cached by the client until then.)
Posted by Nate Koechley on February 8, 2005 at 02:33 AM in Blogging, RSS, Browsers, HOWTO's and Tutorials, Idea, My life..., References, Search, Search Engines, Search Engine Optimization (SEO), Software and Tools, Web Development | Permalink | Comments (0) | TrackBack
2005.01.31
Mobile Content Market
From the Internet Stock Blog, some highlights from Verisign's conference call (VRSN):
"our mobile content services were the highlight… even without a major new market entry impacting Q4. Revenues… were up 27% sequentially, as we saw increased penetration in Europe and the initial contribution from Australia"
Clearly the U.S. market for mobile content is growing rapidly
Even if you're not interested in the money side of things, the Internet Stock Blog has some pretty sweet tidbits and insights.
Posted by Nate Koechley on January 31, 2005 at 03:49 PM in Accessibility, Internationalization, CSS Media Types, Browsers, Software and Tools | Permalink | Comments (1) | TrackBack
Opera Interview; Opera v8 beta; XmlHttpRequest
Opera Watch (The Unofficial Opera Blog) has An Interview with Opera's Berit Hanson. It's a good read. It sounds like Opera plans to stay true to themselves, and if you read between the lines it sounds like they have some cool things just around the corner. Opera has always been the most innovative company and browser, so this comes as no surprise.
XmlHttpRequest support coming
Professional web developers will be glad to hear that the XmlHttpRequest object will be supported in Opera 8. Here's the relevant part of the interview:
Opera Watch: In version 8 beta of Opera, you introduced support for the XmlHttpRequest object, made famous by Gmail. Considering that it is not part of any standard, why did Opera decide to implement it? What are your thoughts in general on features not based on public standards?
Opera: In Opera's case the support for XMLHttpRequest was built on top of our (pioneering) support for the W3C recommendation Dom Level 3 Load and Save. XMLHttpRequest is offered for backwards compatibility with existing Web sites.
XMLHttpRequest started as a proprietary extension to MSIE, then added to Mozilla but with a slightly different initialization since Mozilla didn't support Active-X.
Opera supports both ways of initiating the XMLHttpRequest object, but we DO NOT SUPPORT Active-X, it just looks that way for the Web application, so we can work with existing Web pages written for MSIE. Active-X is not used internally, so you are not exposed to any of the typical risks with Active-X.
Posted by Nate Koechley on January 31, 2005 at 02:37 PM in Accessibility, Internationalization, CSS Media Types, Browsers, Software and Tools, Web Development | Permalink | Comments (0) | TrackBack
2005.01.28
RoomWizard - Networked, web-based signs for scheduling conference rooms
"RoomWizard is the first web-based series of signs for scheduling rooms and other shared spaces. Manage your shared meeting spaces from any network device or grab a room on the spot for impromptu meetings. "
As my friend Chanel said in her ping, "this is sooo damn cool: http://www.steelcase.com/na/products.aspx?f=12117".
Posted by Nate Koechley on January 28, 2005 at 12:41 PM in Gadgets, Software and Tools | Permalink | Comments (0) | TrackBack
"Search and SEE the Yellow Pages with a9"
I've been meaning to comment on this, but haven't quite got around to it. As a service to my dear readers, I'll just rip Gary's content, so please show him some love and go read it over there (then come back!).
If you haven't checked out the "just released" new yellow pages from Amazon.com's a9 you really should. It's very cool. In a nutshell, a9 have already taken more than 20 million street-level photos (what a9 calls block views) of each and every establishment in yellow page directories for 10 U.S. metro area and associated these images with each entry. You can even virtually walk entire blocks. It will be a real attention getter for a9 and perhaps, even useful! It's a must see for everyone but it's far from complete at this point. You can also browse/search the yellow page directory via this url.
Again, check out Gary's wonderful ResourceShelf.
(I'll add that this isn't a new idea -- several European sites already offer this functionality, and a company I can't recall used to have 360 Quicktime's of every intersection in New York, way back in '99 or 2000 (please leave a comment if you remember the name of that site.)
Posted by Nate Koechley on January 28, 2005 at 12:14 PM in Metadata, References, Search, Search Engines, Search Engine Optimization (SEO), Software and Tools, Web Development | Permalink | Comments (0) | TrackBack
2005.01.26
SMS Clipping with Yahoo! Local Search
Send search results to your phone from your desktop.
Yahoo! Local released a new search feature today, allowing you to quickly send clips of search results to you phone via a free SMS text message. You can do this directly from the search results page - no page reload necessary. It couldn't be easier:
Here's how:
From the front page of Yahoo!, click the "Local" tab to toggle the search box, and enter a local search. (Or use http://local.yahoo.com directly.) Search for anything you'd find in a yellow pages, or anything with an address. All your saved addressed from Y!Maps and other Y! sites should be available as locations to search around.
From the search results page (SRP), click "Send to Phone" to send the listing to your phone. It's sent via SMS I think.
The Send interface is straight forward, and let's you enter a phone number, or select a previously used or saved mobile number. (It seems to default to whatever number you've registered with http://mobile.yahoo.com, though that step isn't necessary.)
From the standard SRP view, you can click "View Results on Map" to see them graphically displayed around your search location. (Viewing results on a map is great, and also lets you quickly find nearby parking, ATMs, restaurants -- even nearby public restrooms.)
From this map view, click any of the numbered representations for more information, and the option to "Send to Phone".
Enter the recipient phone number in the same manner as from the SRP list view.
The resulting message looks something like this:
Give it a shot, it's pretty good. (And if you haven't played with Local search, this is the perfect opportunity.)
Congrats to my friends Chris and Jason, who were both involved with the webdev work on this.
Update: Gary Price at Search Engine Watch has an entry on this now.
Posted by Nate Koechley on January 26, 2005 at 12:11 AM in Accessibility, Internationalization, CSS Media Types, Browsers, Gadgets, HOWTO's and Tutorials, Information Architecture, Interaction Design, Knowledge & Content Management, Search, Search Engines, Search Engine Optimization (SEO), Software and Tools, Web Development, Yahoo! | Permalink | Comments (2) | TrackBack
2005.01.20
Beautiful API
This page is beautiful: http://www.flickr.com/services/api/. Every service-based web site should have a page like this.
This is a great way to understand and communicate your functionality. If you can't describe your site in these terms, well, start trying because you should be able to. (You don't have to make it public.)
I'm not here to talk about the benefits of web services and open APIs -- but at least internally, if you can think about your offerings in these clean and explicit terms you'll be much more successful.
We've moved beyond the "If you build it, they will come" days. We're now in the "If you offer it, they will build it" days. This cool map-based Flickr interface was built because the API existed.
Posted by Nate Koechley on January 20, 2005 at 03:33 PM in Accessibility, Internationalization, CSS Media Types, Design, Engineering, Idea, Software and Tools, Web Development | Permalink | Comments (0) | TrackBack
Browser Showdown
Best Icon?
This humorous site hosts a competition between Microsoft's Internet Explorer and the Mozilla Foundation's Firefox browser. All the important details are considered, including Best Mascot.
Posted by Nate Koechley on January 20, 2005 at 03:04 PM in Browsers, Humor, Software and Tools | Permalink | Comments (0) | TrackBack
2005.01.18
Creating Personalized Feeds with Delicious
I have found this a useful way to use http://del.icio.us, the excellent social bookmarking site that is based on tagging.
Let's review quickly. I post all my bookmarks to delicious. They are all viewable by the public. Mine are here: http://del.icio.us/natekoechley. One great thing about delicious is that every page on the site - every node - has an RSS feed. If all my bookmarks are viewable on the web at /username, then the feed of that content is /rss/username.
Looks like this:
http://del.icio.us/natekoechley
http://del.icio.us/rss/natekoechley
The second thing that's great about delicious is that I can quickly and easily annotate my bookmarks with tags. For example, I have bookmarked Industrial Drawings from the Smithsonian. In addition to storing the URL, I have tagged it with the following words: industrial, drawings, smithsonian, museum, design, art, history.
Each tag becomes a node. When you are viewing my total collection of bookmarks, my username "natekoechley" is the node. It is likewise possible to view all my bookmarks for a particular tag, such as
http://del.icio.us/natekoechley/art
http://del.icio.us/rss/natekoechley/art
If you want to widen your view, you can view all "art" bookmarks for everybody on the network:
http://del.icio.us/tag/art
http://del.icio.us/rss/tag/art
There is no limit to the number of tags you can have, either in general or with a single URL.
As you can see, each node - tag - get's it's own RSS feed. This is the functionality that creates my personalized feeds.
Reduce Email with Personalized Feeds
If you're like me, there are a couple people in your life that you want to send links too. For me that's my girlfriend Aimee and my family. Email isn't perfect for this -- even with family, too many urls can quickly feel like spam. A blog isn't perfect either; links for family and close friends are often boring, in jokes, or off-topic to a wider blog audience. My solution is to use tags and RSS in http://del.icio.us, in conjunction with an RSS aggregator -- My Yahoo! works perfect for this.
Step one is to flag content that they'll like. Tagging makes this super easy, I just create person-specific tags with the format, "attn:aimee". (Use any convention you want; the colon isn't important either, a hyphen, prior or other mark will work fine.)
With sites tagged, the special tags will begin generating RSS feeds. Any aggregator will work of course, but for family I had success recommending My Yahoo!. Now, when every my family checks their My Yahoo! page, they'll see any new links that I flagged for their attention.... To me, this is ">100% Awesome.
While I don't think that RSS will replace email any time soon, this is a great way to remove some unnecessary noise from the inbox while still maintaining intimate and personal relationships.
Disclaimer: I saw the "attn:xxxx" syntax on another site, it is not my original idea. Unfortunately, I haven't been able to re-locate the source. Please send me and help me locate any prior work on this approach, so that I may give proper credit. Thanks!
Update: Here is an earlier mention of this technique, though this still isn't the place I saw the idea first. Thanks for pointing this out in the comments Brian. [2005.01.19 12:01:00]
Posted by Nate Koechley on January 18, 2005 at 01:58 AM in Blogging, RSS, HOWTO's and Tutorials, My life..., References, Social Networking and Community, Software and Tools, Web Development | Permalink | Comments (4) | TrackBack
Great Firefox Resources
Here are two great sites reviewing tips, tricks and extensions for the Firefox browser from the Mozilla Foundation. (You are using Firefox, right?)
First is the thorough article from Scot's Newsletter. Well written, it includes Firefox Extension Recommendations and Firefox Customization Recommendations. The extensions are grouped by type, including "tab-browsing" and "UI-fixing", as well as broad groups for "tried 'em, like 'em" and others.
The second article is "Secret's of Firefox 1.0", from Windows Secrets Newsletter. This one is focused on tweaks available through Firefox's about:config interface. Check it out for many speed tweaks.
(both via)
Posted by Nate Koechley on January 18, 2005 at 12:57 AM in Blogging, RSS, HOWTO's and Tutorials, Software and Tools, Web Development | Permalink | Comments (0) | TrackBack
2005.01.13
More Bits, More Browsers
Keeping up with the 64-bit server, Microsoft has released (last month) a 64-bit version of IE6 for Windows Server 2003 SP1/x64. The server will ship with both the 64-bit and the 32-bit versions, with the 32-bit connected to most of the UI entry points.
We found that in our own every day use of the 64-bit client, the 64-bit browser was difficult to use because web sites hadn’t authored common controls for 64-bit clients.
No word yet on any rendering implications.
Posted by Nate Koechley on January 13, 2005 at 08:43 AM in Browsers, Engineering, Software and Tools | Permalink | Comments (1) | TrackBack
2005.01.11
Yahoo! Desktop Search Launched
Yahoo! Desktop Search launched this morning (via). YDS is based on X1, which until now has been an $80 to $100 piece of software. I've been using X1 since January or February 2004, and it's great. As I wrote in a testimonial last March 5th,:
It's wonderful, and will change how you think about your information. ... It doesn't matter where the message is, you can always find what you want in ... 2 seconds. ... I've recommended it to everybody I know and work with. Find any email in about 2 seconds.
This product is terrific, and only has competition from Copernic as far as I'm concerned. Once YDS is extended to search the all the user's content on the Yahoo! network, in addition to the desktop and web, then it will have no peers. (Yes yes, those are famous last words.)
Why is it so good?
Unlike some of the other desktop search tools out there, YDS indexes over 200 file types. Uniquely, it provides instant previews of all of them -- with your search terms highlighted -- right within the program. It does this for .doc, .mp3, .pdf, .gif, .ppt, .xls and many more.
Beyond those "technical specs", the interface and overall experience set it above the crowd. YDS does not use the Web Search model (single search box) for the desktop like several other products on the market. Instead, it provides many search boxes so you can narrow by date, file size, sender, folder, or any other contextually-relevant field with blazing speed. Also, unlike web queries that don't return results until you submit a search, YDS returns and updates the result set after each letter you type. Believe me, it makes a big difference.
Go download your free copy and let me know what you think. Read more at the Yahoo! Search Blog, or explore the blogosphere.
Posted by Nate Koechley on January 11, 2005 at 03:22 AM in Gadgets, Knowledge & Content Management, Metadata, Search, Search Engines, Search Engine Optimization (SEO), Software and Tools, Yahoo! | Permalink | Comments (0) | TrackBack
2005.01.05
Firefox Tip: Quick Complete URLs
Here is how I enter a new URL into the Firefox Address Bar. It is the fastest way to jump somewhere new (without linking), and it keeps my hands on the keyboard (not the mouse).
Step One ("Quick Complete" starts on Step Three, but this is a bonus tip, and will speeds things up too.):
Press "Alt-D" on the keyboard (hold down both keys at the same time). This will more the cursor to go to the Address Bar, and also select any URL that is already there. With all the text highlighted, the next thing you type will erase what's already there, saving you the step of manually erasing the current URL before typing a new one.
Step Two:
Type the base of the URL. In other words, if you want to go to http://www.yahoo.com, you'd only type "yahoo" at this point.
Step Three: Quick Complete
With just the base entered into the Address Bar, you now press "Control-Enter" to wrap the base with the full .com stuff. By pressing "Control-Enter", the base "yahoo" instantly becomes "http://www.yahoo.com. (You may use the 10-Key number pad's "Enter" key in addition to the primary "Enter/Return" key.)
If you want a .org address, press "Control-Shift-Enter" instead. This will turn "craigslist" into "http://www.craigslist.org".
With those three tiny steps, you'll be flying around in no time. Alt-D, "cnn", "Control-Enter" take no time at all.
Note: On Mac's, replace "Control" with the "Apple" key I think.
Posted by Nate Koechley on January 5, 2005 at 11:38 PM in Accessibility, Internationalization, CSS Media Types, Browsers, HOWTO's and Tutorials, References, Software and Tools, Yahoo! | Permalink | Comments (8) | TrackBack
Finding and Removing Duplicates Songs with iTunes
Finally!
Over the past weekend I downloaded the update to Apple's iTunes software. It's up to version 4.7 now. Whenever an update to anything is released, the questions are 1) What has changed? and 2) Is it advisable to update now?
For the 4.7 update, the answers are 1) Not very much; and 2) Immediately!
According to the release notes, this was a pretty minor release, with just two new items. The first is support for copying photos to an iPod photo. This would be necessary if I had an iPod Photo, but I don't**. The second item is "the ability to show duplicate songs in your library".
I don't know about you, but I often end up with duplicate files in my iTunes library. Sometimes I'll import a CD twice by accident. Other times I'll add files from Limewire or some other source. Not too long ago, I merged external hard drive libraries with a buddy. In all these cases, and many others, it's possible to have an album (or just song) in your library twice.
It always seemed like purging duplicates should have been part of the base iTunes functionality. It doesn't seem like it should be that hard (the files have unique profiles -- name, length, etc.
There were always kludgey ways to do it, but all very time consuming and labor intensive. Now, it's a dedicated menu toggle (under Edit).
Thanks Apple, better late than never.
**I don't have an iPod photoApple Store in San Francisco It seemed nice enough, though I have a little difficultly seeing how it would fit into my life, especially considering how awesome Flickr is.
Posted by Nate Koechley on January 5, 2005 at 08:26 PM in Design, Gadgets, HOWTO's and Tutorials, Software and Tools | Permalink | Comments (4) | TrackBack
Attention.XML
"RSS readers collect updates, but with so many unread items, how do you know which to read first?"
That quote is from the problem statement of Attention.xml. I can certainly relate, and I suppose many of you can. Personalization of website fonts and colors is one thing, but personalized importance-ranking of content is an entirely other thing!
In order to make these value judgments about a piece of content, the judge must know things about the content and it's source. This information about information is metadata.
So what type of information about information is necessary to make these determinations? The Format Summary of Attention.xml gives some clues:
Attention.XML is an XML file that contains an outline of feeds/blogs, where each feed itself is an outline, and each post is also an outline under the feed. This hierarchical outline structure is then annotated with per-feed and per-post information which captures such information as, the last time the feed/post was accessed, the duration of time spent on the feed/post, recent times of feed/post access, user set (dis)approval of posts, etc.
