Fit But You Know It (Remix)

Been listening to the b side version of “Fit But You Know It” by the Streets a lot (featuring Kano, Donnae’o, Lady Sovereign, Tinchy Stryder). Check it out, I think it actually might be better than the a side. Can’t find the lyrics anywhere on the web so here’s my best stab, mail any corrections to streets@bluebones.net:

Updated 19 July with the correct lyrics from Funmilola Thomas.

Fit But You Know It

You’re just too damn vain for me girl
Playing in a different league from me girl
I ain’t even trying to speak girl
You ain’t playing right

You’re just too damn vain for me girl
Playing in a different league from me girl
I ain’t even trying to speak girl
You ain’t playing right

Kano:
Once upon a time I was on a chick
She was on ‘im but I knew that she was full of shit
She knew she was fine, she knew she was fit
I linked her, she said she was on, but she was on my dick

It was all a game, it was all a trick
I’ll never fall for it again, that’s out of order b’
I should’a cooled it, but now I’m cool
I boom, bounce back but a fool, old school, watch her come running back

I ain’t a player, I crush a lot
I’m like pull a lot
Plus I got like a hundred gash
And you ain’t one of em

I like to have fun when I’m done with em
Plus I knows you like my songs cos you was humming em
But you’re a teaser playing games cuz im a cheater
You really think you’re the 2004 Mona Lisa

You ain’t Beyonce
You ain’t either
Come down from cloud nine
You really think you’re a diva

You’re just too damn vain for me girl
Playing in a different league from me girl
I ain’t even trying to speak girl
You ain’t playing right

You’re just too damn vain for me girl
Playing in a different league from me girl
I ain’t even trying to speak girl
You ain’t playing right

Donae’o:
Yeah uh
You might be buff and all that
Doing your stuff and all that
But I don’t care enough and all that
Cos I got a girl

And the reason for me being so stush is easily reasoned
Cos for me being heathen, simply it ain’t needed

And just because you got double Ds
Don’t mean you can trouble me
Those sausage lips they’ve got to get, get got some girls not with it
But the guy there he’s hot for it
Go check for him he’s next to kim
He’s into airhead, skin and bone
But that’s not for me I like big and bold

Mike Skinner:
Since I’ve been thinking deeply
I might try to see
About maybe going down to get my ears pierced
It’s a slightly different result for me
Than the one I was unroathed and like usually
I’m told it will prepare my mind surely
For having a wifey four timely a week
You know know how to deal with pain like I fought see
And of course you’re required to buy jewelry

You’re just too damn vain for me girl
Playing in a different league from me girl
I ain’t even trying to speak girl
You ain’t playing right

You’re just too damn vain for me girl
Playing in a different league from me girl
I ain’t even trying to speak girl
You ain’t playing right

Lady Sovereign:
<spoken>
I saw u lookin at me Oi what are you turning away for man diz is shite ur
lyk a sparrow dat dnt work u dnt chirps ur a boy</spoken>

Anyway, yo,

And I fink I’m nice
I know I’m nice
Cos your eyes look twice
Up down left right
Left right left right

Was wearing baggy jeans and a tight top
Cleavage tryin to show im den i saw sumfin in his trousers growin
And I know you was looking at me
Cos the girls behind me were looking off key
Don’ I know this
You’re just a sparrow
That really don’t work cos u not chirps, boy you’re hopeless

Tinchy Stryder:
She’s one of them girls who knows she’s looking more than nice
Even on a bad day I’m looking more than twice
Her eyes – it’s like they’re hypnotising all these guys
Meanwhile although she’s calling shots – no surprise
In her head she knows it – that cos of her they fantasize
So she controls it those mind games with other guys
But I don’t care if she’s buff and that
She ain’t gonna get no love from me
She’s just another girl to me
I’m Strider man thats that

You’re just too damn vain for me girl
Playing in a different league from me girl
I ain’t even trying to speak girl
You ain’t playing right

You’re just too damn vain for me girl
Playing in a different league from me girl
I ain’t even trying to speak girl
You ain’t playing right

Internet Explorer 5 HTTP 500 Error on Ampersand entity in Query String

