404 Not Found

404 Not Found


nginx/0.5.4

June 05, 2007

Simon Willison

Unsettling

Unsettling. Sounds like there might be a massive scripted hack going on against out of date WordPress installs on Dreamhost. Check your site.

June 05, 2007 09:16 PM

start.gotapi.com

start.gotapi.com. Lightning fast lookups of API documentation; includes Python docs, YUI, HTML, CSS and lots more.

June 05, 2007 06:05 PM

Nick Burch

nmea_info.py on Series 60 v3 (3rd Edition)

Artem lent me his S60 v3 phone today, so I've been working on making nmea_info.py work nicely on 3rd edition phones. I'd hoped that this would be a mix of changing all my absolute positioning to using a relative size, and selecting the new font.



So, I went through the code, and updated it all to use a relative positioning, based on the screen height required to fit 12 lines on the screen. This bit worked really well, and now all the text appears in the right place, and all the graphics are of the right size.



The snag came when I tried to get the font to be a sensible size. Despite the tiny font size bug being reported over 8 months ago, there's still no sign of a patch. All they need to do is allow you to specify either font=u'Font name' (as now) OR font=(u'Font Name',size) (with the size only having an effect on 3rd edition phones), then then pass that size onto the underlying font object. But, they don't, so the font is unreadable.

Update: The bug is finally fixed! You need to use S60 Python 1.3.22 or later.



Thankfully, I'm not the only person who things that the current python behaviour just won't cut it. So, there's now an un-official build of python for S60 3rd edition, which does the fonts a lot better. It doesn't have a font api that's compatible with older S60 phones, but they have fixed the default fonts (eg normal) to be the right size.



So, with Artem's phone running the un-official python 1.3.18, I was able to get nmea_info.py to render almost the same on S60 v2 and v3. All other S60 v3 users of nmea_info.py should grab the latest version (v22), make sure they have the patched version of python Python 1.3.22, and enjoy!



Update:Python 1.3.22 fixes the bugs, so use that, instead of the patched version.

June 05, 2007 04:24 PM

June 04, 2007

Simon Willison

ITA Software Trip Planner

ITA Software Trip Planner. Super nerdy flight booking search site, operated by the company that provides software to everyone else in the industry.

June 04, 2007 10:14 PM

Victoria Chan

Why you should get a Tin Whistle

I have bought a tin whistle just last week. I highly recommend anyone to get one.

I remember really hating wind instruments when I was a kid, playing the recorder very very badly (so badly I was kicked out of the school band). I never really thought I would one day every be able to play a wind instrument decently. But now it seems I am able to do it with the tin whistle! And I'm really not talented at all. So I am convinced that anyone will be able to play it and with much less effort than I have put in too (which isn't much really).

And it is really cheap. I got mine for 8 quid. You can get them from a music shop. They are just crudely made brass tubing with a mouthpiece, and are so light and hardy, you can carry them everywhere. I think that's the idea.

They are really simple instruments to learn. There are only 2 octaves on the tin whistle, and they typically start on a D note, playing the D major scale (that is Do Re Mi.. but starting with a D instead of a C). The D major scale is one of the most common scales that Irish songs come in. You can also get them in G major and A major scales. But for starters it's best to get D as most tutorials use that.

The songs are really catchy and easy to learn. Lots of repetitions, and can be very lively, like in a polka (the music they dance Ceilidh to). And it is good practice for reading musical notation too, if you aren't too familiar with the musical notation. The tin whistle scores are much easier to read than piano scores as there is just one melody running through it. No chords etc to distract you.

I have found this really useful tutorial on YouTube which has made learning the tin whistle a breeze. The links are below.

Afterall Guinness is such a great beer. Surely everything Irish is yummy.

Links:

  1. How to play the D scale on a Tin Whistle
  2. Ryan Dun's Irish Tin Whistle YouTube tutorial (VERY useful)
  3. Whistle This, a repository of tin whistle music and scores

by Victoria at June 04, 2007 09:17 PM

Simon Willison

jsjuicer

jsjuicer. Another conditional comment respecting minifier tool, this time in C++. Ships with a command line utility, unlike JavaScript::Minifier.

June 04, 2007 05:57 PM

JavaScript Minifier that doesn't break code

JavaScript Minifier that doesn’t break code (via). Perl re-implementation of Douglas Crockford’s classic JSMin that doesn’t clobber IE’s conditional comments, by Peter Michaux.

June 04, 2007 05:44 PM

June 02, 2007

Simon Willison

The Zonetag API Goes Public

The Zonetag API Goes Public. Awesome new API from YRB—given a cell tower ID can provide both a location and a list of suggested tags, based on data collected by ZoneTag.

June 02, 2007 12:53 AM

Oxford Geek Night 3

Oxford Geek Night 3 (via). The date for your diary is July 25th (moved from the 18th).

June 02, 2007 12:38 AM

June 01, 2007

Jonathan Leighton

Restflection Rails Plugin

I’ve just finished writing up the documentation for my latest Rails plugin, Restflection. Probably none of it makes sense because it’s a quarter to 1 and I am bloody tired. But on the off chance it does make sense, here’s the blurb:

“Restflection is a Ruby on Rails plugin designed for use in applications which follow RESTful conventions. It allows you to extract information about resources without necessarily knowing what they are called.

For example, instead of writing article_path, you could write restflect(:member).path. Why would you do this? You may have shared code, for instance layouts or library files, which need to make use of a resource, but because they operate on any number of different resources, they cannot refer to them by name. The plugin could also be of use to other plugins.”

