August 2002
Aug. 1, 2002
CSS selectors tutorial
Since it took me a while to find this page today, here is it for future reference. Westciv’s Guide to CSS Selectors is an excellent explanation of selectors, a key element of CSS. A good understanding selectors makes styling any part of a document possible with less code and more flexibility.
Styles of blogging
There’s a great discussion going on at the heart of things concerning different styles of blogging and the way the format is evolving. The range of formats evident across the blogosphere fascinates me—there are as many different styles as there are blogs, and each blogger’s style is constantly evolving. Personally I want to move towards more of a unique-content-generation model (as opposed to my current link farm) but at the same time my experiments with meta data mean that the more “shallow” content I have the more chance I will get to do interesting things with relationships between entries.
MySQL text limits
Today’s scary discovery: MySQL TEXT fields have a limit of 65,000 bytes. If you insert anything larger than that in to a normal TEXT field mySQL will silently truncate your data without telling you (meaning software checks are probably a good idea). MEDIUMTEXT will store 16 million characters and LONGTEXT can handle over 4 trillion, but this information does not appear to be readily available in the online mySQL manual (although it is hinted at in this table). Something to bare in mind when designing database applications.
LUMS in CSS
I’ve been messing around with CSS today, trying to convert this page to use standards compliant CSS and XHTML while keeping the overall look and feel. My efforts so far can be seen here—I’ve knocked the HTML file size down from 27KB to 7KB (although that doesn’t take the new external CSS file in to account) and it seems to work in Opera, Mozilla and IE on Windows. There is a slight issue at 800x600 (the breadcrumbs dissapear) and it looks terminally boring in Netscape 4 but on the whole it’s come out pretty well.
Ooooooooooh
placenamehere.com: Chris Casciano’s Digital Playground
. I love this design—Chris uses beautiful black and white photos for page backgrounds and carefully positions the main navigational element on each page to fit in with the background image. This is a great example of the new design techniques being made possible by a combination of CSS and creative talent. I just wish I had some of the latter :)
I know I’m bloody well subscribed
It’s the first day of the month. I don’t believe in rabbits, but I do believe in Mailman—I just had my fourth “monthly reminder” email of the day. It beats me why the lists I am subscribed to see fit to email me once a month to remind me of my description—you would have thought the dozens of emails I get from them every day would be enough of a hint. In my opinion this is one default option the web could do without.
CETIS
CETIS is the Centre for Education Technology Interoperability Standards. Their site is regularly updated and contains a wealth of information about a whole range of interesting technologies, including metadata standards and plenty of stuff on web services and XML. It also acts as an interesting insight in to technology plans within the UK’s academic community.
Real World Style
Real World Style: These techniques work. I know, because I use them every day in my real world job.
Mark Newhouse provides a whole site dedicated to CSS tips, tricks and full blown public domain layouts specifically designed to work with Netscape 4 (and Unix machines). This is an invaluable resource for web developers who want to start using modern techniques but still have to cater for an audience with troublesome browser preferences.
Aug. 2, 2002
Using CVS
Harry Fuecks on SitePoint: Harness the Power of CVS for Your Site. I’ve been wanting to get in to CVS for quite a while but I’ve been put off by the lack of a good “getting started” guide. Harry’s tutorial is everything I’ve been looking for—it explains concepts and terminology, describes when you would want to use CVS and shows exactly how to use it on a Windows machine.
W3C recommendations explained
Confused about the difference between W3C Notes, Working Drafts, Candidate Recommendations, Public Recommendations and normal Recommendations? So was I, until I found this handy list of definitions on the official site.
Ooh a mystery...
I hate to be mysterious, but I have two very exciting projects in the pipe line. I don’t even know yet if they will make it to production, but if they do they could be very cool indeed.
Aug. 3, 2002
The Register and browser share
The Register: approximately 25 per cent of readers access our site using non-Microsoft browsers
(mentioned in passing in an article on Alexa). Now for some pure speculation. I can’t imagine that this percentage was nearly as impressive 6 to 8 months ago, simply because 6 to 8 months ago there weren’t really that many serious alternatives to IE—Mozilla was still in beta and most of the other Gecko engine browsers were still pretty shakey. With Mozilla past 1.0 and some great Gecko browsers being built on top of it (Chimera at al) IE is no longer necessarily the best choice. I just wish I had access to some ’real’ statistics to further understand the ways in which the browser market is changing.
Working on some cool new stuff
Slow blogging day today—I’ve been hit by a round of Aquarionics Syndrome ;)
Aug. 4, 2002
First impressions
I’m slowly working my way through both Eric Meyer on CSS and CSS: Separating Content From Presentation. Initial impressions are that they were well worth the money—the two books complement each other very well indeed. Separating Content from Presentation (SCfP from now on) seems to be the more technical of the two—it provides excellent descriptions of the intricacies of the CSS specification and has some superb information on browser differences, with some good advice for web developers who need their sites to look reasonable in Netscape 4. Eric’s book is more flamboyant, with full colour pages and a “project” formula that introduces CSS techniques through a variety of interesting case studies. Full reviews can wait until I have finished reading the two books.
Aug. 5, 2002
Stuart gets slashdotted
Congratulations Stuart on getting slashdotted. How’s the server holding out?
Impressive CSS
Take a look at this page in Mozilla, view the source code and ask yourself “how on earth did he do that?”. It appears to involve very creative use of borders, possibly relating to the fact that a single border in CSS (at least in Mozilla and presumably in IE5/Mac as well) is actually a trapezium, not a line. Tantek Çelik was the project lead for IE 5 for the Mac (and the creator of both the Box Model hack and the High Pass Filter) so general CSS wizardry is to be expected.
So it does have a use after all
text-decoration: blink
spotted in the wild!. Seeing as Hixie so eloquently argued for its inclusion in Mozilla in the first place it’s nice to see this most vital of CSS properties being put to some use.
Aug. 6, 2002
XHTML 2
The W3C have published a working draught of XHTML 2.0. Since the Changes from XHTML 1.1 pages doesn’t appear to have been written yet, here are a few of the most notable differences I’ve spotted so far:
[... 116 words]Top IRC quotes
A fundamental law of the internet is that no IRC quote is ever funny when posted on a web site. The QDB Top 50 Quotes (via Ordinary Life) must by the exception that proves the rule:
[... 80 words]More on XHTML
A few more notes on XHTML 2.0. Tom Gilder (who incidentally has written an excellent series of tips on accessible scripting) has pointed out that the <dfn>
tag is part of HTML4 and corrected my spelling of draft as well :) Meanwhile, a post by Shane P. McCarron to XHTML-L has highlighted a few more interesting points—<applet>
is out (in favour of <object>
, XMLEvents are in to replace the current event model and the href
attribute can now be used on pretty much anything to turn it in to a link. Strangely XLink is not mentioned in the specification.
More CSS
Two more interesting CSS demonstrations—Bullet proof rounded corners and Breadcrumb nested lists. The rounded corners technique is very impressive—it solves a common CSS problem in a way that is durable, cross browser and, well, bullet proof. However, as Mark Pilgrim points out:
[... 165 words]Aug. 7, 2002
XHTML 2 demonstrated
Sjoerd Visscher has published an XHTML 2.0 page that works in IE6, Mozilla and Opera, complete with support for navigation lists and href
attributes on multiple elements. The implementation is very clever—it uses IE behaviors, Mozilla XBL files and Opera’s proprietary link CSS properties to get all three browsers to play nicely (be sure to check out the style sheet). A custom DOCTYPE at the top of the page adds DTD descriptions of the new XHTML 2.0 elements used in the document.
Funky stuff for css-discuss
I think I’ve kept quiet for long enough, so here are some details of the two projects I have alluded to. The first is a database driven mailing list archive for css-discuss. It has just gone in to private beta, so anyone subscribed to the css-discuss list should have an email with the URL, username and password requried to try it out. It has a pretty usable search engine and does some nice threaded views in messages—more importantly, it now contains all 9,000+ messages sent to css-discuss since it launched back in January 2002 (imported from the static Mailman archives). I’ve spent many hours surfing through the archives already and they are a wealth of useful CSS information.
[... 161 words]Smarty 2.30
Smarty 2.3.0 is out, and includes a useful new debugging function and support for assigning template variables by reference. I get a mention in the CHANGELOG for a small bug fix I submitted. Open source at work.
PHP strings tip
PHP Tip: You can access characters within a PHP string using the index of the caracter in curly braces after the variable name. For example, $string{0}
returns the first character, $string{3}
returns the fourth character and $string{strlen($string)-1}
returns the last character. You can assign to individual characters of a string in the same way, so $string{0} = strtoupper($string{0});
will convert the first character of a string to upper case. For more tips on working with strings see the PHP manual and Zend’s useful strings tutorial.
Aug. 8, 2002
Yup this site is for real
Edible.com are a small company based in London that aim to bring you an Adventure in Eating from around the World!
. Which means scorpion lollipops, milk chocolate covered ants and pickled rattlesnakes in a tin (a bargain at £16.50). I’m actually quite tempted to grab some Toffee Scorpions, if only to terrorise my friends at university...
Mike Pletch to Column Two
I spotted Mike Pletch in my referrals this morning. His blog has a clean, readable design and some great content, particularly if you are interested in information architecture and content management. Via Mike I revisited Column Two which is currently documenting an implementation of a full content management system for a client—well worth a read.
Aug. 11, 2002
Benefits of XHTML
Phil Ringnalda is questioning the point of XHTML. The single, huge advantage it has over HTML is that XHTML can be parsed by anything (or any language) with an XML parser. As an example, a few weeks ago I was asked to write a script to grab links from a bunch of HTML pages and insert them in to a database. I solved the problem with a combination of PHP’s strip_tags() function and XML parsing abilities, by killing off every tag that wasn’t an <a> tag and slapping on a start and end element to turn the document in to valid XML—a step that would not have been necessary had the page used XHTML in the first place.
[... 190 words]