I was surprised to see Dave Taylor imply that the magic bash variable $RANDOM is a feature of $(( )) arithmetic syntax [see “Movie Trivia and Fun with Random Numbers”, LJ, August 2008]. It is just a magic variable that can be used anywhere. Likewise, there is no need to use both $(expr) and $(( )); one or the other is sufficient. In particular, lines like:
pickline="$(expr $(( $RANDOM % 250 )) + 1 )"
could have been simplified to:
pickline=$(( $RANDOM % 250 + 1 ))
I might also mention in passing that double quoting is redundant in variable
assignment, even if the expression would normally be unsafe without
Dave Taylor replies: Thanks for your note. I didn't mean to imply that $RANDOM was part of the $(( )) notation, but I will say that in my experience it's far more useful in that context than elsewhere I use it. Finally, although the double quotes are occasionally unneeded, I find that a consistent style (for example, always quote variable assignments) helps with debugging.
In reading Doc Searls' article on the end of analog TV and seeing his background [see “What Happens after Next February?”, LJ, September 2008], I had to speak up and say, “Yes, I was there too in those days.” I have tinkered with radio, most of my life—K9LD. Wire recorders, 21 tube television sets, tall towers with long yagi's. I started in computers when it was diodes and telephone relays, DEC, right on up until now. I would rather write programs than anything else.
Point being, I believe TV will just die. You can download your movies and
watch them when you want. Every home has a PC running something. I
subscribe to Netflix, and would rather that instead of mailing out the
DVDs, they would put it all on a point-and-click basis—ah, those copyright laws though.
Someone will come up with a scheme to where your programming, which is all
we are interested in with television anyway, will be selected and viewed
on your computer—whether it's 20 inches, handheld or, dare I say it, built
in to your glasses.
I'm partway through reading Eric Pearce's article on a 16TB backup NAS (essentially), and I really have to compliment his writing [see “One Box. Sixteen Trillion Bytes.”, LJ, August 2008]. It's simple, direct and honest (“here are the things I thought about doing, but didn't have the time to try”, and “FYI: I'm not sure about these options in practice, but maybe they could improve performance”), and I truly appreciate that.
I find that very often technical people (microbiologists, analytical chemists, IT workers and so on) paralyze themselves into quiescence because they want to present not just a problem but a solution—and not just any solution, but a very thoroughly thought-out and “perfect” and utterly defensible solution. The honesty and practicality that Eric shows in his article is a kind of triumph of what he actually accomplished over the common tendency to “self-paralysis”. It's his writing this down as he did that really impressed me.
I'm glad there is a forum like Linux Journal where the writers can be that
open and (I urge all of us, including myself when I'm ornery!) the readers
keep their criticisms technical.
I am not a computer specialist and neither do I have any interest in
computer code. But, I use a computer most of the day, every day. Having been
stuck with Windows (which I don't like because of the way everything I do
is controlled by Microsoft), I recently bought a small laptop with Linux as
the operating system. It is an absolute disaster area. For a start, it is
incompatible with 3 mobile broadband (I have read a number of blogs and
even the experts agree on that). I have had no success in loading Java,
which is essential for the work I do. And, I can't even load a 56K modem for
emergency use. In short, it is totally useless to me, and I am going to have
to load up Windows XP instead—much against my wishes. I had hoped that
Linux was a serious competitor to Microsoft, but in reality, it is
light-years away, strictly for computer specialists. Of course, I could spend days
and days reading up on how to make it work, but why should I? I only want
to use the computer, not re-invent it. Kernels, shells, command
prompts—these things are of no interest to me whatsoever. It's back to the dark days
of MSDOS all over again.
Shawn Powers replies: I feel your pain. It is so frustrating to buy a computer, especially one preloaded with Linux, only to have it fail during normal, everyday tasks. You didn't mention the brand or vendor of your laptop, but I could name a handful of “Linux-friendly” vendors shipping laptops that seem crippled when they arrive.
My suggestion would be to purchase a laptop from a vendor like EmperorLinux—one that is known for retro-fitting Linux into computers and doing it well. As for the laptop you currently own, there still might be hope, but I'd need more details to point you in the right direction.
It's frustrating as a Linux evangelist when vendors sell pre-installed computers that don't work quite right. I assure you, it's not a Linux thing, but rather a vendor thing. If a vendor shipped a Windows notebook without the drivers, I'd venture to guess it would be even less useful than your Linux laptop.
I was excited to read about the mobile version of the LJ Web site [go to m.linuxjournal.com to try it out], as it will be perfect not only for my Nokia N800, but also my new Acer Aspire One running Linpus Linux Lite. Speaking of the One, I really enjoyed the articles by Marcel Gagné and Victor Gregorio regarding text-mode browsers and the Mutt e-mail program, respectively [see “Browsers with the Speed of Lightning” and “Power Up Your E-Mail with Mutt”, LJ, September 2008]. After trying several browsers, I settled on ELinks and have been trying it out on my Aspire One. I just installed Mutt and will be trying to configure it as soon as I send this message.
Thanks for another great issue! I just subscribed, and my first print
issue should be arriving next month.
I was very interested when I read “Over-the-Air Digital TV with Linux” by Alolita Sharma in the July 2008 issue of LJ.
I purchased the Pinnacle PCYV HD Pro Stick and was disappointed to find
that they have recently changed chipsets. The 801e now utilizes the
DIBcom 0700C-XCCXa-G. It seems that the community has just recently
started reverse-engineering the stick. I have decided to keep the unit,
anxiously awaiting the community support. In the meantime, I will be
supporting the “made for Linux” pcHDTV.
Love Linux Journal! Keep up the great articles.
I'm a little baffled at the article on Xara Xtreme included in the September 2008 Linux Journal. How old is that article? It states: “Until last year, Xara X was a professional, closed-source, Windows-only commercial app...”
Huh? Xara Xtreme has been available for Linux since October 2005. The
article also fails to note that development on the open-source version
ended about two years ago, owing to the fact that the rendering engine was
being kept proprietary, and thus, FOSS contributors lost interest. I'm
guessing this article was written two years ago, at least. You might want to
check the date on your mayonnaise if this kind of stuff is slipping by.
Care to comment?
Alan C. Stegerman
Dan Sawyer replies: When I got your comment, my immediate reaction was, “that can't be right”, so naturally, I returned to my notes and dug around on the Web. Dating the open sourcing to last year was an oversight. I wish I had a good excuse, but I don't. The proper date is there in my notes, and I should have seen it when I was fact-checking the article before I sent it in. It's a gross oversight—thank you for pointing it out. I'd rather be corrected on an error, so that people don't carry away inaccurate information from one of my articles.
As for the development controversy, I hadn't heard about it before your letter. After receiving your message, forwarded on to me by my editor, I dug. And dug. And dug. And eventually, I stumbled upon a blog that mentioned the matter in passing and linked to the developer's listserv group. Here's what I learned.
The latest I can ascertain is that there was, at some point this time last year, an effort to port Xara Xtreme to Cairo away from CDraw, in order to fix the problem (the acquisition of Xara by another company evidently pooched the effort to open source the CDraw library), and that most community involvement has stalled for the time being until that fix is back on-line. Xara either currently hosts or has made space to host the Cairo fork (the information I can find is unclear on this point). This doesn't change my opinion that it's a project that deserves a lot more attention (in fact, I think it reinforces the point). The code base is still available; the listserv is still running; and the SVN is still accepting commits. Xara open sourced a hell of a program, and it'll be a crying shame if its hiatus turns into a death on the vine.
Thanks for bringing the matter to my attention.