From nils at diewald-online.de Wed Jul 1 04:28:28 2009 From: nils at diewald-online.de (Nils Diewald) Date: Wed, 01 Jul 2009 13:28:28 +0200 Subject: [Bielefeld-pm] Ihr solltet mehr Werbung machen... Message-ID: <7141_1246447708_ZZg0y4He8HlnP.00_4A4B485C.9000007@diewald-online.de> Für mich hatte die Werbung gereicht (die Werbung der PMs - weniger die der Gaststätte) - jedenfalls habe ich gestern erstmals das Treffen aufgesucht und melde mich heute in erster Linie, damit Christian und Jürgen auch meinen Namen im Postfach haben. War gestern sehr spaßig und ich freue mich schon auf das nächste Treffen! Beste Grüße, Nils From c.duehl at gmx.de Tue Jul 7 03:32:09 2009 From: c.duehl at gmx.de (c.duehl at gmx.de) Date: Tue, 07 Jul 2009 12:32:09 +0200 Subject: [Bielefeld-pm] Fwd: O'Reilly News fuer User-Groups: Neues im Juli Message-ID: <20090707103209.312200@gmx.net> -------- Original-Nachricht -------- Datum: Tue, 7 Jul 2009 10:29:59 +0200 (CEST) Von: ug at oreilly.de An: user_groups at oreilly.de Betreff: O\'Reilly News fuer User-Groups: Neues im Juli _________________________________________________ O'Reilly UserGroup News Juli 2009 Bitte an Ihre Mitglieder weiterleiten _________________________________________________ Liebe O'Reilly UserGroup-Vertreter! Nicht nur hier in Koeln brennt die Sonne auf die Daecher, da moechte man doch am liebsten den Tag im Liegestuhl verbringen. Vielleicht mit einer unserer Neuerscheinungen? Schauen Sie sich doch einmal um! Ihr O'Reilly Team P.S.: Lesen Sie unser Verlagsblog unter: http://community.oreilly.de/blog/ _____________________________________________________ _____________________________________________________ Rezensenten gesucht ------------------- Gerne stellen wir Ihnen Exemplare unserer Buecher zur Besprechung zur Verfuegung - teilen Sie Ihre Einschaetzung anderen Lesern auf Ihrer Website, Mailingliste, bei amazon.de oder oreilly.de mit! Aktuell bieten wir u.a. folgende Buecher an: - Webdesing von Kopf bis Fuss http://www.oreilly.de/catalog/hfwebdesger/ - PHP & MySQL von Kopf bis Fuss http://www.oreilly.de/catalog/hfphpmysqlger/index.html - Praxiswissen Joomla! http://www.oreilly.de/catalog/joomlager/index.html - Praxiswissen Drupal 6 http://www.oreilly.de/catalog/drupalbasger/index.html - Praxiswissen Flex 3 http://www.oreilly.de/catalog/flex3basger/index.html - CSS Missing Manual http://www.oreilly.de/catalog/cssmmger/index.html - Zeitmanagement fuer Webentwickler http://www.oreilly.de/catalog/zeitmanger/index.html Bug-Competition --------------- Viele unserer Leser jagen nicht nur beruflich Bugs, sondern auch noch privat. Dann allerdings sind es meist seltsame Uebersetzungsfehler, kuriose Rechtschreibung oder aehnliche Dinge, die auffallen. Puenktlich zu Beginn der Sommerferien moechten wir zur grossen Bugs-Ralley, zur #fail-competition einladen. Zu gewinnen gibt es Buchpakete - alles weitere unter: http://community.oreilly.de/blog/2009/07/06/foto-gewinnspiel/ Webspecial ---------- Zu 'Webdesign von Kopf bis Fuss' gibt es ein Webspecial. Der Autor Jeff Siarto spricht ueber drei Dinge, die Sie heute noch tun koennen um Ihre Webseite zu optimieren. Lesen Sie das Webspecial unter: http://www.oreilly.de/artikel/2009/06/webdesign.html Linuxtag -------- Wir waren auf dem Linuxtag! Berichte und Fotos gibt es hier: http://community.oreilly.de/blog/ _____________________________________________________ _____________________________________________________ Deutschsprachige Neuerscheinungen (Details s.u.) -------------------------------------------------- 1) Praxisbuch Nagios 2) Praxiswissen Flash CS4 3) Websites erstellen: Missing Manual 4) Die Kunst des IT-Projektmanagements, 2. Auflage Englischsprachige Neuerscheinungen (Details s.u.) -------------------------------------------------- 1) Version Control with Git 2) Automating System Administration with Perl, 2nd Ed. 3) Java Message Service, 2nd Ed. 4) Even Faster Web Sites 5) The Art of Concurrency 6) Hadoop: The Definitive Guide 7) Ruby: Best Practices 8) Head First Networking 9) The Geek Atlas 10) Google SketchUp: The Missing Manual 11) Make: Volume 18 ____________________________________________________ ____________________________________________________ 1. Praxisbuch Nagios -------------------- Tobias Scherbaum 1. Auflage Juni 2009 ISBN 978-3-89721-880-2 272 Seiten, 39.90 Euro Das 'Praxisbuch Nagios' steigt direkt in die praktische Umsetzung eines Netzwerkmonitorings ein. Die CD zum Buch enthaelt eine lauffaehige, angepasste Linux-Umgebung (zum Start von der CD oder zur Nutzung in einer gaengigen Virtualisierungs-Loesung), aus der heraus direkt mit Nagios gearbeitet werden kann. Anhand der im Buch skizzierten, hetereogenen Test-Umgebung, bestehend aus Linux-Webservern und Mailrelays, einem Firewall-System und einer Windows-Umgebung wird Schritt fuer Schritt ein Netzwerkmonitoring-System implementiert. Der Leser kann die einzelnen Schritte, uebertragen auf seine "reale" Systemlandschaft, anhand der CD sofort nachstellen. Eine ausfuehrliche Beschreibung erhalten Sie unter: http://www.oreilly.de/catalog/pbnagiosger/index.html#top 2. Praxiswissen Flash CS4 -------------------------- Sascha Kersken 4. Auflage Juni 2009 ISBN 978-3-89721-899-4 432 Seiten, 24.90 Euro 'Praxiswissen Flash CS4' ist eine Einfuehrung fuer all diejenigen, die HTML-Grundkenntnisse besitzen und einen schnellen und praxisbezogenen Einstieg in Flash und ActionScript 3 suchen. Fuer diese 4. Auflage wurde das Buch komplett ueberarbeitet und alle zentralen Features der aktuellen Flash-Version aufgenommen. So wurde der Band beispielsweise um Informationen zur Suchmaschinenoptimierung fuer Flash-Filme, zur optimierten Skriptsteuerung von Flash mit ActionScript sowie um Tipps zu neuen Animationstechniken ergaenzt. Eine ausfuehrliche Beschreibung finden Sie hier: http://www.oreilly.de/catalog/flashmxbas4ger/index.html#top 3. Websites erstellen: Missing Manual ------------------------------------- Matthew MacDonald Deutsche Uebersetzung von Jørgen W. Lang 1. Auflage Juni 2009 ISBN 978-3-89721-908-3 656 Seiten, 39.90 Euro Glauben Sie auch, dass man fuer die Erstellung einer Website ein Heer von Programmierern braucht? Dann sollten Sie Ihre Meinung vielleicht ueberdenken. Tatsaechlich genuegen dafuer ein schlichter PC, eine gute Portion Ehrgeiz - und dieses Buch. Diese Bausteine reichen aus, um professionell gestaltete und besucherfreundliche Websites zu erstellen. Dieses Missing Manual enthaelt alle Werkzeuge, Techniken und das noetige Expertenwissen, um sofort in die Welt der Website-Erstellung einzutauchen. Behandelt werden XHTML und JavaScript, Design und Layout mit CSS sowie das Einbinden von Bildern, Audio und Video. Sie erfahren aber auch, wie Sie die Website planen, einen Blog erstellen, eine Community aufbauen, Nutzer- statistiken generieren oder mit Ihrer Website Geld verdienen. Eine ausfuehrliche Beschreibung finden Sie hier: http://www.oreilly.de/catalog/websitesmmger/index.html#top 4. Die Kunst des IT-Projektmanagements -------------------------------------- Scott Berkun Deutsche Uebersetzung von Thomas Demmig 2. Auflage Juni 2009 ISBN 978-3-89721-921-2 480 Seiten, 39.90 Euro IT-Projekte sind vielschichtig: Neben der eigentlichen Softwareentwicklung gilt es, den Ueberblick ueber Termine, Kosten und Qualitaet zu behalten. Nicht selten scheitern Softwareprojekte an mangelnder Organisation. Oft uebersehen die Beteiligten, welche Anforderungen an Kommunikation, Koordination und Kreativitaet die Entwicklung eines neuen Produkts stellt. 'Die Kunst des IT-Projektmanagements', 2. Auflage, raeumt mit solchen Missstaenden auf: Praxisorientiert und witzig beleuchtet Autor und Projektmanager Scott Berkun die klassischen Aufgaben, Facetten und Mechanismen des Projektmanagements. Fuer die zweite Auflage wurde der Text komplett ueberarbeitet. Jedes Kapitel wurde um einen praxisorientierten Uebungsteil zur Vertiefung ergaenzt, damit der Leser den Kapitelinhalt auf seine Projekte anpassen kann. - Jetzt mit praxisorientiertem Uebungsteil in jedem Kapitel. - Das perfekte Buch fuer jeden, der mit Projektmanagement zu tun hat, nicht nur im IT-Bereich. - Als erfahrener Microsoft-Projektmanager verraet Scott Berkun Tipps und Tricks aus jahrelanger Praxis. Eine ausfuehrliche Beschreibung finden Sie hier: http://www.oreilly.de/catalog/artprojectmgmt2ger/index.html#top ____________________________________________________ ____________________________________________________ Englischsprachige Neuerscheinungen ---------------------------------- 1) Version Control with Git --------------------------- Jon Loeliger First Edition Juni 2009 ISBN 978-0-596-52012-0 328 Seiten, 34.00 Euro 'Version Control with Git' takes you step-by-step through ways to track, merge, and manage software projects, using this highly flexible open-source version control system. Git permits practically an infinite variety of methods for development and collaboration, but its flexibility also means that some users don't understand how to use it to best advantage. This book offers tutorials on ways to use it, as well as friendly yet rigorous advice to help you navigate Git's many functions. Hier finden Sie eine ausfuehrliche Beschreibung: http://www.oreilly.de/catalog/9780596520120/index.html#top 2) Automating System Administration with Perl --------------------------------------------- David N. Blank-Edelman Second Edition Juni 2009 ISBN 978-0-596-00639-6 666 Seiten, 38.00 Euro Thoroughly updated and expanded in its second edition to cover the latest operating systems, technologies, and Perl modules, 'Automating System Administration with Perl' will help you perform your job with less effort. The second edition not only offers you the right tools for your job, but also suggests the best way to approach particular problems and securely automate pressing tasks. Hier finden Sie eine ausfuehrliche Beschreibung: http://www.oreilly.de/catalog/9780596006396/index.html#top 3) Java Message Service ----------------------- Mark Richards, Richard Monson-Haefel and David A. Chappell Second Edition Juni 2009 ISBN 978-0-596-52204-9 328 Seiten, 38.00 Euro 'Java Message Service', Second Edition, is a thorough introduction to the standard API that supports "messaging" -- the software-to- software exchange of crucial data among network computers. With this practical guide, you'll learn how JMS can help you solve many architectural challenges, such as integrating dissimilar systems and applications, increasing scalability, eliminating system bottlenecks, supporting concurrent processing, and promoting architectural flexibility and agility. This edition is updated for JMS 1.1. Hier finden Sie eine ausfuehrliche Beschreibung: http://www.oreilly.de/catalog/9780596522049/index.html#top 4) Even Faster Web Sites ----------------------- Steve Souders First Edition Juni 2009 ISBN 978-0-596-52230-8 254 Seiten, 34.00 Euro Performance is critical to the success of any web site. In this book, Steve Souders, web performance evangelist at Google and former Chief Performance Yahoo!, provides valuable techniques to help you optimize your site's performance. Souders and eight expert contributors provide best practices and pragmatic advice for improving your site's performance in three critical categories: JavaScript, in the network, and in the browser. This book contains six guest chapters contributed by Dion Almaer, Doug Crockford, Ben Galbraith, Tony Gentilcore, Dylan Schiemann, Stoyan Stefanov, Nicole Sullivan, and Nicholas C. Zakas. Hier finden Sie eine ausfuehrliche Beschreibung: http://www.oreilly.de/catalog/9780596522308/index.html#top 5) The Art of Concurrency ------------------------- Clay Breshears First Edition Juni 2009 ISBN 978-0-596-52153-0 302 Seiten, 43.00 Euro Looking to take full advantage of multi-core processors with concurrent programming ? As one of the few resources to focus on implementing algorithms in the shared-memory model of multi-core processors, rather than just on theoretical models or distributed- memory architectures, 'The Art of Concurrency' provides the knowledge and hands-on experience you need. You'll get detailed explanations and usable samples to help you transform algorithms from serial to parallel code, along with advice and analysis to steer you clear of mistakes. Eine ausfuehrliche Beschreibung finden Sie hier: http://www.oreilly.de/catalog/9780596521530/index.html#top 6) Hadoop: The Definitive Guide ------------------------------- Tom White First Edition Juni 2009 ISBN 978-0-596-52197-4 524 Seiten, 43.00 Euro Apache Hadoop is ideal for organizations with a growing need to process massive application datasets. 'Hadoop: The Definitive Guide' is a comprehensive resource for using Hadoop to build reliable, scalable, distributed systems. Programmers will find details for analyzing large datasets with Hadoop, and administrators will learn how to set up and run Hadoop clusters. The book includes case studies that illustrate how Hadoop is used to solve specific problems. Eine ausfuehrliche Beschreibung finden Sie hier: http://www.oreilly.de/catalog/9780596521974/index.html#top 7) Ruby Best Practices ---------------------- Gregory Brown First Edition Juni 2009 ISBN 978-0-596-52300-8 328 Seiten, 34.00 Euro 'Ruby Best Practices' is for programmers who want to use Ruby the way Rubyists do. Written by the developer of the Ruby project Prawn (prawn.majesticseacreature.com), this concise book explains how to design beautiful APIs and domain-specific languages, work with functional programming ideas and techniques that can simplify your code and make you more productive, write code that's readable and expressive, and much more. It's the perfect companion to 'The Ruby Programming Language'. Eine ausfuehrliche Beschreibung finden Sie hier: http://www.oreilly.de/catalog/9780596523008/index.html#top 8) Head First Networking ------------------------ Al Anderson and Ryan Benedetti First Edition Juni 2009 ISBN 978-0-596-52155-4 536 Seiten, 53.00 Euro Frustrated with networking books so chock full of acronyms that your brain goes into sleep mode? 'Head First Networking's' unique, visually rich format provides a task-based approach to computer networking that makes it easy to get your brain engaged. You'll learn networking concepts by tying them to on-the-job tasks, blending practice and theory in a way that only Head First can. Then you'll practice what you've learned, with nearly one hundred exercises, questions, sample problems, and projects. Eine ausfuehrliche Beschreibung finden Sie hier: http://www.oreilly.de/catalog/9780596521554/index.html#top 9) The Geek Atlas ------------------ John Graham-Cumming First Edition Juni 2009 ISBN 978-0-596-52320-6 542 Seiten, 29.00 Euro With this unique traveler's guide, you'll learn about 128 destinations around the world where discoveries in science, mathematics, or technology occurred or is happening now. Travel to Munich to see the world's largest science museum, watch Foucault's pendulum swinging in Paris, ponder a descendant of Newton's apple tree at Trinity College, Cambridge, and more. Each site in 'The Geek Atlas' focuses on discoveries or inventions, and includes information about the people and the science behind them. Eine ausfuehrliche Beschreibung finden Sie hier: http://www.oreilly.de/catalog/9780596523206/index.html#top 10) Google SketchUp: The Missing Manual -------------------------------------- Chris Grover First Edition Juni 2009 ISBN 978-0-596-52146-2 598 Seiten, 34.00 Euro Want to create 3-D models using Google SketchUp? This Missing Manual is the ideal place to start. Filled with step-by-step tutorials that will have you creating detailed 3-D objects quickly, 'Google SketchUp: The Missing Manual' offers crystal-clear instructions for using every feature. You'll learn to use the basic tools, build and animate models, and place objects in Google Earth, with lots of real-world examples to show you how it's done. Eine ausfuehrliche Beschreibung finden Sie hier: http://www.oreilly.de/catalog/9780596521462/index.html#top 11) Make: Volume 18 ------------------ Mark Frauenfelder First Edition Juni 2009 ISBN 978-0-596-15769-2 192 Seiten, 14.00 Euro Volume 18 of MAKE Magazine features projects on how to make food and energy, using the untapped resources around the house, yard, and community. This DIY Energy issue shows readers how to measure their energy use and maximize their efficiency, with projects such as making a topographical map of their property, starting an energy garden, making an embedded irrigation system, using chickens to reduce household inputs, and more. Eine ausfuehrliche Beschreibung finden Sie hier: http://www.oreilly.de/catalog/9780596157692/index.html#top ========================================================= Weitere Fragen und Anforderungen von Rezensionsexemplaren (bitte unter Angabe der gewünschten Lieferanschrift) richten Sie bitte an ug at oreilly.de Coverabbildungen unserer Buecher finden Sie nach ISBN sortiert unter: ftp://ftp.oreilly.de/pub/ora/graphics/book_covers/hi-res/ Bitte lassen Sie uns Belegexemplare/Urls Ihrer Rezensionen zukommen. Vielen Dank! Wenn Sie diesen Informationsservice abbestellen moechten, schicken Sie bitte eine Mail mit folgendem Inhalt an majordomo at oreilly.de: unsubscribe user_groups IHRE-E-MAILADRESSE Tragen Sie diesen Text bitte nicht in die Betreffzeile, sondern in das Mitteilungsfeld des Mailprogramms ein. Wenn Sie Schwierigkeiten haben, wenden Sie sich bitte an listmaster at oreilly.de. ========================================================= O'Reilly Verlag GmbH & Co.KG, Balthasarstr. 81 50670 Koeln Tel.: +(49)-221-9731600 Fax.: +(49)-221-9731608 Geschaeftsfuehrer: Timothy O'Reilly, Elke Hansel Amtsgericht Koeln, HRA 13894, UST-IdNr.: DE 163372785 From c.duehl at gmx.de Thu Jul 16 23:44:00 2009 From: c.duehl at gmx.de (c.duehl at gmx.de) Date: Fri, 17 Jul 2009 08:44:00 +0200 Subject: [Bielefeld-pm] Fwd: Books and News from the O'Reilly User Group Program--July Message-ID: <20090717064400.91560@gmx.net> -------- Original-Nachricht -------- Datum: Thu, 16 Jul 2009 11:15:40 -0700 Von: Marsee Henon An: c.duehl at gmx.de Betreff: Books and News from the O\'Reilly User Group Program--July View this information as HTML in your browser, click here: http://post.oreilly.com/rd/9z1z12icdoogdueqthmnig30lot2mbrqqea3pc3fk50 Hi there, We're updating our UG newsletter so it's easier to find the info you need to keep in touch with O'Reilly. Comments, suggestions, and feedback are always welcome. Please pass along any part of this newsletter to your group via email or your website and include the discount codes. We offer both a text and an HTML version. Thanks --Marsee Henon P.S. If you're a twitter user, please follow our special O'Reilly User Group account: http://post.oreilly.com/rd/9z1zf0i2q0nebfm7qa1vk152g7v9c70srn7ac9t6u10 OSCON (O'Reilly Open Source Convention) is approaching quickly in San Jose, CA on July 20-24. If you're coming, please let me know so I can keep an eye out for you during the week. We'd also love to have you come by the O'Reilly booth in the expo hall on Wednesday, July 22, at 6pm to meet our authors. If you're undecided about attending, you can still register with code "os09usrg" to receive 20% off. http://post.oreilly.com/rd/9z1zrsfluv71e4d3heehds5dl1c3qefbtjul6v4gj30 Or register for an Expo Pass and attend any of these free events including: Birds of a Feather http://post.oreilly.com/rd/9z1z8dfomdjba7n7rp346kcr6aj02q6ddf9cid1pct8 Products and Services sessions http://post.oreilly.com/rd/9z1z0i5v4t1llgqcf2j1d1vh35obi090kfs3s7ojvso OSCamp http://post.oreilly.com/rd/9z1z2dfuv6pd6i1ip7aq5kmllifjdctqfi55e2ggmg0 For a list of all free events, go to: http://post.oreilly.com/rd/9z1z12i0t2sig6sqjgtofv27dq86r86j5cfi5cfabf0 The Community Leadership Summit starts this weekend before OSCON (July 18-19) and is designed for community managers, leaders, and organizers of all kinds (that includes all user group leaders!) at the San Jose McEnery Convention Center. The summit is free but requires pre-registration. Even if you can't make the conference, please join us for this special event. http://post.oreilly.com/rd/9z1z3rp9296rapi2n41qs4v9ik1jtepicthvh8jdovo New to the training lineup is our InsideMobile Conference--Learn the ins and outs of mobile programming, design and business for iPhone, Blackberry, Windows Mobile, Android, and Palm webOS. July 26 & 27 in San Jose, CA. Register Now and Save $150! http://post.oreilly.com/rd/9z1ztba11ste9u1fjvv0suh9cklhen0f1pvv68lk63g O'Reilly Media is conducting research about a technical certification program and we want your opinion. Please take our 20 question survey to help us understand what you want in a certification program from O'Reilly--what topics, what motivates you, and what you'd expect to get out of it. Complete the survey and you'll be entered in a random drawing for a chance to win $200 of O'Reilly ebooks. Thank you for your help! http://post.oreilly.com/rd/9z1zb7a3nb9936nctgoq9hnetkegnv77mtshdagece0 Have you tried one of our free webcasts? We offer many different topics every week and you can always go back and watch the previous ones. Upcoming webcasts include "iPhone Forensics: Live Recovery of an iPhone 3G[s]" and "Hands-on: Step-by-step MySQL Clustering Setup," Past topics that are well worth a watch include "10 Ways to Wreck Your Database," "Radical Career Success in a Down Economy," and "Around the world in 32 minutes with The Geek Atlas." You can find them all at: http://post.oreilly.com/rd/9z1znl7hb6khj6fkpeqgt8ap7sada1k6kralij32ij8 We're always looking for book reviewers, especially on our new releases. New books we're excited about include the The Geek Atlas, The New Community Rules, Best iPhone Apps, Erlang Programming, and Beautiful Architecture. If you'd like to write a review of any of these books for Amazon, Slashdot, or your blog, please send an email to your user group leader with the book title and where you'll review it. UG leaders only--Put Up a Banner, Get a Free Book We're looking for user groups to display our discount banners on their web sites. If you send me your group's site with one or more banners, I'll send you the O'Reilly book(s) of your choice. Choose from the following list: The Art Of Community http://post.oreilly.com/rd/9z1z5frtk9khivag8tvu3ppjo8uud08nb0e1dkq6d5g OSCON Banners http://post.oreilly.com/rd/9z1zfov8o0ivqkjdb5pahn48uc9oar0n1rf2ursuds0 O'Reilly School of Technology Banners http://post.oreilly.com/rd/9z1zd9s042ibl2u880s50sfiuqn5c48rvamsp5j5p08 Customizable O'Reilly Book Widgets http://post.oreilly.com/rd/9z1zj1c9fspul19g8sb86cqg5u4f7dbfm5ak24ccnvo 35% off User Group Discount Banners http://post.oreilly.com/rd/9z1z0m70ev4to1s3fneks9m5a5dj461im2mua49t7uo --------------------------------------------------------------- New Releases --------------------------------------------------------------- Get 35% off from O'Reilly, No Starch, Paraglyph, PC Publishing, Pragmatic Bookshelf, Rocky Nook, SitePoint, or YoungJin books and ebooks you purchase directly from O'Reilly. Just use code DSUG when ordering online or by phone 800-998-9938. http://post.oreilly.com/rd/9z1z869qprklftt5g861mnh6jv0ku0f86ogt29no07o Digital Architectural Photography http://post.oreilly.com/rd/9z1zhpond82d2vp6q93j87ncrk1druiioga3lhekbv0 Build Your Own Database Driven Web Site Using PHP & MySQL, 4th Edition (SitePoint) http://post.oreilly.com/rd/9z1zue4a0ptuq66vh6rer4pe4o6at4ehkqdkqa83718 Complete Web Monitoring http://post.oreilly.com/rd/9z1z0ani37v0u76grmuisbi9j812m1kervldflk6h0g The CSS Anthology: 101 Essential Tips, Tricks & Hacks, Third Edition http://post.oreilly.com/rd/9z1z34neim1h1ialtl0tarufg5jndcql77gkkvbl810 Data Mashups in R http://post.oreilly.com/rd/9z1ztanottcbpd6ss2ette47uuee4p2alsibr41ulio Erlang Programming http://post.oreilly.com/rd/9z1z3qlujt7utp0k8vkmr039q6pclb47oor6abo4v6g Even Faster Web Sites http://post.oreilly.com/rd/9z1zimef8p60lacpbo4a10ilqb12n4b144lkjmn1neo Hadoop: The Definitive Guide http://post.oreilly.com/rd/9z1z5uj53a1e0u48atfjquravq426b8gsfc7i5jo1dg Head First PMP: Rough Cuts Version, Second Edition http://post.oreilly.com/rd/9z1z7vlfhh8lufhuu1d7j31r3pefg6pkdafrs43d1go iPhone Game Development: Rough Cuts Version http://post.oreilly.com/rd/9z1zlg02f1v1tiafgpn7lubtojol194f3eqp9r9qgeg Java Message Service, Second Edition http://post.oreilly.com/rd/9z1z55s3ctjgm4q1a72n7j5ds8rrp6n6veq3arjhe80 Land the Tech Job You Love (Pragmatic Bookshelf) http://post.oreilly.com/rd/9z1zu2pt89uen3pdckf788cuplef6aeg90f137a27pg Learning PHP, MySQL, and JavaScript http://post.oreilly.com/rd/9z1zlkio4me37u7b73d6simkh57ma72tnconj6r1ge0 Mercurial: The Definitive Guide http://post.oreilly.com/rd/9z1zkc8pnsgaqsns164ujfqamqiu1i3sig9vn5vkj0g Modular Java (Pragmatic Bookshelf) http://post.oreilly.com/rd/9z1z2vjokiqcj97r35bkal1hv5vooi4pvmdtvokelu0 My New iPhone (No Starch) http://post.oreilly.com/rd/9z1zb02f32jt8o3pvs2te02hr0pnbna3u6cahp2bod8 The Myths of Security http://post.oreilly.com/rd/9z1z95chpmti9d119dhrku6eju425ce88a9034h2gl8 Natural Language Processing with Python http://post.oreilly.com/rd/9z1zrd6sh6rj1cieq7f2glrcptdhdnru242p8uhdkg0 The New Community Rules http://post.oreilly.com/rd/9z1zp60dra46oco8gnv5cvkol7sii1i9emi0tij0ol8 Online Marketing Inside Out (SitePoint) http://post.oreilly.com/rd/9z1ze0p1tmkqa771f7579gu8idm36vk3v31s6hm1k60 Programming Cocoa with Ruby http://post.oreilly.com/rd/9z1z5kff1ni5ar07bf03p0odhik125cnp9ptotrrqso Programming Scala (Pragmatic Bookshelf) http://post.oreilly.com/rd/9z1zk1rd76vcm74n65k0ug15mgmstvnaag8qaqtri88 Programming the Semantic Web http://post.oreilly.com/rd/9z1zlgmc1in4qsq4eur5iltl9rchdpk5s1uod999ejo Ruby Best Practices http://post.oreilly.com/rd/9z1zdicr7cuslj94tm78jhnfkasaugbaovq4cmf1clo Take Control of Safari 4 (TidBITS) http://post.oreilly.com/rd/9z1zm892644381t48t8ntrd4d01hpkboaujmk3qfkio VMware Cookbook: Rough Cuts Version http://post.oreilly.com/rd/9z1zo0cspm9pd42ursfmd3fslb3dfar4c78qt7upvo0 Windows 7: Up and Running: Rough Cuts Version http://post.oreilly.com/rd/9z1z30mk1ng9fmv3b0hc50ot29ddooqbchgk1nl3f9o Until next time-- Marsee Henon Forward this announcement - http://post.oreilly.com/f2f/9z1zorj4qro8jucgp7hbs9vucfnqh2ncgnnl4j25i6o ================================================================ O'Reilly 1005 Gravenstein Highway North Sebastopol, CA 95472 800-998-9938 http://post.oreilly.com/rd/9z1zjl90u0m283d1iru7lb2i42gp7p7rdm3dtskpmm0 Follow us on Twitter at http://post.oreilly.com/rd/9z1z5mkfurd1jlbt6bmo8qc8305df39futa8lot2058 You are receiving this email because you are a User Group contact with O'Reilly Media. If you would like to stop receiving these newsletters or announcements from O'Reilly, send an email to marsee at oreilly.com ================================================================ From taulmarill at xgn.de Mon Jul 27 06:20:33 2009 From: taulmarill at xgn.de (taulmarill at xgn.de) Date: Mon, 27 Jul 2009 15:20:33 +0200 (CEST) Subject: [Bielefeld-pm] Treffen morgen Message-ID: <46169.88.198.157.42.1248700833.squirrel@webmail.xgn.de> Hallo, hab eben auf den Kalender geschaut und gemerkt, dass morgen ja schon wieder der letzte Dienstag des Monats ist. Habt ihr daran gedacht und euch für morgen frei gehalten? Gruß, Jürgen From nils at diewald-online.de Mon Jul 27 14:50:16 2009 From: nils at diewald-online.de (Nils Diewald) Date: Mon, 27 Jul 2009 23:50:16 +0200 Subject: [Bielefeld-pm] Treffen morgen In-Reply-To: <46169.88.198.157.42.1248700833.squirrel@webmail.xgn.de> References: <46169.88.198.157.42.1248700833.squirrel@webmail.xgn.de> Message-ID: <17269_1248731430_ZZg0A5SavV927.00_4A6E2118.30106@diewald-online.de> Bin dabei - und diesmal finde ich die Gaststätte vielleicht schon beim zweiten oder dritten Anlauf! Bis morgen, Nils taulmarill at xgn.de schrieb: > Hallo, > > hab eben auf den Kalender geschaut und gemerkt, dass morgen ja schon > wieder der letzte Dienstag des Monats ist. Habt ihr daran gedacht und euch > für morgen frei gehalten? > > > Gruß, > Jürgen > > _______________________________________________ > Bielefeld-pm mailing list > Bielefeld-pm at pm.org > http://mail.pm.org/mailman/listinfo/bielefeld-pm > From c.duehl at gmx.de Mon Jul 27 23:28:50 2009 From: c.duehl at gmx.de (c.duehl at gmx.de) Date: Tue, 28 Jul 2009 08:28:50 +0200 Subject: [Bielefeld-pm] Treffen morgen In-Reply-To: <46169.88.198.157.42.1248700833.squirrel@webmail.xgn.de> References: <46169.88.198.157.42.1248700833.squirrel@webmail.xgn.de> Message-ID: <20090728062850.11150@gmx.net> Hallo, ich hab dran gedacht, ich hätte sonst auch noch eine Mail rumgeschickt. Bis heute Abend. Gruß, Christian -------- Original-Nachricht -------- > Datum: Mon, 27 Jul 2009 15:20:33 +0200 (CEST) > Von: taulmarill at xgn.de > An: "Mailingliste der Bielefeld Perl Mongers" > Betreff: [Bielefeld-pm] Treffen morgen > Hallo, > > hab eben auf den Kalender geschaut und gemerkt, dass morgen ja schon > wieder der letzte Dienstag des Monats ist. Habt ihr daran gedacht und euch > für morgen frei gehalten? > > > Gruß, > Jürgen > > _______________________________________________ > Bielefeld-pm mailing list > Bielefeld-pm at pm.org > http://mail.pm.org/mailman/listinfo/bielefeld-pm From c.duehl at gmx.de Wed Jul 29 00:41:06 2009 From: c.duehl at gmx.de (c.duehl at gmx.de) Date: Wed, 29 Jul 2009 09:41:06 +0200 Subject: [Bielefeld-pm] =?iso-8859-1?q?=28kein_Betreff=29?= Message-ID: <20090729074106.59830@gmx.net> Guten Morgen, ich hab versucht, Nils RE-Problem irgendwie nachzubauen, um eine Lösung zu basteln. Neben der mit den Doppelten REs (fangend / nicht fangend) von gestern, gäbe es noch die Möglichkeit, sich Stückchenweise vorzuarbeiten, oder aber den bisherigen Ausdruck zu nutzen und einen zweiten Test nachzulagern. So nach dem Motto if (my @treffer = m~schwierige RE~) { my $n = @treffer; if ($treffer[$n-1] eq $treffer[$n-3]) { # eigentliche Behandlung hier } } Ich komme allerdings gar nicht so weit. Vermutlich ist mein Beispiel nicht komplex genug. Ich poste es trotzdem mal: [code] #!/usr/bin/perl use strict; use warnings; my $re_param = qr~[\w]+ \s* = \s* ['"]? [^'"<>]+ ['"]? \s* ~x; while () { chomp; print "zeile $.: $_\n"; my @werte = m~< (ELEMENT|A) (?: \s+ ((?:$re_param\s*)+) )? > ( (?: (?!). )* ) ~gx; for my $w (@werte) { print " ", (defined $w ? $w : '---'), "\n"; } } __DATA__ erste zeile Inhalt mitte bla Rest zweite zeile Inhalt irgendwelcher Art Rest dritte zeile Inhalt irgendwelcher Art Rest vierte zeile Inhalt irgendwelcher Art Rest fuenfte zeile Inhalt irgendwelcher Art Rest [/code] Ergebnis: [code] zeile 1: erste zeile Inhalt mitte bla Rest ELEMENT var1='wert1' var2="wert2" Inhalt A var3='wert3' bla zeile 2: zweite zeile Inhalt irgendwelcher Art Rest ELEMENT var1='wert1' var2="wert2" Inhalt irgendwelcher Art zeile 3: dritte zeile Inhalt irgendwelcher Art Rest ELEMENT var1='wert1' Inhalt irgendwelcher Art zeile 4: vierte zeile Inhalt irgendwelcher Art Rest ELEMENT var1=wert1 Inhalt irgendwelcher Art zeile 5: fuenfte zeile Inhalt irgendwelcher Art Rest ELEMENT --- Inhalt irgendwelcher Art [/code] Gruß Christian From mailinglisten at renee-baecker.de Wed Jul 29 00:48:44 2009 From: mailinglisten at renee-baecker.de (=?ISO-8859-1?Q?Renee_B=E4cker?=) Date: Wed, 29 Jul 2009 09:48:44 +0200 Subject: [Bielefeld-pm] (kein Betreff) In-Reply-To: <20090729074106.59830@gmx.net> References: <20090729074106.59830@gmx.net> Message-ID: <4A6FFEDC.5070803@renee-baecker.de> Kannst Du kurz erläutern, was die Fragestellung war? Gruß, Renée c.duehl at gmx.de schrieb: > Guten Morgen, > > ich hab versucht, Nils RE-Problem irgendwie nachzubauen, um eine Lösung zu basteln. > > Neben der mit den Doppelten REs (fangend / nicht fangend) von gestern, gäbe es noch die Möglichkeit, sich Stückchenweise vorzuarbeiten, oder aber den bisherigen Ausdruck zu nutzen und einen zweiten Test nachzulagern. > > So nach dem Motto > > if (my @treffer = m~schwierige RE~) { > my $n = @treffer; > if ($treffer[$n-1] eq $treffer[$n-3]) { > # eigentliche Behandlung hier > } > } > > > > Ich komme allerdings gar nicht so weit. Vermutlich ist mein Beispiel nicht komplex genug. Ich poste es trotzdem mal: > > > [code] > #!/usr/bin/perl > use strict; > use warnings; > > my $re_param = > qr~[\w]+ > \s* > = > \s* > ['"]? > [^'"<>]+ > ['"]? > \s* > ~x; > > while () { > chomp; > print "zeile $.: $_\n"; > my @werte = > m~< > (ELEMENT|A) > (?: > \s+ > ((?:$re_param\s*)+) > )? > > > ( > (?: > (?!). > )* > ) > > ~gx; > for my $w (@werte) { > print " ", (defined $w ? $w : '---'), "\n"; > } > } > > > __DATA__ > erste zeile Inhalt mitte bla Rest > zweite zeile Inhalt irgendwelcher Art Rest > dritte zeile Inhalt irgendwelcher Art Rest > vierte zeile Inhalt irgendwelcher Art Rest > fuenfte zeile Inhalt irgendwelcher Art Rest > [/code] > > Ergebnis: > > [code] > zeile 1: erste zeile Inhalt mitte bla Rest > ELEMENT > var1='wert1' var2="wert2" > Inhalt > A > var3='wert3' > bla > zeile 2: zweite zeile Inhalt irgendwelcher Art Rest > ELEMENT > var1='wert1' var2="wert2" > Inhalt irgendwelcher Art > zeile 3: dritte zeile Inhalt irgendwelcher Art Rest > ELEMENT > var1='wert1' > Inhalt irgendwelcher Art > zeile 4: vierte zeile Inhalt irgendwelcher Art Rest > ELEMENT > var1=wert1 > Inhalt irgendwelcher Art > zeile 5: fuenfte zeile Inhalt irgendwelcher Art Rest > ELEMENT > --- > Inhalt irgendwelcher Art > [/code] > > Gruß Christian > _______________________________________________ > Bielefeld-pm mailing list > Bielefeld-pm at pm.org > http://mail.pm.org/mailman/listinfo/bielefeld-pm > > -- Perl-Magazin: http://perl-magazin.de Perl-Nachrichten: http://perl-nachrichten.de From mailinglisten at renee-baecker.de Wed Jul 29 00:48:44 2009 From: mailinglisten at renee-baecker.de (=?ISO-8859-1?Q?Renee_B=E4cker?=) Date: Wed, 29 Jul 2009 09:48:44 +0200 Subject: [Bielefeld-pm] (kein Betreff) In-Reply-To: <20090729074106.59830@gmx.net> References: <20090729074106.59830@gmx.net> Message-ID: <4A6FFEDC.5070803@renee-baecker.de> Kannst Du kurz erläutern, was die Fragestellung war? Gruß, Renée c.duehl at gmx.de schrieb: > Guten Morgen, > > ich hab versucht, Nils RE-Problem irgendwie nachzubauen, um eine Lösung zu basteln. > > Neben der mit den Doppelten REs (fangend / nicht fangend) von gestern, gäbe es noch die Möglichkeit, sich Stückchenweise vorzuarbeiten, oder aber den bisherigen Ausdruck zu nutzen und einen zweiten Test nachzulagern. > > So nach dem Motto > > if (my @treffer = m~schwierige RE~) { > my $n = @treffer; > if ($treffer[$n-1] eq $treffer[$n-3]) { > # eigentliche Behandlung hier > } > } > > > > Ich komme allerdings gar nicht so weit. Vermutlich ist mein Beispiel nicht komplex genug. Ich poste es trotzdem mal: > > > [code] > #!/usr/bin/perl > use strict; > use warnings; > > my $re_param = > qr~[\w]+ > \s* > = > \s* > ['"]? > [^'"<>]+ > ['"]? > \s* > ~x; > > while () { > chomp; > print "zeile $.: $_\n"; > my @werte = > m~< > (ELEMENT|A) > (?: > \s+ > ((?:$re_param\s*)+) > )? > > > ( > (?: > (?!). > )* > ) > > ~gx; > for my $w (@werte) { > print " ", (defined $w ? $w : '---'), "\n"; > } > } > > > __DATA__ > erste zeile Inhalt mitte bla Rest > zweite zeile Inhalt irgendwelcher Art Rest > dritte zeile Inhalt irgendwelcher Art Rest > vierte zeile Inhalt irgendwelcher Art Rest > fuenfte zeile Inhalt irgendwelcher Art Rest > [/code] > > Ergebnis: > > [code] > zeile 1: erste zeile Inhalt mitte bla Rest > ELEMENT > var1='wert1' var2="wert2" > Inhalt > A > var3='wert3' > bla > zeile 2: zweite zeile Inhalt irgendwelcher Art Rest > ELEMENT > var1='wert1' var2="wert2" > Inhalt irgendwelcher Art > zeile 3: dritte zeile Inhalt irgendwelcher Art Rest > ELEMENT > var1='wert1' > Inhalt irgendwelcher Art > zeile 4: vierte zeile Inhalt irgendwelcher Art Rest > ELEMENT > var1=wert1 > Inhalt irgendwelcher Art > zeile 5: fuenfte zeile Inhalt irgendwelcher Art Rest > ELEMENT > --- > Inhalt irgendwelcher Art > [/code] > > Gruß Christian > _______________________________________________ > Bielefeld-pm mailing list > Bielefeld-pm at pm.org > http://mail.pm.org/mailman/listinfo/bielefeld-pm > > -- Perl-Magazin: http://perl-magazin.de Perl-Nachrichten: http://perl-nachrichten.de From taulmarill at xgn.de Wed Jul 29 01:24:30 2009 From: taulmarill at xgn.de (taulmarill at xgn.de) Date: Wed, 29 Jul 2009 10:24:30 +0200 (CEST) Subject: [Bielefeld-pm] (kein Betreff) In-Reply-To: <20090729074106.59830@gmx.net> References: <20090729074106.59830@gmx.net> Message-ID: <52382.88.198.157.42.1248855870.squirrel@webmail.xgn.de> Mahlzeit, und ich hatte doch recht :-) Mit Perl 5.10 gibt es die Möglichkeit mit \g{n} einen Buffer anzusprechen, wenn n positiv ist, funktioniert das genau so wie \n. Also \g{1} ist gleich \1. Wenn n aber negativ ist, läuft das relativ zur aktuellen Position: / (Y) # buffer 1 ( # buffer 2 (X) # buffer 3 \g{-1} # backref to buffer 3 \g{-3} # backref to buffer 1 ) /x Das müsste doch eigentlich genau das tun, was Nils wollte. Außerdem gibt es auch die Möglichkeit capture buffers zu benennen. Schaut euch einfach mal hier http://perldoc.perl.org/perlre.html den Abschnitt "Capture buffers" an. Wie gesagt, das ganze funktioniert erst mit Perl >= 5.10, aber so was ist ja schnell kompiliert. Gruß, Jürgen Am Mi, 29.07.2009, 09:41, schrieb c.duehl at gmx.de: > Guten Morgen, > > ich hab versucht, Nils RE-Problem irgendwie nachzubauen, um eine Lösung zu > basteln. > > Neben der mit den Doppelten REs (fangend / nicht fangend) von gestern, > gäbe es noch die Möglichkeit, sich Stückchenweise vorzuarbeiten, oder aber > den bisherigen Ausdruck zu nutzen und einen zweiten Test nachzulagern. > > So nach dem Motto > > if (my @treffer = m~schwierige RE~) { > my $n = @treffer; > if ($treffer[$n-1] eq $treffer[$n-3]) { > # eigentliche Behandlung hier > } > } > > > > Ich komme allerdings gar nicht so weit. Vermutlich ist mein Beispiel nicht > komplex genug. Ich poste es trotzdem mal: > > > [code] > #!/usr/bin/perl > use strict; > use warnings; > > my $re_param = > qr~[\w]+ > \s* > = > \s* > ['"]? > [^'"<>]+ > ['"]? > \s* > ~x; > > while () { > chomp; > print "zeile $.: $_\n"; > my @werte = > m~< > (ELEMENT|A) > (?: > \s+ > ((?:$re_param\s*)+) > )? > > > ( > (?: > (?!). > )* > ) > > ~gx; > for my $w (@werte) { > print " ", (defined $w ? $w : '---'), "\n"; > } > } > > > __DATA__ > erste zeile Inhalt mitte var3='wert3'>bla Rest > zweite zeile Inhalt > irgendwelcher Art Rest > dritte zeile Inhalt irgendwelcher Art Rest > vierte zeile Inhalt irgendwelcher Art Rest > fuenfte zeile Inhalt irgendwelcher Art Rest > [/code] > > Ergebnis: > > [code] > zeile 1: erste zeile Inhalt > mitte bla Rest > ELEMENT > var1='wert1' var2="wert2" > Inhalt > A > var3='wert3' > bla > zeile 2: zweite zeile Inhalt > irgendwelcher Art Rest > ELEMENT > var1='wert1' var2="wert2" > Inhalt irgendwelcher Art > zeile 3: dritte zeile Inhalt irgendwelcher > Art Rest > ELEMENT > var1='wert1' > Inhalt irgendwelcher Art > zeile 4: vierte zeile Inhalt irgendwelcher > Art Rest > ELEMENT > var1=wert1 > Inhalt irgendwelcher Art > zeile 5: fuenfte zeile Inhalt irgendwelcher Art Rest > ELEMENT > --- > Inhalt irgendwelcher Art > [/code] > > Gruß Christian > _______________________________________________ > Bielefeld-pm mailing list > Bielefeld-pm at pm.org > http://mail.pm.org/mailman/listinfo/bielefeld-pm > From nils at diewald-online.de Wed Jul 29 02:57:25 2009 From: nils at diewald-online.de (Nils Diewald) Date: Wed, 29 Jul 2009 11:57:25 +0200 Subject: [Bielefeld-pm] Relative Regex-Backrefs In-Reply-To: <52382.88.198.157.42.1248855870.squirrel@webmail.xgn.de> References: <20090729074106.59830@gmx.net> <52382.88.198.157.42.1248855870.squirrel@webmail.xgn.de> Message-ID: <24664_1248861448_ZZg0B10erf18f.00_4A701D05.2020801@diewald-online.de> Hallo! Das Problem war: Wie kann ich Matching-Rückwärtsreferenzen relativ statt absolut angeben, um mehrfaches Kompilieren eines Ausdrucks zu vermeiden. Und Jürgen hat schon die Antwort für Perl 5.10 geliefert: Mit \g{-n}. Danke dafür! Ich hatte mir die 5.10-Spezialitäten wohl noch nicht ausreichend genug angesehen. Christians Beispiel muss leicht umgeändert werden, um das Problem besser zu veranschaulichen: [code] #!perl use warnings; use strict; # Ein wenig komplizierteres Attribut-Matching, damit sich das # Vorkompilieren lohnt. ;) Keine Ahnung, ob's einfacher geht. # Soll auch 'warn:(\'c:\\test\\\')' oder 'warn:("hallo")' greifen. my $re_param = qr/ (\w+) \s*=\s* (['"]) ( (?: (?: (?:(?(['"])< my $s; { local $/ = undef; $s = ; }; # Gesucht werden die öffnenden Tags von ELEMENT oder A # Hier wird der selbe Ausdruck wie oben verwandt, aber mit dem # absoluten Wert 4. So lässt er sich nicht einmal vorkompilieren # als Teil-Regex, da Perl die benummerte Gruppe benötigt. while ($s =~ / < (ELEMENT|A) ( (?: \s+ (\w+) \s*=\s* (['"]) ( (?: (?: (?:(?/gxo) { print $1; if ($2) { my $t = $2; # Hier der vorkompilierte Ausdruck while ($t =~ m/\s$re_param/go) { print ' ',$1,' = (',$3,');'; }; }; print "\n"; }; __DATA__ erste zeile Inhalt mitte bla Rest zweite zeile Inhalt irgendwelcher Art Rest dritte zeile Inhalt irgendwelcher Art Rest vierte zeile Inhalt irgendwelcher Art Rest fuenfte zeile Inhalt irgendwelcher Art Rest [/code] Ausgabe: ELEMENT var1 = (wert:(\'Hallo\')); var2 = (wert2); A var3 = (wert3); ELEMENT var1 = (wert1); var2 = (wert2); ELEMENT var1 = (wert1); ELEMENT Da wäre die Wartung und Vorkompilierung eines Ausdrucks wünschenswert, dachte ich mir ... Das ganze in Perl 5.10 müsste also so gehen: [code] my $re_param = qr/ (\w+) \s*=\s* (['"]) ( (?: (?: (?:(?/gxo) { # (...) [/code] Werde es ausprobieren, sobald ich 5.10 installiert habe! Danke Euch allen! Beste Grüße, Nils taulmarill at xgn.de schrieb: > Mahlzeit, > > und ich hatte doch recht :-) > > Mit Perl 5.10 gibt es die Möglichkeit mit \g{n} einen Buffer anzusprechen, > wenn n positiv ist, funktioniert das genau so wie \n. Also \g{1} ist > gleich \1. Wenn n aber negativ ist, läuft das relativ zur aktuellen > Position: > > / > (Y) # buffer 1 > ( # buffer 2 > (X) # buffer 3 > \g{-1} # backref to buffer 3 > \g{-3} # backref to buffer 1 > ) > /x > > Das müsste doch eigentlich genau das tun, was Nils wollte. Außerdem gibt > es auch die Möglichkeit capture buffers zu benennen. Schaut euch einfach > mal hier http://perldoc.perl.org/perlre.html den Abschnitt "Capture > buffers" an. > > Wie gesagt, das ganze funktioniert erst mit Perl >= 5.10, aber so was ist > ja schnell kompiliert. > > > Gruß, > Jürgen > > Am Mi, 29.07.2009, 09:41, schrieb c.duehl at gmx.de: > >> Guten Morgen, >> >> ich hab versucht, Nils RE-Problem irgendwie nachzubauen, um eine Lösung zu >> basteln. >> >> Neben der mit den Doppelten REs (fangend / nicht fangend) von gestern, >> gäbe es noch die Möglichkeit, sich Stückchenweise vorzuarbeiten, oder aber >> den bisherigen Ausdruck zu nutzen und einen zweiten Test nachzulagern. >> >> So nach dem Motto >> >> if (my @treffer = m~schwierige RE~) { >> my $n = @treffer; >> if ($treffer[$n-1] eq $treffer[$n-3]) { >> # eigentliche Behandlung hier >> } >> } >> >> >> >> Ich komme allerdings gar nicht so weit. Vermutlich ist mein Beispiel nicht >> komplex genug. Ich poste es trotzdem mal: >> >> >> [code] >> #!/usr/bin/perl >> use strict; >> use warnings; >> >> my $re_param = >> qr~[\w]+ >> \s* >> = >> \s* >> ['"]? >> [^'"<>]+ >> ['"]? >> \s* >> ~x; >> >> while () { >> chomp; >> print "zeile $.: $_\n"; >> my @werte = >> m~< >> (ELEMENT|A) >> (?: >> \s+ >> ((?:$re_param\s*)+) >> )? >> > >> ( >> (?: >> (?!). >> )* >> ) >> >> ~gx; >> for my $w (@werte) { >> print " ", (defined $w ? $w : '---'), "\n"; >> } >> } >> >> >> __DATA__ >> erste zeile Inhalt mitte > var3='wert3'>bla Rest >> zweite zeile Inhalt >> irgendwelcher Art Rest >> dritte zeile Inhalt irgendwelcher Art Rest >> vierte zeile Inhalt irgendwelcher Art Rest >> fuenfte zeile Inhalt irgendwelcher Art Rest >> [/code] >> >> Ergebnis: >> >> [code] >> zeile 1: erste zeile Inhalt >> mitte bla Rest >> ELEMENT >> var1='wert1' var2="wert2" >> Inhalt >> A >> var3='wert3' >> bla >> zeile 2: zweite zeile Inhalt >> irgendwelcher Art Rest >> ELEMENT >> var1='wert1' var2="wert2" >> Inhalt irgendwelcher Art >> zeile 3: dritte zeile Inhalt irgendwelcher >> Art Rest >> ELEMENT >> var1='wert1' >> Inhalt irgendwelcher Art >> zeile 4: vierte zeile Inhalt irgendwelcher >> Art Rest >> ELEMENT >> var1=wert1 >> Inhalt irgendwelcher Art >> zeile 5: fuenfte zeile Inhalt irgendwelcher Art Rest >> ELEMENT >> --- >> Inhalt irgendwelcher Art >> [/code] >> >> Gruß Christian >> _______________________________________________ >> Bielefeld-pm mailing list >> Bielefeld-pm at pm.org >> http://mail.pm.org/mailman/listinfo/bielefeld-pm >> >> > > > _______________________________________________ > Bielefeld-pm mailing list > Bielefeld-pm at pm.org > http://mail.pm.org/mailman/listinfo/bielefeld-pm > From taulmarill at xgn.de Wed Jul 29 06:37:01 2009 From: taulmarill at xgn.de (taulmarill at xgn.de) Date: Wed, 29 Jul 2009 15:37:01 +0200 (CEST) Subject: [Bielefeld-pm] Nachtrag zum Treffen (1/2) Message-ID: <41824.88.198.157.42.1248874621.squirrel@webmail.xgn.de> Hallo, hier noch einige Kleinigkeiten zu gestern besprochenen Themen: Bootmanager für Intel-Macs: rEFIt heißt das Ding, und kann alles mögliche booten. U.a. auch trippel-boot Konfigurationen mit MacOS, Windows und Linux. Bei den features habe ich es zwar nicht gefunden, aber er sollte auch von USB-Sticks u.ä. booten können. => http://refit.sourceforge.net/ CGI mit Minimalausstattung: Ich habe eben CGI::Minimal und die Template-Engine Text::Template entdeckt. Beide Module sind pure perl und laden wesentlich schneller als CGI.pm oder TT2. Ich werde das Thema mal weiter im Auge behalten. Würde einigen Perl-Applikationen gut tun, wenn sie weniger Dependencies hätten und unter normalem CGI benutzbar performant wären. MacOS X Terminal Konfiguration: liefere ich wohl erst morgen Abend nach, da ich vorher keinen Zugriff auf ein MacOS X habe. Hab ich was vergessen? Gruß, Jürgen From nils at diewald-online.de Wed Jul 29 08:06:47 2009 From: nils at diewald-online.de (Nils Diewald) Date: Wed, 29 Jul 2009 17:06:47 +0200 Subject: [Bielefeld-pm] Nachtrag zum Treffen (1/2) In-Reply-To: <41824.88.198.157.42.1248874621.squirrel@webmail.xgn.de> References: <41824.88.198.157.42.1248874621.squirrel@webmail.xgn.de> Message-ID: <609_1248880003_ZZg0B211zMu_v.00_4A706587.6070500@diewald-online.de> Hi, Du hattest noch vergessen, ein Foto vom Competition Pro anzuhängen! ;) Habe aber schon danach gesucht - so einen hatte ich leider nie. Vielleicht wäre nächstes Mal ein Protokoll auf einem Bierdeckel wünschenswert? @Text::Template: Das ist ein wirklich sehr praktisches Modul! Ich hatte es mal für einen Newsletter verwendet und mochte es ziemlich. Für ein webbasiertes System wird mir persönlich aber zu viel geEVALt und das System ist zu mächtig. Da mag ich's schon etwas restriktiver. Und außerdem: Im Leben eines Perl-Programmierers gehört doch neben dem Hausbau und dem Baumpflanzen die Implementation eines eigenen Template-Systems zur Menschwerdung dazu, oder etwa nicht? ;) Vielleicht kann ich Euch beizeiten mal mein System vorführen (das Christian zurecht abfällig als "proprietär" abtat) - es enthält einige ganz ordentliche Ansätze, wie ich finde. Obwohl "When people make a template module like this one, they almost always start by inventing a special syntax for substitutions. For example, they build it so that a string like %%VAR%% is replaced with the value of $VAR. Then they realize the need extra formatting, so they put in some special syntax for formatting. Then they need a loop, so they invent a loop syntax. Pretty soon they have a new little template language. This approach has two problems: First, their little language is crippled. If you need to do something the author hasn't thought of, you lose. Second: Who wants to learn another language? You already know Perl, so why not use it?" natürlich stimmt. Wobei ich mich bei meinem System als alter XSL-T-Programmierer daran orientiert hatte und frühzeitig an ein Plugin-System gedacht hatte ... stimmt trotzdem. ;) @CGI::Minimal: War mir nicht bekannt, hat aber den gleichen primären Fehler wie - soweit ich weiß - alle auf CPAN stehenden CGI-Param-Resolver: Egal was ich tun will, erstmal wird alles übergebene geparst. Das macht ein System, an das ich, selbst wenn es nur einfache HTML-Seiten generieren soll, immer massig Daten POSTe, recht und unnötig langsam. Was schert mich STDIN, wenn ich die Daten nicht auswerten will? Ich brauchte ein Modul, dass erstmal nur den Query-String auswertet. Und in einem späteren Prozess, wenn andere Programmteile Daten aus dem STDIN brauchen, kann der Kram geparst werden. Und dann wollte ich noch die Möglichkeit haben, vor dem Auslesen den MAX-Wert zu setzen - damit ich bspw. als Admin größere Daten POSTen kann, als ein normaler Nutzer. Das Modul läuft derzeit ganz nett - ist aber auf CGI optimiert, was bei mir immer "Closure" bedeutet und weder thread- noch mod_perl- noch fcgi-safe ist. Sobald ich es umgestrickt habe, kann ich es gerne mal rumschicken, falls Interesse besteht. Dann seht ihr auch mal Code von mir und könnt mich auslachen. ;) - Nils taulmarill at xgn.de schrieb: > Hallo, > > hier noch einige Kleinigkeiten zu gestern besprochenen Themen: > > Bootmanager für Intel-Macs: rEFIt heißt das Ding, und kann alles mögliche > booten. U.a. auch trippel-boot Konfigurationen mit MacOS, Windows und > Linux. Bei den features habe ich es zwar nicht gefunden, aber er sollte > auch von USB-Sticks u.ä. booten können. => http://refit.sourceforge.net/ > > CGI mit Minimalausstattung: Ich habe eben CGI::Minimal und die > Template-Engine Text::Template entdeckt. Beide Module sind pure perl und > laden wesentlich schneller als CGI.pm oder TT2. Ich werde das Thema mal > weiter im Auge behalten. Würde einigen Perl-Applikationen gut tun, wenn > sie weniger Dependencies hätten und unter normalem CGI benutzbar > performant wären. > > MacOS X Terminal Konfiguration: liefere ich wohl erst morgen Abend nach, > da ich vorher keinen Zugriff auf ein MacOS X habe. > > Hab ich was vergessen? > > > Gruß, > Jürgen > > _______________________________________________ > Bielefeld-pm mailing list > Bielefeld-pm at pm.org > http://mail.pm.org/mailman/listinfo/bielefeld-pm >