There is a particularly cheesy scene in the movie The
Core, in which
the geeky dude claims to speak one language: one zero one zero zero.
He also claims to require Hot Pockets in order to do any serious coding.
Thankfully for us, our programming choices (along with dietary options)
include much more than pure binary. This month, we tackle the subject
of languages—specifically, programming languages.

In every issue of Linux Journal, we try to give you some useful tips
and timely information on the programming scene. This month, we look
at a few different languages to give you a better feel for some of the
options out there. Although there is never just one way to solve a problem,
some languages are a better fit for specific needs. The trick is picking
the right tool for the job.

If scripting is your secret sauce, you might find Reuven M. Lerner's
article on JavaScript event handlers useful. Or, for that matter, Dave
Taylor's continuing series on scripting the Internet Movie Database
might prove insightful. Because it's the programming issue, we have
several other scripting articles as well. Raphael Mudge teaches us
about the Sleep language, which uses Java and was inspired by Perl.
Giancarlo Niccolai walks us through using Falcon, which is a language
he wrote to fit a specific need. Thankfully, he's released it to open
source, so we can all benefit.

Sometimes scripting just doesn't fit the bill, and here at Linux
Journal,
we're sensitive to such things. Federico Kereki shows us a great way to
keep track of our code in PHP using Eclipse, an Integrated Development
Environment (IDE).

When it comes right down to it, some of us have very little interest in
learning to program. That's fine too. James Gray interviews the Python
creator, Guido van Rossum. Whether you are a coder or not, it's pretty
exciting to learn about the changes in version 3.0 of the extremely
popular Python language. Heck, it's not even backward compatible!
You won't want to miss the reasons why.

If you're not a programmer, that doesn't mean you have to use this
issue for spit-wad ammunition, however. Maybe Kyle Rankin's column on
integrating Rock Band controllers into your Linux machine is more up
your alley. Combined with the open-source game Frets on
Fire, you can
take advantage of the Rock Band Wii controllers without even owning a Wii.
Using the drum set, you can play a synthesized drum kit with Hydrogen.
The amazing part is that Linux recognizes the controllers right out of
the box! Thank you, Nintendo, for using standard USB ports.

We also have an interview with the SUSE Security Team Lead
Marcus Meissner. You think you're worried about security exploits?
Marcus worries for a living. His work helps protect our systems from
unwelcome visitors. Speaking of which, what issue would be complete
without Marcel Gagné's column? He does indeed
stay true to the issue focus and discusses languages—specifically,
Klingon. If that's too geeky for you, perhaps Pig Latin or even Swedish
Chef-ese is more interesting. Marcel has it all and shows you how to
translate for yourself.

If you really want to talk to your computer, you have to teach it how
to interact with you. Daniel Bartholomew teaches us how to create our
own Zork-like game using the Inform language. He includes instructions
on using both Inform 6 and Inform 7. In fact, a
downloadable version of the program he wrote for the article is available
on our FTP site (see the article for details). If phrases
like, “You're likely to be eaten by a Grue” spark some nostalgia, you
won't want to miss it.

And, as we do every month, we have our regular cast of columnists, reviews and
indepth articles. We hope that whether you're a programmer, a hacker
or just a Linux enthusiast, you'll enjoy this issue. I know I sure have.

Shawn Powers is the Associate Editor for Linux
Journal. He's also the
Gadget Guy for LinuxJournal.com, and he has an interesting collection
of vintage Garfield coffee mugs. Don't let his silly hairdo fool you,
he's a pretty ordinary guy and can be reached via e-mail at
shawn@linuxjournal.com. Or, swing by the #linuxjournal IRC
channel on Freenode.net.