June 2002
June 25, 2002
Writing IM Bots
Via Boing Boing: How to make your own IM Bots. This tutorial explains how to write a bot for both MSN and AIM using Perl running on Windows/DOS. Perl modules are provided to handle the actual protocols, and sample code is available to help you get started.
Kuro5hin on AudioGalaxy
Kuro5hin are running a fascinating story on AudioGalaxy, written by one of the AudioGalaxy developers who wrote a large portion of the web interface code. It covers the history of the system and its recent demise at the hands of the RIAA, with quite a few technology pointers as well (they used PHP to serve over 90 million hits a day).
Using colour safely
Mark’s latest tip is up: Using color safely. I’m aware of the rule that you should never use only colour as an indicator of something in a user interface, but I had completely forgotten that my own links on this blog were a classic example of that—all that distinguished them from the rest of the page was a difference in colour. I’ve now turned underlines back on for all links except those in the entry footers (which looked ugly with underlines), based on the principle that the text and position of the footer links should be enough to explain their purposes even without the underline.
SitePoint CSS guide
SitePoint have a good new article on CSS layout, which includes some useful tips on how to use position: float
and position: absolute
to create columns on a page, as well as some tips on providing Netscape 4 with only basic CSS rules and an example of a PHP browser detection script.
Oh ffs...
Slashdot: Shocked, Shocked at Payola. This is just tragic. American record companies are all upset about the huge amounts of money they have to spend bribing commercial radio stations to play their music... but at the same time the RIAA are killing off internet radio and p2p file sharing, activities that give bands exposure for free! OK, file sharing allows people to keep the copies they download which is something the RIAA have justification to be cautious about, but killing internet radio and then complaining about the costs of promotion on commercial radio is just farcical.
[... 134 words]Semant-O-Matic
Semant-O-Matic—an experimental blog search engine. This is an impressive technology demonstration. The engine indexes eleven weblogs over the period of four months (March to June 2002) using a technique called “latent semantic indexing” or LSI. A full explanation is provided on the site but this basically means that you can type in a term such as “hobbit” and recieve a bunch of results about related topics (i.e Lord of the Rings) that don’t necessarily have to mention the word itself.
[... 145 words]June 26, 2002
The 5k
The 5k is an annual competition in which entrants must create the most impressive web site in 5k or less. This year’s competition entries are now online and the quality of the entries is even higher than the previous two years. My initial favourite is Wolfenstein 5K, a texture mapped first person shooter implemented in 5119 bytes of cross browser javascript (I tested it in Mozilla and IE6, and the author claims it runs in Netscape 4).
XML in Mozilla
WebReference: XML in Mozilla 1.0. A quick summary of the XML technologies available with Mozilla 1.0, code samples not included.
EuroPython starts
EuroPython 2002 kicks off today, and the EuroPython site is hosting an interview with Alex Martelli (comp.lang.python regular and author of the soon-to-be-released Python Cookbook). I haven’t found anyone who’s blogging the conference yet though.
Slashdot on XWT
Slashdot has a story on XWT (mentioned previously). Adam Megacz, the author of the system, does an excellent job of defending and explaining the concepts of XWT in the discussion thread attached to the article.
PHP auto class inclusion
When developing PHP applications, I usually have a classes directory somewhere in which I keep all of my PHP classes ready for inclusion. I name the class files ClassName.class.php
. Normally I have a common.inc.php
file that is included in all of the scripts in my application and requires the classes needed by the application, but today I wrote a few lines of code that saves me from having to alter that file every time I write a new class:
Use real links
Day 13: Using Real Links (or why you shouldn’t use javascript:
). I’m ahead on this one—Scott Andrew convinced me of the dangers of javascript:
a month ago and I designed my comments system with this in mind.
Cetus links
Useful resource: Cetus Links—18,244 Links on Objects & Components. I found them via their Python page, which in itself lists over 200 Python resources split in to categories.
Enterprise Application Architecture
Enterprise Application Architecture by Martin Fowler: A fantastic book on Object Oriented patterns and how they can be applied to large software projects. The book is available on the web as a work-in-progress and I can safely say I’ve never found an online resource that has taught me more about software design. Literally 24 hours after finding it my head is swimming with design patterns, domain models and relational database mapping techniques, and I’ve already started using some of the patterns in my latest project. A big thanks to Captain Proton on the SitePoint forums for pointing it out (and also for helping me understand PHP references a few days ago). I thoroughly recommend this to anyone who is serious about learning Object Oriented design, or indeed any OO-capable language.
Warchalking
Warchalking now has its own website: Warchalking.org. Warchalking is one of those brilliant ideas that quickly takes the ’net (or at least parts of it) by storm. The basic idea is a set of symbols which can be chalked on walls in areas with a wireless network node to alert other geeks to the availability of bandwidth. I’d go in to it further but the site has as much information as anyone could possibly want on the subject.