Category: computers suck

  • a very old place

    I just found a very old version of my website from around 2002: Stewart C. Russell.

  • the automatic podcast, by sheevaplug

    I’ve now got the automatic podcast running on the sheevaplug. Because I can’t so easily re-encode mp3s, I’ve had to come up with a different way to make the podcast. The file is much larger, but the sound quality should be better.

    It might be a few days before it runs from the sheevaplug every day.

  • adding long distance codes to Apple’s Address Book

    This is very North America-centric, but then, so is long distance dialling madness. If your phone isn’t correctly syncing the phone numbers because you haven’t put in country codes, try Apple – Support – Discussions – Adding 1 to all phone numbers in ….

    I changed the “1” in the code to “+1” so all my numbers are international by default.

  • “Open”, “Save” or “Save As” dialog box default settings – Windows XP

    “Open”, “Save” or “Save As” dialog box default settings – Windows XP
    Open a common dialog box, change the view to the one you want, and then hit Ctrl/Cancel. Yes, it’s counterintuitive, but this solution is in Ed Bott’s book “Windows XP Inside and Out” and it works.

    Yes, it does. Mostly. It’s got all the consistency for which Windows is justly famous.

  • sweet nothings from nobody

    The collected wisdom (so far) of 647 238 9575:

    • My love is with you sweet heart have a nice evening I miss you so so so much
    • Good morning my sweet heart have a nice day
    • Ana have a nice evening I miss you so so so much
    • My O my my heart is with you sweet heart have a nice day my love is with you for life xoxoxoxo
    • My sole is with you my heart as well for you for life have a nice day my love is with you for life xoxoxoxo
    • Hi is your day going well my heart is with you
    • My heart is with you sweet heart have a nice day
    • Hi are you having a nice day my sweet heart hope all is well with you
    • Sweet morning to you I hope you are Ok my heart is with you
    • Good sweet morning to you sweet heart hope all is well with you my sole is with you my love my love is with you for life xoxoxoxo
    • Hi did you have a nice day be happy my heart is with you sweet love for you
    • My love is with you sweet heart have a nice lunch
    • All i like is to love you for life xoxoxoxo my heart is with you sweet love for you i love you for life
    • It is hard to see you are so so could i like to give you the world and my love for your life and you wont talk to me
    • My heart is with you my sweet sole of my for you for life have a nice evening I miss you so so so much i made a mestak with you will you fo
    • Ana i wish you get over it and talk to me my heart is with you sweet love for you i love you for life xoxoxoxo my heart is with you as well

    I’m pretty sure these are generated by a Markov filter.

  • oh the horror

    windows on macWindows XP, running under OS X using VirtualBox.

  • nine in the bed, and the little one said …

    I don’t know if this is worth posting to RISKS:

    I used to manage wind farm SCADA systems. The supplier is a market leader in the wind industry. The components used to feed data to the central SCADA are industry standard, accurate, reliable units. The complete cost of the SCADA system and associated metering probably runs into the hundreds of thousands of dollars. This isn’t el cheapo stuff, and is put together by knowledgeable engineers and technicians.

    So I was a little surprised to see that the generation report for a wind farm was showing a total of -8.3 GWh, when a similar wind farm nearby had generated 1.8 GWh for the same period. What!? Crossed wires on the meter? Inconceivable!

    No wires were harmed in the making of this error. For metering power delivered, power plants use interval meters, which behave extremely similarly to your household electrical meter. They’re a little more accurate, have a few more features (like these ones have ethernet ports for remote reading) but they’re basically the same: any energy that goes through the wires gets added up on a counter. Take two readings a known time apart, subtract the later from the earlier, and you’ve got the total energy delivered.

    The wind farm’s SCADA polls this meter every ten minutes, and stores the result in its database. When you want a generation report, the server goes through the data, subtracts the last reading from the first, and presents that as the generation. Simple; what could go wrong?

    The bods at Major Wind Turbine Company were baffled. I was confused, and a little annoyed as I had lender and a board of directors breathing down my neck for revenue numbers. So I dug into the raw ten-minute data, and found this:

    kWh Delivered
    Wind Farm A Wind Farm B
    T=0 9523886 9999237
    T+10 min 9525238 575
    Difference 1352 -9998662

    It doesn’t take a genius to realise that the meter at Wind Farm B rolled over at 9,999,999 kWh, and so should really have read 10,000,575 kWh. The poor little SCADA didn’t know to check for rollover, and happily subtracted the later number from the earlier.

    I should add that there was no risk to public safety or system operation caused by this error. Just a few lost hairs from me.

    (Actually, many years ago, I had access to the source of an extremely early wind farm SCADA server. It was written by a series of summer students, with variable names and comments in their native language. It was pretty hard to follow. One little nugget I did pry out of the code was that they used a simple arithmetic mean for averaging wind direction. That meant that it took the mean of 358° and 2° to be 180°; not so smart …)

  • fast fixed-point MP3 encoder for ARM

    CompRec, though extremely poor quality (no psychoacoustic modelling! Old-school twinkly-burbly MP3s here we come!) is a fast MP3 encoder you can build on the SheevaPlug. It’s perfect for my limited needs.
    (thanks to wb6ymh for finding this.)

  • time to get MAD

    The prime reason I bought the Sheevaplug is to run the automatic podcast. Every day, the script has to decode a bunch of mp3s to WAV format.On a normal computer, this takes a few seconds per file. On the Sheevaplug – with no floating-point instructions, things get painful:

    $ time lame --mp3input 03-in_the_aeroplane_over_the_sea.mp3 03-in_the_aeroplane_over_the_sea.wav
    ID3v2 found. Be aware that the ID3 tag is currently lost when transcoding.
    LAME 3.98 32bits (http://www.mp3dev.org/)
    Using polyphase lowpass filter, transition band: 16538 Hz - 17071 Hz
    Encoding 03-in_the_aeroplane_over_the_sea.mp3
    to 03-in_the_aeroplane_over_the_sea.wav
    Encoding as 44.1 kHz j-stereo MPEG-1 Layer III (11x) 128 kbps qval=3
    Frame          |  CPU time/estim | REAL time/estim | play/CPU |    ETA
    7750/7750  (100%)|    8:45/    8:45|    8:46/    8:46|   0.3851x|    0:00
    -------------------------------------------------------------------------------
    kbps        LR    MS  %     long  %
    128.0        2.1  97.9       100.0
    Writing LAME Tag...done
    ReplayGain: -8.9dB

    real    8m46.408s
    user    8m45.940s
    sys    0m0.090s

    That’s right – nearly 9 minutes to decode a song! My very first Pentium 75 could probably do better than that.

    I’d heard that MAD was really fast on integer-only CPUs, so I tried it:

    $ time madplay -o 03-in_the_aeroplane_over_the_sea.wav 03-in_the_aeroplane_over_the_sea.mp3
    MPEG Audio Decoder 0.15.2 (beta) - Copyright (C) 2000-2004 Robert Leslie et al.
    Title: In the Aeroplane Over the Sea
    Artist: Neutral Milk Hotel
    Album: In the Aeroplane Over the Sea
    Track: 3
    Year: 1998
    Genre: Alternative
    Comment:
    7748 frames decoded (0:03:22.3), +1.2 dB peak amplitude, 1423 clipped samples

    real    0m7.134s
    user    0m6.500s
    sys    0m0.580s

    Seven seconds sure beats nearly nine minutes. Now, if only I could find an integer MP3 encoder …

  • awe-inspiring terminal output

    sheevaplug terminal outputWell, not really that awe-inspiring. But it does show that the Sheevaplug boots and runs out of the box. Given that it has only 512MB of RAM and the same amount of Flash storage, it’s a fairly small system.

    I really want to have this replace my Firefly Media Server installation on the laptop. First, I need to work out how to get it to boot from an external HD.

  • the undying love of a spammer

    New job, so new phone. Within minutes of turning it on, I get text message spam. I get two every day, at just after 6am and 6pm. They’re all from the one number — 647 238 9575 — and they’re all from someone who (purportedly) loves me very much, and wants me back in their life. Knowing me, it’s understandable, but I know spam scam when I see it.

  • good, not quite great

    I accidentally dropped and broke my car mp3 player, so had to come up with another music solution. I caved and bought an iTrip for my iPod Nano. It sounds pretty good.

    What’s good about it is that it allows you to charge your iPod from a standard USB Mini-B. What’s not so good is that it doesn’t have full USB pass-through, so you can’t sync your iPod, and have to stick with that stupid dock cable.

    (and don’t get me started on the really annoying connector on my work cell phone …)

  • no service is not free service

    via outage
    Hey VIA Rail, if you make an announcement that wireless is now free on the trains, you should really clarify that the service doesn’t actually work. So it’s not really much of a service, is it?

  • i can has all the animals?

    Toronto Public Library has a subscription to Safari Books Online, so I no longer need to worry about the ageing O’Reilly books on my shelves. They’re all here, for free, at the latest version.
    (via)

  • well, actually, currently none of the words

    Despit the nice article in csmonitor, Wordnik isn’t yet public. Building buzz for “coming soon” websites is a bit 1999 – we want our content now, please.

  • WordPress 2.7.1 Upgrade Failed on 1and1.com?

    bassmadrigal has the solution if WordPress automatic updates don’t work under 1and1.com hosting: WordPress 2.7.1 Upgrade Failed.
    All you need to do is add the line:
    AddType x-mapp-php5 .php
    to your .htaccess. Joy!

  • sheevaplug

    I ordered one of Marvell’s SheevaPlug Development Kit; wonder when it will arrive? It will make the best mini-server I could ever wish for.

  • the great thing about standards is that there are so many to choose from

    I have a suspicion that, while I Want My Green Plug and their associated blog One Plug. One Planet want to replace all power adaptors with theirs, all that will really happen is that:

    number_of_power_adaptor_variants = number_of_power_adaptor_variants + 1

    I’m not wild about their idea for DC power strips. The I2R losses would be huge.
    Also, dealing with the world of input voltages and frequencies, not to mention the many plug variants, would make the thing huge, heavy and expensive.
    But the fact is, there’s already a standard low voltage power adaptor: the USB mini-B.

  • how does he do that?

    Someone asked how the automatic podcast works. It’s a bit complex, and they probably will be sorry they asked.

    I have all my music saved as MP3s on a server running Firefly Media Server. It stores all its information about tracks in a SQLite database, so I can very easily grab a random selection of tracks.

    Since I know the name of the track and the artist from the Firefly database, I have a selection of script lines that I can feed to flite, a very simple speech synthesizer. Each of these spoken lines is stored as as wav file, and then each candidate MP3 is converted to wav, and the whole mess is joined together using SoX. SoX also created the nifty (well, I think so) intro and outro sweeps.

    The huge wav file of the whole show is converted to MP3 using LAME and uploaded to my webhost with scp. All of this process is done by one Perl script – it also creates the web page, the RSS feed, and even logs the tracks on Last.fm.

    Couldn’t be simpler.