From brad at bradandkim.net Mon May 3 09:25:40 2004 From: brad at bradandkim.net (Brad) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] Shell script to execute system command as another user Message-ID: <1083594339.17647.1.camel@Darkmatter> How can I set up a perl script that will be owned and executed by nobody (executed through apache) that will then execute a shell command as the user cyrus? TIA, Brad From amoore at mooresystems.com Mon May 3 10:21:24 2004 From: amoore at mooresystems.com (Andrew Moore) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] Shell script to execute system command as another user In-Reply-To: <1083594339.17647.1.camel@Darkmatter> References: <1083594339.17647.1.camel@Darkmatter> Message-ID: <20040503152124.GA19589@mooresystems.com> On Mon, May 03, 2004 at 09:25:40AM -0500, Brad wrote: > How can I set up a perl script that will be owned and executed by nobody > (executed through apache) that will then execute a shell command as the > user cyrus? A popular method seems to be to use "sudo". You can give 'nobody' permissions to run a certain command as 'cyrus', perhaps without a password, in the /etc/sudoers file, I believe. That seems to be better than making the shell script (or command) suid cyrus for some reasons. Hope it helps. -Andy From jmreinke at sunflower.com Mon May 3 11:22:09 2004 From: jmreinke at sunflower.com (John Reinke) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] Shell script to execute system command as another user In-Reply-To: <20040503152124.GA19589@mooresystems.com>; from amoore@mooresystems.com (Andrew Moore) on Mon, 3 May 2004 10:21:24 -0500 Message-ID: <200405031622.i43GM9s11618@newman.sunflower.com> I'd probably accomplish this through file permissions. Make the script owned by 'cyrus' and also use the set-ID option (see the chmod manpage). When it executes, it will execute as the file owner, no matter who runs it. Make sure that the permissions allow the user 'nobody' to access the script, but no unauthorized users (you never can be too safe when executing shell commands based on user input). You may want to use group permissions to accomplish that. John > amoore@mooresystems.com (Andrew Moore) wrote: > > On Mon, May 03, 2004 at 09:25:40AM -0500, Brad wrote: > How can I set up a perl script that will be owned and executed by nobody > (executed through apache) that will then execute a shell command as the > user cyrus? A popular method seems to be to use "sudo". You can give 'nobody' permissions to run a certain command as 'cyrus', perhaps without a password, in the /etc/sudoers file, I believe. That seems to be better than making the shell script (or command) suid cyrus for some reasons. Hope it helps. -Andy _______________________________________________ kc mailing list kc@mail.pm.org http://mail.pm.org/mailman/listinfo/kc > From brad at bradandkim.net Mon May 3 11:52:13 2004 From: brad at bradandkim.net (Brad) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] Shell script to execute system command as another user In-Reply-To: <20040503152124.GA19589@mooresystems.com> References: <1083594339.17647.1.camel@Darkmatter> <20040503152124.GA19589@mooresystems.com> Message-ID: <1083603132.17647.12.camel@Darkmatter> On Mon, 2004-05-03 at 10:21, Andrew Moore wrote: > On Mon, May 03, 2004 at 09:25:40AM -0500, Brad wrote: > > How can I set up a perl script that will be owned and executed by nobody > > (executed through apache) that will then execute a shell command as the > > user cyrus? > > A popular method seems to be to use "sudo". You can give 'nobody' > permissions to run a certain command as 'cyrus', perhaps without a > password, in the /etc/sudoers file, I believe. > > That seems to be better than making the shell script (or command) suid > cyrus for some reasons. > > Hope it helps. > > -Andy So you think this is a 'safer' alternative than suid? I will check this out. I am going to look at the suid options also. Thanks to John for that advice as well. Brad From DDumler at jccc.net Mon May 3 12:00:35 2004 From: DDumler at jccc.net (David Dumler) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] Shell script to execute system command as another user Message-ID: <7D5D8911668F50499D80DA10A4ED68AB626864@ns-exch05.jccc.net> There is also an interface to sudo available on cpan. I have never used it nor do I know how well it works, but it is there if you want to try it out and let us know. -David -----Original Message----- From: kc-bounces@mail.pm.org [mailto:kc-bounces@mail.pm.org]On Behalf Of Brad Sent: Monday, May 03, 2004 11:52 AM To: Andrew Moore Cc: kc@mail.pm.org Subject: Re: [Kc] Shell script to execute system command as another user On Mon, 2004-05-03 at 10:21, Andrew Moore wrote: > On Mon, May 03, 2004 at 09:25:40AM -0500, Brad wrote: > > How can I set up a perl script that will be owned and executed by nobody > > (executed through apache) that will then execute a shell command as the > > user cyrus? > > A popular method seems to be to use "sudo". You can give 'nobody' > permissions to run a certain command as 'cyrus', perhaps without a > password, in the /etc/sudoers file, I believe. > > That seems to be better than making the shell script (or command) suid > cyrus for some reasons. > > Hope it helps. > > -Andy So you think this is a 'safer' alternative than suid? I will check this out. I am going to look at the suid options also. Thanks to John for that advice as well. Brad _______________________________________________ kc mailing list kc@mail.pm.org http://mail.pm.org/mailman/listinfo/kc From brad at bradandkim.net Mon May 3 12:50:19 2004 From: brad at bradandkim.net (Brad) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] Shell script to execute system command as another user In-Reply-To: <200405031622.i43GM9s11618@newman.sunflower.com> References: <200405031622.i43GM9s11618@newman.sunflower.com> Message-ID: <1083606618.17647.16.camel@Darkmatter> On Mon, 2004-05-03 at 11:22, John Reinke wrote: > I'd probably accomplish this through file permissions. Make the script owned by 'cyrus' and also use the set-ID option (see the chmod manpage). When it executes, it will execute as the file owner, no matter who runs it. > > Make sure that the permissions allow the user 'nobody' to access the script, but no unauthorized users (you never can be too safe when executing shell commands based on user input). You may want to use group permissions to accomplish that. > > John This seems to work great. I have always heard advice on using caution when using suid. I had never tried it until now. I guess as long as it is not a big security risk, this is easy and accomplishes just what I need. Thanks, Brad From frank at wiles.org Mon May 3 12:54:04 2004 From: frank at wiles.org (Frank Wiles) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] Shell script to execute system command as another user In-Reply-To: <1083606618.17647.16.camel@Darkmatter> References: <200405031622.i43GM9s11618@newman.sunflower.com> <1083606618.17647.16.camel@Darkmatter> Message-ID: <20040503125404.772c25d3.frank@wiles.org> On Mon, 03 May 2004 12:50:19 -0500 Brad wrote: > On Mon, 2004-05-03 at 11:22, John Reinke wrote: > > I'd probably accomplish this through file permissions. Make the > > script owned by 'cyrus' and also use the set-ID option (see the > > chmod manpage). When it executes, it will execute as the file owner, > > no matter who runs it. > > > > Make sure that the permissions allow the user 'nobody' to access the > > script, but no unauthorized users (you never can be too safe when > > executing shell commands based on user input). You may want to use > > group permissions to accomplish that. > > > > John > > This seems to work great. I have always heard advice on using caution > when using suid. I had never tried it until now. I guess as long as > it is not a big security risk, this is easy and accomplishes just what > I need. It's more of a security risk than the sudo method. With sudo only the user(s) you specify can run the program with the privileges of another. With suid anyone who can run the program ( which is typically set 755 ) can run it with the other privileges. Another solution that can be beneficial depending on the setup is to make the data that you need read/write access to as user cyrus be owned by a group that both cyrus and nobody are a member of and make the data group writable. --------------------------------- Frank Wiles http://frank.wiles.org --------------------------------- From davidnicol at pay2send.com Tue May 4 18:43:44 2004 From: davidnicol at pay2send.com (David Nicol) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] Shell script to execute system command as another user In-Reply-To: <20040503125404.772c25d3.frank@wiles.org> References: <200405031622.i43GM9s11618@newman.sunflower.com> <1083606618.17647.16.camel@Darkmatter> <20040503125404.772c25d3.frank@wiles.org> Message-ID: <40982AB0.1050809@pay2send.com> As I understand it the big risk with set-UID programs is the possibility that a user can alter the operation of the run-time linking to run arbitrary code. I believe this risk can be mitigated by creating a statically linked compiled wrapper which is owned by cyrus and, after performing any additional security checks, such as verifying that certain environment variables are within expectations, execs the script. What other risks are associated with set-uid programs and how can they be mitigated? Frank Wiles wrote: > On Mon, 03 May 2004 12:50:19 -0500 > Brad wrote: > > >>On Mon, 2004-05-03 at 11:22, John Reinke wrote: >> >>>I'd probably accomplish this through file permissions. Make the >>>script owned by 'cyrus' and also use the set-ID option (see the >>>chmod manpage). When it executes, it will execute as the file owner, >>>no matter who runs it. -- davidnicol@pay2send.com. I know you, junk mail. Gonna miss you when you're gone From ironicface at earthlink.net Wed May 5 00:46:30 2004 From: ironicface at earthlink.net (Teal) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] Shell script to execute system command as another user Message-ID: <40987FB6.6080401@earthlink.net> It also depends on wether your script is secure in the first place. Are you using -Wt (Warn and taint mode)? Are you allowing variables to be passed in from the web? Or is the web just a trigger to a script that recieves no outside information. Teal From brad at bradandkim.net Wed May 5 09:03:52 2004 From: brad at bradandkim.net (Brad) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] Shell script to execute system command as another user In-Reply-To: <40987FB6.6080401@earthlink.net> References: <40987FB6.6080401@earthlink.net> Message-ID: <1083765832.20864.9.camel@Darkmatter> On Wed, 2004-05-05 at 00:46, Teal wrote: > It also depends on wether your script is secure in the first place. > Are you using -Wt (Warn and taint mode)? > > Are you allowing variables to be passed in from the web? > Or is the web just a trigger to a script that recieves no > outside information. > > Teal > The intention is to pass variables from a web page. I am running -W but not -t. I was not aware of that option. I am definitely a perl newbie, so I appreciate everyone's help making sure my script is secure. Thanks, Brad From sparling at uclick.com Wed May 5 14:02:41 2004 From: sparling at uclick.com (doug sparling) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] Part-time Perl opportunity In-Reply-To: <20040210222526.GA31624@mooresystems.com> References: <71BEC0D4E1DED3118F7A009027B12028034C9183@EXCH_MISSION> <20040210222526.GA31624@mooresystems.com> Message-ID: <1083783761.4320.19.camel@oiche> UClick.com is looking for a part-time developer who has a fundamental understanding of Apache, Linux, databases and Perl. This is a great opportunity for a student who is looking for some experience while going to school. Send resumes and information requests to: sparling@uclick.com Thanks -- doug sparling uclick.com/ucomics.com/mycomicspage.com/comicssherpa.com sparling@uclick.com - 816.300.6595 From marsee at oreilly.com Fri May 7 17:39:59 2004 From: marsee at oreilly.com (Marsee Henon) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] Home Networking Annoyances Needed for New Book Message-ID: Dear User Group Leader: Once again, I must say thanks for the great response to our previous calls for annoyances, gripes, and complaints about Excel, and the Internet, and other topics. The email we received was useful and gave our Annoyances books a great head start. As you might guess, we have yet another book in the wings--this one focusing on home networking annoyances. Everything from cabling hassles to setting up a router to wireless access points to fussing with TCP/IP settings to installing a shared printer. Whether you've set up a wired (Ethernet, phoneline, or powerline) or wireless (802.11a, b, or g) network, merely shared a DSL line, or networked a bunch of PCs and Macs, feel free to share the annoyances you've encountered along the way. If you or any members of your group have home networking annoyances you'd like to see solved, email marsee@oreilly.com with "Home Networking Annoyances" in the subject line. Please note what hardware, software, and/or service is giving you grief (e.g.: a LinkSys Cable/DSL Router with 4-Port Switch, SMC's EtherPower II network cards, SBC DSL, Windows XP, etc.). As thanks for sharing, we'll make sure to get copies of "Home Networking Annoyances" sent to your group shortly after publication. --Marsee *** An example: The Annoyance: I added a new computer to my network, but it doesn't appear in My Network Places or Network Neighborhood on any of the other computers. The Windows help files tell you to reboot all the other computers on the network in order to see the new computer, but there's got to be a better way! The Fix: There is. Assuming your hardware connections are working, and you've created at least one shared resource on the new computer, you don't have to reboot the rest of the network to see the new computer. Wait twelve minutes. Honest. Could I make that up? Get a cup of coffee, empty the dishwasher, or change all the burned out light bulbs in the house. Then open the network folder again, or press F5 to refresh the display if you didn't close the folder. You should now see the new computer. Why does this happen? The icons in the network folders (My Network Places and Network Neighborhood) are controlled by a service called the Computer Browser Service, which browses the network, peers down the pipes (including the virtual pipes of wireless connections), and checks to see who's on board. In a peer-to-peer network, the computers elect one of their own as a browser master using a complicated scheme that involves a private conversation among the computers (held secretly so you aren't aware of it and can't control or interfere with it). The browser master runs the browser service every twelve minutes, and populates the network folders of all computers on the network with icons representing the computers it finds. *** From cowdrick at toto.net Sun May 9 09:29:16 2004 From: cowdrick at toto.net (Charles Cowdrick) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] Full-time Perl opportunity In-Reply-To: <1083783761.4320.19.camel@oiche> References: <71BEC0D4E1DED3118F7A009027B12028034C9183@EXCH_MISSION> <20040210222526.GA31624@mooresystems.com> <1083783761.4320.19.camel@oiche> Message-ID: <406BE43E-A1C5-11D8-981E-000393C5D31A@toto.net> Director of Web Services position open (was Webmaster). Community College setting. Announcement: http://www.kckcc.edu/hr/employment/director_of_web_services.psp Salary: 52,000 - 55,000 + benefits Apply by May 14 --------------------------------------------------------------- I'm Charles Cowdrick, Webmaster, and I approve of this message! www.kckcc.edu From cscheppers at kc.rr.com Mon May 10 21:50:23 2004 From: cscheppers at kc.rr.com (C.J. Scheppers) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] looking forward to Tuesday meeting Message-ID: Wink, wink, nudge, nudge ... C.J. From amoore at mooresystems.com Tue May 11 11:37:30 2004 From: amoore at mooresystems.com (Andrew Moore) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] looking forward to Tuesday meeting In-Reply-To: References: Message-ID: <20040511163730.GB9689@mooresystems.com> On Mon, May 10, 2004 at 09:50:23PM -0500, C.J. Scheppers wrote: > Wink, wink, nudge, nudge ... Oh, that's tonight, right? OK. I'll try to stop by. I promise this time. (unless I just forget). Anything on the agenda? I got a copy of Perl Medic recently. Perhaps I'll whip up a review or something, even. -A From garrett at scriptpro.com Tue May 11 13:02:55 2004 From: garrett at scriptpro.com (Garrett Goebel) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] looking forward to Tuesday meeting Message-ID: <71BEC0D4E1DED3118F7A009027B12028034C92BA@EXCH_MISSION> amoore at mooresystems dot com wrote: > C.J. Scheppers wrote: > > > > Wink, wink, nudge, nudge ... > > Oh, that's tonight, right? > > OK. I'll try to stop by. I promise this time. (unless I just forget). > > Anything on the agenda? > > I got a copy of Perl Medic recently. Perhaps I'll whip up a review or > something, even. A review would be nice. I've got a copy, but having finished it yet. Looks good. We've got the Elvis room at 7PM. Garrett -- Garrett Goebel IS Development Specialist ScriptPro Direct: 913.403.5261 5828 Reeds Road Main: 913.384.1008 Mission, KS 66202 Fax: 913.384.2180 www.scriptpro.com garrett@scriptpro.com -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.pm.org/pipermail/kc/attachments/20040511/a46dd016/attachment.htm From amoore at mooresystems.com Wed May 12 15:08:28 2004 From: amoore at mooresystems.com (Andrew Moore) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] Last night's meeting Message-ID: <20040512200828.GA19612@mooresystems.com> Hi Mongers - I finally made it back to a meeting! When I left Garrett, Matt, C.J., Stephen and I had been there. I hear that Michael also made it after I ducked out early. A few topics were informally bounced around. C.J. had his laptop and we played for a while getting apache runnig perl CGI scripts on it. Garrett Dominated that task. Another thing that came up was that I had asked about using Build::Module instead of the old MakeMaker stuff. I have discovered since then that you can use the "modulemaker" from the ExtUtils::ModuleMaker package to set up a telmplate for building simple modules, much like h2xs lets you do the old way. It's worth using in my opinion if you write your own modules. It looks like Build::Module will become the preferred method soon, so you may as well learn it now! Finally, they were out of pale ale, but we still managed a pretty good time. See you guys June 8th! -Andy From penguinista at kc.rr.com Tue May 11 16:43:38 2004 From: penguinista at kc.rr.com (Matthew Copple LCA) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] Last night's meeting In-Reply-To: <20040512200828.GA19612@mooresystems.com> References: <20040512200828.GA19612@mooresystems.com> Message-ID: <200405111643.38960.penguinista@kc.rr.com> I had a great time at last night's meeting and learned a lot! I'm looking forward to next month already! Matt On Wednesday 12 May 2004 03:08 pm, Andrew Moore wrote: > Hi Mongers - > > I finally made it back to a meeting! -- Matthew Copple, LCA penguinista@kc.rr.com From marsee at oreilly.com Thu May 13 18:55:00 2004 From: marsee at oreilly.com (Marsee Henon) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] Newsletter from O'Reilly UG Program, May 13 Message-ID: ================================================================ O'Reilly UG Program News--Just for User Group Leaders May 13, 2004 ================================================================ -Need Expo Hall Passes for Macworld in Boston July 13-15? -Want to Use the Perl Camel on Your User Group Site? -Put Up an O'Reilly Open Source Convention Banner, Get a Free Book ---------------------------------------------------------------- Book Info ---------------------------------------------------------------- ***Review books are available Copies of our books are available for your members to review-- send me an email and please include the book's ISBN number on your request. Let me know if you need your book by a certain date. Allow at least four weeks for shipping. ***Please send copies of your book reviews Email me a copy of your newsletters or book reviews. For tips and suggestions on writing book reviews, go to: http://ug.oreilly.com/bookreviews.html ***Discount information Don't forget to remind your members about our 20% discount on O'Reilly, No Starch, Paraglyph, and Syngress books and conferences. Just use code DSUG. ***Group purchases with better discounts are available Please let me know if you are interested and I can put you in touch with our sales department. ---------------------------------------------------------------- General News ---------------------------------------------------------------- ***Need Expo Hall Passes for Macworld in Boston July 13-15? Let me know and I can send you some. The free online registration is over, but you can bring these cards on site to register for an exhibit hall admission. *** Want to Use the Perl Camel on Your User Group Site? Here is the Perl Camel FAQ: http://perl.oreilly.com/pub/a/oreilly/perl/usage/faq.html And the the Perl Camel Usage and Trademark Information: http://perl.oreilly.com/pub/a/oreilly/perl/usage/ ***Put Up an O'Reilly Open Source Convention Banner, Get a Free Book We're looking for user groups to display our conference banner on their web sites. If you send me the link to your user group site with our O'Reilly Open Source Convention banner, I will send you the O'Reilly book of your choice. OSCON Conference Banners: http://ug.oreilly.com/banners/oscon2004/ ================================================================ O'Reilly News for User Group Members May 13, 2004 ================================================================ ---------------------------------------------------------------- Book News ---------------------------------------------------------------- -Hacking the Code -iPhoto 4: The Missing Manual, 3rd Edition -Network Security Hacks -Word Pocket Guide, 2nd Edition -JavaServer Faces -Managing and Securing a Cisco SWAN ---------------------------------------------------------------- Upcoming Events ---------------------------------------------------------------- -Derrick Story ("Digital Photography Hacks," "Digital Photography Pocket Guide"),Unruh's Photography, Santa Rosa, CA--May 15 -Virtual Author Event, "Meet & Geek"--May 22 -O'Reilly at Microsoft Tech Ed 2004, San Diego, CA--May 23-28 ---------------------------------------------------------------- Conference News ---------------------------------------------------------------- -Mac OS X Conference Call for Participation--Ends June 11 -O'Reilly Open Source Convention Early Bird Discount--Ends June 18 ---------------------------------------------------------------- News ---------------------------------------------------------------- -We've got a new name--O'Reilly Media -Treo 600: Not Your Parents' PalmPilot -Web Programming Certificate Series -Learning Assembly Language Is Still a Good Idea -Building a Parrot Compiler -Take Command of Your Linux Commands -"Version Control with Subversion": Introduction -The Missing Digital Photography Hacks -Automated Web Photo Galleries with iPhoto and Perl -Hacking Excel, Part 1 -An Inside Look at XP SP2 -Performance Analysis of J2EE Applications Using AOP Techniques -The State of JAXB: Availability, Suitability, Analysis, and Architecture -Creating an FTP Client in .NET ---------------------------------------------------------------- News From Your Peers ---------------------------------------------------------------- -Does your group need help with publicity or meetings? ================================================ Book News ================================================ Did you know you can request a free book to review for your group? Ask your group leader for more information. For book review writing tips and suggestions, go to: http://ug.oreilly.com/bookreviews.html Don't forget, you can receive 20% off any O'Reilly, No Starch, Paraglyph, or Syngress book you purchase directly from O'Reilly. Just use code DSUG when ordering online or by phone 800-998-9938. http://www.oreilly.com/ ***Free ground shipping is available for online orders of at least $29.95 that go to a single U.S. address. This offer applies to U.S. delivery addresses in the 50 states and Puerto Rico. For more details, go to: http://www.oreilly.com/news/freeshipping_0703.html ---------------------------------------------------------------- New Releases ---------------------------------------------------------------- ***Hacking the Code Publisher: Syngress ISBN: 1932266658 "Hacking the Code" covers almost all known security issues related to coding for the Web. It explains how certain code can be attacked, shows how to edit the code, and offers case studies and examples--actual code you can drop right into your applications. The book establishes policies for object input, shows how to audit existing code for potential security problems, and offers best practices for maintaining a session state, handling cookies, getting user input, and more. You don't want a course on security; you just want to fix your code. This book will be your guide. http://www.oreilly.com/catalog/1932266658/ ***iPhoto 4: The Missing Manual, 3rd Edition Publisher: O'Reilly ISBN: 0596006926 Users will find a lot to like about the new iPhoto 4, and The Missing Manual covers it all in detail and with scrupulous objectivity. But this authoritative guide goes further, giving readers the basics they need to make iPhoto really work, including coverage of the essentials of photography, editing basics, and photo presentation. "iPhoto 4: The Missing Manual, 3rd Edition" covers all of these elements step by step, and offers details on even the smallest nips and tucks. http://www.oreilly.com/catalog/0596006926/ ***Network Security Hacks Publisher: O'Reilly ISBN: 0596006438 This information-packed book provides more than 100 quick, practical, and clever things to do to help make your Linux, Unix, and Windows networks more secure. These security hacks don't just cover securing TCP/IP-based services; they also provide intelligent host-based security techniques. Loaded with concise but powerful examples of applied encryption, intrusion detection, logging, trending, and incident response, the book demonstrates effective methods for defending your servers and networks from a variety of devious and subtle attacks. http://www.oreilly.com/catalog/netsechacks/ Five sample hacks are available online: http://www.oreilly.com/catalog/netsechacks/chapter/index.html ***Word Pocket Guide, 2nd Edition Publisher: O'Reilly ISBN: 0596006845 Newly updated for Word 2003, this compact quick reference covers Microsoft Word's keyboard shortcuts, user interface, commands, and tasks. It provides an overview of fundamental Word concepts, then explains how to accomplish specific actions, such as formatting, spellchecking, editing, printing, customizing, and more. The book also contains reference tables for quick lookup of keyboard shortcuts, regular expressions, and common file locations. If you're a Word power user, making the move to Word 2003, or wanting advanced shortcuts and problem-solving help, "Word Pocket Guide, 2nd Edition" is a must-have. http://www.oreilly.com/catalog/wordpg2/ ***JavaServer Faces Publisher: O'Reilly ISBN: 0596005393 "JavaServer Faces" teaches developers how to use the new JavaServer Faces framework to build real-world web applications. The book covers everything you'll need: how to construct the HTML on the front end; how to create the user-interface components that connect the front end to your business objects; how to write a back end that's JSF-friendly; and how to create the deployment descriptors that tie everything together. This book is a complete guide to the crucial new JSF technology. http://www.oreilly.com/catalog/jsvrfaces/ Chapter 1, "Introducing JavaServer Faces" and Chapter 2, "JSF Development Process Overview" are available online: http://www.oreilly.com/catalog/jsvrfaces/chapter/index.html ***Managing and Securing a Cisco SWAN Publisher: Syngress ISBN: 1932266917 This book is essential reading for any network admin, network engineer, or security consultant responsible for the design, deployment and/or management of a Cisco Structured Wireless-Aware Network. It covers all product features, with particular attention to the challenges of integrating legacy Cisco products into a Wireless-Aware network. Specifically, the book will include coverage of Cisco IOS Software-based Cisco Aironet Series access points, Cisco and Cisco Compatible client adapters and the CiscoWorks Wireless LAN Solution Engine (WLSE). http://www.oreilly.com/catalog/1932266917/ ================================================ Upcoming Events ================================================ ***For more events, please see: http://events.oreilly.com/ ***Derrick Story ("Digital Photography Hacks," "Digital Photography Pocket Guide"), Unruh's Photography, Santa Rosa, CA--May 15 O'Reilly author and pro photographer Derrick Story is presenting three mini-sessions designed to help you get the most out of your digital camera. Sessions begin at 1:00 p.m., and he'll be around to answer questions and sign copies of his books between sessions. Unruh's will also have specials on digital cameras and accessories. 823 Fourth St., Santa Rosa, CA. http://www.unruhsphoto.com/ ***Virtual Author Event, "Meet & Geek," MacCenter, South Florida--May 22 Hook up with Snaggy and Nitrozac ("The Best of the Joy of Tech") and Wil Wheaton "Dancing Barefoot" in South Florida. Say "hey" via iChat and iSight, and get a copy of your book signed with digital ink. Signings will be held several times throughout the afternoon. http://www.maccenter.com/seminars/events/2004/05/meetandgeek.lasso ***O'Reilly at Microsoft Tech Ed 2004, San Diego, California--May 23-28 Drop by our booth (#1849), say howdy, and look over our latest publications. http://www.microsoft.com/seminar/teched2004/default.mspx ================================================ Conference News ================================================ ***Mac OS X Conference Call for Participation--Ends June 11 If you're pushing the Mac envelope, we want you to speak at our third annual Mac OS X Conference this October. We're looking for proposals from developers building new apps, admins tapping the open source toolbox, small business owners powering their bottom lines, and digital musicians leveraging X's muscle--but we're open to surprises, too. The deadline for proposals is June 11. http://conferences.oreillynet.com/cs/macosx2004/create/e_sess ***O'Reilly Open Source Convention Early Bird Discount--Ends June 18 User Group members who register before June 18, 2004 get a double discount. Use code DSUG when you register, and you'll get 20% off the "Early Bird" price. To register, go to: http://conferences.oreillynet.com/cs/os2004/create/ord_os04 O'Reilly Open Source Convention Portland Marriott Downtown Portland, OR July 26-30, 2004 http://conferences.oreilly.com/oscon/ ================================================ News From O'Reilly & Beyond ================================================ --------------------- General News --------------------- ***We've got a new name--O'Reilly Media O'Reilly & Associates, Inc. is now O'Reilly Media, Inc. As we enter our second quarter-century, we've changed out name to reflect our expanding array of products and services. Though the legendary "animal books" remain a centerpiece of O'Reilly's business, the new name better conveys our diverse technology information offerings--conferences, the O'Reilly Network suite of web sites, Safari Tech Books Online, and the new web-based custom publishing platform, SafariU. http://press.oreilly.com/pub/pr/1168 ***Treo 600: Not Your Parents' PalmPilot Palm's Handspring Treo 600 is at the very high end of the PDA spectrum. It provides full PalmOS5.2 support with a fast 144MHz ARM processor, a full GSM or CDMA cell phone, full proxyless web browsing and email support, synchronization with Palm Desktop and Microsoft Outlook, a 640 by 480 camera with the ability to email directly from the camera, and an SD/MMC card slot. Ian Darwin takes you inside in this in-depth review. http://www.oreillynet.com/pub/a/wireless/2004/04/29/treo600.html ***Web Programming Certificate Series This six-course series from the O'Reilly Learning Lab teaches you the skills needed for web programming, web administration, and web site development. You'll learn HTML, JavaScript, XML, SQL, Perl, and Unix. Upon completion of the series, students receive a Certificate of Professional Development from the University of Illinois Office of Continuing Education. And for a limited time, enroll in all six courses and save 50%. http://oreilly.useractive.com/courses/webprogramming.php3 --------------------- Open Source --------------------- ***Learning Assembly Language Is Still a Good Idea Randall Hyde makes a case for the relevance of learning assembly language even today. The key, he says, is to learn how to efficiently implement an application, and the best implementations are written by those who've mastered assembly language. Randall is the author of No Starch's "Write Great Code." http://www.onlamp.com/pub/a/onlamp/2004/05/06/writegreatcode.html ***Building a Parrot Compiler The virtual machine for Perl 6 is not just for Perl 6 anymore. Parrot is a high-level, high-performance target for all sorts of languages. Dan Sugalski, coauthor of "Perl 6 Essentials," demonstrates by building a compiler for a vintage 4GL. http://www.onlamp.com/pub/a/onlamp/2004/04/15/parrot_compiler_construction.html Dan and his coauthor, Allison Randal, are both speaking at July's Open Source Convention: http://conferences.oreilly.com/oscon/ ***Take Command of Your Linux Commands In this SearchEnterpriseLinux.com interview, Dan Barrett lists the top five Linux commands that IT managers should know, Linux tools that should be mastered, best and worst Linux practices, and the funniest commands in his lexicon. Dan is the author of "Linux Pocket Guide." http://searchenterpriselinux.techtarget.com/qna/0,289202,sid39_gci958417,00.html ***"Version Control with Subversion": Introduction Subversion is an open source version control system that can access its file repository across networks. Various people are able to modify and manage the same set of data from their respective locations. Collaboration is fostered, and changes can occur more rapidly. This preview of Chapter 1 from "Version Control with Subversion" (available in July) gives you the history, features, architecture, and components of this important new version control system. http://opensource.oreilly.com/news/subversion_ch01.html --------------------- Mac --------------------- ***The Missing Digital Photography Hacks Derrick Story says "The quest to compile compelling hacks is not something I can just turn off now that 'Digital Photography Hacks' has hit the streets. It's an addictive process. And I admit it; I can't stop. So here are five brand-new tips for you to explore." http://www.macdevcenter.com/pub/a/mac/2004/05/11/photo_hacks.html ***Automated Web Photo Galleries with iPhoto and Perl If iPhoto is working nicely as your digital shoebox, but you want to automate the process of creating web galleries for your own server, here's a nifty setup using sendmail, MySQL, and Perl. Mike Schienle, who specializes in task automation for a living, shows you the system he designed for his wife, who is an avid photographer. http://www.macdevcenter.com/pub/a/mac/2004/05/07/iphoto_perl.html --------------------- Windows --------------------- ***Hacking Excel, Part 1 Learn how to create a workable speedometer (or "speedo") chart, complete with moving needle, by using a combination of doughnut and pie charts, in this sample hack from O'Reilly's "Excel Hacks." http://www.windowsdevcenter.com/pub/a/windows/excerpt/excelhacks_chap05/index.html ***An Inside Look at XP SP2 The first real beta of SP2, Release Candidate 1, is finally out. Final release is only a few months away. Is it ready for prime time? And what's inside? Wei-Meng Lee gives you an inside look. http://www.windowsdevcenter.com/pub/a/windows/2004/05/04/SP2RC1.html --------------------- Java --------------------- ***Performance Analysis of J2EE Applications Using AOP Techniques It's tricky to profile a J2EE application to find performance bottlenecks; it's even trickier to do this with a production system, without introducing instability or new slowdowns. Aspect-Oriented Programming (AOP) offers a means of injecting new code, such as performance metrics, into existing code, without re-compiling. Ramchandar Krishnamurthy shows how this can be done. http://www.onjava.com/pub/a/onjava/2004/05/12/aop.html ***The State of JAXB: Availability, Suitability, Analysis, and Architecture JAXB, now part of Sun's Web Services Developer Pack, offers a means of converting between Java objects and an XML representation. But is it the ideal solution? Satya Komatineni investigates what JAXB has to offer. http://www.onjava.com/pub/a/onjava/2004/05/05/jaxb.html --------------------- .NET --------------------- ***Creating an FTP Client in .NET "The .NET framework provides the plumbing, allowing you to concentrate on the application you are building." At least, that's the theory, but when it comes to FTP, .NET has a bit of a gap in the pipes. Jesse Liberty shows you how to write a simple FTP application in .NET. http://www.ondotnet.com/pub/a/dotnet/2004/05/10/ftpdotnet.htm ================================================ News From Your Peers ================================================ ***Does your group need help with publicity or meetings? Check out these helpful articles on our User Group Resource page on our wiki: http://wiki.oreillynet.com/usergroups/view?UGResources O'Reilly User Group Wiki http://wiki.oreillynet.com/usergroups/index.cgi Until next time-- Marsee From marsee at oreilly.com Thu May 27 18:33:15 2004 From: marsee at oreilly.com (Marsee Henon) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] Newsletter from O'Reilly UG Program, May 27 Message-ID: ================================================================ O'Reilly UG Program News--Just for User Group Leaders May 27, 2004 ================================================================ -Special Event or Meeting Coming Up? -We Still Have Expo Hall Passes for Macworld in Boston July 13-15 -Put Up an O'Reilly Open Source Convention Banner, Get a Free Book ---------------------------------------------------------------- Book Info ---------------------------------------------------------------- ***Review books are available Copies of our books are available for your members to review-- send me an email and please include the book's ISBN number on your request. Let me know if you need your book by a certain date. Allow at least four weeks for shipping. ***Please send copies of your book reviews Email me a copy of your newsletters or book reviews. For tips and suggestions on writing book reviews, go to: http://ug.oreilly.com/bookreviews.html ***Discount information Don't forget to remind your members about our 20% discount on O'Reilly, No Starch, Paraglyph, Pragmatic Bookshelf, and Syngress books and O'Reilly conferences. Just use code DSUG. ***Group purchases with better discounts are available Please let me know if you are interested and I can put you in touch with our sales department. ---------------------------------------------------------------- General News ---------------------------------------------------------------- ***Do you have a special event or meeting coming up? Let me know so I can send along a book or two to help support your topic. Please give me as much notice as possible to make sure your materials arrive in time. Here is our list of books to peruse: http://www.oreilly.com/catalog/prdindex.html ***We Still Have Expo Hall Passes for Macworld in Boston July 13-15 Let me know and I can send you some--we've got lots of them. The free online registration is over, but you can bring these cards on site to register for an exhibit hall admission. ***Put Up an O'Reilly Open Source Convention Banner, Get a Free Book We're looking for user groups to display our conference banner on their web sites. If you send me the link to your user group site with our O'Reilly Open Source Convention banner, I will send you the book of your choice. OSCON Conference Banners: http://ug.oreilly.com/banners/oscon2004/ ================================================================ O'Reilly News for User Group Members May 27, 2004 ================================================================ ---------------------------------------------------------------- Book News ---------------------------------------------------------------- -Hackers & Painters -Web Database Applications with PHP and MySQL, 2nd Ed. -Stealing the Network -Hibernate: A Developer's Notebook -Digital Photography Hacks -.NET Compact Framework Pocket Guide -Pragmatic Version Control Using CVS ---------------------------------------------------------------- Upcoming Events ---------------------------------------------------------------- -Rob Griffiths ("Max OS X Hints"), Rogue Valley Mac Expo 2004, Grants Pass, OR--June 13 -Derrick Story ("Digital Photography Hacks"), North Coast Mac Users Group, Rohnert Park, CA--June 15 ---------------------------------------------------------------- Conference News ---------------------------------------------------------------- -Mac OS X Conference Call for Participation--Ends June 11 -O'Reilly Open Source Convention Early Bird Discount--Ends June 18 ---------------------------------------------------------------- News ---------------------------------------------------------------- -O'Reilly Distributes Pragmatic Bookshelf -Microsoft Smartphone Tips and Tricks -Dave Chappell: Inside the Enterprise Service Bus -Inside the Homebrew Atari 2600 Scene -Top Ten Ethereal Tips and Tricks -FreeBSD Networking Basics -The Fight Against Spam -Top 12 Ways to Degunk Your PC -Windows Server Hacks: Configuring Universal Group Caching -SSS (Small, Simple, Safe) -Documenting Projects with Apache Forrest -C# Generics ---------------------------------------------------------------- News From Your Peers ---------------------------------------------------------------- -Looking for more User Group events to attend? Or want to get more exposure for your events? ================================================ Book News ================================================ Did you know you can request a free book to review for your group? Ask your group leader for more information. For book review writing tips and suggestions, go to: http://ug.oreilly.com/bookreviews.html Don't forget, you can receive 20% off any O'Reilly, No Starch, Paraglyph, Pragmatic Bookshelf, or Syngress book you purchase directly from O'Reilly. Just use code DSUG when ordering online or by phone 800-998-9938. http://www.oreilly.com/ ***Free ground shipping is available for online orders of at least $29.95 that go to a single U.S. address. This offer applies to U.S. delivery addresses in the 50 states and Puerto Rico. For more details, go to: http://www.oreilly.com/news/freeshipping_0703.html ---------------------------------------------------------------- New Releases ---------------------------------------------------------------- ***Hackers & Painters Publisher: O'Reilly ISBN: 0596006624 "Hackers & Painters" examines issues such as the importance of beauty in software design, the programming language renaissance, spam filtering, the Open Source Movement, and Internet startups. Each essay moves beyond widely held beliefs about the way programmers work and tells important stories about the kinds of people behind technological innovations, revealing distinctions about their characters and their craft. Hackers who read this book will surely recognize themselves within these pages, and programmers will have new thoughts percolating the minute they put it down. http://www.oreilly.com/catalog/hackpaint/ Chapter 2, "Hackers and Painters," is available free online: http://www.oreilly.com/catalog/hackpaint/chapter/index.html ****Web Database Applications with PHP and MySQL, 2nd Ed. Publisher: O'Reilly ISBN: 0596005431 "Web Database Applications with PHP and MySQL, 2nd Edition" has been updated and redesigned around the rich offerings of PEAR. Several of these offerings, including the Template package and the database-independent query API, have been integrated into examples and thoroughly described. Using a complex sample application, all the important techniques of dynamic content are introduced with an emphasis on good design. The book also introduces PHP 5 and MySQL 4.1 features, while providing techniques that can be used on older versions of the software. http://www.oreilly.com/catalog/webdbapps2/ Chapter 11, "Authentication and Security," is available online: http://www.oreilly.com/catalog/webdbapps2/chapter/index.html ***Stealing the Network Publisher: Syngress ISBN: 1931836051 A fictional continent is emerging as a major new economic, political, and military force on the world stage. However, its rapid growth has left little in the way of time and money to shore up its Internet backbone; now it's vulnerable to a potentially catastrophic attack. Who are the bad guys? What do they want? How will it end? Find out in this cyber-thriller, written by some of the most accomplished cyber-security specialists in the world. We could tell you their real names, but then we'd have to kill you. http://www.oreilly.com/catalog/1931836051/ ***Hibernate: A Developer's Notebook Publisher: O'Reilly ISBN: 0596006969 "Hibernate: A Developer's Notebook" shows you how to use Hibernate to automate persistence: you write natural Java objects and some simple configuration files, and Hibernate automates all the interaction between your objects and the database. You don't even need to know the database is there, and you can change from one database to another simply by changing a few statements in a configuration file. If you've needed to add a database back-end to your application, don't put it off. It's much more fun than it used to be. http://www.oreilly.com/catalog/0596006969/ Chapter 3, "Harnessing Hibernate," is available online: http://www.oreilly.com/catalog/0596006969/chapter/index.html ***Digital Photography Hacks Publisher: O'Reilly ISBN: 0596006667 Going beyond the standard fare of most digital photography books, "Digital Photography Hacks" shares the knowledge that professional photographers have learned through thousands of shots' worth of experience and years of experimentation. With exquisite, full-color photos throughout, the book presents 100 proven techniques in the areas of daytime and nighttime photo secrets, flash magic, digital camera attachments, fun photo projects, camera phone tricks, and more. This book is your passport to taking the kind of digital photos you've always aspired to. http://www.oreilly.com/catalog/digphotohks/ Ten Sample Hacks are available online: http://www.oreilly.com/catalog/digphotohks/chapter/index.html ***.NET Compact Framework Pocket Guide Publisher: O'Reilly ISBN: ISBN: 0596007574 ".NET Compact Framework Pocket Guide" teaches you what you need to know to create applications for Pocket PC- and Windows-based Smartphones. This pocket guide is a handy reference that provides a quick tour of the .NET Compact Framework, and includes several working projects to get you productive straightaway. Whether you're new to mobile programming or new to Visual Studio .NET 2003, ".NET Compact Framework Pocket Guide" will have you writing mobile applications quickly. Get the information you need without all the fluff. http://www.oreilly.com/catalog/compactframeworkpg/ A sample excerpt, "Project A: Currency Converter," is available online: http://www.oreilly.com/catalog/compactframeworkpg/chapter/index.html ***Pragmatic Version Control Using CVS Publisher: Pragmatic Bookshelf ISBN: 0974514004 Version control systems don't have to be complicated, or time-consuming. This book is a recipe-based approach to using the CVS Version Control system that will get you up and running quickly--and correctly. Half of all project teams in the U.S. don't use any version control at all, and many others experience problems. http://www.oreilly.com/catalog/0974514004/ ================================================ Upcoming Events ================================================ ***For more events, please see: http://events.oreilly.com/ ***Rob Griffiths ("Max OS X Hints"), Rogue Valley Mac Expo 2004, Grants Pass, OR--June 13 Rob will be one of the featured presenters at this event. Josephine County Fairgrounds Art Building Grants Pass, OR http://www.jomacs.org/news_article.php?article_id=39 ***Derrick Story ("Digital Photography Hacks"), North Coast Mac Users Group, Rohnert Park, CA--June 15 Derrick, author and O'Reilly Network editor, presents "Movie Making with Your Digital Camera" at the June NCMUG meeting. Learn to create compelling QuickTime video that can be shared with friends, family, and even coworkers in the business environment. Free for NCMUG members and $5 for non-members. Rohnert Park Senior Center Rohnert Park, CA http://www.ncmug.org/ ================================================ Conference News ================================================ ***Mac OS X Conference Call for Participation--Ends June 11 If you're pushing the Mac envelope, we want you to speak at our third annual Mac OS X Conference this October. We're looking for proposals from developers building new apps, admins tapping the open source toolbox, small business owners powering their bottom lines, and digital musicians leveraging X's muscle--but we're open to surprises, too. The deadline for proposals is June 11. http://conferences.oreillynet.com/cs/macosx2004/create/e_sess ***O'Reilly Open Source Convention Early Bird Discount--Ends June 18 User Group members who register before June 18, 2004 get a double discount. Use code DSUG when you register, and you'll get 20% off the "Early Bird" price. To register, go to: http://conferences.oreillynet.com/cs/os2004/create/ord_os04 O'Reilly Open Source Convention Portland Marriott Downtown Portland, OR July 26-30, 2004 http://conferences.oreilly.com/oscon/ ================================================ News From O'Reilly & Beyond ================================================ --------------------- General News --------------------- ***O'Reilly Distributes Pragmatic Bookshelf Books by developers, for developers: that's the pragmatic way, and it's nicely aligned with the O'Reilly approach to publishing. We're happy to help Pragmatic Programmers reach a wider audience by providing sales, distribution, and marketing support for Pragmatic Bookshelf, an imprint of Pragmatic Programmers, LLC. For a list of titles available on the Pragmatic Bookshelf, visit: http://pragmatic.oreilly.com/ ***Microsoft Smartphone Tips and Tricks Ultimately, smartphones are only as smart as the applications that run on them. Wei-Meng Lee begins a new series that explores what's possible, and what's practical, with these powerful mobile devices. Wei-Meng is the author of "Windows XP Unwired." http://www.oreillynet.com/pub/a/wireless/2004/05/14/smartphone_tips.html ***Dave Chappell: Inside the Enterprise Service Bus Integration Developer News spoke with Dave Chappell to gain insights on how ESBs work, and more importantly, how they may change the way Java developers look at XML, XPath, messaging, and transaction-driven integration projects. Dave is the author of O'Reilly's upcoming "Enterprise Service Bus." http://www.idevnews.com/CaseStudies.asp?ID=124 --------------------- Open Source --------------------- ***Inside the Homebrew Atari 2600 Scene Despite console-company protestations to the contrary, emulators aren't only tools for copyright infringers. If it weren't for emulators, would the Atari 2600 homebrew scene be where it is today? "Wait, there's an Atari 2600 homebrew scene?" you ask. As Howard Wen explains, it exists, and new-school programmers are making some impressive games in the old-school style. http://www.linuxdevcenter.com/pub/a/linux/2004/05/20/atari_2600_homebrew.html ***Top Ten Ethereal Tips and Tricks Ethereal rivals commercial sniffers with its abundance of features and hundreds of protocol dissectors. And best of all, it's free. Here's a top ten list of Ethereal tips and tricks from Angela D. Orebaugh, a coauthor of Syngress' "Ethereal Packet Sniffing." http://www.onlamp.com/pub/a/security/2004/05/13/etherealtips.html ***FreeBSD Networking Basics Networking is integral to many functions of a modern FreeBSD system. When it's working, it works wonderfully. When it's not working--or before you've configured things--it can frustrate new users. Dru Lavigne, author of O'Reilly's "BSD Hacks," explains how to verify, configure, and optimize FreeBSD networking. http://www.onlamp.com/pub/a/bsd/2004/05/13/FreeBSD_Basics.html --------------------- Mac --------------------- ***LDAP in Mac OS X Server Typical network services problems, such as enabling all of your computers to use the same login information to authenticate users, can be solved with directory services. Panther has the built-in tools, but they're still less than elegant. Tony Williams shows you how to piece them together. http://www.macdevcenter.com/pub/a/mac/2004/05/25/ldap.html ***The Fight Against Spam Fighting spam is a battle that all Internet users must fight. Francois Joseph de Kermadec shows you practical techniques, many of which you might have overlooked, to take back control of your email. Part One: http://www.macdevcenter.com/pub/a/mac/2004/05/14/spam_pt1.html Part Two: http://www.macdevcenter.com/pub/a/mac/2004/05/18/spam_pt2.html Part Three: http://www.macdevcenter.com/pub/a/mac/2004/05/21/spam_pt3.html --------------------- Windows --------------------- ***Top 12 Ways to Degunk Your PC Your PC, with its 80GB hard drive and 512MB of RAM, runs way too slow. Why? It's gunked up with pictures, movies, music, and attachments you've saved; you've saved stuff to the wrong places; and you have apps installed that you don't use. If you want to clean up your PC, and get it running as fast as it should, follow Joli Ballew and Jeff Duntemann's 12-step program for degunking your PC. Joli and Jeff are the authors of "Degunking Windows" from Paraglyph Press. http://www.windowsdevcenter.com/pub/a/windows/2004/05/25/degunkwindows.html ***Windows Server Hacks: Configuring Universal Group Caching Universal groups offer big benefits for system administrators, but can have downsides as well. Mitch Tulloch, author of O'Reilly's "Windows Server Hacks," shows you how to get the most out of them, and how to avoid the pitfalls. http://www.windowsdevcenter.com/pub/a/windows/2004/05/18/ug_caching.html --------------------- Java --------------------- ***SSS (Small, Simple, Safe) Teaching Java is complicated both by the language's syntax and the huge number of classes in its standard libraries. According to Alper Coskun, one solution might be "Small Simple Safe" (SSS), which tries to alleviate this by giving the user an opportunity to create and relate objects in a very simple GUI. http://www.onjava.com/pub/a/onjava/2004/05/26/sss.html ***Documenting Projects with Apache Forrest Apache Forrest helps you develop the documentation to accompany your application, automatically providing a number of neat features such as menus, links, cross-references, and breadcrumb navigation. Kyle Downey provides an introduction. http://www.onjava.com/pub/a/onjava/2004/05/26/forrest.html --------------------- .NET --------------------- ***C# Generics The single most anticipated (and dreaded?) feature of Visual C# 2.0 is the addition of Generics. Jesse Liberty shows you what problems Generics solve, how to use them to improve your code, and why you need not fear them. http://www.ondotnet.com/pub/a/dotnet/2004/05/17/liberty.html ================================================ News From Your Peers ================================================ ***Looking for more User Group events to attend? Or want to get more exposure for your next meeting? Check out the events page on the O'Reilly UG wiki: http://wiki.oreillynet.com/usergroups/null?UGEvents Until next time-- Marsee From garrett at scriptpro.com Wed May 26 08:00:41 2004 From: garrett at scriptpro.com (Garrett Goebel) Date: Mon Aug 2 21:31:15 2004 Subject: [Kc] FW: Perl Quiz-of-the-Week #17 Message-ID: <71BEC0D4E1DED3118F7A009027B1202808CF0FB2@EXCH_MISSION> From: mjd@plover.com [mailto:mjd@plover.com] On Behalf Of Marco Baringer Sent: Wednesday, May 26, 2004 6:48 AM To: perl-qotw@plover.com Subject: Perl Quiz-of-the-Week #17 [x-adr] IMPORTANT: Please do not post solutions, hints, or other spoilers until at least 60 hours after the date of this message. Thanks. IMPORTANTE: Por favor, no envi?is soluciones, pistas, o cualquier otra cosa que pueda echar a perder la resoluci?n del problema hasta que hayan pasado por lo menos 60 horas desde el env?o de este mensaje. Gracias. IMPORTANT: S'il vous pla?t, attendez au minimum 60 heures apr?s la date de ce message avant de poster solutions, indices ou autres r?v?lations. Merci. WICHTIG: Bitte schicken Sie keine L?sungen, Tipps oder Hinweise f?r diese Aufgabe vor Ablauf von 60 Stunden nach dem Datum dieser Mail. Danke. BELANGRIJK: Stuur aub geen oplossingen, hints of andere tips in de eerste 60 uur na het verzendingstijdstip van dit bericht. Waarvoor dank. VNIMANIE: Pozhalujsta ne shlite reshenija, nameki na reshenija, i voobshe lyubye podskazki v techenie po krajnej mere 60 chasov ot daty etogo soobshenija. Spasibo. Qing3 Zhu4Yi4: Qing3 Ning2 Deng3Dao4 Jie1Dao4 Ben3 Xin4Xi2 Zhi1Hou4 60 Xiao3Shi2, Zai4 Fa1Biao3 Jie3Da2, Ti2Shi4, Huo4 Qi2Ta1 Hui4 Xie4Lou4 Da2An4 De5 Jian4Yi4. Xie4Xie4. When I was in elementary school I wasted many an hour playing hangman with my friends. The Game of Hangman -------------------- The goal of the game is to guess a word with a certain (limited) number of guesses. If we fail the "man" gets "hanged," if we succeed he is set free. (We're not going to discuss the lesson's of life or justice this game teaches to the 8 year olds who play it regularly). The game starts out with one person (not the player) choosing a "mystery" word at random and telling the player how many letters the mystery word contains. The player then guesses letters, one at a time, and the mystery word's letters are filled in until a) the entire word is filled in, or b) the maximum number of guesses are reached and the the player loses (man is hanged). Write a perl program which lets the user play hangman. The program should take the following arguments: 1) the dictionary file to use 2) the maximum number of guesses to give the player. The program must then chose a mystery word from the dictionary file and print out as many underscores ("_") as there are letters in the mystery word. The program will then read letters from the user one at a time. After each guess the program must print the word with properly guessed letters filled in. If the word has been guessed (all the letters making up the word have been guessed) then the program must print "LIFE!" and exit. If the word is not guessed before the maximum number of guesses is reached then the program must print "DEATH!" and exit. Example interaction: % ./hangman /usr/share/dict 5 ___ c ___ m m__ d m__ a ma_ n LIFE! $ ./hangman /usr/share/dict 3 ___ c ___ m m__ d DEATH! % NOTES - ----- 1) The dictionary file will contain one word per line and use only 7-bit ASCII characters. It may contain randomly generated words. The dictionary will contain only words longer than 1 character. The size of the dictionary may be very large. See http://perl.plover.com/qotw/words/ for sample word lists. 2) The dictionary file used for the test (or the program for generating it) will be made available along with the write-up. 3) If a letter appears more than once in the mystery word, all occurrences of that letter must be filled in. So, if the word is 'bokonon' and the player guesses 'o' the output must be '_o_o_o_'. -Marco -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.pm.org/pipermail/kc/attachments/20040526/f47d7c33/attachment.htm