Entries
Filters: Sorted by date
Using XPath to mine XHTML
This morning, I finally decided to install libxml2 and see what all the fuss was about, in particular with respect to XPath. What followed is best described as an enlightening experience.
[... 576 words]Fun with DHTML and Flash
Travis Beckham’s podLob features 56 experiments in Flash and 19 in Javascript/DHTML. I particularly liked the Flash image transitions. I’d probably complain bitterly I came across that kind of effect on a real site but as experiments they’re fascinating and great fun to explore.
Converting links without regular expressions
I pair-programmed this code with Natalie just over a month ago, and I’ve now added it to my Kansas blog simplified comments system as mentioned earlier.
[... 791 words]Managing Social Software
Moderation is a topic that goes hand in hand with online communities, but despite being a highly complex matter it is rarely given the coverage it deserves. That’s all set to change now thanks to Tom Coates’ excellent new blog, Everything in Moderation. The site’s topic is “creative ways to manage online communities and user-generated content”, and the content posted so far easily lives up to that claim. Of particular interest are the introductory post, the definitions of the four principle types of moderation and a fascinating entry about using stealth moderation tactics to deter abusive posters. Definitely one for the blogroll (at least once it starts pinging blo.gs).
HTMLifying user input
I’ve added a comment system to my new Kansas blog. Since the target audience for that site is friends and family rather than fellow web developers, I’ve taken a very different approach to processing the input from comments. While this blog insists upon valid XHTML and gives very little help to comment posters aside from highlighting validation problems, my new site’s comment system takes the more traditional root of disallowing HTML while automatically converting line breaks and links.
[... 602 words]Lawrence web meetup
My colleague Adrian is putting together a meetup for web designers and developers in the Lawrence, Kansas area on Monday evening. The venue is yet to be decided but we’re looking to book somewhere for dinner with an atmosphere that’s conducive to lively conversation. Likely attendants so far include Adrian Holovaty, Travis Beckham, Anitra Pavka, Dan Cox (designer for ljworld.com, lawrence.com and kusports.com) and myself. If you’re a web developer/designer in the area and this sounds like your kind of thing drop Adrian a line for more information. It should be a lot of fun.
[... 121 words]The Python Web SIG
Python now has a Web SIG. SIGs are Special Interest Groups, each with a target to develop and improve a certain aspect of the Python language, standard library or community. The Web SIG has two purposes: create a plan for improving Python’s web client abilities (including things like the ability to parse CSS) and work on improving Python’s server side capabilities.
[... 289 words]CSS border art and other treats
Chris Hester’s 3D Border Demo 2 (via Web Graphics) is an impressive demo of just how much you can achieve with CSS borders. His Tips & Demos collection is worth browsing through as well; I particularly liked this Shadow Demo, although markup purists may be distressed by the number of nested divs. The sooner we can use the CSS3 ::outside pseudo element to achieve effects like this without the surplus divs the better.
[... 117 words]Kansas Blog
I’ve set up a new blog, A Year in Kansas, to chronicle my adventures during my 11 months in the States. I’m going to keep my two blogs pretty much separate; my Kansas blog is going to be squarely targetted at friends and family who want to know how I’m getting on, while this blog will remain focused on my geekier interests.
[... 158 words]Learning to use Floats
Russ Weakley’s latest offering, Floatutorial, is probably the single most valuable CSS tutorial I’ve seen to date. Floats are one of the most powerful constructs offered by CSS, but they are also the hardest to master. Floatutorial provides a clear introduction to the theory behind floats, then dives straight in with a series of 9 tutorials that take you from using simple floats to align images right up to building a liquid 3 column layout using floated divs. If you haven’t yet mastered floats you owe it to yourself to read this tutorial; if you feel you have mastered them its worth looking through to pick up some ideas. The more tutorials like this the better.
[... 171 words]Practical Unicode, please!
Joel Spolsky has joined Tim Bray in the quest to educate the masses as to the importance of Unicode. Dan Sugalski kicks in as well with What the heck is: A string, a lengthy essay about string handling and why it really is a lot more complicated than you think it is.
[... 237 words]New anti-comment-spam measure
I’ve added a new anti-comment-spam measure to this site. The majority of comment spam exists for one reason and one reason only to increase the Google PageRank of the site linked from the spam and specifically to increase its ranking for the term used in the link. This is why so many comment spams include links like this: Cheap Viagra.
[... 268 words]Firebird URL shortcut tips
I’ve been using these for ages, but in case you haven’t heard about them here are some handy shortcuts involving Firebird’s URL bar:
[... 184 words]Python snippet: ordinalth(n)
Blogged so I don’t lose it (blogging as external memory):
[... 66 words]Yahoo News Search RSS feeds
It’s not a new idea (Feedster has been doing it for a while) but it’s a first for a major search engine: Yahoo are now offering RSS feeds of the results of searches within Yahoo news. The feeds are advertisement free, probably because you have to click through to the news stories to read them in full. I wonder how long it will be before someone starts offering custom feeds like this with advertising in the feed itself? As RSS is an XML format parsing out adverts before they get to the user is a much more obviosu step than ad-blockers in web browsers.
Unstructured linkage
- Tom Gilder: Absolutely fucking nuts
- Get ready for IE changes
- Score Higher in Google Search Engine (and why Google is saving the web)
- High performance XML-RPC
- Juggling with packets: floating data storage (via Ned)
- Taking the Pulse of XML Editing
- Beware the dangers of generic Exceptions
- Blogging for Dollars
- Resign Patterns: Ailments of Unsuitable Project-Disoriented Software
- PatchDayReview.com—Explaining Microsoft’s Weekly Patches in Non-Technical Terms
- XML Application Objects (via the SitePoint Forums)
- Chapter 17 of the XML Bible: XSL Transformations
- Radiohead, as drawn by 5th graders
- Telephone Preference Service, the UK Do Not Call list
PHP’s date() function in Python
In switching from PHP to Python I’m discovering an increasing number of PHP functions that I’ve learnt to rely on but have no direct equivalent in the Python standard library. Often Python simply provides a different way of approaching the problem, but old habits die hard and I’ve been replicating some of PHP’s functionality in Python for my own personal use.
[... 422 words]How I obtained my US Visa
I received my J-1 Visa for 11 months in the US this morning, accompanied by my certificate of eligibility for J-1 status. I promptly cut the certificate in half with a pair of scissors while opening the envelope, but a call to the Embassy has confirmed that it’s still valid and will still get me in to the country.
[... 970 words]Opening times for online forums?
Here’s something I’ve never seen before. The BBC’s Neighbours messageboard currently has a note up saying “This messageboard is currently closed”, with a link to the opening times: 9am until 10pm weekdays, opening 10am at weekends. You can still read the forums but you can’t post anything. This is obviously a moderation tactic to ensure there is always an administrator available to delete offensive material should any be posted—I’m writing about it here because I’ve never seen this approach used before.
[... 158 words]Targetting CSS at IE5
Tantek has created/discovered a new CSS hack, the Mid Pass Filter. This filter allows you to write CSS rules that will only be applied by IE 5 and IE 5.5 for Windows. This is great news, as those are the browsers with the broken box model (provided you trigger standards mode in IE 6).
[... 104 words]Infinite Python Data Structures
Hans Nowak has been churning out some really interesting Python stuff recently. He’s been experimenting with Self style objects in Python (similar in many respects to objects in Javascript), developing Wax, a coder friendly wrapper around wxPython, working on a Python framework for writing text adventure games and most recently experimenting with streams in Python using generators.
[... 168 words]A better way of entering dates
The CreativityGoblin dropped in on me today, and as a result I’ve been tackling the challenge of entering dates in to a web application. In the past, I’ve used DHTML calendar widgets for this purpose (my favourite is Mishoo’s highly configurable, standards compliant JS Calendar) but while widgets like this have a great deal of “wow” factor I’m not convinced that they are the best entry mechanism when it comes to raw user speed. Today’s experiment was partially inspired by PHP’s strtotime function, which accepts a string in a wide variety of formats and converts it in to a time.
On CSS Remakes
I’m a bit late to the party on this one, but Paul Hammond’s open letter to “tableless” recoders caused quite a stir a few weeks back with its extensive list of reasons that recoding someone else’s site in CSS helps no one and can in fact have a negative affect on the CSS advocacy effort (the response to the article is summarised in his follow up post).
[... 356 words]Magazine styles in CSS
Mimicking Magazines (via techno weenie) is a nice set of CSS styled paragraphs inspired by the design of Cosmopolitan. They resize well thanks to intelligent use of ems for sizing instead of pixels.
Master of Fine Arts in Software
Richard P. Gabriel’s proposal for a Master of Fine Arts in Software looks like it’s getting some serious consideration from the University of Illinois (via Sam Buchanan). The idea of programming as a creative art has been around for a long time, so teaching it in this way is in some ways a logical progression. Personally I’m intrigued by the focus on reading other people’s code—“the work of masters”. This is something that been sadly lacking in my BSc course at Bath. Aaron Swartz started a collection of links to Quality Software last year, but other than that I don’t know of any resources dedicated to highlighting “classic” code that deserves to be studied.
mod_python introduction
Introducing mod_python by Gregory Trubetskoy. One of my biggest problems with mod_python is that documentation outside of the mod_python manual is pretty hard to come by. This article is more of an executive overview than a tutorial, but anything that adds to the overall body of knowledge out there concerning mod_python has to be a good thing. I’m hoping to write some material on mod_python best practises at some point in the near future, but I have to work out what they are first. Luckily the project has an active and very helpful mailing list.