Update: The packages distributed here have been superseded by the new autotoolized ARPACK.
This evening, I ran into a pretty frustrating problem with ARPACK. It aborted without being able to compute an Arnoldi factorization from within one program, but the same snippet of code (with the same matrix!) would work just fine in another.
To make a long story short, I eventually tracked down the root cause: Both LAPACK and ARPACK define a routine called SECOND, but with different call signatures. LAPACK's copy is a function, whereas ARPACK's copy is a subroutine. Usually, all goes well, and the linker is intelligent enough to pick the right copy in all instances. I was unfortunate enough to be in a situation where that was not the case. The call to the wrong SECOND messed up the stack, and things got really strange from there. (For example, DLARNV returned a NaN instead of a proper number.)
Hence, the ARPACK-supplied SECOND routine needs to be renamed. The attached NOT FOUND: arpack-arscnd-3.patch.gz=patch against ARPACK version 96 (a revised version of a quick sed job) realizes this suggestion by renaming the routine to ARSCND (as in "ARpack SeCoND"), which fixed the problem for me. Apparently, somebody else on the Octave team ran into a similar problem, but appeared to get only unhelpful replies.
Hopefully, this posting will save somebody some trouble.
Update: This Debian bug tracks progress on the issue.
Update 2: NOT FOUND: arpack-arscnd-3.patch.gz=Version 3 of the patch works against ARPACK96 with patch.tar.gz applied. It's also slightly cleaner: It renames second.f to arscnd.f.
Update 3: I got a reply from Rich Lehoucq acknowledging the bug two years ago, but he never got around to posting my patch. Thus I'm taking the liberty to redistribute an updated version of ARPACK here. The build system has also been updated so that it should work on most modern flavors of Linux without any tweaking.
...the true origin of Darth Tater. Wait no longer.
...I think it's cool that somebody at Radio Bremen translates each month's news into Plattdüütsch and Latin. Such things only happen when commercial interest is not at the forefront of everyone's mind.
Josie's doing something with kids tomorrow, and she needed a word puzzle. I made her one. No. I made her a program to make any number of them. :) Like this one:
KJAPANINAW
ACOUSLAPDO
NIUSBELEUR
GPRDIPPAPC
ASOUDEHCTE
RBCBHGAERS
OEKYMOUSET
OOEALEHLIE
WIRIJSELAR
CATNGMHIDU
I've attached the Python NOT FOUND: find-the-word.py.txt=program to produce stuff like this to this story, should you happen to need something like that. It's the stupidest possible algorithm, purely random. It works well enough, though. You also need a word file, I've attached an NOT FOUND: words=example. Then you call it with
python find-the-word.py words
and it spits out what you want. Golly. :P
I challenge you to come up with a shorter/simpler piece of code that executes the Sieve of Erathostenes than this Python snippet:
N = 1000
candidates = range(2, N+1)
i = 0
while i < len(candidates):
candidates = [n for n in candidates
if n % candidates[i] != 0
or n <= candidates[i]]
i += 1
print candidates
Of course, renaming variables or such silliness does not count. I know that a stopping condition of candidates[i] < math.sqrt(N) would make the whole thing faster, but that's beside the point. This is about simplicity.
So, go ahead and humiliate me. I know you want to. }:)
Just now, I was thinking about which weekend I'd have to reserve to go to LinuxTag, which will be taking place in my current home town, Karlsruhe. Turns out that I don't even need to decide that: They will be charging 35€ to get in this time around. The show was good in 2003, but yaaaawningly boring in 2004. (Yes, I can hear you yawn now, too.) Even though I am officially employed now and the entrance fee would not be a major problem, I will not pay, and consequently not go. I don't think charging money is a good idea, and I firmly believe that most of the community will stay away as well. They have a figleaf "community ticket" program that depends on some sort of viral scheme, but I really doubt that it will work out. Look at the people who have made Linux what it is, and who matter the most: the developers. In general, they don't have much money to just spend on random stuff. Plus, they are already contributing valuable time for free. If LinuxTag wants to turn them away, so be it. In my case, they've succeeded. But who else would be the target audience? Commercial users? Maybe. Private users? I doubt they'll pay. Then who? I don't know.
Back in 2003, I made a donation to them to keep up the good work. I'd be willing to donate more this year (and yes, more than the 35€ they're demanding), if they told me that they really needed the support and the whole thing was still free. If they're forcibly trying to separate me from my money, I'll really rather stay at home. I'm stubborn like that. Screw them.
They say that Linux has "grown up", and so, LinuxTag needs to do the same. If they are trying to become a commercial fair, fine. Let them be another BuzzwordWorldExpo(tm). Other fairs are giving away exposition space to OSS projects as well, and have generally more to offer. Let them compete and see how they fare.
Update: The "viral scheme" seems to have worked out at least to a point where I got a free ticket to LinuxTag. I guess that public whining is a good way to score one. So, now I know what to do that weekend. :) Based on how things pan out, I might have to take back what I said above, in which case I'll do so on this journal.
By the rules, I may now be able to invite more people to LinuxTag. I'm certainly willing to do my part to get more people invited, should they want to. Just drop me an email.
Think anagrams. 'Nuff said. :)
If you ever thought about shopping at K&M Elektronik, don't do it. They suck. Here's why:
I bought a wireless card from them a while ago, which, over time, bit the bulletkicked the bucket. I am supposing that I was seeing thermal problems, since the card would always start out fine, but then degrade and finally cut the connection as it "warmed up". So far, so good. That can happen. Understandably, I wanted the broken card exchanged. They gave me three options:
The rep's explanation was that I bought the card as "Markenfabrikat" (="brand name") without being guaranteed a specific brand of card. Riiiiight. Now I'm really not so sure I bought anything except abysmal customer service. :barf:
Needless to say, I went for the money option and took what little money was left straight to a competitor, which has this far always had good service, even in borderline cases.
I've just finished updating this site to Drupal 4.6. It went pretty smoothly, except for some hiccups with the image module. I like the new version, even though not much is different. The slightly changed look of the site might give this away, too. If there are any problems with the upgrade, let me know.
Update: The new image module is a dog. I'll be using gallery2 integration instead. The Drupal module project has more info.
Update 2: Screw it. Not even that works right. My galleries and journal stay nice and separate. Period. :no: