Cooking with Linux - Jumbled Words
What on earth are you doing, François? Our guests will be here any moment. What are all these yellow sticky notes doing everywhere? Quoi? You're preparing for the telephony-themed issue? Although I admire your desire to help, I confess that this time, I really have no idea what you are doing. The telephone game? Of course I know what the telephone game is. You tell one person a phrase, he or she whispers it to another, who tells yet another, until you run out of players. The last player repeats what he or she thinks the message is, and it invariably turns out to be something totally different from what was originally selected. I still don't see what all these notes are for.
Ah, I see. They are anagrams, mostly of your first and last name, it would appear. You've got it all mixed up, mon ami. Anagrams, or word scrambles, have nothing to do with the telephone game other than that the message gets scrambled in some way. How many of these notes have you got scattered around the restaurant anyway? Never mind. I don't want to know. Our guests are approaching as we speak. We'll discuss this later.
Welcome, everyone, to Chez Marcel! Please take your seats and make yourselves comfortable. You may want to forgive the yellow notes all over the walls. My faithful waiter has gone anagram-crazy, and what you see is the result. François, if you would be so kind, please head down to the wine cellar. Over in the west wing, there are a few cases of 2002 Bolgheri Rosso Piastraia from Tuscany. Please, fetch some for our guests.
While we await François' return with the wine, let me show you a great little program for generating anagrams. Written by Richard Jones (now maintained by Paul Martin), an is a command-line program designed to generate anagrams. The program is extremely easy to use, but let me offer a quick word of caution. You'll want to use one or more of an's command-line options as it is extremely liberal with the anagrams it returns, and you'll quickly drown in results. My own name, Marcel Gagne, generates 837,989 results if I type an "Marcel Gagne". Notice that when using two words, I put them in quotation marks. If you use the -w option, an generates a list of unique words instead of myriad phrases. Using my name as the example, I get 318 words. Compare that to a return of cam an ger g l e followed by cam an erg g l e and so on.
Increasingly interesting results turn up if you specify words of a particular length. For instance, if you have ten letters to work with, and you'd like to see words of six letters or more, use the -m 6 option, which stands for minimum word length of six. If you know that the word mossy can be generated by the words you are using and you want to see all the combinations of “lost mysteries” that include mossy and contain a minimum of four letters per word, you might try typing the following:
an -m 4 -c mossy "lost mysteries"
A similar program is Evans A Criswell's Wordplay. Wordplay is also a command-line program for generating anagrams. Unlike an, Wordplay generates less words by default, but it also is more likely to generate meaningful results. There are command-line options to limit the number of words or characters each word can have and so on. Simply type wordplay at the command line for a list of options.
You can waste an amazing amount of time using these simple command-line anagram-generators and discover some fascinating things. For instance, did you know that “red pestilence iota nil” is an anagram for “presidential election”? That's just silly, of course. After all, “lulu jar nixon” is an anagram for “Linux Journal”. Then again, so is “lunar join lux”. François! Thank goodness you have returned. Please, pour a rather large glass for each of our guests.
So, what's the point of all this? Well, anagrams can be a great mental exercise, one that is a lot of fun. To that end, there are a number of great games based on anagrams and word scrambles. One of these is Joshua Keel's Kanagram (Figure 1). Kanagram is not only a great game, it's also a great place to start our exploration of word scramble games. You shouldn't have any trouble getting your hands on this one, as it is very likely in your distribution's software repository. Kanagram presents you with a scrambled word and asks you to decipher the word. There's no ticking clock on this one, and you don't get dinged for getting the word wrong. To make the choice of words interesting, the game comes with a number of vocabularies. These are word categories, such as Computers, Inventions, Sports, Professions and so on. There also are generic vocabularies based on whether the words are easy, medium or hard.
On the left-hand side of Kanagram's window, there's a large blackboard with the scrambled letters in the center. On the top right of the blackboard, the category is highlighted. You always can switch to another category with a click of the mouse. If you know the word, type it in the white input box below the blackboard. At any time, you can ask for a little help by clicking the word hint on the bottom left of the blackboard (Figure 2).
That brings us to Kanagram's right-hand side menu, cleverly designed to resemble a filing cabinet. If you do succumb to the pressure and need a hint, it appears in a pop-up near the bottom of the cabinet. Scroll your mouse pointer over the cabinet's drawers, and a tooltip describes what you'll find inside. You can jump to the next anagram, configure some of the program's functions, read the handbook or exit.
As I mentioned in the introduction to the game, Kanagram comes with a handful of vocabularies, but there are more available for download in a number of different languages. Simply click the second file drawer to open Kanagram's configuration dialog. You can look at existing vocabularies and create your own by clicking Vocabularies in the sidebar. To download new vocabularies, click New Stuff instead (Figure 3).
When you click the Download New Vocabularies button, a new window appears showing what's available. You then can select and download vocabularies that appeal to you.
If you could turn anagrams into an arcade game, it might look something like Tom Bradley's Scramble (Figure 4). There's a ticking clock, fun sound effects and multiple levels that can be reached only by making it past a certain percentage of the words successfully. On the surface, it doesn't seem all that complicated. After all, each scramble consists of a measly six letters (“six letters” = “telex stirs”). When the letters appear on the placards at the bottom of the screen, click on the letters to form a word, then click Submit (or if you prefer, type the word and press Enter). If the word exists, it will load up one of the empty word boxes, after which you can move on to the next word.
Strangely enough, getting from one level to the next isn't always as easy as it looks. Sometimes, if you get really stuck, re-scrambling the letters can help—for that reason, you'll find clicking Shuffle every once in a while a handy thing. Did you, in a flash of brilliance, figure out the six-letter word? If you can guess the six-letter word right off the bat, you automatically move to the next level. Eventually, when you have exhausted all possibilities and the timer runs out, Scramble may deliver a classic arcade pat on the back. Yes, Scramble keeps track of high scores, and lets you enter your name in the high-scorers' list.
For the truly anagram-crazy, there's Colm Gallagher's Anagramarama (Figure 5). It doesn't quite maintain the arcade-like feel of Scramble, but it also doesn't limit itself to six letters. In that respect, it can be much more of a challenge, particularly if you live for the thrill of building words from random collections of letters.
When you click a letter from the top list of available letters, it drops into the Guess box below. After you've assembled your word, or something you think might qualify as a word, simply click the green check mark. Keyboard racers may prefer to type the letters, entering an anagrammatic stream of consciousness.
“I'm upset” is an anagram for “Time's up”, and sadly, closing time approaches. Don't be too upset though. I'm sure we can convince François to refill our glasses a final time. And, while we sip our wine (“mute sip” also is an anagram for “time's up”), we may uncover some interesting anagrams by putting in the names of friends, family members and, of course, coworkers.
Raise your glasses, mes amis, and let us all drink to one another's health. A votre santé! Bon appétit!
|Designing Electronics with Linux||May 22, 2013|
|Dynamic DNS—an Object Lesson in Problem Solving||May 21, 2013|
|Using Salt Stack and Vagrant for Drupal Development||May 20, 2013|
|Making Linux and Android Get Along (It's Not as Hard as It Sounds)||May 16, 2013|
|Drupal Is a Framework: Why Everyone Needs to Understand This||May 15, 2013|
|Home, My Backup Data Center||May 13, 2013|
- Designing Electronics with Linux
- New Products
- Making Linux and Android Get Along (It's Not as Hard as It Sounds)
- Dynamic DNS—an Object Lesson in Problem Solving
- Using Salt Stack and Vagrant for Drupal Development
- Validate an E-Mail Address with PHP, the Right Way
- Why Python?
- Linux Systems Administrator
- Tech Tip: Really Simple HTTP Server with Python
- Build a Skype Server for Your Home Phone System
- Dynamic DNS
10 min 51 sec ago
- Reply to comment | Linux Journal
1 hour 9 min ago
- Reply to comment | Linux Journal
1 hour 59 min ago
- Not free anymore
6 hours 1 min ago
9 hours 48 min ago
- Reply to comment | Linux Journal
9 hours 56 min ago
- Understanding the Linux Kernel
12 hours 11 min ago
14 hours 41 min ago
- Kernel Problem
1 day 43 min ago
- BASH script to log IPs on public web server
1 day 5 hours ago
Enter to Win an Adafruit Pi Cobbler Breakout Kit for Raspberry Pi
It's Raspberry Pi month at Linux Journal. Each week in May, Adafruit will be giving away a Pi-related prize to a lucky, randomly drawn LJ reader. Winners will be announced weekly.
Fill out the fields below to enter to win this week's prize-- a Pi Cobbler Breakout Kit for Raspberry Pi.
Congratulations to our winners so far:
- 5-8-13, Pi Starter Pack: Jack Davis
- 5-15-13, Pi Model B 512MB RAM: Patrick Dunn
- 5-21-13, Prototyping Pi Plate Kit: Philip Kirby
- Next winner announced on 5-27-13!
Free Webinar: Hadoop
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Some of key questions to be discussed are:
- What is the “typical” Hadoop cluster and what should be installed on the different machine types?
- Why should you consider the typical workload patterns when making your hardware decisions?
- Are all microservers created equal for Hadoop deployments?
- How do I plan for expansion if I require more compute, memory, storage or networking?