From afife at untangle.com Sat Mar 1 00:38:12 2008 From: afife at untangle.com (Andrew Fife) Date: Fri, 29 Feb 2008 15:38:12 -0800 (PST) Subject: [Baypiggies] what to do for our March meeting? In-Reply-To: References: Message-ID: <000701c87b2c$3ddf21f0$8900000a@Untangle.local> While not specifically related to Python, I'd be very happy to try and find a speaker from Untangle. We have prepared talks on the following topics: -Building an open source car computer (Not about Untangle) -How to virtualize entire networks (About Untangle) -Secure wireless Mesh Networks (Not about Untangle) And I'd be happy to do a wrap up on how tomorrow's Ubuntu installfest for schools goes. http://www.untangle.com/installfest If any of these ideas are interesting, let me know and I'll try to confirm with the various speakers schedules. -Andrew ---------------------------------------- Andrew Fife Untangle - Open Source Security Gateway download.untangle.com 650.425.3327 (O) 415.806.6028 (C) afife at untangle.com From jeff at drinktomi.com Sat Mar 1 01:39:59 2008 From: jeff at drinktomi.com (Jeff Younker) Date: Fri, 29 Feb 2008 16:39:59 -0800 Subject: [Baypiggies] what to do for our March meeting? In-Reply-To: <000701c87b2c$3ddf21f0$8900000a@Untangle.local> References: <000701c87b2c$3ddf21f0$8900000a@Untangle.local> Message-ID: <0679C4C1-3E1D-44D0-824C-2C1B1FB0DEAA@drinktomi.com> > While not specifically related to Python, I'd be very happy to try and > find a speaker from Untangle. We have prepared talks on the following > topics: > > -Building an open source car computer (Not about Untangle) > -How to virtualize entire networks (About Untangle) > -Secure wireless Mesh Networks (Not about Untangle) Sigh. I'm now stuck here thanks to work. I vote for the virtualization talk. -jeff From annaraven at gmail.com Sat Mar 1 01:46:52 2008 From: annaraven at gmail.com (Anna Ravenscroft) Date: Fri, 29 Feb 2008 16:46:52 -0800 Subject: [Baypiggies] what to do for our March meeting? In-Reply-To: <4b7ec8b24a27c846546639e9bacc59f9@well.com> References: <78b3a9580802291101x26ebb5e9jac949a866d07afdc@mail.gmail.com> <4b7ec8b24a27c846546639e9bacc59f9@well.com> Message-ID: Given how many people will be gone to pycon, I'd love to have it be a meetandgreet/planning session and then we can do more talks when we're back. If there is a talk, I hope it can be posted on youtube or something. On Fri, Feb 29, 2008 at 11:14 AM, jim stockford wrote: > > thanks for the kind words, wesley. > personally i'm in favor of meet and greet with an > eye to discussing topics for future meetings. > (again personally: ) i'm not in favor of cancelling. > i think it will not be possible to do a good job in > getting snippets together or preparing an effective > night for newbies. i could be wrong, i often am. > > > > > On Feb 29, 2008, at 11:01 AM, wesley chun wrote: > > >> so the question is what to do? > >> * have a meet and greet and perhaps talk out possible future > >> talks or other local python community issues. > >> * cancel the meeting. > >> * other.... > > > > > > in the past, we have done: > > > > - newbies nite > > - meet-n-greet (sometimes combined with newbies nite) > > - moved the meeting 1 week later > > - recruiters nite -- hiring mgrs and recruiters allowed to take the > > stage for X minutes each, then collect resumes at the end > > - with a smaller group, met at a dining establishment and had a late > > dinner with conversation > > > > but, it is rare to cancel meetings. we used to do it more regularly > > during the early days of the group, but it's just not a common > > occurrence after 2001since enough Python interest has developed since > > then where we've always had a "group" of ppl willing to meet. > > > > thanks again for all your help in organizing the meetings! you're > > doing a much better job that i had in the past! :-) > > > > cheers, > > -wesley > > > > _______________________________________________ > Baypiggies mailing list > Baypiggies at python.org > To change your subscription options or unsubscribe: > http://mail.python.org/mailman/listinfo/baypiggies > -- cordially, Anna -- Walking through the water. Trying to get across. Just like everybody else. From jim at well.com Sat Mar 1 19:06:33 2008 From: jim at well.com (jim stockford) Date: Sat, 1 Mar 2008 10:06:33 -0800 Subject: [Baypiggies] what to do for our March meeting? New List In-Reply-To: References: Message-ID: Here's a summary of suggestions that have come in. Please vote with the usual +1 or -1 and indicate a topic tag the list shows votes in so far. you're welcome to vote for multiple tags. to reverse your previous vote, send in another with the alternate value to cancel. Note that we will have a meeting (we won't cancel), and in the absence of votes, the default will be MeetAndGreet. (+1) -- MeetAndGreet: have a meet and greet and with a focus on planning. (+1) -- DrewNextWeek: Drew Perttula reports on PyCon one week later (Thursday, March 20) (+1) -- HowToVirtANet: How to virtualize entire networks (About Untangle) 0 -- SecureMesh: Secure wireless Mesh Networks 0 -- CarComputer: Build an open source car computer In my view (self is jim), we don't have enough time to prepare properly for a newbies night or a recruiters night for March 13. * Newbies: newbies nite * recruiters nite -- hiring mgrs and recruiters allowed to take the stage for X minutes each, then collect resumes at the end On Feb 29, 2008, at 10:43 AM, jim stockford wrote: > > I've given up on getting a speaker for our March 13 meeting > for several reasons (noted below as a postscript as they > probably don't really matter much). > > so the question is what to do? > * have a meet and greet and perhaps talk out possible future > talks or other local python community issues. > * cancel the meeting. > * other.... > > Please reply > with thanks, > jim > > PS: > * i've been walking too close to the edge: i should have > several meetings definitely planned in advance but have > none--i'll address this is a separate post. > * pycon is taking people away during the meeting week. > * though my efforts are admittedly tepid, those i've made > have failed to yield someone able to speak on march 13 > (some will be at pycon, others have other reasons). > > _______________________________________________ > Baypiggies mailing list > Baypiggies at python.org > To change your subscription options or unsubscribe: > http://mail.python.org/mailman/listinfo/baypiggies > From mrbmahoney at gmail.com Sat Mar 1 19:30:48 2008 From: mrbmahoney at gmail.com (Brian Mahoney) Date: Sat, 1 Mar 2008 10:30:48 -0800 Subject: [Baypiggies] what to do for our March meeting? New List In-Reply-To: References: Message-ID: <5538c19b0803011030l406fc87cw423cc931281d1ccd@mail.gmail.com> (+1) -- DrewNextWeek: Drew Perttula reports on PyCon one week later (Thursday, March 20) From jmhunter.lists at gmail.com Sun Mar 2 02:37:56 2008 From: jmhunter.lists at gmail.com (Jacob Hunter) Date: Sat, 1 Mar 2008 17:37:56 -0800 Subject: [Baypiggies] what to do for our March meeting? New List In-Reply-To: <5538c19b0803011030l406fc87cw423cc931281d1ccd@mail.gmail.com> References: <5538c19b0803011030l406fc87cw423cc931281d1ccd@mail.gmail.com> Message-ID: What is involved with newbies night? I am a relative newbie, but I wouldn't mind helping with logistics of getting this together. I founded a LUG in the matter of 3 weeks, I think I could help pull together a newbies night in <2 weeks. Jacob From jmhunter.lists at gmail.com Sun Mar 2 02:51:23 2008 From: jmhunter.lists at gmail.com (Jacob Hunter) Date: Sat, 1 Mar 2008 17:51:23 -0800 Subject: [Baypiggies] what to do for our March meeting? New List In-Reply-To: References: <5538c19b0803011030l406fc87cw423cc931281d1ccd@mail.gmail.com> Message-ID: For clarification, i meant a meet / greet-newbie night hybrid. On Sat, Mar 1, 2008 at 5:37 PM, Jacob Hunter wrote: > What is involved with newbies night? > > I am a relative newbie, but I wouldn't mind helping with logistics of > getting this together. I founded a LUG in the matter of 3 weeks, I > think I could help pull together a newbies night in <2 weeks. > > Jacob > From echerlin at gmail.com Sun Mar 2 21:42:47 2008 From: echerlin at gmail.com (Edward Cherlin) Date: Sun, 2 Mar 2008 12:42:47 -0800 Subject: [Baypiggies] XO Sugar Development Article Message-ID: http://www.rootly.com/topics/technology/linux_unix/Desktop_Development_for_OLPC_Laptop/ -- Edward Cherlin End Poverty at a Profit by teaching children business http://www.EarthTreasury.org/ "The best way to predict the future is to invent it."--Alan Kay From jmhunter.lists at gmail.com Tue Mar 4 11:09:19 2008 From: jmhunter.lists at gmail.com (Jacob Hunter) Date: Tue, 4 Mar 2008 02:09:19 -0800 Subject: [Baypiggies] what to do for our March meeting? New List In-Reply-To: References: <5538c19b0803011030l406fc87cw423cc931281d1ccd@mail.gmail.com> Message-ID: This a no ? On 3/1/08, Jacob Hunter wrote: > For clarification, i meant a meet / greet-newbie night hybrid. > > On Sat, Mar 1, 2008 at 5:37 PM, Jacob Hunter > wrote: > > What is involved with newbies night? > > > > I am a relative newbie, but I wouldn't mind helping with logistics of > > getting this together. I founded a LUG in the matter of 3 weeks, I > > think I could help pull together a newbies night in <2 weeks. > > > > Jacob > > > From cappy2112 at gmail.com Tue Mar 4 06:30:17 2008 From: cappy2112 at gmail.com (Tony Cappellini) Date: Mon, 3 Mar 2008 21:30:17 -0800 Subject: [Baypiggies] Is anyone else going to SD West Thursday afternoon? Message-ID: <8249c4ac0803032130m5fa2fb7cp79cc2cf1876bcb7b@mail.gmail.com> O'Reilly *may* have some books for us and I might need a hand picking them up. There is often a surplus of books after trade shows, and it's not feasible for the publishers to ship them back. However, it's not definite. Please email me off-list- and only reply if you are pretty sure you will be there Thursday around 5PM. I only need 1-2 people to help with this. Thanks From keith at dartworks.biz Wed Mar 5 11:08:57 2008 From: keith at dartworks.biz (Keith Dart) Date: Wed, 05 Mar 2008 02:08:57 -0800 Subject: [Baypiggies] what to do for our March meeting? New List In-Reply-To: References: Message-ID: <47CE7139.2030007@dartworks.biz> jim stockford wrote: > Here's a summary of suggestions that have come in. > Please vote with the usual +1 or -1 and indicate a topic > tag the list shows votes in so far. you're welcome to vote > for multiple tags. to reverse your previous vote, send in > another with the alternate value to cancel. > Note that we will have a meeting (we won't cancel), > and in the absence of votes, the default will be > MeetAndGreet. > > Since it overlaps PyCon, how about a mini-PyCon for those that are not going? Could just meet and talk about scripts you wrote, tools, techniques.... like the old days when it was small. :-) I've been doing IEEE-488/GPIB instrument automation in Python. I could talk about that. From rstephe at sun.science.wayne.edu Wed Mar 5 17:46:39 2008 From: rstephe at sun.science.wayne.edu (Robert Stephenson) Date: Wed, 5 Mar 2008 08:46:39 -0800 Subject: [Baypiggies] (consulting) Plone development for the Tech Museum Message-ID: I am looking for someone to do some advanced development for my Plone site (http://thethechvirtual.org) at the Tech Museum of Innovation. This is an interesting job. We are open sourcing the Museum's entire content development process and inviting outsiders to create content for the museum. We have a Plone-based Web collaboration platform where anyone can propose an exhibit and develop their idea, and a Virtual Tech Museum in Second Life where they can prototype the exhibit in the Parkside Exhibit Workshop . This gig, which may involve ~50 hours over the coming month, involves building an event- driven reputation index for individuals, a similar progress index for projects, and data links between the Website and objects in the Second Life museum. -------------------------- Robert Stephenson The Tech Museum of Innovation San Jose, CA, USA 1 408 795-6162 rstephenson at thetechvirtual.org AIM: rstephelearn, Yahoo!: rstephemi, MSN: rstephemi, Skype: rstephe SL: Stephe Roux -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/baypiggies/attachments/20080305/a0ee0fd5/attachment.htm From jim at well.com Wed Mar 5 19:40:11 2008 From: jim at well.com (jim stockford) Date: Wed, 5 Mar 2008 10:40:11 -0800 Subject: [Baypiggies] meeting moved to march 20 Message-ID: <04ae11c692ee308282cb0b154d25ec99@well.com> By two-to-one popular demand, the March bayPIGgies meeting is moved to Thursday, March 20. Drew Perttula will speak on his adventures at PyCon. As a supplemental feature, we will have our own local mini-pycon if any of you contribute brief topics for discussion. We may have extended time for meet and greet and possibly planning for future meetings. No meeting on Thursday, March 13. Please email the list with your ideas for brief topics, hopefully with supporting snippets, for this coming bayPIGgies meeting, Thursday, March 20. From jim at well.com Wed Mar 5 19:51:49 2008 From: jim at well.com (jim stockford) Date: Wed, 5 Mar 2008 10:51:49 -0800 Subject: [Baypiggies] Rescinding the meeting announcement Message-ID: <94f66f6d210a979c1a3655e0defcbef5@well.com> I did not think to check with leslie to see if it's possible for bayPIGgies to meet on Thursday, march 20. Please do send in your ideas for mini-topics and snippets. After Leslie responds with meeting room availability, I'll re-announce the day, either the 13th or the 20th. sorry for confusion. jim From glen at glenjarvis.com Thu Mar 6 00:28:42 2008 From: glen at glenjarvis.com (Glen Jarvis) Date: Wed, 5 Mar 2008 15:28:42 -0800 Subject: [Baypiggies] On Python Design Message-ID: <1065629E-1818-4FF0-BEA0-12B7A6587422@glenjarvis.com> At BayPIGgies, I get a lot of help learning the language, good coding standards, etc? But, I hadn?t seen much on good architecture/design, tips/tricks, etc. Maybe we can add a future talk on architecture ideas/concepts to our list? Before that day, however, I?m desperate to get some help with something that I designed (I thought well), only to find myself boxed in a corner. My project is obviously something I can?t discuss in too much detail (although I think it's silly, I promised not to share; and I always try to keep my promises). So, I made a sample test case to demonstrate a hypothetical situation that mimics my situation. I have a self monitoring API that launches behind the scenes for the developers that use such a job. It is called simply by importing the library and instantiating an object. For example: import time import DaCoolAPI # This is kewl myDaCool = DaCoolAPI.DaCool() print "Ho hum.. working away..." for x in range(1, 5): print ".", time.sleep(1.0) But, behind the scenes, as soon as DaCoolAPI is instantiated, config files are parsed, external processes for monitoring are launched, etc. The problem is I had intended the entire time to do things, like clean- up, when the DaCool object was ?done? (i.e., almost always at program exit). In this test case, the DaCool.__del__ destructor is called without worry. However, that is NOT a guarantee in the big picture (my much larger app). Now, trying to get the Python atexit module (http://docs.python.org/lib/module-atexit.html ) to do this same job is tricker than it looks. Everything has previously been at the object level. The atexit is a module level function. I don?t readily have access to the objects I need at the module level. And, most of my clean-up are hidden within objects. Also, if I do this in the monitoring portion, I?m obviously going to get multiple processes all seeing the atexit function and get the exit handlers called two or three times. *gasp* When I thought I was using a clean object oriented design, I suddenly have a mess because I didn?t know destructors were never guaranteed to run?. *breath* Now, with all of that said, I would like to ask my questions: 1) 1) Have I over-used the object-oriented model? 2) 2) Is there a clean fix to get this back into the object- oriented model? 3) 3) Do I need to change all objects so they are modules (although that isn?t possible for at least one ? the one that needs to be provided for the programmer) Any feedback, ideas, input ? even pickiness if I missed some coding standards ? are all appreciated. It never hurts to tear this to pieces ? The gems I get are worth any bruises to my ego - and I get to learn something from those mistakes so I'm a better coder next time =) Cheers, Glen -- 415-680-3964 glen at glenjarvis.com http://www.glenjarvis.com "You must be the change you wish to see in the world." -M. Gandhi -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/baypiggies/attachments/20080305/6a1a314f/attachment-0002.htm -------------- next part -------------- A non-text attachment was scrubbed... Name: DaCoolAPI.py Type: text/x-python-script Size: 1115 bytes Desc: not available Url : http://mail.python.org/pipermail/baypiggies/attachments/20080305/6a1a314f/attachment-0002.bin -------------- next part -------------- A non-text attachment was scrubbed... Name: DaCoolMonit.py Type: text/x-python-script Size: 2674 bytes Desc: not available Url : http://mail.python.org/pipermail/baypiggies/attachments/20080305/6a1a314f/attachment-0003.bin -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/baypiggies/attachments/20080305/6a1a314f/attachment-0003.htm From aleax at google.com Thu Mar 6 00:58:43 2008 From: aleax at google.com (Alex Martelli) Date: Wed, 5 Mar 2008 15:58:43 -0800 Subject: [Baypiggies] On Python Design In-Reply-To: <1065629E-1818-4FF0-BEA0-12B7A6587422@glenjarvis.com> References: <1065629E-1818-4FF0-BEA0-12B7A6587422@glenjarvis.com> Message-ID: <55dc209b0803051558r3ae61776ya565d7ff6af393b9@mail.gmail.com> I'd just rename __del__ to close, and add an atexit.register(self.close) to the __init__ -- i.e., the "one obvious way" to ensure that some termination is performed at program exit by calling at that time an appropriate method on an object. If there are constraints that stop you from pursuing this solution, I apologize but I can't parse them from your mail, so please clarify -- thanks! Alex On Wed, Mar 5, 2008 at 3:28 PM, Glen Jarvis wrote: > > > At BayPIGgies, I get a lot of help learning the language, good coding > standards, etc? But, I hadn't seen much on good architecture/design, > tips/tricks, etc. Maybe we can add a future talk on architecture > ideas/concepts to our list? > > Before that day, however, I'm desperate to get some help with something that > I designed (I thought well), only to find myself boxed in a corner. > > My project is obviously something I can't discuss in too much detail > (although I think it's silly, I promised not to share; and I always try to > keep my promises). So, I made a sample test case to demonstrate a > hypothetical situation that mimics my situation. > > I have a self monitoring API that launches behind the scenes for the > developers that use such a job. It is called simply by importing the library > and instantiating an object. For example: > > import time > import DaCoolAPI > > # This is kewl > myDaCool = DaCoolAPI.DaCool() > > print "Ho hum.. working away..." > for x in range(1, 5): > print ".", > time.sleep(1.0) > > But, behind the scenes, as soon as DaCoolAPI is instantiated, config files > are parsed, external processes for monitoring are launched, etc. > > The problem is I had intended the entire time to do things, like clean-up, > when the DaCool object was 'done' (i.e., almost always at program exit). > > In this test case, the DaCool.__del__ destructor is called without worry. > However, that is NOT a guarantee in the big picture (my much larger app). > Now, trying to get the Python atexit module > (http://docs.python.org/lib/module-atexit.html) to do this same job is > tricker than it looks. > > Everything has previously been at the object level. The atexit is a module > level function. I don't readily have access to the objects I need at the > module level. And, most of my clean-up are hidden within objects. Also, if I > do this in the monitoring portion, I'm obviously going to get multiple > processes all seeing the atexit function and get the exit handlers called > two or three times. > > *gasp* > > When I thought I was using a clean object oriented design, I suddenly have a > mess because I didn't know destructors were never guaranteed to run?. > > > *breath* > > Now, with all of that said, I would like to ask my questions: > > 1) 1) Have I over-used the object-oriented model? > 2) 2) Is there a clean fix to get this back into the object-oriented > model? > 3) 3) Do I need to change all objects so they are modules (although > that isn't possible for at least one ? the one that needs to be provided for > the programmer) > > > Any feedback, ideas, input ? even pickiness if I missed some coding > standards ? are all appreciated. It never hurts to tear this to pieces ? The > gems I get are worth any bruises to my ego - and I get to learn something > from those mistakes so I'm a better coder next time =) > > > > > > Cheers, > > > Glen -- > 415-680-3964 > glen at glenjarvis.com > http://www.glenjarvis.com > > "You must be the change you wish to see in the world." -M. Gandhi > > > _______________________________________________ > Baypiggies mailing list > Baypiggies at python.org > To change your subscription options or unsubscribe: > http://mail.python.org/mailman/listinfo/baypiggies > From aleax at google.com Thu Mar 6 01:23:55 2008 From: aleax at google.com (Alex Martelli) Date: Wed, 5 Mar 2008 16:23:55 -0800 Subject: [Baypiggies] On Python Design In-Reply-To: <30EBB466-6DBA-411D-9E49-B93BEC77FBDB@glenjarvis.com> References: <1065629E-1818-4FF0-BEA0-12B7A6587422@glenjarvis.com> <55dc209b0803051558r3ae61776ya565d7ff6af393b9@mail.gmail.com> <30EBB466-6DBA-411D-9E49-B93BEC77FBDB@glenjarvis.com> Message-ID: <55dc209b0803051623p1b76df5l6f89e267671d444a@mail.gmail.com> I should clarify what I mean, apparently: you can just call atexit.register from the __init__ of the "cool" object AFTER you instantiate the monitor object, since in the parent process does that initialization return to the caller. On Wed, Mar 5, 2008 at 4:13 PM, Glen Jarvis wrote: > Alex, > I'm sorry this isn't coming across clearly, let me try this again > - but shorter (and hopefully more clear). > > The API attached in the previous email forks two processes. This means > three total processes are running at any one time. If we register the > self.close() function, it will be executed three times (once for each > process). I can avoid some of this by how I exit: (os._exit(1)) > instead of sys.exit. > > I can also make a 'NormalExit' function, and re-register it at the > times that processes are spawned, but this solution is not very > elegant. In fact, it feels like I'm hacking to get this to work > (although I believe I could). > > So, my over-all question is about the design approach. What have you > (or another reading this message) come across when mixing Object > Orientation, modules, atexit, and forked processes. OO vs modules really has nothing to do with it. Each forked process should see to its own termination cleanup (if any) by calling appropriate atexit.register. > I believed Object Orientation was a very nice way to approach this. I disagree -- initializing a class exactly once and having its only instance "just go away immediately" makes not much sense to me when one can simply call a function instead -- the kind of thing one ends up doing in a language that "forces" OO design, like Java, not appropriate in a multiparadigm language allowing both objects and functions, like C++ or Python. But, that's not really connected to the atexit/fork issue, one way or another. > However, it is no longer feeling so clean. It's starting to look > "Ugly" to use Guido speak... > > Does this help explain my concerns? Not really -- why not do the obvious thing (ensuring atexit.register is only called in the parent process after the fork)? Alex From aleax at google.com Thu Mar 6 02:41:25 2008 From: aleax at google.com (Alex Martelli) Date: Wed, 5 Mar 2008 17:41:25 -0800 Subject: [Baypiggies] On Python Design In-Reply-To: <2A24878B-A383-414D-9B50-9D60196C6A2E@glenjarvis.com> References: <1065629E-1818-4FF0-BEA0-12B7A6587422@glenjarvis.com> <55dc209b0803051558r3ae61776ya565d7ff6af393b9@mail.gmail.com> <30EBB466-6DBA-411D-9E49-B93BEC77FBDB@glenjarvis.com> <55dc209b0803051623p1b76df5l6f89e267671d444a@mail.gmail.com> <2A24878B-A383-414D-9B50-9D60196C6A2E@glenjarvis.com> Message-ID: <55dc209b0803051741k2d226dd2o67320b2ebdc3573d@mail.gmail.com> On Wed, Mar 5, 2008 at 5:39 PM, Glen Jarvis wrote: > PUT DOWN THE CRACK PIPE LOUISE!!! I'm an idiot... > > Alex, I didn't actually understand your message before I sent a reply. > Of course! You're right... in the __init__ of the "cool" object, I can > call the atexit.register() function AFTER I instantiate the > monitoring.... > > This way, the exit will occur only in the parent process. > > You can disregard my previous email because obviously I was obviously > high on stupid when I wrote it. > > Your solution, as simple as it is, just wasn't coming to me. I was > getting suddenly confused and, more importantly, worried, that I'd > boxed myself in the corner. This was so easy. > > I'm on BART, waiting until I can get to embaracadero so I can send > this... Is it Friday yet? =) > > Thanks again for all of your help... You're welcome! It's happened to all of us, of course, not seeing the obvious solution/approach (which may not be obvious unless you're Dutch;-), that's why e.g. brainstorming, pair programming, and code reviews are "best practices"...!-) Alex From glen at glenjarvis.com Thu Mar 6 01:13:27 2008 From: glen at glenjarvis.com (Glen Jarvis) Date: Wed, 5 Mar 2008 16:13:27 -0800 Subject: [Baypiggies] On Python Design In-Reply-To: <55dc209b0803051558r3ae61776ya565d7ff6af393b9@mail.gmail.com> References: <1065629E-1818-4FF0-BEA0-12B7A6587422@glenjarvis.com> <55dc209b0803051558r3ae61776ya565d7ff6af393b9@mail.gmail.com> Message-ID: <30EBB466-6DBA-411D-9E49-B93BEC77FBDB@glenjarvis.com> Alex, I'm sorry this isn't coming across clearly, let me try this again - but shorter (and hopefully more clear). The API attached in the previous email forks two processes. This means three total processes are running at any one time. If we register the self.close() function, it will be executed three times (once for each process). I can avoid some of this by how I exit: (os._exit(1)) instead of sys.exit. I can also make a 'NormalExit' function, and re-register it at the times that processes are spawned, but this solution is not very elegant. In fact, it feels like I'm hacking to get this to work (although I believe I could). So, my over-all question is about the design approach. What have you (or another reading this message) come across when mixing Object Orientation, modules, atexit, and forked processes. I believed Object Orientation was a very nice way to approach this. However, it is no longer feeling so clean. It's starting to look "Ugly" to use Guido speak... Does this help explain my concerns? Cheers, Glen P.S. Executing the program with attached files as an API may also help clear up some of the confusion. However, the output is very messy since it comes from three processes all at once. -- 415-680-3964 glen at glenjarvis.com http://www.glenjarvis.com "You must be the change you wish to see in the world." -M. Gandhi On Mar 5, 2008, at 3:58 PM, Alex Martelli wrote: > I'd just rename __del__ to close, and add an > atexit.register(self.close) to the __init__ -- i.e., the "one obvious > way" to ensure that some termination is performed at program exit by > calling at that time an appropriate method on an object. If there are > constraints that stop you from pursuing this solution, I apologize but > I can't parse them from your mail, so please clarify -- thanks! > > Alex > > > On Wed, Mar 5, 2008 at 3:28 PM, Glen Jarvis > wrote: >> >> >> At BayPIGgies, I get a lot of help learning the language, good coding >> standards, etc? But, I hadn't seen much on good architecture/design, >> tips/tricks, etc. Maybe we can add a future talk on architecture >> ideas/concepts to our list? >> >> Before that day, however, I'm desperate to get some help with >> something that >> I designed (I thought well), only to find myself boxed in a corner. >> >> My project is obviously something I can't discuss in too much detail >> (although I think it's silly, I promised not to share; and I always >> try to >> keep my promises). So, I made a sample test case to demonstrate a >> hypothetical situation that mimics my situation. >> >> I have a self monitoring API that launches behind the scenes for the >> developers that use such a job. It is called simply by importing >> the library >> and instantiating an object. For example: >> >> import time >> import DaCoolAPI >> >> # This is kewl >> myDaCool = DaCoolAPI.DaCool() >> >> print "Ho hum.. working away..." >> for x in range(1, 5): >> print ".", >> time.sleep(1.0) >> >> But, behind the scenes, as soon as DaCoolAPI is instantiated, >> config files >> are parsed, external processes for monitoring are launched, etc. >> >> The problem is I had intended the entire time to do things, like >> clean-up, >> when the DaCool object was 'done' (i.e., almost always at program >> exit). >> >> In this test case, the DaCool.__del__ destructor is called without >> worry. >> However, that is NOT a guarantee in the big picture (my much larger >> app). >> Now, trying to get the Python atexit module >> (http://docs.python.org/lib/module-atexit.html) to do this same job >> is >> tricker than it looks. >> >> Everything has previously been at the object level. The atexit is a >> module >> level function. I don't readily have access to the objects I need >> at the >> module level. And, most of my clean-up are hidden within objects. >> Also, if I >> do this in the monitoring portion, I'm obviously going to get >> multiple >> processes all seeing the atexit function and get the exit handlers >> called >> two or three times. >> >> *gasp* >> >> When I thought I was using a clean object oriented design, I >> suddenly have a >> mess because I didn't know destructors were never guaranteed to run?. >> >> >> *breath* >> >> Now, with all of that said, I would like to ask my questions: >> >> 1) 1) Have I over-used the object-oriented model? >> 2) 2) Is there a clean fix to get this back into the object- >> oriented >> model? >> 3) 3) Do I need to change all objects so they are modules >> (although >> that isn't possible for at least one ? the one that needs to be >> provided for >> the programmer) >> >> >> Any feedback, ideas, input ? even pickiness if I missed some coding >> standards ? are all appreciated. It never hurts to tear this to >> pieces ? The >> gems I get are worth any bruises to my ego - and I get to learn >> something >> from those mistakes so I'm a better coder next time =) >> >> >> >> >> >> Cheers, >> >> >> Glen -- >> 415-680-3964 >> glen at glenjarvis.com >> http://www.glenjarvis.com >> >> "You must be the change you wish to see in the world." -M. Gandhi >> >> >> _______________________________________________ >> Baypiggies mailing list >> Baypiggies at python.org >> To change your subscription options or unsubscribe: >> http://mail.python.org/mailman/listinfo/baypiggies >> From glen at glenjarvis.com Thu Mar 6 02:39:00 2008 From: glen at glenjarvis.com (Glen Jarvis) Date: Wed, 5 Mar 2008 17:39:00 -0800 Subject: [Baypiggies] On Python Design In-Reply-To: <55dc209b0803051623p1b76df5l6f89e267671d444a@mail.gmail.com> References: <1065629E-1818-4FF0-BEA0-12B7A6587422@glenjarvis.com> <55dc209b0803051558r3ae61776ya565d7ff6af393b9@mail.gmail.com> <30EBB466-6DBA-411D-9E49-B93BEC77FBDB@glenjarvis.com> <55dc209b0803051623p1b76df5l6f89e267671d444a@mail.gmail.com> Message-ID: <2A24878B-A383-414D-9B50-9D60196C6A2E@glenjarvis.com> PUT DOWN THE CRACK PIPE LOUISE!!! I'm an idiot... Alex, I didn't actually understand your message before I sent a reply. Of course! You're right... in the __init__ of the "cool" object, I can call the atexit.register() function AFTER I instantiate the monitoring.... This way, the exit will occur only in the parent process. You can disregard my previous email because obviously I was obviously high on stupid when I wrote it. Your solution, as simple as it is, just wasn't coming to me. I was getting suddenly confused and, more importantly, worried, that I'd boxed myself in the corner. This was so easy. I'm on BART, waiting until I can get to embaracadero so I can send this... Is it Friday yet? =) Thanks again for all of your help... Glen -- 415-680-3964 glen at glenjarvis.com http://www.glenjarvis.com "You must be the change you wish to see in the world." -M. Gandhi On Mar 5, 2008, at 4:23 PM, Alex Martelli wrote: > I should clarify what I mean, apparently: you can just call > atexit.register from the __init__ of the "cool" object AFTER you > instantiate the monitor object, since in the parent process does that > initialization return to the caller. > > On Wed, Mar 5, 2008 at 4:13 PM, Glen Jarvis > wrote: >> Alex, >> I'm sorry this isn't coming across clearly, let me try this again >> - but shorter (and hopefully more clear). >> >> The API attached in the previous email forks two processes. This >> means >> three total processes are running at any one time. If we register the >> self.close() function, it will be executed three times (once for each >> process). I can avoid some of this by how I exit: (os._exit(1)) >> instead of sys.exit. >> >> I can also make a 'NormalExit' function, and re-register it at the >> times that processes are spawned, but this solution is not very >> elegant. In fact, it feels like I'm hacking to get this to work >> (although I believe I could). >> >> So, my over-all question is about the design approach. What have you >> (or another reading this message) come across when mixing Object >> Orientation, modules, atexit, and forked processes. > > OO vs modules really has nothing to do with it. Each forked process > should see to its own termination cleanup (if any) by calling > appropriate atexit.register. > >> I believed Object Orientation was a very nice way to approach this. > > I disagree -- initializing a class exactly once and having its only > instance "just go away immediately" makes not much sense to me when > one can simply call a function instead -- the kind of thing one ends > up doing in a language that "forces" OO design, like Java, not > appropriate in a multiparadigm language allowing both objects and > functions, like C++ or Python. But, that's not really connected to > the atexit/fork issue, one way or another. > >> However, it is no longer feeling so clean. It's starting to look >> "Ugly" to use Guido speak... >> >> Does this help explain my concerns? > > Not really -- why not do the obvious thing (ensuring atexit.register > is only called in the parent process after the fork)? > > > Alex From aahz at pythoncraft.com Thu Mar 6 16:50:55 2008 From: aahz at pythoncraft.com (Aahz) Date: Thu, 6 Mar 2008 07:50:55 -0800 Subject: [Baypiggies] On Python Design In-Reply-To: <1065629E-1818-4FF0-BEA0-12B7A6587422@glenjarvis.com> References: <1065629E-1818-4FF0-BEA0-12B7A6587422@glenjarvis.com> Message-ID: <20080306155055.GA11547@panix.com> On Wed, Mar 05, 2008, Glen Jarvis wrote: > > But, behind the scenes, as soon as DaCoolAPI is instantiated, config > files are parsed, external processes for monitoring are launched, etc. > > The problem is I had intended the entire time to do things, like clean- > up, when the DaCool object was ?done? (i.e., almost always at program > exit). > > In this test case, the DaCool.__del__ destructor is called without > worry. However, that is NOT a guarantee in the big picture (my much > larger app). Now, trying to get the Python atexit module > (http://docs.python.org/lib/module-atexit.html ) to do this same job is > tricker than it looks. Another issue, of course, is that you need to record DaCool in some robust external data structure (e.g. database) so that if DaCool gets wedged or blows up you can still have some kind of cleanup process that knows enough about DaCool to do the work. -- Aahz (aahz at pythoncraft.com) <*> http://www.pythoncraft.com/ "All problems in computer science can be solved by another level of indirection." --Butler Lampson From slander at unworkable.org Thu Mar 6 21:51:20 2008 From: slander at unworkable.org (Harry Tormey) Date: Thu, 6 Mar 2008 20:51:20 +0000 Subject: [Baypiggies] PyGame SF meetup March 10th 7:30pm Metreon food court Message-ID: <20080306205120.GA8562@unworkable.org> Hi All, Just writing to say that this months pygamesf meet up is on Monday March 10th from 7pm on at the Metreon food court San Francisco. This month's presentations are: Niall O'Higgins "BitTorrent swarm visualisation with Python and C" Adam W. Schwem "Rope Physics and Active Ragdolls" If anyone else would like to give a micro presentation, show demos or just talk about what they are doing or generally give examples on anything to do with pygame please feel free to head along. To subscribe to the pygamesf mailing list simply email pygame-sf+subscribe at unworkable.org -Harry From sbradley at vmware.com Fri Mar 7 00:44:45 2008 From: sbradley at vmware.com (Scott Bradley) Date: Thu, 6 Mar 2008 15:44:45 -0800 Subject: [Baypiggies] Job Posting: VMware is looking for a Python Tools Guru to Work on Our Build Infrastructure Message-ID: <2AA709CAB2917A468F378F42D9A6799863E1C5@PA-EXCH06.vmware.com> Hello, BayPIGgies! How are you? My name is Scott Bradley, and I'm with VMware in Palo Alto! Although I'm sure you've heard of us, I'll still give a brief synopsis of our company: VMware is virtualization software that allows you to run multiple operating systems at the same time. We are the global leader in virtual infrastructure software for industry-standard systems, and the fastest-growing software product company in the Silicon Valley. When you grow at a very rapid pace like we are, you are always looking for the best and most elegant process to improve the ever-expanding build systems, and always looking for forward-thinking Engineers who can take us there! A little about our environment and team: Our Build environment has been eagerly moving towards being fully driven by Python and SCons (we are big on Open Source software). We are moving away from Perl for Python and SCons from Make. As of now, we have two full product lines converted to Python. However, there's much more work to be done! Here's a little information about what we look like from the inside. Our Build environment currently has 300 build machines "and growing", and we work with 2500 users, 28,000 clients, on 1000 branches on virtually all of the VMware products. There are currently 24 people on the Build Team (12 Build Release, 12 Build Infrastructure). There are 700 Gig under source control (5 million files); we are using 11 separate Perforce installations in CM, 15 proxy servers, 12 physical servers, 6 Virtual Machines for automation and monitoring, with over 2 Terabytes of physical RAM to give you idea of the size, scope and scale of our environment. I hope this information piques your interest! We are looking for a Build Infrastructure Engineer (a build developer) who can think independently and work closely with our Build Release team and our Senior Development Engineers, and play a critical role in improving build infrastructures to improve productivity for both development and build engineering. You will engage new tools into our environment by proposal, design and implementation, and you must be able to work independently and have strong leadership skills. You would have your fingers on the pulse of how we do the work here, as you would be actively involved with product and design meetings. The Job Description is pasted below my contact information, so you can take a look. People with previous experiences building Linux distributions (Red Hat, Fedora, Debian, SuSE, Ubuntu, Slackware, etc.) or open source software experience are VERY welcome here! We look for people who aren't satisfied with just turning a crank, but who take ownership of what they work on, creating new ways to do tasks, automating and troubleshooting, to independently improve the overall build systems. There are several challenging projects that would require an independent thinker and worker to tackle. Many of these really require a "Tools Guru", someone who can write tools in Python that can optimize functionality, and imaginatively devise new uses for the language to optimize the environment. Certainly, there are quite a few large-scale projects that would keep you working closely with our Build Team and Development Engineers. One of the projects that we have is the compiling all of the 3rd party tools used in Build and Development into Linux and Windows usability and converting them to be backwards compatible for all of the Vmware products. This includes management, maintenance and development of the tools to be readily available for all products in both platforms moving forward. Your proposals and design of projects and solutions will directly affect how we grow as a team, how our products grow, and ultimately how we grow as a company. Most importantly, if you were interested, you would have a great opportunity to make a significant impact in the virtualization industry, which is still in its early stages and fast emerging! That's one thing we can offer that nobody else can, as we are the industry leaders in this uncharted territory. I know someone with your career level has had great experiences like this before. If you yearn to make a real impact, that is the kind of opportunity we offer! Of course, we are looking for you! I'd love to speak with you more about what interests you! You can contact me directly at (650) 427-1247, or toll-free at 1-877-486-9273. Interested parties can send their resumes directly to me: sbradley at vmware.com . You can also send questions to me as well! I hope to hear from you! Many thanks! Scott Bradley VMware 650-427-1247 Toll Free: 1-877-486-9273 3401 Hillview Ave. Palo Alto, CA 94304 www.vmware.com Feel free to connect with me on LinkedIn http://www.linkedin.com/in/scottbradleyvmware VMWare is Looking for Great Build Infrastructure Engineers! VMware, the industry leader in high-performance, enterprise-class x86 virtualization technology, is looking for an organized and detail-oriented Build Infrastructure Engineer to play a critical role in improving build infrastructures to improve productivity for both development and build engineering. As the Build Infrastructure Engineer, you will get the opportunity to work closely with build release team and senior development engineers in products and design meetings in large scale projects. The Build Infrastructure Engineer will engage new tools into our environment by proposal, design and implementation, and must be independent and have strong leadership skills. Job Requirements: * 3-5+ years of experience in software development roles on Windows and/or Linux platforms. * Must know Python and shell or Perl scripting. * Must know Perforce (preferred), CVS, Subversion or Clearcase. * Must have expertise in C/C++ * Must have Automated Build experience. * Must have in-depth understanding of makefiles. Experiences with SCons strongly desirable. * Desired: experience with cross-platform build environments, such as Linux, Windows, Solaris. * Understand symbol resolution issues, including both dynamic linking and static linking. * Experience working with scripting subsystems in excess of 1,000 lines of code. * Extremely knowledgeable in the entire development build toolchain, including compilers, linkers, debuggers. Experiences building cross-compilers is desirable. * Experience building GNU autoconf/automake based open-source software on Unix platforms is desirable. Interested parties can send resumes to: Scott Bradley sbradley at vmware.com Scott Bradley VMware 650-427-1247 Toll Free: 1-877-486-9273 3401 Hillview Ave. Palo Alto, CA 94304 www.vmware.com Feel free to connect with me on LinkedIn http://www.linkedin.com/in/scottbradleyvmware VMware (NYSE:VMW) is transforming computing through virtualization. We are the global leader in virtual infrastructure software for industry-standard systems. Millions of people and thousands of organizations around the world-including all of the Fortune 100-use VMware virtualization solutions to drastically reduce IT costs while increasing the efficiency, utilization and flexibility of their existing computer hardware. VMware has an open, innovative, technology-driven culture. With revenue growth of 100% or more for the last three years and our recent successful IPO, the future looks bright at VMware. Nick Sturiale of venture firm Sevin Rosen called virtualization "the biggest wave in IT right now". VMware is headquartered in Palo Alto, CA, and has more than 4,000 employees working in over 40 offices around the world. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/baypiggies/attachments/20080306/4c5994ed/attachment-0001.htm -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: image/gif Size: 1364 bytes Desc: att27979.gif Url : http://mail.python.org/pipermail/baypiggies/attachments/20080306/4c5994ed/attachment-0001.gif From jim at well.com Sat Mar 8 01:50:38 2008 From: jim at well.com (jim stockford) Date: Fri, 7 Mar 2008 16:50:38 -0800 Subject: [Baypiggies] March meeting is Thursday 3/20 Message-ID: <89eee5ab689a2880350adc530b182cd3@well.com> Drew Perttula will share his pycon experiences in the Tunis room; check in at building 43. From guido at python.org Sat Mar 8 06:26:42 2008 From: guido at python.org (Guido van Rossum) Date: Fri, 7 Mar 2008 21:26:42 -0800 Subject: [Baypiggies] Fwd: [Pycon-interest] Have Your City Host PyCon 2010! In-Reply-To: <99760BD8-9CAF-4831-86BD-5B33DCA2AB30@mac.com> References: <99760BD8-9CAF-4831-86BD-5B33DCA2AB30@mac.com> Message-ID: FYI ---------- Forwarded message ---------- From: Ted Pollari Date: Fri, Mar 7, 2008 at 6:38 PM Subject: [Pycon-interest] Have Your City Host PyCon 2010! To: python-announce at python.org Cc: "Pycon-Organizers at Python.Org" , pycon-interest at python.org The PyCon organizers are excited to announce the start of the PyCon 2010 planning process! Even more importantly, we're looking for motivated local groups to spearhead this volunteer-run, community-based conference. In years past, the locale for the next year was arranged about a year in advance. That worked while we were a smaller conference with many venues to choose from. PyCon 2008, to be held soon in the Chicago area, has over 950 registered attendees at this time. That is over one and a half times the number of attendees from just the year before! We're excited to see PyCon grow, but it also means that how we plan PyCon needs to change just a little bit. The first change is a change in the timeline. Starting with PyCon 2010, we're aiming to begin planning two years ahead. To help us do that, PyCon 2009 will also be held in the Chicago area, at the same venue as 2008. The second change is that the bid process will not be as detail-heavy and will not demand as much initial work by local groups. Instead, we're focusing on the heart and soul of PyCon: the community of volunteers -- we're looking to find excited and committed groups who want to be the backbone of PyCon 2010. The details will be worked out in a collaborative process, with local groups working in conjunction the volunteer PyCon organizers and the Python Software Foundation's Conference Committee. Still interested? Curious? Do you want PyCon 2010 hosted in your area? Here's what to do: ? Form a group of people interested in helping with the conference planning. ? If you're attending PyCon 2008, join us for a kick-off meeting over lunch on Saturday, March 15th. ? Make sure at least one person from your group is on the PyCon organizer's list[1] and, as soon as possible, announce your interest in submitting a bid on the list. This process should be viewed as cooperative -- we're here to help and encourage any group that wants to take on hosting PyCon. ? Finally, assemble your official bid, referring to the PyCon Bid Guidelines [2] for information and deadlines and submit it to the PyCon organizer's list before the deadline listed in the PyCon Bid Guidelines. Posting your bid to a publicly viewable website wouldn't be a bad idea either... If you have any questions or need any help, feel free to email the organizer's list and ask away! [1] http://mail.python.org/mailman/listinfo/pycon-organizers [2] http://wiki.python.org/moin/PyConPlanning/BidRequirements _______________________________________________ Pycon-interest mailing list Pycon-interest at python.org http://mail.python.org/mailman/listinfo/pycon-interest -- --Guido van Rossum (home page: http://www.python.org/~guido/) From aahz at pythoncraft.com Sat Mar 8 08:18:39 2008 From: aahz at pythoncraft.com (Aahz) Date: Fri, 7 Mar 2008 23:18:39 -0800 Subject: [Baypiggies] Fwd: [Pycon-interest] Have Your City Host PyCon 2010! In-Reply-To: References: <99760BD8-9CAF-4831-86BD-5B33DCA2AB30@mac.com> Message-ID: <20080308071838.GB18890@panix.com> On Fri, Mar 07, 2008, Guido van Rossum wrote: > > FYI Edward Cherlin and I are both on pycon-organizers already and have a wiki page set up at http://wiki.python.org/moin/PyCon2010BayPiggiesProposal Anyone who is interested in being a "key" local volunteer in running the bid should join pycon-organizers. -- Aahz (aahz at pythoncraft.com) <*> http://www.pythoncraft.com/ "All problems in computer science can be solved by another level of indirection." --Butler Lampson From jjinux at gmail.com Sun Mar 9 06:26:16 2008 From: jjinux at gmail.com (Shannon -jj Behrens) Date: Sat, 8 Mar 2008 21:26:16 -0800 Subject: [Baypiggies] March meeting is Thursday 3/20 In-Reply-To: <89eee5ab689a2880350adc530b182cd3@well.com> References: <89eee5ab689a2880350adc530b182cd3@well.com> Message-ID: On Fri, Mar 7, 2008 at 4:50 PM, jim stockford wrote: > Drew Perttula will share his pycon experiences in > the Tunis room; check in at building 43. I'm also willing to share my experiences at PyCon as I did last year. Best Regards, -jj -- I, for one, welcome our new Facebook overlords! http://jjinux.blogspot.com/ From jjinux at gmail.com Sun Mar 9 06:32:44 2008 From: jjinux at gmail.com (Shannon -jj Behrens) Date: Sat, 8 Mar 2008 21:32:44 -0800 Subject: [Baypiggies] recursive generators Message-ID: Here's a fun piece of code that I just submitted to the cookbook. import types __docformat__ = "restructuredtext" def walk_recursive_generators(generator): """Walk a tree of generators *without* yielding things recursively. Let's suppose you have this: >>> def generator0(): ... yield 3 ... yield 4 ... >>> def generator1(): ... yield 2 ... for i in generator0(): # <- This is the ugly part. ... yield i ... yield 5 ... >>> def generator2(): ... yield 1 ... for i in generator1(): ... yield i ... yield 6 ... >>> for i in generator2(): ... print i ... 1 2 3 4 5 6 Notice the way the generators are recursively yielding values. This library uses a technique called "bounce" that is usually used to implement stackless interpreters. It lets you write: >>> def generator0(): ... yield 3 ... yield 4 ... >>> def generator1(): ... yield 2 ... yield generator0() # <- This is the improved version. ... yield 5 ... >>> def generator2(): ... yield 1 ... yield generator1() ... yield 6 ... >>> for i in walk_recursive_generators(generator2()): ... print i ... 1 2 3 4 5 6 Look Ma! No recursive yields! """ stack = [generator] while stack: for x in stack[-1]: if isinstance(x, types.GeneratorType): stack.append(x) # Recurse. break else: yield x else: stack.pop() def _test(): import doctest doctest.testmod() if __name__ == "__main__": _test() If you didn't understand a word I said, don't worry about it. This is a weird use case ;) -jj -- I, for one, welcome our new Facebook overlords! http://jjinux.blogspot.com/ From echerlin at gmail.com Sun Mar 9 06:37:49 2008 From: echerlin at gmail.com (Edward Cherlin) Date: Sat, 8 Mar 2008 21:37:49 -0800 Subject: [Baypiggies] Fwd: [PyCON-Organizers] Have Your City Host PyCon 2010! In-Reply-To: References: <99760BD8-9CAF-4831-86BD-5B33DCA2AB30@mac.com> Message-ID: On Fri, Mar 7, 2008 at 6:38 PM, Ted Pollari wrote: > The PyCon organizers are excited to announce the start of the PyCon > 2010 planning process! > > Even more importantly, we're looking for motivated local groups to > spearhead this volunteer-run, community-based conference. > > In years past, the locale for the next year was arranged about a year > in advance. That worked while we were a smaller conference with many > venues to choose from. PyCon 2008, to be held soon in the Chicago > area, has over 950 registered attendees at this time. OK, we'll think 1,000-1,500 > That is over one > and a half times the number of attendees from just the year before! > We're excited to see PyCon grow, but it also means that how we plan > PyCon needs to change just a little bit. > > The first change is a change in the timeline. Starting with PyCon > 2010, we're aiming to begin planning two years ahead. To help us do > that, PyCon 2009 will also be held in the Chicago area, at the same > venue as 2008. > > The second change is that the bid process will not be as detail-heavy > and will not demand as much initial work by local groups. Instead, > we're focusing on the heart and soul of PyCon: the community of > volunteers -- we're looking to find excited and committed groups who > want to be the backbone of PyCon 2010. The details will be worked out > in a collaborative process, with local groups working in conjunction > the volunteer PyCon organizers and the Python Software Foundation's > Conference Committee. > > > Still interested? Curious? Do you want PyCon 2010 hosted in your area? San Francisco Bay Area: Yes. > Here's what to do: > > ? Form a group of people interested in helping with the conference > planning. Done. > ? If you're attending PyCon 2008, join us for a kick-off meeting over > lunch on Saturday, March 15th. Thanks. Some of us will be there. > ? Make sure at least one person from your group is on the PyCon > organizer's list[1] Done. > and, as soon as possible, announce your interest > in submitting a bid on the list. Yes, we're interested. >This process should be viewed as > cooperative -- we're here to help and encourage any group that wants > to take on hosting PyCon. > > ? Finally, assemble your official bid, referring to the PyCon Bid > Guidelines [2] for information and deadlines and submit it to the > PyCon organizer's list before the deadline listed in the PyCon Bid > Guidelines. Posting your bid to a publicly viewable website wouldn't > be a bad idea either... I'll send it separately after we go over it once more. There is a draft on the Wiki. I don't notice any changes to the requirements on http://wiki.python.org/moin/PyConPlanning/BidRequirements. http://wiki.python.org/moin/PyCon2010BayPiggiesBid About us http://wiki.python.org/moin/PyCon2010BayPiggiesProposal Draft proposal We are the only one listed on the page http://wiki.python.org/moin/PyCon2010Bid > If you have any questions or need any help, feel free to email the > organizer's list and ask away! Can we have an XO Teach-In? We're hoping to have something running by then at the Exploratorium and Zeum in San Francisco, the Children's Discovery Museum and Tech Museum in San Jose, and the Computer History Museum in Mountain View, at least. A computer conference I attended arranged for the conference banquet to be at the Exploratorium, but I don't know what its capacity is. Wait, now I do. 110,000 sq. ft., much of it occupied by cool interactive exhibits. http://www.exploratorium.edu/rentals/facilities/fullfacility.html Full-facility rental accommodates small or large groups from 100 to 400 guests for a seated dinner, or up to 2,500 guests for a strolling reception. A full-facility rental includes: * Exclusive use of hundreds of exciting, fully operational, interactive exhibits * Ample on-site parking for cars, motor coaches, and your valet service * Use of the 125-seat McBean Theater * Option to use the Cafe space and its tables and chairs (seating for ~163) for an additional charge * Professional special events staff: an Event Coordinator, Operations Technician, Receptionist, and Security staff * Explainers (guides who assist with exhibits and provide demonstrations) * Access for guests with disabilities We have to call or write for rates. The standard contract is for six hours use. The adjoining Palace of Fine Arts Theatre can be rented separately or in conjunction with an Exploratorium full-facility rental. 962 seats. Rates: http://www.palaceoffinearts.org/rates.html I bet the Exploratorium would love to have us do a code sprint on stuff for exhibits. > [1] http://mail.python.org/mailman/listinfo/pycon-organizers > > [2] http://wiki.python.org/moin/PyConPlanning/BidRequirements -- Edward Cherlin End Poverty at a Profit by teaching children business http://www.EarthTreasury.org/ "The best way to predict the future is to invent it."--Alan Kay From jjinux at gmail.com Sun Mar 9 06:40:05 2008 From: jjinux at gmail.com (Shannon -jj Behrens) Date: Sat, 8 Mar 2008 21:40:05 -0800 Subject: [Baypiggies] Using Google translate web page programmaticaly In-Reply-To: <47C7C0F7.7080301@nttmcl.com> References: <8249c4ac0802281149x7cc16fd2p647baaac2973a1b2@mail.gmail.com> <47C7C0F7.7080301@nttmcl.com> Message-ID: On Fri, Feb 29, 2008 at 12:23 AM, Kelly Yancey wrote: > Tony Cappellini wrote: > > Hello, > > > > > > Have any Baypiggies used the Google translate web page programmaticaly? > > > > I wish to access this url > > * http://translate.google.com/translate_t?langpair=ja|en > > (where the from language and to language may vary from request to request) > > * submit a text string to be translated > > * retrieve the translation or status indicating the translation was > > not possible. > > > > I realize this is the opposite direction from what you asked, but > whenever I need English to Japanese translations, I just download Jim > Breen's edict dictionary file and use the following script: > > import re > > def stripAnnotations((ja, en)): > ja = re.sub('(?u)\s*\[.*\]\s*', '', ja) > en = re.sub('\s*\(.*\)\s*', '', en) > return (en, ja) > > e2j = dict(( > stripAnnotations(line.decode('euc-jp').split('/')[:2]) > for line in open('edict').readlines() )) > > def translateE2J(s): > return ''.join(filter(None, map(e2j.get, s.split()))) > > I've found this works just as well as, if not better than, Google > Translate or Babblefish(*). I suspect the same technique will work for > Japanese to English translation too, once you get the minor issue of > word-splitting solved. > > Kelly > > > (*) Assuming you are trying to produce entertaining jibberish, which I > assume you are. > > ** This entire post is tongue-in-cheek. Seriously, though, don't be > cheap: hire a professional to do your translations. You'll be glad > you did. I'd have to agree with Kelly. If it's open source, get your users to do it. We had a lot of success with this approach at Foxmarks. If it's for pay, wait until you have some money, and then hire a service. I had success with this approach at IronPort. It's not actually all that expensive if you do as much setup work as possible. The only drawback is that the professional companies seem not to know anything about GNU gettext. Apparently, they're only familiar with Java property files :-/ Best Regards, -jj -- I, for one, welcome our new Facebook overlords! http://jjinux.blogspot.com/ From echerlin at gmail.com Sun Mar 9 21:44:08 2008 From: echerlin at gmail.com (Edward Cherlin) Date: Sun, 9 Mar 2008 13:44:08 -0700 Subject: [Baypiggies] Fwd: [sugar] Database Activity In-Reply-To: <47D31B0F.8040309@litenverden.com> References: <47D31B0F.8040309@litenverden.com> Message-ID: Python UTF-8 issue. Can anybody help? ---------- Forwarded message ---------- From: 7150 Date: Sat, Mar 8, 2008 at 4:02 PM Subject: Re: [sugar] Database Activity To: sugar at lists.laptop.org This will be my last post on this topic until I learn a bit more. It appears that pysqlite has some data integrity issues. Interesting link to pysqlite "bug" discussion: http://osdir.com/ml/python.db.pysqlite.user/2006-04/msg00020.html --- "I have built sqlite databases containing utf-8 encoded text. When I access them using pysqlite, utf-8 codepoints appear to be converted to latin-1." It does this. How to stop it? An answer on the list was (http://osdir.com/ml/python.db.pysqlite.user/2006-04/msg00022.html): > This should be: > > req.write(elem.encode('utf-8')) > > write() expects a str object, so what happened > in your code was an implicit conversion of your > unicode object to a str, doing the encoding using > the default system encoding, here 'ascii'. The req.write stuff is Greek to me, but I'll see what I can find out about it. Then from the same post: "So, upon reflection, my situation boils down to this: (1) A utf-8 encoded string in an sqlite database is queried using pysqlite which returns a latin-1 string (a gratuitous/silent/unspecified/unrequested conversion). . . . pysqlite QUESTIONS: Question 1: Why does pysqlite convert the utf-8 sting to latin-1 in the *query process* when my sqlite settings are for utf-8? i.e., sqlite.h macro: #define SQLITE_UTF8 1 Question 2: Does the pysqlite user (programmer) have any control over this query/conversion? (I see nothing in the Python Database API, or the pysqlite/sqlite documentation, about either automatic or specified conversions. Also, this conversion does not occur using the sqlite3 client.) Question 3: Is this a pysqlite bug or a feature, and why?" The group had no further answer for the guy. --- Someone else has noted thet the SQLite3 client does not transform the data. If I learn how to query my UTF-8 database on the XO, I'll let you know. But, it's not an XO problem. --- http://www.litenverden.org _______________________________________________ Sugar mailing list Sugar at lists.laptop.org http://lists.laptop.org/listinfo/sugar -- Edward Cherlin End Poverty at a Profit by teaching children business http://www.EarthTreasury.org/ "The best way to predict the future is to invent it."--Alan Kay From kelly at nttmcl.com Mon Mar 10 08:12:27 2008 From: kelly at nttmcl.com (Kelly Yancey) Date: Mon, 10 Mar 2008 16:12:27 +0900 Subject: [Baypiggies] Fwd: [sugar] Database Activity In-Reply-To: References: <47D31B0F.8040309@litenverden.com> Message-ID: <47D4DF5B.8040309@nttmcl.com> Edward Cherlin wrote: > Python UTF-8 issue. Can anybody help? > With no code, hence relying on my psychic debugging prowless.... > Question 1: Why does pysqlite convert the utf-8 sting to latin-1 in > the *query process* when my sqlite settings are for utf-8? > i.e., sqlite.h macro: #define SQLITE_UTF8 1 It doesn't*. The poster's code did (or a library he is calling did). See answer to Question 2. * Unless you set the text_factory to something other than unicode, that is. http://oss.itsystementwicklung.de/download/pysqlite/doc/usage-guide.html#text_factory > > Question 2: Does the pysqlite user (programmer) have any control > over this query/conversion? (I see nothing in the Python Database > API, or the pysqlite/sqlite documentation, about either automatic or > specified conversions. Also, this conversion does not occur using > the sqlite3 client.) > Yes, see footnote to Question 1. (I guess he didn't read the documentation very closely. :( ) My experience is that if a unicode string is recorded to the database, it will be returned as a unicode string. Now if you use that unicode object in a string context somewhere, python will try to convert it based on your default encoding. Which the original poster states is "ascii". Look fishy? I think so. Note that the error is a Unicode*Encode*Error, not a Unicode*Decode*Error. The string returned by pysqlite was unicode, the poster's code is trying to encode it into a non-unicode character set (ascii) somewhere. > Question 3: Is this a pysqlite bug or a feature, and why?" If my hunch is right, then it has nothing to do with pysqlite. It is a python feature. The original poster has a bug in their code. No surprises here. How to confirm if my hunch is right: 1. Set the default encoding to 'utf-8'. Run test program. Does it die? (The original poster seems to recognize that this would be a good way to identify where the problem lies but then refuses to actually try it?!?) 2. If the UnicodeEncodeError goes away, congratulations you have identified that the bug is somewhere in your code. You got a perfectly-good unicode object back from the pysqlite and erroneously used it in a non-unicode string context. Python tried to convert for you. But you asked it to convert to 'ascii' which is can't do. You got an exception. Please do not post your code for us to find your bug for you. 3. Set the default encoding back to 'ascii' if you like. 4. Look a little higher up in your traceback to find *your* code. That is where you are erroniously using the unicode object in a string context. You may be calling a third-party API that expects strings rather than unicode objects. Read the docs. Fix your code. Rinse and repeat until all of your UnicodeEncodeError exceptions go away. 5. Audit your code for further similar bugs. The worst part about this question is that Christian Boos already gave the same answer (albeit more succinctly)! http://osdir.com/ml/python.db.pysqlite.user/2006-04/msg00021.html Kelly P.S. I was feeling pretty generous when I started my free psychic debugging session. But I swear I can't help but think this was all a ploy to boost osdir's ad views and now I'm quite irritable. -- Kelly Yancey http://kbyanc.blogspot.com/ > > ---------- Forwarded message ---------- > From: 7150 > Date: Sat, Mar 8, 2008 at 4:02 PM > Subject: Re: [sugar] Database Activity > To: sugar at lists.laptop.org > > This will be my last post on this topic until I learn a bit more. > > It appears that pysqlite has some data integrity issues. > > Interesting link to pysqlite "bug" discussion: > http://osdir.com/ml/python.db.pysqlite.user/2006-04/msg00020.html > > --- > > "I have built sqlite databases containing utf-8 encoded text. When I > access them using pysqlite, utf-8 codepoints appear to be converted to > latin-1." > > It does this. > > How to stop it? > > An answer on the list was > (http://osdir.com/ml/python.db.pysqlite.user/2006-04/msg00022.html): > > > This should be: > > > > req.write(elem.encode('utf-8')) > > > > write() expects a str object, so what happened > > in your code was an implicit conversion of your > > unicode object to a str, doing the encoding using > > the default system encoding, here 'ascii'. > > The req.write stuff is Greek to me, but I'll see what I can find out > about it. > > Then from the same post: > > "So, upon reflection, my situation boils down to this: > > (1) A utf-8 encoded string in an sqlite database is queried using > pysqlite which returns a latin-1 string (a > gratuitous/silent/unspecified/unrequested conversion). > > . . . > > pysqlite QUESTIONS: > > Question 1: Why does pysqlite convert the utf-8 sting to latin-1 in the > *query process* when my sqlite settings are for utf-8? > i.e., sqlite.h macro: #define SQLITE_UTF8 1 > > Question 2: Does the pysqlite user (programmer) have any control over > this query/conversion? (I see nothing in the Python Database API, or > the pysqlite/sqlite documentation, about either automatic or specified > conversions. Also, this conversion does not occur using the sqlite3 > client.) > > Question 3: Is this a pysqlite bug or a feature, and why?" > > The group had no further answer for the guy. > > --- > > Someone else has noted thet the SQLite3 client does not transform the > data. If I learn how to query my UTF-8 database on the XO, I'll let you > know. But, it's not an XO problem. > > > > --- > > http://www.litenverden.org > _______________________________________________ > Sugar mailing list > Sugar at lists.laptop.org > http://lists.laptop.org/listinfo/sugar > > > From jjinux at gmail.com Mon Mar 10 16:57:34 2008 From: jjinux at gmail.com (Shannon -jj Behrens) Date: Mon, 10 Mar 2008 08:57:34 -0700 Subject: [Baypiggies] Fwd: [sugar] Database Activity In-Reply-To: <47D4DF5B.8040309@nttmcl.com> References: <47D31B0F.8040309@litenverden.com> <47D4DF5B.8040309@nttmcl.com> Message-ID: On Mon, Mar 10, 2008 at 12:12 AM, Kelly Yancey wrote: > Edward Cherlin wrote: > > Python UTF-8 issue. Can anybody help? > > > > With no code, hence relying on my psychic debugging prowless.... > > > > Question 1: Why does pysqlite convert the utf-8 sting to latin-1 in > > the *query process* when my sqlite settings are for utf-8? > > i.e., sqlite.h macro: #define SQLITE_UTF8 1 > > It doesn't*. The poster's code did (or a library he is calling did). > See answer to Question 2. > > * Unless you set the text_factory to something other than unicode, > that is. > > http://oss.itsystementwicklung.de/download/pysqlite/doc/usage-guide.html#text_factory > > > > > > Question 2: Does the pysqlite user (programmer) have any control > > over this query/conversion? (I see nothing in the Python Database > > API, or the pysqlite/sqlite documentation, about either automatic or > > specified conversions. Also, this conversion does not occur using > > the sqlite3 client.) > > > > Yes, see footnote to Question 1. > (I guess he didn't read the documentation very closely. :( ) > > My experience is that if a unicode string is recorded to the > database, it will be returned as a unicode string. > Now if you use that unicode object in a string context somewhere, > python will try to convert it based on your default encoding. Which the > original poster states is "ascii". Look fishy? I think so. Note that > the error is a Unicode*Encode*Error, not a Unicode*Decode*Error. The > string returned by pysqlite was unicode, the poster's code is trying to > encode it into a non-unicode character set (ascii) somewhere. > > > > Question 3: Is this a pysqlite bug or a feature, and why?" > > If my hunch is right, then it has nothing to do with pysqlite. It is > a python feature. The original poster has a bug in their code. No > surprises here. > > How to confirm if my hunch is right: > > 1. Set the default encoding to 'utf-8'. Run test program. Does it > die? (The original poster seems to recognize that this would be a > good way to identify where the problem lies but then refuses to > actually try it?!?) > 2. If the UnicodeEncodeError goes away, congratulations you have > identified that the bug is somewhere in your code. You got a > perfectly-good unicode object back from the pysqlite and > erroneously used it in a non-unicode string context. Python > tried to convert for you. But you asked it to convert to 'ascii' > which is can't do. You got an exception. Please do not post > your code for us to find your bug for you. > 3. Set the default encoding back to 'ascii' if you like. > 4. Look a little higher up in your traceback to find *your* code. > That is where you are erroniously using the unicode object in > a string context. You may be calling a third-party API that > expects strings rather than unicode objects. Read the docs. Fix > your code. Rinse and repeat until all of your UnicodeEncodeError > exceptions go away. > 5. Audit your code for further similar bugs. > > The worst part about this question is that Christian Boos already > gave the same answer (albeit more succinctly)! > http://osdir.com/ml/python.db.pysqlite.user/2006-04/msg00021.html > > Kelly > > P.S. I was feeling pretty generous when I started my free psychic > debugging session. But I swear I can't help but think this > was all a ploy to boost osdir's ad views and now I'm quite > irritable. > > -- > Kelly Yancey > http://kbyanc.blogspot.com/ > > > > > > > ---------- Forwarded message ---------- > > From: 7150 > > Date: Sat, Mar 8, 2008 at 4:02 PM > > Subject: Re: [sugar] Database Activity > > To: sugar at lists.laptop.org > > > > This will be my last post on this topic until I learn a bit more. > > > > It appears that pysqlite has some data integrity issues. > > > > Interesting link to pysqlite "bug" discussion: > > http://osdir.com/ml/python.db.pysqlite.user/2006-04/msg00020.html > > > > --- > > > > "I have built sqlite databases containing utf-8 encoded text. When I > > access them using pysqlite, utf-8 codepoints appear to be converted to > > latin-1." > > > > It does this. > > > > How to stop it? > > > > An answer on the list was > > (http://osdir.com/ml/python.db.pysqlite.user/2006-04/msg00022.html): > > > > > This should be: > > > > > > req.write(elem.encode('utf-8')) > > > > > > write() expects a str object, so what happened > > > in your code was an implicit conversion of your > > > unicode object to a str, doing the encoding using > > > the default system encoding, here 'ascii'. > > > > The req.write stuff is Greek to me, but I'll see what I can find out > > about it. > > > > Then from the same post: > > > > "So, upon reflection, my situation boils down to this: > > > > (1) A utf-8 encoded string in an sqlite database is queried using > > pysqlite which returns a latin-1 string (a > > gratuitous/silent/unspecified/unrequested conversion). > > > > . . . > > > > pysqlite QUESTIONS: > > > > Question 1: Why does pysqlite convert the utf-8 sting to latin-1 in the > > *query process* when my sqlite settings are for utf-8? > > i.e., sqlite.h macro: #define SQLITE_UTF8 1 > > > > Question 2: Does the pysqlite user (programmer) have any control over > > this query/conversion? (I see nothing in the Python Database API, or > > the pysqlite/sqlite documentation, about either automatic or specified > > conversions. Also, this conversion does not occur using the sqlite3 > > client.) > > > > Question 3: Is this a pysqlite bug or a feature, and why?" > > > > The group had no further answer for the guy. > > > > --- > > > > Someone else has noted thet the SQLite3 client does not transform the > > data. If I learn how to query my UTF-8 database on the XO, I'll let you > > know. But, it's not an XO problem. I didn't actually look at the problem like Kelly did, but I can summarize: * When talking to a database, you have to make sure that the database itself is using the right encoding and that the connection to the database is using the right encoding. For MySQLdb, I like to configure it to use UTF-8 and have it automatically take care of encoding and decoding for me. * Remember not to call str on unicode objects. * Call print repr(obj) on whatever object you get back from the query to see whether you have a string "foo" or a unicode object u"foo". * Read http://wiki.pylonshq.com/display/pylonsdocs/Unicode. At some point, a few of us at the Pylons project did our best to explain this stuff really well. Best Regards, -jj -- I, for one, welcome our new Facebook overlords! http://jjinux.blogspot.com/ From charles.merriam at gmail.com Tue Mar 11 00:09:28 2008 From: charles.merriam at gmail.com (Charles Merriam) Date: Mon, 10 Mar 2008 16:09:28 -0700 Subject: [Baypiggies] Using Google translate web page programmaticaly In-Reply-To: References: <8249c4ac0802281149x7cc16fd2p647baaac2973a1b2@mail.gmail.com> <47C7C0F7.7080301@nttmcl.com> Message-ID: What are you actually trying to do? Maybe a Pootle server would be more towards your needs? -- Charles On Sat, Mar 8, 2008 at 10:40 PM, Shannon -jj Behrens wrote: > > On Fri, Feb 29, 2008 at 12:23 AM, Kelly Yancey wrote: > > Tony Cappellini wrote: > > > Hello, > > > > > > > > > Have any Baypiggies used the Google translate web page programmaticaly? > > > > > > I wish to access this url > > > * http://translate.google.com/translate_t?langpair=ja|en > > > (where the from language and to language may vary from request to request) > > > * submit a text string to be translated > > > * retrieve the translation or status indicating the translation was > > > not possible. > > > > > > > I realize this is the opposite direction from what you asked, but > > whenever I need English to Japanese translations, I just download Jim > > Breen's edict dictionary file and use the following script: > > > > import re > > > > def stripAnnotations((ja, en)): > > ja = re.sub('(?u)\s*\[.*\]\s*', '', ja) > > en = re.sub('\s*\(.*\)\s*', '', en) > > return (en, ja) > > > > e2j = dict(( > > stripAnnotations(line.decode('euc-jp').split('/')[:2]) > > for line in open('edict').readlines() )) > > > > def translateE2J(s): > > return ''.join(filter(None, map(e2j.get, s.split()))) > > > > I've found this works just as well as, if not better than, Google > > Translate or Babblefish(*). I suspect the same technique will work for > > Japanese to English translation too, once you get the minor issue of > > word-splitting solved. > > > > Kelly > > > > > > (*) Assuming you are trying to produce entertaining jibberish, which I > > assume you are. > > > > ** This entire post is tongue-in-cheek. Seriously, though, don't be > > cheap: hire a professional to do your translations. You'll be glad > > you did. > > I'd have to agree with Kelly. If it's open source, get your users to > do it. We had a lot of success with this approach at Foxmarks. If > it's for pay, wait until you have some money, and then hire a service. > I had success with this approach at IronPort. It's not actually all > that expensive if you do as much setup work as possible. > > The only drawback is that the professional companies seem not to know > anything about GNU gettext. Apparently, they're only familiar with > Java property files :-/ > > Best Regards, > -jj > > -- > I, for one, welcome our new Facebook overlords! > http://jjinux.blogspot.com/ > > > _______________________________________________ > Baypiggies mailing list > Baypiggies at python.org > To change your subscription options or unsubscribe: > http://mail.python.org/mailman/listinfo/baypiggies > From amax at redsymbol.net Tue Mar 11 18:47:12 2008 From: amax at redsymbol.net (Aaron Maxwell) Date: Tue, 11 Mar 2008 10:47:12 -0700 Subject: [Baypiggies] regex puzzle Message-ID: <200803111047.12873.amax@redsymbol.net> Hi all, I'm writing a tool with a command line interface, using the cmd module. It has a "log search" command, which accepts a regex pattern as an argument. After tokenizing the input, I finally get what the user typed as the regex pattern into a variable search_str: regex = re.compile(search_str) return [line for line in loglines if regex.search(line)] The problem is that search_str is a variable of type str, not a raw string. So the user will have to escape many characters: e.g., "\\bREPO" instead of "\bREPO" as the pattern. What I'd like to do is allow the user to type in the regular expression directly, without them having to escape it. Can someone suggest a good solution? I could obviously have my code escape search_str, coding it to manually replace each special character (http://docs.python.org/ref/strings.html). But that seems unpythonic (by which I mean "tedious and error prone" :) There was a thread [0] that suggested using str.encode(), but I did not find that to work - for example, with '\bRE'.encode('string_escape'), \b is interpreted as '\x08', the backspace character. Suggestions appreciated. Thanks, Aaron [0] http://mail.python.org/pipermail/python-list/2004-December/296389.html -- Aaron Maxwell http://redsymbol.net From cappy2112 at gmail.com Tue Mar 11 19:15:11 2008 From: cappy2112 at gmail.com (Tony Cappellini) Date: Tue, 11 Mar 2008 11:15:11 -0700 Subject: [Baypiggies] regex puzzle In-Reply-To: <200803111047.12873.amax@redsymbol.net> References: <200803111047.12873.amax@redsymbol.net> Message-ID: <8249c4ac0803111115k2aaf42dfp1c1bccbe8ed816cb@mail.gmail.com> Take a look at Kodos. It is a regular expression debugger, written in Python. The project is in sourceforge On Tue, Mar 11, 2008 at 10:47 AM, Aaron Maxwell wrote: > Hi all, > > I'm writing a tool with a command line interface, using the cmd module. It > has a "log search" command, which accepts a regex pattern as an argument. > > After tokenizing the input, I finally get what the user typed as the regex > pattern into a variable search_str: > > regex = re.compile(search_str) > return [line for line in loglines if regex.search(line)] > > The problem is that search_str is a variable of type str, not a raw string. > So the user will have to escape many characters: e.g., "\\bREPO" instead > of "\bREPO" as the pattern. > > What I'd like to do is allow the user to type in the regular expression > directly, without them having to escape it. Can someone suggest a good > solution? > > I could obviously have my code escape search_str, coding it to manually > replace each special character (http://docs.python.org/ref/strings.html). > But that seems unpythonic (by which I mean "tedious and error prone" :) > There was a thread [0] that suggested using str.encode(), but I did not find > that to work - for example, with '\bRE'.encode('string_escape'), \b is > interpreted as '\x08', the backspace character. > > Suggestions appreciated. > > Thanks, > Aaron > > [0] http://mail.python.org/pipermail/python-list/2004-December/296389.html > > -- > Aaron Maxwell > http://redsymbol.net > _______________________________________________ > Baypiggies mailing list > Baypiggies at python.org > To change your subscription options or unsubscribe: > http://mail.python.org/mailman/listinfo/baypiggies > From jeff at drinktomi.com Tue Mar 11 20:52:28 2008 From: jeff at drinktomi.com (Jeff Younker) Date: Tue, 11 Mar 2008 12:52:28 -0700 Subject: [Baypiggies] Windows python path Message-ID: Ok, this is a silly question, but the world is conspiring against me this morning. I need to find out where python is usually installed on a windows machine. If you have a windows machine handy, and you have python installed, could you please send me the path to your python interpreter. Thanks in advance. - Jeff Younker - jeff at drinktomi.com - From cappy2112 at gmail.com Tue Mar 11 19:57:38 2008 From: cappy2112 at gmail.com (Tony Cappellini) Date: Tue, 11 Mar 2008 11:57:38 -0700 Subject: [Baypiggies] regex puzzle In-Reply-To: <200803111047.12873.amax@redsymbol.net> References: <200803111047.12873.amax@redsymbol.net> Message-ID: <8249c4ac0803111157yc24c762od125e59ce8e61ac@mail.gmail.com> At least- I hope the sources for Kodos will help you find a solution to your problem, since Kodos allows the user to enter in the regex without the user explicitly having to "escape it" > What I'd like to do is allow the user to type in the regular expression > directly, without them having to escape it. Can someone suggest a good > solution? From cappy2112 at gmail.com Tue Mar 11 21:47:51 2008 From: cappy2112 at gmail.com (Tony Cappellini) Date: Tue, 11 Mar 2008 13:47:51 -0700 Subject: [Baypiggies] Windows python path In-Reply-To: References: Message-ID: <8249c4ac0803111347q555a9dfen296f2017e7e0592a@mail.gmail.com> C:\Python25 is a typical location, but : could be replaced by any other drive letter from C to Z On Tue, Mar 11, 2008 at 12:52 PM, Jeff Younker wrote: > Ok, this is a silly question, but the world is conspiring against me > this morning. > I need to find out where python is usually installed on a windows > machine. > > If you have a windows machine handy, and you have python installed, > could > you please send me the path to your python interpreter. > > Thanks in advance. > > - Jeff Younker - jeff at drinktomi.com - > > > > _______________________________________________ > Baypiggies mailing list > Baypiggies at python.org > To change your subscription options or unsubscribe: > http://mail.python.org/mailman/listinfo/baypiggies > From max at theslimmers.net Tue Mar 11 21:22:19 2008 From: max at theslimmers.net (Max Slimmer) Date: Tue, 11 Mar 2008 13:22:19 -0700 Subject: [Baypiggies] Windows python path In-Reply-To: Message-ID: <200803112022.m2BKMSda032047@a.mail.sonic.net> Typically /Program Files/Python25 depending on version. But whoever installed it had a choice. If you can type python in a cmd promt and it loads python then type path at the dos prompt to get your path. If you click on a .py script and it runs it with python go to file browser and look at file types. > -----Original Message----- > From: baypiggies-bounces at python.org > [mailto:baypiggies-bounces at python.org] On Behalf Of Jeff Younker > Sent: Tuesday, March 11, 2008 12:52 PM > To: BayPiggies > Subject: [Baypiggies] Windows python path > > Ok, this is a silly question, but the world is conspiring > against me this morning. > I need to find out where python is usually installed on a > windows machine. > > If you have a windows machine handy, and you have python > installed, could you please send me the path to your python > interpreter. > > Thanks in advance. > > - Jeff Younker - jeff at drinktomi.com - > > > > _______________________________________________ > Baypiggies mailing list > Baypiggies at python.org > To change your subscription options or unsubscribe: > http://mail.python.org/mailman/listinfo/baypiggies > From amax at redsymbol.net Tue Mar 11 22:19:17 2008 From: amax at redsymbol.net (Aaron Maxwell) Date: Tue, 11 Mar 2008 14:19:17 -0700 Subject: [Baypiggies] regex puzzle In-Reply-To: <8249c4ac0803111155l601d5971w9eb0e546f7bff082@mail.gmail.com> References: <200803111047.12873.amax@redsymbol.net> <8249c4ac0803111155l601d5971w9eb0e546f7bff082@mail.gmail.com> Message-ID: <200803111419.17701.amax@redsymbol.net> Good suggestion - thanks, I'll look into it. -Aaron On Tuesday 11 March 2008 11:55:03 Tony Cappellini wrote: > At least- I hope the sources for Kodos will help you find a solution > to your problem, > since Kodos allows the user to enter in regex without explicitly > having to use escapes > -- Aaron Maxwell http://redsymbol.net From p at ulmcnett.com Wed Mar 12 00:18:52 2008 From: p at ulmcnett.com (=?UTF-8?B?UGF1bCBNwqJOZXR0?=) Date: Tue, 11 Mar 2008 16:18:52 -0700 Subject: [Baypiggies] Windows python path In-Reply-To: References: Message-ID: <47D7135C.3010004@ulmcnett.com> Hi Jeff, > If you have a windows machine handy, and you have python installed, > could > you please send me the path to your python interpreter. By default it seems to go to {sysdrive}/python{version}, or c:\python25. Try this (untested and probably fragile) function: def getPythonDir(): import os return os.path.split(os.path.split(os.__file__)[0])[0] I'm sure someone will chime in with a better way. Paul From jeff at drinktomi.com Wed Mar 12 00:46:38 2008 From: jeff at drinktomi.com (Jeff Younker) Date: Tue, 11 Mar 2008 16:46:38 -0700 Subject: [Baypiggies] Windows python path In-Reply-To: References: Message-ID: <68792428-B736-40F8-86DC-7D32EF6D1FBB@drinktomi.com> On Mar 11, 2008, at 1:13 PM, Daryl Spitzer wrote: > In my case, it's installed in C:\Python25\. (I see I also have a > C:\Python22\ directory.) I don't recall if I put them there in a > custom install or if I let the installer default. Thanks, jives with what my (very) fallible memory was telling me. - Jeff Younker - jeff at drinktomi.com - From carroll at tjc.com Wed Mar 12 00:49:12 2008 From: carroll at tjc.com (Terry Carroll) Date: Tue, 11 Mar 2008 16:49:12 -0700 (PDT) Subject: [Baypiggies] regex puzzle In-Reply-To: <200803111419.17701.amax@redsymbol.net> Message-ID: On Tue, 11 Mar 2008, Aaron Maxwell wrote: > Good suggestion - thanks, I'll look into it. Aaron -- Would you be so kind to post your findings? I have a project coming up where I expect to have the same problem, and this would be helpful to me. From jim at well.com Wed Mar 12 01:41:29 2008 From: jim at well.com (jim stockford) Date: Tue, 11 Mar 2008 17:41:29 -0700 Subject: [Baypiggies] March meeting Thursday 3/20 Message-ID: <97aa5ac48a4327101cfe3722272650e4@well.com> This is a reminder that we will NOT have our March meeting on Thursday, March 13. We WILL have our March meeting on Thursday, March 20. Drew Perttula and Shannon -jj Behrens will report on their adventures at PyCon. If we have time afterward, it would be helpful to talk about PyCon 2010, so come with thoughts and questions. jim From jason at mischievous.org Wed Mar 12 01:28:57 2008 From: jason at mischievous.org (Jason Culverhouse) Date: Tue, 11 Mar 2008 17:28:57 -0700 Subject: [Baypiggies] regex puzzle In-Reply-To: <200803111047.12873.amax@redsymbol.net> References: <200803111047.12873.amax@redsymbol.net> Message-ID: Aaron, I don't think that this helps you in python 2.5 but I think it achieves your goal see http://pydoc.org/2.4.1/reconvert.html import reconvert rawstring = eval(reconvert.quote(search_str)) regex = re.compile(rawstring) Jason On Mar 11, 2008, at 10:47 AM, Aaron Maxwell wrote: > Hi all, > > I'm writing a tool with a command line interface, using the cmd > module. It > has a "log search" command, which accepts a regex pattern as an > argument. > > After tokenizing the input, I finally get what the user typed as the > regex > pattern into a variable search_str: > > regex = re.compile(search_str) > return [line for line in loglines if regex.search(line)] > > The problem is that search_str is a variable of type str, not a raw > string. > So the user will have to escape many characters: e.g., "\\bREPO" > instead > of "\bREPO" as the pattern. > > What I'd like to do is allow the user to type in the regular > expression > directly, without them having to escape it. Can someone suggest a > good > solution? > > I could obviously have my code escape search_str, coding it to > manually > replace each special character (http://docs.python.org/ref/strings.html > ). > But that seems unpythonic (by which I mean "tedious and error > prone" :) > There was a thread [0] that suggested using str.encode(), but I did > not find > that to work - for example, with '\bRE'.encode('string_escape'), \b is > interpreted as '\x08', the backspace character. > > Suggestions appreciated. > > Thanks, > Aaron > > [0] http://mail.python.org/pipermail/python-list/2004-December/296389.html > > -- > Aaron Maxwell > http://redsymbol.net > _______________________________________________ > Baypiggies mailing list > Baypiggies at python.org > To change your subscription options or unsubscribe: > http://mail.python.org/mailman/listinfo/baypiggies From matt at matt-good.net Wed Mar 12 03:05:57 2008 From: matt at matt-good.net (Matt Good) Date: Tue, 11 Mar 2008 19:05:57 -0700 Subject: [Baypiggies] regex puzzle In-Reply-To: <200803111047.12873.amax@redsymbol.net> References: <200803111047.12873.amax@redsymbol.net> Message-ID: <1B5E1549-43E5-417E-BF9A-47F600146BA4@matt-good.net> On Mar 11, 2008, at 10:47 AM, Aaron Maxwell wrote: > I'm writing a tool with a command line interface, using the cmd > module. It > has a "log search" command, which accepts a regex pattern as an > argument. > > After tokenizing the input, I finally get what the user typed as the > regex > pattern into a variable search_str: > > regex = re.compile(search_str) > return [line for line in loglines if regex.search(line)] > > The problem is that search_str is a variable of type str, not a raw > string. > So the user will have to escape many characters: e.g., "\\bREPO" > instead > of "\bREPO" as the pattern. I think what you're seeing is due to how the cmd module parses the command input. It tries to behave like a Unix shell and treats \ as an escape character as described here: http://trac.edgewall.org/ticket/994 It's easy to workaround this by overriding Cmd.onecmd and replacing the backslashes: http://trac.edgewall.org/changeset/3513/trunk/trac/scripts/admin.py -- Matt From jjinux at gmail.com Wed Mar 12 10:07:19 2008 From: jjinux at gmail.com (Shannon -jj Behrens) Date: Wed, 12 Mar 2008 02:07:19 -0700 Subject: [Baypiggies] regex puzzle In-Reply-To: <1B5E1549-43E5-417E-BF9A-47F600146BA4@matt-good.net> References: <200803111047.12873.amax@redsymbol.net> <1B5E1549-43E5-417E-BF9A-47F600146BA4@matt-good.net> Message-ID: On Tue, Mar 11, 2008 at 7:05 PM, Matt Good wrote: > On Mar 11, 2008, at 10:47 AM, Aaron Maxwell wrote: > > > > I'm writing a tool with a command line interface, using the cmd > > module. It > > has a "log search" command, which accepts a regex pattern as an > > argument. > > > > After tokenizing the input, I finally get what the user typed as the > > regex > > pattern into a variable search_str: > > > > regex = re.compile(search_str) > > return [line for line in loglines if regex.search(line)] > > > > The problem is that search_str is a variable of type str, not a raw > > string. > > So the user will have to escape many characters: e.g., "\\bREPO" > > instead > > of "\bREPO" as the pattern. > > I think what you're seeing is due to how the cmd module parses the > command input. It tries to behave like a Unix shell and treats \ as > an escape character as described here: > http://trac.edgewall.org/ticket/994 > > It's easy to workaround this by overriding Cmd.onecmd and replacing > the backslashes: > http://trac.edgewall.org/changeset/3513/trunk/trac/scripts/admin.py Yes, Matt's onto something. I wanted to clarify your statement, "The problem is that search_str is a variable of type str, not a raw string." Look at the following: >>> r'foo' 'foo' >>> 'foo' 'foo' >>> raw_input() # going to type foo foo 'foo' Whether I use a raw string, a normal string, or raw_input(), what I get is a str object. Now, when I *embed a string into Python source code*, some escaping happens. If I use a raw string, less escaping happens. If I use raw_input(), no escaping happens. In all cases, what I end up with is a string. Look at how the escaping works: >>> print 'tab: (\t)' # \t -> tab tab: ( ) >>> print r'tab: (\t)' # \t not converted tab: (\t) >>> print raw_input() # raw_input() != typing a string in Python source code tab: (\t) tab: (\t) What Matt seems to be saying is that the cmd module treats lines per the UNIX shell convention and uses shell quoting rules. That's very different from Python quoting. You still have a problem that you'll need to figure out, but hopefully I've cleared up at least one thing ;) Happy Hacking! -jj -- I, for one, welcome our new Facebook overlords! http://jjinux.blogspot.com/ From amax at redsymbol.net Wed Mar 12 17:40:35 2008 From: amax at redsymbol.net (Aaron Maxwell) Date: Wed, 12 Mar 2008 09:40:35 -0700 Subject: [Baypiggies] regex puzzle In-Reply-To: References: <200803111047.12873.amax@redsymbol.net> <1B5E1549-43E5-417E-BF9A-47F600146BA4@matt-good.net> Message-ID: <200803120940.36787.amax@redsymbol.net> Cool, thanks for clarifying JJ. On Wednesday 12 March 2008 02:07:19 you wrote: > I wanted to clarify your statement, "The problem is that search_str is > a variable of type str, not a raw string." > > Look at the following: > >>> r'foo' > > 'foo' > > >>> 'foo' > > 'foo' > > >>> raw_input() # going to type foo > > foo > 'foo' > > Whether I use a raw string, a normal string, or raw_input(), what I > get is a str object. > > Now, when I *embed a string into Python source code*, some escaping > happens. If I use a raw string, less escaping happens. If I use > raw_input(), no escaping happens. In all cases, what I end up with is > > a string. Look at how the escaping works: > >>> print 'tab: (\t)' # \t -> tab > > tab: ( ) > > >>> print r'tab: (\t)' # \t not converted > > tab: (\t) > > >>> print raw_input() # raw_input() != typing a string in Python source > >>> code > > tab: (\t) > tab: (\t) > > What Matt seems to be saying is that the cmd module treats lines per > the UNIX shell convention and uses shell quoting rules. That's very > different from Python quoting. > > You still have a problem that you'll need to figure out, but hopefully > I've cleared up at least one thing ;) > > Happy Hacking! > -jj -- Aaron Maxwell http://redsymbol.net From amax at redsymbol.net Wed Mar 12 17:50:15 2008 From: amax at redsymbol.net (Aaron Maxwell) Date: Wed, 12 Mar 2008 09:50:15 -0700 Subject: [Baypiggies] regex puzzle In-Reply-To: <1B5E1549-43E5-417E-BF9A-47F600146BA4@matt-good.net> References: <200803111047.12873.amax@redsymbol.net> <1B5E1549-43E5-417E-BF9A-47F600146BA4@matt-good.net> Message-ID: <200803120950.15551.amax@redsymbol.net> Yup, that's it. For the record, I just added the line {{{ cmdline = cmdline.replace('\\', '\\\\') }}} to the onecmd() method in our subclass of Cmd, like so: {{{ def onecmd(self, cmdline): cmdline = cmdline.replace('\\', '\\\\') # do any other special handling, # ultimately pass off to Cmd.onecmd(cmdline) }}} Thanks Matt. The trac example you pointed to is an exact fit. -Aaron On Tuesday 11 March 2008 19:05:57 Matt Good wrote: > On Mar 11, 2008, at 10:47 AM, Aaron Maxwell wrote: > I think what you're seeing is due to how the cmd module parses the > command input. It tries to behave like a Unix shell and treats \ as > an escape character as described here: > http://trac.edgewall.org/ticket/994 > > It's easy to workaround this by overriding Cmd.onecmd and replacing > the backslashes: > http://trac.edgewall.org/changeset/3513/trunk/trac/scripts/admin.py > > -- Matt -- Aaron Maxwell http://redsymbol.net From dalloyd at cisco.com Wed Mar 12 20:51:59 2008 From: dalloyd at cisco.com (Dave Lloyd -X (dalloyd - Spherion at Cisco)) Date: Wed, 12 Mar 2008 12:51:59 -0700 Subject: [Baypiggies] Job - Python UI Developer ~ Cisco ~ San Bruno Message-ID: <7FE6845B1F8A264E9E03562D7EBB225C05570F17@xmb-sjc-22b.amer.cisco.com> Interested candidates can send resumes to me directly. Dave Lloyd Sr. Recruiter Cisco Systems dalloyd at cisco.com 408-527-9388 User Interface Developer San Bruno, CA IronPort is an independent business unit of Cisco Systems as of April 2007. Operating as a part of Cisco's Security Technology Group, IronPort is a leading provider of anti-spam, anti-virus and anti-spyware appliances for organizations ranging from small businesses to the Global 2000. IronPort product lines utilize SenderBase(r), the world's largest threat detection database, enabling powerful security measures that are easy to deploy and manage. Responsibilities: The IronPort Systems Platform Engineering team is looking for software engineering talent to participate in the ongoing development of the web-based interface for its Email and Web Security Appliances. The Platform Engineering team is responsible for the appliance group of products, including the Email and Web Security Appliances. We are looking for a candidate with proven experience in participating at a key level in web application projects. This includes past experience in designing, developing, and helping to create a usable and stable product. This individual will be expected to collaborate with product management to help identify and prioritize product requirements; work closely with design consultants to design new features and improve existing functionality and behavioral paradigms; and organize, participate in, and ensure the success of the ongoing web development activities. Development will be on a UNIX-based platform integrating with code written in Python. This is not a web site art direction, intranet development, or design role. Additional Responsibilities: * Work closely with a cross-functional team to implement the web-based user interface for new features and extend existing functionality * Review and sign off on requirements documents. * Write specification documents and drive sign-off. * Implement new features and extend existing functionality * Design and develop code libraries; build tools and widgets to enhance existing Web framework Required Experience and Skills: * 5-8 years of experience with one or more web scripting languages: Python, PHP, Perl, ASP.NET, etc. (Python highly preferred.) * Proven experience in writing clean, modular, extensible code. * Strong HTML, CSS, and JavaScript skills and practical experience required. * Thorough understanding of Web standards and W3C compliance required. * Participation in at least one successful development and deployment effort of a web application. * Proven ability to effectively collaborate with Interaction Design / Information Architecture functional groups. * 5 years minimum industry experience required. The ideal candidate will also have strong visual design skills. Desired Experience and Skills: * Experience developing thin-client, browser-based, commercial appliance, server application administration, or consumer-oriented user interfaces. Experience developing commercial or corporate intranet applications is also a plus. * An understanding of Internet and email standards, UNIX system administration, enterprise networking topologies and security is highly desirable. * Specific experience with open source mail, spam detection programs, caching web proxies, anti-spyware, anti-virus and integration of database technology to customer systems a definite plus. * Experience collaborating with offshore development resources is a plus. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/baypiggies/attachments/20080312/14e4b051/attachment.htm From jim at well.com Thu Mar 13 03:20:52 2008 From: jim at well.com (jim stockford) Date: Wed, 12 Mar 2008 19:20:52 -0700 Subject: [Baypiggies] what to do for our March meeting? New List In-Reply-To: References: <5538c19b0803011030l406fc87cw423cc931281d1ccd@mail.gmail.com> Message-ID: <2f64f62c2298f11edf4bbb9b010c73de@well.com> i dropped the ball (again) and apologize. it'd be great if you help put together a newbies night. i'm suggesting you and i collaborate and bring in one or two others who also like the idea enough to put a little energy into it. maybe for May or June. jim 415 823 4590 my cellphone, call anytime On Mar 4, 2008, at 2:09 AM, Jacob Hunter wrote: > This a no ? > > > On 3/1/08, Jacob Hunter wrote: >> For clarification, i meant a meet / greet-newbie night hybrid. >> >> On Sat, Mar 1, 2008 at 5:37 PM, Jacob Hunter >> >> wrote: >>> What is involved with newbies night? >>> >>> I am a relative newbie, but I wouldn't mind helping with logistics >>> of >>> getting this together. I founded a LUG in the matter of 3 weeks, I >>> think I could help pull together a newbies night in <2 weeks. >>> >>> Jacob >>> >> > _______________________________________________ > Baypiggies mailing list > Baypiggies at python.org > To change your subscription options or unsubscribe: > http://mail.python.org/mailman/listinfo/baypiggies > From jim at well.com Thu Mar 13 05:24:16 2008 From: jim at well.com (jim stockford) Date: Wed, 12 Mar 2008 21:24:16 -0700 Subject: [Baypiggies] bayPIGgies meets Thursday, 3/20: Early PyCon Reports Message-ID: <50d146ca7589e122d9924dee911655df@well.com> bayPIGgies meets Thursday, 3/20: Early PyCon Reports * SPECIAL NOTE: because many pythonistas are at PyCon on the second Thursday of March (3/13), bayPIGgies has moved our meeting to the third Thursday of the month, 3/20. bayPIGgies meeting Thursday 3/20: Drew Perttula and Shannon jj Behrens on PyCon 2008 Drew and jj will be back from PyCon 2008 and will share their experiences. If time permits, the group may discuss plans for Concurrent Python 2010 in the San Francisco bay area. Location: Google Campus Building 43, the Tunis room (first floor) bayPIGgies meeting information: http://baypiggies.net/new/plone * Please sign up in advance to have your google access badge ready: http://wiki.python.org/moin/BayPiggiesGoogleMeetings (no later than close of business on Wednesday.) Agenda ..... 7:30 PM ........................... General hubbub, inventory end-of-meeting announcements, any first-minute announcements. ..... 7:35 PM to 8:45 PM ................ The Talk (may extend a bit late) ..... 8:45 PM to 9:00 PM or After The Talk ................ Mapping and Random Access Mapping is a rapid-fire audience announcement of topics the announcers are interested in. Random Access follows immediately to allow follow up individually on the announcements and other topics of interest. The April Meeting More PyCon Reports from Ed Cherlin, Charles Merriam, and Daryl Spitzer From lavendula6654 at yahoo.com Tue Mar 18 02:43:22 2008 From: lavendula6654 at yahoo.com (Elaine) Date: Mon, 17 Mar 2008 18:43:22 -0700 (PDT) Subject: [Baypiggies] Foothill College Spring Courses Message-ID: <412012.73919.qm@web31710.mail.mud.yahoo.com> Spring quarter classes start Monday, 7 April, at Foothill College. These two may be of interest to you: 1) Introduction to Python Programming - 5 units Prerequisite: Any programming language experience CIS 68K - Monday evenings at Middlefield campus in Palo Alto 2) Application Software Development with Ajax - 5 units Prerequisite: Knowledge of HTML and JavaScript COIN 71 - Tuesday evenings at Middlefield campus in Palo Alto If you are interested in taking a class, please register as soon as possible by going to: http://www.foothill.fhda.edu/reg/index.php If not enough students sign up, a class may be cancelled. If you have any questions, please contact the instructor, Elaine Haight, at haightElaine at foothill.edu ____________________________________________________________________________________ Looking for last minute shopping deals? Find them fast with Yahoo! Search. http://tools.search.yahoo.com/newsearch/category.php?category=shopping From mrbmahoney at gmail.com Tue Mar 18 14:32:27 2008 From: mrbmahoney at gmail.com (Brian Mahoney) Date: Tue, 18 Mar 2008 06:32:27 -0700 Subject: [Baypiggies] Dinner Announcement - Thursday, March 20, 6 pm Message-ID: <5538c19b0803180632i4199738chb65fcaed02d35da1@mail.gmail.com> For Thursday, March 20, I can coordinate a pre-meeting dinner in Mountain View, before the BayPIGgies meeting at Google . Restaurant reservations may be sent to my email until Thursday afternoon (earlier is better). We eat family-style, there are vegetarian and non-vegetarian dishes. Cost around $10 per person, including tax and tip. Bring cash, please. Start dinner at 6pm and I will keep things moving so that we finish and get everyone headed towards Google to complete sign-in before the 7:30 meeting start. The restaurant is Cafe Yulong in downtown Mountain View (650) 960-1677 743 W Dana Street, 1/2 block from Castro where Books, Inc is on the corner. Parking lots all around, but downtown Mountain View parking can be difficult. It is a slightly out of the ordinary Chinese restaurant. This link has a downtown map and additional information. http://www.mountainviewca.net/restaurants/cafeyulong.html I've made reservations under "Python" for 6pm Thursday. If you wish to join us for dinner please e-mail me by 3 pm Thursday (earlier is better) so I may confirm the headcount. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.python.org/pipermail/baypiggies/attachments/20080318/36657742/attachment.htm From afife at untangle.com Wed Mar 19 08:27:55 2008 From: afife at untangle.com (Andrew Fife) Date: Wed, 19 Mar 2008 00:27:55 -0700 (PDT) Subject: [Baypiggies] Mark Shuttleworth @ BALUG (Tuesday, March 25th) Message-ID: <000d01c88992$da3ed300$4301a8c0@Untangle.local> Howdy Folks: Mark Shuttleworth, Ubuntu's founder, will be speaking at the Bay Area Linux Users Group (BALUG) next Tuesday, March 25th. If you'd like to come, please RSVP: RSVP at balug.org **Why RSVP??** Its important that you RSVP for Mark Shuttleworth's talk because we are going to have higher than normal attendance and we need to know how much more food to ask the restaurant prepare. Upcoming 2008 speakers include: March 25th (New Date) - Mark Shuttleworth (Ubuntu/Canonical) April 15th - Eric Allman (Sendmail) May 20th - Jeremy Allison (Samba) June 17th - Andrew Morton (Linux kernel) July 15th - Mike Linksvayer (Creative Commons) So why not signup for BALUG's extremely low volume announce list: http://lists.balug.org/listinfo.cgi/balug-announce-balug.org Meeting Details... 6:30pm March 25th, 2008 Four Seas Restaurant 731 Grant Ave. San Francisco, CA 94108 Easy $5 PARKING: http://www.portsmouthsquaregarage.com/ Cost: The meetings are always free, but dinner is $13 About BALUG: BALUG is lively gathering of Linux users & free software enthusiasts that combines great food, community & intimate access to featured speakers. We meet in the bar of the Four Seas Restaurant from 6:30pm. At 7pm, we share a family-style Chinese dinner, which is followed by our guest speaker. BALUG Mailing list Policy: BALUG promises not to abuse other LUGs mailing lists. Our current policy is to make one monthly announcement on most Bay Area LUGs mailing lists. If you feel this is not appropriate for a particular list, please tell us which list and what you feel would be a more appropriate policy for that list. Please send feedback to publicity-feedback at balug.org. ---------------------------------------- Andrew Fife Untangle - Open Source Security Gateway download.untangle.com 650.425.3327 (O) 415.806.6028 (C) afife at untangle.com From charles.merriam at gmail.com Wed Mar 19 23:06:32 2008 From: charles.merriam at gmail.com (Charles Merriam) Date: Wed, 19 Mar 2008 15:06:32 -0700 Subject: [Baypiggies] Carpool to Mark Shuttleworth @ BALUG (Tuesday, March 25th)? Message-ID: I hate driving to the city alone. Anyone else in BayPiggies want to see this spaceman/founder/amazing guy? BTW, his blog is at http://www.markshuttleworth.com/ Let me know! Charles Merriam 408.368.6050 charles.merriam at gmail.com On Wed, Mar 19, 2008 at 12:27 AM, Andrew Fife wrote: > Howdy Folks: > > Mark Shuttleworth, Ubuntu's founder, will be speaking at the Bay Area > Linux Users Group (BALUG) next Tuesday, March 25th. If you'd like to > come, please RSVP: > > RSVP at balug.org > > **Why RSVP??** > > Its important that you RSVP for Mark Shuttleworth's talk because we are > going to have higher than normal attendance and we need to know how much > more food to ask the restaurant prepare. > > Upcoming 2008 speakers include: > > March 25th (New Date) - Mark Shuttleworth (Ubuntu/Canonical) > April 15th - Eric Allman (Sendmail) > May 20th - Jeremy Allison (Samba) > June 17th - Andrew Morton (Linux kernel) > July 15th - Mike Linksvayer (Creative Commons) > > So why not signup for BALUG's extremely low volume announce list: > > http://lists.balug.org/listinfo.cgi/balug-announce-balug.org > > Meeting Details... > > 6:30pm > March 25th, 2008 > > Four Seas Restaurant > 731 Grant Ave. > San Francisco, CA 94108 > Easy $5 PARKING: http://www.portsmouthsquaregarage.com/ > > Cost: > > The meetings are always free, but dinner is $13 > > About BALUG: > > BALUG is lively gathering of Linux users & free software enthusiasts > that > combines great food, community & intimate access to featured speakers. > We meet in the bar of the Four Seas Restaurant from 6:30pm. At 7pm, we > share a family-style Chinese dinner, which is followed by our guest > speaker. > > BALUG Mailing list Policy: > > BALUG promises not to abuse other LUGs mailing lists. Our current > policy > is to make one monthly announcement on most Bay Area LUGs mailing lists. > If you feel this is not appropriate for a particular list, please tell > us > which list and what you feel would be a more appropriate policy for that > list. Please send feedback to publicity-feedback at balug.org. > > ---------------------------------------- > Andrew Fife > Untangle - Open Source Security Gateway > download.untangle.com > > 650.425.3327 (O) > 415.806.6028 (C) > afife at untangle.com > > _______________________________________________ > Baypiggies mailing list > Baypiggies at python.org > To change your subscription options or unsubscribe: > http://mail.python.org/mailman/listinfo/baypiggies > From echerlin at gmail.com Thu Mar 20 00:49:55 2008 From: echerlin at gmail.com (Edward Cherlin) Date: Wed, 19 Mar 2008 16:49:55 -0700 Subject: [Baypiggies] Carpool to Mark Shuttleworth @ BALUG (Tuesday, March 25th)? In-Reply-To: References: Message-ID: On Wed, Mar 19, 2008 at 3:06 PM, Charles Merriam wrote: > I hate driving to the city alone. Anyone else in BayPiggies want to > see this spaceman/founder/amazing guy? Yes. I'll be travelling from Cupertino. > BTW, his blog is at http://www.markshuttleworth.com/ > > Let me know! > > Charles Merriam > 408.368.6050 > charles.merriam at gmail.com > > > On Wed, Mar 19, 2008 at 12:27 AM, Andrew Fife wrote: > > Howdy Folks: > > > > Mark Shuttleworth, Ubuntu's founder, will be speaking at the Bay Area > > Linux Users Group (BALUG) next Tuesday, March 25th. If you'd like to > > come, please RSVP: > > > > RSVP at balug.org > > > > **Why RSVP??** > > > > Its important that you RSVP for Mark Shuttleworth's talk because we are > > going to have higher than normal attendance and we need to know how much > > more food to ask the restaurant prepare. > > > > Upcoming 2008 speakers include: > > > > March 25th (New Date) - Mark Shuttleworth (Ubuntu/Canonical) > > April 15th - Eric Allman (Sendmail) > > May 20th - Jeremy Allison (Samba) > > June 17th - Andrew Morton (Linux kernel) > > July 15th - Mike Linksvayer (Creative Commons) > > > > So why not signup for BALUG's extremely low volume announce list: > > > > http://lists.balug.org/listinfo.cgi/balug-announce-balug.org > > > > Meeting Details... > > > > 6:30pm > > March 25th, 2008 > > > > Four Seas Restaurant > > 731 Grant Ave. > > San Francisco, CA 94108 > > Easy $5 PARKING: http://www.portsmouthsquaregarage.com/ > > > > Cost: > > > > The meetings are always free, but dinner is $13 > > > > About BALUG: > > > > BALUG is lively gathering of Linux users & free software enthusiasts > > that > > combines great food, community & intimate access to featured speakers. > > We meet in the bar of the Four Seas Restaurant from 6:30pm. At 7pm, we > > share a family-style Chinese dinner, which is followed by our guest > > speaker. > > > > BALUG Mailing list Policy: > > > > BALUG promises not to abuse other LUGs mailing lists. Our current > > policy > > is to make one monthly announcement on most Bay Area LUGs mailing lists. > > If you feel this is not appropriate for a particular list, please tell > > us > > which list and what you feel would be a more appropriate policy for that > > list. Please send feedback to publicity-feedback at balug.org. > > > > ---------------------------------------- > > Andrew Fife > > Untangle - Open Source Security Gateway > > download.untangle.com > > > > 650.425.3327 (O) > > 415.806.6028 (C) > > afife at untangle.com > > > > _______________________________________________ > > Baypiggies mailing list > > Baypiggies at python.org > > To change your subscription options or unsubscribe: > > http://mail.python.org/mailman/listinfo/baypiggies > > > _______________________________________________ > Baypiggies mailing list > Baypiggies at python.org > To change your subscription options or unsubscribe: > http://mail.python.org/mailman/listinfo/baypiggies > -- Edward Cherlin End Poverty at a Profit by teaching children business http://www.EarthTreasury.org/ "The best way to predict the future is to invent it."--Alan Kay From echerlin at gmail.com Thu Mar 20 03:24:07 2008 From: echerlin at gmail.com (Edward Cherlin) Date: Wed, 19 Mar 2008 19:24:07 -0700 Subject: [Baypiggies] [PyCON-Organizers] Conference ideas In-Reply-To: References: <4E92C575FB9C794A811B44EDA225835869C89D@mlbbexch03.us.aegon.com> Message-ID: On Mon, Mar 17, 2008 at 10:39 AM, Douglas Napoleone wrote: > On Mon, Mar 17, 2008 at 1:00 PM, Whitesell, Ken wrote: > > - Drop the food service meals. Yes, it's a great benefit - and extremely > > convenient - but as the conference grows, it only becomes more of a > > problem. It's more difficult to manage and becomes a disproportionate > > part of the budget and workload. (I can't think of any other conference > > I've attended with > 1 kp that tries to provide as many meals as PyCon. > > I think there's a law of diminishing returns at work.) > -1 Sorry but I need those meals ;-) > This is one of the distinctive features of PyCon, and one I love. It > helps facilitate the community/family feel. There is nothing more > bonding than sitting down and eating together. It is one of the most > human aspects of PyCon, and having experienced this in the past, I > would feel cheated if it did not continue. I am taking notes for the SF Bay Area bid for 2010/11. I see some problems with the meals, but I can't see how to do without them. The hotel restaurants couldn't possibly take up that burden for 1000+ programmers, and there is almost nothing else within walking distance. The conference center across the street presumably has concessions with companies that can feed thousands if they don't all want to eat at once. Unfortunately, that only really works with events that are more trade show than conference. It is possible to sell a meal package separate from conference attendance. It requires distribution and collection of meal tickets. The vegetarian meals can be greatly improved. I can talk with hotel or conference center staff about options, having been a Buddhist monastic cook. We can obviously do better in San Francisco or Silicon Valley. I want the conference to supply more food, especially during sprints. (Also better coffee.) We can offer more meals as sponsorship opportunities. One of the vendors stepped up for pizza on a sprint evening, but only once. > -Doug -- Edward Cherlin End Poverty at a Profit by teaching children business http://www.EarthTreasury.org/ "The best way to predict the future is to invent it."--Alan Kay From doug at apley.com Fri Mar 21 16:54:45 2008 From: doug at apley.com (Douglas Sims) Date: Fri, 21 Mar 2008 10:54:45 -0500 Subject: [Baypiggies] Using Google translate web page programmaticaly In-Reply-To: <8249c4ac0802281149x7cc16fd2p647baaac2973a1b2@mail.gmail.com> References: <8249c4ac0802281149x7cc16fd2p647baaac2973a1b2@mail.gmail.com> Message-ID: <393A49DC-8054-4C8A-957A-AC7EEE397784@apley.com> The Goog just released this: http://googleajaxsearchapi.blogspot.com/2008/03/introducing-ajax-language-api-tools-for.html Douglas Sims Doug at Apley.com On Feb 28, 2008, at 1:49 PM, Tony Cappellini wrote: > Hello, > > > Have any Baypiggies used the Google translate web page > programmaticaly? > > I wish to access this url > * http://translate.google.com/translate_t?langpair=ja|en > (where the from language and to language may vary from request to > request) > * submit a text string to be translated > * retrieve the translation or status indicating the translation was > not possible. > > > If anyone with some web programming experience have some information > on how to do this from Python, please reply. > > > Thanks > _______________________________________________ > Baypiggies mailing list > Baypiggies at python.org > To change your subscription options or unsubscribe: > http://mail.python.org/mailman/listinfo/baypiggies From jjinux at gmail.com Sat Mar 22 20:25:54 2008 From: jjinux at gmail.com (Shannon -jj Behrens) Date: Sat, 22 Mar 2008 12:25:54 -0700 Subject: [Baypiggies] Using Google translate web page programmaticaly In-Reply-To: <393A49DC-8054-4C8A-957A-AC7EEE397784@apley.com> References: <8249c4ac0802281149x7cc16fd2p647baaac2973a1b2@mail.gmail.com> <393A49DC-8054-4C8A-957A-AC7EEE397784@apley.com> Message-ID: I saw a talk at Google Developer Day by a researcher working on their translation team. Take a Google-sized amount of data, add statical translation techniques and a bunch of Ph.D's and get almost halfway decent translations :) -jj On Fri, Mar 21, 2008 at 8:54 AM, Douglas Sims wrote: > > The Goog just released this: > > http://googleajaxsearchapi.blogspot.com/2008/03/introducing-ajax-language-api-tools-for.html > > > Douglas Sims > Doug at Apley.com > > > > > > On Feb 28, 2008, at 1:49 PM, Tony Cappellini wrote: > > Hello, > > > > > > Have any Baypiggies used the Google translate web page > > programmaticaly? > > > > I wish to access this url > > * http://translate.google.com/translate_t?langpair=ja|en > > (where the from language and to language may vary from request to > > request) > > * submit a text string to be translated > > * retrieve the translation or status indicating the translation was > > not possible. > > > > > > If anyone with some web programming experience have some information > > on how to do this from Python, please reply. > > > > > > Thanks > > _______________________________________________ > > Baypiggies mailing list > > Baypiggies at python.org > > To change your subscription options or unsubscribe: > > http://mail.python.org/mailman/listinfo/baypiggies > > _______________________________________________ > Baypiggies mailing list > Baypiggies at python.org > To change your subscription options or unsubscribe: > http://mail.python.org/mailman/listinfo/baypiggies > -- I, for one, welcome our new Facebook overlords! http://jjinux.blogspot.com/ From kelly at nttmcl.com Mon Mar 24 08:01:43 2008 From: kelly at nttmcl.com (Kelly Yancey) Date: Mon, 24 Mar 2008 16:01:43 +0900 Subject: [Baypiggies] Using Google translate web page programmaticaly In-Reply-To: References: <8249c4ac0802281149x7cc16fd2p647baaac2973a1b2@mail.gmail.com> <393A49DC-8054-4C8A-957A-AC7EEE397784@apley.com> Message-ID: <47E751D7.2020900@nttmcl.com> Shannon -jj Behrens wrote: > I saw a talk at Google Developer Day by a researcher working on their > translation team. Take a Google-sized amount of data, add statical > translation techniques and a bunch of Ph.D's and get almost halfway > decent translations :) > > -jj > Sorry to beleaguer the point, but here is the translated version of your message (English->Japanese->English): Google Talk developers saw day by researchers working on their Translation Team. Google's size is the amount of data to take additional statical Many translation techniques and Ph.D 's and almost halfway to Get Translations decent And no, the Japanese* intermediate text didn't make any more sense without knowing what the original text was trying to say. And it lost the "voice" of your message. Machine translation sounds like a great idea, but it currently doesn't appear to be much better than when I used to laugh at the crud Babblefish was spitting out ten years ago. Seriously, I would think that no translation would be better than a nonsensical translation. Of course, my original suggestion stands: if you absolutely need a translation, hire a pro. Human translation > no translation > machine-generated translation. Kelly * I picked Japanese since that was the original poster's request. Certainly machine translation between Indo-European languages would fare better. > On Fri, Mar 21, 2008 at 8:54 AM, Douglas Sims wrote: >> The Goog just released this: >> >> http://googleajaxsearchapi.blogspot.com/2008/03/introducing-ajax-language-api-tools-for.html >> >> >> Douglas Sims >> Doug at Apley.com >> >> >> >> >> >> On Feb 28, 2008, at 1:49 PM, Tony Cappellini wrote: >> > Hello, >> > >> > >> > Have any Baypiggies used the Google translate web page >> > programmaticaly? >> > >> > I wish to access this url >> > * http://translate.google.com/translate_t?langpair=ja|en >> > (where the from language and to language may vary from request to >> > request) >> > * submit a text string to be translated >> > * retrieve the translation or status indicating the translation was >> > not possible. >> > >> > >> > If anyone with some web programming experience have some information >> > on how to do this from Python, please reply. >> > >> > >> > Thanks >> > _______________________________________________ >> > Baypiggies mailing list >> > Baypiggies at python.org >> > To change your subscription options or unsubscribe: >> > http://mail.python.org/mailman/listinfo/baypiggies >> >> _______________________________________________ >> Baypiggies mailing list >> Baypiggies at python.org >> To change your subscription options or unsubscribe: >> http://mail.python.org/mailman/listinfo/baypiggies >> > > > From afife at untangle.com Mon Mar 24 20:00:40 2008 From: afife at untangle.com (Andrew Fife) Date: Mon, 24 Mar 2008 12:00:40 -0700 (PDT) Subject: [Baypiggies] Mark Shuttleworth @ BALUG (Tomorrow!!) Message-ID: <008501c88de1$76da86d0$0200a8c0@Untangle.local> Howdy Folks: Mark Shuttleworth, Ubuntu's founder, will be speaking at the Bay Area Linux Users Group (BALUG) Tomorrow!!! We have some space available so if you'd like to come, please RSVP: RSVP at balug.org **Why RSVP??** Its important that you RSVP for Mark Shuttleworth's talk because we are going to have higher than normal attendance and we need to know how much more food to ask the restaurant prepare. Upcoming 2008 speakers include: March 25th (New Date) - Mark Shuttleworth (Ubuntu/Canonical) April 15th - Eric Allman (Sendmail) May 20th - Jeremy Allison (Samba) June 17th - Andrew Morton (Linux kernel) July 15th - Mike Linksvayer (Creative Commons) So why not signup for BALUG's extremely low volume announce list: http://lists.balug.org/listinfo.cgi/balug-announce-balug.org Meeting Details... 6:30pm Tomorrow!!! March 25th, 2008 Four Seas Restaurant 731 Grant Ave. San Francisco, CA 94108 Easy $5 PARKING: http://www.portsmouthsquaregarage.com/ Cost: The meetings are always free, but dinner is $13 About BALUG: BALUG is lively gathering of Linux users & free software enthusiasts that combines great food, community & intimate access to featured speakers. We meet in the bar of the Four Seas Restaurant from 6:30pm. At 7pm, we share a family-style Chinese dinner, which is followed by our guest speaker. BALUG Mailing list Policy: BALUG promises not to abuse other LUGs mailing lists. Our current policy is to make one monthly announcement on most Bay Area LUGs mailing lists. If you feel this is not appropriate for a particular list, please tell us which list and what you feel would be a more appropriate policy for that list. Please send feedback to publicity-feedback at balug.org. ---------------------------------------- Andrew Fife Untangle - Open Source Security Gateway download.untangle.com 650.425.3327 (O) 415.806.6028 (C) afife at untangle.com From togo at of.net Mon Mar 24 22:39:04 2008 From: togo at of.net (Tony Godshall) Date: Mon, 24 Mar 2008 14:39:04 -0700 Subject: [Baypiggies] Carpool to Mark Shuttleworth @ BALUG (Tuesday, March 25th)? In-Reply-To: References: Message-ID: <3424dc900803241439j636b0f34t20c4f09950436439@mail.gmail.com> Yes. I'll be traveling from S. San Jose via US-101 OR I-280. I'd love to have a rider or three. The car (if it matters) is a diesel VW NewBeetle, running (this week) on a biodiesel blend. On Wed, Mar 19, 2008 at 4:49 PM, Edward Cherlin wrote: > On Wed, Mar 19, 2008 at 3:06 PM, Charles Merriam > wrote: > > I hate driving to the city alone. Anyone else in BayPiggies want to > > see this spaceman/founder/amazing guy? > > Yes. I'll be travelling from Cupertino. > > > > > BTW, his blog is at http://www.markshuttleworth.com/ > > > > Let me know! > > > > Charles Merriam > > 408.368.6050 > > charles.merriam at gmail.com > > > > > > On Wed, Mar 19, 2008 at 12:27 AM, Andrew Fife wrote: > > > Howdy Folks: > > > > > > Mark Shuttleworth, Ubuntu's founder, will be speaking at the Bay Area > > > Linux Users Group (BALUG) next Tuesday, March 25th. If you'd like to > > > come, please RSVP: > > > > > > RSVP at balug.org > > > > > > **Why RSVP??** > > > > > > Its important that you RSVP for Mark Shuttleworth's talk because we are > > > going to have higher than normal attendance and we need to know how much > > > more food to ask the restaurant prepare. > > > > > > Upcoming 2008 speakers include: > > > > > > March 25th (New Date) - Mark Shuttleworth (Ubuntu/Canonical) > > > April 15th - Eric Allman (Sendmail) > > > May 20th - Jeremy Allison (Samba) > > > June 17th - Andrew Morton (Linux kernel) > > > July 15th - Mike Linksvayer (Creative Commons) > > > > > > So why not signup for BALUG's extremely low volume announce list: > > > > > > http://lists.balug.org/listinfo.cgi/balug-announce-balug.org > > > > > > Meeting Details... > > > > > > 6:30pm > > > March 25th, 2008 > > > > > > Four Seas Restaurant > > > 731 Grant Ave. > > > San Francisco, CA 94108 > > > Easy $5 PARKING: http://www.portsmouthsquaregarage.com/ > > > > > > Cost: > > > > > > The meetings are always free, but dinner is $13 > > > > > > About BALUG: > > > > > > BALUG is lively gathering of Linux users & free software enthusiasts > > > that > > > combines great food, community & intimate access to featured speakers. > > > We meet in the bar of the Four Seas Restaurant from 6:30pm. At 7pm, we > > > share a family-style Chinese dinner, which is followed by our guest > > > speaker. > > > > > > BALUG Mailing list Policy: > > > > > > BALUG promises not to abuse other LUGs mailing lists. Our current > > > policy > > > is to make one monthly announcement on most Bay Area LUGs mailing lists. > > > If you feel this is not appropriate for a particular list, please tell > > > us > > > which list and what you feel would be a more appropriate policy for that > > > list. Please send feedback to publicity-feedback at balug.org. > > > > > > ---------------------------------------- > > > Andrew Fife > > > Untangle - Open Source Security Gateway > > > download.untangle.com > > > > > > 650.425.3327 (O) > > > 415.806.6028 (C) > > > afife at untangle.com > > > > > > _______________________________________________ > > > Baypiggies mailing list > > > Baypiggies at python.org > > > To change your subscription options or unsubscribe: > > > http://mail.python.org/mailman/listinfo/baypiggies > > > > > _______________________________________________ > > Baypiggies mailing list > > Baypiggies at python.org > > To change your subscription options or unsubscribe: > > http://mail.python.org/mailman/listinfo/baypiggies > > > > > > -- > Edward Cherlin > End Poverty at a Profit by teaching children business > http://www.EarthTreasury.org/ > "The best way to predict the future is to invent it."--Alan Kay > > > _______________________________________________ > Baypiggies mailing list > Baypiggies at python.org > To change your subscription options or unsubscribe: > http://mail.python.org/mailman/listinfo/baypiggies > -- Best Regards. Please keep in touch. This is unedited. P-) From rdm at cfcl.com Tue Mar 25 16:53:50 2008 From: rdm at cfcl.com (Rich Morin) Date: Tue, 25 Mar 2008 07:53:50 -0800 Subject: [Baypiggies] Freeway Threeway - three evening of goodness! Message-ID: Even if you've been hiding under the covers, waiting for things to quiet down a bit, you're probably aware of the week's events: Tue: BALUG (San Francisco) - Mark Shuttleworth on Ubuntu, etc. -- http://www.new.balug.org Wed: BASS (San Francisco) - the usual Beer, Pizza, and chatter -- http://www.cfcl.com/rdm/bass Thu: PC&P (Redwood City) - pizza and a double feature on RSpec -- http://ruby.meetup.com/123/calendar/7190591/ Be there or be elsewhere... -r -- http://www.cfcl.com/rdm Rich Morin http://www.cfcl.com/rdm/resume rdm at cfcl.com http://www.cfcl.com/rdm/weblog +1 650-873-7841 Technical editing and writing, programming, and web development From cappy2112 at gmail.com Tue Mar 25 21:41:21 2008 From: cappy2112 at gmail.com (Tony Cappellini) Date: Tue, 25 Mar 2008 13:41:21 -0700 Subject: [Baypiggies] Thoughts about Pycon 2008 Message-ID: <8249c4ac0803251341l2ac3ad4dg8e18ad0c0cad88a9@mail.gmail.com> http://www.amk.ca/diary/2008/03/pycon_2008_a_look_back.html From echerlin at gmail.com Wed Mar 26 07:04:51 2008 From: echerlin at gmail.com (Edward Cherlin) Date: Tue, 25 Mar 2008 23:04:51 -0700 Subject: [Baypiggies] PyCon shirts Message-ID: I have a bag of PyCon shirts for BayPiggies. I can bring it to the next meeting, when I will talk about the OLPC tutorial, booth, and coding sprint. -- Edward Cherlin End Poverty at a Profit by teaching children business http://www.EarthTreasury.org/ "The best way to predict the future is to invent it."--Alan Kay From lhawthorn at google.com Fri Mar 28 02:39:57 2008 From: lhawthorn at google.com (Leslie Hawthorn) Date: Thu, 27 Mar 2008 18:39:57 -0700 Subject: [Baypiggies] [shameless plug] Come to LugRadio Live USA - San Francisco, 4/12 & 4/13.08 Message-ID: <4869cee70803271839l648601fcu7916797fdf5bf66c@mail.gmail.com> Hello everyone, I hope you don't mind my posting about a local event here. If so, please delete and mea culpa. Google's Open Source Team has worked hand in hand with Jono Bacon and the producers of the LugRadio podcast to bring their community event, LugRadio Live to the United States. We'll be taking over the top floor of the Metreon on April 12th and 13th for two days of talks, exhibitions by local Open Source projects, BoFs and even free beer. If any of you Pythonistas can make it, it would be lovely to see you there. Notable speakers include Google's very own Jeremy Allison, Dan Kegel and Robert Love, as well as Miguel de Icaza, Selena Deckelmann, Val Henson, Ian Murdock, Allison Randall and many more, all listed here: http://lugradio.org/live/USA2008/speakers Admission is $10 for both days and goes to cover the costs of show expenses More here: Show site - http://lugradio.org/live/USA2008/start Registration - http://lugradio.org/live/USA2008/register Cheers, LH -- Leslie Hawthorn Program Manager - Open Source Google Inc. http://code.google.com/opensource/ I blog here: http://google-opensource.blogspot.com - http://www.hawthornlandings.org From jim at well.com Sat Mar 29 03:17:26 2008 From: jim at well.com (jim stockford) Date: Fri, 28 Mar 2008 19:17:26 -0700 Subject: [Baypiggies] room for one more pycon reviewer Message-ID: <33d7a73b56ae54d15e30a58528ebc58f@well.com> we have a slot open for a speaker who'd like to report on pycon adventures, this for the coming april 10 meeting. let me know if you'd like to present something. jim