From scratchcomputing at gmail.com Wed Aug 1 16:18:47 2007 From: scratchcomputing at gmail.com (Seven till Seven) Date: Wed, 1 Aug 2007 16:18:47 -0700 Subject: [Pdx-pm] next meeting 1 week from today! Message-ID: <200708011618.47999.ewilhelm@cpan.org> Why do the meeting dates seem to have gotten so sneaky all of a sudden? So, I mentioned to a few people at OSCON that we would do another OSCON-wrap-up round table-ish sort of thing. How's that sound? --Eric -- http://pdx.pm.org From kevin at scaldeferri.com Wed Aug 1 16:40:42 2007 From: kevin at scaldeferri.com (Kevin Scaldeferri) Date: Wed, 1 Aug 2007 16:40:42 -0700 Subject: [Pdx-pm] next meeting 1 week from today! In-Reply-To: <200708011618.47999.ewilhelm@cpan.org> References: <200708011618.47999.ewilhelm@cpan.org> Message-ID: <317D86C8-7607-4651-9083-8F763ECF36D1@scaldeferri.com> On Aug 1, 2007, at 4:18 PM, Seven till Seven wrote: > Why do the meeting dates seem to have gotten so sneaky all of a > sudden? > > So, I mentioned to a few people at OSCON that we would do another > OSCON-wrap-up round table-ish sort of thing. How's that sound? > Sounds good to me. I'm happy to talk about what I thought was cool at the conference, as long as I don't have to make slides. -kevin From scratchcomputing at gmail.com Wed Aug 1 16:44:18 2007 From: scratchcomputing at gmail.com (Eric Wilhelm) Date: Wed, 1 Aug 2007 16:44:18 -0700 Subject: [Pdx-pm] next meeting 1 week from today! In-Reply-To: <317D86C8-7607-4651-9083-8F763ECF36D1@scaldeferri.com> References: <200708011618.47999.ewilhelm@cpan.org> <317D86C8-7607-4651-9083-8F763ECF36D1@scaldeferri.com> Message-ID: <200708011644.18987.ewilhelm@cpan.org> # from Kevin Scaldeferri # on Wednesday 01 August 2007 04:40 pm: >I'm happy to talk about what I thought was cool ? >at the conference, as long as I don't have to make slides. Got it. Anyone who needs slides made, please contact Kevin ;-) Typically we don't need slides for this sort of thing. (Hey, slides aren't really required for regular presentations either, we just haven't found anybody brave enough to do it with the lights on.) --Eric -- The only thing that could save UNIX at this late date would be a new $30 shareware version that runs on an unexpanded Commodore 64. --Don Lancaster (1991) --------------------------------------------------- http://scratchcomputing.com --------------------------------------------------- From sdeckelmann at chrisking.com Wed Aug 1 16:45:07 2007 From: sdeckelmann at chrisking.com (Selena Deckelmann) Date: Wed, 1 Aug 2007 16:45:07 -0700 Subject: [Pdx-pm] next meeting 1 week from today! In-Reply-To: <317D86C8-7607-4651-9083-8F763ECF36D1@scaldeferri.com> References: <200708011618.47999.ewilhelm@cpan.org> <317D86C8-7607-4651-9083-8F763ECF36D1@scaldeferri.com> Message-ID: On Aug 1, 2007, at 4:40 PM, Kevin Scaldeferri wrote: > > On Aug 1, 2007, at 4:18 PM, Seven till Seven wrote: > >> Why do the meeting dates seem to have gotten so sneaky all of a >> sudden? >> >> So, I mentioned to a few people at OSCON that we would do another >> OSCON-wrap-up round table-ish sort of thing. How's that sound? >> > > Sounds good to me. I'm happy to talk about what I thought was cool > at the conference, as long as I don't have to make slides. Lightning Talks, right? Someone bringing a cowbell? -selena From schwern at pobox.com Wed Aug 1 21:52:06 2007 From: schwern at pobox.com (Michael G Schwern) Date: Wed, 01 Aug 2007 21:52:06 -0700 Subject: [Pdx-pm] next meeting 1 week from today! In-Reply-To: References: <200708011618.47999.ewilhelm@cpan.org> <317D86C8-7607-4651-9083-8F763ECF36D1@scaldeferri.com> Message-ID: <46B162F6.7030103@pobox.com> Selena Deckelmann wrote: > Lightning Talks, right? > > Someone bringing a cowbell? I'll supply the booze. There's plenty left over from the tutorial wet-run. Drinks on the house! From kevin at scaldeferri.com Thu Aug 2 12:58:24 2007 From: kevin at scaldeferri.com (Kevin Scaldeferri) Date: Thu, 2 Aug 2007 12:58:24 -0700 Subject: [Pdx-pm] Making web pages that display "working on your request" In-Reply-To: <86myxd76os.fsf@blue.stonehenge.com> References: <91CDC702-3226-4DAF-B9BA-9A842996F498@scaldeferri.com> <86myxd76os.fsf@blue.stonehenge.com> Message-ID: <1D2D9783-8B4F-4CC1-BCEC-5E584C89AFF7@scaldeferri.com> On Jul 30, 2007, at 5:33 PM, Randal L. Schwartz wrote: >>>>>> "Kevin" == Kevin Scaldeferri writes: > > Kevin> Do people have recommendations on where to go to learn how > to produce > Kevin> effects like this? Of course, I'd like that perfect > combination of > Kevin> practical and theoretical exposition which will provide > excellent > Kevin> working examples of similar effects, plus enough > understanding to > Kevin> modify them effectively. But, I'm willing to go to a couple > Kevin> different sources to piece it all together. > > You can avoid all javascript entirely and go old-school: > > I'm not keen on this approach because the addition of the session id to the url makes it unfriendly to bookmarking / emailing. It's something I've considered as a short term approach while working on something better, but I don't think I'd use it in the long term. -kein From merlyn at stonehenge.com Thu Aug 2 13:51:18 2007 From: merlyn at stonehenge.com (Randal L. Schwartz) Date: Thu, 02 Aug 2007 13:51:18 -0700 Subject: [Pdx-pm] Making web pages that display "working on your request" In-Reply-To: <1D2D9783-8B4F-4CC1-BCEC-5E584C89AFF7@scaldeferri.com> (Kevin Scaldeferri's message of "Thu, 2 Aug 2007 12:58:24 -0700") References: <91CDC702-3226-4DAF-B9BA-9A842996F498@scaldeferri.com> <86myxd76os.fsf@blue.stonehenge.com> <1D2D9783-8B4F-4CC1-BCEC-5E584C89AFF7@scaldeferri.com> Message-ID: <863az13bjt.fsf@blue.stonehenge.com> >>>>> "Kevin" == Kevin Scaldeferri writes: Kevin> I'm not keen on this approach because the addition of the session id to Kevin> the url makes it unfriendly to bookmarking / emailing. It's something Kevin> I've considered as a short term approach while working on something Kevin> better, but I don't think I'd use it in the long term. I don't understand that. You don't want anyone bookmarking your interstitial! -- Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095 Perl/Unix/security consulting, Technical writing, Comedy, etc. etc. See PerlTraining.Stonehenge.com for onsite and open-enrollment Perl training! From kevin at scaldeferri.com Thu Aug 2 14:21:45 2007 From: kevin at scaldeferri.com (Kevin Scaldeferri) Date: Thu, 2 Aug 2007 14:21:45 -0700 Subject: [Pdx-pm] Making web pages that display "working on your request" In-Reply-To: <863az13bjt.fsf@blue.stonehenge.com> References: <91CDC702-3226-4DAF-B9BA-9A842996F498@scaldeferri.com> <86myxd76os.fsf@blue.stonehenge.com> <1D2D9783-8B4F-4CC1-BCEC-5E584C89AFF7@scaldeferri.com> <863az13bjt.fsf@blue.stonehenge.com> Message-ID: <8A125A31-7007-48D7-8A0B-5B5DB0D56A9B@scaldeferri.com> On Aug 2, 2007, at 1:51 PM, Randal L. Schwartz wrote: >>>>>> "Kevin" == Kevin Scaldeferri writes: > > Kevin> I'm not keen on this approach because the addition of the > session id to > Kevin> the url makes it unfriendly to bookmarking / emailing. It's > something > Kevin> I've considered as a short term approach while working on > something > Kevin> better, but I don't think I'd use it in the long term. > > I don't understand that. You don't want anyone bookmarking your > interstitial! > Right. It looks like your code example leaves the session id in the URL. So, once the whole thing is complete, if someone copies the URL or bookmarks it, it includes that. Then when they return later, after the cache expires, the program concludes "something is wrong" and displays the form to them, rather than rerunning the query. Unless I'm missing something about how this code works. -kevin From merlyn at stonehenge.com Thu Aug 2 14:27:06 2007 From: merlyn at stonehenge.com (Randal L. Schwartz) Date: Thu, 02 Aug 2007 14:27:06 -0700 Subject: [Pdx-pm] Making web pages that display "working on your request" In-Reply-To: <8A125A31-7007-48D7-8A0B-5B5DB0D56A9B@scaldeferri.com> (Kevin Scaldeferri's message of "Thu, 2 Aug 2007 14:21:45 -0700") References: <91CDC702-3226-4DAF-B9BA-9A842996F498@scaldeferri.com> <86myxd76os.fsf@blue.stonehenge.com> <1D2D9783-8B4F-4CC1-BCEC-5E584C89AFF7@scaldeferri.com> <863az13bjt.fsf@blue.stonehenge.com> <8A125A31-7007-48D7-8A0B-5B5DB0D56A9B@scaldeferri.com> Message-ID: <86tzrh1vbp.fsf@blue.stonehenge.com> >>>>> "Kevin" == Kevin Scaldeferri writes: Kevin> Right. It looks like your code example leaves the session id in the Kevin> URL. So, once the whole thing is complete, if someone copies the URL Kevin> or bookmarks it, it includes that. Yeah, and they SHOULD NOT bookmark that. It's a unique page in the universe that means something only for a while. If they *do* bookmark it, they get what they deserve. Kevin> Then when they return later, after Kevin> the cache expires, the program concludes "something is wrong" and Kevin> displays the form to them, rather than rerunning the query. Well, it's a small matter of programming to fix *that*. Haven't you ever let a query sit too long in the middle of a session, and then come back later to find "your session has timed out... please start over"? Seems perfectly sensible to me. -- Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095 Perl/Unix/security consulting, Technical writing, Comedy, etc. etc. See PerlTraining.Stonehenge.com for onsite and open-enrollment Perl training! From schwern at pobox.com Thu Aug 2 17:15:29 2007 From: schwern at pobox.com (Michael G Schwern) Date: Thu, 02 Aug 2007 17:15:29 -0700 Subject: [Pdx-pm] "Seems perfectly sensible to me" (was Re: Making web pages that display "working on your request") In-Reply-To: <86tzrh1vbp.fsf@blue.stonehenge.com> References: <91CDC702-3226-4DAF-B9BA-9A842996F498@scaldeferri.com> <86myxd76os.fsf@blue.stonehenge.com> <1D2D9783-8B4F-4CC1-BCEC-5E584C89AFF7@scaldeferri.com> <863az13bjt.fsf@blue.stonehenge.com> <8A125A31-7007-48D7-8A0B-5B5DB0D56A9B@scaldeferri.com> <86tzrh1vbp.fsf@blue.stonehenge.com> Message-ID: <46B273A1.3070202@pobox.com> Randal L. Schwartz wrote: > Seems perfectly sensible to me. Excuse me while I rant for a moment. Coder: Expert programmer with years of experience on the details of web development and author of the code in question with detailed knowledge of its inner workings and weeks training yourself to its behaviors. User: None of the above. Coder: Can see inside the black box of how the site works. User: Cannot. Coder: Idea of how the site works is influenced by how it actually works. User: Idea of how the site works is influenced only by the site itself, how similar things work and how they want it to work. The user does not know what you know. They do not have the knowledge of how the device works. They do not have prejudices about how the device is supposed to work based on its internals. Coders see the inside (how it works) and outside (the interface). Users only see the outside. Coders tend to focus on the inside, that's what they work with. Users can only focus on the interface, that's all they can work with. Whenever I hear the phrase "seems perfectly sensible to me" come from the designer I immediately look for where the designer is allowing the ability to see inside the box influencing their thinking about what is and is not sensible. From darthsmily at verizon.net Thu Aug 2 18:02:47 2007 From: darthsmily at verizon.net (darthsmily) Date: Thu, 02 Aug 2007 18:02:47 -0700 Subject: [Pdx-pm] "Seems perfectly sensible to me" (was Re: Making web pages that display "working on your request") In-Reply-To: <46B273A1.3070202@pobox.com> References: <91CDC702-3226-4DAF-B9BA-9A842996F498@scaldeferri.com> <86myxd76os.fsf@blue.stonehenge.com> <1D2D9783-8B4F-4CC1-BCEC-5E584C89AFF7@scaldeferri.com> <863az13bjt.fsf@blue.stonehenge.com> <8A125A31-7007-48D7-8A0B-5B5DB0D56A9B@scaldeferri.com> <86tzrh1vbp.fsf@blue.stonehenge.com> <46B273A1.3070202@pobox.com> Message-ID: <46B27EB7.50204@verizon.net> ... "seems perfectly sensible to me" ..." Yes, that term is usually a big red flag. I would also like to add to your excellent statements. User: do have prejudices about how the device is supposed to work. It's not based on any internals, but they do have expectations. Michael G Schwern wrote: >Randal L. Schwartz wrote: > > >>Seems perfectly sensible to me. >> >> > >Excuse me while I rant for a moment. > >Coder: Expert programmer with years of experience on the details of web > development and author of the code in question with detailed knowledge > of its inner workings and weeks training yourself to its behaviors. > >User: None of the above. > > >Coder: Can see inside the black box of how the site works. > >User: Cannot. > > >Coder: Idea of how the site works is influenced by how it actually works. > >User: Idea of how the site works is influenced only by the site itself, > how similar things work and how they want it to work. > > >The user does not know what you know. > >They do not have the knowledge of how the device works. > >They do not have prejudices about how the device is supposed to work based on >its internals. > >Coders see the inside (how it works) and outside (the interface). > >Users only see the outside. > >Coders tend to focus on the inside, that's what they work with. > >Users can only focus on the interface, that's all they can work with. > > >Whenever I hear the phrase "seems perfectly sensible to me" come from the >designer I immediately look for where the designer is allowing the ability to >see inside the box influencing their thinking about what is and is not sensible. > >_______________________________________________ >Pdx-pm-list mailing list >Pdx-pm-list at pm.org >http://mail.pm.org/mailman/listinfo/pdx-pm-list > > > From alan at clueserver.org Thu Aug 2 18:24:34 2007 From: alan at clueserver.org (alan) Date: Thu, 2 Aug 2007 18:24:34 -0700 (PDT) Subject: [Pdx-pm] "Seems perfectly sensible to me" (was Re: Making web pages that display "working on your request") In-Reply-To: <46B273A1.3070202@pobox.com> References: <91CDC702-3226-4DAF-B9BA-9A842996F498@scaldeferri.com> <86myxd76os.fsf@blue.stonehenge.com> <1D2D9783-8B4F-4CC1-BCEC-5E584C89AFF7@scaldeferri.com> <863az13bjt.fsf@blue.stonehenge.com> <8A125A31-7007-48D7-8A0B-5B5DB0D56A9B@scaldeferri.com> <86tzrh1vbp.fsf@blue.stonehenge.com> <46B273A1.3070202@pobox.com> Message-ID: On Thu, 2 Aug 2007, Michael G Schwern wrote: > Whenever I hear the phrase "seems perfectly sensible to me" come from the > designer I immediately look for where the designer is allowing the ability to > see inside the box influencing their thinking about what is and is not sensible. Why do I keep hearing meowing in the box? -- "ANSI C says access to the padding fields of a struct is undefined. ANSI C also says that struct assignment is a memcpy. Therefore struct assignment in ANSI C is a violation of ANSI C..." - Alan Cox From kevin at scaldeferri.com Thu Aug 2 18:25:37 2007 From: kevin at scaldeferri.com (Kevin Scaldeferri) Date: Thu, 2 Aug 2007 18:25:37 -0700 Subject: [Pdx-pm] Making web pages that display "working on your request" In-Reply-To: <86tzrh1vbp.fsf@blue.stonehenge.com> References: <91CDC702-3226-4DAF-B9BA-9A842996F498@scaldeferri.com> <86myxd76os.fsf@blue.stonehenge.com> <1D2D9783-8B4F-4CC1-BCEC-5E584C89AFF7@scaldeferri.com> <863az13bjt.fsf@blue.stonehenge.com> <8A125A31-7007-48D7-8A0B-5B5DB0D56A9B@scaldeferri.com> <86tzrh1vbp.fsf@blue.stonehenge.com> Message-ID: <48D3190F-30CE-47BB-9FF3-3887F5644668@scaldeferri.com> On Aug 2, 2007, at 2:27 PM, Randal L. Schwartz wrote: >>>>>> "Kevin" == Kevin Scaldeferri writes: > > Kevin> Right. It looks like your code example leaves the session > id in the > Kevin> URL. So, once the whole thing is complete, if someone > copies the URL > Kevin> or bookmarks it, it includes that. > > Yeah, and they SHOULD NOT bookmark that. It's a unique page in the > universe > that means something only for a while. If they *do* bookmark it, > they get > what they deserve. Well, I'm working on a site where people explicitly are going to want to point other people to the results of queries, and most people expect to do that by "Cmd-L Cmd-C ... change applications... Cmd-V", and you just broke that. Now the user has to figure out how the heck to send a link to someone else via whatever custom method your website decided to use. > > Kevin> Then when they return later, after > Kevin> the cache expires, the program concludes "something is > wrong" and > Kevin> displays the form to them, rather than rerunning the query. > > Well, it's a small matter of programming to fix *that*. Haven't you > ever let a query sit too long in the middle of a session, and then > come > back later to find "your session has timed out... please start over"? Sure. I absolutely hate it when website do that. -kevin From tex at off.org Thu Aug 2 18:20:46 2007 From: tex at off.org (Austin Schutz) Date: Thu, 2 Aug 2007 18:20:46 -0700 Subject: [Pdx-pm] "Seems perfectly sensible to me" (was Re: Making web pages that display "working on your request") In-Reply-To: <46B27EB7.50204@verizon.net> References: <91CDC702-3226-4DAF-B9BA-9A842996F498@scaldeferri.com> <86myxd76os.fsf@blue.stonehenge.com> <1D2D9783-8B4F-4CC1-BCEC-5E584C89AFF7@scaldeferri.com> <863az13bjt.fsf@blue.stonehenge.com> <8A125A31-7007-48D7-8A0B-5B5DB0D56A9B@scaldeferri.com> <86tzrh1vbp.fsf@blue.stonehenge.com> <46B273A1.3070202@pobox.com> <46B27EB7.50204@verizon.net> Message-ID: <20070803012046.GS30720@gblx.net> On Thu, Aug 02, 2007 at 06:02:47PM -0700, darthsmily wrote: > ... "seems perfectly sensible to me" ..." > > Yes, that term is usually a big red flag. > > I would also like to add to your excellent statements. > > User: do have prejudices about how the device is supposed to work. It's > not based on any internals, but they do have expectations. > So.. after all the ranting, what's the proposed solution? Have the users take a survey for every minute UI change? Austin From merlyn at stonehenge.com Thu Aug 2 18:29:27 2007 From: merlyn at stonehenge.com (Randal L. Schwartz) Date: Thu, 02 Aug 2007 18:29:27 -0700 Subject: [Pdx-pm] Making web pages that display "working on your request" In-Reply-To: <48D3190F-30CE-47BB-9FF3-3887F5644668@scaldeferri.com> (Kevin Scaldeferri's message of "Thu, 2 Aug 2007 18:25:37 -0700") References: <91CDC702-3226-4DAF-B9BA-9A842996F498@scaldeferri.com> <86myxd76os.fsf@blue.stonehenge.com> <1D2D9783-8B4F-4CC1-BCEC-5E584C89AFF7@scaldeferri.com> <863az13bjt.fsf@blue.stonehenge.com> <8A125A31-7007-48D7-8A0B-5B5DB0D56A9B@scaldeferri.com> <86tzrh1vbp.fsf@blue.stonehenge.com> <48D3190F-30CE-47BB-9FF3-3887F5644668@scaldeferri.com> Message-ID: <86myx91k3s.fsf@blue.stonehenge.com> >>>>> "Kevin" == Kevin Scaldeferri writes: Kevin> Well, I'm working on a site where people explicitly are going to want Kevin> to point other people to the results of queries, and most people expect Kevin> to do that by "Cmd-L Cmd-C ... change applications... Cmd-V", and you Kevin> just broke that. Now the user has to figure out how the heck to send a Kevin> link to someone else via whatever custom method your website decided to Kevin> use. So you're planning on keeping the results of *every* query *ever* done? I hope you have a budget for infinite disk. And if so, you *do* want the session number in there, so that the results are referring to *that* session. I'm sorry that you haven't made your goals clear to me. I'm working across purposes because I don't get your point. -- Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095 Perl/Unix/security consulting, Technical writing, Comedy, etc. etc. See PerlTraining.Stonehenge.com for onsite and open-enrollment Perl training! From kevin at scaldeferri.com Thu Aug 2 18:40:06 2007 From: kevin at scaldeferri.com (Kevin Scaldeferri) Date: Thu, 2 Aug 2007 18:40:06 -0700 Subject: [Pdx-pm] Making web pages that display "working on your request" In-Reply-To: <86myx91k3s.fsf@blue.stonehenge.com> References: <91CDC702-3226-4DAF-B9BA-9A842996F498@scaldeferri.com> <86myxd76os.fsf@blue.stonehenge.com> <1D2D9783-8B4F-4CC1-BCEC-5E584C89AFF7@scaldeferri.com> <863az13bjt.fsf@blue.stonehenge.com> <8A125A31-7007-48D7-8A0B-5B5DB0D56A9B@scaldeferri.com> <86tzrh1vbp.fsf@blue.stonehenge.com> <48D3190F-30CE-47BB-9FF3-3887F5644668@scaldeferri.com> <86myx91k3s.fsf@blue.stonehenge.com> Message-ID: On Aug 2, 2007, at 6:29 PM, Randal L. Schwartz wrote: >>>>>> "Kevin" == Kevin Scaldeferri writes: > > Kevin> Well, I'm working on a site where people explicitly are > going to want > Kevin> to point other people to the results of queries, and most > people expect > Kevin> to do that by "Cmd-L Cmd-C ... change applications... Cmd- > V", and you > Kevin> just broke that. Now the user has to figure out how the > heck to send a > Kevin> link to someone else via whatever custom method your website > decided to > Kevin> use. > > So you're planning on keeping the results of *every* query *ever* > done? > I hope you have a budget for infinite disk. Well, no... I had already considered your basic solution and rejected it because I needed bookmarkable URLs before I sent my original email. I'm sorry I didn't explicitly mention that before going into talking about AJAX and such. (Also, ideally I'd be feeding back a blow-by-blow of what's going on to the user: "Queried server A... Got X from server A, querying servers B, C, and D...." until the query returns, because the users are the sorts who would like to get all the gritty details of what's going on.) It does occur to me, though, that because there's no hidden state in my application, just pure idempotent GETs, that there's no reason to cache using a random session key. I can cache data using a hash of the query parameters, which allows me to keep bookmarkable URLs, and do the meta-refresh trick. I'll probably hack that up quickly to stop people complaining too much until I can finish a more dynamic solution. -kevin From ben.hengst at gmail.com Thu Aug 2 18:52:29 2007 From: ben.hengst at gmail.com (benh) Date: Thu, 2 Aug 2007 18:52:29 -0700 Subject: [Pdx-pm] "Seems perfectly sensible to me" (was Re: Making web pages that display "working on your request") In-Reply-To: <20070803012046.GS30720@gblx.net> References: <91CDC702-3226-4DAF-B9BA-9A842996F498@scaldeferri.com> <86myxd76os.fsf@blue.stonehenge.com> <1D2D9783-8B4F-4CC1-BCEC-5E584C89AFF7@scaldeferri.com> <863az13bjt.fsf@blue.stonehenge.com> <8A125A31-7007-48D7-8A0B-5B5DB0D56A9B@scaldeferri.com> <86tzrh1vbp.fsf@blue.stonehenge.com> <46B273A1.3070202@pobox.com> <46B27EB7.50204@verizon.net> <20070803012046.GS30720@gblx.net> Message-ID: <85ddf48b0708021852n3e6afc3dhe93f5581420acea5@mail.gmail.com> > So.. after all the ranting, what's the proposed solution? Have the > users take a survey for every minute UI change? possibly, but that might be overkill in many situations. Theres lots of ways to get user feedback. Focus groups, beta testing, general surveys, bug reports, watching your competitors, the list can go on and on. I think that the point is that as developers we need to remember that we are writing things to solve a problem for a user. If kevin feels that he needs to have this page bookmarkable then I'll take it on good faith that he has made this decision with the user in mind. There is a reason for this feature to be there and just dismissing it is not a good way to keep the user happy. So my proposal for this is simple... keep the user in mind. The more communication with them thru any channel is going to make for a better solution to the issue your solving. -- benh~ From jeff at zeroclue.com Thu Aug 2 19:03:47 2007 From: jeff at zeroclue.com (Jeff Lavallee) Date: Thu, 02 Aug 2007 19:03:47 -0700 Subject: [Pdx-pm] "Seems perfectly sensible to me" (was Re: Making web pages that display "working on your request") In-Reply-To: <85ddf48b0708021852n3e6afc3dhe93f5581420acea5@mail.gmail.com> References: <91CDC702-3226-4DAF-B9BA-9A842996F498@scaldeferri.com> <86myxd76os.fsf@blue.stonehenge.com> <1D2D9783-8B4F-4CC1-BCEC-5E584C89AFF7@scaldeferri.com> <863az13bjt.fsf@blue.stonehenge.com> <8A125A31-7007-48D7-8A0B-5B5DB0D56A9B@scaldeferri.com> <86tzrh1vbp.fsf@blue.stonehenge.com> <46B273A1.3070202@pobox.com> <46B27EB7.50204@verizon.net> <20070803012046.GS30720@gblx.net> <85ddf48b0708021852n3e6afc3dhe93f5581420acea5@mail.gmail.com> Message-ID: <46B28D03.9080702@zeroclue.com> benh wrote: > So my proposal for this is simple... keep the user in mind. The more > communication with them thru any channel is going to make for a better > solution to the issue your solving. > Amen! This is something that's often overlooked, and that most agile development methodologies seem to have realized needs to be addressed. There's nothing worse than going through a long development cycle only to discover that the solution isn't quite what the users wanted, and addressing their complains is a lot harder than it would have been earlier on. jeff From ben.hengst at gmail.com Thu Aug 2 19:10:47 2007 From: ben.hengst at gmail.com (benh) Date: Thu, 2 Aug 2007 19:10:47 -0700 Subject: [Pdx-pm] Making web pages that display "working on your request" In-Reply-To: References: <91CDC702-3226-4DAF-B9BA-9A842996F498@scaldeferri.com> <86myxd76os.fsf@blue.stonehenge.com> <1D2D9783-8B4F-4CC1-BCEC-5E584C89AFF7@scaldeferri.com> <863az13bjt.fsf@blue.stonehenge.com> <8A125A31-7007-48D7-8A0B-5B5DB0D56A9B@scaldeferri.com> <86tzrh1vbp.fsf@blue.stonehenge.com> <48D3190F-30CE-47BB-9FF3-3887F5644668@scaldeferri.com> <86myx91k3s.fsf@blue.stonehenge.com> Message-ID: <85ddf48b0708021910t48f896a4je70248a676dd3bd7@mail.gmail.com> Is a session key really needed? if there going to book mark things then the session will likely be gone by then (or log in needed...) are you planning on havening the URL included enough that the query can be run at any state? If you already have that and are just trying to give the user some eyecandy while they wait then I think that there might be other ways around this. I know that when I was trying out the Yahoo Mail Beta, while the page loaded there was an animation that kept me entertained for the 30 seconds (or so) for things to load. Then you can use JS to manage the ajax call that happens under the wire, even if thats just getting back a 'done' msg that then kicks them off to another page to display the results. On 8/2/07, Kevin Scaldeferri wrote: > > On Aug 2, 2007, at 6:29 PM, Randal L. Schwartz wrote: > > >>>>>> "Kevin" == Kevin Scaldeferri writes: > > > > Kevin> Well, I'm working on a site where people explicitly are > > going to want > > Kevin> to point other people to the results of queries, and most > > people expect > > Kevin> to do that by "Cmd-L Cmd-C ... change applications... Cmd- > > V", and you > > Kevin> just broke that. Now the user has to figure out how the > > heck to send a > > Kevin> link to someone else via whatever custom method your website > > decided to > > Kevin> use. > > > > So you're planning on keeping the results of *every* query *ever* > > done? > > I hope you have a budget for infinite disk. > > > Well, no... > > I had already considered your basic solution and rejected it because > I needed bookmarkable URLs before I sent my original email. I'm > sorry I didn't explicitly mention that before going into talking > about AJAX and such. > > (Also, ideally I'd be feeding back a blow-by-blow of what's going on > to the user: "Queried server A... Got X from server A, querying > servers B, C, and D...." until the query returns, because the users > are the sorts who would like to get all the gritty details of what's > going on.) > > > It does occur to me, though, that because there's no hidden state in > my application, just pure idempotent GETs, that there's no reason to > cache using a random session key. I can cache data using a hash of > the query parameters, which allows me to keep bookmarkable URLs, and > do the meta-refresh trick. I'll probably hack that up quickly to > stop people complaining too much until I can finish a more dynamic > solution. > > > -kevin > > > _______________________________________________ > Pdx-pm-list mailing list > Pdx-pm-list at pm.org > http://mail.pm.org/mailman/listinfo/pdx-pm-list > -- benh~ From schwern at pobox.com Fri Aug 3 00:13:37 2007 From: schwern at pobox.com (Michael G Schwern) Date: Fri, 03 Aug 2007 00:13:37 -0700 Subject: [Pdx-pm] "Seems perfectly sensible to me" (was Re: Making web pages that display "working on your request") In-Reply-To: <20070803012046.GS30720@gblx.net> References: <91CDC702-3226-4DAF-B9BA-9A842996F498@scaldeferri.com> <86myxd76os.fsf@blue.stonehenge.com> <1D2D9783-8B4F-4CC1-BCEC-5E584C89AFF7@scaldeferri.com> <863az13bjt.fsf@blue.stonehenge.com> <8A125A31-7007-48D7-8A0B-5B5DB0D56A9B@scaldeferri.com> <86tzrh1vbp.fsf@blue.stonehenge.com> <46B273A1.3070202@pobox.com> <46B27EB7.50204@verizon.net> <20070803012046.GS30720@gblx.net> Message-ID: <46B2D5A1.5030308@pobox.com> Austin Schutz wrote: > So.. after all the ranting, what's the proposed solution? Have the > users take a survey for every minute UI change? Before you can find a real solution must first understand what the real problem is. With a proposed solution like that, I'm not sure you understand. That's ok, it takes a number of blows to sink in. User focus groups vetting all your changes doesn't solve the real problem. The programmers are designing unusable features, they're doing the wrong thing. Then the "user interface group" comes along, points out what's wrong and the programmers have to correct their mistakes. Then the programmers do some more wrong things and the UI group fixes them. Its like a blind driver with a guy in the back seat yelling "LEFT!" "RIGHT!" "LEFT!" "RIGHT!" zig-zagging down the road, covering twice as much ground as going straight should, not really understanding why he's turning the wheel, hitting the odd light pole and pedestrian along the way. The solution isn't to develop a better signaling system between the back seat and the driver, the solution it to take off the blindfold. A solution is to "Play Dumb". http://schwern.org/~schwern/talks/What_Works/full_slides/slide053.html This involves being aware of what you know that the user does not and switching off those parts of your brain while using the product. It takes time and effort. It takes sitting down with the user and seeing how they use the product. It takes more than I can cover in an email. :) There's an entire discipline for this called Human Interface Design or Interaction Design and Eric can probably tell you more. To that end, I highly recommend reading "The Design Of Everyday Things" by Donald Norman particularly focusing on the discussion of how a user model is formed. If you ever wonder how devices are designed that don't need instructions, read that book. The other two which keep getting mentioned, but I haven't read myself, are "Don't Make Me Think" and "The Inmates Are Running The Asylum". And that's someone's cue to fill in about those books. From scratchcomputing at gmail.com Fri Aug 3 00:50:24 2007 From: scratchcomputing at gmail.com (Eric Wilhelm) Date: Fri, 3 Aug 2007 00:50:24 -0700 Subject: [Pdx-pm] perlsurvey.org In-Reply-To: <20070727002909.GA20212@joshheumann.com> References: <20070727002909.GA20212@joshheumann.com> Message-ID: <200708030050.24482.ewilhelm@cpan.org> # from Josh Heumann # on Thursday 26 July 2007 05:29 pm: >The survey can be found at: http://perlsurvey.org Not to nag or anything, but I'm just getting around to taking this myself, so I figure you (no, not you, *you*) haven't either. http://perlsurvey.org Hold on, I'll take it right now... There. About 5 minutes is right, but overall 9 minutes. You might want to start with the e-mail thing and then go get some coffee while you wait for the validation to arrive. --Eric -- Don't worry about what anybody else is going to do. The best way to predict the future is to invent it. --Alan Kay --------------------------------------------------- http://scratchcomputing.com --------------------------------------------------- From scratchcomputing at gmail.com Fri Aug 3 16:24:12 2007 From: scratchcomputing at gmail.com (Eric Wilhelm) Date: Fri, 3 Aug 2007 16:24:12 -0700 Subject: [Pdx-pm] it ain't rocket science In-Reply-To: <46B2D5A1.5030308@pobox.com> References: <91CDC702-3226-4DAF-B9BA-9A842996F498@scaldeferri.com> <20070803012046.GS30720@gblx.net> <46B2D5A1.5030308@pobox.com> Message-ID: <200708031624.13158.ewilhelm@cpan.org> # from Michael G Schwern # on Friday 03 August 2007 12:13 am: >Before you can find a real solution must first understand what the > real problem is. Exhibit A: The classic "this site has moved" page, but with absolutely no textual mention of the new url (by rocket scientists.) http://www.estec.esa.int/thermal/ I guess the point is: absolutely the first thing you should do (whenever it is remotely feasible) is try it. I suppose rocket scientists don't get enough opportunities to do that, so they forget how. --Eric -- The opinions expressed in this e-mail were randomly generated by the computer and do not necessarily reflect the views of its owner. --Management --------------------------------------------------- http://scratchcomputing.com --------------------------------------------------- From joshua at keroes.com Fri Aug 3 17:48:18 2007 From: joshua at keroes.com (Joshua Keroes) Date: Fri, 3 Aug 2007 17:48:18 -0700 Subject: [Pdx-pm] Testing STDIN Message-ID: I have a mock router class that prints to STDOUT and reads from STDIN. I'm a little unsure about how to test this. The mock router is a state machine (implemented with Dave Wheeler's FSA::Rules). Each state typically prints a prompt, e.g. Username: and waits for the user to type something, e.g. chomp( my $in = ); And of course, that will block while it waits for user-input. Seems like I need to fork the router process off into one process and connect it to another process that will pretend to be a fake user. Is there a cleaner way to test this? Thanks, Joshua From scratchcomputing at gmail.com Fri Aug 3 18:55:17 2007 From: scratchcomputing at gmail.com (Eric Wilhelm) Date: Fri, 3 Aug 2007 18:55:17 -0700 Subject: [Pdx-pm] Testing STDIN In-Reply-To: References: Message-ID: <200708031855.17767.ewilhelm@cpan.org> # from Joshua Keroes # on Friday 03 August 2007 05:48 pm: >Each state typically prints a prompt, e.g. > >? ? Username: > >and waits for the user to type something, e.g. > >? ? chomp( my $in = ); > >And of course, that will block while it waits for user-input. >Seems like I need to fork the router process off into one process and >connect it to another process that will pretend to be a fake user. You could either make $stdin = \*STDIN and have some way to override that (testing from within.) Alternatively, without disturbing your code (testing from without) use Expect or just pipe it some input. It seems like either way is going to require a driver process unless your prompts are known and invariant for the test condition (e.g. a pre-created list of expected prompts and answers.) my $answers = join("\n", @answers); open(my $in, '<', \$answers); $thing->set_stdin($in); my $prompts; open(my $out, '>', \$prompts); $thing->set_stdout($out); eval {$thing->run}; ok(! $@, "yay"); is($prompts, $expected); Or thereabouts. (You know, with bugs and syntax errors removed.) --Eric -- As an old bass player friend of mine used to say: throw money, don't clap. --Tony Parisi --------------------------------------------------- http://scratchcomputing.com --------------------------------------------------- From darthsmily at verizon.net Fri Aug 3 19:54:03 2007 From: darthsmily at verizon.net (darthsmily) Date: Fri, 03 Aug 2007 19:54:03 -0700 Subject: [Pdx-pm] it ain't rocket science In-Reply-To: <200708031624.13158.ewilhelm@cpan.org> References: <91CDC702-3226-4DAF-B9BA-9A842996F498@scaldeferri.com> <20070803012046.GS30720@gblx.net> <46B2D5A1.5030308@pobox.com> <200708031624.13158.ewilhelm@cpan.org> Message-ID: <46B3EA4B.30809@verizon.net> There isn't a link, but it does say: " " Eric Wilhelm wrote: ># from Michael G Schwern ># on Friday 03 August 2007 12:13 am: > > > >>Before you can find a real solution must first understand what the >>real problem is. >> >> > >Exhibit A: The classic "this site has moved" page, but with absolutely >no textual mention of the new url (by rocket scientists.) > > http://www.estec.esa.int/thermal/ > >I guess the point is: absolutely the first thing you should do >(whenever it is remotely feasible) is > > try it. > >I suppose rocket scientists don't get enough opportunities to do that, >so they forget how. > >--Eric > > From pagaltzis at gmx.de Fri Aug 3 21:45:30 2007 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Sat, 4 Aug 2007 06:45:30 +0200 Subject: [Pdx-pm] Making web pages that display "working on your request" In-Reply-To: <86myx91k3s.fsf@blue.stonehenge.com> References: <91CDC702-3226-4DAF-B9BA-9A842996F498@scaldeferri.com> <86myxd76os.fsf@blue.stonehenge.com> <1D2D9783-8B4F-4CC1-BCEC-5E584C89AFF7@scaldeferri.com> <863az13bjt.fsf@blue.stonehenge.com> <8A125A31-7007-48D7-8A0B-5B5DB0D56A9B@scaldeferri.com> <86tzrh1vbp.fsf@blue.stonehenge.com> <48D3190F-30CE-47BB-9FF3-3887F5644668@scaldeferri.com> <86myx91k3s.fsf@blue.stonehenge.com> Message-ID: <20070804044530.GE21866@klangraum> * Randal L. Schwartz [2007-08-03 17:00]: > Kevin Scaldeferri writes: > > Well, I'm working on a site where people explicitly are going > > to want to point other people to the results of queries, and > > most people expect to do that by "Cmd-L Cmd-C ... change > > applications... Cmd-V", and you just broke that. Now the > > user has to figure out how the heck to send a link to someone > > else via whatever custom method your website decided to use. > > So you're planning on keeping the results of *every* query > *ever* done? I hope you have a budget for infinite disk. Did re-executing the query seriously never occur to you? Regards, -- Aristotle Pagaltzis // From perl-pm at joshheumann.com Sat Aug 4 00:02:05 2007 From: perl-pm at joshheumann.com (Josh Heumann) Date: Sat, 4 Aug 2007 00:02:05 -0700 Subject: [Pdx-pm] perlsurvey.org In-Reply-To: <200708030050.24482.ewilhelm@cpan.org> References: <20070727002909.GA20212@joshheumann.com> <200708030050.24482.ewilhelm@cpan.org> Message-ID: <20070804070204.GA2150@joshheumann.com> > You might want to start with the e-mail thing and then go get some > coffee while you wait for the validation to arrive. Hey, it does have to come all the way from Australia. I had to send this email last Thursday. J From schwern at pobox.com Sat Aug 4 15:19:45 2007 From: schwern at pobox.com (Michael G Schwern) Date: Sat, 04 Aug 2007 15:19:45 -0700 Subject: [Pdx-pm] Testing STDIN In-Reply-To: References: Message-ID: <46B4FB81.6080107@pobox.com> Joshua Keroes wrote: > I have a mock router class that prints to STDOUT and reads from STDIN. > I'm a little unsure about how to test this. > > The mock router is a state machine (implemented with Dave Wheeler's > FSA::Rules). Each state typically prints a prompt, e.g. > > Username: > > and waits for the user to type something, e.g. > > chomp( my $in = ); > > And of course, that will block while it waits for user-input. > Seems like I need to fork the router process off into one process and > connect it to another process that will pretend to be a fake user. > > Is there a cleaner way to test this? MakeMaker's test of prompt() shows how to tie STDIN. http://search.cpan.org/src/MSCHWERN/ExtUtils-MakeMaker-6.36/t/prompt.t SKIP: { skip "eof() doesn't honor ties in 5.5.3", 3 if $] < 5.006; $ENV{PERL_MM_USE_DEFAULT} = 0; close STDIN; my $stdin = tie *STDIN, 'TieIn' or die; $stdin->write("From STDIN"); ok( !-t STDIN, 'STDIN not a tty' ); is( prompt("Foo?", 'Bar!'), 'From STDIN', 'from STDIN' ); like( $stdout->read, qr/^Foo\? \[Bar!\]\s*$/, ' question' ); } 1) close STDIN, though I don't remember why this was necessary 2) tie STDIN using TieIn 3) Put some stuff on STDIN using write() 4) Read from STDIN You can steal TieIn for yourself. http://search.cpan.org/src/MSCHWERN/ExtUtils-MakeMaker-6.36/t/lib/TieIn.pm From david at kineticode.com Mon Aug 6 10:33:37 2007 From: david at kineticode.com (David E. Wheeler) Date: Mon, 6 Aug 2007 10:33:37 -0700 Subject: [Pdx-pm] Testing STDIN In-Reply-To: <46B4FB81.6080107@pobox.com> References: <46B4FB81.6080107@pobox.com> Message-ID: On Aug 4, 2007, at 15:19, Michael G Schwern wrote: > 1) close STDIN, though I don't remember why this was necessary > 2) tie STDIN using TieIn > 3) Put some stuff on STDIN using write() > 4) Read from STDIN > > You can steal TieIn for yourself. > http://search.cpan.org/src/MSCHWERN/ExtUtils-MakeMaker-6.36/t/lib/ > TieIn.pm It'd be worth it for someone to put this in a module, the way that someone put your TieOut.pm module in Test::Output. Best, David From scratchcomputing at gmail.com Tue Aug 7 00:29:26 2007 From: scratchcomputing at gmail.com (Seven till Seven) Date: Tue, 7 Aug 2007 00:29:26 -0700 Subject: [Pdx-pm] August meeting Tonight Message-ID: <200708070029.27233.ewilhelm@cpan.org> 6:53pm at FreeGeek -- 1731 SE 10th Ave. speaker: You topic: OSCON Recap This will be a round-table discussion meeting. Bring any interesting tidbits or other news that you collected at OSCON. Not really lightning talks, more like enlightening discussion. You may of course attempt to give a lightning talk if it can be accomplished in one sentence without the rest of the room catching-on (slides optional.) --Eric -- http://pdx.pm.org From scratchcomputing at gmail.com Tue Aug 7 00:29:26 2007 From: scratchcomputing at gmail.com (Seven till Seven) Date: Tue, 7 Aug 2007 00:29:26 -0700 Subject: [Pdx-pm] August meeting Tonight Message-ID: <200708070029.27233.ewilhelm@cpan.org> 6:53pm at FreeGeek -- 1731 SE 10th Ave. speaker: You topic: OSCON Recap This will be a round-table discussion meeting. Bring any interesting tidbits or other news that you collected at OSCON. Not really lightning talks, more like enlightening discussion. You may of course attempt to give a lightning talk if it can be accomplished in one sentence without the rest of the room catching-on (slides optional.) --Eric -- http://pdx.pm.org From kevin at scaldeferri.com Tue Aug 7 01:06:41 2007 From: kevin at scaldeferri.com (Kevin Scaldeferri) Date: Tue, 7 Aug 2007 01:06:41 -0700 Subject: [Pdx-pm] August meeting Tonight In-Reply-To: <200708070029.27233.ewilhelm@cpan.org> References: <200708070029.27233.ewilhelm@cpan.org> Message-ID: <9E631332-96F0-4E22-A764-5EE8509DB49A@scaldeferri.com> Err... really? Shouldn't it be more like tomorrow? On Aug 7, 2007, at 12:29 AM, Seven till Seven wrote: > > 6:53pm at FreeGeek -- 1731 SE 10th Ave. From scratchcomputing at gmail.com Tue Aug 7 00:50:36 2007 From: scratchcomputing at gmail.com (Seven till Seven) Date: Tue, 7 Aug 2007 00:50:36 -0700 Subject: [Pdx-pm] August meeting on a night very soon after Tonight In-Reply-To: <200708070029.27233.ewilhelm@cpan.org> References: <200708070029.27233.ewilhelm@cpan.org> Message-ID: <200708070050.36417.ewilhelm@cpan.org> # from Seven till Seven #Tuesday 07 August 2007 12:29 am: >6:53pm at FreeGeek -- 1731 SE 10th Ave. That was supposed to be a 'do not open until Wednesday, August 8th' sort of thing. Sorry for the scare, enjoy your Tuesday. --Eric -- http://pdx.pm.org From scratchcomputing at gmail.com Tue Aug 7 00:50:36 2007 From: scratchcomputing at gmail.com (Seven till Seven) Date: Tue, 7 Aug 2007 00:50:36 -0700 Subject: [Pdx-pm] August meeting on a night very soon after Tonight In-Reply-To: <200708070029.27233.ewilhelm@cpan.org> References: <200708070029.27233.ewilhelm@cpan.org> Message-ID: <200708070050.36417.ewilhelm@cpan.org> # from Seven till Seven #Tuesday 07 August 2007 12:29 am: >6:53pm at FreeGeek -- 1731 SE 10th Ave. That was supposed to be a 'do not open until Wednesday, August 8th' sort of thing. Sorry for the scare, enjoy your Tuesday. --Eric -- http://pdx.pm.org From ben.hengst at gmail.com Tue Aug 7 01:19:14 2007 From: ben.hengst at gmail.com (benh) Date: Tue, 7 Aug 2007 01:19:14 -0700 Subject: [Pdx-pm] August meeting Tonight In-Reply-To: <9E631332-96F0-4E22-A764-5EE8509DB49A@scaldeferri.com> References: <200708070029.27233.ewilhelm@cpan.org> <9E631332-96F0-4E22-A764-5EE8509DB49A@scaldeferri.com> Message-ID: <85ddf48b0708070119q74c0c52fje98b6d008e6c2426@mail.gmail.com> good question??? have the meetings been moved to tues? On 8/7/07, Kevin Scaldeferri wrote: > Err... really? Shouldn't it be more like tomorrow? > > On Aug 7, 2007, at 12:29 AM, Seven till Seven wrote: > > > > > 6:53pm at FreeGeek -- 1731 SE 10th Ave. > > _______________________________________________ > Pdx-pm-list mailing list > Pdx-pm-list at pm.org > http://mail.pm.org/mailman/listinfo/pdx-pm-list > -- benh~ From scratchcomputing at gmail.com Tue Aug 7 00:29:26 2007 From: scratchcomputing at gmail.com (Seven till Seven) Date: Tue, 7 Aug 2007 00:29:26 -0700 Subject: [Pdx-pm] August meeting Tonight Message-ID: <200708070029.27233.ewilhelm@cpan.org> 6:53pm at FreeGeek -- 1731 SE 10th Ave. speaker: You topic: OSCON Recap This will be a round-table discussion meeting. Bring any interesting tidbits or other news that you collected at OSCON. Not really lightning talks, more like enlightening discussion. You may of course attempt to give a lightning talk if it can be accomplished in one sentence without the rest of the room catching-on (slides optional.) --Eric -- http://pdx.pm.org From scratchcomputing at gmail.com Tue Aug 7 00:29:26 2007 From: scratchcomputing at gmail.com (Seven till Seven) Date: Tue, 7 Aug 2007 00:29:26 -0700 Subject: [Pdx-pm] August meeting Tonight Message-ID: <200708070029.27233.ewilhelm@cpan.org> 6:53pm at FreeGeek -- 1731 SE 10th Ave. speaker: You topic: OSCON Recap This will be a round-table discussion meeting. Bring any interesting tidbits or other news that you collected at OSCON. Not really lightning talks, more like enlightening discussion. You may of course attempt to give a lightning talk if it can be accomplished in one sentence without the rest of the room catching-on (slides optional.) --Eric -- http://pdx.pm.org From kevin at scaldeferri.com Tue Aug 7 01:06:41 2007 From: kevin at scaldeferri.com (Kevin Scaldeferri) Date: Tue, 7 Aug 2007 01:06:41 -0700 Subject: [Pdx-pm] August meeting Tonight In-Reply-To: <200708070029.27233.ewilhelm@cpan.org> References: <200708070029.27233.ewilhelm@cpan.org> Message-ID: <9E631332-96F0-4E22-A764-5EE8509DB49A@scaldeferri.com> Err... really? Shouldn't it be more like tomorrow? On Aug 7, 2007, at 12:29 AM, Seven till Seven wrote: > > 6:53pm at FreeGeek -- 1731 SE 10th Ave. From scratchcomputing at gmail.com Tue Aug 7 10:04:53 2007 From: scratchcomputing at gmail.com (Eric Wilhelm) Date: Tue, 7 Aug 2007 10:04:53 -0700 Subject: [Pdx-pm] August meeting Tomorrow night In-Reply-To: <85ddf48b0708070119q74c0c52fje98b6d008e6c2426@mail.gmail.com> References: <200708070029.27233.ewilhelm@cpan.org> <9E631332-96F0-4E22-A764-5EE8509DB49A@scaldeferri.com> <85ddf48b0708070119q74c0c52fje98b6d008e6c2426@mail.gmail.com> Message-ID: <200708071004.53692.ewilhelm@cpan.org> # from benh # on Tuesday 07 August 2007 01:19 am: >On 8/7/07, Kevin Scaldeferri wrote: >> Err... really? ?Shouldn't it be more like tomorrow? >> >> On Aug 7, 2007, at 12:29 AM, Seven till Seven wrote: >good question??? have the meetings been moved to tues? Yeah. I got trigger-happy whilst calendar-impaired. Did my retraction not arrive? Today is Tuesday. Meeting tomorrow. Move along. No Wednesday to see here. --Eric -- Atavism n: The recurrence of any peculiarity or disease of an ancestor in a subsequent generation, usually due to genetic recombination. --------------------------------------------------- http://scratchcomputing.com --------------------------------------------------- From kyle at cepaso.com Tue Aug 7 10:20:46 2007 From: kyle at cepaso.com (Kyle Dawkins) Date: Tue, 7 Aug 2007 10:20:46 -0700 Subject: [Pdx-pm] Some filehandle help needed Message-ID: Hi all It's been a long time since I've had to diddle with filehandles with any degree of complexity... I work exclusively in mod_perl land and never need to deal with them. Something has come up where I need to connect to a /dev/tty from mod_perl. This works (feel free to tell me a better way to deal with the fh, too... I need to use getc, so using IO::Handle seemed the best way to do it... maybe that's my prob?): ... my $_tty = _tty(); open my $_fout, "> /dev/$_tty"; my $fout = IO::Handle->new_from_fd($_fout, "w"); $fout->autoflush(1); ... do stuff with $fout ... but this doesn't: sub fout { my $_tty = _tty(); open my $_fout, "> /dev/$_tty"; my $fout = IO::Handle->new_from_fd($_fout, "w"); $fout->autoflush(1); return $fout; } ... my $fout = fout(); ... do stuff with $fout ... When I try to do stuff with $fout returned from a function, nothing happens. The problem is, I really need to be able to move the code that create the fh into a method in another package, hence my problem. Perl 5.8.6 on OSX 10.4.9, Apache 1.3.33 with mod_perl 1.2.9 Any help appreciated! Kyle Dawkins kyle at cepaso.com From tex at off.org Tue Aug 7 10:26:43 2007 From: tex at off.org (Austin Schutz) Date: Tue, 7 Aug 2007 10:26:43 -0700 Subject: [Pdx-pm] Some filehandle help needed In-Reply-To: References: Message-ID: <20070807172643.GD2344@gblx.net> On Tue, Aug 07, 2007 at 10:20:46AM -0700, Kyle Dawkins wrote: > Hi all > > It's been a long time since I've had to diddle with filehandles with > any degree of complexity... I work exclusively in mod_perl land and > never need to deal with them. Something has come up where I need to > connect to a /dev/tty from mod_perl. > http://search.cpan.org/search?query=tty&mode=all Austin From tex at off.org Tue Aug 7 10:30:53 2007 From: tex at off.org (Austin Schutz) Date: Tue, 7 Aug 2007 10:30:53 -0700 Subject: [Pdx-pm] Some filehandle help needed In-Reply-To: <20070807172643.GD2344@gblx.net> References: <20070807172643.GD2344@gblx.net> Message-ID: <20070807173053.GE2344@gblx.net> On Tue, Aug 07, 2007 at 10:26:43AM -0700, Austin Schutz wrote: > On Tue, Aug 07, 2007 at 10:20:46AM -0700, Kyle Dawkins wrote: > > Hi all > > > > It's been a long time since I've had to diddle with filehandles with > > any degree of complexity... I work exclusively in mod_perl land and > > never need to deal with them. Something has come up where I need to > > connect to a /dev/tty from mod_perl. > > > > > http://search.cpan.org/search?query=tty&mode=all > > Sorry, didn't mean to send that without comments. You probably be best served by using a shim library to access it, such as IO::Tty. One of the nice features is that it is cross platform, which is surprisingly difficult without it. Austin From jeff at zeroclue.com Tue Aug 7 10:59:36 2007 From: jeff at zeroclue.com (Jeff Lavallee) Date: Tue, 07 Aug 2007 10:59:36 -0700 Subject: [Pdx-pm] August meeting on a night very soon after Tonight In-Reply-To: <200708070050.36417.ewilhelm@cpan.org> References: <200708070029.27233.ewilhelm@cpan.org> <200708070050.36417.ewilhelm@cpan.org> Message-ID: <46B8B308.7000606@zeroclue.com> And here I just thought Wednesday came early this week... Seven till Seven wrote: > # from Seven till Seven > #Tuesday 07 August 2007 12:29 am: > > >> 6:53pm at FreeGeek -- 1731 SE 10th Ave. >> > > That was supposed to be a 'do not open until Wednesday, August 8th' sort > of thing. Sorry for the scare, enjoy your Tuesday. > > --Eric > From kyle at cepaso.com Tue Aug 7 11:10:47 2007 From: kyle at cepaso.com (Kyle Dawkins) Date: Tue, 7 Aug 2007 11:10:47 -0700 Subject: [Pdx-pm] Some filehandle help needed In-Reply-To: <20070807173053.GE2344@gblx.net> References: <20070807172643.GD2344@gblx.net> <20070807173053.GE2344@gblx.net> Message-ID: Thanks for the tip. Cross-platform is not really relevant to me; it only needs to work in OSX. I am more curious as to why I can't create the filehandle and return it, but if I do it inline, it works fine... anyone? Kyle On Aug 7, 2007, at 10:30 AM, Austin Schutz wrote: > On Tue, Aug 07, 2007 at 10:26:43AM -0700, Austin Schutz wrote: >> On Tue, Aug 07, 2007 at 10:20:46AM -0700, Kyle Dawkins wrote: >>> Hi all >>> >>> It's been a long time since I've had to diddle with filehandles with >>> any degree of complexity... I work exclusively in mod_perl land and >>> never need to deal with them. Something has come up where I need to >>> connect to a /dev/tty from mod_perl. >>> >> >> >> http://search.cpan.org/search?query=tty&mode=all >> >> > > Sorry, didn't mean to send that without comments. You probably be > best served by using a shim library to access it, such as IO::Tty. One > of the nice features is that it is cross platform, which is > surprisingly > difficult without it. > > Austin From tex at off.org Tue Aug 7 11:50:15 2007 From: tex at off.org (Austin Schutz) Date: Tue, 7 Aug 2007 11:50:15 -0700 Subject: [Pdx-pm] Some filehandle help needed In-Reply-To: References: <20070807172643.GD2344@gblx.net> <20070807173053.GE2344@gblx.net> Message-ID: <20070807185015.GF2344@gblx.net> On Tue, Aug 07, 2007 at 11:10:47AM -0700, Kyle Dawkins wrote: > Thanks for the tip. > > Cross-platform is not really relevant to me; it only needs to work in > OSX. > But it is relevant for this reason: dealing with ttys is slightly different on each unix platform. Unless you know the ins and outs of how ttys act on your specific platform using a shim library may save you headaches. > I am more curious as to why I can't create the filehandle and return > it, but if I do it inline, it works fine... anyone? > Not sure. It looks sane enough from here. Austin From schwern at pobox.com Tue Aug 7 14:52:01 2007 From: schwern at pobox.com (Michael G Schwern) Date: Tue, 07 Aug 2007 14:52:01 -0700 Subject: [Pdx-pm] Some filehandle help needed In-Reply-To: References: Message-ID: <46B8E981.8050901@pobox.com> Kyle Dawkins wrote: > This works (feel free to tell me a better way to deal with the fh, > too... I need to use getc, so using IO::Handle seemed the best way to > do it... maybe that's my prob?): > > ... > my $_tty = _tty(); > open my $_fout, "> /dev/$_tty"; > my $fout = IO::Handle->new_from_fd($_fout, "w"); Though its not clear from the docs, new_from_fd() takes a file *descriptor* not a file handle. Yes, its a ridiculous interface for a Perl module. My guess as to why it works inline but not in a subroutine is that $fout does not actually store a reference to $_fout but just its fileno. Once $_fout goes out of scope the filehandle closes. That's my guess. IO::Handle was written in the days before lexical filehandles and doesn't seem to have caught up. From kellert at ohsu.edu Tue Aug 7 16:22:14 2007 From: kellert at ohsu.edu (Thomas Keller) Date: Tue, 7 Aug 2007 16:22:14 -0700 Subject: [Pdx-pm] Fwd: [OS X Emacs] Man pages formatting problem in Aquamacs WoMan. References: <5B3ABA71-1BB1-4E98-8E5B-D24C90DE4C6E@Web.DE> Message-ID: <1D957776-4B7F-415B-9CAD-430C1A8E5084@ohsu.edu> Hi, I've been trying out aquamacs emacs, it seems to work great, though I've only done simple stuff so far. Anyway, thought you'd enjoy the quote from the Sears Catalog, 1897. 8-) Tom Thomas J Keller PhD kellert at ohsu.edu 4-2442 Begin forwarded message: > Am 05.08.2007 um 15:59 schrieb David Reitter: > >> Well, ideally somebody would make it work with the BSD style man >> files. It can't be that hard... > > It sure will: emulation of eqn or tbl and more is needed > > -- > Mit friedvollen Gr??en > > Pete > > "If you don't find it in the index, look very carefully through the > entire > catalogue." ? Sears, Roebuck, and Co., Consumer's Guide, > 1897 > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.pm.org/pipermail/pdx-pm-list/attachments/20070807/46a7e87d/attachment.html From scratchcomputing at gmail.com Wed Aug 8 13:11:40 2007 From: scratchcomputing at gmail.com (Seven till Seven) Date: Wed, 8 Aug 2007 13:11:40 -0700 Subject: [Pdx-pm] August meeting (really) Tonight Message-ID: <200708081311.40578.ewilhelm@cpan.org> It really is Wednesday now. 6:53pm at FreeGeek -- 1731 SE 10th Ave. speaker: You topic: OSCON Recap This will be a round-table discussion meeting. Bring any interesting tidbits or other news that you collected at OSCON. Not really lightning talks, more like enlightening discussion. You may of course attempt to give a lightning talk if it can be accomplished in one sentence without the rest of the room catching-on (slides optional.) --Eric -- http://pdx.pm.org From allison at perl.org Wed Aug 8 18:50:43 2007 From: allison at perl.org (Allison Randal) Date: Wed, 08 Aug 2007 18:50:43 -0700 Subject: [Pdx-pm] tonight: relocated on account of cleaning Message-ID: <46BA72F3.3070301@perl.org> The Perl Mongers meeting is relocating to the Lucky Lab tonight, while Free Geek gets the carpets cleaned. Allison From kevin at scaldeferri.com Wed Aug 8 23:24:18 2007 From: kevin at scaldeferri.com (Kevin Scaldeferri) Date: Wed, 8 Aug 2007 23:24:18 -0700 Subject: [Pdx-pm] [Mostly OT] DTrace on Linux Message-ID: This evening I was talking to a few people about how cool DTrace is, and how unfortunate it is that it's not being ported to Linux. I was under the impression that there were technical impedance mismatches between Solaris and Linux that prevented it, but that's not true. Apparently the real problem is a big licensing pissing war. *cries* http://blogs.sun.com/ahl/entry/dtrace_knockoffs (read the comments) -kevin obPerl: Also in reading tonight I found that in addition to Ruby, there's also now DTrace support in PHP and Java. (And it seems that someone has made patches for Python, although I don't think it's made it into a release yet.) It would be great if Perl got caught up in this regard. From chromatic at wgz.org Wed Aug 8 23:32:00 2007 From: chromatic at wgz.org (chromatic) Date: Wed, 8 Aug 2007 23:32:00 -0700 Subject: [Pdx-pm] [Mostly OT] DTrace on Linux In-Reply-To: References: Message-ID: <200708082332.00594.chromatic@wgz.org> On Wednesday 08 August 2007 23:24:18 Kevin Scaldeferri wrote: > Apparently the real problem is a big licensing pissing war. ?*cries* This is why you don't write your own license. (Actually, this is why Sun do... er, did. Then again, the file-scoped bit of the MPL is a nice feature in a copyleft license.) -- c From publiustemp-pdxpm at yahoo.com Thu Aug 9 05:23:55 2007 From: publiustemp-pdxpm at yahoo.com (Ovid) Date: Thu, 9 Aug 2007 05:23:55 -0700 (PDT) Subject: [Pdx-pm] Job in Amsterdam Message-ID: <912984.19105.qm@web60815.mail.yahoo.com> Hi folks, A few of you have contacted me offlist about how to get a job in Europe. Here's how: http://use.perl.org/~kane/journal/34055 They're hiring in Amsterdam and they're offering a relocation package. Having previously lived in Amsterdam, I can tell you that it's a beautiful city, virtually every speaks fluent English (better than some people on this list, I might add :) and Amsterdam offers quite a bit more than what her reputation might imply. Cheers, Ovid -- Buy the book - http://www.oreilly.com/catalog/perlhks/ Perl and CGI - http://users.easystreet.com/ovid/cgi_course/ Personal blog - http://publius-ovidius.livejournal.com/ Tech blog - http://use.perl.org/~Ovid/journal/ From kevin at scaldeferri.com Thu Aug 9 09:30:57 2007 From: kevin at scaldeferri.com (Kevin Scaldeferri) Date: Thu, 9 Aug 2007 09:30:57 -0700 Subject: [Pdx-pm] [Mostly OT] DTrace on Linux In-Reply-To: <200708082332.00594.chromatic@wgz.org> References: <200708082332.00594.chromatic@wgz.org> Message-ID: On Aug 8, 2007, at 11:32 PM, chromatic wrote: > On Wednesday 08 August 2007 23:24:18 Kevin Scaldeferri wrote: > >> Apparently the real problem is a big licensing pissing war. *cries* > > This is why you don't write your own license. It seems like that cat is already well out of the bag, what with a few dozen OSI approved licenses at this point. Figuring out how to get projects with varying licenses to play together seems like a major and important challenge for the community as a whole. Personally, while I'm neither a lawyer nor a kernel hacker, I'm puzzled by the argument that a CDDL user space and kernel module with GPL kernel modifications (which would be a reimplementation rather than a port regardless) isn't a viable solution. -kevin From chromatic at wgz.org Thu Aug 9 09:46:43 2007 From: chromatic at wgz.org (chromatic) Date: Thu, 9 Aug 2007 09:46:43 -0700 Subject: [Pdx-pm] [Mostly OT] DTrace on Linux In-Reply-To: References: <200708082332.00594.chromatic@wgz.org> Message-ID: <200708090946.43979.chromatic@wgz.org> On Thursday 09 August 2007 09:30:57 Kevin Scaldeferri wrote: > Personally, while I'm neither a lawyer nor a kernel hacker, I'm ? > puzzled by the argument that a CDDL user space and kernel module with ? > GPL kernel modifications (which would be a reimplementation rather ? > than a port regardless) isn't a viable solution. It *probably* is, but then the question of patents comes up. As it's not my neck, I'm willing to believe Jonathan Schwartz and Simon Phipps when they say "Our pledge to license these patents without royalty to anyone in the DTrace community extends to anyone who uses the source code in an open fashion, even if they reimplement parts of it under another OSI-approved license is estoppel", but again--not my neck. -- c From scratchcomputing at gmail.com Fri Aug 17 01:41:38 2007 From: scratchcomputing at gmail.com (Eric Wilhelm) Date: Fri, 17 Aug 2007 01:41:38 -0700 Subject: [Pdx-pm] Parrot 0.4.14 "Now with seatbelts" Released In-Reply-To: <200708170129.01074.ewilhelm@cpan.org> References: <200708170129.01074.ewilhelm@cpan.org> Message-ID: <200708170141.38454.ewilhelm@cpan.org> Sorry for the old-news there folks. I got trigger-happy. --Eric -- "I've often gotten the feeling that the only people who have learned from computer assisted instruction are the authors." --Ben Schneiderman --------------------------------------------------- http://scratchcomputing.com --------------------------------------------------- From keithl at kl-ic.com Wed Aug 22 11:47:03 2007 From: keithl at kl-ic.com (Keith Lofstrom) Date: Wed, 22 Aug 2007 11:47:03 -0700 Subject: [Pdx-pm] mkdir -p ? Message-ID: <20070822184703.GC18612@gate.kl-ic.com> The dirvish backup script (written in Perl) does a mkdir to make the directory where new backups go. One of the users makes many backups per day, and would like to organize those into subtrees. This would be easy if Perl had the equivalent of "mkdir -p ARG" rather than just "mkdir ARG". I can think of many ways to fake "mkdir -p" (recursive, system call, etc.) but there is probably an elegant way to do it. Suggestions? Keith -- Keith Lofstrom keithl at keithl.com Voice (503)-520-1993 KLIC --- Keith Lofstrom Integrated Circuits --- "Your Ideas in Silicon" Design Contracting in Bipolar and CMOS - Analog, Digital, and Scan ICs From chromatic at wgz.org Wed Aug 22 11:52:29 2007 From: chromatic at wgz.org (chromatic) Date: Wed, 22 Aug 2007 11:52:29 -0700 Subject: [Pdx-pm] mkdir -p ? In-Reply-To: <20070822184703.GC18612@gate.kl-ic.com> References: <20070822184703.GC18612@gate.kl-ic.com> Message-ID: <200708221152.30238.chromatic@wgz.org> On Wednesday 22 August 2007 11:47:03 Keith Lofstrom wrote: > I can think of many ways to fake "mkdir -p" (recursive, system call, > etc.) but there is probably an elegant way to do it. ?Suggestions? It's mktree() in File::Path. That's one of my favorite core modules. -- c From bruce at drangle.com Wed Aug 22 11:52:43 2007 From: bruce at drangle.com (Bruce J Keeler) Date: Wed, 22 Aug 2007 11:52:43 -0700 Subject: [Pdx-pm] mkdir -p ? In-Reply-To: <20070822184703.GC18612@gate.kl-ic.com> References: <20070822184703.GC18612@gate.kl-ic.com> Message-ID: <46CC85FB.4090906@drangle.com> Keith Lofstrom wrote: > The dirvish backup script (written in Perl) does a mkdir to make the > directory where new backups go. One of the users makes many backups > per day, and would like to organize those into subtrees. This > would be easy if Perl had the equivalent of "mkdir -p ARG" rather > than just "mkdir ARG". > > I can think of many ways to fake "mkdir -p" (recursive, system call, > etc.) but there is probably an elegant way to do it. Suggestions? > > Keith > > Check out mkpath in File::Path. Bruce From kevin at scaldeferri.com Wed Aug 22 11:54:07 2007 From: kevin at scaldeferri.com (Kevin Scaldeferri) Date: Wed, 22 Aug 2007 11:54:07 -0700 Subject: [Pdx-pm] mkdir -p ? In-Reply-To: <20070822184703.GC18612@gate.kl-ic.com> References: <20070822184703.GC18612@gate.kl-ic.com> Message-ID: File::Path::mkpath http://search.cpan.org/~nwclark/perl-5.8.8/lib/File/Path.pm -kevin On Aug 22, 2007, at 11:47 AM, Keith Lofstrom wrote: > > The dirvish backup script (written in Perl) does a mkdir to make the > directory where new backups go. One of the users makes many backups > per day, and would like to organize those into subtrees. This > would be easy if Perl had the equivalent of "mkdir -p ARG" rather > than just "mkdir ARG". > > I can think of many ways to fake "mkdir -p" (recursive, system call, > etc.) but there is probably an elegant way to do it. Suggestions? > > Keith > > -- > Keith Lofstrom keithl at keithl.com Voice (503)-520-1993 > KLIC --- Keith Lofstrom Integrated Circuits --- "Your Ideas in > Silicon" > Design Contracting in Bipolar and CMOS - Analog, Digital, and Scan ICs > _______________________________________________ > Pdx-pm-list mailing list > Pdx-pm-list at pm.org > http://mail.pm.org/mailman/listinfo/pdx-pm-list From chromatic at wgz.org Wed Aug 22 11:57:58 2007 From: chromatic at wgz.org (chromatic) Date: Wed, 22 Aug 2007 11:57:58 -0700 Subject: [Pdx-pm] mkdir -p ? In-Reply-To: <46CC85FB.4090906@drangle.com> References: <20070822184703.GC18612@gate.kl-ic.com> <46CC85FB.4090906@drangle.com> Message-ID: <200708221157.58381.chromatic@wgz.org> On Wednesday 22 August 2007 11:52:43 Bruce J Keeler wrote: > Check out mkpath in File::Path. Right, mkpath() and rmtree(), not the weird (and absent) conglomeration of the names I suggested. Did I mention I also can't remember if it's File::Path or File::Tree and always have to use perldoc when I use it? -- c From ingy at ingy.net Wed Aug 22 14:57:59 2007 From: ingy at ingy.net (Ingy dot Net) Date: Wed, 22 Aug 2007 14:57:59 -0700 Subject: [Pdx-pm] mkdir -p ? In-Reply-To: <20070822184703.GC18612@gate.kl-ic.com> References: <20070822184703.GC18612@gate.kl-ic.com> Message-ID: <20070822215759.GB15808@ttul.org> On 22/08/07 11:47 -0700, Keith Lofstrom wrote: > > The dirvish backup script (written in Perl) does a mkdir to make the > directory where new backups go. One of the users makes many backups > per day, and would like to organize those into subtrees. This > would be easy if Perl had the equivalent of "mkdir -p ARG" rather > than just "mkdir ARG". Just fyi, IO::All has an assert method. io('path/to/some/place/maybe/not/there')->assert->print("something"); -Ingy > I can think of many ways to fake "mkdir -p" (recursive, system call, > etc.) but there is probably an elegant way to do it. Suggestions? > > Keith > > -- > Keith Lofstrom keithl at keithl.com Voice (503)-520-1993 > KLIC --- Keith Lofstrom Integrated Circuits --- "Your Ideas in Silicon" > Design Contracting in Bipolar and CMOS - Analog, Digital, and Scan ICs > _______________________________________________ > Pdx-pm-list mailing list > Pdx-pm-list at pm.org > http://mail.pm.org/mailman/listinfo/pdx-pm-list From scratchcomputing at gmail.com Wed Aug 22 16:07:14 2007 From: scratchcomputing at gmail.com (Eric Wilhelm) Date: Wed, 22 Aug 2007 16:07:14 -0700 Subject: [Pdx-pm] Fwd: Parrot 0.4.15 "Augean Stable" released! Message-ID: <200708221607.15171.ewilhelm@cpan.org> And now it is new news. Anybody interested in a parrot-related session? Since we have no speaker for next month, maybe we just open the code and start reading? On a related note, there are rumors that some people might get together somewhere on the west side and hack on the test suite to enable some TAP::Parser goodness. Let me know if you're interested and I'll put you in the loop (when the loop forms.) --Eric ---------- Forwarded Message: ---------- Subject: Parrot 0.4.15 "Augean Stable" released! Date: Wednesday 22 August 2007 12:15 pm From: "Patrick R. Michaud" To: parrot-porters at perl.org Cc: perl6-announce at perl.org, perl6-language at perl.org, perl6-compiler at perl.org, perl5-porters at perl.org On behalf of the Parrot team, I'm proud to announce Parrot 0.4.15 "Augean Stable." Parrot (http://parrotcode.org/) is a virtual machine aimed at running all dynamic languages. Parrot 0.4.15 can be obtained via CPAN (soon), or follow the download instructions at http://parrotcode.org/source.html. For those who would like to develop on Parrot, or help develop Parrot itself, we recommend using Subversion or SVK on the source code repository to get the latest and best Parrot code. Parrot 0.4.15 News: - Implementation: + Lots of code review, many bugs fixed + Many more code cleanups and compiler warning levels + Started a new jit engine for 64-bit processors + Refactored configure process, with tests and new diagnostic options + Added new CodeString PMC for dynamic generation of PIR code + More pdd15 support for object metamodel. - Languages: + Added NQP ("Not Quite Perl"), a very lightweight Perl 6-like language + Significant improvements and refactors to PCT (Parrot Compiler Toolkit) + perl6 passes more spec tests + Lua works now with a PGE/TGE/PAST-pm based compiler, lives in one pbc, and the interpreter has same behavior as original. - Documentation + Added a committers' HOWTO + More PIR tutorial examples + Added PAUSE guide Thanks to all our contributors for making this possible, and our sponsors for supporting this project. Enjoy! ------------------------------------------------------- -- Atavism n: The recurrence of any peculiarity or disease of an ancestor in a subsequent generation, usually due to genetic recombination. --------------------------------------------------- http://scratchcomputing.com --------------------------------------------------- From raanders at acm.org Fri Aug 24 10:16:30 2007 From: raanders at acm.org (Roderick A. Anderson) Date: Fri, 24 Aug 2007 10:16:30 -0700 Subject: [Pdx-pm] mkdir -p ? In-Reply-To: <20070822184703.GC18612@gate.kl-ic.com> References: <20070822184703.GC18612@gate.kl-ic.com> Message-ID: <46CF126E.3020809@acm.org> Keith Lofstrom wrote: > The dirvish backup script (written in Perl) does a mkdir to make the > directory where new backups go. One of the users makes many backups > per day, and would like to organize those into subtrees. This > would be easy if Perl had the equivalent of "mkdir -p ARG" rather > than just "mkdir ARG". > > I can think of many ways to fake "mkdir -p" (recursive, system call, > etc.) but there is probably an elegant way to do it. Suggestions? Well I loved all the other suggestions. All _very_ perl but I had the same need and just cheated since it was a Linux system and no need to make it work on Windows. qx{ /bin/mkdir -p path/that/was/needed } Rod -- > > Keith > From scratchcomputing at gmail.com Fri Aug 24 10:27:30 2007 From: scratchcomputing at gmail.com (Eric Wilhelm) Date: Fri, 24 Aug 2007 10:27:30 -0700 Subject: [Pdx-pm] mkdir -p ? In-Reply-To: <46CF126E.3020809@acm.org> References: <20070822184703.GC18612@gate.kl-ic.com> <46CF126E.3020809@acm.org> Message-ID: <200708241027.30951.ewilhelm@cpan.org> # from Roderick A. Anderson # on Friday 24 August 2007 10:16 am: >just cheated since it was a Linux system... > >????????qx{ /bin/mkdir -p path/that/was/needed } And checked the return code, right? --Eric -- We who cut mere stones must always be envisioning cathedrals. --Quarry worker's creed --------------------------------------------------- http://scratchcomputing.com --------------------------------------------------- From pagaltzis at gmx.de Fri Aug 24 11:28:26 2007 From: pagaltzis at gmx.de (A. Pagaltzis) Date: Fri, 24 Aug 2007 20:28:26 +0200 Subject: [Pdx-pm] mkdir -p ? In-Reply-To: <46CF126E.3020809@acm.org> References: <20070822184703.GC18612@gate.kl-ic.com> <46CF126E.3020809@acm.org> Message-ID: <20070824182826.GD26939@klangraum> * Roderick A. Anderson [2007-08-24 19:20]: > qx{ /bin/mkdir -p path/that/was/needed } That sets up the whole STDOUT-capture machinery and then stuffs the (usually empty) output in a temporary scalar? ? just to throw it all away. More direct: system qw( /bin/mkdir -p path/that/was/needed ); More importantly, `system LIST` has no issues with quoting, which `qx` is susceptible to. Regards, -- Aristotle Pagaltzis // From tex at off.org Fri Aug 24 12:49:37 2007 From: tex at off.org (Austin Schutz) Date: Fri, 24 Aug 2007 12:49:37 -0700 Subject: [Pdx-pm] mkdir -p ? In-Reply-To: <20070824182826.GD26939@klangraum> References: <20070822184703.GC18612@gate.kl-ic.com> <46CF126E.3020809@acm.org> <20070824182826.GD26939@klangraum> Message-ID: <20070824194937.GJ4405@gblx.net> On Fri, Aug 24, 2007 at 08:28:26PM +0200, A. Pagaltzis wrote: > * Roderick A. Anderson [2007-08-24 19:20]: > > qx{ /bin/mkdir -p path/that/was/needed } > > That sets up the whole STDOUT-capture machinery and then stuffs > the (usually empty) output in a temporary scalar? > > ? just to throw it all away. > > More direct: > > system qw( /bin/mkdir -p path/that/was/needed ); > > More importantly, `system LIST` has no issues with quoting, which > `qx` is susceptible to. > To echo Eric's comment: "and check the return code, right?" When you do the work of making sure the directory has been successfully created and accurately handling errors you've probably reached the point where it's worth using a module- all that work is done for you. ..but if it works for you.. *shrug*. Austin From scratchcomputing at gmail.com Fri Aug 24 13:59:20 2007 From: scratchcomputing at gmail.com (Eric Wilhelm) Date: Fri, 24 Aug 2007 13:59:20 -0700 Subject: [Pdx-pm] mkdir -p ? In-Reply-To: <20070824194937.GJ4405@gblx.net> References: <20070822184703.GC18612@gate.kl-ic.com> <20070824182826.GD26939@klangraum> <20070824194937.GJ4405@gblx.net> Message-ID: <200708241359.20539.ewilhelm@cpan.org> # from Austin Schutz # on Friday 24 August 2007 12:49 pm: >..but if it works for you.. *shrug*. Well, my thoughts tend more toward *slap* on some days. But, due to the striking-distance/internet thing I make-due with wearing out the "d" key -- "dd" means "delete dammit!" :-) --Eric -- We who cut mere stones must always be envisioning cathedrals. --Quarry worker's creed --------------------------------------------------- http://scratchcomputing.com --------------------------------------------------- From schwern at pobox.com Fri Aug 24 14:36:26 2007 From: schwern at pobox.com (Michael G Schwern) Date: Fri, 24 Aug 2007 14:36:26 -0700 Subject: [Pdx-pm] mkdir -p ? In-Reply-To: <46CF126E.3020809@acm.org> References: <20070822184703.GC18612@gate.kl-ic.com> <46CF126E.3020809@acm.org> Message-ID: <46CF4F5A.8080209@pobox.com> Roderick A. Anderson wrote: > Keith Lofstrom wrote: >> The dirvish backup script (written in Perl) does a mkdir to make the >> directory where new backups go. One of the users makes many backups >> per day, and would like to organize those into subtrees. This >> would be easy if Perl had the equivalent of "mkdir -p ARG" rather >> than just "mkdir ARG". >> >> I can think of many ways to fake "mkdir -p" (recursive, system call, >> etc.) but there is probably an elegant way to do it. Suggestions? > > Well I loved all the other suggestions. All _very_ perl but I had the > same need and just cheated since it was a Linux system and no need to > make it work on Windows. > > qx{ /bin/mkdir -p path/that/was/needed } "That was the best milkshake I've ever had." (Famous last words) Instead of saying "no need to make it work on Windows" change that in your head to "this code will only work on my machine" because that's where that road leads, and its a short one. I don't know how many times I've had to dig out shell calls replicating simple perl functions in code that suddenly does have to be compatible. It's not a fun job. And its not even Windows vs Unix, GNU vs BSD tools alone makes for some interesting times. I've taken production code off a Linux machine and tried to run it on my Macbook (hey its all Unix, right?) only to have to dig out hard coded GNUisms. You start making shell calls for mkdir and you're going to do it for chmod instead of using chmod() or ls instead of readdir() or rm -rf instead of rmtree and even these "simple" utilities aren't. Shell calls are loaded with traps. There are at least six subtle bugs in that "simple" line of qx code. 1) It's hard coded the location of mkdir 1a) The alternative relies on the user's PATH being set properly 2) You're going to forget to escape special characters in the path 3) You're going to forget to escape spaces in the path 4) It makes assumptions about the shell 5) It makes assumptions about mkdir (does it have -p?) 6) It makes assumptions about the shell argument length limit 7) Failure is not checked You might laugh at some of these, but I have to maintain MakeMaker, possibly the most cross-platform pile of shell code in the universe. Trust me, they're all real issues. Shell compatibility sucks. Perl was written so you don't have to get involved with that mess. More importantly, you don't want to get the next guy working on your code involved. 1-6 are non-issues by using File::Path::mkpath(). The best way to avoid a mistake is to make it impossible to make that mistake; especially when it also makes the code smaller and simpler. Simpler code means #7 becomes much less of an issue. Which would you rather work with? use File::Path; mkpath($path) or die "Can't mkpath $path"; Or # Calling system() as a list at least avoids the shell. unless( system("/bin/mkdir", "-p", $path) == 0 ) { die "Can't mkdir -p $path"; } When I must do a system call I wrap it in something like... sub run { my($program, @args) = @_; return 1 if system($program, @args) == 0; die "$program @args exited with status ".$? >> 8; } Then at least I only have to worry about getting it right once. While I'm on the subject, I should mention Shell::Command. A handy little module that replicates a small pile of the most common shell utilities for your convenience. touch, mv and cp are the biggest. Patches welcome for more. And if someone tries to make an optimization argument in either direction they're getting a tire iron in the face. Your program is not being slowed down by making directories. If it is, something is very wrong or very specialized. -- Robrt: People can't win Schwern: No, but they can riot after the game. From tex at off.org Fri Aug 24 14:49:58 2007 From: tex at off.org (Austin Schutz) Date: Fri, 24 Aug 2007 14:49:58 -0700 Subject: [Pdx-pm] mkdir -p ? In-Reply-To: <46CF4F5A.8080209@pobox.com> References: <20070822184703.GC18612@gate.kl-ic.com> <46CF126E.3020809@acm.org> <46CF4F5A.8080209@pobox.com> Message-ID: <20070824214958.GK4405@gblx.net> > Which would you rather work with? > > use File::Path; > mkpath($path) or die "Can't mkpath $path"; > > Or > > # Calling system() as a list at least avoids the shell. > unless( system("/bin/mkdir", "-p", $path) == 0 ) { > die "Can't mkdir -p $path"; > } Actually I'd rather use the second, given that mkpath will die on failure, so your error message will fail. Presumably you wouldn't do that in your actual code, you were merely exemplifying why packaged code is handy. It's also handy to know why something fails. use File::Path; eval { mkpath($path); }; die "Can't mkpath $path: $@" if $@; Even better to use something like Error and throw exceptions. And here you thought something trivial like making a directory was going to be simple in Perl. :-) Austin From kevin at scaldeferri.com Fri Aug 24 15:29:27 2007 From: kevin at scaldeferri.com (Kevin Scaldeferri) Date: Fri, 24 Aug 2007 15:29:27 -0700 Subject: [Pdx-pm] mkdir -p ? In-Reply-To: <20070824214958.GK4405@gblx.net> References: <20070822184703.GC18612@gate.kl-ic.com> <46CF126E.3020809@acm.org> <46CF4F5A.8080209@pobox.com> <20070824214958.GK4405@gblx.net> Message-ID: On Aug 24, 2007, at 2:49 PM, Austin Schutz wrote: > And here you thought something trivial like making a directory was > going to be simple in Perl. :-) Interacting with external systems is never simple, in any language. -kevin From schwern at pobox.com Fri Aug 24 17:35:53 2007 From: schwern at pobox.com (Michael G Schwern) Date: Fri, 24 Aug 2007 17:35:53 -0700 Subject: [Pdx-pm] mkdir -p ? In-Reply-To: <20070824214958.GK4405@gblx.net> References: <20070822184703.GC18612@gate.kl-ic.com> <46CF126E.3020809@acm.org> <46CF4F5A.8080209@pobox.com> <20070824214958.GK4405@gblx.net> Message-ID: <46CF7969.5050202@pobox.com> Austin Schutz wrote: >> Which would you rather work with? >> >> use File::Path; >> mkpath($path) or die "Can't mkpath $path"; >> >> Or >> >> # Calling system() as a list at least avoids the shell. >> unless( system("/bin/mkdir", "-p", $path) == 0 ) { >> die "Can't mkdir -p $path"; >> } > > > Actually I'd rather use the second, given that mkpath will die > on failure, so your error message will fail. Oh, well that's just hateful. -- Whip me, beat me, make my code compatible with VMS! From raanders at acm.org Sun Aug 26 21:01:15 2007 From: raanders at acm.org (Roderick A. Anderson) Date: Sun, 26 Aug 2007 21:01:15 -0700 Subject: [Pdx-pm] mkdir -p ? In-Reply-To: <46CF126E.3020809@acm.org> References: <20070822184703.GC18612@gate.kl-ic.com> <46CF126E.3020809@acm.org> Message-ID: <46D24C8B.2060805@acm.org> Roderick A. Anderson wrote: > Keith Lofstrom wrote: >> The dirvish backup script (written in Perl) does a mkdir to make the >> directory where new backups go. One of the users makes many backups >> per day, and would like to organize those into subtrees. This >> would be easy if Perl had the equivalent of "mkdir -p ARG" rather >> than just "mkdir ARG". >> >> I can think of many ways to fake "mkdir -p" (recursive, system call, >> etc.) but there is probably an elegant way to do it. Suggestions? > > Well I loved all the other suggestions. All _very_ perl but I had the > same need and just cheated since it was a Linux system and no need to > make it work on Windows. > > qx{ /bin/mkdir -p path/that/was/needed } > > > Rod WOW! Who would have thunk one line could generate so much discussion. :-) You'll have to trust me that I did consider all the discussed points in the other replies to this post. The code was not going to any other system. The script generated the path information so the escaping of characters or other code injection possibilities are not going to happen. It just whacked any "bad" characters in advanced. I did capture the returned value. On the other hand I can't remember seeing mkpath as part of the File::Path module. Probably I was thinking "mkdir -p" not that I was making a path. I'll revisit File::Path module. Thanks. Rod -- From scratchcomputing at gmail.com Wed Aug 29 22:46:30 2007 From: scratchcomputing at gmail.com (Seven till Seven) Date: Wed, 29 Aug 2007 22:46:30 -0700 Subject: [Pdx-pm] Catalyst talk -- 2 weeks to September 12th Meeting Message-ID: <200708292246.30366.ewilhelm@cpan.org> Wed. September 12th, 6:53pm at FreeGeek -- 1731 SE 10th Ave. Topic: Getting (hopefully just your feet) Wet with Catalyst Speaker: Jay Shirley Jay is leading a large refactoring effort at a social networking company where he is currently handling over a million requests per day from a Catalyst app which also co-exists with legacy code. The talk includes a quick overview, followed by "Hello World/Catalyst Concepts" in an interactive format, and then a demonstration of a simple real world application (Paste system.) --Eric -- http://pdx.pm.org