![](/i/fill.gif) |
![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 11/15/2011 7:31 PM, Darren New wrote:
> Not even counting classical music.
As near as I can tell this problem is solved by not bothering to get it
right.
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 16/11/2011 03:31 AM, Darren New wrote:
> On 11/15/2011 6:51, Invisible wrote:
>> Sheesh... You know there are people who do this kind of crap for a
>> living??
>
> You think that's bad? Imagine the same thing for the iTunes metadata
> database, with like 6 million rows.
If it's anything like CDDB, then that would be why I never use CDDB. :-P
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 16/11/2011 03:49 AM, Kevin Wampler wrote:
> As near as I can tell this problem is solved by not bothering to get it
> right.
Ah yes, the Wikipedia approach.
Required XKCD quote: http://www.xkcd.com/978/
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 15/11/2011 02:51 PM, Invisible wrote:
> Step 2: Write a program to download the HTML.
> Step 3: Write a program to extract meaningful data from the mangled HTML.
> Step 4: Convert the dozens of files into one giant file.
Without labouring the point too much, this is one of the reasons why I
use Haskell and not C++. It took me about 5 minutes to write a working
HTTP client, totalling 906 bytes of source code. I shudder to think how
much time I would have wasted trying to do such a task in C. String
management becomes vastly easier in C++, but I still wouldn't have a
clue how to, say, open a socket. [Is there even a portable way of doing
that? Or would you have to ask the native OS?]
The Haskell code I wrote isn't optimised in the slightest. I could
easily make it a lot faster, but it's not slow enough to be worth
bothering. The fact that C or C++ would be faster is a complete non-issue.
Then again, this program is quite atypical of what I write. It's a
one-off, quick and dirty hack to get me some information. All it really
does is push data from A to B. So many it's not such a great example to
hold up.
(If this was something that I wanted to "work properly", I would of
course have used a real HTTP library, and a real HTML parser library,
and so on. As it is, quickly throwing something together that has the
limited functions that I need right now was easier than trying to learn
how to use a new library.)
Of course, now somebody is going to point out that in Perl, the entire
program would have been 3 lines. But I'm not using Perl unless somebody
pays me. :-P
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Invisible <voi### [at] dev null> wrote:
> On 15/11/2011 02:51 PM, Invisible wrote:
>
> > Step 2: Write a program to download the HTML.
> > Step 3: Write a program to extract meaningful data from the mangled HTML.
> > Step 4: Convert the dozens of files into one giant file.
>
> Of course, now somebody is going to point out that in Perl, the entire
> program would have been 3 lines. But I'm not using Perl unless somebody
> pays me. :-P
Good you at least know that! :)
Besides builtin http clients being pretty much a given in any modern programming
environment (including C++ boost if I'm not wrong), there's also command-line
tools such as wget. No need to write a half-baked unoptmized attempt these
days. :)
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 16/11/2011 01:55 PM, nemesis wrote:
> Besides builtin http clients being pretty much a given in any modern programming
> environment (including C++ boost if I'm not wrong),
It appears you're wrong. Boost doesn't seem to include any HTTP
functionality that I can see.
> there's also command-line tools such as wget.
Amusingly, Haskell actually has a libcurl binding. Guess what? Doesn't
work on Windows. :-P
I hadn't thought about trying wget though - that probably wouldn't be
too hard. (The tricky part is running an external OS process and then
trying to figure out whether the **** it actually worked OK or not.)
Given that all I want to do is generate 30 URLs and have each one
downloaded to a file, that probably wouldn't be too hard.
> No need to write a half-baked unoptmized attempt these days. :)
Downloading 30 files, of 2KB each, is not exactly something that
requires "optimising".
The text processing that happens after that? I could have made it a lot
faster. But since I only need to run it once, I didn't bother.
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 11/16/2011 5:22 AM, Invisible wrote:
> Without labouring the point too much
Trust me, that ship has sailed.
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 16/11/2011 09:49 PM, Kevin Wampler wrote:
> On 11/16/2011 5:22 AM, Invisible wrote:
>> Without labouring the point too much
>
> Trust me, that ship has sailed.
I meant more that this *specific* example perhaps isn't the best one.
[Which is why I'm not going to go on about it too much.]
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 15/11/2011 02:51 PM, Invisible wrote:
> A few of you may know what I was in the IDTA Freestyle / Rock & Roll
> National Dance Finals on Saturday. (No, we didn't win anything. Are you
> surprised? Because I'm not...)
Woohoo! The results have been released! :-D
There were 13 couples entered in our event. In round 1, the judges
select the 6 best couples.
2 couples were chosen by all 7 judges. (Couples #453 and #459.)
1 couple was chosen by 5 of the judges.
3 couples were chosen by 4 of the judges.
Together, that makes 6 couples. They all went through to the next (and
final) round.
1 couple got only 3 recommendations.
2 couples got picked by 2 judges.
2 couples got only 1 recommendation.
2 couples were picked by absolutely nobody.
Me and Lynn were picked by only a single judge. (Who, I notice, is the
only judge on the list with a masculine-sounding name. Also, the only
judge who picked 4 couples, not 6 like everybody else...) That puts us
in joint 10th place, just above the two unfortunate couples whom
*nobody* wanted to see any more of. (They share joint 12th place.)
In round 2 (the final round), each judge assigns each couple a number
between 1 and 6. And here's where it gets interesting...
As I say, two couples were voted for by all 7 judges - couples #453 and
#459. Now #459 are in my dance class. Apparently they've won this event
God knows how many times over - and naturally, everyone expected them to
win again this year. But actually, they got 2nd place, with
recommendations of 1122234.
And what of #453? Well, they came 4th. Their recommendations were
3345556. Go figure!
So, uh, who won? Well, it was #446, who only got a piffling 4
recommendations in round 1 and nearly went home. But in the final round,
they got 1112236.
Read that again: Three judges thought they should be 1st, two judges
said 2nd, one judge said 3rd, AND ONE JUDGE SAID 6th?!? (As in, last
place.) How can 6 judges place them in the top 3, and the final one
place them last? That's pretty random...
Remember couple #453? One of the two that got 7 recommendations in round
1? In round two, they got 1455666, and therefore came last. Again,
everyone thought they should be bottom, except for ONE judge. THE SAME
ONE, incidentally. I wonder what the hell *she* was watching?
[I can only imagine she was standing at the other end of the room or
something, and so she did see #453 and nobody else did, and she didn't
see #466 and everyone else did. But man, that's some weird stats...]
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 17/11/2011 04:03 PM, Invisible wrote:
> And what of #453? Well, they came 4th. Their recommendations were
> 3345556. Go figure!
Urm... no they didn't. Ignore that line. :-P
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |