From rspier at pobox.com Mon May 2 14:03:34 2005 From: rspier at pobox.com (Robert Spier) Date: Mon May 2 14:03:58 2005 Subject: [LA.pm] (job posting) citysearch Message-ID: [In accordance with our job posting policy, I asked myself nicely "Is it ok if I post this?" and I responded "Thanks for asking. Yes, go ahead." -R] Citysearch is looking to expand it's development group. We're a small and fun team that likes to get things done. If you're interested, please drop your resume to robert underscore spier at citysearch dot com. -R ------------------------- General Description: ------------------------- Senior Software Engineer will be responsible for core, back-end technology development including, but not limited to, the design/architecture of new solutions, the refinement of existing code, and the optimization/acceleration of dynamic web content through caching. ------------------------- Organizational Culture: ------------------------- Citysearch is a fast growth company. Candidate must thrive in a fast-paced, ever changing, entrepreneurial environment. Individual must be able to work independently as well as collaboratively. Must be resourceful and be able to understand the full breadth of how the company works together. Individual must be a creative thinker, confident and able to express ideas in an articulate, well thought out manner. Ability to multi-task and prioritize deadlines is a must. ------------------------- Workflow: ------------------------- Develop core back-end technologies, primarily mod_perl development utilizing both perl and C, for a leading, high-volume web organization. As part of development group, you will work closely with your team members, the templating/HTML programming group (HTML and Template Toolkit), and the UI/Strategy group. You will be responsible for integrating new functionality into our existing code base as well as aiding in the architecture, design, and implementation of new core technologies. ------------------------- Essential Functions: ------------------------- 65%: Coding/Development: Perl/mod_perl/C development in a Linux/UNIX environment, potential for some Java development. 20%: Design: Approx. design of new systems and architecture. 10%: Troubleshooting: troubleshooting 5%: Leadership Experience: Guiding/mentoring more junior members. ------------------------- Required Experience: ------------------------- - 4+ yrs. experience - HTML - Apache Web Server - mod_perl - strong Linux or Unix background. - OO perl experience - RDBMS experience ------------------------- Preferred Experience: ------------------------- Strong proficiency with RDMS systems (Oracle and mySQL ideal) Experience with mentoring/training of junior members ------------------------- Positives: ------------------------- Great opportunity to work in a premier development team in a large-scale, extremely high volume, web development environment. From fred.kleindenst at citigroup.com Tue May 3 09:57:35 2005 From: fred.kleindenst at citigroup.com (Kleindenst, Fred) Date: Tue May 3 09:59:34 2005 Subject: [LA.pm] LA Perlmongers Meeting: Wednesday, May 4th 7:30 PM Message-ID: <1E6014B28FEE6F43A5F49C6628B7B85E039F518F@EXNJMB11.nam.nsroot.net> Reminder: Tomorrow is the LA Perlmongers social meeting. Perlmongers Meeting Wednesday, May 4th 7:30 PM at Wahoo's Tacos in Pasadena on South Lake Avenue. Map, Address, Directions http://tinyurl.com/cvgmf From dpisoni at shopzilla.com Tue May 3 16:50:39 2005 From: dpisoni at shopzilla.com (David Pisoni) Date: Tue May 3 16:50:58 2005 Subject: [LA.pm] (job posting) Shopzilla (formerly BizRate.com) Message-ID: Hello, Robert has benevolently granted me permission to post my open positions to the list. Shopzilla (known to many of you as BizRate.com) is hiring developers and architects to the Web Engineering group. I am the Director of Web Engineering and the hiring manager for the Sr. Software Engineer and Software Architect positions (read, I am not a recruiter nor a PHB.) Our department is responsible for the entire middle-tier of web applications, and all of our code is perl/Apache/mod_perl. We're looking for sharp perl engineers and architects to help us produce quality, cutting-edge web applications. I'll include the standard copy of our postings once, and break out the 3 open position levels' requirements/descriptions separately. Please email me at dpisoni at shopzilla dot com if you are interested or have questions. Also, I will be at the meeting tomorrow night???feel free to approach me then if you have questions or wish to apply. (Though if you don't bring it up there, I probably won't either.) Enjoy, David Pisoni dpisoni@shopzilla.com Director, Web Engineering Shopzilla, Inc. "Education is a progressive discovery of our own ignorance." -Will Durant, historian (1885-1981) ------------------------------------------------------------------------ --------------- Common copy: Shopzilla, formerly BizRate.com, is a leading shopping search engine on the Web. With an index of over 30 million products from more than 50,000 stores, gathered, organized and presented using all proprietary leading-edge technology, Shopzilla provides consumers the best way to find virtually anything for sale, anywhere, and at the best price. In addition to our flagship site(http://www.shopzilla.com), Shopzilla also powers shopping search for many of the Web's largest consumer sites including AOL, Lycos, Time Warner's RoadRunner, and many others. The company is privately held, profitable and based in West Los Angeles. At Shopzilla, our goal is to build the greatest shopping service ever conceived by mankind. To that end, we strive very hard to hire the smartest people. We're an environment where great ideas shape our vision and true passion drives us to the best solutions to the most challenging problems at the intersection of shopping and search. If that sounds like something you'd like to be involved in, please read on. Shopzilla offers great benefits including medical, dental and vision plans, life insurance, 401(k) plan, flexible spending account, generous vacation benefits, a stock option plan -- and we even provide FREE catered lunch every single day! So, if you are the super-star type -- the one all look to as the smartest in your area of expertise -- love challenging yourself, and are searching for a place to work where people care, your ideas matter and you can make a real difference to helping millions of consumers, then we need to talk. Shopzilla is an Equal Opportunity Employer. Positions: Software Engineer: As our Software Engineer, you will: ? Develop core technology, including the design/architecture of new solutions, the refinement of existing code, and the optimization of dynamic web content within an object-oriented Perl/mod_perl/Apache environment ? Work with production team to fulfill requests in the release cycle, assessing impact and involving the data systems and network operations teams when necessary ? Write design specifications, programming specifications, and documentation ? Develop and maintain web applications written in Object Oriented perl, operating on a Linux/Apache/mod_perl platform. ? Locate and fix bugs in the existing code base in a timely manner Your qualifications include: ? 4+ years developing web-based systems using Perl (mod_perl, object-oriented perl, not just perl scripting) running in a UNIX environment required ? mod_perl, Apache, XML, HTML, and Unix skills ? Good software design skills and Object-oriented design practices (UML a plus) ? Balancing short-term requests with long-term product vision is required ? Very strong HTML skills, including multi-platform support, CSS, and JavaScript ? Experience with source control systems, CVS or Subversion a plus ? Ability to learn and contribute quickly and work independently ? Creativity and effective written and verbal communications are essential Sr. Software Engineer: As our Sr. Software Engineer, you will: ? Develop core technology, including the design/architecture of new solutions, the refinement of existing code, and the optimization of dynamic web content. ? Work with production team to fulfill requests in the project queue, assessing impact and involving the data systems and network operations team when necessary ? Write design specifications, programming specifications, and documentation ? Develop and maintain web applications written in Object Oriented perl, operating on a Linux/Apache/mod_perl platform. ? Develop systems and API's for interfacing with open and proprietary network services and complex business logic/algorithms. ? Develop systems and API's for interfacing with partner companies and trading partners. Your qualifications include: ? 6+ years of experience in software engineering, OOD/OOA/OOP ? 4+ years of Perl Development ? mod_perl, Apache, XML, HTML, and Unix skills ? Strong software architecture skills (UML a plus) ? Balancing short-term requests with long-term product vision is required ? Experience working with others, both developers and non-technical people during the analysis, design, and execution phases of an engineering project is required ? Experience with source control systems, CVS or Subversion a plus ? Ability to learn and contribute quickly and work independently ? Creativity and effective written and verbal communications are essential ? Candidates for this position should enjoy web based applications development, including gathering requirements and feedback from internal customers, and providing suggestions Software Architect: As our Software Architect, you will: ? Develop core technology, including the design/architecture of new solutions and the refactoring and refinement of existing systems. ? Collaborate with product management staff in producing project functional specification, including feasibility assessments, engineering time estimates and strategic value assessments. ? Produce design documents from functional specifications. Design documents contain high-level architectural direction and planning that engineers use in implementing software projects. ? Contribute to engineering implementation process in a mentoring role. Occasionally act as implementation engineer. ? Participate with Web Engineering management in steering future direction of Web Engineering projects. Your qualifications include: ? 8+ years of experience in software engineering, OOD/OOA/OOP ? Perl/mod_perl, Apache, XML, HTML and Unix skills ? Skilled in structured application design demonstrated by the ability to clearly translate business requirements into a system design ? Ability to formally communicate architectural designs and plans (UML a plus) ? Domain experience in n-tier web application development; working experience with web and networking protocols and concepts ? Excellent communication and interpersonal skills ? Experience working with others, both developers and project/business owners during the analysis, design, and execution phases of an engineering project is required. ? Ability to mentor individuals and interact as a member of an engineering team -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: text/enriched Size: 8089 bytes Desc: not available Url : http://mail.pm.org/pipermail/losangeles-pm/attachments/20050503/9005179a/attachment-0001.bin From rspier at pobox.com Wed May 4 16:42:03 2005 From: rspier at pobox.com (Robert Spier) Date: Wed May 4 16:42:17 2005 Subject: TONIGHT - Re: [LA.pm] LA Perlmongers Meeting: Wednesday, May 4th 7:30 PM In-Reply-To: <1E6014B28FEE6F43A5F49C6628B7B85E039F518F@EXNJMB11.nam.nsroot.net> References: <1E6014B28FEE6F43A5F49C6628B7B85E039F518F@EXNJMB11.nam.nsroot.net> Message-ID: Reminder, this is tonight. At Tue, 3 May 2005 12:57:35 -0400, Kleindenst, Fred wrote: > > Reminder: Tomorrow is the LA Perlmongers social meeting. > > Perlmongers Meeting > Wednesday, May 4th 7:30 PM > at Wahoo's Tacos in Pasadena on South Lake Avenue. > > Map, Address, Directions > http://tinyurl.com/cvgmf > > _______________________________________________ > Losangeles-pm mailing list > Losangeles-pm@pm.org > http://mail.pm.org/mailman/listinfo/losangeles-pm From rspier at pobox.com Thu May 5 21:38:02 2005 From: rspier at pobox.com (Robert Spier) Date: Thu May 5 21:38:13 2005 Subject: LAST NIGHT - Re: [LA.pm] LA Perlmongers Meeting: Wednesday, May 4th 7:30 PM In-Reply-To: References: <1E6014B28FEE6F43A5F49C6628B7B85E039F518F@EXNJMB11.nam.nsroot.net> Message-ID: Sorry I didn't make it, I got home, intended to take a little nap, and woke up three hours later. Hope you all had fun. Did anyone take the chopsticks of responsibility for the next meeting? -R From rspier at pobox.com Thu May 5 21:40:35 2005 From: rspier at pobox.com (Robert Spier) Date: Thu May 5 21:40:47 2005 Subject: [LA.pm] FW: (Google) Sr. Linux Cluster System Admin. & Sr. Software Engineer/Unix System & Network Administrator (2 Job Openings) References: <200505050339.j453daQL014525@216-239-45-4.google.com> Message-ID: Here's one more google posting. Probably the last one for a while.. at least until they post a Santa Monica opening. Hey, it's a chance to move to Ireland. -R --------------------- Company: Google Contact: Tod Vanlandingham Email: Todv at google dot com Website: http://www.google.com/intl/en/jobs/eng/reli.html Job Title: (Google) Linux Cluster Systems Administrator/Expert Scripter Positions based in Mountain View, California or Dublin, Ireland Relocation a must. Assistance provided. Google's Cluster Operations team is looking for talented system administrators to help administer Google's complex, proprietary clustering technologies. Literally thousands of Linux servers power the technology behind Google.com, and it's a real challenge to administer these effectively. Google's Cluster Operations team needs seasoned system administrators to automate complex tasks across a huge cluster. Responsibilities: * automation of tasks as much as possible through the development of scripts and administration tools * configuration of system and network parameters * monitoring of system stability and performance * ensuring 24x7 operation of our cluster * comprehensive documentation of our procedures Requirements: * B.S. in Computer Science, or equivalent experience * 5+ years experience with Linux Systems Administration *Deep understanding of networking i.e.: understanding of how to isolate, diagnose, and resolve service delivery components (service delivery components include servers, networks, and applications); be familiar with the functionality, operating, and failure modes of key networking devices (routers, switches, bridges, firewalls, hardware load balancers); be able to identify networking as the potential cause of a service issue using server-resident tools to generate this data (i.e. tcpdump, ping, traceroute, etc.); familiarity in interpreting the output of these tools; familiarity with common network topologies, protocols, and tools; have some notion of common network security exploits -- and their remedies; understanding of troubleshooting at the packet level; intimate knowledge of TCP/IP networking * strong programming and scripting ability (Python, Perl, bash) * excellent verbal and written skills * outstanding customer service abilities Please Email resumes to: Todv at google dot com Job location is Mountain View, California or Dublin, Ireland ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- --------- Company: Google Contact: Tod Vanlandingham Email: Todv at google dot com Website: http://www.google.com/intl/en/jobs/eng/reli.html Job Title: (Google) Senior Software Engineer/Unix System & Network Administrator, Google.com (SRE) Positions based in Mountain View, CA and Dublin Ireland. Relocation a must. Assistance provided. Are you part ace coder, part adrenalin junkie? Do you have a knack for seeing a problem and immediately discerning the likely solution? Maybe you've been coding for years, are bored with the old design-build-review-test-ship-repeat routine, and yearn for some faster-paced challenges? Or perhaps you're a seasoned software engineer who is also a genius at jockeying networks and administering UNIX clusters. We're looking for top-notch thrill seeking, software engineers to join the Google.com team. Google.com engineers are in the thick of everything involved with keeping Google running, from code-level troubleshooting of traffic anomalies to maintenance of our most cutting edge services; from monitoring and alerts to building new automation infrastructure. We are aggressively building this elite team of high level engineers in this mission critical environment. All team members must have strong analytical and troubleshooting skills, fluency in coding, good communication skills, and most of all enthusiasm for tackling the complex problems of scale which are uniquely Google. Google.com engineers tackle challenging, novel situations every day, and work with just about every other engineering and operations team in the process. Qualifications: Strong programming/scripting skills in any of the following: C, C++, Java, Perl, Python Senior Level experience with UNIX system administration. Strong understanding of networking; -Deep understanding of networking, understanding of how to isolate, diagnose, and resolve service delivery components (service delivery components include servers, networks, and applications); be familiar with the functionality, operating, and failure modes of key networking devices (routers, switches, bridges, firewalls, hardware load balancers); be able to identify networking as the potential cause of a service issue using server-resident tools to generate this data (tcpdump, ping, traceroute, etc.); familiarity in interpreting the output of these tools; familiarity with common network topologies, protocols, and tools; have some notion of common network security exploits -- and their remedies; understanding of troubleshooting at the packet level. Strong project management skills, especially in deploying live end-user systems. In-depth knowledge of UNIX (preferably Linux), and shell scripting. Proven technical troubleshooting experience. .Excellent analytic ability, strong communication skills, and a strong sense of urgency. Ability to handle periodic on-call duty as well as out-of-band requests. 6-15+ years experience for Senior SWE position, OR 3-8 years experience for SWE position. BA/BS in CS, or equivalent experience. Please Email resumes to: Todv at google dot com Job location is Mountain View, California or Dublin, Ireland Thank you, Tod Vanlandingham Google Talent Acquisition (650) 253-4291 todv@google.com Media Coverage: http://www.google.com/press/press.html Corporate Overview: http://www.google.com/corporate/index.html Top 10 Reasons to Work at Google: http://www.google.com/jobs/reasons.html Work Life Balance : http://www.google.com/intl/en/jobs/balance.html Looking for interesting work that matters to millions of people? http://www.google.com/jobs/great-people-needed.html From ask at develooper.com Fri May 6 12:28:31 2005 From: ask at develooper.com (=?ISO-8859-1?Q?Ask_Bj=F8rn_Hansen?=) Date: Fri May 6 12:28:46 2005 Subject: LAST NIGHT - Re: [LA.pm] LA Perlmongers Meeting: Wednesday, May 4th 7:30 PM In-Reply-To: References: <1E6014B28FEE6F43A5F49C6628B7B85E039F518F@EXNJMB11.nam.nsroot.net> Message-ID: <62443B79-B9A6-4741-96F4-CBB9381E4A9E@develooper.com> On May 5, 2005, at 9:38 PM, Robert Spier wrote: > Did anyone take the chopsticks of responsibility for the next meeting? I think Fred generously volunteered to not pass the chopsticks on just yet... :) - ask -- http://askask.com/ - http://develooper.com/ From tbrannon at valueclick.com Tue May 10 10:27:38 2005 From: tbrannon at valueclick.com (Terrence Brannon) Date: Tue, 10 May 2005 10:27:38 -0700 Subject: [LA.pm] Thousand Oaks Perl Mongers Technical meeting, Wednesday May 11 Message-ID: <7A7034183C845E4B9963F65505BA34D13FFC83@vchqex01.wl.corp.valueclick.com> For the 3rd time in 6 weeks, we will be having a technical perl mongers meeting. One topic slot is taken: "my @talk = <2*6 perl6 topics>; # hangman.p6 elucidated" - a talk explaining a Perl 6 implementation of hangman. In the process, 12 different features of Perl 6 will be discussed and demonstrated using the Perl 6 Pugs Compiler: 1. magical lexicals 2. ternary operator 3. err and // 4. unary = 5. smart matching 6. junctions 7. for and loop 8. string concatenation 9. grep and adverbial blocks 10. constants 11. interpolating function results into strings 12. the new repeat operatator Another topic slot (30 minutes or less) is still available. From glim at mycybernet.net Tue May 10 20:12:00 2005 From: glim at mycybernet.net (Gerard Lim) Date: Tue, 10 May 2005 23:12 -0400 Subject: [LA.pm] Yet Another Perl Conference final details Message-ID: Hi everyone... There have been some recent developments on the YAPC::NA front, and it has been suggested to us that a reminder might be helpful to some people, so here's a quick summary of the event. Summary ------- YAPC::NA 2005 (Yet Another Perl Conference, North America) in Toronto, Canada, Monday - Wednesday 27 - 29, June 2005 Home page: http://yapc.org/America/ Conference Location: http://89chestnut.com/ A facility of the University of Toronto Accommodations -------------- Normally registration information would come first, but accommodations are the bottleneck -- our main group reservation (at the conference hotel) expires at the end of the week, and as the conference approaches it will be extremely difficult to find a hotel anywhere in the city. Info on how to book at: http://yapc.org/America/accommodations-2005.shtml Registration ------------ Register now! :-) We are on track to break attendance records at YAPC::NA this year, and we could even sell out before the conference starts. The price for the full 3 days is USD$85. We keep it insanely low through many generous sponsorships and the all-volunteer organizational and speaking crews. Registration info: http://yapc.org/America/register-2005.shtml Direct registration link: http://donate.perlfoundation.org/index.pl?node=registrant%20info&conference_id=423 Conference Speaking Schedule ---------------------------- We've got an excellent selection of talks and speakers for Perl programmers of all levels, beginner through expert. We are fortunate enough to have presentations coming from some of the most recognizable names in Perl programming today, including Larry Wall, Chip Salzenberg, Dan Sugalski, Autrijus Tang and brian d foy. Summary -- http://yapc.org/America/schedule-2005/summary.html Day 1 -- http://yapc.org/America/schedule-2005/day1.html Day 2 -- http://yapc.org/America/schedule-2005/day2.html Day 3 -- http://yapc.org/America/schedule-2005/day3.html Lightning Talks --------------- These short (5 minutes each) talks, presented by the conference attendees, are a YAPC tradition. If you're interested please read more about them and sign up: http://www.justanotherperlhacker.org/lightning/ [ This message was sent by Gerard Lim on behalf of the YAPC::NA 2005 Conference organizing committee of the Toronto Perl Mongers. Thanks for your patience and support. ] From remarbach at yahoo.com Wed May 11 09:31:20 2005 From: remarbach at yahoo.com (Randall Marbach) Date: Wed, 11 May 2005 09:31:20 -0700 (PDT) Subject: [LA.pm] Thousand Oaks Perl Mongers Technical meeting, Wednesday May 11 In-Reply-To: 6667 Message-ID: <20050511163120.15426.qmail@web54107.mail.yahoo.com> Is there a time and location/address for this? TIA Randy --- Terrence Brannon wrote: > For the 3rd time in 6 weeks, we will be having a > technical perl mongers > meeting. > > One topic slot is taken: "my @talk = <2*6 perl6 > topics>; # hangman.p6 > elucidated" > - a talk explaining a Perl 6 implementation of > hangman. In the > process, 12 different features of Perl 6 > will be discussed and demonstrated using the > Perl 6 Pugs Compiler: > > 1. magical lexicals > 2. ternary operator > 3. err and // > 4. unary = > 5. smart matching > 6. junctions > 7. for and loop > 8. string concatenation > 9. grep and adverbial blocks > 10. constants > 11. interpolating function results into strings > 12. the new repeat operatator > > Another topic slot (30 minutes or less) is still > available. > > > _______________________________________________ > Losangeles-pm mailing list > Losangeles-pm at pm.org > http://mail.pm.org/mailman/listinfo/losangeles-pm > __________________________________ Yahoo! Mail Mobile Take Yahoo! Mail with you! Check email on your mobile phone. http://mobile.yahoo.com/learn/mail From tbrannon at valueclick.com Wed May 11 10:19:37 2005 From: tbrannon at valueclick.com (Terrence Brannon) Date: Wed, 11 May 2005 10:19:37 -0700 Subject: [LA.pm] Thousand Oaks Perl Mongers Technical meeting, Wednesday May 11, 7pm Message-ID: <7A7034183C845E4B9963F65505BA34D1347348@vchqex01.wl.corp.valueclick.com> Thousand Oaks Perl Mongers Location, Directions, and Contact: http://thousand-oaks.pm.org/ Next meeting: 7pm on Wednesday May 11, 2005. Topic(s): 1. "my @talk = <2*6 perl6 topics> ; # hangman.p6" 2. 30-minute slot still open! > -----Original Message----- > From: Randall Marbach [mailto:remarbach at yahoo.com] > Sent: Wednesday, May 11, 2005 9:31 AM > To: Losangeles-pm at pm.org > Subject: Re: [LA.pm] Thousand Oaks Perl Mongers Technical > meeting,Wednesday May 11 > > > Is there a time and location/address for this? > > TIA > > Randy > > > > --- Terrence Brannon > > > wrote: > > For the 3rd time in 6 weeks, we will be having a technical perl > > mongers meeting. > > > > One topic slot is taken: "my @talk = <2*6 perl6 > > topics>; # hangman.p6 > > elucidated" > > - a talk explaining a Perl 6 implementation of hangman. In the > > process, 12 different features of Perl 6 > > will be discussed and demonstrated using the Perl 6 > Pugs Compiler: > > > > 1. magical lexicals > > 2. ternary operator > > 3. err and // > > 4. unary = > > 5. smart matching > > 6. junctions > > 7. for and loop > > 8. string concatenation > > 9. grep and adverbial blocks > > 10. constants > > 11. interpolating function results into strings > > 12. the new repeat operatator > > > > Another topic slot (30 minutes or less) is still available. > > > > > > _______________________________________________ > > Losangeles-pm mailing list > > Losangeles-pm at pm.org > > http://mail.pm.org/mailman/listinfo/losangeles-pm > > > > > > __________________________________ > Yahoo! Mail Mobile > Take Yahoo! Mail with you! Check email on your mobile phone. > http://mobile.yahoo.com/learn/mail > _______________________________________________ > Losangeles-pm mailing list > Losangeles-pm at pm.org > http://mail.pm.org/mailman/listinfo/losangeles-pm > From kevin+lapm at scaldeferri.com Mon May 16 15:24:18 2005 From: kevin+lapm at scaldeferri.com (Kevin Scaldeferri) Date: Mon, 16 May 2005 15:24:18 -0700 Subject: [LA.pm] Apache::DBI pings Message-ID: I was reading through Apache::DBI... you know, for fun... and there was something about this snippet that confused me: # do we need to ping the database ? $PingTimeOut{$dsn} = 0 unless $PingTimeOut{$dsn}; $LastPingTime{$dsn} = 0 unless $LastPingTime{$dsn}; my $now = time; my $needping = (($PingTimeOut{$dsn} == 0 or $PingTimeOut{$dsn} > 0) and $now - $LastPingTime{$dsn} > $PingTimeOut{$dsn}) ? 1 : 0; print STDERR "$prefix need ping: ", $needping == 1 ? "yes" : "no", "\n" if $Apache::DBI::DEBUG > 1; $LastPingTime{$dsn} = $now; # check first if there is already a database-handle cached # if this is the case, possibly verify the database-handle # using the ping-method. Use eval for checking the connection # handle in order to avoid problems (dying inside ping) when # RaiseError being on and the handle is invalid. if ($Connected{$Idx} and (!$needping or eval{$Connected{$Idx}->ping})) { print STDERR "$prefix already connected to '$Idx'\n" if $Apache::DBI::DEBUG > 1; return (bless $Connected{$Idx}, 'Apache::DBI::db'); } I had always assumed that the ping happened every N seconds, but I came to realize that it's only if it's been more than N seconds since the last query. Of course, it turns out it's actually documented that that is the case: > This configures the usage of the ping method, to validate a > connection. Setting the timeout to 0 will always validate the database > connection using the ping method (default). Setting the timeout < 0 > will de-activate the validation of the database handle. This can be > used for drivers, which do not implement the ping-method. Setting the > timeout > 0 will ping the database only if the last access was more > than timeout seconds before. If we assume that the only reason a database connection ever goes bad is because the server times it out from inactivity, this all works fine. And, if you take the default ping time of 0, it's all good because you always ping, and always restore a dead connection. But, I get confused about what happens if you set the ping interval > 0 and greater than your query frequency, and the connection drops for some other reason. Won't you never ping (because you're querying too frequently), and never automatically reconnect? Presumably your application will scream bloody murder when you try to do things like prepare and execute statements, but it's not clear to me how you would recover from the problem, without killing off the child process. Perhaps I'm just being stupid today. The "mod_perl Developer's Cookbook" does assert in passing that Apache::DBI is robust against catastrophic connection failures, but I'm having a hard time seeing it in the code. Thanks all, -kevin From ben_tilly at operamail.com Mon May 16 17:57:55 2005 From: ben_tilly at operamail.com (Benjamin J. Tilly ) Date: Tue, 17 May 2005 08:57:55 +0800 Subject: [LA.pm] Apache::DBI pings Message-ID: <20050517005756.026A23AA515@ws5-8.us4.outblaze.com> For the record. I have similar misgivings, and prefer using regular DBI's connect_cached to populate a global variable with the database handle. That strategy leads to a ping per page request, so that if anything happens to the database connection, at most one page is affected rather than every page until it decides to ping. This does, of course, lead to an increased load due to pings. I personally consider this minor, since a ping or two is less than everything ELSE I'm going to do in a page request. Ben "Kevin Scaldeferri" wrote: > > I was reading through Apache::DBI... you know, for fun... and there was > something about this snippet that confused me: > > # do we need to ping the database ? > $PingTimeOut{$dsn} = 0 unless $PingTimeOut{$dsn}; > $LastPingTime{$dsn} = 0 unless $LastPingTime{$dsn}; > my $now = time; > my $needping = (($PingTimeOut{$dsn} == 0 or $PingTimeOut{$dsn} > 0) > and $now - $LastPingTime{$dsn} > $PingTimeOut{$dsn}) ? 1 : 0; > print STDERR "$prefix need ping: ", $needping == 1 ? "yes" : "no", > "\n" if $Apache::DBI::DEBUG > 1; > $LastPingTime{$dsn} = $now; > > # check first if there is already a database-handle cached > # if this is the case, possibly verify the database-handle > # using the ping-method. Use eval for checking the connection > # handle in order to avoid problems (dying inside ping) when > # RaiseError being on and the handle is invalid. > if ($Connected{$Idx} and (!$needping or > eval{$Connected{$Idx}->ping})) { > print STDERR "$prefix already connected to '$Idx'\n" if > $Apache::DBI::DEBUG > 1; > return (bless $Connected{$Idx}, 'Apache::DBI::db'); > } > > > I had always assumed that the ping happened every N seconds, but I came > to realize that it's only if it's been more than N seconds since the > last query. Of course, it turns out it's actually documented that that > is the case: > > > This configures the usage of the ping method, to validate a > > connection. Setting the timeout to 0 will always validate the > > database connection using the ping method (default). Setting the > > timeout < 0 will de-activate the validation of the database > > handle. This can be used for drivers, which do not implement the > > ping-method. Setting the timeout > 0 will ping the database only > > if the last access was more than timeout seconds before. > > > If we assume that the only reason a database connection ever goes bad > is because the server times it out from inactivity, this all works > fine. And, if you take the default ping time of 0, it's all good > because you always ping, and always restore a dead connection. But, I > get confused about what happens if you set the ping interval > 0 and > greater than your query frequency, and the connection drops for some > other reason. Won't you never ping (because you're querying too > frequently), and never automatically reconnect? Presumably your > application will scream bloody murder when you try to do things like > prepare and execute statements, but it's not clear to me how you would > recover from the problem, without killing off the child process. > > Perhaps I'm just being stupid today. The "mod_perl Developer's > Cookbook" does assert in passing that Apache::DBI is robust against > catastrophic connection failures, but I'm having a hard time seeing it > in the code. > > > Thanks all, > > > -kevin > > _______________________________________________ > Losangeles-pm mailing list > Losangeles-pm at pm.org > http://mail.pm.org/mailman/listinfo/losangeles-pm From david at cloudgraphics.com Sat May 28 09:46:35 2005 From: david at cloudgraphics.com (David Heayn) Date: Sat, 28 May 2005 12:46:35 -0400 Subject: [LA.pm] stuck with pulling out variables from a reference Message-ID: hi, i've been playing with the tableextract module for a few hours now and i really like it. i have found a problem that i can't quite solve myself. basically, i'm trying to extract earnings data from a stock site. i'm stuck at the point where i can grab the table itself. however, i want to convert the individual cells to their own variables (ie Q1->$Q1, Q2->$Q2...) and i'm lost with the sample code. could you point me in the right direction? many thanks! (code below:) David Heayn * http://www.cloudgraphics.com * 213/925.3283 #/usr/bin/perl -w use lib qw( ..); use HTML::TableExtract; use LWP::Simple; use Data::Dumper; my $url = 'http://clearstation.etrade.com/cgi-bin/fundamentals?Event=profile&Symbol=mcrs'; use LWP::Simple; my $content = get $url; die "Couldn't get $url" unless defined $content; ########## chomp($content); print " \n \n Earnings....................................................... \n" ; $te = new HTML::TableExtract(depth => 1, count => 14); $te->parse($content); foreach $ts ($te->table_states) { print "Table found at ", join(',', $ts->coords), ":\n"; foreach $row ($ts->rows) { print " ", join(',', @$row), "\n"; } } From Peter at PSDT.com Sat May 28 14:56:02 2005 From: Peter at PSDT.com (Peter Scott) Date: Sat, 28 May 2005 14:56:02 -0700 Subject: [LA.pm] stuck with pulling out variables from a reference In-Reply-To: References: Message-ID: At 12:46 PM -0400 5/28/05, David Heayn wrote: >hi, i've been playing with the tableextract module for a few hours >now and i really like it. > >i have found a problem that i can't quite solve myself. > >basically, i'm trying to extract earnings data from a stock site. i'm >stuck at the point where i can grab the table itself. however, i want >to convert the individual cells to their own variables (ie Q1->$Q1, >Q2->$Q2...) I doubt that :-) >and i'm lost with the sample code. could you point me in >the right direction? perldoc -q 'variable name' Data::Dumper is your friend.