by Jon at June 01, 2007 11:50 PM

Jon Hicks

Recent Work: Mahalo

Mahalo

Logo design for Mahalo, the human powered search engine. Hicksdesign also consulted on the site design as well as creating its icons. ‘Mahalo’ is Hawaiian for ‘Thank you’, and various related imagery was explored before settling on the Plumeria flower from a Leis.

by Jon Hicks at June 01, 2007 09:46 PM

Simon Willison

Deploying a Django app on the desktop

Deploying a Django app on the desktop. Silver Stripe used cx_freeze to package their commercial agile project management Django application as an easy to run Windows executable.

June 01, 2007 09:45 PM

Jon Hicks

Recent Work: ReallyWorried.com

Really Worried.com

Logo design for ReallyWorried.com (site design by Stuff & Nonsense). Created using a hand-drawn version of Expletive Script, coupled with Omnes Black.

by Jon Hicks at June 01, 2007 09:35 PM

Simon Willison

Making use of the XRDS

Making use of the XRDS. One of the better explanations of XRDS: provides some background information and isn’t too long.

June 01, 2007 09:35 PM

How Ads Really Work: Superfans and Noobs

How Ads Really Work: Superfans and Noobs. My variant on this idea is to serve ads only on content that’s at least 6 months old. I’ve made $473.98 since January.

June 01, 2007 09:10 PM

Launching Expectnation

Launching Expectnation. Edd’s conference organisation software. I was a reviewer for XTech and the process was completely painless.

June 01, 2007 08:55 PM

Nick Burch

iTunes Plus

In case you hadn't heard, Apple have finally released iTunes Plus, which is what they've called the DRM free, higher bitrate files from EMI artists. I have a feeling it's just US iTunes for now, but as that's the one I use, it's not a problem for me :)



I gave iTunes Plus a quick whirl today. After an iTunes upgrade, there was a new entry on the store homepage for iTunes Plus. Clicking this took me to a new portal, which told me that none of my existing music could be upgraded, and then told me about the music that could be bought as iTunes Plus files.



After a quick browse, I selected a couple of albums. One was $8, the other $10, so that's under a tenner for two DRM free albums, not bad. They downloaded pretty quickly (though they are twice the size of DRM'd iTunes files), and played in iTunes as normal.



However, I don't normally use iTunes for listening to my music. So, a quick scp later, and they were somewhere that linux could see. They all had .m4a extensions, which is a good sign (.m4p is the drm'd extension). I fired them up in xmms (using the faad plugin), and they played just fine. xmms even managed to play a whole album without crashing, which is pretty good for it when playing aac files :)



Finally, I tried copying them over to my Nokia N95. This plays drm free aac files just fine (and even has the album art from aac files that'd been de-drm'd from iTunes using qtfairuse). Unfortunately, they didn't work on the phone. When you try to get the metadata, it just says unknown for everything, and it won't play them (just skips over them in the playlist, and marks them with a big red x). Pesky :(



I've given nokia a call, and they've said they'll look into it (but being a weekend, they expect it'll be mid week before they get back to me). For now, I can't decide if I can be bothered to stuff them all through the command line faad re-encoder to get them to work, or just wait for an answer from Nokia. Ho hum.



In conclusion - iTunes Plus is really good, N95 aac support less so :/

June 01, 2007 06:15 PM

May 31, 2007

Garrett Coakley

Clueless

A friend just pointed me towards this fantastically boneheaded statement:

Optimising for search engines such as Google is notoriously difficult when your content is database driven. Although the Televisual Asset TVT pages are crawled and ingested by all common search engines such as Google, this is of little use for searchable archives as they do not have a hyperlinked hierarchy of static pages.

Have they never heard that “URIs shouldn't change”? How about the idea that you should always separate the content layer from the presentation layer?

Someone please tell me how companies like this are still in business?

by garrett at May 31, 2007 08:48 AM

Simon Willison

Review Board

Review Board. VMWare release a slick looking Django-powered code review system, with hooks in to Subversion and Perforce.

May 31, 2007 08:32 AM

May 30, 2007

Garrett Coakley

last.fm acquired by CBS

From BBC technology news.

Social music site Last.fm has been bought by US media giant CBS Corporation for $280m (£140m), the largest-ever UK Web 2.0 acquisition.

...

As part of the deal, Last.fm's managing team will remain in place and the site will maintain its own separate identity.

by garrett at May 30, 2007 11:38 AM

May 29, 2007

Natalie Downe

links for 2007-05-29

by natbat at May 29, 2007 07:23 PM

Jon Hicks

Google Reader and Bloglines themes - it's over to you.

(Last Google Reader theme post, I promise)

Before now, I’ve felt quite protective of my site skins, and have always stated “Feel free to modify the CSS to suit your own tastes, but please don’t redistribute”. This stems from vanity to be truthful – I spend a long time creating these themes, and don’t want other people getting the credit!

That was how I used to think though. As time goes on, I feel like I’m becoming more communist open when it comes to the web. Besides, I have little time to update the themes, and carry out feature/bug requests, and they’re both at a point where I’m happy with them. Sure, there’s so much you could do to them, but the original intention was to create something for myself. Which is where you come in.

These themes are now both “do what you like with them”. Take out the bits you don’t like, put in new bits, whatever. Feel free to re-distribute them anywhere you like, whether slightly tweaked or massively altered. They’re yours to do with as you please! Give them a good home and let me know what do with them (hopefully something better!)

