Linux Toys
Things changed in 21st century, so what's a geek to do? As for the household products, you can probably always get stuff cheaper at Wal-Mart than build it yourself. Radio-related projects just don't seem that much fun anymore, since there's little sense of discovery.
Linux Toys is just the book that fills that void.
What's covered Chris Negus (author of the Red Hat Linux Bible) and Chuck Wolber (from Tacoma LUG) came up with 13 different projects that one can do at home. All of them require a PC running Linux (the authors use and recommend Red Hat Linux 9, since that's the environment where the projects have been tested) and a variety of hardware (including none besides the PC), depending on which project you decide to go with. What are the projects? The entire listing is at the book's Web site, but here's a list of all thirteen with short descriptions of what's accomplished in the end (not necessarily in the same order as the chapters):
- Digital Picture Frame: excellent endeavor if you have an old useless laptop with nice LCD screen lying around. The book has detailed step-by-step guide with pictures on how to turn an old laptop into a fancy picture frame playing a slideshow of digital images stored on the hard drive locally or uploaded from network (in case the old laptop has a network card and you decide to keep it when assembling the picture frame). By the way, these things do cost a lot commercially, while P200 and lower laptops are virtually free.
- Arcade Game Player: how to turn an old computer with a good monitor into the arcade game player running XMame. Your house guests can then use joystick to play Donkey Kong, Pac-Man, Asteroids at your next Blast from the Past party.
- Digital Answering Machine: using the Red Hat Linux box as an answering machine that listens for incoming telephone calls (via vgetty), converts the voice messages into digitally compressed sound files and notifies the receiver about new voice message via e-mail.
- Home Music System: have an old PC with fairly large hard drive and some good home entertainment speakers? This project allows the reader to build a jukebox used to play Ogg Vorbis files. The authors use ltJukebox and freedb for music management and information retrieval. The ltJukebox software (which comes with the book's CD) automatically rips the music CDs into .ogg files, though digitizing your collection (if you haven't done it yet) might take a while. After that, however, a standalone computer nicely tucked somewhere in the room behind the speaker system can provide for hours of music. And if you plug it into the network, you'll have the ability to change settings and playlists via telnet.
- Home Video Archive: ever wanted to digitize your VHS collection? This chapter uses ffmpeg and nvrec for capturing and xawtv for adjusting television input. The authors then use Hauppauge WinTV Go and WinTV Theater TV capture card and then record the videos off the TV input into an AVI file. The resulting file is then burned to a CD/DVD (still using Linux tools) as well as into the VCD format that's recognized by most DVD players.
- Personal Video Recorder: ever dreamed of cutting TiVo's market share with your own devices? Well, perhaps, maybe within just one market -- your house. The authors use the same nvrec utility to record the TV input, XmlTV and WebVCPlus for downloading the data on television shows and using Web interface to choose the ones you would like to record. Unlike TiVo though, this home-built digital PVR can only play the recorded shows on a Linux PC in AVI format, but if you followed the previous project, you can burn the resulting file into VCD format.
- Providing dial-up access: this basic project is perhaps familiar to all those who bear the title Network Administrator or used to work for an ISP, but for beginners in the field (and especially for beginners with Linux) it provides a detailed step-by-step plan on how to setup your own dial-up server and become a small ISP. A computer permanently connected to the Internet with a static IP is required for this project.
- Web hosting business: assuming that a computer with static IP address from the previous project and a domain name are available, this project takes the reader through the details of becoming a Linux hoster. This project is especially interesting, since it's applicable to those who have pretty good knowledge of the OS. Numerous online how-to's and manuals take you through separate processes, like adding user accounts, configuring Apache, setting up disk quotas, but few are "turnkey" solutions, where after closing up the book on the last page you can start the hosting business right away.
- Home network with a Linux box: rather detailed description of properly configuring iptables, NAT, as well as DHCP and Samba servers to run the home network with a Red Hat Linux 9 box as a server with the firewall and various Linux/Windows clients connecting to it.
- Video streaming server: set up a camcorder, Web cam or security camera to broadcast the video to the Internet. The authors use a camcorder and ffserver software to stream the video.
- Temperature Monitor: here a temperature sensor kit from DigiTemp needs to be purchased and connected to the telephone cable, which, in turn, will connect to the parallel port. Apparently the ordering page is down as of writing this review, but DigiTemp developer uses Dallas Semiconductors temperature sensors. Then the software provided with the book (ltweather) allows you to look at the current temperature, log it consistently and display it on a Web page if needed.
- Linux and some games on a single floppy: re-using that 3.5'' drive for something practical is the purpose of this project. Although the result - single-floppy with some essential Linux and character-based games on it, can be hardly practical in the modern world, perhaps it's worth playing with just to see how little you need to get the whole OS going from scratch.
- Controlling RC cars from Linux: if you have a large collection of RC cars (and according to the spam messages I am getting, they're the hottest trend this Christmas), there's a variety of things you can do when suddenly instead of using the remote control you engage a Linux PC. Unattended races, testing your AI algorithms for entering DARPA autonomous vehicle challenge, writing some complex artificial life, where species of all sorts can see how well they can survive in a crowded world. The authors use a LynX-PORT board, a fairly expensive, but according to the authors, quite useful I/O board that could be re-used for all sorts of projects.
The Book With 274 pages of useful information (excluding the cover pages), the book creates a very favorable impression. The writing is clear and succinct; each chapter follows the same structure with an overview of the project first, the list of things needed for the project second, a step-by-step guide third, some additional information for those willing to go further fourth, and summary of the project fifth. Each step that requires interaction with a Linux box has the exact command-line instructions spelled out, no matter how basic. (On page 44, for example, the authors provide the mount /mnt/cdrom command, even though knowledge of this step is expected of a Linux user at the command line). Where interaction with the GUI is required, a screenshot is provided. The Troubleshooting section explains what might go wrong with a Red Hat Linux 9 box and how to react to it.
Furthermore, there is no dependence on previous chapters, making each project independent. You will not be told to "start up the video capturing as you have learned in the previous chapter" or refer to "previously described procedures". Theoretically, you could rip out the pages for a single project and give them to someone with no previous knowledge of the project and expect them to complete it.
Pictures are indispensable. Granted, they wouldn't be very useful for the Linux on a Floppy project, but for something like a digital picture frame, where you're required to disassemble an old laptop and play with the parts, it's essential. The pictures are all black-and-white, and by "pictures" I mean real photographs, not diagrams explaining how things should be done in theory.
The authors' sense of humor permeates the book, which makes it an enjoyable read. For example, on page 255, when completing the Linux RC toy car project, the photo of the race has a caption about every Linux car crossing the "Finnish" line. (Tip: Linus didn't always live in California). The layout of the book also makes it convenient to read and follow. A bar across the top of the page always tells you which project you're on. When enumerating the things required for the project, the authors use bulleted lists with clear explanations.
Another thing worth mentioning is the book's integration with the Web. The book's Web forums allow you to post questions and impressions from each specific project. The authors are also accepting submissions for new Linux Toys from the readers. The Web site in this sense is remarkable, as with too many technical books the so called "companion Web site" is not truly a companion, but a marketing pitch followed by a bookstore link.
Overall, I think Chris Negus and Chuck Wolber have done a very nice job. If I had more time, I would explore more of the projects personally (so far I am started on rebuilding my home network, but I do want to try out the digital picture frame, being a proud owner of Compaq LTE P100 laptop). The book would be a good read for anyone looking for some cool hobby projects, and perhaps would be a good gift for technically inclined kids, who are interested in technology.
Speaking from a different perspective, Linux Toys is the book needed by the open source community. While the usual arguments of being able to look at the OS's source code and concepts of Free software only vaguely interest most individuals, a book like this would spark interest in Linux OS as providing the opportunities to create a variety of cool toys and have fun doing it.
Read more of Alex's reviews of technical and tech business books. You can purchase Linux Toys: 13 Cool Projects for Home, Office and Entertainment from bn.com. Slashdot welcomes readers' book reviews -- to submit a review for consideration, read the book review guidelines, then visit the submission page.
mp3elf is pretty cool. Open source design documents / diagrams, too.
I don't think he does overestimate the average /.-er age. Think about it: the project books that you read probably came from a dusty old bookshelf or from your local public library and were written pre-1960. Any new project books had crappy projects because they didn't want to get sued. The books from the first half of the 20th century had the really neet Van-Der-Spark generators and the X-Ray machine plans ( COOL! I can make my own X-Ray machine! All I need is copper pipe - check, tons of wire - check, a vacuum tube - check, tin foil - check, a distributer cap from a Model T - Bummer.. )
Eat at Joe's.
actually, this is very important. let me give yo a few reasons. not the least is that broadband has about 10-20% market, so 80% + are still dialing up.
.iso's every week.
one, at a school that has a fast connection, it would be great to offer students who don't have internet access at home the ability to log on...(this is a project i tried for a few years to get going, but district politics...arghhh). two, many times you go on vacation (and don't have an AOL coaster, er, CD handy.) you call home for 4-5 minutes at midnight, it isn't gonna cost a lot. remote access. three, cheap business VPN. most data can be easily web based, and this gives employees access from anywhere. this isn't so 1994. this is a very practical project. i mean, it isn't like everyone is downloading that latest linux
My problem? I was perfectly gruntled, until some numbnuts came by and dissed me.
My dad had one of those books of projects for the great outdoors.
It included instructions on creating your own Tepee and lounge chairs made of rows of freshly cut saplings.
We would have had to clear an acre of forest to complete that project.
The world will not get better through technology. We must seek to be better people.
Given what I have seen dropped off on days when the local recycler let people bring in used electronics for proper disposal (you would be surprised as to amount of hazardous waste in a computer or dvd player) there should be plenty of boxes sitting in people's garages. Put those local scout troops to good use. phase out the pinewood derby and see who could build the fastest single floopy version of lunar lander or that old star trek game. If we let them use a 64 mb usb drive, they could make it networkable.
I make my face look like this and concerned words come out.
I am sorry, looks like I got it right in the book description box, but then misspelled it through out the review.
I've been thinking of the Laptop picture frame program for a bit. I was going to code one up over the holidays using java. I never thought of loading linux but am curious how well those odd video cards in notebooks are supported?
One of the projects in the book is an answering machine/IVR/voice mail system.
It made me wonder if there is there any free or inexpensive Linux software, even highly experiemental, for taking a voice file and producing a crude translation to text?
I notice that IVR systems nowadays aren't bad at translating "David Dennis" to my extension, so surely we should be able to translate speech to text.
I really, really, really, really hate listening to voice mails, so it would be so cool to do an answering machine that would create that. I know the project in the book can do text to speech, but speech to text, even crudely, seems a lot more interesting.
Thoughts?
D
TechTV did a bit a while back on some form of digital answering machine. Leo was designing a Linux box with vgetty to replace They Might Be Giants' "Dial-A-Song" machine.
For those that don't know, some public libraries offer a Dial-A-Story function for kids where they call up a local number and a recording plays a story that gets changed weekly or so.
I was trying to follow it as we are looking to implement something similar for an aging system that uses 8-track. I figure a low-cost, stable, low-maintenance, little-fuss system should do the trick for a public library.
Leo's hangup (apologies for the bad pun) was on tracking down a compatible voice modem to work with vgetty. I lost the trail since then.
Does any retail outlet sell compatible stuff or is it really a treasure hunt for one of those voice modems that work well with vgetty?
I figured it could be a cool thing to introduce Linux to a library that has seen nothing but MS products (thanks to a grant from the B&M Gates Foundation).
Reminds me of Control Things with Your Timex Sinclair by Robert Swarts.
I wasted a couple weeks setting up a Linux voice mail system at work. Looking at the VOCP website, it seemed like an easy proposition, but it was quite a challenge to find a modem that actually worked with vgetty. In the end the Zoom 2949C and some hacking on the vgetty tools got the system working.
The system is kind of cool though. You can set it up to email an ogg or mp3 to the voicemail box owner.
It also seemed to confuse the telemarketers too, before installing the system, we got several calls a day, now we get one or two a week.
I'm a bit of a talk radio junkie. A couple years back I put together something that would record a local talk radio station 24/7. Basically it was a radio plugged into the soundcard of an old P120, which recorded it into 16kbps MP3s.
.m3u files that would stream in WinAmp or whatever when you clicked on them.
.m3u file for each mp3, I just wrote a CGI script that would automatically generate an .m3u file on the fly, and scriptaliased it to an appropriate regex that would call it when an .m3u file was requested. That way the browser really thought it was downloading an .m3u file, instead of a .cgi file or something.
I wrote a quick-and-dirty program that would record from the soundcard, pipe the output into LAME, and break it up into 1-hour chunks. Later versions were a bit more sophisticated, using liblame instead of piping to a separate LAME process, and using libshout to send the output to a shoutcast server on localhost live.
There were also a couple cleanup shell scripts that would delete old files when the drive began to fill.
But probably the most interesting part was, it was web-accessible. I had a few quick-and-dirty CGI scripts that would make an HTML index of the files, and provide links to the files, and also links to
Rather than create an
Of course, I find out much later that mod_rewrite would probably have been a cleaner way to do it.
Naturally it had NFS and SMB access as well, so I could just pull up a show from any of my Linux or Windows machines over the network.
- NAT
- Fileserver
- Web server
- Record Caller ID of incoming calls
- Monitor temperature and light intensity in the room.
- Control lights in the house using X10.
I used Apache, PHP and mySQL to orchestrate the whole thing. It had a web user interface to remotely view the Caller IDs, temperature/light values and also to switch ON and OFF lights (I drove my roommate nuts once with this feature)! The hardware required was a modem and X10 Firecracker which connects to the serial port.Those were the days!
I built a network-configurable mp3 player using a Thinkpad 760EL (P133) I bought second-hand a few years ago and recently retired. I put on a tiny slackware 9.1 install as well as the Otto Jukebox and MySQL. I loaded it up with 40 hours of music my parents would like on the 2gig hard disk (18 more hours can go on) and gave it to them as a gift.
I plugged it into their LAN (and they plugged it into an RF transmitter) and through a web browser on any of their THREE machines they can see currently-playing tunes, request tunes or albums or stop a tune from playing. They can also make database queries for artists, songs, albums etc. all through a little box on the browser screen. They can listen to the music wherever their RF transmitter reaches on the property. The system is plug and play. It automatically starts up on bootup. Fool proof.
I've installed SAMBA and with some tweaking, I'll allow them to add/delete music files through drag and drop from their windows machines. I'll have Otto in a cron job to update the available music every 12-24 hours.
I don't even have a computer science degree. I'm just a lowly novelist, but this sounds a lot better than telnetting in to request a tune! (blech! blech! blech!) You call yourself a GEEK Wolber?????
Charges for ceiva are $8 to $14 US per month, with a several percent discount on buying a year's subscription. That's not chicken feed, but it's manageable. There is assuredly no $3 monthly fee. Just bought two of them for my kids' non-techie great-grandmas.
Oh, and there's a fledgling linux-on-ceiva project that was my last enticement: I figured if granny didn't like it, I'd rip the guts out of it and make it mine.
For me, the ceiva 'Weatherchannel' with a 3-day localized forecast was the coolest thing so far. Although having cousins get into character-assasination games with funny pics and captions for granny has been a close second. We've also quickly decided it'd be nice to be able to eavesdrop on what everyone's uploading to the ceiva. For obvious reasons.
Before the review disappears off the front page, I just want to say thanks to Alex Moskalyuk for your kind review and for everyone else who piled on afterwards. If nothing else, I wrote Linux Toys in the spirit of having fun and sharing experiences with Linux projects. You all seem to have caught the spirit. I'll go through and post responses to some of the queries, ideas and bashes that have come from this review. In the mean time, I've gathered a few things I have to say on our LinuxToys.net web site. We're glad to have you come join our forums and continue discussions on any of the projects (or even projects of your own!)
Got that beat. I made a used thinknic into a kitchen lan station with laptop harddrive & recycled k6-3 cpu that allows my Mom to surf (Firebird) and read mail (from main system's IMAPs server w/ Thunderbird). SSH+X enables remote applications like OpenOffice from main system. And NFS+automount + chbg allows a slide show of images from the main system to work as a screensaver if she's logged or even if she's not logged in. (chbg can be run in screensaver mode with XDM in background)
The monitor is a 13" acer tft bought new on ebay for $290
So my picture frame system also browses, reads email, and runs office and checkbook programs remotely without scattering her data and email across multiple systems.
What are the best ways to skin a cat?
While I've never applied it to cats, here's a very slick way to skin most animals.
Note: If you've never been exposed to the realities of gutting, skinning and butchering animals, what follows may be somewhat disturbing to you. If this describes you, I recommend skipping this post. Reading it might interfere with your next juicy steak.
Start by cutting the skin from the genitals to the throat -- generally this is part of the gutting/cleaning process. Then cut through the skin forward of the ears, down around the side of the head and around the neck, taking care to make sure the cut around the front of the neck intersects the cut up the front. All of these cuts should go all the way through the skin to the subcutaneous fat, but not into the flesh underneath, obviously. Then cut all four legs off at the "knee", and slit the skin up the remaining stumps, connecting the cuts to the long cut up the belly/breast. Next, using the standard skinning technique of slicing the fat that connects skin to flesh, separate the skin of the top and back of the head from the head. The goal is to free a good flap of fur that includes the ears.
Preparation complete, here's the nifty part: Tie a rope (chain for larger animals, like mule deer) around the ears. A slipknot should allow the rope to tighten quite securely around the lump created by the cartilage in the ears. Tie another rope around the head (for deer, hook it to the antlers). Attach the rope on the head to some solid object (trees work well) and the other rope to some object that can pull. For small animals, a person or two can apply enough force. For large animals, a truck is recommended.
Next step: Pull. As long as you've got it cut in all the correct places, and as long is the animal's neck is intact (if it has been weakened by some sort of damage, it may separate) the skin should peel right off of the body.
This is a very quick and easy way of skinning a cat, but it can fail in various ways. In particular, it may damage or rip the pelt. If you just want the skin off, or if you just want some cat leather, but don't particularly need it all in one piece, this is a good approach. Most of the time it will come off cleanly, but there are exceptions, and if it matters, you should probably stick to a more manual approach. Obviously, if the neck or the pelt do break, you'll have to fall back on the manual process anyway.
I have a feeling that no matter what way I used, my daughter would be really, really pissed at me, though. :-(
Very true. Try it on the neighbor's cat.
Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
Interesting how with one day on /. the book has already jumped onto the daily amazon.com best sellers list as #3. :)