I’ve got zillions of 500 errors in my log files (well, a handful each day). All are from Internet Explorer 5 on Windows NT (specifically the User-Agent is “Mozilla/4.0+(compatible;+MSIE+5.0;+Windows+NT)”. I’m pretty certain that the problem is ampersand character entities in anchor tag href attributes. It seems that IE5 is barfing on &amp; being used in querystrings rather than just an ampersand. But of course the W3C’s HTML validator won’t have anything but the character entity without telling me off. Is there an answer?

Pixies Live At Brixton Academy

Fucking fantastic. Mind you they could have played a bunch of Wham! covers and I think I would have enjoyed it.

Set list (NOT in order):

  • Caribou
  • Nimrod’s Son
  • Holiday Song
  • Bone Machine
  • Broken Face
  • Something Against You
  • Gigantic
  • River Euphrates
  • Cactus
  • Vamos
  • Debaser
  • Tame
  • Wave Of Mutilation (LP)
  • I Bleed
  • Here Comes Your Man
  • Dead
  • Monkey Gone To Heaven
  • No. 13 Baby
  • Hey
  • Gouge Away
  • Velouria
  • Subbacultcha
  • Winterlong
  • In Heaven/Wave (UK Surf)
  • Into The White

That’s 8/18 from my perfect Pixies setlist. Plenty enough to keep me grinning all night.

Not since Elvis has one for the money been so good.

Richard Stallman and Cory Doctorow at Ravensbourne College

As part of their “Copyright versus Community” event I saw Richard Stallman and Cory Doctorow talking (separately) about various copyright issues.

Stallman lived up to his reputation as an uncompromising proponent of free software (he invented/popularised most of its basic ideas, after all). He gave a simple but effective critique of “Open Source” as opposed to “Free Software”: in a nutshell, that Open Source advocates claim open source is the best way to develop software but that they do not have any ethical objection to closed source. On the other hand, Free Software advocates see closed source software as inherently wrong. So if you develop some closed source software and it is better than the open source software then the Open Source advocates have no objections.

He managed to fit all the cranky behaviours he has become famous for into a two hour stretch: talking about how GNU/Linux should always be called “GNU plus Linux” and not just Linux; correcting each and every use of the phrase “open source” where the speaker meant “free software”; that “piracy” is not the right word for “sharing” or “helping your neighbour”. He even managed to get in a row with Cory Doctorow before his speech about whether it was useful to umbrella patent and copyright issues (he thinks not, Cory thinks so). This is a man that will not bend, even a little, from what he sees as right. You could say that’s unreasonable, but have you given us Emacs, gcc and all the rest?

Cory Doctorow was full of energy despite having jumped off a plane from Barcelona an hour before. He has a great turn of phrase and peppered his speech with neologisms, refusing to talk down to his audience. You could tell he was a writer from the delight he took in really using language. He gave a very interesting speech largely about the history of the “copyfights”. A copyfight being defined here as a situation in which a new democratising technology comes up against the power of vested interests (the printing press versus the Church, player pianos versus US government, VCRs and later P2P filesharing versus the entertainment industry).

The speech was full of vivid anecdote and with real detail behing the arguments. He is clearly a great force for the EFF and I’m glad that he is now their “man in London”. He also showed a real sense of humour. He reminded me of the page in Paul Arden’s It’s Not About How Good You Are, It’s About How Good You Want To Be: “Energy. It’s 75% of it. If you haven’t got it, be nice.”

Ravensbourne College is some kind of “design school” and I think very technically slanted. One guy was drawing a desert nightscape in Photoshop on his laptop while listening to one of the talks. Their domain is rave.ac.uk which shows some kind of “trendy” thinking. Quite how they managed to get these guys down there I don’t know but it was a worthwhile afternoon.

Java Versus C# (Jobs)

A colleague of mine last Summer decided he would learn C# rather than Java because, “that’s where all the jobs are.” I disagreed and showed him the jobserve listings for that day that seemed to prove him wrong. “Well, that’s where all the jobs WILL be.” he replied. Thus was born jobfight.

I think enough time has gone by (10 and a half months) to have a look and see if we can discern any trends. The graph belows shows the statistics I have gathered on UK programming jobs for the keywords “C#” and “Java”:

Graph of C# jobs versus Java jobs advertised on jobserve.com June 2003 to April 2004

It seems that Java is growing faster in terms of total number of jobs and at nearly the same rate as a percentage of the existing jobs.

Programming Languages that are Loved

Paul Graham thinks Java “[smells] supicious”. One of his reasons is:

4. No one loves it. C, Perl, Python, Smalltalk, and Lisp programmers love their languages. I’ve never heard anyone say that they loved Java.

But I think some people do love java. In fact if you put “I love Java” into google you get approximately 2,530 results. “I hate Java” did get 768 results though. This got me thinking about how some programming lannguages are loved, like Perl in 1999 (before the backlash about it being “write-only”). PHP, then Python and Ruby emerged in a similar way from the hacker community and also seem to be loved. I decided to extend my unscientific test.

Results of putting “I love x” and “I hate x” into Google for various programming languages.
language love hate ratio
ruby 1,550 76 20.39
python 820 82 10.0
c# 287 30 9.57
smalltalk 131 24 5.45
php 4,070 772 5.27
assembler 72 14 5.14
ml 30 7 4.29
cobol 43 13 3.31
java 2,530 768 3.29
perl 1,990 670 2.97
haskell 20 7 2.86
c 1,640 582 2.82
scheme 65 27 2.41
lisp 181 78 2.32
sql 164 98 1.67
fortran 17 18 0.94
prolog 21 24 0.88
c++ 311 477 0.65
vbscript 17 30 0.56
javascript 179 432 0.41
vb 522 1,270 0.41

Some languages had to be excluded from the test because their results were just noise: Icon, Joy, Eiffel (apparently there’s a band of that name). Sisal, T-SQL and Intercal (at least) don’t really have enough information even for this rough test (a very small number of “I love”s and no “I hate”s making them appear to be the most popular languages).

Ruby’s outstanding result should not be taken too seriously as it was definitely more polluted by noise than a language like Smalltalk (no one says, “I love Smalltalk” unless they mean the programming language). Nevertheless a quick skim through the results seemed to show that most of them related to the programming language.

Three of the top five languages by love/hate are the “community” languages Ruby (1), Python (2) and PHP (5). Perl, however is way down at 10 (below Java). Of the other languages in the top five, Smalltalk was developed by a small group at Xerox Parc and the rapidly expanding C# is, of course, a Microsoft creation (unless you count the 10 years of prototyping done by Sun).

The languages that inspire much more hate than love are the perennial whipping boys VB and VBScript as well as JavaScript (hatred due at least in part to the terrible environment in which it usually operates – incompatible browsers) and (hilariously) C++ in which an awful lot of desktop apps are written.

Java comes ninth. That’s above Perl in tenth, C in twelfth and Lisp in fourteenth – three of Paul’s “loved” languages.

PHP has the most people willing to proclaim their love (4,070) but also a significant number of detractors (772). In fact, by volume Java lovers are the second largest group (2,530). Java has obviously picked up a lot of adherents since April 2001 (when the article was written).

If you liked this you will probably like the follow up, Does Anyone Love Java?

You may also find my jobs by programming language page interesting.

Clear Print Queue (Windows)

So you cancel a print job using Document, Cancel. But it just won’t disappear and nothing will come out of the printer (all queued behind the “deleting” job). Simple answer: restart the “Print Spooler” service. Either in Administrative Tools (Control Panel or Start Menu) or using net stop "Print Spooler" then net start "Print Spooler" at a command prompt. Easy, but it was driving me mad.

cref Attribute in .NET Doc Comments

I was having trouble finding the correct syntax for the cref attribute of the see tag (and the exception, seealso and other tags) in .NET doc comments. I tried Namespace.TypeName.MethodName and Namespace.TypeName.MethodName(ArgType) to no avail getting the error “XML comment on ‘foo’ has cref attribute ‘Namespace.TypeName.MethodName’ that could not be found.” Eventually I found this in Google’s cache (not on site anymore) that made things clearer:

Use the cref attribute to link to a type or member or the langword attribute to specify a language keyword. The body of the tag is ignored. Cref attributes have the form: a one-letter prefix (N, T, C, M, P, F, E), a colon, and a value. Here are some example crefs:

  • “N:” for Namespaces, example N:System
  • “T:” for Types (classes, structs, interfaces, enumerations), example: T:System.Byte
  • “C:” for Constructors, example: C:Gtk.Button()
  • “M:” for Methods, example: M:System.String.Substring(System.Int32,System.Int32) (the argument list is optional)
  • “P:” for Properties, example: P:System.AppDomain.CurrentDomain
  • “F:” for Fields, example: F:Gtk.TreeIter.Zero
  • “E:” for Events, example: E:Gtk.Button.Clicked

Common langword usages: <see langword=”null”/>, <see langword=”true”/>.

So I just needed to put “M:” on the front of my cref et voila no more compiler warning.

The original page, should it come back online, was at http://www.nullenvoid.com/mono/wiki/index.php/ECMAStyleDocumentation.

Tetris

Everybody knows that Tetris is the greatest computer game of all time. The version I have played so much lately is Tetrablocks which is a very nice version. Sadly the speed of the game is tied to the speed of the machine you play it on which means scores are not really comparable across machines but if you can get more than 350 lines then you’re probably better than me.

The reason I mention Tetris is because there is a documentary about the game showing on BBC4 tonight (2100 in the UK) and replaying through the week.

One of my favourite Tetris things is this 12.8MB MPEG from the 2001 Japanese Tetris Championship (will take at least 8 mins to download from this site, as long as 40 mins over dial up). How fast is that guy?

And finally there’s a great site about Tetris AI.