downloads

Google Reader Theme

Bloglines Theme for Webkit & Opera

Bloglines Theme for Mozilla

Finally, to answer a much-asked question I don’t have plans to do a GMail or GCal skin, but you never know.

by Jon Hicks at May 29, 2007 04:03 PM

Jonathan Leighton

Oxford Geeks Mashup

Natalie Downe and Simon Willison have just uncovered oxfordgeeks.net, which is a mashup of Flickr, Upcoming, a mailing list and a planet (the blog aggregation kind!) It’s looking good, and hopefully might encourage me to blog a little more. Natalie is the mastermind of the highly popular Oxford Geek Nights.

by Jon at May 29, 2007 11:12 AM

May 28, 2007

Matthew Westcott

Samplepack - Spectrum AY sample playback made easy

I’ve used a fair bit of sampled sound in my recent Speccy productions, and when you’re using a cross-assembler like Pasmo that lets you shuffle PC-sourced data around in the Spectrum memory without really thinking, it’s easy to forget what a big deal that is. Up until now, high quality* samples have been out of reach of people who would rather not mess around with assemblers… and so, by popular demand, I’ve put together this pack that will let reasonably-competent Basic programmers convert WAV files and play them back on the Spectrum’s AY sound chip. Instructions, source code and example files are included in the package, so go and have a play - if it means more digitised gameshow hosts in the Crap Games Compo, I’ll be happy…

Download Samplepack (ZIP, 73Kb)

* The term “high quality” is, of course, relative. We’re talking 4-bit audio as opposed to 1-bit here.

Update (2007-05-30): Windows users of the world can now rejoice, for Karl McNeil has rewritten the sam2ay.pl script in FreeBasic, neatly avoiding the need to install Perl, and packaged the whole shebang up with other essential tools to do the WAV to TAP conversion all in one go. Download WAV2AY (328Kb)

by matt at May 28, 2007 12:13 AM

May 27, 2007

Natalie Downe

links for 2007-05-27

by natbat at May 27, 2007 07:18 PM

May 26, 2007

Jon Hicks

Ten

Ten years ago today, I had a car to sell

A VW beetle, that was great, but not doing well

Long distance commutes were not it’s forté

So I sought a buyer (this was before ebay)

Who’d love it, care for, it and take it away

A friend of friend was looking for just such a car

She lived in Oxford, which wasn’t too far.

Her name was Leigh and she came from Lenzie

The first sight of her sent me into a frenzy!

She impressed me with her Jaffa Cake tricks

I wondered then if she could be a Hicks?

The deal was struck and the beetle was sold

But was this the end? Fear took hold

I couldn’t wait to see her once more

I called her and explained it was her I adore

That was the event that changed my life

Before a year was out, Leigh became my wife.

XXXX

(apologies for the cheese)

Leigh

by Jon Hicks at May 26, 2007 06:43 AM

May 23, 2007

Garrett Coakley

Community tips from Fortuitous

Sorry things have been so quiet round here recently, but Heather and myself have been busting ourselves stupid trying to get the new version of Scarleteen finished (more on that when it launches). We're not quite done yet but at least the end is in site.

Anyhow, the reason for this post (apart from the apology) is to point out a fantastic article on Matt Haughey's new site, Fortuitous, Some Community Tips for 2007 - Seven tips on how to run a successful community.

Every year or so I write a long post or do a presentation at a conference on the subject of community. Each time I approach the subject, I take what I've already written and add to it with recent things I've learned or learned long before and only recently realized. To prepare for an upcoming presentation, I decided to write down stuff I've learned/realized in the last 12 months. I suspect I'll be revisiting this topic many times on this blog but I wanted to kick off this first foray into community with a list of stuff I've been thinking about recently, but haven't written much about yet.

Matt is the founder of Metafilter (amongst other things) so when he offers up tips about running an online community, you'd better make sure you're taking notes.

by garrett at May 23, 2007 09:59 AM

May 22, 2007

Natalie Downe

links for 2007-05-22

by natbat at May 22, 2007 07:18 PM

May 18, 2007

Victoria Chan

Victoria is Tian Goodnight

I am Tian Goodnight in Second Life. Tian Goodnight is a vagabond who mostly hangs around the beach at Perhaps Patagonia (I have named it after my favourite Kate Clanchy's poem).

Like everyone else, I can't quite decide how she should look, so I keep changing her appearance. At the moment she's adopted the Jap school girl look. ;) Been getting some queer attention..

by Victoria at May 18, 2007 11:37 PM

Jonathan Leighton

Leveraging the power of to_s

Lately I have been defining a to_s method on my classes much more. This may seem like a pretty obvious for some, but I have only recently realised how powerful it can be. Basically, to_s is designed to return a string representation of an object:

class Cookie
  attr_reader :flavour

  def initialize(flavour)
    @flavour = flavour
  end

  def to_s
    "A #{flavour} cookie" 
  end
end

Cookie.new("chocolate").to_s #=> "A chocolate cookie"

The to_s method is automatically called when using:

  • Ruby’s in-built puts method
  • String interpolation (when you have "some text #{some.code} more text")
  • <%= cookie %> in ERB (“RHTML”) templates

By using to_s, you are allowing the object to decide how it’s described. This means your code needs to know less about the implementation of that object and is more resistant to change. To continue the example above, imagine we want to print out a list of cookies, and did so by directly accessing the flavour property:

