This short documentary from Kate Ray does a great job of capturing the promise of the Semantic Web vision as well as some of the skepticism surrounding it. To me, the only real problem lies in our expectation that some kind of reality will congeal as quickly as Web 2.0. The scope of the problems demanding a Semantic Web are broader, deeper, and more sophisticated. Yet, the gravity of the solution domain is much more significant.

The Semantic Web is emerging now. Tools and technologies have emerged in support of it that are useful and usable today. If you’re interested, but unfamiliar with Linked Data and Semantic Web concepts, I highly recommend you review Getting Started with Semantics, a set of lessons from Cambridge Semantics. You might also be interested in some older stuff I created several years ago for Semantic Focus called Introduction to Semantic Web Vision and Technologies, which is still applicable.

Awesome SVG

SVG, or Scalable Vector Graphics, is a XML-style markup driven vector graphic rendering engine for the browser. SVG is supported in every browser, except IE < v9 and Android < v3. Want to know more? Awesome SVG is a community curated list of awesome resources related to SVG.

Being a member of the World Wide Web consortium has taught me a lot about Web standards and the process through which they’re made. But probably the most important thing I’ve learned from membership in the W3C is that you don’t actually have to be a member to participate. The Web really is ours and the W3C process for defining Web standards is very open and inclusive. Watch this video to learn why Web standard are important, then get involved in the ongoing evolution of our Web at

Don’t repeat yourself

Of all the principles of programming, Don’t Repeat Yourself (DRY) is perhaps one of the most fundamental. The principle was formulated by Andy Hunt and Dave Thomas in The Pragmatic Programmer, and underlies many other well-known software development best practices and design patterns. The developer who learns to recognize duplication, and understands how to eliminate it through appropriate practice and proper abstraction, can produce much cleaner code than one who continuously infects the application with unnecessary repetition.

Don't Repeat Yourself

Photo by Steve Smith. CC BY

Google’s new Material Design guidelines

Google Design

If the new Material Design from Google is to influence the design of all Google products, then its visual style and interactive metaphors have a good chance of influencing established web conventions. Google products are prevalent on so many desktops and devices that it’s reasonable to believe their look-and-feel will be influential – especially since they build upon the Flat Design trend that’s already become the new norm. Good designers know that following standard web conventions can help make products intuitive and easy to use. Perhaps it may be wise, therefore, for designers to take some cues from the stage that Google is now setting with these published guidelines.

Representing keyboard and menu input with HTML and CSS

If you’re a blogger who likes to share what you learn, a developer who likes to write good documentation, or a technical writer of any sort, there are two semantic elements in HTML5 that you should get acquainted with: kbd and samp. The kbd element represents user input. The samp element represents sample computer output. You can use these tags to express meaning so that client browsers and search engines might process your document more effectively. But what’s more immediately useful is to style the elements with CSS so that meaning is also expressed visually for your readers. In this post, I’ll show you how.


Google open-sources Material Design icons

ic_android_black_48dpThis October, Google Design open-sourced 750 glyphs as part of the Material Design system icons pack. The set contains icons for media playback, communication, content editing, connectivity, and more. They’re handy for Android and iOS apps in addition to web.


You can find more info at GitHub, view a live preview of the icons or download the icon pack now.

7 factors to consider before refactoring code

At some point every programmer will need to refactor existing code. But before you do, please consider the following suggestions by Rajith Attapattu in "Before You Refactor" from the book 97 Things Every Programmer Should Know. These suggestions may help save you and others a great deal of time (and pain).