Entries
Filters: Sorted by date
A royalty free web
Stuart points out that the W3C are seeking public approval for their recently published last-call draft of their patent policy. The email address is www-patentpolicy-comment@w3.org. Show them your support for a royalty-free web.
Microsoft will be around for a very long time...
This story on the BBC describing how Microsoft lost £112 million on the Xbox has been getting a lot of attention later. Here’s a depressing thought: With 40 billion dollars in the bank they could sustain that rate of loss for 85 years without running out of cash. Scary.
Structured procrastination
Thanks to Morbus, I have finally found a time management system that looks like it could work for me: Structured Procrastination.
[... 158 words]Douglas Bowman goes it alone
Douglas Bowman has left Wired, and is striking out on his own with Stop Design, his one man consultancy business. With the Wired redesign Douglas gave a massive and long-awaited boost to the web standards movement by demonstrating once and for all that a large, high traffic site could make the transition to structural markup and standards compliant code. I wish him the best of luck in his new venture, and I look forward to keeping up with further developments via his excellent weblog.
Usability Views
Usability Views (via Zeldman) lists articles from a number of Usability related sites in a variety of different ways, including order-by-most-popular. Popularity appears to be judged by the number of links to that article around the web—I doubt the site is indexing the whole web so could this be another (very clever) application of the Google Web API? Grabbing the number of results for a Google link: query should be easy enough, and would be a great way of judging the popularity of external content. Here’s hoping Usability Views adds a “how this works” page in the near future to satisfy my inner geek.
Funky caching explained
I didn’t take much notice of “funky caching” while reading through Rasmus Lerdorf’s PHP tips and tricks presentation—I saw that it was talking about using custom 404 pages to serve up dynamic content depending on the URL and wrote it off as a hack that, while useful, was fundamentally flawed in that it would add an error log entry whenever a page was served.
[... 208 words]High end CMS vendors in trouble
Licenses Down, Services Up is a fascinating article discussing the commoditising effect of open source software which uses the high-end Content Management market (such as Interwoven, BroadVision and Vignette) to demonstrate how open source is causing real problems for companies that rely on ludicrously high license fees as their main revenue stream. The conclusion?
[... 105 words]Open source web editing
While reading the thread discussing Macromedia’s Contribute over on 37signals I realised something: the web could really do with an open source Contribute style application. Editing full documents is best done in an application—there’s only so much you can do with browser based editing tools (even if you take advantage of IE’s contendEditable or use Flash to build an editor applet). When people are using Word they hit Ctrl+S to instantly save what they working on—show me a browser based editor with the same functionality.
[... 277 words]Opera 7 Beta
Opera have released the first public beta of their new browser, Opera 7. The new version promises to be smaller, faster and have better DOM support than Opera 6. My observations so far:
[... 230 words]Patterns for web sites
Patterns for Personal Web Sites (via Peter)—a fun and (as far as I know) original concept.
DOM inspector tutorial
An Introduction to the DOM Inspector (via Scott Andrew). The DOM inspector is a powerful but little-known tool that comes packaged with Mozilla and can be used to interactively browse through the DOM of both Mozilla interface components and any web page. The article mainly discusses using the inspector to investigate Mozilla internals, but as a web developer I frequently use it to analyse pages and see how they work. It is also great for tweaking other people’s sites in my browser (see my post covering Jeffrey Zeldman’s redesign for an example of this).
Macromedia Contribute
Macromedia Contribute is a cut-down version of DreamWeaver designed for end content providers to add and edit content on a static website without fear of breaking the design. Coverage by Jeffrey Zeldman, Ordinary Life, web-graphics and Aaron Swartz, who asks if this is a return to Tim Berners-Lee’s original vision of a web where contributing is as easy as browsing.
More geek books
A £5 Amazon gift voucher combined with Amazon.co.uk offering free shipping on orders over £39 has lead me to order 3 more books: Information Architecture for the World Wide Web, Don’t Make Me Think! and The Elements of Style. They should arrive on Monday. I wonder if All Consuming can pick up on links to isbn.nu?
PHP tips and tricks from Rasmus
Rasmus Lerdorf has published a PHP Tips and Tricks PDF based on a presentation given at the recent PHPCon2002. The file is a veritable goldmine of useful information, covering topics including optimisation, sessions, security, dynamic image/flash/PDF generation and using Squid and MySQL replication to increase the performance of a high traffic site. Spotted on PHPDeveloper.org.
PHP4 and Apache 2 on Windows
I’m now running PHP 4.3.0pre2 and Apache 2 on my Win98 machine, thanks mainly to this excellent tutorial on installing PHP and Apache 2 on Windows. The PHP manual’s Servers-Apache page also has a bunch of useful installation advice for Apache 2 in the user comments.
Standards compliant Flash
And here it is: Flash Satay—Embedding Flash while Supporting Standards. It involves jumping througg a few hoops but the end result is a nice chunk of standards compliant code that can be used to embed flash movies without invalidating the markup of a page. The article also includes a nice example of how to use the object tag to serve up alternative content—by nesting an image (or other HTML) inside the tag browsers that do not support content with a mime-type of application/x-shockwave-flash will have something to display in place of the Flash file.
Dspace
Dspace (via Swannie) is an open source platform that helps institutions archive, manage and distribute “digital works” over the long term. It appears to be a variant on the idea of a content management system, but with a heavy emphasis on academic works and multiple formats. The system is implemented in Java (with a JSP front end) and uses a PostgreSQL for the metadata (based on Dublin Core) and relataional information. The assets can be stored in a variety of ways (filesystems, WebDAV, database BLOBS are all mentioned) via an abstraction layer known as a “bitstream”. The system was developed by MIT and HP and has gone live for use by MIT’s academic departments. Interesting stuff.
Clean URLs
Handy bookmark for bloggers who wish to validate: cleanURL. It gives you the URL of the current page with all &s replaced with &, ready to be posted in to a blog entry. Unescaped ampersands are one of the most common causes of invalidity on my blog so this is going to come in very handy.
Object persistence
Simon Brunning talks about persistence, and how much more complicated it is now that objects are involved. The best explanation I’ve seen of how objects and relational databases can be used together was in Martin Fowler’s Patterns of Enterprise Application Architecture, but now that the book has been published he has removed the online version. IBM’s DeveloperWorks has a new article up describing persistence management in Python, which talks in details about Python’s native serialization method (pickling) but only mentions ZODB in passing. I agree with Simon—object databases just don’t seem as elegant a solution as RDBMSs. Object databases may provide persistence but they don’t seem nearly as powerful as relational databases when it comes to flexibility of accessing data.
Content to code ratio
Adrian Holovaty has been investigating the content-to-code ratio of various news sites compared to various blogs. Unsurprisingly the blogs win hands down due to the tendancy to use CSS to separate structure from presentation. Adrian has put together a PHP script to calculate the ratio which can be accessed online or downloaded for personal use. Incidentally, from the comments in the code I learnt that PHP’s strip_tags() function neglects to strip the --> at the end of an HTML comment.
URLs matter
Jeremy Zawodny talks about URLs, and describes a recent internal Yahoo discussion over how the URLs for their stock tickers should work. His points in favour of short, simple URLs are particularly worth noting:
[... 121 words]Web services in action
All Consuming is another one of those information-about-weblogs sites, but with a heavy emphasis on books:
[... 252 words]Javascript XML parser
I’ve added Dave Lindquist’s Javascript XML parser to my blog entry form using the code he posted in the discussion on webgraphics. It works an absolute treat—it even pops up an alert message telling me what is wrong with the post (usually ’End tag does not match opening tag’) and won’t let me submit the form until I have fixed the error. The actual XML parsing library is a truly impressive piece of work, despite the lack of documentation. Dave suggests that it is pretty much obsolete now that most modern browsers have a built in XML parser accessible through scripting, but his parser is easily fast enough for my purposes.
Validating weblog entries
webgraphics have an interesting discussion running about the need for a weblog entry XHTML validator. Dave Lindquist suggests using his JavaScript XML Parser to perform validation on the client side, which seems like an excellent solution. I already use PHP’s XML parsing functions on this blog to check my entries are valid XML when I post them (and extract links for use with my pingback client) but additional client side validation would save the round trip to the server. The discussion also covers the idea of using the W3C’s validator to check entries—as soon as they finalise their XML interface (as used by my validator web service) I can see a lot of interest forming in this kind of automated validation.