cookies = [ Cookie.new("chocolate"), Cookie.new("strawberry"), Cookie.new("banana") ]
cookies.each { |cookie| puts "A #{cookie.flavour} cookie" }

This is all well and good until we decide to offer sugar-free cookies. After adding in the extra attribute to our Cookie class, we have to modify the display code to include the sugar-free status of a cookie:

class Cookie
  attr_reader :flavour, :sugar_free

  def initialize(flavour, sugar_free = false)
    @flavour, @sugar_free = flavour, sugar_free
  end
end

cookies = [ Cookie.new("chocolate"), Cookie.new("strawberry"), Cookie.new("banana", true) ]
cookies.each { |cookie| puts "A #{cookie.flavour} flavoured#{', sugar free' if cookie.sugar_free} cookie" }

Now we’ve not only had to modify code in two different places, but it’s messy, with an inline conditional. If we had used to_s, we could have added the extra attribute into the Cookie class, modified to_s to take note of it and been done with it.

Another use of to_s is to print out other objects referenced by the current object. Imagine, for some reason, a cookie’s flavour needs to be represented by a separate Flavour object and we need to get at just the flavour. We could use code like this:

puts cookie.flavour.name

The problem with this is it violates the Principle of Least Knowledge; the display code needs to know a cookie has a flavour which has a name, rather than just knowing it has a flavour. Putting the above observations aside, we might choose to combat this through delegation:

class Cookie
  def flavour_name
    flavour.name
  end
end

This is a perfectly valid approach, but it might be more appropriate to simply define to_s on the Flavour class, and use:

puts cookie.flavour

A word of warning, however. When deciding between the two, it is important to think about what information you are really trying to get at. If you genuinely want the flavour’s name, use flavour_name; just because to_s returns the name now doesn’t mean it always will. However, in any case where a string representation of an object is desired, to_s is great.

by Jon at May 18, 2007 09:37 PM

May 17, 2007

Natalie Downe

links for 2007-05-17

by natbat at May 17, 2007 07:18 PM

May 15, 2007

Natalie Downe

links for 2007-05-15

by natbat at May 15, 2007 07:22 PM

May 14, 2007

Victoria Chan

Bye bye Wordpress!

This site is now running on Drupal! Bye bye Wordpress! It was good while it lasted. But Drupal is more cool, sorry.

I ended up spending weeks working on this because of the steep learning curve for Drupal. Also because I was being indecisive about the features and the designs.

And I didn't follow the mockup in the end too, because I realised I was missing a good many things in the mockup, such as a search box. I might still move things around abit or replace this theme.

And this site is hand-pasted! Yes, every blog post and comments, hand-pasted. No slacking off here.

Sorry about the bugs, if any. Do write me (contact at victoriac.net) and let me know. I'm still trying to tie up the loose ends.

Hope you'll like this... if not, there'll be another theme soon. Hopefully I'll get the user registration stuff tidied up so users can select their own themes soon.

Enjoy!

Xxxx Vic

by Victoria at May 14, 2007 06:15 PM

May 13, 2007

Jon Hicks

Google Reader Theme 0.9

Almost there!

v0.9 ‘The Newbury’

  • New: All sidebar selections are styled the same
  • New: Current entry is highlighted, in a similar style to the default theme, but lighter and more minimal.
  • Fixed: Last rounded corner box bit still poking in from last version
  • Fixed: Colour for read feeds looks better
  • Fixed: Feeds not in tag folders aren’t indented the same as those that are. (added 13/5)
  • Fixed: titles showing up under unread counts (added 13/5)

Installation

Download gReader.zip, or if you use Stylish with Firefox/Flock, you install directly into Stylish from userstyles.org. There are 2 versions, one for Mozilla browsers and one for WebKit & Opera.

Firefox & Flock

Once you have the Stylish extension installed, you need to install 2 styles. OS X Google Reader and OS X Spinner (they had to be split to avoid the 64k file limit on userstyles). You should be able to update via Stylish > Manage Styles > Find Updates.

If you don’t want to use Stylish, follow the Camino method below.

Camino

Add the following @import rule into the top line of your /Library/Application Support/Camino/chrome/userContent.css file, (or create it if it doesn’t exist).

@import url(greader.css);

Place the greader.css file in the same chrome folder. The theme will be applied when you restart Camino.

Safari

Once Safaristand is installed, place the greader.css file in your user/Library/Safari/Stand/UserStyleSheets folder. Then visit Google Reader, go to SafariStand > Settings > Site Alteration. Add the site, enable Site Alteration and choose the greader file from the list. Make sure the matching pattern is just www.google.com. You may have to empty your cache, restart Safari and refresh before seeing any changes!

Omniweb

In Site Preferences > Page Appearance, choose the greader.css file under ‘Style Sheet’. The change should happen instantly!

Opera

Put the greader.css file anywhere you like! Right-click on the Google Reader page, choose "Edit Site Preferences" and select the CSS file through the display tab, under ‘My Style Sheet’. Like Omniweb, the change should apply immediately.

by Jon Hicks at May 13, 2007 07:05 PM

May 09, 2007

Jon Hicks

Doctor Who Season 3 iCal

I’ve been looking for a public calendar to subscribe to for Dr Who Season 3, but can’t find one. So, I made one on Google Calendar instead. I’ll try and make sure the broadcast times are kept up to date!

