From antoniosun at lavabit.com Sat Mar 7 09:35:52 2009 From: antoniosun at lavabit.com (Antonio Sun) Date: Sat, 7 Mar 2009 12:35:52 -0500 Subject: [tpm] Perl as a career Message-ID: Hi everybody, I'm new to TPM, and would like to hear your opinion on Perl's future from the career prospective. It can be considered as to further the "great debate" about whether IT can be recommended as a profession to the next generation, http://techrepublic.com.com/http://techrepublic.com.com/5206-13416-0.html?forumID=102&threadID=234089&start=0 To me, Perl is the most powerful language, however, career-wise, I see most Perl jobs are maintaining web applications, whereas Perl lost its competitive edge over Php & Java. I personally think, - Though powerful, Perl has always been a "Cinderella", and will continue ? being so, with no "Princess" come along to rescue in the future. - Perl's role for building web applications will fade out as time goes on. What do you think? I'm new here, so my observation might not be correct. What do you think the percentage would be (web maintaining to all Perl jobs)? What industry are you in, what type of Perl programming do you do? What do you think the future (career-wise) of type of work you do? If you lost your current job, how much likely you can get a similar job? Thanks Antonio From samogon at gmail.com Sat Mar 7 09:53:09 2009 From: samogon at gmail.com (Ilia) Date: Sat, 7 Mar 2009 12:53:09 -0500 Subject: [tpm] Perl as a career In-Reply-To: References: Message-ID: On Sat, Mar 7, 2009 at 12:35 PM, Antonio Sun wrote: > Hi everybody, > > I'm new to TPM, and would like to hear your opinion on Perl's future from > the career prospective. It can be considered as to further the "great > debate" about whether IT can be recommended as a profession to the next > generation, > http://techrepublic.com.com/http://techrepublic.com.com/5206-13416-0.html?forumID=102&threadID=234089&start=0 > > To me, Perl is the most powerful language, however, career-wise, I see most > Perl jobs are maintaining web applications, whereas Perl lost its > competitive edge over Php & Java. > > I personally think, > > - Though powerful, Perl has always been a "Cinderella", and will continue > ? being so, with no "Princess" come along to rescue in the future. > - Perl's role for building web applications will fade out as time goes on. > > What do you think? > > I'm new here, so my observation might not be correct. > What do you think the percentage would be (web maintaining to all Perl jobs)? maybe 50:50 > What industry are you in, what type of Perl programming do you do? currently my full time job is in Telecom. We use Perl to maintain a legacy LAMP web application and we also use Perl for the backend with some socket programming. I've also used Perl for a new project to create a json-rpc server. > What do you think the future (career-wise) of type of work you do? bleak. > If you lost your current job, how much likely you can get a similar job? probably likely but I would be looking for a Python gig. -- Ilia Lobsanov Nurey Networks - http://www.nurey.com New Ideas for a New Economy Python, Perl, Java, Linux & more Toronto +1 647 996 9087 Boston +1 781 328 1162 From adam.prime at utoronto.ca Sat Mar 7 09:56:41 2009 From: adam.prime at utoronto.ca (Adam Prime) Date: Sat, 07 Mar 2009 12:56:41 -0500 Subject: [tpm] Perl as a career In-Reply-To: References: Message-ID: <49B2B559.6060906@utoronto.ca> Antonio Sun wrote: > Hi everybody, > > I'm new to TPM, and would like to hear your opinion on Perl's future from > the career prospective. It can be considered as to further the "great > debate" about whether IT can be recommended as a profession to the next > generation, > http://techrepublic.com.com/http://techrepublic.com.com/5206-13416-0.html?forumID=102&threadID=234089&start=0 Your language of preference does not need to define your career, unless you want it to. Good programmers are always going to be in demand. That said, i have let it define mine, and I'm not worried about that choice. > To me, Perl is the most powerful language, however, career-wise, I see most > Perl jobs are maintaining web applications, whereas Perl lost its > competitive edge over Php & Java. There are plenty of companies doing new web development on perl, though yes, there are probably more web dev jobs in PHP or Java. That isn't something that is going to change in the near future. It is possible that it could be changed by perl 6, but that change is probably a long time coming yet, if it's coming at all. > I personally think, > > - Though powerful, Perl has always been a "Cinderella", and will continue > being so, with no "Princess" come along to rescue in the future. > - Perl's role for building web applications will fade out as time goes on. > > What do you think? > > I'm new here, so my observation might not be correct. > What do you think the percentage would be (web maintaining to all Perl jobs)? > What industry are you in, what type of Perl programming do you do? > What do you think the future (career-wise) of type of work you do? > If you lost your current job, how much likely you can get a similar job? I don't think that perl is going to fade out for web development in the next 10 years at least. If anything, developing websites with perl has been getting easier, which has been bringing people back into that realm. I have been doing web development with perl for about 10 years, the bulk of that using mod_perl/apache, my current employer is in the forex industry and employs probably a dozen people that are primarily programming in perl, and we're still looking for more of them. If I lost my current job I have no doubt that I'd find a similar job fairly quickly. Adam From abram.hindle at softwareprocess.us Sat Mar 7 10:29:21 2009 From: abram.hindle at softwareprocess.us (Abram Hindle) Date: Sat, 07 Mar 2009 13:29:21 -0500 Subject: [tpm] Perl as a career In-Reply-To: (sfid-20090307_125606_273147_2C371889) References: (sfid-20090307_125606_273147_2C371889) Message-ID: <49B2BD01.2030102@softwareprocess.us> Current jobs stats indicates that the Perl Market is worth all of the python and ruby market. PHP is its own beast but it is not as popular as you might perceive. http://blog.timbunce.org/2008/02/12/comparative-language-job-trend-graphs/ The fact is that as unglamorous as it sounds, Perl is a infrastructure language. The weight of ``legacy'' code is so heavy that Perl is not going away. SE Researchers studying maintenance have suggested that the maintenance part of a life cycle in software takes 80% or more of the resources (including time) than any other part of the software's life cycle. If you look on craiglist or twitter you'll see perl job announcements. Full time jobs are being offered in the US even post-crash. Perl is a pretty safe skill to have and it simply isn't going away. What has died is a lot of its hype, but even so Perl is ahead of PHP. I suspect this is because people write just about any kind of software in perl and but they write webapps in PHP. http://www.google.com/insights/search/#cat=31&q=python%2Cruby%2Cperl%2Cc%23%2Cphp&geo=US&date=today%2012-m&cmpt=q Perl related news is often found on perl related sites. Fickle sites like programming.reddit.com make trends look like the norm but it is not the case. Not everyone is making a stack based language compiler using llvm bindings in haskell. Sorry it just isn't as common as reddit would like to believe. Be careful what you believe, local perception is not always a reflection of a global trend. abram Ilia wrote: > On Sat, Mar 7, 2009 at 12:35 PM, Antonio Sun wrote: >> Hi everybody, >> >> I'm new to TPM, and would like to hear your opinion on Perl's future from >> the career prospective. It can be considered as to further the "great >> debate" about whether IT can be recommended as a profession to the next >> generation, >> http://techrepublic.com.com/http://techrepublic.com.com/5206-13416-0.html?forumID=102&threadID=234089&start=0 >> >> To me, Perl is the most powerful language, however, career-wise, I see most >> Perl jobs are maintaining web applications, whereas Perl lost its >> competitive edge over Php & Java. >> >> I personally think, >> >> - Though powerful, Perl has always been a "Cinderella", and will continue >> being so, with no "Princess" come along to rescue in the future. >> - Perl's role for building web applications will fade out as time goes on. >> >> What do you think? >> >> I'm new here, so my observation might not be correct. >> What do you think the percentage would be (web maintaining to all Perl jobs)? > > maybe 50:50 > >> What industry are you in, what type of Perl programming do you do? > > currently my full time job is in Telecom. We use Perl to maintain a > legacy LAMP web application and we also use Perl for the backend with > some socket programming. I've also used Perl for a new project to > create a json-rpc server. > >> What do you think the future (career-wise) of type of work you do? > > bleak. > >> If you lost your current job, how much likely you can get a similar job? > > probably likely but I would be looking for a Python gig. > > > -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 252 bytes Desc: OpenPGP digital signature URL: From rdice at pobox.com Sat Mar 7 10:24:39 2009 From: rdice at pobox.com (Richard Dice) Date: Sat, 7 Mar 2009 13:24:39 -0500 Subject: [tpm] Perl as a career In-Reply-To: <49B2B559.6060906@utoronto.ca> References: <49B2B559.6060906@utoronto.ca> Message-ID: <5bef4baf0903071024v4b9c6dfbg8fecbbe6d2d609e9@mail.gmail.com> > There are plenty of companies doing new web development on perl, though > yes, there are probably more web dev jobs in PHP or Java. That isn't > something that is going to change in the near future. It is possible that > it could be changed by perl 6, but that change is probably a long time > coming yet, if it's coming at all. > IMHO, Perl 6 will be here fairly soon. A massive change in the IT job marketplace in favour of Perl 6 is harder to predict and is (necessarily) not going to arrive quite as soon. It will be interesting to see when it comes about, though. Cheers, - Richard -------------- next part -------------- An HTML attachment was scrubbed... URL: From arocker at vex.net Sat Mar 7 12:02:30 2009 From: arocker at vex.net (arocker at vex.net) Date: Sat, 7 Mar 2009 15:02:30 -0500 (EST) Subject: [tpm] Perl as a career Message-ID: <7feb5c134309f76736e6dcb5919b61db.squirrel@webmail.vex.net> > Antonio Sun wrote: >> I'm new to TPM, and would like to hear your opinion on Perl's future >> from the career prospective. I don't think there is any such thing as a career in IT any more: the technology changes too quickly, and the schooling industry keeps turning out cheap replacements for you. If you do it as an adjunct to some other trade or profession (e.g. banking or accounting), you'ld better be identified with that rather than computing, if you don't want to be replaced when when some new technology becomes the flavour of the month. I just hope Richard is right, and Perl 6 emerges soon to take the world by storm. From Martin at Cleaver.org Sat Mar 7 12:20:59 2009 From: Martin at Cleaver.org (Martin at Cleaver.org) Date: Sat, 7 Mar 2009 15:20:59 -0500 Subject: [tpm] Perl as a career In-Reply-To: <5bef4baf0903071024v4b9c6dfbg8fecbbe6d2d609e9@mail.gmail.com> References: <49B2B559.6060906@utoronto.ca> <5bef4baf0903071024v4b9c6dfbg8fecbbe6d2d609e9@mail.gmail.com> Message-ID: Is Perl 6 going to include a Rails- or Zend- like Framework? It's neither PHP nor Ruby that makes those languages popular, it's the frameworks that reduce the ensuing software complexity. Thanks, Martin -- Martin at Cleaver.org http://twitter.com/mrjcleaver +1 416-786-6752 (GMT-5) On Sat, Mar 7, 2009 at 1:24 PM, Richard Dice wrote: > > There are plenty of companies doing new web development on perl, though >> yes, there are probably more web dev jobs in PHP or Java. That isn't >> something that is going to change in the near future. It is possible that >> it could be changed by perl 6, but that change is probably a long time >> coming yet, if it's coming at all. >> > > IMHO, Perl 6 will be here fairly soon. A massive change in the IT job > marketplace in favour of Perl 6 is harder to predict and is (necessarily) > not going to arrive quite as soon. It will be interesting to see when it > comes about, though. > > Cheers, > - Richard > > > > _______________________________________________ > toronto-pm mailing list > toronto-pm at pm.org > http://mail.pm.org/mailman/listinfo/toronto-pm > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From vvp at cogeco.ca Sat Mar 7 12:55:44 2009 From: vvp at cogeco.ca (Viktor Pavlenko) Date: Sat, 7 Mar 2009 15:55:44 -0500 Subject: [tpm] Perl as a career In-Reply-To: References: Message-ID: <18866.57168.249730.842805@hetman.ua> >>>>> "AS" == Antonio Sun writes: AS> To me, Perl is the most powerful language, however, AS> career-wise, I see most Perl jobs are maintaining web AS> applications, whereas Perl lost its competitive edge over Php AS> & Java. perl is not only web application development but a powerful general purpose programming language. Although my main language of employment has been C++ for the last 10 years or so, I have used perl occasionally and there is no substitute for it. perl development is so much faster than C++ or Java. For example, a couple of weeks ago I was asking here for a free job scheduler, I couldn't find a good one so wrote one myself, in one week :) In my experience, perl rocks and will rock in foreseeable future. -- Viktor From liam at holoweb.net Sat Mar 7 10:13:26 2009 From: liam at holoweb.net (Liam R E Quin) Date: Sat, 07 Mar 2009 13:13:26 -0500 Subject: [tpm] Perl as a career In-Reply-To: References: Message-ID: <1236449606.7686.152.camel@desktop.barefootcomputing.com> On Sat, 2009-03-07 at 12:35 -0500, Antonio Sun wrote: [...] > To me, Perl is the most powerful language, however, career-wise, I see most > Perl jobs are maintaining web applications, whereas Perl lost its > competitive edge over Php & Java. Perl is a tool. Programming, systems administration, user support, application design/architecture, problem analysis, sock washing, those are all careers, although the boundaries between most of them get fuzzy at times. Perl 6 has been a long time coming, but may end up with a surge of popularity for a while just like Ruby on Rails, Java, Cobol on Cogs, etc. > What do you think the percentage would be (web maintaining to all Perl jobs)? Maintaining a Web site is something I do, and Perl is one of many tools I use to do it. Perl will likely have a long future in the roles of system administration glue, database reporting and text processing, regardless of whether it's for the Web or for some organization-internal purpose. If you're trying to decide whether to learn Perl, say so and you'll get helpful advice :-) but answering in the general is not really all that meaningful, I think. best, Liam -- Liam Quin - The barefoot programmer XML Activity Lead, W3C, http://www.w3.org/People/Quin/ Pictures from old books: http://fromoldbooks.org/ Ankh: irc.sorcery.net irc.gnome.org www.advogato.org From antoniosun at lavabit.com Sat Mar 7 14:29:57 2009 From: antoniosun at lavabit.com (Antonio Sun) Date: Sat, 7 Mar 2009 17:29:57 -0500 Subject: [tpm] Perl as a career In-Reply-To: <49B2B559.6060906@utoronto.ca> References: <49B2B559.6060906@utoronto.ca> Message-ID: Hi, First of all, thank you all who have replied. On Sat, Mar 7, 2009 at 12:56 PM, Adam Prime wrote: > Your language of preference does not need to define your career, unless you > want it to. ?Good programmers are always going to be in demand. . . I 100% agree with you. But ironically, >99% of the employers/job postings don't have such attitude. E.g., they need people have 5+ years of Java programming experiences when Java hadn't been popular for over 3 years. I am mostly a C/C++ programmer, but have been programming Perl since 1996, and keep on programming Perl and improving my Perl Skills, e.g., OO/inheritance, etc, and I've been maintaining CPAN modules since 2002. Still, good programming skills does not equal to good demands for newcomers like me. > . . . > . . . ?If anything, developing websites with perl has been > getting easier, which has been bringing people back into that realm. ?I have > been doing web development with perl for about 10 years, the bulk of that > using mod_perl/apache, . . . 10 years, hmm... maybe it is time to look around and see what is out there now. No offense, I just want to point out how easily to do web programming in Php (or Java) nowadays. E.g., anyone knows a Perl based framework that has seamless integration with AJAX? From DB schema to basic data entry/browse web forms with advanced AJAX support, it won't take me more than 2 hours to do so in PHP, and I don't consider myself a good PHP programmer. On Sat, Mar 7, 2009 at 3:20 PM, Martin at Cleaver.org wrote: > Is Perl 6 going to include a Rails- or Zend- like Framework? > It's neither PHP nor Ruby that makes those languages popular, it's the > frameworks that reduce the ensuing software complexity. Bingo. 100% agree. On Sat, Mar 7, 2009 at 3:55 PM, Viktor Pavlenko wrote: > perl is not only web application development but a powerful general > purpose programming language. Although my main language of employment > has been C++ for the last 10 years or so, I have used perl > occasionally and there is no substitute for it. Yep, same here. That's why I feel sad that most Perl jobs are web developing jobs. On Sat, Mar 7, 2009 at 3:02 PM, wrote: > I don't think there is any such thing as a career in IT any more: the > technology changes too quickly, and the schooling industry keeps turning > out cheap replacements for you. If you do it as an adjunct to some other > trade or profession (e.g. banking or accounting), you'd better be > identified with that rather than computing, if you don't want to be > replaced when when some new technology becomes the flavour of the month. Again, 100% agree. that's why I asked what kind of industry that you guys works in. Thanks again everyone. Cheers Antonio From antoniosun at lavabit.com Sat Mar 7 14:44:40 2009 From: antoniosun at lavabit.com (Antonio Sun) Date: Sat, 7 Mar 2009 17:44:40 -0500 Subject: [tpm] TPM on gmane? Message-ID: Hi, Recently someone asked for searching capability for TPM. Why don't we put TPM on gmane as well? "Any public mailing list can be carried by Gmane", http://gmane.org/ . just fill out the subscription page @ http://gmane.org/subscribe.php . The advantage: TPM will have - a 2nd archive - nice web-based *threaded* view - an NNTP posting/viewing interface and most importantly, *advanced* searching capability! Any comments? Thanks Antonio From abram.hindle at softwareprocess.us Sat Mar 7 15:04:45 2009 From: abram.hindle at softwareprocess.us (Abram Hindle) Date: Sat, 07 Mar 2009 18:04:45 -0500 Subject: [tpm] Perl as a career In-Reply-To: (sfid-20090307_173524_401477_0C4F37A7) References: <49B2B559.6060906@utoronto.ca> (sfid-20090307_173524_401477_0C4F37A7) Message-ID: <49B2FD8D.5030506@softwareprocess.us> Antonio Sun wrote: >> . . . If anything, developing websites with perl has been >> getting easier, which has been bringing people back into that realm. I have >> been doing web development with perl for about 10 years, the bulk of that >> using mod_perl/apache, . . . > > 10 years, hmm... maybe it is time to look around and see what is out > there now. No offense, I just want to point out how easily to do web > programming in Php (or Java) nowadays. E.g., anyone knows a Perl based > framework that has seamless integration with AJAX? From DB schema to > basic data entry/browse web forms with advanced AJAX support, it won't > take me more than 2 hours to do so in PHP, and I don't consider myself > a good PHP programmer. Why doesn't Catalyst work? abram -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 252 bytes Desc: OpenPGP digital signature URL: From antoniosun at lavabit.com Sat Mar 7 15:46:06 2009 From: antoniosun at lavabit.com (Antonio Sun) Date: Sat, 7 Mar 2009 18:46:06 -0500 Subject: [tpm] Perl as a career In-Reply-To: <49B2FD8D.5030506@softwareprocess.us> References: <49B2B559.6060906@utoronto.ca> <49B2FD8D.5030506@softwareprocess.us> Message-ID: On Sat, Mar 7, 2009 at 6:04 PM, Abram Hindle > Why doesn't Catalyst work? Ah, all my perl framework knowledge has been from google Perl+Ajax and http://perl.apache.org/docs/tutorials/tmpl/comparison/comparison.html#HTML__Mason which "is not an exhaustive list: I've only included systems that are currently maintained, well-documented, and have managed to build up a significant user community. In short, I've left out a dozen or so less popular systems. At the end of this section, I'll mention a few systems that aren't as commonly used but may be worth a look." thanks for the point to Catalyst. From adam.prime at utoronto.ca Sat Mar 7 16:37:38 2009 From: adam.prime at utoronto.ca (Adam Prime) Date: Sat, 07 Mar 2009 19:37:38 -0500 Subject: [tpm] Perl as a career In-Reply-To: References: <49B2B559.6060906@utoronto.ca> Message-ID: <49B31352.30505@utoronto.ca> Antonio Sun wrote: > 10 years, hmm... maybe it is time to look around and see what is out > there now. No offense, I just want to point out how easily to do web > programming in Php (or Java) nowadays. E.g., anyone knows a Perl based > framework that has seamless integration with AJAX? From DB schema to > basic data entry/browse web forms with advanced AJAX support, it won't > take me more than 2 hours to do so in PHP, and I don't consider myself > a good PHP programmer. The Catalyst framework has already been pointed out. There are other framework options. like Mojo, or Titanium (basically CGI::App). The hard part of AJAX is the front end, not the backend. The backend in any language is nearly alwasy DBI (or it's equivilent) and JSON::XS (or it's equivalent). The hard part of AJAX is taking the data you get from the server, and doing something with it in the client. Frameworks generally don't do that much for you in that regard other than possibly give you a bunch of stock html/js/css with examples. Adam From talexb at gmail.com Sat Mar 7 18:32:54 2009 From: talexb at gmail.com (Alex Beamish) Date: Sat, 7 Mar 2009 21:32:54 -0500 Subject: [tpm] Perl as a career In-Reply-To: References: Message-ID: On Sat, Mar 7, 2009 at 12:35 PM, Antonio Sun wrote: > Hi everybody, > > I'm new to TPM, and would like to hear your opinion on Perl's future from > the career prospective. It can be considered as to further the "great > debate" about whether IT can be recommended as a profession to the next > generation, > http://techrepublic.com.com/http://techrepublic.com.com/5206-13416-0.html?forumID=102&threadID=234089&start=0 > > To me, Perl is the most powerful language, however, career-wise, I see most > Perl jobs are maintaining web applications, whereas Perl lost its > competitive edge over Php & Java. > > I personally think, > > - Though powerful, Perl has always been a "Cinderella", and will continue > ? being so, with no "Princess" come along to rescue in the future. That's a pretty non-traditional reading of the story -- in the one I grew up with, it was the "Prince" who came rising to the rescue. But in our case, Perl is perfectly capable of taking care of herself. Or himself. Or itself -- because the Perl community is very strong. And also because there's plenty of legacy code out there that needs decoding and maintaining. I think Adam already nailed it with his comment "Your language of preference does not need to define your career, unless you want it to." Use whatever tool you think you need to use. > - Perl's role for building web applications will fade out as time goes on. Um, on what assumptions do you base your conclusion? Please explain further. :) > What do you think? > > I'm new here, so my observation might not be correct. > > What do you think the percentage would be (web maintaining to all Perl jobs)? It's hard to tell, and I'm not even sure that it matters. I don't even know how you'd classify something as a 'non-Web' job. Some of the work I do is on web applications (definitely web), and I get my hands dirty (so to speak) with HTML, Javascript and CSS. Some of the stuff I write is cron jobs that support the web application (probably not web). Some of the stuff is useful tools or one-liners that Get Stuff Done (that's not web). I'm a developer, and I get stuff done. > What industry are you in, what type of Perl programming do you do? I work at the same company as Adam -- I'm in the forex business. I've described what I do in the previous paragraph, except to also say that I also do SQL on a large DB2 installation. > What do you think the future (career-wise) of type of work you do? I think it's pretty good -- I have 10 years Perl, Linux, various databases (MySQl, PostgreSQL and now DB2), Apache and mod_perl, HTML, some CSS and Javascript; before I got into Perl I wrote C for 15 years, and before that I did assembler. I've acted as a Perl resource at my current and former employer. I have a strong customer service ethic. I think the future looks bright for the type of work that I do -- and enjoy the work a lot. > If you lost your current job, how much likely you can get a similar job? A scary question -- but I think the odds are fairly good that I could find something relatively quickly. And I think in these Difficult Times, open source projects are probably easier to rationalize than something that needs a shiny and expensive certificate. Alex -- Alex Beamish Toronto, Ontario aka talexb From abram.hindle at softwareprocess.us Sat Mar 7 20:26:42 2009 From: abram.hindle at softwareprocess.us (Abram Hindle) Date: Sat, 07 Mar 2009 23:26:42 -0500 Subject: [tpm] Abstracts for the March 26 TPM Talks Message-ID: <49B34902.9050902@softwareprocess.us> As I volunteered for the March talks here are the abstracts for the 2 parts of the talk I plan to give: Talk 1: **** Harbinger: Making your desktop sing with the help of PERL We use a variety of user interfaces during our day to day lives, but what if software you were familiar with suddenly started to sing? Imagine stealing events from your spreadsheets, your simulations, your office tools, your editors, even your video-games. Could these events make music? Could the delay and reload of a Quake 3 shotgun come out as gong sound? Could the machine gun in Quake3 be converted into an piano roll? Could the frantic scratching of the eraser in GIMP produce beats or the shudder of crystal? With Perl, C, your favorite sound generator/player and your exciting or mundane everyday software, you too can turn your office or desktop environment into a noisemaker. I present to you Harbinger, a PERL based musical event middle man. Harbinger is built to massage events streamed from other applications into musical events for software such CSound, Pure-Data or hardware attached to your midi ports! Talk 2: **** Lispy Perl Abstract Ever thought of making another language? Ever thought of compiling that language down to PERL? Do you like s-expressions? Do you like lisp or scheme? Did you ever want to program in PERL in with a different syntax altogether, yet still integrate with PERL? In this presentation I will demonstrate how to abuse PERL's SourceFilter such that you can make it parse a whole new language, generate and compile that code and language down to Perl Code and execute it. Why not? Perl has closures, Perl has a garbage collector, it might have an attitude problem but throw in a couple of parentheses and you've got yourself a flexible alternative syntax in which to express ideas. Even better, if it compiles down to PERL, you can interact with PERL directly. We'll deal with design issues, little quirks of PERL and abuses which make developing a language in PERL easier. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 252 bytes Desc: OpenPGP digital signature URL: From antoniosun at lavabit.com Sat Mar 7 22:50:36 2009 From: antoniosun at lavabit.com (Antonio Sun) Date: Sun, 8 Mar 2009 01:50:36 -0500 Subject: [tpm] Perl as a career In-Reply-To: <49B31352.30505@utoronto.ca> References: <49B2B559.6060906@utoronto.ca> <49B31352.30505@utoronto.ca> Message-ID: On Sat, Mar 7, 2009 at 7:37 PM, Adam Prime wrote: > The hard part of AJAX is the front end, not the backend. ?The backend in any > language is nearly alwasy DBI (or it's equivilent) and JSON::XS (or it's > equivalent). The hard part of AJAX is taking the data you get from the > server, and doing something with it in the client. ?Frameworks generally > don't do that much for you in that regard other than possibly give you a > bunch of stock html/js/css with examples. Just FYI, The PHP framework that I used not only covers the backend, but also all 3 tiers of M.V.C. layers. The AJAX part, which is executed at the user end, plug seamlessly with the V and C layers. Personally, I believe that the era of building AJAX not "by-hand" but by utilizing frameworks has already arrived. IMHO, ExtJS is taking the lead at the moment http://extjs.com/learn/Ext_2_Overview. If you like, scroll down to the bottom of http://extjs.com/learn/Tutorial:Introduction_to_Ext_2.0, for examples of using ExtJS in various languages (including Perl), which shows that ExtJS is language-neutral. ExtJS can integrate with the PHP framework that I used (apart from its native AJAX support), but I haven't find a Perl based web development framework that has such seamlessly AJAX integration yet. Again, I'm just stating the fact, and have no intention to belittle the Perl language that I'm found of. Antonio From adam.prime at utoronto.ca Sat Mar 7 23:40:16 2009 From: adam.prime at utoronto.ca (Adam Prime) Date: Sun, 08 Mar 2009 03:40:16 -0400 Subject: [tpm] Perl as a career In-Reply-To: References: <49B2B559.6060906@utoronto.ca> <49B31352.30505@utoronto.ca> Message-ID: <49B37660.7020300@utoronto.ca> Antonio Sun wrote: > Just FYI, The PHP framework that I used not only covers the backend, > but also all 3 tiers of M.V.C. layers. The AJAX part, which is > executed at the user end, plug seamlessly with the V and C layers. You might want to look at the various View and Controller plugins for Catalyst on CPAN. There are hundreds. > Personally, I believe that the era of building AJAX not "by-hand" but > by utilizing frameworks has already arrived. IMHO, ExtJS is taking the > lead at the moment http://extjs.com/learn/Ext_2_Overview. If you like, > scroll down to the bottom of > http://extjs.com/learn/Tutorial:Introduction_to_Ext_2.0, for examples > of using ExtJS in various languages (including Perl), which shows that > ExtJS is language-neutral. ExtJS can integrate with the PHP framework > that I used (apart from its native AJAX support), but I haven't find a > Perl based web development framework that has such seamlessly AJAX > integration yet. There are tons of JS frameworks. Personally, i use mootools for my personal stuff. At work we use a lot of Prototype, and some ExtJS. Many people are big fans of jquery. Any of them are easily integrated with whatever you're using on the backend. I'm sure that fans of the other frameworks would disagree vehemently that any one other than their current favorite was 'taking the lead'. Adam From arocker at vex.net Sun Mar 8 07:25:34 2009 From: arocker at vex.net (arocker at vex.net) Date: Sun, 8 Mar 2009 10:25:34 -0400 (EDT) Subject: [tpm] Perl as a career Message-ID: <47cfdfda022ef972f7cc17cf1e534a3d.squirrel@webmail.vex.net> >> - Perl has always been a "Cinderella", and will continue >> being so, with no "Princess" come along to rescue in the future. > > That's a pretty non-traditional reading of the story -- in the one I > grew up with, it was the "Prince" who came rising to the rescue. > Diversity, dear boy, diversity. (She's probably riding a Harley, but definitely not carrying a sword; Health & Safety regs, you know, and self-defense is politically incorrect?) >> What do you think the percentage would be (web maintaining to all Perl >> jobs)? > Probably 80%/20%, as in most other fields. This ratio is often bemoaned as though it's a bad thing, but it's inevitable. If "maintenance" is defined as updating and adapting to new circumstances, rather than fixing developers' mistakes, a well-written system will inevitably tend to higher ratios of maintenance to original effort as its functions are extended. (If the design was really prescient, much of that maintenance will be users updating control files, rather than new coding.) > Times, open source projects are probably easier to rationalize than > something that needs a shiny and expensive certificate. Unfortunately, (damn you, Novell!), shiny certificates have become what the suits and the firing department look for. (They're easier to understand than actual results.) From arocker at vex.net Sun Mar 8 07:31:14 2009 From: arocker at vex.net (arocker at vex.net) Date: Sun, 8 Mar 2009 10:31:14 -0400 (EDT) Subject: [tpm] Perl as a career In-Reply-To: References: <49B2B559.6060906@utoronto.ca> <49B31352.30505@utoronto.ca> Message-ID: <7e2dd0881bde5c4e62e339ef6b7e31ef.squirrel@webmail.vex.net> It sounds as though Antonio has identified a topic that would make a worthwhile meeting topic; duelling frameworks, or "How to create web applications without really trying". Is anyone interested? From arocker at vex.net Sun Mar 8 07:36:45 2009 From: arocker at vex.net (arocker at vex.net) Date: Sun, 8 Mar 2009 10:36:45 -0400 (EDT) Subject: [tpm] Perl as a career In-Reply-To: <49B37660.7020300@utoronto.ca> References: <49B2B559.6060906@utoronto.ca> <49B31352.30505@utoronto.ca> <49B37660.7020300@utoronto.ca> Message-ID: <1afe5bd4b0284113dba57cbd0398cecd.squirrel@webmail.vex.net> > > You might want to look at the various View and Controller plugins for > Catalyst on CPAN. There are hundreds. > > There are tons of JS frameworks. These two statements identify a paradoxical situation. If there are too many options, it becomes easier to roll one's own, rather than wade through the numerous possible candidates assessing their suitability and reliability. From Martin at Cleaver.org Sun Mar 8 08:11:34 2009 From: Martin at Cleaver.org (Martin at Cleaver.org) Date: Sun, 8 Mar 2009 10:11:34 -0500 Subject: [tpm] Perl as a career In-Reply-To: <1afe5bd4b0284113dba57cbd0398cecd.squirrel@webmail.vex.net> References: <49B2B559.6060906@utoronto.ca> <49B31352.30505@utoronto.ca> <49B37660.7020300@utoronto.ca> <1afe5bd4b0284113dba57cbd0398cecd.squirrel@webmail.vex.net> Message-ID: On Sun, Mar 8, 2009 at 9:36 AM, wrote: > > > > You might want to look at the various View and Controller plugins > for Catalyst on CPAN. There are hundreds. > > > > There are tons of JS frameworks. > > These two statements identify a paradoxical situation. If there are > too many options, it becomes easier to roll one's own, rather than > wade through the numerous possible candidates assessing their suitability > and reliability. And I'd said: >> Perl seems to have a more than N ways of doing it, where it = framework, and N is a sane, justifiable number. If Perl is to compete I believe it would serve itself by focusing the energies of its users on a smaller set. While many criticize PHP for having too many functions built into the PHP core, that's a less complex issue than too many frameworks. If one thing would get my attention for Perl 6 it would be a "fewer ways to do something" mentality. Convention over Configuration and all that. Martin. -------------- next part -------------- An HTML attachment was scrubbed... URL: From arocker at vex.net Sun Mar 8 08:37:33 2009 From: arocker at vex.net (arocker at vex.net) Date: Sun, 8 Mar 2009 11:37:33 -0400 (EDT) Subject: [tpm] [Fwd: Re: Perl as a career] Message-ID: <843db08cb28f2c4816889ef8962189a2.squirrel@webmail.vex.net> >From > > If Perl is to compete I believe it would serve itself by focusing the > energies of its users on a smaller set. > > If one thing would get my attention for Perl 6 it would be a "fewer ways > to do something" mentality. Convention over Configuration and all that. > I agree. Back at the dawn of time, world+dog had unique CP/M floppy disk formats, which made software distribution a nightmare. IBM's single greatest contribution to personal computing was a standard format that everyone would implement because they had to. I'm not sufficiently familiar with the problem to identify the essential parts of it, but I expect the Unix tool approach would work here as well. I.e., each step handled by a single-purpose program with a standard interface for combinations (and replacement if a better answer surfaces). Or is the problem sufficiently complex that a layered architecture (as in networking and Unix itself required?) From antoniosun at lavabit.com Sun Mar 8 10:11:36 2009 From: antoniosun at lavabit.com (Antonio Sun) Date: Sun, 8 Mar 2009 12:11:36 -0500 Subject: [tpm] Perl as a career In-Reply-To: <7e2dd0881bde5c4e62e339ef6b7e31ef.squirrel@webmail.vex.net> References: <49B2B559.6060906@utoronto.ca> <49B31352.30505@utoronto.ca> <7e2dd0881bde5c4e62e339ef6b7e31ef.squirrel@webmail.vex.net> Message-ID: On Sun, Mar 8, 2009 at 9:31 AM, wrote: > It sounds as though Antonio has identified a topic that would make a > worthwhile meeting topic; duelling frameworks, or "How to create web > applications without really trying". . . I meant, technology improvement has arrived to a point that its focus has been shifted from benefiting the end users with better tools (word process, spreed sheet, etc, etc, you name it), to benefiting the developers with better building blocks. I'm not a giant myself, but I can stand on a giant's shoulder. :-) From antoniosun at lavabit.com Sun Mar 8 10:38:02 2009 From: antoniosun at lavabit.com (Antonio Sun) Date: Sun, 8 Mar 2009 12:38:02 -0500 Subject: [tpm] Abstracts for the March 26 TPM Talks In-Reply-To: <49B34902.9050902@softwareprocess.us> References: <49B34902.9050902@softwareprocess.us> Message-ID: On Sat, Mar 7, 2009 at 11:26 PM, Abram Hindle wrote: > . . . here are the abstracts for the 2 > parts of the talk I plan to give: > > Talk 1: > **** Harbinger: Making your desktop sing with the help of PERL. . . > I present to you Harbinger, a PERL based musical event > middle man. Harbinger is built to massage events streamed from other > applications into musical events for software such CSound, Pure-Data > or hardware attached to your midi ports! > > Talk 2: > **** Lispy Perl Abstract > . . . In this > presentation I will demonstrate how to abuse PERL's SourceFilter such > that you can make it parse a whole new language, generate and compile > that code and language down to Perl Code and execute it. . . . Excellent, excellent! It'll be extremely helpful to me, because I'm planning on writing an abcplayer, which simplifies the approach to play ABC music notation [1] files. The first part might help me find an API to play the tunes on the sound card, and the second part will open a new way for me to parse the ABC music notations. [1]ABC music notation language http://abcnotation.org.uk A bit more about my "abcplayer", currently all the tools that I found use a two-step approach, 1) "compile" the ABC notation to some other formats, then 2) play it using other tools, mainly via midi. But the midi support is by far the least supported HW in Linux. I want to write a tools to play ABC music notations directly through sound card, no intermediate files or alien tools necessary. Further, a bit more about ABC notation, I'm always a big fan of documenting complicated things using plain text. With ABC to notate music in plain text, even as complicated as Beethoven's Symphony No. 7 can be done, (http://www.ucolick.org/~sla/abcmusic/sym7mov2.html), music notations can be easily and portably stored or transported electronically. IMHO, midi is machine language, whereas ABC is hight level language, i.e., midi is the notation for music instruments; while ABC is the notation for human, and computer too. For machine to analyze tunes (via artificial intelligence etc), plain text based notation is the first step. [http://www.linuxjournal.com/article/8629] ___________________________________________ A common editor such as vi or emacs is all that is needed to write an abc file. After the file has been written, it can be converted to a standard MIDI file using abc2mid or to a print-ready format using abc2mtex (MusicTeX), abc2ps (PostScript) or abc2pdf (Adobe PDF). ___________________________________________ With ABC notation, one can not only produce professional-looking scores, or MIDI sound files, but also can translate MIDI files into plain text notations as well, with the help of Midi2abc (YAPS, http://abc.sourceforge.net/abcMIDI/). [http://abcplus.sourceforge.net/] ___________________________________________ The ABC music notation language is a wonderful tool to typeset sheet music. ABC is one of the best designed, easy to use, well-thought out, and nicely implemented notation formats I've ever seen: IMHO, it surpasses other good notation languages like GNU Lilypond or MusiXTeX. (Philip's Music Writer is a serious contender though.) You can write music in a very simple ASCII format and convert it to MIDI, or typeset it to make professional-looking scores. ___________________________________________ From arocker at vex.net Sun Mar 8 12:11:07 2009 From: arocker at vex.net (arocker at vex.net) Date: Sun, 8 Mar 2009 15:11:07 -0400 (EDT) Subject: [tpm] Abstracts for the March 26 TPM Talks In-Reply-To: References: <49B34902.9050902@softwareprocess.us> Message-ID: > I'm always a big fan of documenting complicated things using plain text. Welcome to the Unix philosophy. > A common editor such as vi or emacs is all that is needed to write abc And that's why it's a good idea. From abram.hindle at softwareprocess.us Sun Mar 8 15:00:51 2009 From: abram.hindle at softwareprocess.us (Abram Hindle) Date: Sun, 8 Mar 2009 18:00:51 -0400 (EDT) Subject: [tpm] Perl as a career Message-ID: My concern these days is for all the focus of webapp frameworks to be so HTML/CSS/JS/ORM centric. Many of them seem to completely ignore the fact that we made UIs for years by using abstractions such as widgets. I've seen a few little systems which attempted to actually abstract a lot of this tedium by providing client/server GUI abstractions, but most of these are java and are relatively unpopular due to a mixture of concerns. The only place I've seen/been told where the "abstract the web as a UI, provide widgets" approach has taken off has been ASP.NET. The problem there is that it is a proprietary microsoft based framework which is often difficult to host online on a budget. >From what I have personally observed and been told Rails, Catalyst, Seaside, Happstack, Drupal etc, all DO NOT provide good UI abstractions, they are in fact stuck wallowing in the nitty gritty with poorly composed JS generators and HTML templates. This really bothers me and I'm unaware of a perl framework which attempts to deal with web ui widgets as widgets. My personal opinion is we are at the mercy of managers who care about pretty pictures and rounded corners and designers who care about the same thing. I don't think perl just needs this, I think the web needs this. Devs need a good shot in the arm , they should compose UIs from widgets, not rewriting widgets everytime to suit their small needs. What do I want to hear about (I don't mean a talk, I mean discussion, I'm asking questions here): * Perl Frameworks which are used to develop web app which have widget/ui level abstractions * Other frameworks which people have heard of used which operate at this level * Difficulties people have had with trying use the UI widget abstraction for web apps. * What don't popular web frameworks do to support this level of abstraction. abram On Sun, 8 Mar 2009, Antonio Sun wrote: > On Sun, Mar 8, 2009 at 9:31 AM, wrote: > >> It sounds as though Antonio has identified a topic that would make a >> worthwhile meeting topic; duelling frameworks, or "How to create web >> applications without really trying". . . > > I meant, technology improvement has arrived to a point that > its focus has been shifted from benefiting the end users with better > tools (word process, spreed sheet, etc, etc, you name it), to > benefiting the developers with better building blocks. > > I'm not a giant myself, but I can stand on a giant's shoulder. :-) > _______________________________________________ > toronto-pm mailing list > toronto-pm at pm.org > http://mail.pm.org/mailman/listinfo/toronto-pm > From abram.hindle at softwareprocess.us Sun Mar 8 15:01:20 2009 From: abram.hindle at softwareprocess.us (Abram Hindle) Date: Sun, 8 Mar 2009 18:01:20 -0400 (EDT) Subject: [tpm] Abstracts for the March 26 TPM Talks Message-ID: On Sun, 8 Mar 2009, Antonio Sun wrote: > On Sat, Mar 7, 2009 at 11:26 PM, Abram Hindle > wrote: >> . . . here are the abstracts for the 2 >> parts of the talk I plan to give: >> >> Talk 1: >> **** Harbinger: Making your desktop sing with the help of PERL. . . >> I present to you Harbinger, a PERL based musical event >> middle man. Harbinger is built to massage events streamed from other >> applications into musical events for software such CSound, Pure-Data >> or hardware attached to your midi ports! > > [1]ABC music notation language > http://abcnotation.org.uk You might be slightly disappointed as my approach is closer to DSP than to producing music with classical scales. The abc notation looks like a good way to develop music that fits that style. Literate programming for music :D http://csounds.com/ I like to use CSound: Csound is a sound design, music synthesis, and signal processing system, providing facilities for composition and performance over a wide range of platforms. CSound is pretty old too, it was based on MUSICV which was an old mainframe computer music program. CSound uses plain text for music which makes it perfect for perl. There is really no stopping perl in this domain, all the performance intensive DSP code is done for you, you just need to glue it all together. That said CSound gets to the point of being almost amusical. Have you played with http://search.cpan.org/~weltyjj/Music-ABC-Song-0.01/Song.pm and http://search.cpan.org/~weltyjj/Music-ABC-Archive-0.02/Archive.pm ? abram From antoniosun at lavabit.com Sun Mar 8 16:08:24 2009 From: antoniosun at lavabit.com (Antonio Sun) Date: Sun, 8 Mar 2009 18:08:24 -0500 Subject: [tpm] Perl as a career In-Reply-To: References: Message-ID: On Sun, Mar 8, 2009 at 5:00 PM, Abram Hindle wrote: > My concern these days is for all the focus of webapp frameworks to be so > HTML/CSS/JS/ORM centric. Many of them seem to completely ignore the fact > that > we made UIs for years by using abstractions such as widgets. . . > The only place I've seen/been told where the "abstract the web as a UI, > provide > widgets" approach has taken off has been ASP.NET. By widgets do you mean Buttons, Menus, Toolbar, ProgressBar, etc. and Panels like: * GridPanel * TabPanel * TreePanel * FormPanel etc, and Windows Layout Managers? If so, have you checked out the ExtJS that I mentioned? http://extjs.com/products/extjs/ From antoniosun at lavabit.com Sun Mar 8 16:28:00 2009 From: antoniosun at lavabit.com (Antonio Sun) Date: Sun, 8 Mar 2009 18:28:00 -0500 Subject: [tpm] Abstracts for the March 26 TPM Talks In-Reply-To: References: Message-ID: On Sun, Mar 8, 2009 at 5:01 PM, Abram Hindle wrote: > Have you played with > http://search.cpan.org/~weltyjj/Music-ABC-Song-0.01/Song.pm > and http://search.cpan.org/~weltyjj/Music-ABC-Archive-0.02/Archive.pm ? Holly, that's not even listed on any official ABC sites. I mean, CPAN never stops amazing me with the wide collection that it has. Thanks for the CSound intro too. BTW, they are calling for articles for Csound Journal, at http://www.csounds.com/ I think your talk deserves a broader audience. :-) cheers Antonio From rdice at pobox.com Sun Mar 8 16:46:26 2009 From: rdice at pobox.com (Richard Dice) Date: Sun, 8 Mar 2009 19:46:26 -0400 Subject: [tpm] Perl as a career In-Reply-To: References: Message-ID: <5bef4baf0903081646y4919e692p5b57c1ec80b6e551@mail.gmail.com> > This really bothers me and I'm unaware of a perl framework which attempts > to deal with web ui widgets as widgets. > Back in 1999 and 2000 I worked at a company that attempted to create just this -- the distribution was called SmartWorker, and we did it in Perl. If you google on "Smartworker Perl" you can find references to it, but I can't find out where a source distribution still lives. Perhaps Backpan would help out with this. Anyhow, it never really worked out. It was dog slow, and it was ugly. And the business model attached to it never really panned out. > My personal opinion is we are at the mercy of managers who care about > pretty > pictures and rounded corners and designers who care about the same thing. > To this I would add "And rightly they should!" The reason why managers care is because their customers and/or investors care. Users want some combination of form and function in their software. They don't care about the back-end that provides it. Cheers, - Richard -------------- next part -------------- An HTML attachment was scrubbed... URL: From abram.hindle at softwareprocess.us Sun Mar 8 17:19:25 2009 From: abram.hindle at softwareprocess.us (Abram Hindle) Date: Sun, 08 Mar 2009 20:19:25 -0400 Subject: [tpm] Perl as a career In-Reply-To: (sfid-20090308_191405_611754_75708114) References: (sfid-20090308_191405_611754_75708114) Message-ID: <49B4608D.1080804@softwareprocess.us> Antonio Sun wrote: > On Sun, Mar 8, 2009 at 5:00 PM, Abram Hindle > wrote: >> My concern these days is for all the focus of webapp frameworks to be so >> HTML/CSS/JS/ORM centric. Many of them seem to completely ignore the fact >> that >> we made UIs for years by using abstractions such as widgets. . . >> The only place I've seen/been told where the "abstract the web as a UI, >> provide >> widgets" approach has taken off has been ASP.NET. > > By widgets do you mean Buttons, Menus, Toolbar, ProgressBar, etc. and > Panels like: > > * GridPanel > * TabPanel > * TreePanel > * FormPanel > > etc, and Windows Layout Managers? > > If so, have you checked out the ExtJS that I mentioned? > http://extjs.com/products/extjs/ That's only half-way there. http://www.gwt-ext.com/demo/#gridDD look at this example, click view source. You didn't have to touch ExtJS, you didn't have touch javascript. Do you see Javascript anywhere? No because it has been abstracted away. Look at this animation, no javascript. All abstracted away. Once a widget is made it is reusable and useful. http://gwt.google.com/samples/Showcase/Showcase.html#CwAnimation What I'm saying is this style of webapp coding isn't popular in Perl or Ruby yet it makes so much sense (or I don't know about it). I can't find anything about catalyst supporting anything like this. I've seen other frameworks where you conditionally compile to whatever GUI you wanted: SWT or Web. That's true abstraction. abram -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 252 bytes Desc: OpenPGP digital signature URL: From fulko.hew at gmail.com Thu Mar 12 06:38:09 2009 From: fulko.hew at gmail.com (Fulko Hew) Date: Thu, 12 Mar 2009 09:38:09 -0400 Subject: [tpm] looking for a regex that returns true on no match Message-ID: <8204a4fe0903120638q492551aq6fbfd4d2b44447ab@mail.gmail.com> I'm looking for a regex that returns true if there is NO match. And it has to be inside the regex itself, and not via the control structure outside of it. (Whatever it is... it has to happen in between the delimiters.) I.e. Ordinarily you might do: if ($x =! /normal/) { print "not normal\n"; } else { print "normal\n"; } In psuedo code what I'm looking for would be something like: /!normal/ I tried a 'A zero-width negative look-ahead assertion' which sounded like what I wanted, but my understanding must be wrong. I tried perl -e '$_='normal'; if (/(?!normal)/) { print "not normal\n"; } else { print "normal\n";}' but that didn't work. Any ideas? or am I missing something? TIA Fulko -------------- next part -------------- An HTML attachment was scrubbed... URL: From talexb at gmail.com Thu Mar 12 06:51:17 2009 From: talexb at gmail.com (Alex Beamish) Date: Thu, 12 Mar 2009 09:51:17 -0400 Subject: [tpm] looking for a regex that returns true on no match In-Reply-To: <8204a4fe0903120638q492551aq6fbfd4d2b44447ab@mail.gmail.com> References: <8204a4fe0903120638q492551aq6fbfd4d2b44447ab@mail.gmail.com> Message-ID: Hey Fulko, Couldn't you just use the ~! on the regex instead of ~=? Alex From fulko.hew at gmail.com Thu Mar 12 07:04:12 2009 From: fulko.hew at gmail.com (Fulko Hew) Date: Thu, 12 Mar 2009 10:04:12 -0400 Subject: [tpm] looking for a regex that returns true on no match In-Reply-To: References: <8204a4fe0903120638q492551aq6fbfd4d2b44447ab@mail.gmail.com> Message-ID: <8204a4fe0903120704j4c505b8flf40a871bde2aef4f@mail.gmail.com> Alex asked: > Couldn't you just use the ~! on the regex instead of ~=? Nope, see below. On Thu, Mar 12, 2009 at 9:53 AM, Dave Doyle wrote > Is this because the regexes are being fed in from an external source? Well the data is a given set, and the regex pattern is what I'm trying to develop > Do you have control of that source? Nope Basically there is a simple regex engine somewhere else that says if (/$regex/) {print "match"; } else { print "no match"; } and I need a regex pattern that is the 'NOT the given string' pattern. So for the given the data set: 'bad', 'soso', 'maybe', and 'good' I need to be able to say... 'return true if its anything but "good"'. -------------- next part -------------- An HTML attachment was scrubbed... URL: From fulko.hew at gmail.com Thu Mar 12 07:15:17 2009 From: fulko.hew at gmail.com (Fulko Hew) Date: Thu, 12 Mar 2009 10:15:17 -0400 Subject: [tpm] looking for a regex that returns true on no match In-Reply-To: <8204a4fe0903120704j4c505b8flf40a871bde2aef4f@mail.gmail.com> References: <8204a4fe0903120638q492551aq6fbfd4d2b44447ab@mail.gmail.com> <8204a4fe0903120704j4c505b8flf40a871bde2aef4f@mail.gmail.com> Message-ID: <8204a4fe0903120715y6f060980g72c2d81664f0eb5a@mail.gmail.com> Following up on my own post. the following _does_ work: if (/^(?!normal)/) { print "not normal\n"; } else { print "normal\n"; } The important things to note are: I had to have something in front of the negative lookahead (hence the '^') but I had originally tried binding to both the front and the back, but that didn't work. To summarize: /(?!normal)/ doesn't work, probably because you can't do a lookahead without defining what to 'lookahead after' /^(?!normal)/ works (Yippee) /^(?!normal)$/ doesn't work ;-/ Here was my sample harness for testing: #!/usr/bin/perl sub xxx { $_ = shift; print "'$_' --> "; if (/^(?!normal)/) { print "not normal\n"; } else { print "normal\n"; } } xxx ("disconnected-unknown"); xxx ("disconnected-timed-out"); xxx ("disconnected-empty-response"); xxx ("disconnected-bad-gw-status"); xxx ("connected-1st-login"); xxx ("connected-nth-login"); xxx ("normal"); and the result I wanted to see: 'disconnected-unknown' --> not normal 'disconnected-timed-out' --> not normal 'disconnected-empty-response' --> not normal 'disconnected-bad-gw-status' --> not normal 'connected-1st-login' --> not normal 'connected-nth-login' --> not normal 'normal' --> normal -------------- next part -------------- An HTML attachment was scrubbed... URL: From adam.prime at utoronto.ca Thu Mar 12 07:30:24 2009 From: adam.prime at utoronto.ca (Adam Prime) Date: Thu, 12 Mar 2009 10:30:24 -0400 Subject: [tpm] looking for a regex that returns true on no match In-Reply-To: <8204a4fe0903120704j4c505b8flf40a871bde2aef4f@mail.gmail.com> References: <8204a4fe0903120638q492551aq6fbfd4d2b44447ab@mail.gmail.com> <8204a4fe0903120704j4c505b8flf40a871bde2aef4f@mail.gmail.com> Message-ID: <49B91C80.6060300@utoronto.ca> Fulko Hew wrote: > Alex asked: > > > Couldn't you just use the ~! on the regex instead of ~=? > > Nope, see below. > > On Thu, Mar 12, 2009 at 9:53 AM, Dave Doyle > wrote > > > Is this because the regexes are being fed in from an external source? > > Well the data is a given set, and the regex pattern is what I'm trying > to develop > > > Do you have control of that source? > > Nope > > Basically there is a simple regex engine somewhere else that says > > if (/$regex/) {print "match"; } else { print "no match"; } > > and I need a regex pattern that is the 'NOT the given string' pattern. > > So for the given the data set: 'bad', 'soso', 'maybe', and 'good' > I need to be able to say... 'return true if its anything but "good"'. > it's !~, not ~! ie: aprime at primepc:~$ cat haha.pl my $text = 'haha'; if ($text !~ /hat/) { print qq[yay\n]; } else { print qq[yay\n]; } aprime at primepc:~$ perl haha.pl yay also, given your example there, why wouldn't you just return true unless $_ eq 'good'; ? From fulko.hew at gmail.com Thu Mar 12 07:44:56 2009 From: fulko.hew at gmail.com (Fulko Hew) Date: Thu, 12 Mar 2009 10:44:56 -0400 Subject: [tpm] looking for a regex that returns true on no match In-Reply-To: <49B91C80.6060300@utoronto.ca> References: <8204a4fe0903120638q492551aq6fbfd4d2b44447ab@mail.gmail.com> <8204a4fe0903120704j4c505b8flf40a871bde2aef4f@mail.gmail.com> <49B91C80.6060300@utoronto.ca> Message-ID: <8204a4fe0903120744w4afb5c6ay49819a251bf6cb18@mail.gmail.com> On Thu, Mar 12, 2009 at 10:30 AM, Adam Prime wrote: > > Fulko Hew wrote: > >> Alex asked: >> >> > Couldn't you just use the ~! on the regex instead of ~=? >> > ... snip ... > it's !~, not ~! > > ie: > > aprime at primepc:~$ cat haha.pl > > my $text = 'haha'; > > if ($text !~ /hat/) { > print qq[yay\n]; > } > else { > print qq[yay\n]; > } > aprime at primepc:~$ perl haha.pl > yay > > also, given your example there, why wouldn't you just > > return true unless $_ eq 'good'; > Because I'm not allowed to rewrite the code, but simply insert a different regex pattern in between the slashes. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mike at stok.ca Thu Mar 12 08:17:18 2009 From: mike at stok.ca (Mike Stok) Date: Thu, 12 Mar 2009 11:17:18 -0400 Subject: [tpm] looking for a regex that returns true on no match In-Reply-To: <8204a4fe0903120744w4afb5c6ay49819a251bf6cb18@mail.gmail.com> References: <8204a4fe0903120638q492551aq6fbfd4d2b44447ab@mail.gmail.com> <8204a4fe0903120704j4c505b8flf40a871bde2aef4f@mail.gmail.com> <49B91C80.6060300@utoronto.ca> <8204a4fe0903120744w4afb5c6ay49819a251bf6cb18@mail.gmail.com> Message-ID: I've deleted the rest of the thread, but what about $string =~ /^(?:(?!good).)*$/ to check that $string doesn't contain good? DB<1> x 'bad' =~ /^(?:(?!good).)*$/ 0 1 DB<2> x 'good enough' =~ /^(?:(?!good).)*$/ empty array Mike On Mar 12, 2009, at 10:44 AM, Fulko Hew wrote: > > On Thu, Mar 12, 2009 at 10:30 AM, Adam Prime > wrote: > > Fulko Hew wrote: > Alex asked: > > > Couldn't you just use the ~! on the regex instead of ~=? > > ... snip ... > > > it's !~, not ~! > > ie: > > aprime at primepc:~$ cat haha.pl > > my $text = 'haha'; > > if ($text !~ /hat/) { > print qq[yay\n]; > } > else { > print qq[yay\n]; > } > aprime at primepc:~$ perl haha.pl > yay > > also, given your example there, why wouldn't you just > > return true unless $_ eq 'good'; > > > Because I'm not allowed to rewrite the code, but simply insert a > different regex pattern in between the slashes. > _______________________________________________ > toronto-pm mailing list > toronto-pm at pm.org > http://mail.pm.org/mailman/listinfo/toronto-pm -- Mike Stok http://www.stok.ca/~mike/ The "`Stok' disclaimers" apply. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mike at stok.ca Thu Mar 12 09:16:16 2009 From: mike at stok.ca (Mike Stok) Date: Thu, 12 Mar 2009 12:16:16 -0400 Subject: [tpm] looking for a regex that returns true on no match In-Reply-To: References: <8204a4fe0903120638q492551aq6fbfd4d2b44447ab@mail.gmail.com> <8204a4fe0903120704j4c505b8flf40a871bde2aef4f@mail.gmail.com> <49B91C80.6060300@utoronto.ca> <8204a4fe0903120744w4afb5c6ay49819a251bf6cb18@mail.gmail.com> Message-ID: <629B0920-5043-4362-9849-7351548A495F@stok.ca> On Mar 12, 2009, at 11:17 AM, Mike Stok wrote: > I've deleted the rest of the thread, but what about > > $string =~ /^(?:(?!good).)*$/ > > to check that $string doesn't contain good? > > DB<1> x 'bad' =~ /^(?:(?!good).)*$/ > 0 1 > DB<2> x 'good enough' =~ /^(?:(?!good).)*$/ > empty array > > Mike Note that I posted this after discovering it at http://www.kimgentes.com/worshiptech-web-tools-page/2008/12/20/regular-expressions-except-a-given-string-negative-patterns.html which ends with: *YOU ARE FREE to use this algorithm in any application (commercial or personal or whatever). It comes with no warrantees. If you DO end up using this REGEX pattern, please do so with the following considerations: make this notation in your source code: ?2008 Kim Anthony Gentes - FREE TO USE ANYWHERE. Please post a response on this blog entry below (you do that by clicking on the "Comments" link at the bottom of this entry), saying you found this and are using it. I'd just like to know if its helping people and how people are using it. When using the regex, some important things to know: Options (turned on in your language/utility): ^ and $ match at line breaks so I don't claim to have the brains to invent it or want to claim credit for it (merely the use of the appropriate Google search terms...) It is a fun exercise to work through it to see how it works... Mike > On Mar 12, 2009, at 10:44 AM, Fulko Hew wrote: > >> >> On Thu, Mar 12, 2009 at 10:30 AM, Adam Prime >> wrote: >> >> Fulko Hew wrote: >> Alex asked: >> >> > Couldn't you just use the ~! on the regex instead of ~=? >> >> ... snip ... >> >> >> it's !~, not ~! >> >> ie: >> >> aprime at primepc:~$ cat haha.pl >> >> my $text = 'haha'; >> >> if ($text !~ /hat/) { >> print qq[yay\n]; >> } >> else { >> print qq[yay\n]; >> } >> aprime at primepc:~$ perl haha.pl >> yay >> >> also, given your example there, why wouldn't you just >> >> return true unless $_ eq 'good'; >> >> >> Because I'm not allowed to rewrite the code, but simply insert a >> different regex pattern in between the slashes. >> _______________________________________________ >> toronto-pm mailing list >> toronto-pm at pm.org >> http://mail.pm.org/mailman/listinfo/toronto-pm > > -- > > Mike Stok > http://www.stok.ca/~mike/ > > The "`Stok' disclaimers" apply. > > > > > _______________________________________________ > toronto-pm mailing list > toronto-pm at pm.org > http://mail.pm.org/mailman/listinfo/toronto-pm -- Mike Stok http://www.stok.ca/~mike/ The "`Stok' disclaimers" apply. -------------- next part -------------- An HTML attachment was scrubbed... URL: From adam.prime at utoronto.ca Fri Mar 13 08:29:31 2009 From: adam.prime at utoronto.ca (Adam Prime) Date: Fri, 13 Mar 2009 11:29:31 -0400 Subject: [tpm] YAPC|10 Pricing announced Message-ID: <49BA7BDB.2010203@utoronto.ca> http://yapc10.org/yn2009/news/365 From linux at alteeve.com Sat Mar 14 20:21:18 2009 From: linux at alteeve.com (Madison Kelly) Date: Sat, 14 Mar 2009 23:21:18 -0400 Subject: [tpm] Split a string in half Message-ID: <49BC742E.3010100@alteeve.com> Hi all, I need to split a sting in half, and I can assume the the middle character in the string will be a space ' ' character. I cannot predict how many spaces will be in the string though. In short; How could I split: 'foo bar foo bar' => 'foo bar', 'foo bar' 'baz baz' => 'baz', baz' 'foo bar baz foo bar baz' => 'foo bar baz', 'foo bar baz' In Detail; I use WWW::Mechanize, and I am running into a problem with a website that uses an image and text in a single anchor. Specifically, the alt text is the same as the text, so the 'find_all_links' function returns: foo bar foo bar For: foo bar foo bar I never know what the link will be, only that the alt and text will be that same. Thanks! Madi From linux at alteeve.com Sat Mar 14 20:40:39 2009 From: linux at alteeve.com (Madison Kelly) Date: Sat, 14 Mar 2009 23:40:39 -0400 Subject: [tpm] Split a string in half In-Reply-To: <49BC742E.3010100@alteeve.com> References: <49BC742E.3010100@alteeve.com> Message-ID: <49BC78B7.7070109@alteeve.com> Madison Kelly wrote: > Hi all, > > I need to split a sting in half, and I can assume the the middle > character in the string will be a space ' ' character. I cannot predict > how many spaces will be in the string though. > > In short; How could I split: > > 'foo bar foo bar' => 'foo bar', 'foo bar' > 'baz baz' => 'baz', baz' > 'foo bar baz foo bar baz' => 'foo bar baz', 'foo bar baz' > > In Detail; > > I use WWW::Mechanize, and I am running into a problem with a website > that uses an image and text in a single anchor. Specifically, the alt > text is the same as the text, so the 'find_all_links' function returns: > > foo bar foo bar > > For: > > foo bar foo bar > > I never know what the link will be, only that the alt and text will be > that same. > > Thanks! > > Madi For the record, I can do this now, but it's ugly as sin. Surely a TPM'er will have a more elegant/efficient method. :) My ugly way (where 'say_name' is the string in question): ----------------------------------------- if (length($say_name)%2) { my $half_count=(length($say_name)-1)/2; my $half_string=""; my $i=0; foreach my $char (split//, $say_name) { $half_string.=$char; $i++; last if $i >= $half_count; } $say_name=$half_string if $say_name eq "$half_string $half_string"; } ----------------------------------------- Madi From abram.hindle at softwareprocess.us Sat Mar 14 21:07:54 2009 From: abram.hindle at softwareprocess.us (Abram Hindle) Date: Sun, 15 Mar 2009 00:07:54 -0400 Subject: [tpm] Split a string in half In-Reply-To: <49BC78B7.7070109@alteeve.com> (sfid-20090314_234205_247961_60967606) References: <49BC742E.3010100@alteeve.com> <49BC78B7.7070109@alteeve.com> (sfid-20090314_234205_247961_60967606) Message-ID: <49BC7F1A.80309@softwareprocess.us> I misread what you wrote (I read too much into the examples). I've attached my embarrassing split on space code at the bottom which just finds the split space point w/o the assumption of a middle space. abram Madison Kelly wrote: > Madison Kelly wrote: >> Hi all, >> >> I need to split a sting in half, and I can assume the the middle >> character in the string will be a space ' ' character. I cannot >> predict how many spaces will be in the string though. >> >> In short; How could I split: >> >> 'foo bar foo bar' => 'foo bar', 'foo bar' >> 'baz baz' => 'baz', baz' >> 'foo bar baz foo bar baz' => 'foo bar baz', 'foo bar baz' >> >> In Detail; >> >> I use WWW::Mechanize, and I am running into a problem with a website >> that uses an image and text in a single anchor. Specifically, the alt >> text is the same as the text, so the 'find_all_links' function returns: >> >> foo bar foo bar >> >> For: >> >> foo bar foo bar >> >> I never know what the link will be, only that the alt and text will >> be that same. >> >> Thanks! >> >> Madi > > For the record, I can do this now, but it's ugly as sin. Surely a TPM'er > will have a more elegant/efficient method. > > :) > > My ugly way (where 'say_name' is the string in question): > > ----------------------------------------- > if (length($say_name)%2) > { > my $half_count=(length($say_name)-1)/2; > my $half_string=""; > my $i=0; > foreach my $char (split//, $say_name) > { > $half_string.=$char; > $i++; > last if $i >= $half_count; > } > $say_name=$half_string if $say_name eq "$half_string $half_string"; > } > ----------------------------------------- > > Madi > _______________________________________________ > toronto-pm mailing list > toronto-pm at pm.org > http://mail.pm.org/mailman/listinfo/toronto-pm # Placed under WTFPL V2 # See copyright notice at bottom (it is NSFW) # midpointspace($str) # string -> int # -1 indicates no space found to split on # finds the position in the string of the space you might want to split on # the space found should be the middle most space # the function doesn't recognize anyother whitespce sub midpointspace { my ($str) = @_; #position to index from my $pos = 0; #our current midpoint my $mid = -1; my $i = 0; #this biases it to the front #remove int to avoid it my $best_mid = int(length($str)/2); while(-1 != ($i = index($str," ",$pos))) { my $dist = abs($best_mid - $i); my $best_dist = abs($best_mid - $mid); if ($dist < $best_dist) { $mid = $i; } $pos = $i+1; } return $mid; } sub test_midpointspace { assert(0, midpointspace(" "),"1 space"); assert(-1, midpointspace(""),"Empty"); assert(0, midpointspace(" "),"1 space"); assert(-1, midpointspace("a"),"1 char"); assert(1, midpointspace("a b"),"middle"); assert(0, midpointspace(" ab"),"start"); assert(2, midpointspace("ab "),"end"); assert(3,midpointspace("aaa b"),"aaa b"); assert(3,midpointspace("aaa bbb"),"aaa bbb"); assert(7,midpointspace("aaa bbb aaa b"),"aaa bbb aaa b"); assert(3,midpointspace("aaa bbb aaa"),"aaa bbb aaa"); } sub assert { die "$_[2] [$_[0]] [$_[1]]" unless ($_[0] == $_[1]); } test_midpointspace(); __DATA__ DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE Version 2, December 2004 Copyright (C) 2009 Abram Hindle Everyone is permitted to copy and distribute verbatim or modified copies of this license document, and changing it is allowed as long as the name is changed. DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. You just DO WHAT THE FUCK YOU WANT TO. This program is free software. It comes without any warranty, to the extent permitted by applicable law. You can redistribute it and/or modify it under the terms of the Do What The Fuck You Want To Public License, Version 2, as published by Sam Hocevar. See http://sam.zoy.org/wtfpl/COPYING for more details. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 252 bytes Desc: OpenPGP digital signature URL: From liam at holoweb.net Sat Mar 14 22:55:44 2009 From: liam at holoweb.net (Liam R E Quin) Date: Sun, 15 Mar 2009 01:55:44 -0400 Subject: [tpm] Split a string in half In-Reply-To: <49BC742E.3010100@alteeve.com> References: <49BC742E.3010100@alteeve.com> Message-ID: <1237096544.9407.236.camel@desktop.barefootcomputing.com> On Sat, 2009-03-14 at 23:21 -0400, Madison Kelly wrote: > Hi all, > > I need to split a sting in half, and I can assume the the middle > character in the string will be a space ' ' character. I cannot predict > how many spaces will be in the string though. Here is a literal implementation: sub splitstringatmiddlespace($) { my ($input) = @_; my $length = length($input); my $first = substr($input, 0, $length/2); my $rest = substr($input, ($length/2 + 1), $length/2); return ($first, $rest); } This does not check that the middle character is a space, nor that there is in fact any input. It also goes wrong half the time if the input string has an odd number of characters (violating the simplistic interpretation of the specification, but good code should handle that case). But it is an approach easier to modify to handle such cases, if needed, than the other two mothds posted so far :) Liam -- Liam Quin - XML Activity Lead, W3C, http://www.w3.org/People/Quin/ Pictures from old books: http://fromoldbooks.org/ Ankh: irc.sorcery.net irc.gnome.org www.advogato.org From liam at holoweb.net Sat Mar 14 22:55:44 2009 From: liam at holoweb.net (Liam R E Quin) Date: Sun, 15 Mar 2009 01:55:44 -0400 Subject: [tpm] Split a string in half In-Reply-To: <49BC742E.3010100@alteeve.com> References: <49BC742E.3010100@alteeve.com> Message-ID: <1237096544.9407.236.camel@desktop.barefootcomputing.com> On Sat, 2009-03-14 at 23:21 -0400, Madison Kelly wrote: > Hi all, > > I need to split a sting in half, and I can assume the the middle > character in the string will be a space ' ' character. I cannot predict > how many spaces will be in the string though. Here is a literal implementation: sub splitstringatmiddlespace($) { my ($input) = @_; my $length = length($input); my $first = substr($input, 0, $length/2); my $rest = substr($input, ($length/2 + 1), $length/2); return ($first, $rest); } This does not check that the middle character is a space, nor that there is in fact any input. It also goes wrong half the time if the input string has an odd number of characters (violating the simplistic interpretation of the specification, but good code should handle that case). But it is an approach easier to modify to handle such cases, if needed, than the other two mothds posted so far :) Liam -- Liam Quin - XML Activity Lead, W3C, http://www.w3.org/People/Quin/ Pictures from old books: http://fromoldbooks.org/ Ankh: irc.sorcery.net irc.gnome.org www.advogato.org From uri at stemsystems.com Sat Mar 14 22:58:01 2009 From: uri at stemsystems.com (Uri Guttman) Date: Sun, 15 Mar 2009 00:58:01 -0500 Subject: [tpm] Split a string in half In-Reply-To: <49BC7F1A.80309@softwareprocess.us> (Abram Hindle's message of "Sun, 15 Mar 2009 00:07:54 -0400") References: <49BC742E.3010100@alteeve.com> <49BC78B7.7070109@alteeve.com> <49BC7F1A.80309@softwareprocess.us> Message-ID: have any of you heard of substr? perldoc -f substr this should be a single statement or two at the worst. uri -- Uri Guttman ------ uri at stemsystems.com -------- http://www.sysarch.com -- ----- Perl Code Review , Architecture, Development, Training, Support ------ --------- Free Perl Training --- http://perlhunter.com/college.html --------- --------- Gourmet Hot Cocoa Mix ---- http://bestfriendscocoa.com --------- From abuzarchaudhary at yahoo.com Sun Mar 15 01:32:24 2009 From: abuzarchaudhary at yahoo.com (Abuzar Chaudhary) Date: Sun, 15 Mar 2009 01:32:24 -0700 (PDT) Subject: [tpm] Split a string in half In-Reply-To: <49BC78B7.7070109@alteeve.com> Message-ID: <305730.18268.qm@web52906.mail.re2.yahoo.com> my $s1 = substr($s, 0, int(length($s)/2)); my $s2 = substr($s, int(length($s)/2)+1); --- On Sat, 3/14/09, Madison Kelly wrote: > From: Madison Kelly > Subject: Re: [tpm] Split a string in half > To: "Toronto Perl Mongers" > Date: Saturday, March 14, 2009, 11:40 PM > Madison Kelly wrote: > > Hi all, > > > > I need to split a sting in half, and I can assume > the the middle character in the string will be a space ' > ' character. I cannot predict how many spaces will be in > the string though. > > > > In short; How could I split: > > > > 'foo bar foo bar' => 'foo bar', > 'foo bar' > > 'baz baz' => 'baz', > baz' > > 'foo bar baz foo bar baz' => 'foo bar > baz', 'foo bar baz' > > > > In Detail; > > > > I use WWW::Mechanize, and I am running into a > problem with a website that uses an image and text in a > single anchor. Specifically, the alt text is the same as the > text, so the 'find_all_links' function returns: > > > > foo bar foo bar > > > > For: > > > > src="..." alt="foo bar"> foo > bar > > > > I never know what the link will be, only that the > alt and text will be that same. > > > > Thanks! > > > > Madi > > For the record, I can do this now, but it's ugly as > sin. Surely a TPM'er will have a more elegant/efficient > method. > > :) > > My ugly way (where 'say_name' is the string in > question): > > ----------------------------------------- > if (length($say_name)%2) > { > my $half_count=(length($say_name)-1)/2; > my $half_string=""; > my $i=0; > foreach my $char (split//, $say_name) > { > $half_string.=$char; > $i++; > last if $i >= $half_count; > } > $say_name=$half_string if $say_name eq "$half_string > $half_string"; > } > ----------------------------------------- > > Madi > _______________________________________________ > toronto-pm mailing list > toronto-pm at pm.org > http://mail.pm.org/mailman/listinfo/toronto-pm From uri at stemsystems.com Sun Mar 15 08:53:50 2009 From: uri at stemsystems.com (Uri Guttman) Date: Sun, 15 Mar 2009 10:53:50 -0500 Subject: [tpm] Split a string in half In-Reply-To: <305730.18268.qm@web52906.mail.re2.yahoo.com> (Abuzar Chaudhary's message of "Sun, 15 Mar 2009 01:32:24 -0700 (PDT)") References: <305730.18268.qm@web52906.mail.re2.yahoo.com> Message-ID: >>>>> "AC" == Abuzar Chaudhary writes: AC> my $s1 = substr($s, 0, int(length($s)/2)); AC> my $s2 = substr($s, int(length($s)/2)+1); no need for the int() calls as those args to substr require integers and thus provide integer context. uri -- Uri Guttman ------ uri at stemsystems.com -------- http://www.sysarch.com -- ----- Perl Code Review , Architecture, Development, Training, Support ------ --------- Free Perl Training --- http://perlhunter.com/college.html --------- --------- Gourmet Hot Cocoa Mix ---- http://bestfriendscocoa.com --------- From talexb at gmail.com Sun Mar 15 09:03:29 2009 From: talexb at gmail.com (Alex Beamish) Date: Sun, 15 Mar 2009 12:03:29 -0400 Subject: [tpm] Split a string in half In-Reply-To: <49BC742E.3010100@alteeve.com> References: <49BC742E.3010100@alteeve.com> Message-ID: This should do what you want .. #!/usr/bin/perl -w # # Split a string on the middle, assuming that the string is a repeated group # of words like 'foo bar foo bar', 'baz baz' or 'foo bar baz foo bar baz'. use strict; use Test::More tests => 3; my %data = ( 'foo bar foo bar' => [ 'foo bar', 'foo bar' ], 'baz baz' => [ 'baz', 'baz' ], 'foo bar baz foo bar baz' => [ 'foo bar baz', 'foo bar baz' ] ); { foreach my $input ( keys %data ) { my $computedOutput = madiSplit($input); is_deeply( $computedOutput, $data{$input}, "Arrayrefs match" ); } } sub madiSplit { my ($string) = @_; # Break the entire string into individual words, and count the words. my @words = split( /\s+/, $string ); my $words = scalar @words; # Return an arrayref consisting of a string with the first n/2 words, then # a string with the remaining n/s words. return ( [ join( ' ', @words[ 0 .. ( $words / 2 ) - 1 ] ), join( ' ', @words[ ( $words / 2 ) .. $words - 1 ] ) ] ); } -- Alex Beamish Toronto, Ontario aka talexb From mike at stok.ca Sun Mar 15 10:08:18 2009 From: mike at stok.ca (Mike Stok) Date: Sun, 15 Mar 2009 13:08:18 -0400 Subject: [tpm] Split a string in half In-Reply-To: References: <49BC742E.3010100@alteeve.com> Message-ID: <2050BD19-D46E-4ECE-B712-ABD2186F238D@stok.ca> On Mar 15, 2009, at 12:03 PM, Alex Beamish wrote: > This should do what you want .. > > #!/usr/bin/perl -w > # > # Split a string on the middle, assuming that the string is a > repeated group > # of words like 'foo bar foo bar', 'baz baz' or 'foo bar baz foo > bar baz'. > > use strict; > > use Test::More tests => 3; > > my %data = ( > 'foo bar foo bar' => [ 'foo bar', 'foo bar' ], > 'baz baz' => [ 'baz', 'baz' ], > 'foo bar baz foo bar baz' => [ 'foo bar baz', 'foo bar baz' ] > ); > > { > foreach my $input ( keys %data ) { > > my $computedOutput = madiSplit($input); > is_deeply( $computedOutput, $data{$input}, "Arrayrefs match" ); > } > } > > sub madiSplit { > my ($string) = @_; > > # Break the entire string into individual words, and count the > words. > > my @words = split( /\s+/, $string ); > my $words = scalar @words; > > # Return an arrayref consisting of a string with the first n/2 > words, then > # a string with the remaining n/s words. > > return ( > [ > join( ' ', @words[ 0 .. ( $words / 2 ) - 1 ] ), > join( ' ', @words[ ( $words / 2 ) .. $words - 1 ] ) > ] > ); > } If the string is as Madi described and we're looking for '' then wouldn't this be a plug-in replacement for the madiSplit subroutine above: sub madiSplit { my ($string) = @_; return [$1, $1] if $string =~ /^(.*) \1$/; return; } If there was only one place in Madi's code where it was used then it might not even be worth turning into a subroutine as # check for duplicated alt & text $say_name = $1 if $say_name =~ /^(.*) \1$/; might be sufficiently short & clear. (Maybe the * could be a + depending on what you want to do with ' ') Mike -- Mike Stok http://www.stok.ca/~mike/ The "`Stok' disclaimers" apply. From sergio at salvi.ca Sun Mar 15 10:10:03 2009 From: sergio at salvi.ca (Sergio Salvi) Date: Sun, 15 Mar 2009 13:10:03 -0400 Subject: [tpm] Split a string in half In-Reply-To: <49BC742E.3010100@alteeve.com> References: <49BC742E.3010100@alteeve.com> Message-ID: <568473410903151010x3fad8045r5b6d39ac6ad02d5f@mail.gmail.com> On Sat, Mar 14, 2009 at 11:21 PM, Madison Kelly wrote: > Hi all, > > ?I need to split a sting in half, and I can assume the the middle character > in the string will be a space ' ' character. I cannot predict how many > spaces will be in the string though. > > ?In short; How could I split: > > 'foo bar foo bar' => 'foo bar', 'foo bar' > 'baz baz' ? ? ? ? => 'baz', baz' > 'foo bar baz foo bar baz' => 'foo bar baz', 'foo bar baz' > > ?In Detail; > > ?I use WWW::Mechanize, and I am running into a problem with a website that > uses an image and text in a single anchor. Specifically, the alt text is the > same as the text, so the 'find_all_links' function returns: > > foo bar foo bar > Hi Madi, You must be getting this string from the $link_obj->text method, isn't it? So I believe you want to extract the text of the link and not the URL (which you can easily get with $link_obj->url). WWW::Mechanize uses HTML::TokeParser to extract the text and by default HTML::TokeParser *will* include the contents of "IMG ALT" and "APPLET ALT". You'll have to pass "textify => {}" to HTML::TokeParser->new(), but the only way to do this is either send a patch to the maintainer to allow options to be passed to HTML::TokeParser or to subclass WWW::Mechanize, which is not really clean to extend because of the private %link_tags variable: ##### package WWW::Mechanize::NoAltText; use strict; use warnings; use parent "WWW::Mechanize"; my %link_tags = ( a => 'href', area => 'href', frame => 'src', iframe => 'src', link => 'href', meta => 'content', ); sub _extract_links { my $self = shift; $self->{links} = []; if ( defined $self->{content} ) { my $parser = HTML::TokeParser->new( doc => \$self->{content}, textify => {} ); while ( my $token = $parser->get_tag( keys %link_tags ) ) { my $link = $self->_link_from_token( $token, $parser ); push( @{$self->{links}}, $link ) if $link; } # while } $self->{_extracted_links} = 1; return; } 1; ##### Care to send a patch with tests to Andy Lester? Regards, Sergio Salvi > ?For: > > foo bar foo bar > > ?I never know what the link will be, only that the alt and text will be that > same. > > Thanks! > > Madi > _______________________________________________ > toronto-pm mailing list > toronto-pm at pm.org > http://mail.pm.org/mailman/listinfo/toronto-pm > From arocker at vex.net Mon Mar 16 07:02:47 2009 From: arocker at vex.net (arocker at vex.net) Date: Mon, 16 Mar 2009 10:02:47 -0400 (EDT) Subject: [tpm] Nostalgia Message-ID: As part of a little historical research project, I transcribed the attached file (from an almost unreadable photocopy of a carbon copy). It is a report on a 1962 conference about high-level languages. The odd spellings and formatting are an attempt to reproduce the original as closely as possible. If you're interested in the history of computing, you'll probably enjoy it. (The rant about industry practices is fun). If not, sorry to bother you. -------------- next part -------------- A non-text attachment was scrubbed... Name: spec_16 Type: application/octet-stream Size: 33143 bytes Desc: not available URL: From fulko.hew at gmail.com Mon Mar 16 07:57:22 2009 From: fulko.hew at gmail.com (Fulko Hew) Date: Mon, 16 Mar 2009 10:57:22 -0400 Subject: [tpm] Help... I've buggered 'cpan install' and I cant get up! Message-ID: <8204a4fe0903160757wa3bf7dcx2f9178394f3a9c74@mail.gmail.com> I needed to install the NetSNMP Perl module so I did the CPAN install... But it told me I needed to do a cpan install Bundle::CPAN first to get the new version... after a whack of packages it seemed to wedge on CPAN.pm itself. See below. So, silly me, I control C'ed it. Now its buggered , and I can't seem to install anything. as in the following: cpan install Bundle::CPAN CPAN: Storable loaded ok Going to read /root/.cpan/sources/authors/01mailrc.txt.gz CPAN: Compress::Zlib loaded ok Can't call method "value" on an undefined value at /usr/lib/perl5/vendor_perl/5.8.8/IO/Uncompress/RawInflate.pm line 64. What can I do??? TIA Fulko PS. This is what it was doing when I control C'ed it: CPAN.pm: Going to build A/AN/ANDK/CPAN-1.9304.tar.gz Importing PAUSE public key into your GnuPG keychain... done! (You may wish to trust it locally with 'gpg --lsign-key 450F89EC') Checking if your kit is complete... Looks good Writing Makefile for CPAN cp lib/CPAN.pm blib/lib/CPAN.pm cp lib/CPAN/Admin.pm blib/lib/CPAN/Admin.pm cp lib/CPAN/Tarzip.pm blib/lib/CPAN/Tarzip.pm cp lib/CPAN/Debug.pm blib/lib/CPAN/Debug.pm cp lib/CPAN/HandleConfig.pm blib/lib/CPAN/HandleConfig.pm cp lib/CPAN/Queue.pm blib/lib/CPAN/Queue.pm cp lib/CPAN/Distroprefs.pm blib/lib/CPAN/Distroprefs.pm cp lib/CPAN/Kwalify/distroprefs.yml blib/lib/CPAN/Kwalify/distroprefs.yml cp lib/CPAN/Version.pm blib/lib/CPAN/Version.pm cp lib/CPAN/Kwalify.pm blib/lib/CPAN/Kwalify.pm cp lib/CPAN/DeferedCode.pm blib/lib/CPAN/DeferedCode.pm cp lib/CPAN/API/HOWTO.pod blib/lib/CPAN/API/HOWTO.pod cp lib/CPAN/Kwalify/distroprefs.dd blib/lib/CPAN/Kwalify/distroprefs.dd cp lib/CPAN/Nox.pm blib/lib/CPAN/Nox.pm cp lib/CPAN/FirstTime.pm blib/lib/CPAN/FirstTime.pm cp scripts/cpan blib/script/cpan /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/cpan Manifying blib/man1/cpan.1 Manifying blib/man3/CPAN.3pm Manifying blib/man3/CPAN::Tarzip.3pm Manifying blib/man3/CPAN::Admin.3pm Manifying blib/man3/CPAN::Debug.3pm Manifying blib/man3/CPAN::HandleConfig.3pm Manifying blib/man3/CPAN::Queue.3pm Manifying blib/man3/CPAN::Distroprefs.3pm Manifying blib/man3/CPAN::Version.3pm Manifying blib/man3/CPAN::Kwalify.3pm Manifying blib/man3/CPAN::API::HOWTO.3pm Manifying blib/man3/CPAN::Nox.3pm Manifying blib/man3/CPAN::FirstTime.3pm /usr/bin/make -- OK Running make test PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/00signature.t ..... WARNING: This key is not certified with a trusted signature! Primary key fingerprint: 50A0 ED26 8AA2 95BD 2CA0 411E EC80 39F0 A317 C15D t/00signature.t ..... ok t/01loadme.t ........ ok t/02nox.t ........... ok t/03pkgs.t .......... ok t/10version.t ....... ok t/11mirroredby.t .... ok t/12cpan.t .......... 1/25 Can't call method "value" on an undefined value at /usr/lib/perl5/vendor_perl/5.8.8/IO/Uncompress/RawInflate.pm line 64. # Looks like you planned 25 tests but ran 1. # Looks like your test exited with 25 just after 1. t/12cpan.t .......... Dubious, test returned 25 (wstat 6400, 0x1900) Failed 24/25 subtests t/13tarzip.t ........ Can't call method "value" on an undefined value at /usr/lib/perl5/vendor_perl/5.8.8/IO/Uncompress/RawInflate.pm line 64. # Looks like your test exited with 25 before it could output anything. t/13tarzip.t ........ Dubious, test returned 25 (wstat 6400, 0x1900) Failed 1/1 subtests t/14forkbomb.t ...... skipped: test only run when called with --doit t/30shell.t ......... 140/239 ^Cmake: *** [test_dynamic] Interrupt /usr/bin/make test -- NOT OK Running make install make test had returned bad status, won't install without force File::Which is up to date. Bundle summary: The following items in bundle Bundle::CPAN had installation problems: IO::Uncompress::Gunzip Compress::Zlib IO::Zlib Archive::Tar CPAN Running install for module Compress::Zlib Running make for P/PM/PMQS/Compress-Zlib-2.015.tar.gz Is already unwrapped into directory /root/.cpan/build/Compress-Zlib-2.015 -------------- next part -------------- An HTML attachment was scrubbed... URL: From rdice at pobox.com Mon Mar 16 08:05:43 2009 From: rdice at pobox.com (Richard Dice) Date: Mon, 16 Mar 2009 11:05:43 -0400 Subject: [tpm] Help... I've buggered 'cpan install' and I cant get up! In-Reply-To: <8204a4fe0903160757wa3bf7dcx2f9178394f3a9c74@mail.gmail.com> References: <8204a4fe0903160757wa3bf7dcx2f9178394f3a9c74@mail.gmail.com> Message-ID: <5bef4baf0903160805r7609842va97105732d3224ea@mail.gmail.com> My first, and perhaps naive thought: why not just go through and manually install each module that your newly-corrupted CPAN bitches about? That is, do things the bad old way, with: * * perl Makefile.PL * make * make test * sudo make install On Mon, Mar 16, 2009 at 10:57 AM, Fulko Hew wrote: > I needed to install the NetSNMP Perl module > so I did the CPAN install... > > But it told me I needed to do a cpan install Bundle::CPAN > first to get the new version... after a whack of packages > it seemed to wedge on CPAN.pm itself. See below. > > So, silly me, I control C'ed it. > > Now its buggered , and I can't seem to install anything. > as in the following: > > cpan install Bundle::CPAN > CPAN: Storable loaded ok > Going to read /root/.cpan/sources/authors/01mailrc.txt.gz > CPAN: Compress::Zlib loaded ok > Can't call method "value" on an undefined value at > /usr/lib/perl5/vendor_perl/5.8.8/IO/Uncompress/RawInflate.pm line 64. > > > > What can I do??? > > TIA > Fulko > > PS. This is what it was doing when I control C'ed it: > > > CPAN.pm: Going to build A/AN/ANDK/CPAN-1.9304.tar.gz > > Importing PAUSE public key into your GnuPG keychain... done! > (You may wish to trust it locally with 'gpg --lsign-key 450F89EC') > Checking if your kit is complete... > Looks good > Writing Makefile for CPAN > cp lib/CPAN.pm blib/lib/CPAN.pm > cp lib/CPAN/Admin.pm blib/lib/CPAN/Admin.pm > cp lib/CPAN/Tarzip.pm blib/lib/CPAN/Tarzip.pm > cp lib/CPAN/Debug.pm blib/lib/CPAN/Debug.pm > cp lib/CPAN/HandleConfig.pm blib/lib/CPAN/HandleConfig.pm > cp lib/CPAN/Queue.pm blib/lib/CPAN/Queue.pm > cp lib/CPAN/Distroprefs.pm blib/lib/CPAN/Distroprefs.pm > cp lib/CPAN/Kwalify/distroprefs.yml blib/lib/CPAN/Kwalify/distroprefs.yml > cp lib/CPAN/Version.pm blib/lib/CPAN/Version.pm > cp lib/CPAN/Kwalify.pm blib/lib/CPAN/Kwalify.pm > cp lib/CPAN/DeferedCode.pm blib/lib/CPAN/DeferedCode.pm > cp lib/CPAN/API/HOWTO.pod blib/lib/CPAN/API/HOWTO.pod > cp lib/CPAN/Kwalify/distroprefs.dd blib/lib/CPAN/Kwalify/distroprefs.dd > cp lib/CPAN/Nox.pm blib/lib/CPAN/Nox.pm > cp lib/CPAN/FirstTime.pm blib/lib/CPAN/FirstTime.pm > cp scripts/cpan blib/script/cpan > /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/cpan > Manifying blib/man1/cpan.1 > Manifying blib/man3/CPAN.3pm > Manifying blib/man3/CPAN::Tarzip.3pm > Manifying blib/man3/CPAN::Admin.3pm > Manifying blib/man3/CPAN::Debug.3pm > Manifying blib/man3/CPAN::HandleConfig.3pm > Manifying blib/man3/CPAN::Queue.3pm > Manifying blib/man3/CPAN::Distroprefs.3pm > Manifying blib/man3/CPAN::Version.3pm > Manifying blib/man3/CPAN::Kwalify.3pm > Manifying blib/man3/CPAN::API::HOWTO.3pm > Manifying blib/man3/CPAN::Nox.3pm > Manifying blib/man3/CPAN::FirstTime.3pm > /usr/bin/make -- OK > Running make test > PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" > "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t > t/00signature.t ..... WARNING: This key is not certified with a trusted > signature! > Primary key fingerprint: 50A0 ED26 8AA2 95BD 2CA0 411E EC80 39F0 A317 C15D > t/00signature.t ..... ok > t/01loadme.t ........ ok > t/02nox.t ........... ok > t/03pkgs.t .......... ok > t/10version.t ....... ok > t/11mirroredby.t .... ok > t/12cpan.t .......... 1/25 Can't call method "value" on an undefined value > at /usr/lib/perl5/vendor_perl/5.8.8/IO/Uncompress/RawInflate.pm line 64. > # Looks like you planned 25 tests but ran 1. > # Looks like your test exited with 25 just after 1. > t/12cpan.t .......... Dubious, test returned 25 (wstat 6400, 0x1900) > Failed 24/25 subtests > t/13tarzip.t ........ Can't call method "value" on an undefined value at > /usr/lib/perl5/vendor_perl/5.8.8/IO/Uncompress/RawInflate.pm line 64. > # Looks like your test exited with 25 before it could output anything. > t/13tarzip.t ........ Dubious, test returned 25 (wstat 6400, 0x1900) > Failed 1/1 subtests > t/14forkbomb.t ...... skipped: test only run when called with --doit > t/30shell.t ......... 140/239 ^Cmake: *** [test_dynamic] Interrupt > /usr/bin/make test -- NOT OK > Running make install > make test had returned bad status, won't install without force > File::Which is up to date. > Bundle summary: The following items in bundle Bundle::CPAN had installation > problems: > IO::Uncompress::Gunzip Compress::Zlib IO::Zlib Archive::Tar CPAN > Running install for module Compress::Zlib > Running make for P/PM/PMQS/Compress-Zlib-2.015.tar.gz > Is already unwrapped into directory /root/.cpan/build/Compress-Zlib-2.015 > > > _______________________________________________ > toronto-pm mailing list > toronto-pm at pm.org > http://mail.pm.org/mailman/listinfo/toronto-pm > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From fulko.hew at gmail.com Mon Mar 16 11:10:30 2009 From: fulko.hew at gmail.com (Fulko Hew) Date: Mon, 16 Mar 2009 14:10:30 -0400 Subject: [tpm] Help... I've buggered 'cpan install' and I cant get up! In-Reply-To: <5bef4baf0903160805r7609842va97105732d3224ea@mail.gmail.com> References: <8204a4fe0903160757wa3bf7dcx2f9178394f3a9c74@mail.gmail.com> <5bef4baf0903160805r7609842va97105732d3224ea@mail.gmail.com> Message-ID: <8204a4fe0903161110p17657217n9d6ca006c1d7c564@mail.gmail.com> On Mon, Mar 16, 2009 at 11:05 AM, Richard Dice wrote: > My first, and perhaps naive thought: why not just go through and manually > install each module that your newly-corrupted CPAN bitches about? That is, > do things the bad old way, with: > > * > * perl Makefile.PL > * make > * make test > * sudo make install Yup. I've got it fixed. (but now I have to do a 'cpan -i xxx' rather than 'cpan install xxx') The hard part was trying to figure out what I needed to re-install. It turns out it was only one module, but it was dependant on another which was dependant... Anyway, it was only three in total. Thanks. On Mon, Mar 16, 2009 at 10:57 AM, Fulko Hew wrote: > >> I needed to install the NetSNMP Perl module >> so I did the CPAN install... >> >> But it told me I needed to do a cpan install Bundle::CPAN >> first to get the new version... after a whack of packages >> it seemed to wedge on CPAN.pm itself. See below. >> >> So, silly me, I control C'ed it. >> >> Now its buggered , and I can't seem to install anything. >> as in the following: >> >> cpan install Bundle::CPAN >> CPAN: Storable loaded ok >> Going to read /root/.cpan/sources/authors/01mailrc.txt.gz >> CPAN: Compress::Zlib loaded ok >> Can't call method "value" on an undefined value at >> /usr/lib/perl5/vendor_perl/5.8.8/IO/Uncompress/RawInflate.pm line 64. >> >> >> >> What can I do??? >> >> TIA >> Fulko >> >> PS. This is what it was doing when I control C'ed it: >> >> >> CPAN.pm: Going to build A/AN/ANDK/CPAN-1.9304.tar.gz >> >> Importing PAUSE public key into your GnuPG keychain... done! >> (You may wish to trust it locally with 'gpg --lsign-key 450F89EC') >> Checking if your kit is complete... >> Looks good >> Writing Makefile for CPAN >> cp lib/CPAN.pm blib/lib/CPAN.pm >> cp lib/CPAN/Admin.pm blib/lib/CPAN/Admin.pm >> cp lib/CPAN/Tarzip.pm blib/lib/CPAN/Tarzip.pm >> cp lib/CPAN/Debug.pm blib/lib/CPAN/Debug.pm >> cp lib/CPAN/HandleConfig.pm blib/lib/CPAN/HandleConfig.pm >> cp lib/CPAN/Queue.pm blib/lib/CPAN/Queue.pm >> cp lib/CPAN/Distroprefs.pm blib/lib/CPAN/Distroprefs.pm >> cp lib/CPAN/Kwalify/distroprefs.yml blib/lib/CPAN/Kwalify/distroprefs.yml >> cp lib/CPAN/Version.pm blib/lib/CPAN/Version.pm >> cp lib/CPAN/Kwalify.pm blib/lib/CPAN/Kwalify.pm >> cp lib/CPAN/DeferedCode.pm blib/lib/CPAN/DeferedCode.pm >> cp lib/CPAN/API/HOWTO.pod blib/lib/CPAN/API/HOWTO.pod >> cp lib/CPAN/Kwalify/distroprefs.dd blib/lib/CPAN/Kwalify/distroprefs.dd >> cp lib/CPAN/Nox.pm blib/lib/CPAN/Nox.pm >> cp lib/CPAN/FirstTime.pm blib/lib/CPAN/FirstTime.pm >> cp scripts/cpan blib/script/cpan >> /usr/bin/perl "-MExtUtils::MY" -e "MY->fixin(shift)" blib/script/cpan >> Manifying blib/man1/cpan.1 >> Manifying blib/man3/CPAN.3pm >> Manifying blib/man3/CPAN::Tarzip.3pm >> Manifying blib/man3/CPAN::Admin.3pm >> Manifying blib/man3/CPAN::Debug.3pm >> Manifying blib/man3/CPAN::HandleConfig.3pm >> Manifying blib/man3/CPAN::Queue.3pm >> Manifying blib/man3/CPAN::Distroprefs.3pm >> Manifying blib/man3/CPAN::Version.3pm >> Manifying blib/man3/CPAN::Kwalify.3pm >> Manifying blib/man3/CPAN::API::HOWTO.3pm >> Manifying blib/man3/CPAN::Nox.3pm >> Manifying blib/man3/CPAN::FirstTime.3pm >> /usr/bin/make -- OK >> Running make test >> PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" >> "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t >> t/00signature.t ..... WARNING: This key is not certified with a trusted >> signature! >> Primary key fingerprint: 50A0 ED26 8AA2 95BD 2CA0 411E EC80 39F0 A317 >> C15D >> t/00signature.t ..... ok >> t/01loadme.t ........ ok >> t/02nox.t ........... ok >> t/03pkgs.t .......... ok >> t/10version.t ....... ok >> t/11mirroredby.t .... ok >> t/12cpan.t .......... 1/25 Can't call method "value" on an undefined value >> at /usr/lib/perl5/vendor_perl/5.8.8/IO/Uncompress/RawInflate.pm line 64. >> # Looks like you planned 25 tests but ran 1. >> # Looks like your test exited with 25 just after 1. >> t/12cpan.t .......... Dubious, test returned 25 (wstat 6400, 0x1900) >> Failed 24/25 subtests >> t/13tarzip.t ........ Can't call method "value" on an undefined value at >> /usr/lib/perl5/vendor_perl/5.8.8/IO/Uncompress/RawInflate.pm line 64. >> # Looks like your test exited with 25 before it could output anything. >> t/13tarzip.t ........ Dubious, test returned 25 (wstat 6400, 0x1900) >> Failed 1/1 subtests >> t/14forkbomb.t ...... skipped: test only run when called with --doit >> t/30shell.t ......... 140/239 ^Cmake: *** [test_dynamic] Interrupt >> /usr/bin/make test -- NOT OK >> Running make install >> make test had returned bad status, won't install without force >> File::Which is up to date. >> Bundle summary: The following items in bundle Bundle::CPAN had >> installation >> problems: >> IO::Uncompress::Gunzip Compress::Zlib IO::Zlib Archive::Tar CPAN >> Running install for module Compress::Zlib >> Running make for P/PM/PMQS/Compress-Zlib-2.015.tar.gz >> Is already unwrapped into directory >> /root/.cpan/build/Compress-Zlib-2.015 >> >> >> _______________________________________________ >> toronto-pm mailing list >> toronto-pm at pm.org >> http://mail.pm.org/mailman/listinfo/toronto-pm >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From xdaveg at gmail.com Mon Mar 16 12:05:58 2009 From: xdaveg at gmail.com (David Golden) Date: Mon, 16 Mar 2009 15:05:58 -0400 Subject: [tpm] Help... I've buggered 'cpan install' and I cant get up! In-Reply-To: <8204a4fe0903161110p17657217n9d6ca006c1d7c564@mail.gmail.com> References: <8204a4fe0903160757wa3bf7dcx2f9178394f3a9c74@mail.gmail.com> <5bef4baf0903160805r7609842va97105732d3224ea@mail.gmail.com> <8204a4fe0903161110p17657217n9d6ca006c1d7c564@mail.gmail.com> Message-ID: <5d4beb40903161205y69f5eec7t30d8860e0f74b159@mail.gmail.com> On Mon, Mar 16, 2009 at 2:10 PM, Fulko Hew wrote: > Yup.? I've got it fixed. (but now I have to do a? 'cpan -i xxx' rather than > 'cpan install xxx') >From the command line, you can just do "cpan XXX". "cpan install XXX" used to try to install "install.pm" as well as "XXX' -- I think there might finally be an explicit workaround, but I'm not sure. -- David From fulko.hew at gmail.com Mon Mar 16 12:09:02 2009 From: fulko.hew at gmail.com (Fulko Hew) Date: Mon, 16 Mar 2009 15:09:02 -0400 Subject: [tpm] Help... I've buggered 'cpan install' and I cant get up! In-Reply-To: <5d4beb40903161205y69f5eec7t30d8860e0f74b159@mail.gmail.com> References: <8204a4fe0903160757wa3bf7dcx2f9178394f3a9c74@mail.gmail.com> <5bef4baf0903160805r7609842va97105732d3224ea@mail.gmail.com> <8204a4fe0903161110p17657217n9d6ca006c1d7c564@mail.gmail.com> <5d4beb40903161205y69f5eec7t30d8860e0f74b159@mail.gmail.com> Message-ID: <8204a4fe0903161209h86bb13l1f72ce8177ec09f5@mail.gmail.com> On Mon, Mar 16, 2009 at 3:05 PM, David Golden wrote: > On Mon, Mar 16, 2009 at 2:10 PM, Fulko Hew wrote: > > Yup. I've got it fixed. (but now I have to do a 'cpan -i xxx' rather > than > > 'cpan install xxx') > > From the command line, you can just do "cpan XXX". > > "cpan install XXX" used to try to install "install.pm" as well as > "XXX' -- I think there might finally be an explicit workaround, but > I'm not sure. > Thats OK. I just have to 're-adjust my thinking'. :-) -------------- next part -------------- An HTML attachment was scrubbed... URL: From Martin at Cleaver.org Mon Mar 16 12:37:43 2009 From: Martin at Cleaver.org (Martin at Cleaver.org) Date: Mon, 16 Mar 2009 15:37:43 -0400 Subject: [tpm] Help... I've buggered 'cpan install' and I cant get up! In-Reply-To: <8204a4fe0903161209h86bb13l1f72ce8177ec09f5@mail.gmail.com> References: <8204a4fe0903160757wa3bf7dcx2f9178394f3a9c74@mail.gmail.com> <5bef4baf0903160805r7609842va97105732d3224ea@mail.gmail.com> <8204a4fe0903161110p17657217n9d6ca006c1d7c564@mail.gmail.com> <5d4beb40903161205y69f5eec7t30d8860e0f74b159@mail.gmail.com> <8204a4fe0903161209h86bb13l1f72ce8177ec09f5@mail.gmail.com> Message-ID: If you type: $ cpan by itself, to install a module you then need to type at the cpan prompt "install X" cpan> install X But typing: $ cpan install X first tries to find module 'install' then module 'X'. This is counterintuitive, especially as module X is some weird JUNOSCRIPT module with lots of dependencies. http://blog.unixwiz.net/2005/09/dumb_software_c.html While CPAN was one of the earlier tools, the many other tools (yum, apt-get) take "install X" to be something sensible. As the poster of the unixwiz points out, "install" should be explicitly ignored by cpan. M. -- Martin at Cleaver.org http://twitter.com/mrjcleaver +1 416-786-6752 (GMT-5) On Mon, Mar 16, 2009 at 3:09 PM, Fulko Hew wrote: > > On Mon, Mar 16, 2009 at 3:05 PM, David Golden wrote: > >> On Mon, Mar 16, 2009 at 2:10 PM, Fulko Hew wrote: >> > Yup. I've got it fixed. (but now I have to do a 'cpan -i xxx' rather >> than >> > 'cpan install xxx') >> >> From the command line, you can just do "cpan XXX". >> >> "cpan install XXX" used to try to install "install.pm" as well as >> "XXX' -- I think there might finally be an explicit workaround, but >> I'm not sure. >> > > Thats OK. I just have to 're-adjust my thinking'. :-) > > _______________________________________________ > toronto-pm mailing list > toronto-pm at pm.org > http://mail.pm.org/mailman/listinfo/toronto-pm > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From abram.hindle at softwareprocess.us Mon Mar 16 12:55:55 2009 From: abram.hindle at softwareprocess.us (Abram Hindle) Date: Mon, 16 Mar 2009 15:55:55 -0400 (EDT) Subject: [tpm] Help... I've buggered 'cpan install' and I cant get up! In-Reply-To: (sfid-20090316_154205_268115_CABFF837) References: <8204a4fe0903160757wa3bf7dcx2f9178394f3a9c74@mail.gmail.com> <5bef4baf0903160805r7609842va97105732d3224ea@mail.gmail.com> <8204a4fe0903161110p17657217n9d6ca006c1d7c564@mail.gmail.com> <5d4beb40903161205y69f5eec7t30d8860e0f74b159@mail.gmail.com> <8204a4fe0903161209h86bb13l1f72ce8177ec09f5@mail.gmail.com> (sfid-20090316_154205_268115_CABFF837) Message-ID: On Mon, 16 Mar 2009, Martin at Cleaver.org wrote: > While CPAN was one of the earlier tools, the many other tools (yum, apt-get) > take "install X" to be something sensible. Yet other cpan-like tools like chicken-setup which downloads EGGs for chicken scheme (cute I know) takes no install argument. Assumptions on the commandline are pretty dangerous :( abram From magog at the-wire.com Mon Mar 16 22:03:17 2009 From: magog at the-wire.com (Michael Graham) Date: Tue, 17 Mar 2009 01:03:17 -0400 Subject: [tpm] Next Meeting Thursday 26 Mar - Two talks: Harbinger and Lispy Perl Message-ID: <20090317010317.049d6366@caliope> (These details are also on the TPM web site: http://to.pm.org/) The next meeting is Thursday, 26 March. Date: Thursday 26 Mar 2009 Time: 6:45pm Speaker: Abram Hindle Topic #1: Harbinger: Making your desktop sing with the help of Perl Topic #2: Lispy Perl Cost: Free! Where: 2 Bloor Street West (NW corner of Yonge/Bloor, skyscraper with the CIBC logo on top) Classroom TBA Description: =================================================================== Talk 1: **** Harbinger: Making your desktop sing with the help of Perl We use a variety of user interfaces during our day to day lives, but what if software you were familiar with suddenly started to sing? Imagine stealing events from your spreadsheets, your simulations, your office tools, your editors, even your video-games. Could these events make music? Could the delay and reload of a Quake 3 shotgun come out as gong sound? Could the machine gun in Quake3 be converted into an piano roll? Could the frantic scratching of the eraser in GIMP produce beats or the shudder of crystal? With Perl, C, your favorite sound generator/player and your exciting or mundane everyday software, you too can turn your office or desktop environment into a noisemaker. We present to you Harbinger, a Perl based musical event middle man. Harbinger is built to massage events streamed from other applications into musical events for software such CSound, Pure-Data or hardware attached to your midi ports! Talk 2: **** Lispy Perl Ever thought of making another language? Ever thought of compiling that language down to Perl? Do you like s-expressions? Do you like lisp or scheme? Did you ever want to program in Perl in with a different syntax altogether, yet still integrate with Perl? In this presentation Abram will demonstrate how to abuse Perl's SourceFilter such that you can make it parse a whole new language, generate and compile that code and language down to Perl Code and execute it. Why not? Perl has closures, Perl has a garbage collector, it might have an attitude problem but throw in a couple of parentheses and you've got yourself a flexible alternative syntax in which to express ideas. Even better, if it compiles down to Perl, you can interact with Perl directly. We'll deal with design issues, little quirks of Perl and abuses which make developing a language in Perl easier. Note: The elevators in the building are "locked down" after 5:30pm to people without building access cards. Leading up to the meeting someone will come down to the main floor lobby every few minutes to ferry people upstairs. After 19:00, you can reach the access-card-carrying guy via a cell phone number that we'll leave with security in the front lobby. The room and floor numbers will be left with security too. -- Michael Graham _______________________________________________ toronto-pm mailing list toronto-pm at pm.org http://mail.pm.org/mailman/listinfo/toronto-pm -- From jbl at jbldata.com Tue Mar 17 07:57:05 2009 From: jbl at jbldata.com (J. Bobby Lopez) Date: Tue, 17 Mar 2009 10:57:05 -0400 Subject: [tpm] Intentional Programming Message-ID: http://www.youtube.com/watch?v=34BLD_Hxnrg&feature=related http://www.youtube.com/watch?v=A9Jxj4igU6k&feature=related http://www.youtube.com/watch?v=tSnnfUj1XCQ -- J. Bobby Lopez Web: http://jbldata.com/ Twitter: http://www.twitter.com/jbobbylopez -------------- next part -------------- An HTML attachment was scrubbed... URL: From arocker at vex.net Thu Mar 19 08:33:34 2009 From: arocker at vex.net (arocker at vex.net) Date: Thu, 19 Mar 2009 11:33:34 -0400 (EDT) Subject: [tpm] Cloud computing as a topic? Message-ID: <22fc0f90e827278563e4ffaf63afd98b.squirrel@webmail.vex.net> Would SUN's new "cloud computing" concept be of interest as a meeting topic? I can see a place for Perl in the controlling infrastructure. From abram.hindle at softwareprocess.us Thu Mar 19 08:39:18 2009 From: abram.hindle at softwareprocess.us (Abram Hindle) Date: Thu, 19 Mar 2009 11:39:18 -0400 (EDT) Subject: [tpm] Cloud computing as a topic? In-Reply-To: <22fc0f90e827278563e4ffaf63afd98b.squirrel@webmail.vex.net> (sfid-20090319_113506_927267_C02CF4E2) References: <22fc0f90e827278563e4ffaf63afd98b.squirrel@webmail.vex.net> (sfid-20090319_113506_927267_C02CF4E2) Message-ID: Sounds great to me. I would hope though that someone presenting such a topic would bring the cloud down to earth a little ;) [1]. abram 1. Too often vendors lack concrete details and definition what they mean by cloud computing. On Thu, 19 Mar 2009, arocker at vex.net wrote: > > Would SUN's new "cloud computing" concept be of interest as a meeting > topic? I can see a place for Perl in the controlling infrastructure. > > _______________________________________________ > toronto-pm mailing list > toronto-pm at pm.org > http://mail.pm.org/mailman/listinfo/toronto-pm > From rdice at pobox.com Thu Mar 19 08:55:37 2009 From: rdice at pobox.com (Richard Dice) Date: Thu, 19 Mar 2009 11:55:37 -0400 Subject: [tpm] Cloud computing as a topic? In-Reply-To: References: <22fc0f90e827278563e4ffaf63afd98b.squirrel@webmail.vex.net> Message-ID: <5bef4baf0903190855w51ee9705id515d1b79b6a9642@mail.gmail.com> I'm very curious about how one could use the AWS (Amazon Web Services) EC2 (Elastic Cloud 2) pay-per-use cluster with a Perl focus. Cheers, - Richard On Thu, Mar 19, 2009 at 11:39 AM, Abram Hindle < abram.hindle at softwareprocess.us> wrote: > > Sounds great to me. I would hope though that someone presenting such a > topic > would bring the cloud down to earth a little ;) [1]. > > abram > > 1. Too often vendors lack concrete details and definition what they mean by > cloud computing. > > > On Thu, 19 Mar 2009, arocker at vex.net wrote: > > >> Would SUN's new "cloud computing" concept be of interest as a meeting >> topic? I can see a place for Perl in the controlling infrastructure. >> >> _______________________________________________ >> toronto-pm mailing list >> toronto-pm at pm.org >> http://mail.pm.org/mailman/listinfo/toronto-pm >> >> _______________________________________________ > toronto-pm mailing list > toronto-pm at pm.org > http://mail.pm.org/mailman/listinfo/toronto-pm > -------------- next part -------------- An HTML attachment was scrubbed... URL: From psema4 at gmail.com Thu Mar 19 09:18:19 2009 From: psema4 at gmail.com (Scott Elcomb) Date: Thu, 19 Mar 2009 12:18:19 -0400 Subject: [tpm] Cloud computing as a topic? In-Reply-To: <22fc0f90e827278563e4ffaf63afd98b.squirrel@webmail.vex.net> References: <22fc0f90e827278563e4ffaf63afd98b.squirrel@webmail.vex.net> Message-ID: <99a6c38f0903190918o1d8539cfqab581afcc52fb629@mail.gmail.com> On Thu, Mar 19, 2009 at 11:33 AM, wrote: > > Would SUN's new "cloud computing" concept be of interest as a meeting > topic? I can see a place for Perl in the controlling infrastructure. I am interested in learning more about it. I'm not actually a fan of cloud computing. Self-contained environments are much more to my liking, however over the next year or so I'll be working on something akin to Google's App-Engine (in Perl, for Perl developers - App-Engine is Python based IIRC). There is a project on Google Code called 'cloud-perl' ( http://code.google.com/p/cloud-perl/ ) and another for 'perl-appengine' ( http://code.google.com/p/perl-appengine/ ) however the activity levels for both projects seem rather low. Anyway thanks for suggesting the topic. =) - Scott. -- Scott Elcomb http://www.psema4.com/ From indy at indigostar.com Mon Mar 23 06:49:24 2009 From: indy at indigostar.com (Indy Singh) Date: Mon, 23 Mar 2009 09:49:24 -0400 Subject: [tpm] Where to store file attachemnts References: <22fc0f90e827278563e4ffaf63afd98b.squirrel@webmail.vex.net> <99a6c38f0903190918o1d8539cfqab581afcc52fb629@mail.gmail.com> Message-ID: Hi all, I am working on a forum-like web application that needs to allow users to upload and download file attachments. The application uses Apache MySql and Perl. A user would view a topic as a web page, similar to a Perlmonks node. There would be links on the web page to any attachments. The ability to view a given attachment should be limited to the user who owns it and the administrators. Although the server is Apache, I want to have minimal reliance on Apache specific features like URL rewriting, etc. The design question I am wondering about is where to store the file attachments. The options that I can think of are: 1) Store the files in a folder below the apache htdocs directory. The links would then be URLS to the actual files. When the user clicks on a link, the Apache server and web browser would deal with downloading or viewing of the file. This is a simple implementation, the biggest disadvantage is that there is no security on the file attachment. I suppose that you could add an effective password to the file by effectively encoding the password as part of the URL. 2) Store the files as mysql records. The CGI application would handle all the fetching and output of the file data as well as checking permissions. It would also have to deal with sending the appropriate CGI headers. This would make the database a lot larger and slow down backup and restore. It would also make it slower to make a snapshot and copy of the database for downloading to a test/development machine. 3) Store the files in a data directory in the cgi-bin directory. The CGI application would handle all the fetching and output of the file data as well as checking permissions. It would also have to deal with sending the appropriate CGI headers. This would not affect the size of the database. Any comments or suggestions would be welcome. Indy Singh IndigoSTAR Software -- www.indigostar.com From linux at alteeve.com Mon Mar 23 10:58:17 2009 From: linux at alteeve.com (Madison Kelly) Date: Mon, 23 Mar 2009 13:58:17 -0400 Subject: [tpm] Split a string in half In-Reply-To: <305730.18268.qm@web52906.mail.re2.yahoo.com> References: <305730.18268.qm@web52906.mail.re2.yahoo.com> Message-ID: <49C7CDB9.905@alteeve.com> Abuzar Chaudhary wrote: > my $s1 = substr($s, 0, int(length($s)/2)); > my $s2 = substr($s, int(length($s)/2)+1); It doesn't get any cleaner than that! Thanks Abuzar! Madi From linux at alteeve.com Mon Mar 23 10:57:43 2009 From: linux at alteeve.com (Madison Kelly) Date: Mon, 23 Mar 2009 13:57:43 -0400 Subject: [tpm] Split a string in half In-Reply-To: References: <49BC742E.3010100@alteeve.com> <49BC78B7.7070109@alteeve.com> <49BC7F1A.80309@softwareprocess.us> Message-ID: <49C7CD97.6090709@alteeve.com> Uri Guttman wrote: > have any of you heard of substr? > > perldoc -f substr > > this should be a single statement or two at the worst. > > uri > Substring. *GAH* Why didn't I think of that. :P Thanks! Madi From indy at indigostar.com Mon Mar 23 12:32:42 2009 From: indy at indigostar.com (Indy Singh) Date: Mon, 23 Mar 2009 15:32:42 -0400 Subject: [tpm] Where to store file attachments References: <8204a4fe0903160757wa3bf7dcx2f9178394f3a9c74@mail.gmail.com><5bef4baf0903160805r7609842va97105732d3224ea@mail.gmail.com> <8204a4fe0903161110p17657217n9d6ca006c1d7c564@mail.gmail.com> Message-ID: <367922E5FB5E4E2AA66F59FD71B1568B@ROADKILL> Hi all, I am working on a forum-like web application that needs to allow users to upload and download file attachments. The application uses Apache MySql and Perl. A user would view a topic as a web page, similar to a Perlmonks node. There would be links on the web page to any attachments. The ability to view a given attachment should be limited to the user who owns it and the administrators. Although the server is Apache, I want to have minimal reliance on Apache specific features like URL rewriting, etc. The design question I am wondering about is where to store the file attachments. The options that I can think of are: 1) Store the files in a folder below the apache htdocs directory. The links would then be URLS to the actual files. When the user clicks on a link, the Apache server and web browser would deal with downloading or viewing of the file. This is a simple implementation, the biggest disadvantage is that there is no security on the file attachment. I suppose that you could add an effective password to the file by effectively encoding the password as part of the URL. 2) Store the files as mysql records. The CGI application would handle all the fetching and output of the file data as well as checking permissions. It would also have to deal with sending the appropriate CGI headers. This would make the database a lot larger and slow down backup and restore. It would also make it slower to make a snapshot and copy of the database for downloading to a test/development machine. 3) Store the files in a data directory in the cgi-bin directory. The CGI application would handle all the fetching and output of the file data as well as checking permissions. It would also have to deal with sending the appropriate CGI headers. This would not affect the size of the database. Any comments or suggestions would be welcome. Indy Singh IndigoSTAR Software -- www.indigostar.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From adam.prime at utoronto.ca Mon Mar 23 14:26:57 2009 From: adam.prime at utoronto.ca (Adam Prime) Date: Mon, 23 Mar 2009 17:26:57 -0400 Subject: [tpm] Where to store file attachemnts In-Reply-To: References: <22fc0f90e827278563e4ffaf63afd98b.squirrel@webmail.vex.net> <99a6c38f0903190918o1d8539cfqab581afcc52fb629@mail.gmail.com> Message-ID: <49C7FEA1.8060407@utoronto.ca> I'd suggest not putting them in the database. I personally would probably put them in a normal directory on the site, not in cgi-bin. It'd probably be wise to make the directory configurable. At most i'd include a path to the file in the DB, but if possible, i'd actually rename all the files into a naming convention that identifies what they are associated with. here's a link to a somewhat related thread on the mod_perl mailing list: http://marc.info/?t=122271515400003&r=1&w=2 which might be worth a read. It's about images, but it applies to any sort of binary you might be thinking of stuffing into a blob. Adam Indy Singh wrote: > Hi all, > > I am working on a forum-like web application that needs to allow users > to upload and download file attachments. The application uses Apache > MySql and Perl. A user would view a topic as a web page, similar to a > Perlmonks node. There would be links on the web page to any > attachments. The ability to view a given attachment should be limited > to the user who owns it and the administrators. Although the server is > Apache, I want to have minimal reliance on Apache specific features like > URL rewriting, etc. > > The design question I am wondering about is where to store the file > attachments. > > The options that I can think of are: > 1) Store the files in a folder below the apache htdocs directory. > The links would then be URLS to the actual files. When the user clicks > on a link, the Apache server and web browser would deal with downloading > or viewing of the file. This is a simple implementation, the biggest > disadvantage is that there is no security on the file attachment. I > suppose that you could add an effective password to the file by > effectively encoding the password as part of the URL. > > 2) Store the files as mysql records. > The CGI application would handle all the fetching and output of the file > data as well as checking permissions. It would also have to deal with > sending the appropriate CGI headers. This would make the database a lot > larger and slow down backup and restore. It would also make it slower > to make a snapshot and copy of the database for downloading to a > test/development machine. > > 3) Store the files in a data directory in the cgi-bin directory. > The CGI application would handle all the fetching and output of the file > data as well as checking permissions. It would also have to deal with > sending the appropriate CGI headers. This would not affect the size of > the database. > > Any comments or suggestions would be welcome. > > Indy Singh > IndigoSTAR Software -- www.indigostar.com > > _______________________________________________ > toronto-pm mailing list > toronto-pm at pm.org > http://mail.pm.org/mailman/listinfo/toronto-pm From indy at indigostar.com Mon Mar 23 14:51:30 2009 From: indy at indigostar.com (Indy Singh) Date: Mon, 23 Mar 2009 17:51:30 -0400 Subject: [tpm] Where to store file attachemnts References: <22fc0f90e827278563e4ffaf63afd98b.squirrel@webmail.vex.net> <99a6c38f0903190918o1d8539cfqab581afcc52fb629@mail.gmail.com> <49C7FEA1.8060407@utoronto.ca> Message-ID: Thanks, that helped quite a bit to steer the design in the right direction. Indy Singh IndigoSTAR Software -- www.indigostar.com ----- Original Message ----- From: "Adam Prime" To: "Toronto Perl Mongers" Sent: Monday, March 23, 2009 5:26 PM Subject: Re: [tpm] Where to store file attachemnts > I'd suggest not putting them in the database. I personally would > probably put them in a normal directory on the site, not in cgi-bin. > It'd probably be wise to make the directory configurable. At most i'd > include a path to the file in the DB, but if possible, i'd actually > rename all the files into a naming convention that identifies what > they are associated with. > > here's a link to a somewhat related thread on the mod_perl mailing > list: > > http://marc.info/?t=122271515400003&r=1&w=2 > > which might be worth a read. It's about images, but it applies to any > sort of binary you might be thinking of stuffing into a blob. > > Adam > > Indy Singh wrote: >> Hi all, >> >> I am working on a forum-like web application that needs to allow >> users to upload and download file attachments. The application uses >> Apache MySql and Perl. A user would view a topic as a web page, >> similar to a Perlmonks node. There would be links on the web page to >> any attachments. The ability to view a given attachment should be >> limited to the user who owns it and the administrators. Although the >> server is Apache, I want to have minimal reliance on Apache specific >> features like URL rewriting, etc. >> >> The design question I am wondering about is where to store the file >> attachments. >> >> The options that I can think of are: >> 1) Store the files in a folder below the apache htdocs directory. >> The links would then be URLS to the actual files. When the user >> clicks on a link, the Apache server and web browser would deal with >> downloading or viewing of the file. This is a simple implementation, >> the biggest disadvantage is that there is no security on the file >> attachment. I suppose that you could add an effective password to >> the file by effectively encoding the password as part of the URL. >> >> 2) Store the files as mysql records. >> The CGI application would handle all the fetching and output of the >> file data as well as checking permissions. It would also have to >> deal with sending the appropriate CGI headers. This would make the >> database a lot larger and slow down backup and restore. It would >> also make it slower to make a snapshot and copy of the database for >> downloading to a test/development machine. >> >> 3) Store the files in a data directory in the cgi-bin directory. >> The CGI application would handle all the fetching and output of the >> file data as well as checking permissions. It would also have to >> deal with sending the appropriate CGI headers. This would not affect >> the size of the database. >> >> Any comments or suggestions would be welcome. >> >> Indy Singh >> IndigoSTAR Software -- www.indigostar.com >> >> _______________________________________________ >> toronto-pm mailing list >> toronto-pm at pm.org >> http://mail.pm.org/mailman/listinfo/toronto-pm > > _______________________________________________ > toronto-pm mailing list > toronto-pm at pm.org > http://mail.pm.org/mailman/listinfo/toronto-pm From liam at holoweb.net Mon Mar 23 16:52:35 2009 From: liam at holoweb.net (Liam R E Quin) Date: Mon, 23 Mar 2009 19:52:35 -0400 Subject: [tpm] Where to store file attachments In-Reply-To: <367922E5FB5E4E2AA66F59FD71B1568B@ROADKILL> References: <8204a4fe0903160757wa3bf7dcx2f9178394f3a9c74@mail.gmail.com> <5bef4baf0903160805r7609842va97105732d3224ea@mail.gmail.com> <8204a4fe0903161110p17657217n9d6ca006c1d7c564@mail.gmail.com> <367922E5FB5E4E2AA66F59FD71B1568B@ROADKILL> Message-ID: <1237852355.451.2833.camel@desktop.barefootcomputing.com> On Mon, 2009-03-23 at 15:32 -0400, Indy Singh wrote: [...] > The design question I am wondering about is where to store the file > attachments. > > The options that I can think of are: > 1) Store the files in a folder below the apache htdocs directory. > The links would then be URLS to the actual files. When the user > clicks > on a link, the Apache server and web browser would deal with > downloading > or viewing of the file. This is a simple implementation, the biggest > disadvantage is that there is no security on the file attachment. I > suppose that you could add an effective password to the file by > effectively encoding the password as part of the URL. You can also use .htaccess to prevent access to the files by http. > > 2) Store the files as mysql records. Don't do this :) > 3) Store the files in a data directory in the cgi-bin directory. The cgi-bin directory is presumably in the apache filespace somewhere, so this is really the same as (1). But it is the variant I'd use myself. the CGI script (and/or a cron job) can manage a cache and remove outdated files, too. Liam -- Liam Quin - XML Activity Lead, W3C, http://www.w3.org/People/Quin/ Pictures from old books: http://fromoldbooks.org/ Ankh: irc.sorcery.net irc.gnome.org www.advogato.org From psema4 at gmail.com Mon Mar 23 18:06:34 2009 From: psema4 at gmail.com (Scott Elcomb) Date: Mon, 23 Mar 2009 21:06:34 -0400 Subject: [tpm] Working with Net::Twitter Message-ID: <99a6c38f0903231806h68aa2b3fh4483d3a679c03a7e@mail.gmail.com> Hi all, I'm wondering if anyone on the list has worked with Net::Twitter. I finally broke down and grabbed an Twitter account today but haven't found a client I like just yet. A quick look on CPAN turned up Net::Twitter which seems to work well enough for my immediate needs. I'm having a bit of an issue getting the username associated with friends' tweets though. Here's the code I'm using (whipped together in about 5 minutes and borrowing heavily from the module's synopsis): ## Code Starts ## #!/usr/bin/perl use strict; use Net::Twitter; my $twitter = Net::Twitter->new({username=>"psema4", password=>"****" }); my $cmd = $ARGV[0] || die("NO CMD!\n"); if ($cmd eq 'update') { update(); } elsif ($cmd eq 'read') { readTweets(); } else { die("BAD CMD!\n"); } print "\nDONE.\n"; sub update { my $msg = $ARGV[1] || die("NO MSG!\n"); my $result = $twitter->update({status => $msg}); } sub readTweets { my $result = $twitter->friends_timeline(); foreach my $tweet (@{ $result }) { my $speaker = $tweet->{from_user}; my $text = $tweet->{text}; my $time = $tweet->{created_at}; print "$time <$speaker> $text\n"; } } ## Code Ends ## If I run selcomb at host:~/devel/perl/twitter$ twit read then I get output similar to: Tue Mar 24 00:59:01 +0000 2009 <> Just added myself to the http://wefollow.com twitter directory under: #copyright #law #privacy Tue Mar 24 00:39:32 +0000 2009 <> [reading] Officers Have the Same Fiduciary Duties as Directors http://tinyurl.com/cp9ql9 Wide character in print at ./twit line 32. Tue Mar 24 00:36:42 +0000 2009 <> [News] Fwix?s Regional News Feeds Come To The iPhone http://twurl.nl/72v5le Tue Mar 24 00:35:13 +0000 2009 <> The eruption of Redoubt volcano continues and the color code and volcano alert level remains at... Read more at http://tinyurl.com/cel2e7 Tue Mar 24 00:31:52 +0000 2009 <> RT @Joi: Number of CC licensed photos on Flickr just passed 100,000,000 (This thing might just catch on!) Tue Mar 24 00:23:26 +0000 2009 <> Playing with Net::Twitter Tue Mar 24 00:15:21 +0000 2009 <> Lawsuit: Best Buy has "anti-price matching policy" - http://ping.fm/NCNkU The update() function works fine (entry "Playing with Net::Twitter") and readTweets() seems to work except for the fact that $speaker (which should be within the angle brackets in the output) does not get set. I found no references to a "from_user" hash key in the POD save for the one line in the synopsis. Could just be that I'm blind. Anyway, if anyone has experience with the module I'd appreciate pointers; if not I'll try contacting the module author later in the week. Thanks! -- Scott Elcomb http://www.psema4.com/ From adam.prime at utoronto.ca Mon Mar 23 18:18:35 2009 From: adam.prime at utoronto.ca (Adam Prime) Date: Mon, 23 Mar 2009 21:18:35 -0400 Subject: [tpm] Working with Net::Twitter In-Reply-To: <99a6c38f0903231806h68aa2b3fh4483d3a679c03a7e@mail.gmail.com> References: <99a6c38f0903231806h68aa2b3fh4483d3a679c03a7e@mail.gmail.com> Message-ID: <49C834EB.4030002@utoronto.ca> I haven't used it directly, i use twirc (which uses it). http://search.cpan.org/dist/POE-Component-Server-Twirc/ Twirc is pretty awesome, but probably not if you aren't already running an irc client for something. Scott Elcomb wrote: > Hi all, > > I'm wondering if anyone on the list has worked with Net::Twitter. I > finally broke down and grabbed an Twitter account today but haven't > found a client I like just yet. A quick look on CPAN turned up > Net::Twitter which seems to work well enough for my immediate needs. > I'm having a bit of an issue getting the username associated with > friends' tweets though. > > Here's the code I'm using (whipped together in about 5 minutes and > borrowing heavily from the module's synopsis): > > ## Code Starts ## > > #!/usr/bin/perl > use strict; > use Net::Twitter; > > my $twitter = Net::Twitter->new({username=>"psema4", password=>"****" }); > my $cmd = $ARGV[0] || die("NO CMD!\n"); > > if ($cmd eq 'update') { > update(); > } elsif ($cmd eq 'read') { > readTweets(); > } else { > die("BAD CMD!\n"); > } > > print "\nDONE.\n"; > > sub update { > my $msg = $ARGV[1] || die("NO MSG!\n"); > my $result = $twitter->update({status => $msg}); > } > > sub readTweets { > my $result = $twitter->friends_timeline(); > > foreach my $tweet (@{ $result }) { > my $speaker = $tweet->{from_user}; > my $text = $tweet->{text}; > my $time = $tweet->{created_at}; > > print "$time <$speaker> $text\n"; > } > } > > ## Code Ends ## > > If I run > selcomb at host:~/devel/perl/twitter$ twit read > > then I get output similar to: > > Tue Mar 24 00:59:01 +0000 2009 <> Just added myself to the > http://wefollow.com twitter directory under: #copyright #law #privacy > Tue Mar 24 00:39:32 +0000 2009 <> [reading] Officers Have the Same > Fiduciary Duties as Directors http://tinyurl.com/cp9ql9 > Wide character in print at ./twit line 32. > Tue Mar 24 00:36:42 +0000 2009 <> [News] Fwix?s Regional News Feeds > Come To The iPhone http://twurl.nl/72v5le > Tue Mar 24 00:35:13 +0000 2009 <> The eruption of Redoubt volcano > continues and the color code and volcano alert level remains at... > Read more at http://tinyurl.com/cel2e7 > Tue Mar 24 00:31:52 +0000 2009 <> RT @Joi: Number of CC licensed > photos on Flickr just passed 100,000,000 (This thing might just catch > on!) > Tue Mar 24 00:23:26 +0000 2009 <> Playing with Net::Twitter > Tue Mar 24 00:15:21 +0000 2009 <> Lawsuit: Best Buy has "anti-price > matching policy" - http://ping.fm/NCNkU > > > > The update() function works fine (entry "Playing with Net::Twitter") > and readTweets() seems to work except for the fact that $speaker > (which should be within the angle brackets in the output) does not get > set. I found no references to a "from_user" hash key in the POD save > for the one line in the synopsis. Could just be that I'm blind. > > Anyway, if anyone has experience with the module I'd appreciate > pointers; if not I'll try contacting the module author later in the > week. Thanks! > From abram.hindle at softwareprocess.us Mon Mar 23 18:56:02 2009 From: abram.hindle at softwareprocess.us (Abram Hindle) Date: Mon, 23 Mar 2009 21:56:02 -0400 Subject: [tpm] Working with Net::Twitter In-Reply-To: <49C834EB.4030002@utoronto.ca> (sfid-20090323_212105_438080_2F619A1B) References: <99a6c38f0903231806h68aa2b3fh4483d3a679c03a7e@mail.gmail.com> <49C834EB.4030002@utoronto.ca> (sfid-20090323_212105_438080_2F619A1B) Message-ID: <49C83DB2.4090506@softwareprocess.us> For IRCDs for twitter I like: http://code.google.com/p/tircd/ or http://github.com/abramhindle/tircd-plus-search/tree/master abram Adam Prime wrote: > I haven't used it directly, i use twirc (which uses it). > > http://search.cpan.org/dist/POE-Component-Server-Twirc/ > > Twirc is pretty awesome, but probably not if you aren't already running > an irc client for something. > > Scott Elcomb wrote: >> Hi all, >> >> I'm wondering if anyone on the list has worked with Net::Twitter. I >> finally broke down and grabbed an Twitter account today but haven't >> found a client I like just yet. A quick look on CPAN turned up >> Net::Twitter which seems to work well enough for my immediate needs. >> I'm having a bit of an issue getting the username associated with >> friends' tweets though. >> >> Here's the code I'm using (whipped together in about 5 minutes and >> borrowing heavily from the module's synopsis): >> >> ## Code Starts ## >> >> #!/usr/bin/perl >> use strict; >> use Net::Twitter; >> >> my $twitter = Net::Twitter->new({username=>"psema4", password=>"****" }); >> my $cmd = $ARGV[0] || die("NO CMD!\n"); >> >> if ($cmd eq 'update') { >> update(); >> } elsif ($cmd eq 'read') { >> readTweets(); >> } else { >> die("BAD CMD!\n"); >> } >> >> print "\nDONE.\n"; >> >> sub update { >> my $msg = $ARGV[1] || die("NO MSG!\n"); >> my $result = $twitter->update({status => $msg}); >> } >> >> sub readTweets { >> my $result = $twitter->friends_timeline(); >> >> foreach my $tweet (@{ $result }) { >> my $speaker = $tweet->{from_user}; >> my $text = $tweet->{text}; >> my $time = $tweet->{created_at}; >> >> print "$time <$speaker> $text\n"; >> } >> } >> >> ## Code Ends ## >> >> If I run >> selcomb at host:~/devel/perl/twitter$ twit read >> >> then I get output similar to: >> >> Tue Mar 24 00:59:01 +0000 2009 <> Just added myself to the >> http://wefollow.com twitter directory under: #copyright #law #privacy >> Tue Mar 24 00:39:32 +0000 2009 <> [reading] Officers Have the Same >> Fiduciary Duties as Directors http://tinyurl.com/cp9ql9 >> Wide character in print at ./twit line 32. >> Tue Mar 24 00:36:42 +0000 2009 <> [News] Fwix?s Regional News Feeds >> Come To The iPhone http://twurl.nl/72v5le >> Tue Mar 24 00:35:13 +0000 2009 <> The eruption of Redoubt volcano >> continues and the color code and volcano alert level remains at... >> Read more at http://tinyurl.com/cel2e7 >> Tue Mar 24 00:31:52 +0000 2009 <> RT @Joi: Number of CC licensed >> photos on Flickr just passed 100,000,000 (This thing might just catch >> on!) >> Tue Mar 24 00:23:26 +0000 2009 <> Playing with Net::Twitter >> Tue Mar 24 00:15:21 +0000 2009 <> Lawsuit: Best Buy has "anti-price >> matching policy" - http://ping.fm/NCNkU >> >> >> >> The update() function works fine (entry "Playing with Net::Twitter") >> and readTweets() seems to work except for the fact that $speaker >> (which should be within the angle brackets in the output) does not get >> set. I found no references to a "from_user" hash key in the POD save >> for the one line in the synopsis. Could just be that I'm blind. >> >> Anyway, if anyone has experience with the module I'd appreciate >> pointers; if not I'll try contacting the module author later in the >> week. Thanks! >> > > _______________________________________________ > toronto-pm mailing list > toronto-pm at pm.org > http://mail.pm.org/mailman/listinfo/toronto-pm -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 252 bytes Desc: OpenPGP digital signature URL: From psema4 at gmail.com Mon Mar 23 20:12:26 2009 From: psema4 at gmail.com (Scott Elcomb) Date: Mon, 23 Mar 2009 23:12:26 -0400 Subject: [tpm] Working with Net::Twitter In-Reply-To: <49C834EB.4030002@utoronto.ca> References: <99a6c38f0903231806h68aa2b3fh4483d3a679c03a7e@mail.gmail.com> <49C834EB.4030002@utoronto.ca> Message-ID: <99a6c38f0903232012l3c6890c6n2e0065a99bea8e47@mail.gmail.com> On Mon, Mar 23, 2009 at 9:18 PM, Adam Prime wrote: > I haven't used it directly, i use twirc (which uses it). > > http://search.cpan.org/dist/POE-Component-Server-Twirc/ > > Twirc is pretty awesome, but probably not if you aren't already running an > irc client for something. I can see how merging IRC & Twitter could be useful - looks kinda neat actually - but I personally don't use IRC very often. IRC is like the emacs of instant messaging and I don't use that either. Anyway it's not a big deal. The reason I'm even looking at Twitter is to see a bit more of the cloud. I came across a couple of interesting stories today about Salesforce[1][2] and suppose they were the straws that broke the camels' back. (Sorry for the pun.) Writing interfaces (CLI and GUI) for web services and/or cloud-computing environments is a part of my current undertaking (code name "lazius") and this seemed a relatively simple place to start. In any event, I'm sure the answer's out there. Thanks for pointing out the IRC connection though; I may have a use for that down the road. :-) [1] http://tinyurl.com/c7aat2 http://www.techcrunchit.com/2009/03/22/salesforce-puts-tweets-in-the-cloud/ [2] http://tinyurl.com/dm872z http://www.techcrunch.com/2009/03/23/the-efficient-cloud-all-of-salesforce-runs-on-only-1000-servers/ -- Scott Elcomb http://www.psema4.com/ From john at perlwolf.com Tue Mar 24 07:36:42 2009 From: john at perlwolf.com (John Macdonald) Date: Tue, 24 Mar 2009 10:36:42 -0400 Subject: [tpm] Split a string in half In-Reply-To: <49C7CDB9.905@alteeve.com> References: <305730.18268.qm@web52906.mail.re2.yahoo.com> <49C7CDB9.905@alteeve.com> Message-ID: <20090324143642.GA25576@perlwolf.com> On Mon, Mar 23, 2009 at 01:58:17PM -0400, Madison Kelly wrote: > Abuzar Chaudhary wrote: >> my $s1 = substr($s, 0, int(length($s)/2)); >> my $s2 = substr($s, int(length($s)/2)+1); > > It doesn't get any cleaner than that! Well... :-) I'd get rid of the repeated computation of the length. Either: my $s1 = substr($s, 0, int(length($s)/2)); my $s2 = substr($s, length($s1)); Or: my $len = int(length($s)/2); my $s1 = substr($s, 0, $len); my $s2 = substr($s, $len+1); Especially for a human reader, code is clearer if the commonality is shown explicitly, rather than having to inspect the expressions to determine that they are the same - particularly when, as in this case, they are only *almost the same* because of the +1. From indy at indigostar.com Tue Mar 24 08:12:02 2009 From: indy at indigostar.com (Indy Singh) Date: Tue, 24 Mar 2009 11:12:02 -0400 Subject: [tpm] Split a string in half References: <49BC742E.3010100@alteeve.com> Message-ID: <4E8A2968133B43CE80E8656D51EB0E7A@ROADKILL> Here is a way to do it with a regular expression: my $l = int (length($s)/2); my ($a, $b) = $s =~ qr/(.{$l}) (.*$)/; Or with more explicit documentation: my $l = int (length($s)/2); my $split_in_half = qr/(.{$l}) (.*$)/; my ($a, $b) = $s =~ /$split_in_half/; Note: The assignment to ($a, $b) is in array context, the two variables must be enclosed in brackets. Indy Singh IndigoSTAR Software -- www.indigostar.com ----- Original Message ----- From: "Madison Kelly" To: "Toronto Perl Mongers" Sent: Saturday, March 14, 2009 11:21 PM Subject: [tpm] Split a string in half > Hi all, > > I need to split a sting in half, and I can assume the the middle > character in the string will be a space ' ' character. I cannot > predict how many spaces will be in the string though. > > In short; How could I split: > > 'foo bar foo bar' => 'foo bar', 'foo bar' > 'baz baz' => 'baz', baz' > 'foo bar baz foo bar baz' => 'foo bar baz', 'foo bar baz' > > In Detail; > > I use WWW::Mechanize, and I am running into a problem with a website > that uses an image and text in a single anchor. Specifically, the alt > text is the same as the text, so the 'find_all_links' function > returns: > > foo bar foo bar > > For: > > foo bar foo bar > > I never know what the link will be, only that the alt and text will > be that same. > > Thanks! > > Madi > _______________________________________________ > toronto-pm mailing list > toronto-pm at pm.org > http://mail.pm.org/mailman/listinfo/toronto-pm From adam.prime at utoronto.ca Tue Mar 24 14:12:33 2009 From: adam.prime at utoronto.ca (Adam Prime) Date: Tue, 24 Mar 2009 17:12:33 -0400 Subject: [tpm] [Fwd: [yapc] Last day for 10th Anniversary Special] Message-ID: <49C94CC1.60107@utoronto.ca> fyi -------- Original Message -------- Subject: [yapc] Last day for 10th Anniversary Special Date: Tue, 24 Mar 2009 16:21:56 -0400 From: Robert Blackwell To: yapc at pm.org Last day for 10th Anniversary Special for $99.00. http://yapc10.org. _______________________________________________ yapc mailing list yapc at pm.org http://mail.pm.org/mailman/listinfo/yapc From abram.hindle at softwareprocess.us Wed Mar 25 09:20:16 2009 From: abram.hindle at softwareprocess.us (Abram Hindle) Date: Wed, 25 Mar 2009 12:20:16 -0400 Subject: [tpm] Speakers? Message-ID: <49CA59C0.7070203@softwareprocess.us> For my talk tomorrow night are there going to be any speakers/computer speakers on site? I'm looking for something capable of reproducing some midrange and bass. Too often these crappy speakers can only do treble. abram -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 252 bytes Desc: OpenPGP digital signature URL: From jbl at jbldata.com Wed Mar 25 11:28:31 2009 From: jbl at jbldata.com (J. Bobby Lopez) Date: Wed, 25 Mar 2009 14:28:31 -0400 Subject: [tpm] Using DBD::Oracle and UTF8 Message-ID: I'm using DBD::Oracle to communicate with Oracle 10g (10.2.0.4) All works well, except that I find I have to use the following environment variable for the Oracle client, in order to have data sent to my perl script in UTF8 format. No biggy, here's the environment variable: $ENV{NLS_LANG} = "AMERICAN_AMERICA.UTF8"; Problem is though, even with UTF8, there are still (a small number) of characters that do not get translated correctly. The characters that I'm having trouble with seem to show up fine when using the regular "Western (ISO-8859-1)" character set. So far I've considered three options as work-arounds: 1) Have the database keep track of the character set that required to correctly display the data for each record - complexity = high - elegance = unattractive 2) Provide an option in the UI to switch between character sets - complexity = medium - elegance = ugly 3) Detect questionable characters in the incoming data, and automatically switch character sets before output to end user - complexity = unknown (if the data comes back as "??", what if they were supposed to be actual question marks??) - elegance = could be worse Any thoughts on how this could be done in a more elegant and less complex way? -- J. Bobby Lopez Web: http://jbldata.com/ Twitter: http://www.twitter.com/jbobbylopez -------------- next part -------------- An HTML attachment was scrubbed... URL: From magog at the-wire.com Wed Mar 25 19:53:11 2009 From: magog at the-wire.com (Michael Graham) Date: Wed, 25 Mar 2009 22:53:11 -0400 Subject: [tpm] Next Meeting Thursday 26 Mar (tomorrow!) - Two talks: Harbinger and Lispy Perl Message-ID: <20090325225311.1f9f1474@caliope> (These details are also on the TPM web site: http://to.pm.org/) The next meeting is Thursday, 26 March (tomorrow!). Date: Thursday 26 Mar 2009 Time: 6:45pm Speaker: Abram Hindle Topic #1: Harbinger: Making your desktop sing with the help of Perl Topic #2: Lispy Perl Cost: Free! Where: 2 Bloor Street West (NW corner of Yonge/Bloor, skyscraper with the CIBC logo on top) Classroom 11 on the 8th floor Description: =================================================================== Talk 1: **** Harbinger: Making your desktop sing with the help of Perl We use a variety of user interfaces during our day to day lives, but what if software you were familiar with suddenly started to sing? Imagine stealing events from your spreadsheets, your simulations, your office tools, your editors, even your video-games. Could these events make music? Could the delay and reload of a Quake 3 shotgun come out as gong sound? Could the machine gun in Quake3 be converted into an piano roll? Could the frantic scratching of the eraser in GIMP produce beats or the shudder of crystal? With Perl, C, your favorite sound generator/player and your exciting or mundane everyday software, you too can turn your office or desktop environment into a noisemaker. We present to you Harbinger, a Perl based musical event middle man. Harbinger is built to massage events streamed from other applications into musical events for software such CSound, Pure-Data or hardware attached to your midi ports! Talk 2: **** Lispy Perl Ever thought of making another language? Ever thought of compiling that language down to Perl? Do you like s-expressions? Do you like lisp or scheme? Did you ever want to program in Perl in with a different syntax altogether, yet still integrate with Perl? In this presentation Abram will demonstrate how to abuse Perl's SourceFilter such that you can make it parse a whole new language, generate and compile that code and language down to Perl Code and execute it. Why not? Perl has closures, Perl has a garbage collector, it might have an attitude problem but throw in a couple of parentheses and you've got yourself a flexible alternative syntax in which to express ideas. Even better, if it compiles down to Perl, you can interact with Perl directly. We'll deal with design issues, little quirks of Perl and abuses which make developing a language in Perl easier. Note: The elevators in the building are "locked down" after 5:30pm to people without building access cards. Leading up to the meeting someone will come down to the main floor lobby every few minutes to ferry people upstairs. After 19:00, you can reach the access-card-carrying guy via a cell phone number that we'll leave with security in the front lobby. The room and floor numbers will be left with security too. -- Michael Graham From samogon at gmail.com Wed Mar 25 21:12:41 2009 From: samogon at gmail.com (Ilia) Date: Thu, 26 Mar 2009 00:12:41 -0400 Subject: [tpm] Next Meeting Thursday 26 Mar (tomorrow!) - Two talks: Harbinger and Lispy Perl In-Reply-To: <20090325225311.1f9f1474@caliope> References: <20090325225311.1f9f1474@caliope> Message-ID: Somebody should ustream this... I'd love to see this but am out of town.. ilia. On Wed, Mar 25, 2009 at 10:53 PM, Michael Graham wrote: > > (These details are also on the TPM web site: http://to.pm.org/) > > The next meeting is Thursday, 26 March (tomorrow!). > > ? ?Date: ? Thursday 26 Mar 2009 > > ? ?Time: ? 6:45pm > > ?Speaker: ? Abram Hindle > > Topic #1: ? Harbinger: Making your desktop sing with the help of Perl > > Topic #2: ? Lispy Perl > > ? ?Cost: ? Free! > > ? Where: ? 2 Bloor Street West (NW corner of Yonge/Bloor, skyscraper > ? ? ? ? ? ?with the CIBC logo on top) Classroom 11 on the 8th floor > > Description: > > > ?=================================================================== > > ? ? Talk 1: > ? ? **** Harbinger: Making your desktop sing with the help of Perl > > ? ? We use a variety of user interfaces during our day to day lives, > ? ? but what if software you were familiar with suddenly started to > ? ? sing? ?Imagine stealing events from your spreadsheets, your > ? ? simulations, your office tools, your editors, even your > ? ? video-games. Could these events make music? ?Could the delay and > ? ? reload of a Quake 3 shotgun come out as gong sound? ?Could the > ? ? machine gun in Quake3 be converted into an piano roll? ?Could the > ? ? frantic scratching of the eraser in GIMP produce beats or the > ? ? shudder of crystal? ?With Perl, C, your favorite sound > ? ? generator/player and your exciting or mundane everyday software, > ? ? you too can turn your office or desktop environment into a > ? ? noisemaker. ?We present to you Harbinger, a Perl based musical > ? ? event middle man. Harbinger is built to massage events streamed > ? ? from other applications into musical events for software such > ? ? CSound, Pure-Data or hardware attached to your midi ports! > > ? ? Talk 2: > ? ? **** Lispy Perl > > ? ? Ever thought of making another language? Ever thought of > ? ? compiling that language down to Perl? ?Do you like s-expressions? > ? ? Do you like lisp or scheme? Did you ever want to program in Perl > ? ? in with a different syntax altogether, yet still integrate with > ? ? Perl? In this presentation Abram will demonstrate how to abuse > ? ? Perl's SourceFilter such that you can make it parse a whole new > ? ? language, generate and compile that code and language down to > ? ? Perl Code and execute it. ?Why not? Perl has closures, Perl has a > ? ? garbage collector, it might have an attitude problem but throw in > ? ? a couple of parentheses and you've got yourself a flexible > ? ? alternative syntax in which to express ideas. Even better, if it > ? ? compiles down to Perl, you can interact with Perl directly. We'll > ? ? deal with design issues, little quirks of Perl and abuses which > ? ? make developing a language in Perl easier. > > > ?Note: > > ? ?The elevators in the building are "locked down" after 5:30pm > ? ?to people without building access cards. ?Leading up to the > ? ?meeting someone will come down to the main floor lobby every > ? ?few minutes to ferry people upstairs. > > ? ?After 19:00, you can reach the access-card-carrying guy via > ? ?a cell phone number that we'll leave with security in the > ? ?front lobby. ?The room and floor numbers will be left with > ? ?security too. > > > > > > -- > Michael Graham > > > _______________________________________________ > toronto-pm mailing list > toronto-pm at pm.org > http://mail.pm.org/mailman/listinfo/toronto-pm > -- Ilia Lobsanov Nurey Networks - http://www.nurey.com New Ideas for a New Economy Python, Perl, Java, Linux & more Toronto +1 647 996 9087 Boston +1 781 328 1162 From abram.hindle at softwareprocess.us Thu Mar 26 20:45:58 2009 From: abram.hindle at softwareprocess.us (Abram Hindle) Date: Thu, 26 Mar 2009 23:45:58 -0400 Subject: [tpm] Harbinger presentation Message-ID: <49CC4BF6.5030708@softwareprocess.us> This is a repost of my KW.PM talk information: Final slides for the kw.pm presentation: http://churchturing.org/x/abez-harbinger-kwpm-20090319.pdf http://churchturing.org/x/Harbinger-20090319/ Code and Diffs git clone http://churchturing.org/x/Harbinger-20090319/.git/ if you want git http://churchturing.org/x/Harbinger-20090319/presentation/20090317/ Videos of the quake3 sonification demo http://churchturing.org/x/Harbinger-20090319/Harbinger.pm Harbinger Daemon implementation http://churchturing.org/x/Harbinger-20090319/C/Harbinger.h http://churchturing.org/x/Harbinger-20090319/C/Harbinger.c The C library implementation I apologize for lack of documentation (but I did give a presentation!) If CODE is unlicensed, please use WTFPL V2 or BSD (your choice). Also we talked about drawing music during discussion: http://skruntskrunt.abez.ca/software.html#fft abram -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 252 bytes Desc: OpenPGP digital signature URL: From antoniosun at lavabit.com Thu Mar 26 22:35:29 2009 From: antoniosun at lavabit.com (Antonio Sun) Date: Fri, 27 Mar 2009 01:35:29 -0400 Subject: [tpm] Harbinger presentation In-Reply-To: <49CC4BF6.5030708@softwareprocess.us> References: <49CC4BF6.5030708@softwareprocess.us> Message-ID: [Ops, sorry Abram, should have sent to the group instead.] On Thu, Mar 26, 2009 at 11:45 PM, Abram Hindle < abram.hindle at softwareprocess.us> wrote: > > Final slides for the kw.pm presentation . . . > Thanks, and for the amazing presentation itself too. I remember that before the presentation begun, you ran a small batch script to test all the sounds/effects, is the script also available? What's the name? How did you invoke it? I am interest in CSound and its Perl interface, and am thinking that such small test script can be a great starting point for me. thanks Antonio -------------- next part -------------- An HTML attachment was scrubbed... URL: From abram.hindle at softwareprocess.us Fri Mar 27 07:54:51 2009 From: abram.hindle at softwareprocess.us (Abram Hindle) Date: Fri, 27 Mar 2009 10:54:51 -0400 Subject: [tpm] Harbinger presentation In-Reply-To: (sfid-20090327_014205_550049_B0671166) References: <49CC4BF6.5030708@softwareprocess.us> (sfid-20090327_014205_550049_B0671166) Message-ID: <49CCE8BB.5010405@softwareprocess.us> I've put up an updated version at: http://churchturing.org/x/Harbinger/ git clone http://churchturing.org/x/Harbinger.git/ Antonio Sun wrote: > [Ops, sorry Abram, should have sent to the group instead.] > > On Thu, Mar 26, 2009 at 11:45 PM, Abram Hindle < > abram.hindle at softwareprocess.us> wrote: > >> Final slides for the kw.pm presentation . . . >> > > Thanks, and for the amazing presentation itself too. > > I remember that before the presentation begun, you ran a small batch script > to test all the sounds/effects, is the script also available? What's the > name? How did you invoke it? Get these files: http://churchturing.org/x/Harbinger/wavbased.orc http://churchturing.org/x/Harbinger/wavbased.sco http://churchturing.org/x/Harbinger/samples/1shot_gong.wav http://churchturing.org/x/Harbinger/samples/Piano001.wav http://churchturing.org/x/Harbinger/samples/snare1.wav then run: csound -dm6 -o devaudio wavbased.orc wavbased.sco To read commands from standard in, you give it a score which says "run for X minutes" and you tell csound on the commandline "-L stdin" then you can pipe score commands to it. > I am interest in CSound and its Perl interface, and am thinking that such > small test script can be a great starting point for me. There are probably CPAN modules by now, but I just use templates and stuff to generate CSound scores and instruments. Examples are here: http://skruntskrunt.abez.ca/make_drum_machine_orc-20030106.tgz > > thanks > > Antonio > Thanks for attending :D abram -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 252 bytes Desc: OpenPGP digital signature URL: From abram.hindle at softwareprocess.us Fri Mar 27 08:03:43 2009 From: abram.hindle at softwareprocess.us (Abram Hindle) Date: Fri, 27 Mar 2009 11:03:43 -0400 Subject: [tpm] Lispy Perl Presentation and Code Message-ID: <49CCEACF.20302@softwareprocess.us> Here's the presentation: http://churchturing.org/x/lisp-perl/presentation/presentation.out.pdf Here's the code: http://churchturing.org/x/lisp-perl/ Via git: git clone http://churchturing.org/x/lisp-perl/.git abram -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 252 bytes Desc: OpenPGP digital signature URL: From antoniosun at lavabit.com Fri Mar 27 08:52:18 2009 From: antoniosun at lavabit.com (Antonio Sun) Date: Fri, 27 Mar 2009 11:52:18 -0400 Subject: [tpm] Harbinger presentation In-Reply-To: <49CCE8BB.5010405@softwareprocess.us> References: <49CC4BF6.5030708@softwareprocess.us> <49CCE8BB.5010405@softwareprocess.us> Message-ID: On Fri, Mar 27, 2009 at 10:54 AM, Abram Hindle < abram.hindle at softwareprocess.us> wrote: > > I remember that before the presentation begun, you ran a small batch > script > > to test all the sounds/effects, is the script also available? What's the > > name? How did you invoke it? > > Get these files: . . . > Thanks a lot. What was your window manager, BTW? It's ideal for the presentation. Do you use it on daily basis as well? Thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: From abram.hindle at softwareprocess.us Fri Mar 27 09:04:01 2009 From: abram.hindle at softwareprocess.us (Abram Hindle) Date: Fri, 27 Mar 2009 12:04:01 -0400 Subject: [tpm] Harbinger presentation In-Reply-To: (sfid-20090327_115606_398429_C6FAD6C1) References: <49CC4BF6.5030708@softwareprocess.us> <49CCE8BB.5010405@softwareprocess.us> (sfid-20090327_115606_398429_C6FAD6C1) Message-ID: <49CCF8F1.7050104@softwareprocess.us> I use http://xmonad.org/. I use it on my desktop w/ a large screen (24") and on my laptop with a small screen (12.1"). My Config file: http://churchturing.org/x/xmonad.hs Sometimes new keybindings are helpful: http://churchturing.org/x/.Xmodmap Screenshot of big setup: http://churchturing.org/x/xmonadexample.png If you want something more perl based, check out http://wumwum.sourceforge.net/ It is a window manager manager, it uses your current window manager and then manages the windows that your window manager manages. abram Antonio Sun wrote: > On Fri, Mar 27, 2009 at 10:54 AM, Abram Hindle < > abram.hindle at softwareprocess.us> wrote: > > >>> I remember that before the presentation begun, you ran a small batch >> script >>> to test all the sounds/effects, is the script also available? What's the >>> name? How did you invoke it? >> Get these files: . . . >> > > Thanks a lot. > > What was your window manager, BTW? It's ideal for the presentation. Do you > use it on daily basis as well? > > Thanks > -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 252 bytes Desc: OpenPGP digital signature URL: From pszirmak at mapador.com Fri Mar 27 07:15:10 2009 From: pszirmak at mapador.com (Peter Szirmak) Date: Fri, 27 Mar 2009 10:15:10 -0400 Subject: [tpm] Contact Message-ID: <002901c9aee6$70b83000$52289000$@com> Hi, We are a dynamic, Toronto-based IT company looking for strong, cool guys to grow with us. If you have any members interested, please forward contact / resume to me. Cheers, Peter Szirmak Mapador Inc. Tel: +1 416 481 4554 email: pszirmak at mapador.com www.mapador.com 100 -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: image/gif Size: 2557 bytes Desc: not available URL: From psema4 at gmail.com Fri Mar 27 13:29:45 2009 From: psema4 at gmail.com (Scott Elcomb) Date: Fri, 27 Mar 2009 16:29:45 -0400 Subject: [tpm] Working with Net::Twitter In-Reply-To: <99a6c38f0903231806h68aa2b3fh4483d3a679c03a7e@mail.gmail.com> References: <99a6c38f0903231806h68aa2b3fh4483d3a679c03a7e@mail.gmail.com> Message-ID: <99a6c38f0903271329t20a03933wfb28292380078ad0@mail.gmail.com> On Mon, Mar 23, 2009 at 9:06 PM, Scott Elcomb wrote: > The update() function works fine (entry "Playing with Net::Twitter") > and readTweets() seems to work except for the fact that $speaker > (which should be within the angle brackets in the output) does not get > set. ?I found no references to a "from_user" hash key in the POD save > for the one line in the synopsis. ?Could just be that I'm blind. Or just not thinking. Data::Dumper popped into my head a few minutes ago and naturally it reveals the answer. :-) In case anyone's interested, the line I'd used in the OP my $speaker = $tweet->{from_user}; should be my $speaker = $tweet->{user}->{screen_name}; # or {name} -- Scott Elcomb http://www.psema4.com/ From alexmac131 at hotmail.com Fri Mar 27 14:11:17 2009 From: alexmac131 at hotmail.com (Alex Mackinnon) Date: Fri, 27 Mar 2009 21:11:17 +0000 Subject: [tpm] Contact In-Reply-To: <002901c9aee6$70b83000$52289000$@com> References: <002901c9aee6$70b83000$52289000$@com> Message-ID: It helps a great deal if you post your actual address some place, its even missing from the website. The first thing I look at is money. Second,is the location of the job. Also when doing business with a company I always find it fishy when the a company hides their address from myself as a client or as an investor. Alex From: pszirmak at mapador.com To: webmaster at to.pm.org Date: Fri, 27 Mar 2009 10:15:10 -0400 Subject: [tpm] Contact Hi, We are a dynamic, Toronto-based IT company looking for strong, cool guys to grow with us. If you have any members interested, please forward contact / resume to me. Cheers, Peter Szirmak Mapador Inc. Tel: +1 416 481 4554 email: pszirmak at mapador.com www.mapador.com _________________________________________________________________ Share photos with friends on Windows Live Messenger http://go.microsoft.com/?linkid=9650734 -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: image001.gif Type: image/gif Size: 2557 bytes Desc: not available URL: From doug at hcsw.org Fri Mar 27 18:11:15 2009 From: doug at hcsw.org (doug at hcsw.org) Date: Sat, 28 Mar 2009 01:11:15 +0000 Subject: [tpm] Lispy Perl Presentation and Code In-Reply-To: <49CCEACF.20302@softwareprocess.us> References: <49CCEACF.20302@softwareprocess.us> Message-ID: <20090328011115.GA68998@hcsw.org> On Fri, Mar 27, 2009 at 11:03:43AM -0400 or thereabouts, Abram Hindle wrote: > Here's the presentation: > http://churchturing.org/x/lisp-perl/presentation/presentation.out.pdf > > Here's the code: > http://churchturing.org/x/lisp-perl/ > Via git: git clone http://churchturing.org/x/lisp-perl/.git > > abram Hi Abram and group, Thanks for the presentations yesterday. I found them interesting and had a good time going out for drinks with everyone afterwards. Here's a link to "Tempest For Eliza", that program that can play music over your radio via a CRT monitor: http://www.erikyyy.de/tempest/ And also, here is a link to a webserver program of mine written in Common Lisp, C, and Perl: http://hoytech.com/antiweb/ Doug ----------ANTIWEB 4 FEATURES---------- * Uses either the kqueue() or epoll() stateful event APIs in level-triggered mode * 10,000 inactive keepalive connections consume about 3M of userspace memory * Connection sockets are transferred between processes with sendmsg() for privilege-separated vhosts and SMP/multi-core * Files are mmap()ed to avoid copying file data to userspace * Vectored IO (aka scatter-gather IO) used everywhere * Vhosts can be chroot()ed into separate roots * Compromised vhosts can't intercept log messages created by other vhosts or steal connections destined to other vhosts * Every Antiweb process is separately exec()ed (not fork()ed) so each has its own unique memory randomisation offsets (on systems that do this) * Write direction of socket is shutdown() when closing connection (required for HTTP/1.1 persistent connections) * Native IPv6 support * Conditional CGI/1.1 compliance * CGI processes can be restricted with rlimits * Directory listings * Download resuming * Entity tags * Javascript and CSS content is minimised, gzip encoded, cached to the filesystem and served as static content * Apache-like regexp-based rewrite module * Memcached-like memory cache module * BerkeleyDB integration -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 195 bytes Desc: not available URL: From alexmac131 at hotmail.com Fri Mar 27 20:50:55 2009 From: alexmac131 at hotmail.com (Alex Mackinnon) Date: Sat, 28 Mar 2009 03:50:55 +0000 Subject: [tpm] Contact In-Reply-To: References: <002901c9aee6$70b83000$52289000$@com> Message-ID: Can we give this person the boot please from the list, thanks. Thanks to annon for this :) Quote "an unlisted #, and the website registered to an address in virginia ? is this place legit??" If anyone is looking for Perl work and got the xml/xslt or does Java let me know. alex From: alexmac131 at hotmail.com To: pszirmak at mapador.com; webmaster at to.pm.org Date: Fri, 27 Mar 2009 21:11:17 +0000 Subject: Re: [tpm] Contact It helps a great deal if you post your actual address some place, its even missing from the website. The first thing I look at is money. Second,is the location of the job. Also when doing business with a company I always find it fishy when the a company hides their address from myself as a client or as an investor. Alex From: pszirmak at mapador.com To: webmaster at to.pm.org Date: Fri, 27 Mar 2009 10:15:10 -0400 Subject: [tpm] Contact Hi, We are a dynamic, Toronto-based IT company looking for strong, cool guys to grow with us. If you have any members interested, please forward contact / resume to me. Cheers, Peter Szirmak Mapador Inc. Tel: +1 416 481 4554 email: pszirmak at mapador.com www.mapador.com Tell the whole story with photos, right from your Messenger window. Learn how! _________________________________________________________________ Reinvent how you stay in touch with the new Windows Live Messenger. http://go.microsoft.com/?linkid=9650731 -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: image001.gif Type: image/gif Size: 2557 bytes Desc: not available URL: From antoniosun at lavabit.com Fri Mar 27 22:27:46 2009 From: antoniosun at lavabit.com (Antonio Sun) Date: Sat, 28 Mar 2009 01:27:46 -0400 Subject: [tpm] Lispy Perl Presentation and Code In-Reply-To: <20090328011115.GA68998@hcsw.org> References: <49CCEACF.20302@softwareprocess.us> <20090328011115.GA68998@hcsw.org> Message-ID: On Fri, Mar 27, 2009 at 9:11 PM, wrote: > Here's a link to "Tempest For Eliza", that program that > can play music over your radio via a CRT monitor . . . Thanks. We also touched upon a tool/platform that can hack web events/interactions. what was it, anybody? Antonio -------------- next part -------------- An HTML attachment was scrubbed... URL: From abram.hindle at softwareprocess.us Sat Mar 28 04:57:47 2009 From: abram.hindle at softwareprocess.us (Abram Hindle) Date: Sat, 28 Mar 2009 07:57:47 -0400 Subject: [tpm] Lispy Perl Presentation and Code In-Reply-To: (sfid-20090328_013506_051875_D1AF8BEF) References: <49CCEACF.20302@softwareprocess.us> <20090328011115.GA68998@hcsw.org> (sfid-20090328_013506_051875_D1AF8BEF) Message-ID: <49CE10BB.2000708@softwareprocess.us> http://seleniumhq.org/ Also I remember seeing something like a firefox shell or something which allowed you to communicate to firefox. I tried using Mozilla::Mechanize, I had to hack the Makefile.PL among other things. It eventually worked but then I couldn't automate sites accessing HTTPS, although if you're clever enough you should be able to use it. abram Antonio Sun wrote: > On Fri, Mar 27, 2009 at 9:11 PM, wrote: > > >> Here's a link to "Tempest For Eliza", that program that >> can play music over your radio via a CRT monitor . . . > > > Thanks. > > We also touched upon a tool/platform that can hack web events/interactions. > what was it, anybody? > > Antonio > > > > ------------------------------------------------------------------------ > > _______________________________________________ > toronto-pm mailing list > toronto-pm at pm.org > http://mail.pm.org/mailman/listinfo/toronto-pm -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 252 bytes Desc: OpenPGP digital signature URL: From alexmac131 at hotmail.com Sat Mar 28 05:29:29 2009 From: alexmac131 at hotmail.com (Alex Mackinnon) Date: Sat, 28 Mar 2009 12:29:29 +0000 Subject: [tpm] Contact In-Reply-To: <007701c9af9a$7988e990$6c9abcb0$@com> References: <002901c9aee6$70b83000$52289000$@com> <007701c9af9a$7988e990$6c9abcb0$@com> Message-ID: You really don't get it do you? A company puts alot of effrot into its works, and generally when a company hides their address its for several reasons. 1) its run out of the home 2) it wishes to avoid being served 3) Its location often changes to avoid making payments 4) its location often in some hick little village that the address is actually a minus to its business plan. Example Bay Street service run from say Port Hope Ontario (anyone from Port Hope, sorry did random pick) 5) the location is not wihtin the business targed nation (run from India, africa, Utah) my comments on your domain hiding was actually refactored comments from others on the Perl list sent to me in private so I snipped their names , blended it and took the best over all quote and quoted it directly leaving out the names. Good luck to you, you really have legit job try posting on jobs.perl.org, if its investimentors then your not on the list legit. If I was an investor first thing I'd want to know is where the company is, what do they do and can i make money. As someone who has worked for Accenture / Morgan Stanely I'd want to know the basics of what a company does, who they are and where my money is going. Now I have never heard of you, that means nothing really as lots of companies exist in the world. I Suggestion you put the address on and I suggest if you have specific jobs to offer here on the list , Do so. Until then, I recommend no one deal with you From: pszirmak at mapador.com To: alexmac131 at hotmail.com; webmaster at to.pm.org Subject: RE: [tpm] Contact Date: Sat, 28 Mar 2009 07:43:54 -0400 Alex, Just for the record, I am not sure what you are referring to. My email listed an email and phone number, along with a website that describes what we do. I reckon that?s about enough when the only avenue you can write to is a ?webmaster?. Please get real. I suggest your group creates a better defined avenue if you intend to facilitate potential job opportunities to come through. If, as your email suggests, there are members in your group who may be looking for opportunities, your gating process may be quite counter-productive. An aggressive reply from a hotmail account? The only reason I am replying is that I believe that this approach does not represent all your members. If there is anyone interested in actually finding out what opportunities exist, let me know. If anyone is turned off by working for a company whose website is with Networksolutions (yes, from Virginia), I can?t help. Cheers, Peter From: Alex Mackinnon [mailto:alexmac131 at hotmail.com] Sent: Friday, March 27, 2009 11:51 PM To: pszirmak at mapador.com; webmaster at to.pm.org Subject: RE: [tpm] Contact Can we give this person the boot please from the list, thanks. Thanks to annon for this :) Quote "an unlisted #, and the website registered to an address in virginia ? is this place legit??" If anyone is looking for Perl work and got the xml/xslt or does Java let me know. alex From: alexmac131 at hotmail.com To: pszirmak at mapador.com; webmaster at to.pm.org Date: Fri, 27 Mar 2009 21:11:17 +0000 Subject: Re: [tpm] Contact It helps a great deal if you post your actual address some place, its even missing from the website. The first thing I look at is money. Second,is the location of the job. Also when doing business with a company I always find it fishy when the a company hides their address from myself as a client or as an investor. Alex From: pszirmak at mapador.com To: webmaster at to.pm.org Date: Fri, 27 Mar 2009 10:15:10 -0400 Subject: [tpm] Contact Hi, We are a dynamic, Toronto-based IT company looking for strong, cool guys to grow with us. If you have any members interested, please forward contact / resume to me. Cheers, Peter Szirmak Mapador Inc. Tel: +1 416 481 4554 email: pszirmak at mapador.com www.mapador.com Tell the whole story with photos, right from your Messenger window. Learn how! Communicate, update and plan on Windows Live Messenger. Get started today. _________________________________________________________________ Chat with the whole group, and bring everyone together. http://go.microsoft.com/?linkid=9650735 -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: image001.gif Type: image/gif Size: 2557 bytes Desc: not available URL: From adam.prime at utoronto.ca Sat Mar 28 08:00:41 2009 From: adam.prime at utoronto.ca (Adam Prime) Date: Sat, 28 Mar 2009 11:00:41 -0400 Subject: [tpm] why does email to webmaster@to.pm.org go to the list? Message-ID: <49CE3B99.9080407@utoronto.ca> It seems a little weird to me. Adam From adam.prime at utoronto.ca Sat Mar 28 08:18:46 2009 From: adam.prime at utoronto.ca (Adam Prime) Date: Sat, 28 Mar 2009 11:18:46 -0400 Subject: [tpm] Contact In-Reply-To: References: <002901c9aee6$70b83000$52289000$@com> <007701c9af9a$7988e990$6c9abcb0$@com> Message-ID: <49CE3FD6.9060401@utoronto.ca> Peter, Generally, when attempting to solicit workers via this list it's a good idea to include a little more information about what the job actually involves, where it's contract or employment, possibly some indication of compensation, and as alex seems to have taken great issue with, an idea of where the office is located, or if the work is going to be done via telecommute. You are right that the website doesn't include any information about what the appropriate way to send job solicitations to the list is. That should probably be addressed. We should probably also include a warning that if your offer isn't up to snuff, you'll be verbally abused by a stranger, since that seems to be a pretty common response around here. For the record, a quick google of Peter Szirmak will probably go a long way towards proving that he's a real person. He's got an admittedly bare linkedin profile, but he was written up in Canadian Business in 2005. That seems pretty legit to me. Adam From arocker at vex.net Sat Mar 28 11:15:13 2009 From: arocker at vex.net (arocker at vex.net) Date: Sat, 28 Mar 2009 14:15:13 -0400 (EDT) Subject: [tpm] Contact In-Reply-To: <49CE3FD6.9060401@utoronto.ca> References: <002901c9aee6$70b83000$52289000$@com> <007701c9af9a$7988e990$6c9abcb0$@com> <49CE3FD6.9060401@utoronto.ca> Message-ID: > We should probably also include a warning that if your offer isn't up to > snuff, you'll be verbally abused by a stranger, since that seems to be a > pretty common response around here. > That's a standard reaction on geek mailing lists to suspected suits, in my experience. We assume that we are being lied to, and resent it in advance. Even if it's not so, a failure to provide necessary contact information indicates an annoying sloppiness. Anybody who's been in the trade for a while should have known that. From pszirmak at mapador.com Fri Mar 27 14:40:24 2009 From: pszirmak at mapador.com (Peter Szirmak) Date: Fri, 27 Mar 2009 17:40:24 -0400 Subject: [tpm] Contact In-Reply-To: References: <002901c9aee6$70b83000$52289000$@com> Message-ID: <006801c9af24$a3911e90$eab35bb0$@com> Alex, Are you the webmaster or is there someone in your group who communicates professionally? Cheers, P PS: answering from a hotmail address and complaining about 'lack of information' on an intro email is quite funny, actually. From: Alex Mackinnon [mailto:alexmac131 at hotmail.com] Sent: Friday, March 27, 2009 5:11 PM To: pszirmak at mapador.com; webmaster at to.pm.org Subject: RE: [tpm] Contact It helps a great deal if you post your actual address some place, its even missing from the website. The first thing I look at is money. Second,is the location of the job. Also when doing business with a company I always find it fishy when the a company hides their address from myself as a client or as an investor. Alex _____ From: pszirmak at mapador.com To: webmaster at to.pm.org Date: Fri, 27 Mar 2009 10:15:10 -0400 Subject: [tpm] Contact Hi, We are a dynamic, Toronto-based IT company looking for strong, cool guys to grow with us. If you have any members interested, please forward contact / resume to me. Cheers, Peter Szirmak Mapador Inc. Tel: +1 416 481 4554 email: pszirmak at mapador.com www.mapador.com 100 _____ Tell the whole story with photos, right from your Messenger window. Learn how! -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: image/gif Size: 2557 bytes Desc: not available URL: From pszirmak at mapador.com Sat Mar 28 04:43:54 2009 From: pszirmak at mapador.com (Peter Szirmak) Date: Sat, 28 Mar 2009 07:43:54 -0400 Subject: [tpm] Contact In-Reply-To: References: <002901c9aee6$70b83000$52289000$@com> Message-ID: <007701c9af9a$7988e990$6c9abcb0$@com> Alex, Just for the record, I am not sure what you are referring to. My email listed an email and phone number, along with a website that describes what we do. I reckon that's about enough when the only avenue you can write to is a 'webmaster'. Please get real. I suggest your group creates a better defined avenue if you intend to facilitate potential job opportunities to come through. If, as your email suggests, there are members in your group who may be looking for opportunities, your gating process may be quite counter-productive. An aggressive reply from a hotmail account? The only reason I am replying is that I believe that this approach does not represent all your members. If there is anyone interested in actually finding out what opportunities exist, let me know. If anyone is turned off by working for a company whose website is with Networksolutions (yes, from Virginia), I can't help. Cheers, Peter From: Alex Mackinnon [mailto:alexmac131 at hotmail.com] Sent: Friday, March 27, 2009 11:51 PM To: pszirmak at mapador.com; webmaster at to.pm.org Subject: RE: [tpm] Contact Can we give this person the boot please from the list, thanks. Thanks to annon for this :) Quote "an unlisted #, and the website registered to an address in virginia ? is this place legit??" If anyone is looking for Perl work and got the xml/xslt or does Java let me know. alex _____ From: alexmac131 at hotmail.com To: pszirmak at mapador.com; webmaster at to.pm.org Date: Fri, 27 Mar 2009 21:11:17 +0000 Subject: Re: [tpm] Contact It helps a great deal if you post your actual address some place, its even missing from the website. The first thing I look at is money. Second,is the location of the job. Also when doing business with a company I always find it fishy when the a company hides their address from myself as a client or as an investor. Alex _____ From: pszirmak at mapador.com To: webmaster at to.pm.org Date: Fri, 27 Mar 2009 10:15:10 -0400 Subject: [tpm] Contact Hi, We are a dynamic, Toronto-based IT company looking for strong, cool guys to grow with us. If you have any members interested, please forward contact / resume to me. Cheers, Peter Szirmak Mapador Inc. Tel: +1 416 481 4554 email: pszirmak at mapador.com www.mapador.com 100 _____ Tell the whole story with photos, right from your Messenger window. Learn how! _____ Communicate, update and plan on Windows Live Messenger. Get started today. -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: image/gif Size: 2557 bytes Desc: not available URL: From pszirmak at mapador.com Sat Mar 28 05:59:27 2009 From: pszirmak at mapador.com (Peter Szirmak) Date: Sat, 28 Mar 2009 08:59:27 -0400 Subject: [tpm] Contact In-Reply-To: References: <002901c9aee6$70b83000$52289000$@com> <007701c9af9a$7988e990$6c9abcb0$@com> Message-ID: <008701c9afa5$0734df60$159e9e20$@com> Alex, Good luck to you. Just don't stop opportunities for others, without even knowing, that's all I asked. P From: Alex Mackinnon [mailto:alexmac131 at hotmail.com] Sent: Saturday, March 28, 2009 8:29 AM To: pszirmak at mapador.com; webmaster at to.pm.org Subject: RE: [tpm] Contact You really don't get it do you? A company puts alot of effrot into its works, and generally when a company hides their address its for several reasons. 1) its run out of the home 2) it wishes to avoid being served 3) Its location often changes to avoid making payments 4) its location often in some hick little village that the address is actually a minus to its business plan. Example Bay Street service run from say Port Hope Ontario (anyone from Port Hope, sorry did random pick) 5) the location is not wihtin the business targed nation (run from India, africa, Utah) my comments on your domain hiding was actually refactored comments from others on the Perl list sent to me in private so I snipped their names , blended it and took the best over all quote and quoted it directly leaving out the names. Good luck to you, you really have legit job try posting on jobs.perl.org, if its investimentors then your not on the list legit. If I was an investor first thing I'd want to know is where the company is, what do they do and can i make money. As someone who has worked for Accenture / Morgan Stanely I'd want to know the basics of what a company does, who they are and where my money is going. Now I have never heard of you, that means nothing really as lots of companies exist in the world. I Suggestion you put the address on and I suggest if you have specific jobs to offer here on the list , Do so. Until then, I recommend no one deal with you _____ From: pszirmak at mapador.com To: alexmac131 at hotmail.com; webmaster at to.pm.org Subject: RE: [tpm] Contact Date: Sat, 28 Mar 2009 07:43:54 -0400 Alex, Just for the record, I am not sure what you are referring to. My email listed an email and phone number, along with a website that describes what we do. I reckon that's about enough when the only avenue you can write to is a 'webmaster'. Please get real. I suggest your group creates a better defined avenue if you intend to facilitate potential job opportunities to come through. If, as your email suggests, there are members in your group who may be looking for opportunities, your gating process may be quite counter-productive. An aggressive reply from a hotmail account? The only reason I am replying is that I believe that this approach does not represent all your members. If there is anyone interested in actually finding out what opportunities exist, let me know. If anyone is turned off by working for a company whose website is with Networksolutions (yes, from Virginia), I can't help. Cheers, Peter From: Alex Mackinnon [mailto:alexmac131 at hotmail.com] Sent: Friday, March 27, 2009 11:51 PM To: pszirmak at mapador.com; webmaster at to.pm.org Subject: RE: [tpm] Contact Can we give this person the boot please from the list, thanks. Thanks to annon for this :) Quote "an unlisted #, and the website registered to an address in virginia ? is this place legit??" If anyone is looking for Perl work and got the xml/xslt or does Java let me know. alex _____ From: alexmac131 at hotmail.com To: pszirmak at mapador.com; webmaster at to.pm.org Date: Fri, 27 Mar 2009 21:11:17 +0000 Subject: Re: [tpm] Contact It helps a great deal if you post your actual address some place, its even missing from the website. The first thing I look at is money. Second,is the location of the job. Also when doing business with a company I always find it fishy when the a company hides their address from myself as a client or as an investor. Alex _____ From: pszirmak at mapador.com To: webmaster at to.pm.org Date: Fri, 27 Mar 2009 10:15:10 -0400 Subject: [tpm] Contact Hi, We are a dynamic, Toronto-based IT company looking for strong, cool guys to grow with us. If you have any members interested, please forward contact / resume to me. Cheers, Peter Szirmak Mapador Inc. Tel: +1 416 481 4554 email: pszirmak at mapador.com www.mapador.com 100 _____ Tell the whole story with photos, right from your Messenger window. Learn how! _____ Communicate, update and plan on Windows Live Messenger. Get started today. _____ Windows Live Messenger makes it easier to stay in touch - learn how! -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: image/gif Size: 2557 bytes Desc: not available URL: From pszirmak at mapador.com Sat Mar 28 09:44:24 2009 From: pszirmak at mapador.com (Peter Szirmak) Date: Sat, 28 Mar 2009 12:44:24 -0400 Subject: [tpm] Contact In-Reply-To: <49CE3FD6.9060401@utoronto.ca> References: <002901c9aee6$70b83000$52289000$@com> <007701c9af9a$7988e990$6c9abcb0$@com> <49CE3FD6.9060401@utoronto.ca> Message-ID: <009901c9afc4$73d9e380$5b8daa80$@com> Hi Adam, Thanks for your reply. You are right, of course I would and should include more on any job offer. But actually my email wasn't a 'job offer'. I thought I was writing to a webmaster who would then direct me to the right contact. Your website doesn't really suggest that an email written to the webmaster actually gets to a list of people. Hence my relative short initial email (many times the webmaster is just the guy who responds to problems on the website...). Mapador Inc. is a completely legit company, even if it is relatively new (< 1 year). The technology and people behind it are quite seasoned, coming from my previous company (>20 years). Mapador Inc. is a spin-off, focusing on technology that involves a lot of parsers, many written in Perl. And yes, you are right, I ran other ventures in the past - hence what you find on Google. I simply wanted to get to know some people who might be interested in following us / joining us as we grow. I am looking at several projects, some may start as early as April / May. But I very much believe that knowledge of something is just one component to success - professionalism and attitude are quite important to me as well. Hence I do want to meet people before I blindly hire. Once we get to that stage, you will see that results matter more to me than where or when the job got done. I have worked with people from far away, who preferred to work at nights. Whatever - what they delivered was A+, on time. For your reference, I will be opening up an office once these projects are on the go. It will be along the Yonge corridor (subway and parking are important), somewhere north of midtown. I am not a big fan of having fake Bay street addresses for nothing - our clients don't care for such - me neither. Hence, my email was exactly what I meant: take a look at the website and anyone is interested to be contacted as the opportunities materialize, send me an email / resume. Cheers, Peter -----Original Message----- From: Adam Prime [mailto:adam.prime at utoronto.ca] Sent: Saturday, March 28, 2009 11:19 AM To: Toronto Perl Mongers Cc: pszirmak at mapador.com Subject: Re: [tpm] Contact Peter, Generally, when attempting to solicit workers via this list it's a good idea to include a little more information about what the job actually involves, where it's contract or employment, possibly some indication of compensation, and as alex seems to have taken great issue with, an idea of where the office is located, or if the work is going to be done via telecommute. You are right that the website doesn't include any information about what the appropriate way to send job solicitations to the list is. That should probably be addressed. We should probably also include a warning that if your offer isn't up to snuff, you'll be verbally abused by a stranger, since that seems to be a pretty common response around here. For the record, a quick google of Peter Szirmak will probably go a long way towards proving that he's a real person. He's got an admittedly bare linkedin profile, but he was written up in Canadian Business in 2005. That seems pretty legit to me. Adam From magog at the-wire.com Sat Mar 28 12:03:14 2009 From: magog at the-wire.com (Michael Graham) Date: Sat, 28 Mar 2009 15:03:14 -0400 Subject: [tpm] Please take the mapador discussion off-list Message-ID: <20090328150314.38ef450a@caliope> I'm the list moderator, such as it is. Basically that means nothing more than I have the fun job of approving or rejecting messages from non-subscribers. Everyone: sorry about messages to webmaster going to the list. Peter, I've approved your recent messages to the list. But if you'd like to continue to post, please subscribe to the list. Details here: http://mail.pm.org/mailman/listinfo/toronto-pm Alex and Peter - if you wish to continue to fight, please take it off-list. Michael -- Michael Graham From dmagnuszewski at yahoo.com Mon Mar 30 23:35:28 2009 From: dmagnuszewski at yahoo.com (Daniel Magnuszewski) Date: Mon, 30 Mar 2009 23:35:28 -0700 (PDT) Subject: [tpm] Harbinger presentation In-Reply-To: <49CC4BF6.5030708@softwareprocess.us> References: <49CC4BF6.5030708@softwareprocess.us> Message-ID: <413136.82676.qm@web33307.mail.mud.yahoo.com> I wish I could have made it up to this meeting. I did a talk on using feedback.pl and Supercollider at a Buffalo PM meeting about a year back and started to develop a Perl based livecoding interface. Unfortunately other priorities got in in the way, but it would be nice to meet up at YAPC (or a PM meeting) to collaborate with other people doing music/audio with Perl. http://buffalo.pm.org/#apr18 -Dan ----- Original Message ---- From: Abram Hindle To: Toronto Perl Mongers Sent: Thursday, March 26, 2009 11:45:58 PM Subject: [tpm] Harbinger presentation This is a repost of my KW.PM talk information: Final slides for the kw.pm presentation: http://churchturing.org/x/abez-harbinger-kwpm-20090319.pdf From jbl at jbldata.com Tue Mar 31 07:24:41 2009 From: jbl at jbldata.com (J. Bobby Lopez) Date: Tue, 31 Mar 2009 10:24:41 -0400 Subject: [tpm] Harbinger presentation In-Reply-To: <413136.82676.qm@web33307.mail.mud.yahoo.com> References: <49CC4BF6.5030708@softwareprocess.us> <413136.82676.qm@web33307.mail.mud.yahoo.com> Message-ID: Wish I could have made it out as well, sounds like an very interesting talk. I've loosely played with AIML (Program-D) to create an interactive chat-bot for my own personal use, and did some slight integration with flite and sphinx in order to communicate with the computer verbally and have it execute commands. I've had dreams of owning my own HAL or Jarvis (Ironman) type of system :) sudo make me a sandwich On Tue, Mar 31, 2009 at 2:35 AM, Daniel Magnuszewski < dmagnuszewski at yahoo.com> wrote: > > I wish I could have made it up to this meeting. I did a talk on using > feedback.pl and Supercollider at a Buffalo PM meeting about a year back and > started to develop a Perl based livecoding interface. Unfortunately other > priorities got in in the way, but it would be nice to meet up at YAPC (or a > PM meeting) to collaborate with other people doing music/audio with Perl. > > http://buffalo.pm.org/#apr18 > > > -Dan > > > ----- Original Message ---- > From: Abram Hindle > To: Toronto Perl Mongers > Sent: Thursday, March 26, 2009 11:45:58 PM > Subject: [tpm] Harbinger presentation > > This is a repost of my KW.PM talk information: > > Final slides for the kw.pm presentation: > http://churchturing.org/x/abez-harbinger-kwpm-20090319.pdf > _______________________________________________ > toronto-pm mailing list > toronto-pm at pm.org > http://mail.pm.org/mailman/listinfo/toronto-pm > -- J. Bobby Lopez Web: http://jbldata.com/ Twitter: http://www.twitter.com/jbobbylopez -------------- next part -------------- An HTML attachment was scrubbed... URL: From dave.s.doyle at gmail.com Tue Mar 31 13:57:51 2009 From: dave.s.doyle at gmail.com (Dave Doyle) Date: Tue, 31 Mar 2009 16:57:51 -0400 Subject: [tpm] Cloud computing as a topic? In-Reply-To: <99a6c38f0903190918o1d8539cfqab581afcc52fb629@mail.gmail.com> References: <22fc0f90e827278563e4ffaf63afd98b.squirrel@webmail.vex.net> <99a6c38f0903190918o1d8539cfqab581afcc52fb629@mail.gmail.com> Message-ID: Thread necromancy. It is so fun. IBM just posted an article on Perl in the Amazon Cloud. Part one of five apparently. http://www.ibm.com/developerworks/linux/library/l-amazon-perl-1/index.html?ca=drs- -- dave.s.doyle at gmail.com On Thu, Mar 19, 2009 at 12:18 PM, Scott Elcomb wrote: > On Thu, Mar 19, 2009 at 11:33 AM, wrote: > > > > Would SUN's new "cloud computing" concept be of interest as a meeting > > topic? I can see a place for Perl in the controlling infrastructure. > > I am interested in learning more about it. I'm not actually a fan of > cloud computing. Self-contained environments are much more to my > liking, however over the next year or so I'll be working on something > akin to Google's App-Engine (in Perl, for Perl developers - App-Engine > is Python based IIRC). > > There is a project on Google Code called 'cloud-perl' ( > http://code.google.com/p/cloud-perl/ ) and another for > 'perl-appengine' ( http://code.google.com/p/perl-appengine/ ) however > the activity levels for both projects seem rather low. > > Anyway thanks for suggesting the topic. =) > > - Scott. > > -- > Scott Elcomb > http://www.psema4.com/ > _______________________________________________ > toronto-pm mailing list > toronto-pm at pm.org > http://mail.pm.org/mailman/listinfo/toronto-pm > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dave.s.doyle at gmail.com Tue Mar 31 14:02:23 2009 From: dave.s.doyle at gmail.com (Dave Doyle) Date: Tue, 31 Mar 2009 17:02:23 -0400 Subject: [tpm] Cloud computing as a topic? In-Reply-To: References: <22fc0f90e827278563e4ffaf63afd98b.squirrel@webmail.vex.net> <99a6c38f0903190918o1d8539cfqab581afcc52fb629@mail.gmail.com> Message-ID: admittedly, light on the Perl so far. -- dave.s.doyle at gmail.com On Tue, Mar 31, 2009 at 4:57 PM, Dave Doyle wrote: > Thread necromancy. It is so fun. > > IBM just posted an article on Perl in the Amazon Cloud. Part one of five > apparently. > > > http://www.ibm.com/developerworks/linux/library/l-amazon-perl-1/index.html?ca=drs- > > -- > dave.s.doyle at gmail.com > > > > On Thu, Mar 19, 2009 at 12:18 PM, Scott Elcomb wrote: > >> On Thu, Mar 19, 2009 at 11:33 AM, wrote: >> > >> > Would SUN's new "cloud computing" concept be of interest as a meeting >> > topic? I can see a place for Perl in the controlling infrastructure. >> >> I am interested in learning more about it. I'm not actually a fan of >> cloud computing. Self-contained environments are much more to my >> liking, however over the next year or so I'll be working on something >> akin to Google's App-Engine (in Perl, for Perl developers - App-Engine >> is Python based IIRC). >> >> There is a project on Google Code called 'cloud-perl' ( >> http://code.google.com/p/cloud-perl/ ) and another for >> 'perl-appengine' ( http://code.google.com/p/perl-appengine/ ) however >> the activity levels for both projects seem rather low. >> >> Anyway thanks for suggesting the topic. =) >> >> - Scott. >> >> -- >> Scott Elcomb >> http://www.psema4.com/ >> _______________________________________________ >> toronto-pm mailing list >> toronto-pm at pm.org >> http://mail.pm.org/mailman/listinfo/toronto-pm >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: