I’ve yet to find a cheap and reliable alarm clock loud enough to rouse me from bed in the morning. Fortunately, I already have a laptop with workable (if small and tinny) speakers. All that’s needed to turn it into a loud alarm clock is a little software. Here’s an easy way to do it in Linux:
Posts Tagged ‘Developer’
Removing the new YouTube Search Box
Tim Wintle - December 4th, 2008Update: YouTube appear to have listened to users’ comments, and made a second update in a day – the search box now only displays when you hover over the video.
Here’s what it looks like:
Understandably, many people might want to remove this “feature” – so here’s how:
(The YouTube api has been updated to mention this, so it appears to be a supported method)
- In your embed code, find the url for the flash player (it is in there twice if you are using the standard YouTube embed code)
- Add the parameter showsearch=0 (by adding “&showsearch=0″ to the url)
- There is no step three – the video shouldn’t be showing the search box any more.
The video should now look like this:
Code:
<object classid=”clsid:d27cdb6e-ae6d-11cf-96b8-444553540000″ width=”425″ height=”344″ codebase=”http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0″><param name=”allowFullScreen” value=”true” /><param name=”allowscriptaccess” value=”always” /><param name=”src” value=”http://www.youtube.com/v/4Cq4O_z5Blo&hl=en&fs=1&showsearch=0″ /><embed type=”application/x-shockwave-flash” width=”425″ height=”344″ src=”http://www.youtube.com/v/4Cq4O_z5Blo&hl=en&fs=1&showsearch=0″ allowscriptaccess=”always” allowfullscreen=”true”></embed></object>
I’m sure some people will find that useful when they look at their blogs today …
Tim W
Fun with post-it notes and Use Cases
Tim Wintle - August 10th, 2008After watching a great Google Techtalk on using generative research for systems architecture (Digging Beyond User Preferences by Indi Young), I was inspired to spend some of my Sunday afternoon playing with Post-it notes while thinking over some work I’m doing on our ad network and viral seeding applications.
I’d like to point out that I’m not following her process exactly in the images below…
Here’s what you’ll need:

Three Colours of Post-It notes
A very large piece of paper on the wall, or a large whiteboard
Stage 1:
Come up with a full list of use cases for your application (you do know you’re user’s use cases don’t you?). Pick a colour of sticky note and write them all down.
Stage 2:
Organise all of the the use cases into similar conceptual ideas on upper half of the piece of paper, so if two people are looking for statistics on a particular item (but for different reasons) then those two use cases would be in the same column. Move the columns around so that they each type of user’s use cases are close together.
When you’re finished this stage, you should have a piece of paper that looks something like this:

Stage 3:
Now choose another colour of sticky note and write down the features that your application currently contains. Stick these below the “tower” of use cases which they specifically fix.
Finally, time to do some brain storming over new features if you are in the planning stage, and write theses on the final colour notes (or if you’re in the middle of implementing a feature then put this on the final colour sticky note). Add these in the same way as before.
The idea of this all is to try to draw your attention to which use cases are being fulfilled by the existing system, and which parts may been more thought in the future.
You can also group the columns by the type of user that has those use cases (not shown on the image above). For example, in the above image we actually have five different groupings of use cases, and I’m glad to say that the section that appears to not have features to support it (just left of centre), is the group with only one user, Me, so it’s probably the least important section of the system to get up and running – I have my own external tools to support them.
Just a bunch of buildout changes
Matt Wilkes - July 15th, 2008You may have noticed that version 0.2 of Malthe Borch’s truly excellent JBOT came out last night. We use this in some of our themes, and hence has found its way in as a dependency for a good deal of our recent projects.
I ran development buildout last night and suddenly saw a lot of zope 3 components being downloaded, which if you’ve done it before you know is a recipe for disaster.
It seems one of the new features in version 0.2 (aside from the long-anticipated browser layer support) is it now correctly defines its dependencies. This is a Good Thing™ but it does mean that JBOT now requires you to use fake-zope-eggs in your buildout.
Your zope2install section now needs to look like this:
[zope2]
recipe = plone.recipe.zope2install
fake-zope-eggs=true
url = ${plone:zope2-url}
Not a big change, but it will cause Zope to advertise the packages it provides properly. Incidentally, you also need to do this to try out plone.app.batch, a summer of code project that’s looking for comments for its demo.
Tuesday at Europython
Tim Wintle - July 8th, 2008It’s been an interesting day today, as I headed through talks on topics ranging from large scale python applications and software ideology to methods of inserting TeX-formatted maths into web pages – but here are some of the most entertaining events.
Harald Armin Massa gave another great talk as an introduction to the 5 minute lightning talks – “Is Python ready for Enterprise” introduced the new module ncc1701.py (google code page):
(Sorry about the quality of the image)

Part of this code:
>>>import ncc1701
>>>p = ncc1701.Phaser()
>>>p.fire()
Traceback (most recent call last)
File "<input", line 1 , in <module>
File "ncc1701.py", line 86, in file
raise PhaserNotLockedOnTarget
>>>s =ncc1701.Shields()
...
Despite the initial flaws, in the end we all saw that Python is indeed suited for controlling Enterprise applications.
At the end of the day Hans Rosling gave a very interesting keynote on the world’s economy using some very interesting interactive visualisation software designed for “people who are always being told what to do – young children and world leaders”. Here was one interesting slide:
“Where is child mortality highest?”

Yup, child mortality is higher in professors than in students, and almost as high as in Chimpanzees.
Monday in Vilnius (Europython)
Tim Wintle - July 7th, 2008I am blogging this from the sunny city of Vilnius, Lithuania – the setting for this year’s Europython – straight after Guido’s keynote talk on Python 3000 (via teleconference, and at the end of the day due to the 10 hour time difference).

I’ll definitely say that I have really enjoyed the first day of the conference – especially Harald Armin Massa’s “Discouraging the use of Python” – a tongue-in-cheek look at different ways that “crafty developers” try to sneak Python into software companies, and ways to counter-act them. Here was my favourite example:
Developer:
“With Python, you have to write a tenth amount of the code as with C”
Why this is to be avoided:
“Less code means less programmers, less man-hours spent on your project, and a lower expenditure, which means that as a manager you will end up with a parking space further away from the office – stop it at all costs.”
I also went to two very interesting talks on PyPy, an interpreter for Python (and more) that would take more time to describe than I have now (and more than most would be willing to read through). It was great to be able to ask the developers some questions, and according to their first talk, we should expect production ready PyPy in between 6 and 12 months.
I also enjoyed the talk on “Building an App in a week” – a talk tailored at hacking together a django web site in very fast iterations – with some great tips, mainly under the heading “avoid doing work at all costs”.
If there is one slight problem I would complain about, it is that the wireless network here doesn’t seem to have been prepared for this many developers to all turn up at once with our IRC, email and ssh connections all running constantly during the talks. I heard one person complain that it was taking him 45 seconds to load the Google homepage – but amazingly Guido’s talk seemed to come through fine.
Signing off for now,
Tim

Fractals and lots of Machines
Tim Wintle - May 23rd, 2008After setting up a test hadoop map-reduce cluster for our viral seeding service here at rubber towers earlier this year, I needed to come up with a simple task to run to get my head around the map-reduce programming model.
Stumbling upon this great blog post, I decided to run a task to render a Buddhabrot in glorious detail (6000X4000 pixels).
These images are released under a creative commons non-commercial share-alike licence (click the image for a low-resolution desktop background)

BuddhaBrot by Team Rubber / Tim Wintle is licensed under a Creative Commons Attribution-Non-Commercial-Share Alike 2.0 UK: England & Wales License.
Here is a close-up of the “head” of the brot (the part on the left) in it’s original resolution:

You can download the image scaled down to a desktop background, the high resolution image (not on the site to preserve bandwidth) is roughly 40Mb as a png.
For those interested, the intermediate data (passed between the map and reduce phases) was roughly 250 Gb of raw data. The mapper and reducer were both written in Python, with a single final reduce done off-cluster using PIL (the Python Imaging Library).
UPDATE
You can now download a torrent of the entire, full resolution image.
developer website wins award
Tim Wintle - January 9th, 2008
Ok, ok, so I’m blowing my own trumpet a bit, but it turns out one of my personal sites (social comic book) won “mashup of the week” on mashupawards.com.
I’d like to thank my mother, father, my childhood pets, …