If anyone knows of a service that creates iCal feeds based on a search for a TV Show, I’d love to hear about it! It’s something that Ben Ward blogged about on backstage.bbc.co.uk but so far I’ve not seen anything more than the RadioTimes saved favourites function. With all these startups, surely someone has dreamed up a ‘watchr’ service? Or is UK TV schedules data only accessible via screen scraping?

by Jon Hicks at May 09, 2007 09:37 PM

Garrett Coakley

This is why brains race

I keep the subject constantly before me and wait 'till the first dawnings open slowly, by little and little, into a full and clear light.

- Isaac Newton

by garrett at May 09, 2007 08:29 PM

May 08, 2007

Nick Burch

[LJ2ME] The trip back

ApacheCon was really good. I got to go to loads of interesting talks, talk to lots of interesting people between sessions, and there was very large amounts of free beer :)



As Saturday was another national holiday (as was Friday, which meant our plan to meet in Dam Square was thwarted by a large ceremony), a lot of the museums were shut, and the rest very busy. So, I ended up spending the morning wandering about the city, before realising just how far south I'd got, and having to walk very fast back into town!



The Thalis pulled into the station 15 minutes early, so I had time to get settled before we left. The journey went well until Rotterdam, when we got stuck behind a broken down train, and just sat at a random station for 35 minutes. It's a good job I had a decent wait in Brussels!



From looking online, it seems that they are about to open a new, high speed line from Brussels to Amsterdam, which explains the shiny new, but un-used track we ran next to a few times. It should knock over an hour off the journey, to about 1.40, which'll be good for next year :)



As I didn't have as long as expected in Brussels, I decided to just stay in the station. On finding a cafe with a power point, I discovered that my dutch adapter didn't work, and had to go and buy another. After that, I sat in the internet cafe charging my laptop, and failed to find a way to buy any time on the wireless in the station.



As I didn't finish charging, after the Eurostar checkin, I tried to find another power point. There weren't any, but I did discover that a few of the Eurostar carriages have power sockets in them! A quick change of seat later, and I had power for the journey home :)

May 08, 2007 08:11 AM

May 06, 2007

JP Stacey

No, Mister Bond: I expect you to I!

I’ve found myself learning a number of interesting facts about iPods this past day or two that perhaps I’d rather not have ever known:

  1. An iPod can be connected safely, via the Y-shaped cable that comes with a dock, to two generic power supplies at once. For instance, the Firewire cable can be plugged into a mains adapter, while the USB cable used to transfer files onto the iPod (and incidentally charge it).
  2. However, this is no longer safe if one of the power supplies is reactive to what you connect to it e.g. a solar/mains-charged, third-party battery pack. In this case, if the pack spots an alternative power supply on the far side of the iPod, it will try to use it to recharge. This will be accomplished through the iPod, which will drain its battery so fast that the case becomes hot enough to fry an egg on.
  3. When the computer at the other end of a USB connection is switched off, it no longer provides power to the iPod, so you only have to worry about currents running down the other connection.
  4. However, this does not seem to be the case with the Firewire standard which, if the computer is connected to the mains, still seems to provide a large thump of power to the device. Or this might actually be a fault, owing to the age of the computer the iPod was connected to.

So, there you have it: if you use an iPod as a bridge between your solar charger of choice and the mains voltage, chances are it will nigh-on catch fire. It’s a rather long and drawn-out way of destroying the device, but it has a certain Goldfinger charm to its convolutions. Bring in an experimental death ray or a room that fills with poison gas in twenty seconds and you’re all set to be the next Bond villain.

In a sense I was lucky that my iPod was already showing the archetypal signs of pod wear, as it’s now turned into an unresponsive metal brick: this finally gives me the impetus to free myself from the tyranny of making-do. Anyway, I’m now looking for a new portable music player (money willing) if I can find a suitable device. It really has to be:

  1. Longer-lasting than my iPod (hence Flash- rather than hard-driven?)—the greenness of the product is important for me, and I’d rather just not buy anything than buy a product with a two-year lifespan.
  2. Compatible with Linux on some reasonable level. I hear that anything other than the iPod lets you drop files onto it as if it were a USB hard drive, but that might not be the case.
  3. Probably not made by Apple. Between their environmental policy, their use of sweatshops, and their disdain for their customers, I’m heartily sick of Apple’s use of beautiful design to paper over their moral cracks. I hope to find a company that, while it might be just as badly behaved, doesn’t present its products as a choice of lifestyle or aesthetics.

If anyone has any suggestions then do let me know.

by jps at May 06, 2007 11:37 AM

May 04, 2007

Victoria Chan

How to make an SL Email Dropbox

Here's an example of how to make a drop box in Second Life that allows people to drop notecards into it. The box will then email the note to you.

It's nothing new, but could be convenient for quick copy-paste if you are new to LSL (like I am). Hope it'll come in handy for you!

If you're lazy to copy and paste, you can also visit my SL home at Perhaps Patagonia . There is a freebie box on my land which contains an editable example of this that you can copy.

This example includes:

  1. Sending an Instant Message to someone in SL using LSL's llInstantMessage() function
  2. Sending an email using llEmail()
  3. Using object related inventory functions such as llAllowInventoryDrop(), llGetInventoryNumber(), llGetInventoryName(), llGetInventoryCreator()
  4. Reading a notecard using llGetNotecardLine() and the dataserver() state
//---------------------------------------------

// --- DESCRIPTION: Dropbox that sends dropped notecard as email to owner

