Microsoft has a 'cloud platform' (cloud computing is one of these vaguely-defined things involving virtual machines, or software which is happy running in any old place, or something else, depending on who you ask). It is called 'Azure'. As in the colour of the sky. As in, in fact, the colour of the sky without any clouds in it; it is not called 'Azure with occasional dirty-white blotches'.
So in other words, it is a cloud platform without any of that cloud nonsense. Or, huge computers using Windows 2003 Enterprise, which must be set up individually through Remote Desktop! Probably running things like Exchange Server (still, I hear, a bizarrely monolithic and memory-hungry beast).
In other cloudy news, Google has announced that it is now condescending to let people pay to use Google App Engine, which has been knocking about for a while as a Python-with-object-database cloud thing. Very Google, that, really, Python with object database. Python, while somewhat popular, probably lags things like PHP and Ruby in terms of usage, and object databases in particular are terribly alien to your average programmer. If nothing else, it is far easier to make something which looks like it kind of works with a relational one...
Wednesday, February 25, 2009
The stock market assigns blame
Remember the whole economy exploded? Here, the stock market tells us who to blame.
(Hint: It's a 'W'.)
In other news, I am much amused by this dating website ad (from Wonkette):
Very clever. But just more evidence of the US's new segregation; there are also dating sites for conservatives, people with 'Christian values', and so forth. Where will it end?
(Hint: It's a 'W'.)
In other news, I am much amused by this dating website ad (from Wonkette):
Very clever. But just more evidence of the US's new segregation; there are also dating sites for conservatives, people with 'Christian values', and so forth. Where will it end?
Tuesday, February 24, 2009
Handy Blogger-on-Safari keyboard tip
Been driven mad by Ctrl-I keystroke not working for italic, Ctrl-B not working for bold, and so forth in Blogger on Safari?
Turns out that you need to do Ctrl-Opt-I, etc. instead. Opt is the key which appears between Ctrl and Command on Macs, and is sometimes labelled 'Alt'. Discovered it completely by accident. Why this is I'm not sure; it's not like Safari uses Ctrl-I itself, and older versions of the Blogger interface did use Ctrl-I.
Just one of those things, I suppose...
Turns out that you need to do Ctrl-Opt-I, etc. instead. Opt is the key which appears between Ctrl and Command on Macs, and is sometimes labelled 'Alt'. Discovered it completely by accident. Why this is I'm not sure; it's not like Safari uses Ctrl-I itself, and older versions of the Blogger interface did use Ctrl-I.
Just one of those things, I suppose...
Cray, for all your Java needs
From my laptop:
Oddly enough, this wasn't the 64bit (1.6) version; it was the 32bit 1.5 version. (Apple haven't so far shipped a 32bit Java 1.6.
This must terrify people who don't know what virtual memory is (that is, basically everyone)...
Oddly enough, this wasn't the 64bit (1.6) version; it was the 32bit 1.5 version. (Apple haven't so far shipped a 32bit Java 1.6.
This must terrify people who don't know what virtual memory is (that is, basically everyone)...
Sunday, February 22, 2009
100 random books, some of which I have read
Look, it's one of those mildly annoying list meme things! From here (ultimately from the BBC; apparently the average person has read six) with my answers.
42, then. With a couple of embarrassing admissions, but I really can't deny loving Bridget Jones' Diary!
Anything else there that I really should read?
Instructions:
1) Copy and paste into a note of your own. Delete my answers.
2) Look at the list and put an 'x' after those you have read.
3) Add a '+' to the ones you LOVE.
4) Star (*) those you plan on reading.
5) Put in a note with your total in the subject
1 Pride and Prejudice - Jane Austen x
2 The Lord of the Rings - JRR Tolkien x
3 Jane Eyre - Charlotte Bronte x
4 Harry Potter series - JK Rowling x
5 To Kill a Mockingbird - Harper Lee x
6 The Bible x
7 Wuthering Heights - Emily Bronte x
8 Nineteen Eighty Four - George Orwell x+
9 His Dark Materials - Philip Pullman x
10 Great Expectations - Charles Dickens x
11 Little Women - Louisa M Alcott
12 Tess of the D’Urbervilles - Thomas Hardy
13 Catch 22 - Joseph Heller x
14 Complete Works of Shakespeare
15 Rebecca - Daphne Du Maurier
16 The Hobbit - JRR Tolkien x
17 Birdsong - Sebastian Faulk
18 Catcher in the Rye - JD Salinger x
19 The Time Traveller’s Wife - Audrey Niffenegger
20 Middlemarch - George Eliot
21 Gone With The Wind - Margaret Mitchell x
22 The Great Gatsby - F Scott Fitzgerald x+
23 Bleak House - Charles Dickens
24 War and Peace - Leo Tolstoy *
25 The Hitch Hiker’s Guide to the Galaxy - Douglas Adams x+
26 Brideshead Revisited - Evelyn Waugh x+
27 Crime and Punishment - Fyodor Dostoyevsky *
28 Grapes of Wrath - John Steinbeck *
29 Alice in Wonderland - Lewis Carroll x
30 The Wind in the Willows - Kenneth Grahame x
31 Anna Karenina - Leo Tolstoy
32 David Copperfield - Charles Dickens x
33 Chronicles of Narnia - CS Lewis x
34 Emma - Jane Austen x
35 Persuasion - Jane Austen
36 The Lion, The Witch and The Wardrobe - CS Lewis x
37 The Kite Runner - Khaled Hosseini
38 Captain Corelli’s Mandolin - Louis De Bernieres
39 Memoirs of a Geisha - Arthur Golden
40 Winnie the Pooh - AA Milne
41 Animal Farm - George Orwell x+
42 The Da Vinci Code - Dan Brown
43 One Hundred Years of Solitude - Gabriel Garcia Marquez
44 A Prayer for Owen Meaney - John Irving
45 The Woman in White - Wilkie Collins
46 Anne of Green Gables - LM Montgomery
47 Far From The Madding Crowd - Thomas Hardy
48 The Handmaid’s Tale - Margaret Atwood
49 Lord of the Flies - William Golding x
50 Atonement - Ian McEwan
51 Life of Pi - Yann Martel
52 Dune - Frank Herbert x+
53 Cold Comfort Farm - Stella Gibbons
54 Sense and Sensibility - Jane Austen
55 A Suitable Boy - Vikram Seth
56 The Shadow of the Wind - Carlos Ruiz Zafon
57 A Tale Of Two Cities - Charles Dickens x
58 Brave New World - Aldous Huxley x+
59 The Curious Incident of the Dog in the Night-time - Mark Haddon *
60 Love In The Time Of Cholera - Gabriel Garcia Marquez
61 Of Mice and Men - John Steinbeck
62 Lolita - Vladimir Nabokov
63 The Secret History - Donna Tart
64 The Lovely Bones - Alice Sebold
65 Count of Monte Cristo - Alexandre Dumas *
66 On The Road - Jack Kerouac
67 Jude the Obscure - Thomas Hardy
68 Bridget Jones’s Diary - Helen Fielding x+
69 Midnight’s Children - Salman Rushdie x+
70 Moby Dick - Herman Melville
71 Oliver Twist - Charles Dickens x
72 Dracula - Bram Stoker x
73 The Secret Garden - Frances Hodgson Burnett
74 Notes From A Small Island - Bill Bryson
75 Ulysses - James Joyce *
76 The Bell Jar - Sylvia Plath x
77 Swallows and Amazons - Arthur Ransome x
78 Germinal - Emile Zola
79 Vanity Fair - William Makepeace Thackeray
80 Possession - AS Byatt
81 A Christmas Carol - Charles Dickens x
82 Cloud Atlas - David Mitchell
83 The Color Purple - Alice Walker
84 The Remains of the Day - Kazuo Ishiguro
85 Madame Bovary - Gustave Flaubert
86 A Fine Balance - Rohinton Mistry
87 Charlotte’s Web - EB White x
88 The Five People You Meet In Heaven - Mitch Albom
89 Adventures of Sherlock Holmes - Sir Arthur Conan Doyle x+
90 The Faraway Tree Collection - Enid Blyton x
91 Heart of Darkness - Joseph Conrad
92 The Little Prince - Antoine De Saint Exupery
93 The Wasp Factory - Iain Banks x+
94 Watership Down - Richard Adams x
95 A Confederacy of Dunces - John Kennedy Toole
96 A Town Like Alice - Nevil Shute
97 The Three Musketeers - Alexandre Dumas x
98 Hamlet - William Shakespeare
99 Charlie and the Chocolate Factory - Roald Dahl x
100 Les Miserables - Victor Hugo
42, then. With a couple of embarrassing admissions, but I really can't deny loving Bridget Jones' Diary!
Anything else there that I really should read?
Thursday, February 19, 2009
You are all weird - recent search terms for this blog
Yes, this is going to be one of those tedious 'what odd things did people search for to get here' posts. They're great fun, really! Blogs work particularly well for them, because the archives pages tend to collect totally unrelated stuff on one page, confusing Google.
But before that, an aside. In 2004, I was trying to track down a song with the lyrics "Oh, Mary, why don't you have some sense", with limited success. The song, in case you are interested, turns out to be called "Mary" by The Four of Us, an Irish band.
In 2009, I was reading a fun little feature Wonkette, a politics blog, is doing called the Comics Curmudgeon, which involves making fun of editorial comics. The author of the column, it turns out, has a blog, also called the Comics Curmudgeon, where he makes fun of non-editorial comics. So, it was all great fun, and I was reading some of his old posts... and came upon this. From the post:
That was me! I got to his blog in 2004, by searching for that bloody song, then forgot about it and came upon the evidence many years later! Amazing, this Internet thing.
Anyway, on to the search terms.
rsynnott cunt - How rude. Bizarrely, someone had searched for this multiple times. Well, I haven't got one.
common lisp -xah -newlisp -harrop -clojure -ruby - A bit of explanation called for, I feel. NewLISP is a terrible faux-lisp. Clojure is a quite nice pseudo-lisp for the JVM. Ruby is not lisp, but people occasionally believe it to be lisp because it has anonymous functions, which clearly no language except for lisp and just about every other language higher-level than C has had, ever. Harrop seems to be an Australian engineering company. Xah is Xah Lee, an irritating person who trolls comp.lang.lisp, going on incessantly about Mathematica and keyboard layouts. He has this weird website, with thousands of pages more on Mathematica and keyboard layouts, his bizarre misogynistic and political views, and pictures of himself. Including naked pictures. Involving a piano. See, I may be a little unusual, but at least I don't go on about Dvorak or post pictures of my dick on a piano. Anyway, yes, if you want a website about common lisp but without any of those people or things, this one still would not be a terribly good choice.
steorn - Beloved Irish vendors of imaginary energy.
surplus blogs - Again, how very dare you.
"the sexiest whales" - Narwhals. Phallic symbolism, you see. No, really, this is something I actually mentioned ; it was a BBC article with a stupid title.
horrible puns - You've come to the right plaice! (See, there's a pun. Two if you're filthy-minded.)
"dueling is making a comeback" - Somebody left this in a comment. Rather wonderful, no?
"why do they" leave "computer programmer" "boring as well" - Yet again, cheek of you.
+clsql +auto_increment - Yay! I have an article on this! I actually helped somebody!
atheist bus downfall - If a bus is falling on me, I care little about its religious convictions.
bald or bitch of mistress "female barber" - Pervert.
bear making supplier - Pervert.
colossal mp3 player with buttons -
You're welcome.
facebook for sex - Pervert. Anyway, the friend newsfeeds would be horrifying.
frat leash - Pervert.
good things about the credit crunch - Provides fodder for blog posts about inane search terms.
hemingway urinal - Pervert. Ewh.
george bush wife - Pervert. I mean, she'd have to be, to marry him.
howrse codes for january - Howrse is a bizarre online game which I mentioned once. It involves breeding horses. It is terrifying.
lidl scientology - Half-price, for the month of March! (Lidl is a supermarket which runs special offers on weird things.)
nude youtube - You don't want to see me nude, I promise you.
ron paul bnp - No, I don't think so. Hell of a conspiracy theory, though.
sysco - A maker of terrifying food products.
the guardian and atheism newspaper - Formed when the Guardian newspaper merged with the abstract concept of atheism. See also: The Daily Mail and Fascism Newspaper.
youtube military haircutting - Pervert.
blunder "pope test" - Sounds intriguing.
clisp menorah - I was thinking that this was just another search absurdity and was about to say 'pervert', but actually the open source Common Lisp implementation clisp does have a menorah on startup. It gives rise to wacky conspiracy theories.
stuff tht are over 1000 dollars - Houses. The stimulus plan. Very large fax machines.
most popular spicy finger food in Tesco - No idea.
most popular spicy finger food in Lidl - I'm sensing a trend, but Lidl don't do spicy food; they are German.
duck sex - Ah, pervert. Good old perverts. Did you know that a duck is one of very few birds with a penis?
arrington dark walnut coffee table - Michael Arrington is an annoying person who writes about Web 2.0 and insults Europeans. It is entirely possible that he possesses such a coffee table, but the relevance escapes me.
bobby synnott omaha - This is not the blog you are looking for. Thank god. I mean, Omaha.
gay online mario - Pervert.
horse magazines - Pervert.
organic apple shortage - Damn. I don't care for those PVC apples.
what places in athlone sells betty boop - Pervert. And don't think for one moment that I'm going to be a party to human trafficking of imaginary 30s sex symbols.
But before that, an aside. In 2004, I was trying to track down a song with the lyrics "Oh, Mary, why don't you have some sense", with limited success. The song, in case you are interested, turns out to be called "Mary" by The Four of Us, an Irish band.
In 2009, I was reading a fun little feature Wonkette, a politics blog, is doing called the Comics Curmudgeon, which involves making fun of editorial comics. The author of the column, it turns out, has a blog, also called the Comics Curmudgeon, where he makes fun of non-editorial comics. So, it was all great fun, and I was reading some of his old posts... and came upon this. From the post:
Speaking of sullied, here’s some strange and alarming search terms for you: “dilbert wedding planning strip,” “baby moses taking bath cartoon,” “oh mary why don’t you have some sense,” “trainwreck drug lingo,” and (no kidding) “how to make crystal meth.” Well, see, first you get a brown paper bag…
That was me! I got to his blog in 2004, by searching for that bloody song, then forgot about it and came upon the evidence many years later! Amazing, this Internet thing.
Anyway, on to the search terms.
rsynnott cunt - How rude. Bizarrely, someone had searched for this multiple times. Well, I haven't got one.
common lisp -xah -newlisp -harrop -clojure -ruby - A bit of explanation called for, I feel. NewLISP is a terrible faux-lisp. Clojure is a quite nice pseudo-lisp for the JVM. Ruby is not lisp, but people occasionally believe it to be lisp because it has anonymous functions, which clearly no language except for lisp and just about every other language higher-level than C has had, ever. Harrop seems to be an Australian engineering company. Xah is Xah Lee, an irritating person who trolls comp.lang.lisp, going on incessantly about Mathematica and keyboard layouts. He has this weird website, with thousands of pages more on Mathematica and keyboard layouts, his bizarre misogynistic and political views, and pictures of himself. Including naked pictures. Involving a piano. See, I may be a little unusual, but at least I don't go on about Dvorak or post pictures of my dick on a piano. Anyway, yes, if you want a website about common lisp but without any of those people or things, this one still would not be a terribly good choice.
steorn - Beloved Irish vendors of imaginary energy.
surplus blogs - Again, how very dare you.
"the sexiest whales" - Narwhals. Phallic symbolism, you see. No, really, this is something I actually mentioned ; it was a BBC article with a stupid title.
horrible puns - You've come to the right plaice! (See, there's a pun. Two if you're filthy-minded.)
"dueling is making a comeback" - Somebody left this in a comment. Rather wonderful, no?
"why do they" leave "computer programmer" "boring as well" - Yet again, cheek of you.
+clsql +auto_increment - Yay! I have an article on this! I actually helped somebody!
atheist bus downfall - If a bus is falling on me, I care little about its religious convictions.
bald or bitch of mistress "female barber" - Pervert.
bear making supplier - Pervert.
colossal mp3 player with buttons -
You're welcome.
facebook for sex - Pervert. Anyway, the friend newsfeeds would be horrifying.
frat leash - Pervert.
good things about the credit crunch - Provides fodder for blog posts about inane search terms.
hemingway urinal - Pervert. Ewh.
george bush wife - Pervert. I mean, she'd have to be, to marry him.
howrse codes for january - Howrse is a bizarre online game which I mentioned once. It involves breeding horses. It is terrifying.
lidl scientology - Half-price, for the month of March! (Lidl is a supermarket which runs special offers on weird things.)
nude youtube - You don't want to see me nude, I promise you.
ron paul bnp - No, I don't think so. Hell of a conspiracy theory, though.
sysco - A maker of terrifying food products.
the guardian and atheism newspaper - Formed when the Guardian newspaper merged with the abstract concept of atheism. See also: The Daily Mail and Fascism Newspaper.
youtube military haircutting - Pervert.
blunder "pope test" - Sounds intriguing.
clisp menorah - I was thinking that this was just another search absurdity and was about to say 'pervert', but actually the open source Common Lisp implementation clisp does have a menorah on startup. It gives rise to wacky conspiracy theories.
stuff tht are over 1000 dollars - Houses. The stimulus plan. Very large fax machines.
most popular spicy finger food in Tesco - No idea.
most popular spicy finger food in Lidl - I'm sensing a trend, but Lidl don't do spicy food; they are German.
duck sex - Ah, pervert. Good old perverts. Did you know that a duck is one of very few birds with a penis?
arrington dark walnut coffee table - Michael Arrington is an annoying person who writes about Web 2.0 and insults Europeans. It is entirely possible that he possesses such a coffee table, but the relevance escapes me.
bobby synnott omaha - This is not the blog you are looking for. Thank god. I mean, Omaha.
gay online mario - Pervert.
horse magazines - Pervert.
organic apple shortage - Damn. I don't care for those PVC apples.
what places in athlone sells betty boop - Pervert. And don't think for one moment that I'm going to be a party to human trafficking of imaginary 30s sex symbols.
The great GMail 'search the web' affair
People are terribly cross with Google right now. You see, since its inception, GMail has had a 'search the web' button beside its 'search your mail' button, like so:
But now... no more!
Now leaving aside for a moment the dubious use of non-native faux-buttons (screenshot the second was taken on a Mac, with Safari, and is definitely Not Quite Right), is 'search the web' something that you really want inside an email client? Well, apparently, yes. Today, I was asked to join an actual Facebook group demanding the return of the damn thing. I'm not sure I agree with the sentiment.
The thing is, Google has always been notable for its lack of clutter. Here is the Blogger interface, actually one of the more cluttered Google thingies.
We will ignore the unfortunate Analytics interface for the purposes of this discussion, mentioning only that it is at least less cluttered than the Analytics interface that went before, back when it was non-Google Urchin.
By comparison, here is Yahoo (a Yahoo, mind you, which made a big deal a while back about how they had successfully reduced clutter):
And here is AOL:
AOL in particular is, well, ridiculous. Try finding your way around that. Microsoft Live Search is actually fairly minimalistic these days, but makes up for it by being slow and shit.
Noted scary person Marissa Mayer is in charge of this sort of thing at Google, and apparently carefully guards against clutter. Would you cross her if you worked there? I think not. She's just bridging the gap between 'charmingly eccentric' and 'dangerously insane'. Orkut Büyükkökten, creator of Google's failed Facebook-oid Orkut, made Orkut a bit cluttered, and what happened to him?
She made him wear that suit!
So be warned.
But yes, the search the web button was at the top of a slippery slope into weather and sports news and reducing your debt up to 75%. It is well rid of.
But now... no more!
Now leaving aside for a moment the dubious use of non-native faux-buttons (screenshot the second was taken on a Mac, with Safari, and is definitely Not Quite Right), is 'search the web' something that you really want inside an email client? Well, apparently, yes. Today, I was asked to join an actual Facebook group demanding the return of the damn thing. I'm not sure I agree with the sentiment.
The thing is, Google has always been notable for its lack of clutter. Here is the Blogger interface, actually one of the more cluttered Google thingies.
We will ignore the unfortunate Analytics interface for the purposes of this discussion, mentioning only that it is at least less cluttered than the Analytics interface that went before, back when it was non-Google Urchin.
By comparison, here is Yahoo (a Yahoo, mind you, which made a big deal a while back about how they had successfully reduced clutter):
And here is AOL:
AOL in particular is, well, ridiculous. Try finding your way around that. Microsoft Live Search is actually fairly minimalistic these days, but makes up for it by being slow and shit.
Noted scary person Marissa Mayer is in charge of this sort of thing at Google, and apparently carefully guards against clutter. Would you cross her if you worked there? I think not. She's just bridging the gap between 'charmingly eccentric' and 'dangerously insane'. Orkut Büyükkökten, creator of Google's failed Facebook-oid Orkut, made Orkut a bit cluttered, and what happened to him?
She made him wear that suit!
So be warned.
But yes, the search the web button was at the top of a slippery slope into weather and sports news and reducing your debt up to 75%. It is well rid of.
Wednesday, February 18, 2009
SOAP rides again
Just when you thought it was safe to go back to webservices...
First, an explanation. SOAP (stands for Simple Object Access Protocol; all but the 'A' are lies) is a thing used for webservices. It allows complex structured things to be passed to and fro, and works via the magic of XML. Like many other highly successful concepts, like OS/2, it is the unholy issue of IBM and Microsoft in cahoots.
To write a SOAP server, one either (a) writes a special class definition and allows the magical SOAP library to produce a WSDL (web service description language; conveniently, a separate 'standard') or (b) obtains a WSDL which deigns to work with the library that happens to be in use, by either using a special tool (like this one, which I wrote because I was bored and had been working with SOAP in a summer job), or writing it by hand. You then feed the wsdl into the wsdl processor tool provided, take requests from the user, parse them, construct the relevant reply objects, and send them back.
For reference, here is a WSDL file generated by the above tool, for a single function which, given a variety of goat as a string, returns the name, hoof count and photograph of all goats of that variety that our speculative goat database knows about.
Now, that file will work with ZSI, the Python SOAP library. Will it work elsewhere? Your guess is as good as mine! And it could be a lot worse; here is the Amazon Web Services WDSL (you may need to do 'view source' to see it in all its glory).
To write a client, you take an existing WSDL file like the above, shove it into your library's magic tool, and watch as it gives nasty XML errors, crashes or similar. If you're particularly lucky, it will actually work, until it hits some weird case and explodes.
SOAP is not, and has never been, actually terribly popular, but is used in a few places and looks set to never quite go away. It's one of the two APIs Amazon offers for their AWS platform, though I'm pretty sure no-one ever uses it; it's also used by Google AdSense and AdWords APIs. And internally by companies a bit; I think it's because it actually sounds quite nice when described by somebody who has never used it.
Of course, it is all XML. This is important. If you were to transfer a double via some binary protocol, it might be eight bytes, plus a byte or two of tags. If by SOAP, well:
It should be noted that all SOAP examples, everywhere, either get a stock price, or convert a temperature. This is because examples like by goats, while still simple, are sufficiently complicated that they will probably cause trouble with the libraries. Of course, for something this basic, REST (as informally defined as making a HTTP GET request with parameters and getting some random crap back) or XML-RPC, would be far simpler. For something more complex, SOAP will break anyway, and the messages will be far too big, so you may as well just use something proprietary like Java's RPC thing, or possibly something non-proprietary like CORBA, or whatever you're meant to call CORBA these days to avoid infringing trademarks. Also, the size of a SOAP message for anything more complex than the goats just doesn't bear thinking about.
This guy sums it up better than I ever could.
The reason I mention all of this is because, after not hearing of SOAP for about two years, I just saw a mention by Allegro. Allegro is one of the two significant vendors of commercial Common Lisp implementations, and also does consulting and random other software.
Here, they describe (and provide terrifying source for) a thing to go on top of their existing SOAP library to make writing SOAP stuff simpler. That is, that source is not for a SOAP library, dear me no. Just for a thing to sit on top of one. Then they give an example with the mandatory farenheit to celsius temperature converting web service. The thing is written with an air of futility, a sense of 'well, if we have to use bloody SOAP we may as well make it a bit easier'.
Incidentally, if you had to use SOAP for some reason, Allegro CL is probably your only lisp-y option. There's a thing called cl-soap; as is par for the course with SOAP libraries, it worketh not. This is a little unfair; it seems to have been written largely to work with Google AdWords. With some effort, I was able to make it work with Google Web Search API, a now defunct and never much-used Google API. By 'some effort' I mean the most annoying thing I have written since last I touched SOAP about three years previously. A quote from the site:
Still, at least in 30 years I will have an unpleasant, marginal skill (well, maybe; I've forgotten a lot of it already), much like COBOL programmers today. I think it would be optimistic to expect SOAP, which has, after all, been anointed an 'enterprise technology' (code for 'clunky and odd') by whoever it is who gets to decide what horrid concepts to foist on programmers for the next century.
Oh, also, SOAP is generally used over HTTP, but has apparently been used over SMTP, and even SMS. Note that the SMS article was not written in some dark age when SMS might truly be the only way to send data from a phone; it was written in 2004, when 3G networks were popping up in urban areas and GPRS was ubiquitous. So out of sheer perversity, then. Also, I can't imagine how you could fit a SOAP message in 140 characters. I'm pretty certain that the article was just written to annoy people.
First, an explanation. SOAP (stands for Simple Object Access Protocol; all but the 'A' are lies) is a thing used for webservices. It allows complex structured things to be passed to and fro, and works via the magic of XML. Like many other highly successful concepts, like OS/2, it is the unholy issue of IBM and Microsoft in cahoots.
To write a SOAP server, one either (a) writes a special class definition and allows the magical SOAP library to produce a WSDL (web service description language; conveniently, a separate 'standard') or (b) obtains a WSDL which deigns to work with the library that happens to be in use, by either using a special tool (like this one, which I wrote because I was bored and had been working with SOAP in a summer job), or writing it by hand. You then feed the wsdl into the wsdl processor tool provided, take requests from the user, parse them, construct the relevant reply objects, and send them back.
For reference, here is a WSDL file generated by the above tool, for a single function which, given a variety of goat as a string, returns the name, hoof count and photograph of all goats of that variety that our speculative goat database knows about.
<?xml version="1.0" encoding="utf-8"?>
<!-- Produced with WSDL Creator - http://rsynnott.com/wsdlcreator
By Robert Synnott -->
<wsdl:definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="baaaaa" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="baaaaa" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:types>
<s:schema elementFormDefault="qualified" targetNamespace="baaaaa">
<s:element name="goat">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="hooves" type="s:unsignedInt" />
<s:element minOccurs="1" maxOccurs="1" name="name" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="photograph" type="s:base64Binary" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="goatList">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="unbounded" name="goats" type="tns:goatList" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="goatRequest">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="variety" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
</s:schema>
</wsdl:types>
<wsdl:message name="getGoatCountSoapIn">
<wsdl:part name="parameter" element="tns:goatRequest" />
</wsdl:message>
<wsdl:message name="getGoatCountSoapOut">
<wsdl:part name="parameter" element="tns:goatList" />
</wsdl:message>
<wsdl:portType name="goatcountSoap">
<wsdl:operation name="getGoatCount">
<documentation xmnls="http://schemas.xmlsoap.org/wsdl/">How many goats do we have?</documentation>
<wsdl:input message="tns:getGoatCountSoapIn" />
<wsdl:output message="tns:getGoatCountSoapOut" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="goatcountSoap" type="tns:goatcountSoap">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
<wsdl:operation name="getGoatCount">
<soap:operation soapAction="getGoatCount" style="document" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="goatcount">
<wsdl:port name="goatcountSoap" binding="tns:goatcountSoap">
<soap:address location="http://bovideacensus.com:43241/app" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
Now, that file will work with ZSI, the Python SOAP library. Will it work elsewhere? Your guess is as good as mine! And it could be a lot worse; here is the Amazon Web Services WDSL (you may need to do 'view source' to see it in all its glory).
To write a client, you take an existing WSDL file like the above, shove it into your library's magic tool, and watch as it gives nasty XML errors, crashes or similar. If you're particularly lucky, it will actually work, until it hits some weird case and explodes.
SOAP is not, and has never been, actually terribly popular, but is used in a few places and looks set to never quite go away. It's one of the two APIs Amazon offers for their AWS platform, though I'm pretty sure no-one ever uses it; it's also used by Google AdSense and AdWords APIs. And internally by companies a bit; I think it's because it actually sounds quite nice when described by somebody who has never used it.
Of course, it is all XML. This is important. If you were to transfer a double via some binary protocol, it might be eight bytes, plus a byte or two of tags. If by SOAP, well:
<?xml version="1.0" encoding="UTF-8" ?>
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/1999/XMLSchema">
<SOAP-ENV:Body>
<ns1:doubleAnIntegerResponse
xmlns:ns1="urn:MySoapServices"
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<return xsi:type="xsd:int">246</return>
</ns1:doubleAnIntegerResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
It should be noted that all SOAP examples, everywhere, either get a stock price, or convert a temperature. This is because examples like by goats, while still simple, are sufficiently complicated that they will probably cause trouble with the libraries. Of course, for something this basic, REST (as informally defined as making a HTTP GET request with parameters and getting some random crap back) or XML-RPC, would be far simpler. For something more complex, SOAP will break anyway, and the messages will be far too big, so you may as well just use something proprietary like Java's RPC thing, or possibly something non-proprietary like CORBA, or whatever you're meant to call CORBA these days to avoid infringing trademarks. Also, the size of a SOAP message for anything more complex than the goats just doesn't bear thinking about.
This guy sums it up better than I ever could.
The reason I mention all of this is because, after not hearing of SOAP for about two years, I just saw a mention by Allegro. Allegro is one of the two significant vendors of commercial Common Lisp implementations, and also does consulting and random other software.
Here, they describe (and provide terrifying source for) a thing to go on top of their existing SOAP library to make writing SOAP stuff simpler. That is, that source is not for a SOAP library, dear me no. Just for a thing to sit on top of one. Then they give an example with the mandatory farenheit to celsius temperature converting web service. The thing is written with an air of futility, a sense of 'well, if we have to use bloody SOAP we may as well make it a bit easier'.
Incidentally, if you had to use SOAP for some reason, Allegro CL is probably your only lisp-y option. There's a thing called cl-soap; as is par for the course with SOAP libraries, it worketh not. This is a little unfair; it seems to have been written largely to work with Google AdWords. With some effort, I was able to make it work with Google Web Search API, a now defunct and never much-used Google API. By 'some effort' I mean the most annoying thing I have written since last I touched SOAP about three years previously. A quote from the site:
This means that we need to implement the client side of SOAP 1.1, but only the so called Document model. We need HTTPS (comes with LispWorks).You do not want to know about what precisely the difference between the Document model and the RPC model is.
Still, at least in 30 years I will have an unpleasant, marginal skill (well, maybe; I've forgotten a lot of it already), much like COBOL programmers today. I think it would be optimistic to expect SOAP, which has, after all, been anointed an 'enterprise technology' (code for 'clunky and odd') by whoever it is who gets to decide what horrid concepts to foist on programmers for the next century.
Oh, also, SOAP is generally used over HTTP, but has apparently been used over SMTP, and even SMS. Note that the SMS article was not written in some dark age when SMS might truly be the only way to send data from a phone; it was written in 2004, when 3G networks were popping up in urban areas and GPRS was ubiquitous. So out of sheer perversity, then. Also, I can't imagine how you could fit a SOAP message in 140 characters. I'm pretty certain that the article was just written to annoy people.
Labels:
horrible,
Programming,
soap
Sunday, February 15, 2009
On the Oddness of Comics
Comics are an interesting medium of art. They come in a number of forms, of course. First, there are comic books for children, which seem to have largely died out. Then there are comic books for adults; these are split into things like Viz and things like Superman. The latter are particularly weird. Then there are actually funny comics, comics which tell a story, editorial comics, and, finally, and weirdest of all, those comics which turn up in the comics pages of newspapers.
Right. First, we can ignore the kids' comics as irrelevant and of a prior age; the Dandy and that terrifying thing with all the horses and so forth. I do not pretend to understand the motivation beyond grown adults reading the long, long, tedious storylines that the likes of Marvel put out about boring non-existent super-persons.
Then there are funny comics. Despite the name, there are very few funny comics (which are not also editorial comics; see below). Things like the Far Side qualify, I suppose. There are quite a number of rather disturbing comics which are sometimes funny in their disturbingness, this, this, this and this for instance. Note that they're all webcomics.
There are then comics which tell a story, like this or this. Webcomics, generally.
Now, the newspapers. Non-editorial newspaper comics are very special. They somehow contrive to be universally non-funny, and yet also generally not tell a story. If they do tell a story it is generally far too tedious to think about. Thousands of examples here. I mean, really. Things like Garfield and that stupid rhyming pig thing. And Peanuts. And hundreds of others. Presumably someone likes them, because the newspapers persist in printing them, but I can't quite understand why. Take the last comic mentioned here. Marmaduke. Very popular. Not funny at all in any way. Awful rubbish. But it sells.
And then there are the editorial comics. These can actually be quite funny, but more often than not they are just bizarre. Personally, I find left-wing ones more often funny than unbiased ones, and bizarre right-wing ones like this and this generally very unfunny, but that is presumably because I'm a gay atheist who doesn't believe in cutting taxation or execution or longer jail sentences or any of that 'common sense' crap. Wonderful reviews of editorial comics are here. Here's what has become effectively an editorial comic, which I love very much. Interestingly, it used to be more of a Far Side style comic, but the author was suitably outraged by the excesses of the Bush regime and went political. The author's statement is particularly good.
Hmm, I sort of lost track of where I was going with this piece. But yes, basically, I find those comics that you find in the comics section of newspapers generally totally inexplicable. Weird, weird, weird. I do think that part of the reason may be the heavy censorship of newspaper comics for syndication; if you read Scott Adams' (Dilbert) blog you will see that he often gets told to get rid of stupidly non-offensive things because they might offend somebody. By the way, this is selective; in general, the forbidden subjects are toilets and sex. The two despoilers of modern society.
Right. First, we can ignore the kids' comics as irrelevant and of a prior age; the Dandy and that terrifying thing with all the horses and so forth. I do not pretend to understand the motivation beyond grown adults reading the long, long, tedious storylines that the likes of Marvel put out about boring non-existent super-persons.
Then there are funny comics. Despite the name, there are very few funny comics (which are not also editorial comics; see below). Things like the Far Side qualify, I suppose. There are quite a number of rather disturbing comics which are sometimes funny in their disturbingness, this, this, this and this for instance. Note that they're all webcomics.
There are then comics which tell a story, like this or this. Webcomics, generally.
Now, the newspapers. Non-editorial newspaper comics are very special. They somehow contrive to be universally non-funny, and yet also generally not tell a story. If they do tell a story it is generally far too tedious to think about. Thousands of examples here. I mean, really. Things like Garfield and that stupid rhyming pig thing. And Peanuts. And hundreds of others. Presumably someone likes them, because the newspapers persist in printing them, but I can't quite understand why. Take the last comic mentioned here. Marmaduke. Very popular. Not funny at all in any way. Awful rubbish. But it sells.
And then there are the editorial comics. These can actually be quite funny, but more often than not they are just bizarre. Personally, I find left-wing ones more often funny than unbiased ones, and bizarre right-wing ones like this and this generally very unfunny, but that is presumably because I'm a gay atheist who doesn't believe in cutting taxation or execution or longer jail sentences or any of that 'common sense' crap. Wonderful reviews of editorial comics are here. Here's what has become effectively an editorial comic, which I love very much. Interestingly, it used to be more of a Far Side style comic, but the author was suitably outraged by the excesses of the Bush regime and went political. The author's statement is particularly good.
Hmm, I sort of lost track of where I was going with this piece. But yes, basically, I find those comics that you find in the comics section of newspapers generally totally inexplicable. Weird, weird, weird. I do think that part of the reason may be the heavy censorship of newspaper comics for syndication; if you read Scott Adams' (Dilbert) blog you will see that he often gets told to get rid of stupidly non-offensive things because they might offend somebody. By the way, this is selective; in general, the forbidden subjects are toilets and sex. The two despoilers of modern society.
Valentine's Day horror
Two drunk women passed below our window, shrieking. One proceeded to take down her pants, squat, and piss on the neighbouring building, while the other smoked a cigarette.
I'm suddenly very glad we don't live on the ground floor...
I'm suddenly very glad we don't live on the ground floor...
Friday, February 13, 2009
Change. But can we believe in it?
So, Barack Obama just lost another cabinet nominee; the token Republican Judd Greg (Judd? Who names a child 'Judd'?!) this time. Irreconcilable differences over the stimulus thing and, erm, the census. Because apparently the census is important now. I haven't been following US politics closely enough to know why. I suppose one wants to retain control of the font used, and so on. Wikipedia is unhelpful on the matter, saying only that same-sex marriages won't be counted in those states where they are legal, due to the 'Defence of Marriage Act', a particularly nasty law that sounds Bush-era but was actually signed by Clinton; also, people will be allowed say that they are of more than one race (what, the US, with its creepy fixation on racial classification, didn't let them do this before?), and the whole thing will be handled by Lockheed Martin, noted manufacturers of bombs and warplanes.
The census is a decennial thing; it is perhaps fortunate that the Bush administration didn't get to conduct one. I wonder what would have happened? No votes for atheists and people who understood words with more than three syllables, perhaps?
Anyway, that's the fourth nominee gone, I think. To lose one nominee is unfortunate, to lose four... well, I don't know, but it ain't good.
Don't get me wrong. Obama seems like the best president that the US has elected in decades. He just doesn't seem to be having a very easy first year.
Monday, February 9, 2009
Charlatanes Sans Frontières
So, there is a group called Homeopaths without Borders. As in Doctors without Borders for stupid people.
What sort of care do they provide. I can only assume that they will go to, say, Africa, and treat, say, cholera, caused by dirty water, with homeopathic medicines (somewhat less dirty water). Yay!
Somehow I find something particularly offensive about the use of alleged charity to promote things which do not work. I am reminded of Steorn, an Irish company which likes to imagine that it has an over-unity device, said that they will provide, free of charge, a water pump powered by their magic to a village in Kenya. Charming, eh?
What sort of care do they provide. I can only assume that they will go to, say, Africa, and treat, say, cholera, caused by dirty water, with homeopathic medicines (somewhat less dirty water). Yay!
Somehow I find something particularly offensive about the use of alleged charity to promote things which do not work. I am reminded of Steorn, an Irish company which likes to imagine that it has an over-unity device, said that they will provide, free of charge, a water pump powered by their magic to a village in Kenya. Charming, eh?
Saturday, February 7, 2009
But tonight I'm gonna party like it's 1929!
And the economy continues to implode. Oh, dear. I'm trying just to avoid thinking about it; it's all very depressing.
But hey, it ain't all bad. Magical mystery free energy company Steorn is back, and, this is depressing, is managing to raise money! There is no money for infrastructure or civil servants, but free energy? Take what you need, guys.
And on a lighter note, horrible old despoiler-of-civilisation Ronald Reagan is still dead! Here is Ronald Reagan when he was slightly less dead, attending an important state event.
But hey, it ain't all bad. Magical mystery free energy company Steorn is back, and, this is depressing, is managing to raise money! There is no money for infrastructure or civil servants, but free energy? Take what you need, guys.
And on a lighter note, horrible old despoiler-of-civilisation Ronald Reagan is still dead! Here is Ronald Reagan when he was slightly less dead, attending an important state event.
Wednesday, February 4, 2009
all lower case horror
remember there was a trend a while ago to use all lower case on websites and other places like cd boxes
no punctuation sometimes either
whatever happened to that
it turns out to be rather difficult
no punctuation sometimes either
whatever happened to that
it turns out to be rather difficult
Stupid things I have seen on the Internet; the January collection
I'm in the habit of occasionally taking screenshots of silly things I see on th'Internet; MacOS makes this very easy. (Command-Shift-4, then drag around the region you want; it'll end up as a png on the desktop). These typically pile up on my desktop until I notice it getting messy. So I thought I'd post a few highlights.
This one, well, it just puzzled me. They're all words. I'm just not sure what they mean when arranged in that order. Also, 'webinar'. Hah!
Here we see Facebook hedging its bets. Am I a gay of the variety who likes ludicrously over-muscled men with vacant expressions, a heterosexual who, well, likes to use dating techniques which women want banned, or the sort of person who downloads debut albums on Facebook? Well, I'm none, though it should be able to figure out my sexual orientation from my profile, but... let's look a little closer at that last ad, shall we?

I present Facebook's most wanted girl! Or possibly man. The human involved is irrelevant, really; the hat dominates. I suspect that maybe the woman-ban-desired chat-up line involves coercion.
And if none of those Facebook sex ads tickle your fancy, well, how about this? 'Real Profile'?! I'm not even sure the one in the middle is a real person.
Ahahaha! I shouldn't laugh, but really. Really. Also, Oral Roberts, noted tele-preacher. His siblings Anal and Vaginal were presumably less successful. Note the red DEBT CANCELED stamp of the Lord. Note also that in English, we spell 'canceled' as 'cancelled'. The Lord is dyslexic, you see.
Eek! The current world population is about 6.9 billion, and we most assume that at least, say, 100 million of them are blind. This ad is proof of the existence of at least 800 million aliens!
Ethnic dolls. It seems that in modern US consumer parlance, 'ethnic' means 'brown'. Good, god-fearing white Americans do not have an ethnicity.
Not satisfied with quiz shows and patronising Americans, Stephen Fry now writes ad copy for the BBC, it seems!
No group is too marginal to have a social network or three!
Monster Cable is a company which sells things like gold-plated USB cables, about which it makes outlandish claims, and tends to take legal action against other companies with 'Monster' in their name. Also, as we see, it is an Apostrophe Criminal.
Testimonial for afore-mentioned gold-plated USB cable. The power of suggestion is a terrible thing. Better color detail in his editing! All through the power of magic! (Lest you think I am being unfair, a USB cable is a digital cable. Things are more or less either transmitted or not transmitted. Open a random video in a hex editor and start randomly flipping bits, and you will get gross display errors, probably an outbreak of large rectangles. Certainly not poorer colour detail.)
Ad for a web game. With flamethrowing bagpipes. Note that levelling up, in this case, makes you more and more Scottish.
Well, you could look upon this as a good thing. 73% of Americans don't object to the existence of, or at least the acknowledgement of by beloved messiah-president, atheists. On the other hand, 27% do. What? What, precisely, do they want to do about us? Inquisition?
A comment from the New York Times. AOI? (The Interwebs tell me this is the Association of Illustrators). Several codes, then block him? What?
From the New Yorker. As we can see by the rendering of 'elitist', the New Yorker is elitist and proud. In modern America, 'elitist' is a euphemism for 'can read', 'not a raving Nazi', or 'black', depending on context.
BBCs within BBCs within BBCs!
It is a little-known fact that the more socialist a nation is, the better its propaganda art. If only we can keep nationalising banks and car companies and cats and things, within a decade we could have propaganda art like this:
The gulags are a small price to pay.
This one, well, it just puzzled me. They're all words. I'm just not sure what they mean when arranged in that order. Also, 'webinar'. Hah!
Here we see Facebook hedging its bets. Am I a gay of the variety who likes ludicrously over-muscled men with vacant expressions, a heterosexual who, well, likes to use dating techniques which women want banned, or the sort of person who downloads debut albums on Facebook? Well, I'm none, though it should be able to figure out my sexual orientation from my profile, but... let's look a little closer at that last ad, shall we?

I present Facebook's most wanted girl! Or possibly man. The human involved is irrelevant, really; the hat dominates. I suspect that maybe the woman-ban-desired chat-up line involves coercion.
And if none of those Facebook sex ads tickle your fancy, well, how about this? 'Real Profile'?! I'm not even sure the one in the middle is a real person.
Ahahaha! I shouldn't laugh, but really. Really. Also, Oral Roberts, noted tele-preacher. His siblings Anal and Vaginal were presumably less successful. Note the red DEBT CANCELED stamp of the Lord. Note also that in English, we spell 'canceled' as 'cancelled'. The Lord is dyslexic, you see.
Eek! The current world population is about 6.9 billion, and we most assume that at least, say, 100 million of them are blind. This ad is proof of the existence of at least 800 million aliens!
Ethnic dolls. It seems that in modern US consumer parlance, 'ethnic' means 'brown'. Good, god-fearing white Americans do not have an ethnicity.
Not satisfied with quiz shows and patronising Americans, Stephen Fry now writes ad copy for the BBC, it seems!
No group is too marginal to have a social network or three!
Monster Cable is a company which sells things like gold-plated USB cables, about which it makes outlandish claims, and tends to take legal action against other companies with 'Monster' in their name. Also, as we see, it is an Apostrophe Criminal.
Testimonial for afore-mentioned gold-plated USB cable. The power of suggestion is a terrible thing. Better color detail in his editing! All through the power of magic! (Lest you think I am being unfair, a USB cable is a digital cable. Things are more or less either transmitted or not transmitted. Open a random video in a hex editor and start randomly flipping bits, and you will get gross display errors, probably an outbreak of large rectangles. Certainly not poorer colour detail.)
Ad for a web game. With flamethrowing bagpipes. Note that levelling up, in this case, makes you more and more Scottish.
Well, you could look upon this as a good thing. 73% of Americans don't object to the existence of, or at least the acknowledgement of by beloved messiah-president, atheists. On the other hand, 27% do. What? What, precisely, do they want to do about us? Inquisition?
A comment from the New York Times. AOI? (The Interwebs tell me this is the Association of Illustrators). Several codes, then block him? What?
From the New Yorker. As we can see by the rendering of 'elitist', the New Yorker is elitist and proud. In modern America, 'elitist' is a euphemism for 'can read', 'not a raving Nazi', or 'black', depending on context.
BBCs within BBCs within BBCs!
It is a little-known fact that the more socialist a nation is, the better its propaganda art. If only we can keep nationalising banks and car companies and cats and things, within a decade we could have propaganda art like this:
The gulags are a small price to pay.
Labels:
advertising,
apostrophe criminal,
economics,
grammar,
pictures,
politics,
random
Subscribe to:
Posts (Atom)



