// --- CODER: Tian Goodnight (http://blog.victoriac.net)

// --- RELEASE: Version 1.0

// --- DATE: 03 MAY 2007

// --- SL: Sentinel(12, 88, 21)

// --- INSTRUCTION: Edit 'myEmail' variable to update to your email address

// --- IMPT: Make sure that the permission of your email dropbox is set correctly so no one can copy it! (Unless you want them to!).

// --- COPYRIGHT: Feel free to modify, and redistribute this code, but please mention me somewhere and provide a link to my url!

//---------------------------------------------



//configuration variables

string myEmail = "youremail@yourhost.net";



//holder variables

string senderID = "";

string senderName = "";

string notecardName;

integer notecardLine = 0;

key notecardQueryID;

string thisMsg = "";



default{



    state_entry(){

        senderID = "";

        senderName = "";

        llSetText("Don't be shy,\n leave me a note?", <1,1,1>, 1);

        llAllowInventoryDrop(TRUE);

    }



    touch_start(integer total_number){

        //IM toucher with instructions

        llInstantMessage(llDetectedKey(0), "Drop me a notecard by dragging it into me from your inventory.");

    }



    changed(integer mask){

        //move to next state if notecard is dropped

        if(mask & (CHANGED_ALLOWED_DROP | CHANGED_INVENTORY)){

          state emailNote;

        }

    }



}





state emailNote {



    state_entry() {

        llSetText("Sending...\nThis will take a couple of minutes...", <1,1,1>, 1);

        llWhisper(0, "Hang on there! Sorting out your notecard... This will take a couple of minutes.");

        llAllowInventoryDrop(FALSE);



        if(llGetInventoryNumber(INVENTORY_NOTECARD) > 0 ){

            //get latest notecard

            notecardName = llGetInventoryName(INVENTORY_NOTECARD, llGetInventoryNumber(INVENTORY_NOTECARD) - 1);

            notecardQueryID = llGetNotecardLine(notecardName, notecardLine);

            notecardLine = 0;



            //get notecard creator info (not neccessarily is sender)

            senderID = llGetInventoryCreator(notecardName);

            senderName = llKey2Name(senderID);

            thisMsg = "Notecard titled: "+notecardName+ "\nFrom: " + senderName + "(" + senderID + ")" + "\n\n";

        }else{

            //not a notecard

            llWhisper(0, "My sources say that wasn't really a notecard. Try again?");

            state default;

        }

    }



    dataserver(key query_id, string notedata) {

        if (notedata != EOF) {

            //Concatenate message

            thisMsg += notedata + "\n";

            ++notecardLine;



            //get next line

            notecardQueryID = llGetNotecardLine(notecardName, notecardLine);

        }else{

            //send concatenated email

            llEmail( myEmail, "SL Notecard: " + notecardName, thisMsg );



            //say thanks

            llWhisper(0, "Ta! Your note has been emailed to Tian.");

            state default;

        }

    }

}

If you are completely new to LSL, here's a screenshot to help you with. You basically just create an object and when editing the object, at the object's inventory tab, select 'new script'. Then edit the script and copy and paste the above code into it.

And here's one I made earlier:

by Victoria at May 04, 2007 11:06 PM

Am I interesting or not?

If a tree falls in the forest, and no one hears it fall. Did it fall?

If I am interesting, but no one knows it. Am I interesting?

No. That will just make me narcissistic.

I have a pithy bad feeling in my chest from being unappreciated, misunderstood. People these days are so unforgiving and so swift in passing out judgement, stereotyping you based on your one moment of uncoolness. I do that to people sometimes too. I know.

The thing is, we're all multi-faceted and mutable. I'm sure that like myself, most people have wondered at some point if they have bipolar personality disorder or if they are too temperamental. But we should not always be the same person all the time!

This is especially so of younger people who are still discovering themselves, or self-renewing people like myself (like a snake shedding its skin), trying on different beliefs and personalities, like trying on different fashion before one has discovered their personal style. And even when the personal style has been found, people still dress differently every now and then. We're just not static and immutable!

So now, I am feeling uninteresting because the people I want to impress do not find me interesting. But I know I am interesting... I remember feeling smug, feeling too pleased with myself for being interesting. But I'm not so sure when I look into other people's eyes now.

I know the old saying, how we should not let ourselves be affected by what other people think about us. But really, if we are to be perfectly honest, don't we do get such a kick out of flattery and compliments, and admiration? Don't we feel shitty to be criticised or rejected? How unaffected can we be without being self-absorbed and self-deluded? Is solipsism possible?

How do you ultimately know who you are except by looking at your reflection reflecting off an external surface?

by Victoria at May 04, 2007 02:38 PM

May 03, 2007

Garrett Coakley

Bedtime reading

Bedtime reading

Purchase it via the official site and the Drupal Foundation will get some loving in the form of cold hard cash.

by garrett at May 03, 2007 12:11 PM

May 02, 2007

Garrett Coakley

Oxford flickr meet up tonight (May 2nd)

"It's all happening"

Something different today, a public announcement if you will.

For some bizarre reason my subscriber count has shot up in the past few weeks, so as a public service to those of you in the Oxfordshire area, there's a little flickr meet up taking place tonight at the Three Goats Heads in Oxford.

We have them semi-regularly, usually every other month. They're social events, where topics of conversation range wide and free (I suspect Adrian and myself will mainly be discussing episode 20 of Heroes tonight) and you get the chance to share a few beers with fellow flickrites.

There's a thread with more details on the Oxford flickr group, and if you're an Upcoming user you can register your interest on the event page.

by garrett at May 02, 2007 09:00 AM

May 01, 2007

Garrett Coakley

The definition of futility

The results of this search are a classic example of why DRM won't work.

As was once said...

Given enough eyes all bugs are shallow

... and when we're talking about DRM, it is most definitely a bug.

Update (2nd May): Interesting developments overnight. Turns out Digg was removing posted stories about the HD-DVD key, that of course triggered a user revolt, and now Digg has changed it's position. Heh.

I debated about adding the 'funny' tag to the original post, and in the end decided not to. Events last night have made me change my mind.

by garrett at May 01, 2007 09:14 PM

Nick Burch

[LJ2ME] Hurtling across Europe

Despite First Great Western getting me into London 10 minutes late (no suprise there), I got to Waterloo in plenty of time. This meant I got to have a brief chat with a very interesting idea for a gps + mobile phone idea. More on that in a week or so, if I decide I'm going to have time in the evenings for the next couple of weeks to help him code it up.



Onto the Eurostar, find my seat, and start fighting with windows. Since nokia still refuse to support linux for series 60 development, I'm going to have to fight with windows under vmware. However, being windows, it took the whole length of my battery to give it a new virtual hard disk, and install 3 bits of software I downloaded last night. I couldn't even get everything installed, as I didn't notice one bit needs xp, and I just have 2000. Looks like I'll have to find an older version when I find wireless.



The Eurostar pulled in on time to Brussels, but oddly half the shops were shut. I was thus denied a nice sandwich from the health food shop near the cash machine, and I've had to make do with one from the buffet.



Getting the thalis was easy, as the walkway to the platform was very near the eurostar exit. It pulled in 10 minutes early, and there were helpful english speaking platform staff (better than virgin often manages!) The train is very similar to a Eurostar, so the seats are comfy, but there are no power sockets. Maybe virgin have something going for them after all...



So far, the journey has been much more relaxed than flying. I was at waterloo in the time I could've got to heathrow, almost at brussels by the time I would've pushed back (allowing 2 hours for checkin), Antwerp by the time we'd have landed, and I'm going straight to the centre of Amsterdam, so I don't have to get in from the airport, so there'll be under an hour in it. It was about the same price, and I didn't have to queue, trek the length of Heathrow, or anything like that.



For anyone pondering a european trip by rail, seat61.com has all the info you'll ever need.

May 01, 2007 01:12 PM

April 30, 2007

Natalie Downe

links for 2007-04-30

by natbat at April 30, 2007 07:21 PM

Nick Burch

ApacheCon

Tomorrow morning, I'm off to ApacheCon. This year it's in Amsterdam, so I'm getting the Eurostar to Brussels, then the Thalis on to Amsterdam. Should be fun, more environmentally friendly than flying, less stressful, and not take too much longer.



There should be good wireless coverage at the conference venue, but I've yet to decide how much I'll write on dead tree, and how much online. We'll have to see...



I'll be back home by late Saturday (I opted to leave at lunchtime, so I get the morning to do some sight seeing). That does mean I'll miss going to the Reading beer festival, so I'll just have to drink lots in Amsterdam instead :)

April 30, 2007 05:50 PM

April 27, 2007

Jonathan Leighton

Back in the game

A boy with his head out of the window of a train

This is just a quick note to say that I intend to be blogging again – I don’t know how often but certainly to some degree. I have also created a new website at jonathanleighton.com which incorporates both my blog and portfolio, which in turn means I am closing down turnipspatch.com and focussing my efforts on just the one site. As you can see it’s not completely finished yet (particularly the photography and music sections) but I hope to work on that when I get time.

by Jon at April 27, 2007 03:25 PM

April 26, 2007

Jonathan Leighton

The Dresden Dolls at the Roundhouse

Photo of the Dresden DollsWe went to see The Dresden Dolls at the Roundhouse on Friday. It was amazing… words cannot really describe the feeling of standing in a crowd of people all looking at their index fingers pointed to the ceiling, spinning round and round and round whilst singing along to some ridiculously silly drinking song. And that was just one of the support acts. The Dolls themselves were epic and so much work had evidently been put into arranging the plethora of performers, actors, artists and musicians we enjoyed before even seeing Amanda or Brian. I managed to fill my 1GB card with photos, and you can see the better ones on Flickr.

Long live punk rock cabaret!

by Jon at April 26, 2007 11:34 PM

April 23, 2007

Garrett Coakley

Things that make me grumpy

The Earlies -The Zodiac, Oxford

Going to see a fantastic band and there only being around 40 people there. What the fuck was going on people? You had something better to do on a Monday?!

Still, the band were up for a laugh, took it all in their stride, and played their socks off.

Your loss.

by garrett at April 23, 2007 11:45 PM

April 22, 2007

Victoria Chan

My excuses for disappearing

Here's a list of excuses for not updating my blog in months and to assure friends and readers that I've not abandoned this website, or disappeared off the face of cyberspace.
  1. I told everyone in February that I was joining FAWM, and sadly, I had not written a single new song (the crappy ones don't count) since that first one! And hence I had to go into hiding in shame, in case anyone asked.
  2. I was going through a period of low motivation, and shitty mood. It's the ups and downs of life, and that happened to be the down. I really didn't feel like updating my blog or doing anything at all (other than moping around). It's gone uphill again, so it's all better now. No worries.
  3. I was facing some personal issues. I have learnt to cope with it now.
  4. My computer was misbehaving. It turned out the harddisk was dying. I've replaced it since, so it's all working now. But I had to spend quite alot of that "don't feel like doing anything at all" time reinstalling stuff.
  5. I was obsessed with my guitar, and that distracted me from the computer.
  6. I started going back to Second Life and in fact I've bought some land (also have got a new Japanese school girl look for my avatar)! So now, at the time of writing, I am rather preoccupied with living my second life. Will blog about it in more details soon.
  7. I am in the process of moving this entire blog to Drupal with a new look too (as mentioned before in my blog redesign plans). It is a rather tedious process, but the new site will be worthwhile.. if I ever get there.
So don't lose hope in me yet. See you around soon. :)

by Victoria at April 22, 2007 04:00 AM

April 21, 2007

Nick Burch

Fon, and Linux Geekery

Yesterday, I got a new Fon router. It was one of their new ones, a La Fonera. The first thing that surprised me was how tiny it was. It's barely bigger than my mobile, and the same size as my wallet! Natalie described it as cute, and Helen was forced to agree :)



A La Fonera



The La Fonera has a really neat feature that the old router didn't have. It actually hosts two independent wireless networks. The first is your private one, which is by default WPA protected (but can be WEP or Open if you want). The second is the Fon one, which you have to sign on with a Fon username+password to use.



Given that the La Fonera is only €40 (€20 if you know someone with a discount code, I only have 1 left though!), I think it's a really good option for lots of people as a general wireless router. It comes up with DHCP on the outside interface, has WPA for your private network, and a really simple config interface. Then, as a bonus, you get access to the rest of the Fon network. A tiny, well built 802.1bg wireless router that's also part of a global wireless network, all for about 20 quid. Get yourself one now!





With the new Fon router in place, I re-flashed my old Fon router (a chunky Linksys WRT, with a 5 port switch). A little bit of configuration later, and I had it configured as a normal switch + wireless access point, which is also ready to be a gateway if I plugged my ADSL router into the internet port. This meant I could retire an old ME102 AP, and my switch.



So, I now have a linux powered DLink ADSL router, a linux desktop, a linux laptop, a linux switch / wireless AP, a linux Fon router, and a linux powered DVD player. Just the Wii and my phone that don't run linux!

April 21, 2007 03:14 PM

April 20, 2007

Natalie Downe

links for 2007-04-20

by natbat at April 20, 2007 07:20 PM

Garrett Coakley

Hilarious singles ad

When nice people become bitter.

Hi there,

I'm seeking a like-minded woman to share a disasterous 3-9 month relationship with, ending in acrimony, emotional chaos, and possibly legal proceedings.

Hat tip: victoriac

Update, 4th June 2007: Updated the link as the original has gone awol.

by garrett at April 20, 2007 01:27 PM

April 19, 2007

Nick Burch

Wireless fun

In theory, BT OpenReach are going to sort out my ADSL tomorrow. I'd been hoping they'd do it a day or two early, but they don't seem to have :(



The obvious other option for internet at home is to use bluetooth to connect to my phone, then T Mobile (with their £1 for a day's internet access on PAYG). Only snag is that bluetooth dongles are really tiny, and I lost mine in the move :( New one should be here in a few days.



Next up, I tried looking for open wireless networks that my normal wireless AP could see (it's a really old ME 102 b only one, but it still works). It could see one, a FON one, but didn't quite have the signal strength to connect. So, I logged into my own FON router (a Linksys WRT, running Fon's version of OpenWRT), and prodded it a bit. Since it runs linux, I was able to switch it into client mode, and get it to connect to the Fon AP I could see. Perhaps not quite what FON had in mind, but hey!



With it connected, I turned off the usual FON proxy, dns, dhcp stuff etc, then told it to route traffic for my computer (plugged into the internet port) out over the wireless. Some prodding and poking later, and it was. I fired up a web browser, asked for any page, and was redirected to the fon portal. Since I have a FON router that anyone else can use (well, when it's not being a client...), I logged in, and got online for free.



The connection can be a bit laggy, and it is an evil setup, but it works, and I'm online :)



Now to hope I really do get ADSL tomorrow, then I can put my FON router back to its normal state.

April 19, 2007 07:49 PM

April 18, 2007

Nick Burch

[LJ2ME] New flat

With help from Dom, David and Gillian, we moved into our new flat on Saturday. It is a little smaller than the last one, but it is nice, and we've mostly found places to put everything!



It's nice being back in Jericho, and doubly nice to be there with enough disposable income to be able to enjoy it (unlike as a student). While it wasn't that far to Jericho from the old flat, it was past a psychological barrier, so we rarely went. Now, it (and all the nice pubs, shops and restaurants) are just there, so we can enjoy them.



The cycle to the station is quite a bit longer, but still sub 10 minutes. If I haven't got a ticket, I need to brave the traffic and traffic lights on Walton Street and Hythe Bridge Street, which isn't much fun. If I do have one, I can take Walton Well Road over the canal and railway, then the quiet cycle path to the platform 2 entrance, which is a much nicer route.



We're not thinking about having a flat warming (with all our stuff in, it's probably too small), but we might have a bbq later in the year, if we're allowed one on the grass outside the flats.

April 18, 2007 08:05 AM

404 Not Found

404 Not Found


nginx/0.5.4