| pythonware.com | products ::: library ::: search ::: daily Python-URL! |
![]() |
Daily Python-URLDaily news from the Python universe, presented by your friends at PythonWare. Guest editor: Hamish Lawson. 2005-11-23Cheese Shop: SimPy 1.6.1 [«Version 1.6.1. of SimPy simulation package»] Cheese Shop: SPyDI 0.7.4 [«SPyDI: Simple Python Distributed Indexing»] Cheese Shop: SPyRO 0.9.4 [«SPyRO: Simple Python Remote Objects»] Cheese Shop: atropine 0.1 [«HTML Scraper Thing»] Sean McGrath: IronPython cometh [«Jim Hugunin, the daddy of both IronPython (Python for the .NET CLR) and Jython (Python for the Java JVM) demos IronPython. You need a dynamic programming language. You work in both .NET and JVM environments. You want to learn one bag of tricks and use it in both. BUT you want to know that you can step out of the box and access the .NET environment in its entirity (GUIs, .NET libs etc) and the Java environment (Swing, Beans and what not) in their entirity when you need to. One word: Python.»] Django Weblog: Django at PyCon [«The next PyCon, to be held in Dallas in February 2006, will feature two Django talks: Django tutorial, by Jacob; Using Django to supercharge Web development, by me. Also, the "Agile Documentation: using tests as documentation" session will present Django's automatically-generated documentation/testing system.»] Zope Dispatches - Paul Everitt: Planet Plone, up and running [«Forgot to mention: the land of Plone now has a weblog feed aggregator, collecting blog entries from a number of Plone folks. ... Joel Burton and I are sharing a weblog called From the Collective, a place for us to talk about the Plone Foundation activities.»] online.effbot.org - Fredrik Lundh: simple generator-based parsing [«I just (re)discovered a rather efficient and straightforward way of writing recursive-descent parsers in Python. Here's an outline: 1. use an iterator to split the source into a stream of tokens or token descriptors. 2. pass the iterator's next method and the first token to the toplevel parser class. when you call functions corresponding to individual grammar rules, pass in the same method and the current token. 3. to check the current token, inspect the token argument. to fetch the next token, call the next method.»] Small Values of Cool - Simon Brunning: London Web Framework Night [«Speaking of the London Web Framework Night - I never did write that up, did I?»] Ian Bicking: Dynamic __doc__ [«One thing I did in the last (0.4) release of FormEncode is add some dynamic docstrings. I've started relying more heavily on automatically-generated documentation, but there was information specific to validators that I wanted to include without the tedium or redundancy of copying it into the docstring. In particular, I wanted to display information about all of the error messages a validator can produce.»] Cheese Shop: dap 2.1.0.rc1 [«DAP (Data Access Protocol) client and server for Python.»] Marko Samastur: Building FAQ from wiki pages [«We use MoinMoin for all our documentation needs, since it simplifies almost all related tasks. It's nice when everything is available at one place through a familiar and easy to use interface. This is why I also wanted to use it to build a FAQ for our site, which is more needed with each day. There's an abundance of software for building and managing such documents, but I haven't found anything that would match our needs. ... At the end I decided to build our own thing using Beautiful Soup, a python package I raved about a while ago.»] Mike Fletcher: Slides for this evening [«Okay, the slides for the presentation are now up.»] Small Values of Cool - Simon Brunning: London Python/Django/Ruby/Rails/Java Christmas party [«Not content with a Python/Django/Ruby/Rails meetup, Sam, Jez and I have teamed up to throw a Python/Django/Ruby/Rails/Java Christmas party this year. (For "party", read "bunch of nerdy blokes, many with beards, standing around drinking beer and chatting about computers".) It's at The Old Bank of England, Fleet Street on the evening of December the 12th.»] Mike Fletcher: For the ravening OpenGL-ctypes hordes [«Prepping for mini-talk tonight on OpenGL-ctypes I've just been installing it to Tim's laptop. Came across a few shallow bugs along the way...»] a contest open to various programming languages (including Python) [«The second edition of the programming contest TopDev2006 will take place on January 28th-29th 2006. This contest is original by its independance from any languages. The winners will not be the fastest programmer, but the ones who will propose the greatest technical solution with the most complete documentation.»] James Tauber: Atom (and Demokritos) Status [«Tim Bray has a nice summary of how the Atom Publishing Protocol works and a note on the current status. On the weekend I worked more on my Python implementation of said protocol, Demokritos. I'm close to an initial release which won't be usable as a real Atom server yet but should be good enough for interop testing.»] Cheese Shop: Myghty 0.99a [«View/Controller Framework and Templating Engine»] Cheese Shop: PyPedal 2.0.0b2 [«Tools for pedigree analysis»]2005-11-22Diary - Andrew Kuchling: List of PyCon talks now available [«The Python wiki now contains the list of accepted talks for PyCon 2006. If you're an author whose proposal was accepted, please feel free to edit your talk's title and abstract, or add links relevant to your talk.»] Cheese Shop: typecheck 0.2.0 [«A runtime type-checking module for Python»] Cheese Shop: NewEdit 3.1 [«Editor based on wxPython»] Groovie: Routes 1.0 Released [«I've finally finished the documentation for Routes and as I mentioned earlier regarded releases am now ready for a 1.0 release.»] Zope Dispatches - Paul Everitt: Florent mega rocks [«On his blog, Chris points out the amazing things Florent Guillaume has been doing lately. It isn't just the things he is doing. It is also the way he is doing them. He takes a LOT of extra time to explain things to people, in a very well-written way, and even covers backwards compatibility issues.»] Titus Brown: Ooh, ooh, I've got an ORM! [«I'm deeply skeptical of Jeff Watkins' approach to ORMs ... For example, why the heck would "No Magic" be on the list of anyone using Python?»] Titus Brown: OCaml the Python way [«Cute.»] Mike Fletcher: Pythonic duct tape [«I spent much of the day working on CDR billing-data import for the VoIP project. This is pretty simple stuff, download the records, load them, unify them with the ids in the database, and then insert records to record the charges. It just takes forever. Lots of trivial little bits that need to be dealt with to deal with corner cases, error checking to recover from data failures, all that wonderful stuff.»] Richard Jones' Stuff: Open Source Developers' Conference fast approaching [«I've been hella busy lately, as I've taken over the role of organising the program for OSDC in December. I'm currently putting the finishing touches on the proceedings, which are looking both pretty and good value. The presentations timetable is up too. There's a really good spread of talks both about Python and related technologies like the web, databases, linux and so on.»] Max Khesin: Ruby closures piss me off [«But they apparently piss off Matz, also ... I previously observed the same problem in Python; and while some try to brush it under the table, others get the point.»] Grig Gheorghiu: Python Testing Tools Taxonomy [«There's been a flurry of blog posts recently on the subject of Python testing, especially on Web application testing tools. I thought it would be a good idea to put up a Wiki page with the tools I know of, so that anybody who's interested in contributing to the "Python Testing Tools Taxonomy" can do so easily.»] Zope Dispatches - Paul Everitt: Marc from Cocoon, a class act [«A cross-Europe hat's-off to Marc from Cocoon-land. A sales guy from Tridion pinged him for "ny doubts, uncertainties, fears there are about using" Plone. I really liked the points Marc made afterwards, as well as the comments: "people start using FUD when they can no longer win the business on their own strength." I wonder if OSCOM.org should start a petition, where each open source CMS signs up for a pledge to do for each other what Marc did for Plone.»] Titus Brown: On a somewhat separate note... Python docs [«Submitting patches to Python is a huge pain, because of all of the overhead and review process. (And the sourceforge bug/patch system is really, really lousy.) This process is certainly legitimate for code, but I think it's overkill for documentation -- especially when you consider how the standard library has grown, and how poor the documentation is in some of the places I frequent (urllib2 , anyone?) One possible solution? I've been thinking setting up a Trac site and a darcs repository for editing Python documentation.»] Chris McAvoy: Routes Docs Online [«Ben Bangert posted documentation for his Routes package. It's a great looking package from what I've seen so far. I haven't had a chance to play with it, but I get the impression it's going to be very useful. URL translation to controllers is a pretty useful tool.»] Efectos Especiales: How to exit [«As seen in these comments: "Here's some complementary stupidness: If you enter "quit" or "exit" in the Python interpreter, it will respond with "Use Ctrl-D (i.e. EOF) to exit."" That is indeed annoying, but I figured there would be a good reason for it.»] Cheese Shop: Karrigell 2.2 [«A simple and full-featured web framework»] Chris McAvoy: Django / Rails Presentation is Go! [«In a very positive move, ChiPy, the Chicago Ruby Users Group, the DePaul Linux Users Group, and the DePaul Computer Science Society have teamed up to bring David Heinemeier Hansson (creator of Rails ) and Adrian Holovaty (one of the creators of Django ) together for Snakes and Rubies! ... This has been a theme for me over the past couple of months, trying to emphasize where the local users groups are the same, instead of encouraging little language wars.»] Chris McAvoy: November ChiPy Meeting [«Last night's meeting worked out well, despite it's relatively last minute nature. The three presentations (Ian Bicking on RulesDispatch, Robert Ramsdell on the random module, and Fawad Halim on PYRO) were great.»] Sidnei da Silva: GPL Considered Harmful? [«Had a quick chat with Paul Everitt this morning, which to my surprise informed me that people out there are bitching about Plone's license which happens to be GPL.»]2005-11-21nerd.newburyportion - Jeff Watkins: Querying the Context [«An important part of any ORM is being able to easily query the objects contained in the database. Not every ORM handles this particularly gracefully. ... One of the goals for the querying facility within my ORM library is the ability to cleanly perform multiple queries.»] nerd.newburyportion - Jeff Watkins: Counting Pythons In My Sleep [«One of the things I really like about JavaScript and Java is the fact that they use garbage collection rather than reference counting. I just discovered that Python also uses reference counting, but includes a garbage collector. From my primitive tests, the garbage collector doesn't seem to be turned on by default.»] nerd.newburyportion - Jeff Watkins: Everybody's Got An ORM [«SQLObject differs significantly from other ORMs I've used, like Hibernate and CoreData. My goals for an alternative ORM are the following...»] nerd.newburyportion - Jeff Watkins: Identity Sample [«Enough folks have had trouble getting the TurboGears identity framework to work that I thought I'd share the project I've been using to test various features as I add them.»] nerd.newburyportion - Jeff Watkins: Half-baked CherryPy [«As part of my work on the Identity framework for TurboGears, I've had to write a filter for CherryPy. While I'm certain the team building CherryPy is well meaning, I doubt whether there's a coherent design in place. For example, because CherryPy doesn't allow filters to catch and handle exceptions thrown, er, raised by the controllers, I've had to resort to throwing, er, raising an InternalRedirect exception which is somewhat strange.»] nerd.newburyportion - Jeff Watkins: Identity Management for TurboGears [«I just committed the code for the TurboGears identity management support (revision 89). And because this is such new code, I thought it might be helpful to include a short How To for getting everything up and running.»] Zope Dispatches - Paul Everitt: Zope and the GPL [«I'd like to collect some input on a meme that has gone around: is Plone a "bad" Zope citizen for using the GPL? Sidnei and I chatted about this point a bit. Below are my thoughts and Sidnei wrote a weblog post with his thoughts.»] Release of simulation package SimPy 1.6.1 [«It is our pleasure to announce the release of version 1.6.1 of the SimPy discrete event simulation package.»] OSDC::Israel Conference 26-28 Feb. 2006 [«Open Source Developers' Conference, 26-28 February, 2006, Netanya, Israel. Announcement and Call for Papers ... The Israeli OSDC is organized by the Israeli Perl Mongers and the Israeli Python user group. Our aim is to bring together practitioners, scholars, students, programmers, researchers and managers from different areas to discuss their views on various aspects of the Open Source technologies, to share knowledge and to have fun while doing so.»] python-dev Summary for 2005-10-01 through 2005-10-15 splee.blog - Lee McFadden: TurboGears Dev Chat transcripts [«... dev chat in #turbogears ... was mainly a run down and discussion of the new features in development for TurboGears 0.9 and the highlighting of certain trac tickets that need to be fixed for 0.9. Lots of interesting stuff was brought up about the new Widgets for on-the-fly generation of forms, especially as widgets are, IMHO, the most exciting addition to the TG world.»] The Cog: TurboGears FAQ [«Check out the "Unofficial" TurboGears FAQ on the TG Trac. Please consider contributing your experiences to help ease the pain for others.»] Toronto Python User's Group (PyGTA) meeting this Tuesday [«We will again be holding PyGTA at the Linux Caffe at 7pm this Tuesday. If no one else stands up to suggest a topic I'm thinking I'll discuss/show the OpenGL-ctypes work I've been doing on and off for the past few months.»] The Cog: Simple pager decorator [«I've done a simple pager decorator some time ago, and I was planning to comment it here, but I wanted to polish it a little.»] splee.blog - Lee McFadden: TurboGears Torrents [«I've set up a few .torrents for the turbogears community. The first is the 20 Minute Wiki screencast and the second is the new TurboTunes screencast. Beware of the second screencast as it shows (currently) unreleased features and you won't be able to replicate it with the 0.8a4 release.»] The Cog: Enabling Sessions [«CherryPy, for version 2.1, has changed their system for using sessions. It's actually rather easy to use!»] Kudos to Chris McDonough, as well! [«Chris has been steadily at work this week on finishing his Basket product, which makes it possible to distribute Zope add-ons using Phillip Eby's "eggs".»] Python-NL Conference: Python Pepernoten Meeting [«On December 9th the PUN (Python Usergroup Netherlands) will hold it's "Pepernoten" meeting in De Waag in Amsterdam. This is a free and freely accessible meeting.»] Cheese Shop: metar 1.3.0 [«Metar - a package to parse METAR coded weather reports»] Cheese Shop: pylibpcap 0.5.1 [«pylibpcap is a python module for the libpcap packet capture library.»] Cheese Shop: mechanize 0.0.10a [«Stateful programmatic web browsing.»] Cheese Shop: ClientCookie 1.1.0 [«Client-side HTTP cookie handling.»] Cheese Shop: ClientForm 0.2.1b [«Client-side HTML form handling.»] Cheese Shop: pullparser 0.0.7 [«Pull API for HTML parsing.»] Titus Brown: Unit tests save my butt [«Just updated twill to the latest versions of the wwwsearch/mechanize code. Because twill reaches moderately far into the wwwsearch code, some of the internal changes that John Lee made to mechanize affected the functioning of twill adversely. Conveniently, my unit tests caught many problems and I could iterate through & fix them one by one.»] Ned Batchelder: My personal Python mind set [«I was talking to a fellow Python enthusiast the other day, and the topic came up of Python's great dynamic nature. I said that I didn't think it had had that big an effect on me. He was surprised. "You don't like dynamic typing?" he asked. It's not that. Looking back over my experience with Python, it's not the dynamic typing that has affected me most.»] PPCEncoder 4 PocketPC [«I have written a nice Multimedia re-encoder (PPCEncoder) in Python. It re-encodes movies to PocketPC format.»] David Keeney: Philadelphia PUG [«Philadelphia has a new Python User Group, and we are looking for members and speakers. If you are in the greater Philadelphia area, take a look at our mailing list at yahoo group PhillyPUG.»] Cheese Shop: enum 0.2 [«Robust enumerated data types in Python»] Cheese Shop: pyemf 2.0.0b1 [«Pure Python Enhanced Metafile Library»] Max Khesin: off-track [«So far I have one specific peeve about Rails that might make developing an app in it a very annoying for me. ... Rails requires you to define your objects in SQL. ... Switching databases could happen for business reasons; another common practice is using SQLite for development and switching to some heavy SQL in deployment. Having to commit to an SQL flavor up front is going to make this difficult. ... For small apps that I am interested in and that represent most of Ruby's target audience, simple representation using objects for data and some metaprogramming for data relatonships would be more than sufficient. SQLObject, I'll take 2!»] Issue Dealer 0.9.93 released [«»] The Dreamer: Memories of Linux Bangalore 2003 [«... Yahoo! ... asked me to send my resume. So, I thought, sure, why not. Then, I got into the programming tests. After that, there was the programming round where I was asked to write a shell. I was happy that they gave me a problem which I actually had some clue about. I was asked to implement program execution, tab completion and a history, and was given any choice of language (the platform had to be FreeBSD though), and about 3-4 hours of time. So, I chose Python and although they were surprised, they asked me to go ahead. ...»] CMF 1.5.5 released [«The CMF developer community and Zope Corporation are pleased to announce the release of version 1.5.5 of the Zope Content Management Framework (CMF). This release marks the latest stable release in the CMF 1.5 series and should be suitable for production use.»] Plone Shell and post mortem debugging [«Was playing around with Plone Shell a lot this weekend (its the wxPython PyCrust Python ZEO shell on steriods) but was failing to get post mortem debugging working.»] online.effbot.org - Fredrik Lundh: an introduction to tkinter [«just fyi, I've updated the class reference section of the effbot.org draft edition of an introduction to tkinter. it needs a few more examples, and some copy editing, but it's almost good enough to replace the pythonware edition.»] Mike Fletcher: PyGTA this Tuesday! [«Looks like I'm responsible for arranging PyGTA again this month (though Paul already did the hard part). So, since I haven't had any other proposals, I'm thinking of presenting OpenGL-ctypes in all it's unfinished glory. Be there @ 7pm Tuesday.»] Runar Petursson: Website Redesign (now using TurboGears) [«Betur.net is now using TurboGears/CherryPy. ... For the first time, all the templates are Kid (I've historically used Cheetah). My thoughts on Kid vs. Cheetah for Web Applications will have to take another Blog entry. Both are very strong, just in different areas.»] Django Weblog: Extra security for passwords [«We've added extra security to the stored passwords in Django's authentication system. Thanks to a patch from GomoX, passwords are now stored with a salt and use SHA-1 encryption instead of MD5.»] Diary - Andrew Kuchling: Sponsors wanted for PyCon [«PyCon is now looking for sponsors to help fund the conference, ensuring that PyCon remains low-cost. Several levels of sponsorship are available to match your company's budget. Sponsoring is also a good targeted way to reach a large set of Python users. If you want to advertise something -- a product, a book, a job opening -- to the PyCon community, it costs only $200 to include your marketing material in the tote bag given to all conference attendees.»] Django Weblog: Week in review [«This week saw our first official release and a host of improvements.»] Cheese Shop: PyDO-Auto 0.1 [«Automatic table creation and maintenance for PyDO2»] Cheese Shop: FormEncode 0.4 [«HTML form validation, generation, and conversion package»] Nuxeo: Next CPS Bugday: next Wednesday (Nov 23) - getting ready for CPS 3.4 [«Florent just tells me we'll have a CPS bugday next Wednesday (Nov 23). Please join us whenever you can on that day on IRC in #cps (on irc.freenode.net). The goal is to diminish the number of bugs targetted for 3.4.0...»] PyDO 2.0rc1 [«I'm pleased to announce the release of PyDO-2.0rc1. What's New: * If you pass in a module via the new "module" keyword argument of the project() method of PyDO objects and the autoschema function, the dynamically generated classes generated will be associated with that module so it can be pickled and unpickled. * several bugfixes, with corresponding tests. What it is: PyDO is Drew Csillag's ORM (Object-Relational Mapper) database access library for Python that facilitates writing a Python database access layer.»] Cheese Shop: mathdom 0.6.6 [«MathDOM - Content MathML in Python»]2005-11-19Voidspace: Cyberpunk Search Engine, and Other Stuff [«I've used the engine from Python Search to create a search engine dedicated to Cyberpunk.»] Django Weblog: Chicago Django/Rails meetup [«If you're in the area, you should come to Snakes and Rubies , a meeting of Python and Ruby Web programmers on Dec. 3 in Chicago. David Heinemeier Hansson of Ruby on Rails will be presenting his creation, and I'll be presenting Django. ... Django developer Jacob Kaplan-Moss is coming up from Kansas to be there, too!»] ZopeChinaPak (0.8.1) [«Zope.org Product Updates»] Jp Calderone: Axiom Powerups [«Q: When I run axiomatic -d my.axiom start, a web server starts up. How does that work?»] Titus Brown: Delusions of grandeur [«Sparked by Ian Bicking's simple implementation of the twill language in JavaScript, as well as Robert Marchetti's Python-IE bridge project, PAMIE, I googled about and found a very recent article on PyXPCOM, too. It should be relatively easy to build a common API layer for JavaScript, mechanize/mechanoid/zope.testbrowser, PAMIE, and PyXPCOM that supports the twill language. Then you'd be able to have a single twill script that runs in-browser & from the command line, and also manipulates PAMIE and PyXPCOM.»] Grig Gheorghiu: Cheesecake project update [«Micah Elliott graciously offered to host my Cheesecake project at his TracOS site, a Trac-based Wiki that hosts a collection of Open Source projects.»] Grig Gheorghiu: Lightning Talks session at Star West 2005 [«Yesterday a gave a 5-minute Lightning Talk on Selenium at the Star West 2005 testing conference in Anaheim.»] Cheese Shop: PyDO 2.0rc1 [«a Python ORM supporting many RDBMS backends»] Cheese Shop: webcleaner 2.34 [«a filtering HTTP proxy»] Ruby the Rival [«The interviews are a very interesting read, and the dialogue covers a diverse range of topics. The power of Ruby on Rails is a common theme throughout, and Tate argues that Rails is the catalyst that will push Ruby into the mainstream. What I don't understand is this: if Rails will make Ruby the next Java, why didn't Zope do that for Python?»]2005-11-17Zope Dispatches - Paul Everitt: Getting the enterprise out of CMS [«Digital Web Magazine recently did an interview with Tony Byrne of CMSWatch. I like articles like this, as they pull me up out of parochial viewpoints and give a nice glimpse of what's going on in the broader market. In particular, I like goring sacred cows, even if they're my own. I especially like how Tony took on the conventional wisdom about entperprise content management.»] Diary - Andrew Kuchling: PyCon proposal notifications to go out on Friday [«It's now looking like I'll be able to send out the notifications for PyCon proposals tomorrow, on Friday, which is three days late. My apologies.»] Nuxeo: Slides: Introducing FunkLoad [«Here is a set of slides introducing our web testing tool, FunkLoad. FunkLoad is a functional and load/stress testing tools writtent in pure Python. And remember: "if it is not tested, it's broken".»] Zope Dispatches - Paul Everitt: Plone compared to a Java-based document management system [«AkaSig blogpost giving a nice feature-by-feature analysis and comparison of Plone to another system, at a technical level.»] Zope Dispatches - Paul Everitt: Givin' Enfold the Windows-love they deserve [«Enfold is a Plone company, right? I mean, it's started by a Plone co-founder. Over the last year, Enfold has sponsored a bunch of work by Mark Hammond, of PythonWin fame, to improve Zope's story on Windows. Mark (along with others, such as Tim Peters and Christian Theune) has made a deep and sustained impact on how Zope behaves on Windows. This was an area of neglect, with few people that had the talent and interest to step up. Enfold is a Windows company and sells Plone stuff for Windows. It was in their interest to help Zope. Props to Enfold for doing so. (And props also for having a sweet looking company homepage.)»] References for Python. [«This is a container class, suitable for use to answer the question "How do I pass a reference to a variable to a function", abusing some of the methods to get a syntax that's easier to use than more conventional containers.»] Using re.match, re.search, and re.group in if ... elif ... elif ... else ... [«A wrapper class for (a small part of) the 're' module, that enables you to do re.match() or re.search() in an 'if' test or 'elif' test and use the result of the match after the test.»] Bob Ippolito: MochiKit 1.1 Intro Screencast [«I just put together the first MochiKit screencast! ... This screencast is an introduction to MochiKit 1.1, using the interactive interpreter example as a conduit for showing off concepts from each MochiKit module. MochiKit is a lightweight javascript library that brings in rich agile language features expected to users of Python and other such languages, with AJAX and DOM facilities for rapid web application development.»] Laboratory Talk: Choose the language for this Lims [«With the help of first members of the embryonic Bika open source community, Dutch and Italian have been added to original Afrikaans and default English Bika languages. ... Laboratory Information Management Systems built in open source web content management platform Plone.»] Jumping Jack Slack 0.1.0 [«Jumping Jack Slack is a Slackware-based Linux distribution for the kind of people who write screenplays and fiction, create Web sites, or develop software in Python.»] Jerome Laheurte: New home for PSP-Python, and some 3D news [«I got rid of the hand-made HTML page and replaced it with a DokuWiki. Hopefully people can contribute now, and it will be easier to maintain. I'm progressing in learning 3D programming. It's amazing how the lack of an actual interesting project, like the Python-PSP 3D module right now, kept me ignorant of such a wonderful field of experiments.»] Ice 3.0 released [«ZeroC, Inc. is pleased to announce the availability of the Internet Communications Engine (Ice), version 3.0.0.»] python-dev Summary for 2005-09-01 to 2005-09-15 [«»] Jp Calderone: Axiom Queries [«Yesterday, I demonstrated how to write an axiomatic plugin. That was pretty cool, but to actually do anything interesting, you probably need to know how to define Axiom Items and perform queries. Without any ado, here's an Item definition for a popular kind of thing, a tag.»] James Tauber: Relational Python: Projection [«Now that we have a basic class for relations and a method for displaying them, we'll now start to go through some relational operators, starting with PROJECT.»] Zope Dispatches - Paul Everitt: Heading to the Plone Belgium meeting, Dec 7 [«The Plone Belgium user group is having its second meeting. I plan to attend, in conjunction with a ZEA partners meeting the subsequent 2 days. I attended the first Plone Belgium meeting and was very, very impressed. Turnout was good (around 30 people), the presentations were informative, and the folks enthusiastic. Afterwards we went out to a local cafe for another 2 hours of gabbing. Very enjoyable.»] Cheese Shop: yaxl 0.0.15 [«Yet Another (Pythonic) XML Library»] Cheese Shop: enum 0.1.1 [«Robust enumerated data types in Python»] Cheese Shop: mathdom 0.6.5 [«MathDOM - Content MathML in Python»] Cheese Shop: setuptools 0.6a8 [«Download, build, install, upgrade, and uninstall Python packages -- easily!»] Cheese Shop: matplotlib 0.85 [«2D graphics and plots»] Cheese Shop: swiginac 0.9.3 [«Symbolic mathematics»]2005-11-16PyPy sprint announcement: Gothenburg 7th - 11th December 2005 [«Gothenburg PyPy Sprint II: 7th - 11th December 2005 (NOTE: internal EU-only sprint starts on the 5th!) The next PyPy sprint is scheduled to be in December 2005 in Gothenborg, Sweden. Its main focus is heading towards phase 2, which means JIT work, alternate threading models and logic programming (but there are also other possible topics).»] Object Shell -- osh 0.6 [«In a Unix shell, you can run a series of commands, connecting the output of one command with the input to the next command using pipes. ... Osh is based on this idea. Because osh is based on Python, it is Python objects that are passed between commands, and Python functions are used to manipulate objects.»] ActivePython 2.4.2 is now available [«I'm happy to announce that ActivePython 2.4.2 is now available for free download.»] Dr. Dobb's Python-URL! - weekly Python news and links (Nov 16) [«QOTW: "You can tell everything is well in the world of dynamic languages when someone posts a question with nuclear flame war potential like 'python vs. ruby' and after a while people go off singing hymns about the beauty of Scheme " - vdrab "ctypes completely rocks." - Grant Edwards»] Blue Sky On Mars: MichiPUG third meeting wrapup [«The Michigan Python Users Group had its third meeting on Monday. There were 8 of us in attendance at the Humantech office, which has been a fairly consistent number. Roger Espinosa gave a good talk introducing ElementTree and lxml. And, as always, the unstructured part of the meeting was interesting and useful, covering a wide-range of topics.»] Plone Belgium Meeting [«University of Brussels and Foscup host the next Plone Belgium meeting on the 7 december 2005. This meeting is open to all the people in Belgium interested by Plone.»] Blue Sky On Mars: TurboGears 0.9 irc chat [«Yesterday, a whole bunch of people showed up for a meeting to discuss TurboGears 0.9. Not only did they show up, they stuck around for 3 hours. We had a lot to discuss and there are quite a few people contributing code. The activity level is great and I can't wait to have a fully-baked 0.9 out the door.»] Diary - Andrew Kuchling: PyCon paper reviewing completed [«In a 2 1/2-hour IRC session, most of the program committee convened to make the final accept/reject decisions for PyCon 2006 proposals. Those decisions are now made. 72 proposals were in the database, but one proposal was just a title, so call it 71.56 proposals were accepted.»] Groovie: How to Use Database Agnostic SQL in SQLObject [«One of the advantages to using SQLObject is that the code you write in it can easily be constructed in a way that ensures it'll work without a problem in all the databases SQLObject supports. This is a tremendous advantage that is most useful when writing web applications intended for wide-spread deployment on a variety of systems.»] Groovie: The Wacky World of Ruby [«Ruby is a fairly interesting programming language, from the "expressive" syntax to some of the absolutely bizarre documentation. For a Python programmer, the lack of predictability and almost excessively concise syntax (when just one more line would really make things a lot clearer) can be a bit of a downer. Overall though, I'm rather enjoying my experiences with Ruby but not enough that I'd want to use it exclusively.»] getmail 4.4.2 [«getmail is intended as a simple, secure, and reliable replacement for fetchmail.»] PyQt 3.15.1 [«PyQt is a comprehensive set of Python bindings for the Qt GUI toolkit.»] Bob Ippolito: MochiKit 1.1 [«MochiKit 1.1 is now available. This release contains a bunch of bug fixes, performance enhancements, cross-referenced and bookmarkable documentation, and some convenient new APIs.»] PyUI2 [«Version 0.2.1 Released»] MoioSMS 1.02 [«MoioSMS is a Python script to automatically send SMS from Internet sites. ... The plugin for Rossoalice.it was updated due to site structure changes.»] PyWBEM [«PyWBEM 0.4 released...»] Free Software Magazine: Praise for Python [«"As I was preparing my fourth article in the 'Towards a free matter economy' series I realized I'm continuing to flog the Python language.»] MailManager 2.0.3 [«MailManager helps teams deal with large volumes of email by allocating mail to the right person, providing tools to help answer it (prioritisation, reply templates, and a knowledge base), and allowing managers to set service levels for different types of mail and report on performance against service levels and volumes received.»] Linux Multimedia System 0.1.2 [«LMMS is a window manager written in Python/Pygame. It is for use on a TV and has joystick support. ... A frontend for mplayer was added. Themes can now be downloaded and installed directly from the Internet. A few bugs were fixed.»] Python Stencil Environment 0.3.1 [«Python Stencil Environment (PySE) is a framework for solving partial differential equations with the Finite Difference Method. Its main focus is on Stencil Abstractions.»] Zope 3 LIMS Application, SIP Released [«SIP is a Open Source Laboratory Inventory Management Systems (LIMS) for the Zope 3 application platform that uses a relational database.»] Zope Dispatches - Paul Everitt: Goldegg sprint covered in Stanford paper [«The Goldegg -sponsored sprint, held last week by CIGNEX in their Santa Clara office, is starting to get some more coverage. This article in the Stanford newspaper touches on a number of aspects of Goldegg.»] Jp Calderone: Adding Axiomatic plugins [«axiomatic has featured prominently in many of my recent blog posts, but what is it? As one might guess, in simplest terms, axiomatic is a tool for manipulating Axiom databases. Going into a little more detail, axiomatic is a command line tool which gathers axiom.iaxiom.IAxiomaticCommand plugins using the Twisted plugin system and presents them as subcommands to the user ... So what you really want to know is how do I write an axiomatic plugin?»] Django Weblog: Introducing Django 0.90 [«Since we made Django open source, we've had an amazingly productive couple of months. But the code has always been in development status -- available only via revision control. Now, our first release is ready.»]2005-11-15Data Plotting Library DISLIN 9.0 [«I am pleased to announce version 9.0 of the data plotting software DISLIN. »] Zope Dispatches - Paul Everitt: Rishab Ghosh on CIO blog [«Interesting format for an article a columnist at CIO magazine (glossy US publication aimed at executive decision-makers) gives an open source researcher a chance to clarify and rebut the columnist's statements. Rishab is a serious asset in the open source community. He has several years worth of empirical information with rigorous statistical analysis.Oh, and he mentions Zope and Plone also.»] Rishab Ghosh on CIO blog [«Interesting format for an article a columnist at CIO magazine (glossy US publication aimed at executive decision-makers) gives an open source researcher a chance to clarify and rebut the columnist's statements. Rishab is a serious asset in the open source community. He has several years worth of empirical information with rigorous statistical analysis. Oh, and he mentions Zope and Plone also.»] Ian Bicking: Twill in Javascript [«I was thinking about Twill and web testing and operational tests.»] Groovie: Project/Code Re-Use, TurboGears, and Django [«TurboGears has been making some impressive strides in both features, documentation, and possible user acquisition lately. Where it gets somewhat interesting is regarding its user-base though. The approach TG takes – building glue on top of other projects – is not new, as Subway also utilizes this, however the popularity TG has been enjoying has resulted in some interesting by-products.»] Peter Bengtsson: Filename splitter [«I need to create a Zope index for a ZCatalog that is KeywordIndex. A KeywordIndex is a list (array if you like) that is used to describe some data. For example, if the data is "Peter is a Swedish Londoner", the the keywords are ("peter", "swedish", "londoner"). What about if the data you want to create an index of is a filename like "NameLog.txt" or "holiday-00412-juli-05.jpg". I've now quickly written a little something that seems to do a decent job. »] Jp Calderone: Redirecting HTTP request logs [«Okay I promised this a few days ago and never followed up. Here's how to get that annoying HTTP traffic logging out of your main log.»] ZIP Import Support for Zope 3 [«Status: IsDraftProposal; Author: FredDrake; Problem: Zope application code typically uses many non-code files stored as data within a package. This files commonly include configuration data (ZCML), page templates, and resources. Making this work for packages in ZIP archives requires cooperation between the Zope application server and packages in the ZIP archive. The ZIP archive alone is not able to take care of the issues while still following the Zope development patterns which have become common practice.»] Ned Batchelder: Coalescing Python parser info? [«Last year, I wanted a parser generator for a Python program I was working on, and I went in search of a tool. As is typical in the Python world, I found many, of varying degrees of maturity, activity, and depth. To make sense of it all, I compiled a list or python parsing tools and put it on my site. Since then, many people have found it. ... Recently, though, Robert Keiffer wrote to me, asking me to do the Right Thing.»] Mike Fletcher: The joys of long-deferred todos [«Today I finally tackled one of the longstanding todos in the VoIP project, namely the point of interface between ISP account activation and VoIP account activation. »] SnakeCard GPL products [«I have decided to focus my activities on development and support. I have released SnakeCard's produt line source code under the GPL licence.»] Cheese Shop: PyPedal 2.0.0b1 [«Tools for pedigree analysis»] Titus Brown: Interactive exploration of Web apps [«One (apparently) whiz-bang feature of PBP, and now twill, is the ability to interactively browse your Web apps from the command line. ... This inevitably receives the most "oohs" and "ahhs" the times I've shown twill to people sitting next to me. Apparently none of the other Web testing tools out there do this. Anyway, I mention it because with the in-process WSGI testing patch, you can now browse your WSGI apps interactively without going through the Internet.»] Covert Microsoft Office InfoPath 2003 files to CSV report [«I needed a quick hack to extract some data from MS InfoPath files stored on a file server. Infopath data files are stored as XML so it was fairly straight forward to extract the required information.»] Windows network file transfers [«This module enables users on the windows platform to transfer files to remote hosts.»] Formats current exception with stack trace so that it fits in single line and has known encoding. [«Have you ever tried to log an exception of unknown type? What's in it? How to fetch stack trace? Will str(e) return plain ascii or international chars? Is logger ready for it? This recipe provides a formatting function.»] How to add cookies/headers to SOAPpy calls [«This hack allows you to add a cookie/header to a SOAPpy request. It uses a keyword args all-through to pass your own transports down to the SOAPpy core. It uses the ClientCookie module to store the cookies generated and/or to send the cookies.»] Bob Ippolito: MochiKit documentation overhaul [«In preparation for MochiKit's 1.1 release, I've thrown together a pair of custom docutils roles for the MochiKit documentation so that I can throw named anchors on each function.»] General Multiprecision PYthon [«gmpy 1.01 beta release...»] This Week in PyPy [«PyPy is an attempt to implement Python in Python. Here's what's been going on lately in the PyPy world.»] PySizer 0.1 [«I'd like to announce the first release of PySizer, a memory usage profiler for Python code. PySizer was written as part of Google's Summer of Code.»] Webware for Python 0.9 released [«Webware for Python is a suite of Python packages and tools for developing object-oriented, web-based applications. The suite uses well known design patterns and includes a fast Application Server, Servlets, Python Server Pages (PSP), Object-Relational Mapping, Task Scheduling, Session Management, and many other features.»] Mike Fletcher: We need test code [«I continued working on OpenGL-ctypes for a few hours yesterday (until I fell asleep), just sitting down and writing test-cases for those extensions I have and using them to see if the extension modules are working.»] Grig Gheorghiu: SoCal Code Camp [«From the xpsocal mailing list: the Southern California Code Camp will be held on Jan.21-22 2006 at Cal State Fullerton. I checked out the Sessions page and the organizers say "All technologies are welcome C++, C#, VB.Net, Java, Ruby, COBOL???, SQL, etc if it is code we want it." I noticed at least one glaring omission (what? no Python?) so I decided to remedy it by sending a proposal for a Python session, which is basically my PyCon 2005 talk on "Agile testing with Python test frameworks". Let's see if they go for it.»] Titus Brown: A Plea for Python [«Seth Vidal of fedoraproject.org has a request -- stop asking for PHP apps , and start using Python!»] Grig Gheorghiu: Exciting times in the Python testing world [«If you are a developer or tester using Python, you live in exciting, ebullient times. There are Python-based testing frameworks newly-announced or recently-updated almost every day. Here is a rundown of the latest I'm aware of...»]2005-11-14trac 0.9 [«Integrated scm, wiki, issue tracker and project environment»] ExtraMenu - a TkInter menu with arbitrary widgets as sub-menus [«A variant of a Tkinter Menu which allos sub-menus to: automatically open/close when the controlling button is active/inactive; sub-menus can be instances of any arbitrary widget, such as a Pmw.ComboBox.»] Twisted / BitTorrent :: Client / Server [«Two modules that run a BitTorrent server, and uses Twisted as a client to coordinate control-message passing, and progress monitoring.»] Success! Zope 3, add views, and Ajax [«Alright! Finally, I have the first stage of my snippets library for Zope 3 rolling. It's not displaying much at the moment, but it is doing what I've been trying to do.»] We'll miss you Zyon [«Jérôme Sandarnaud from the french Zope community (aka Zyon), who was just one of the greatest guy out there, is gone. We'll miss you so bad my friend !»] Checkins list for dataflake software [«For anyone interested in directly following changes to software packages available from dataflake.org (e.g. LDAPUserFolder, LDAPMultiPlugins, JTracker, etc) a checkins list is now available.»] tada 1.4.0 [«Twisted Asynchronous Database Api»] Using sorting order of your country/culture when sorting (collate,locale) [«It takes me over half an hour to learn how it works. (I hope to save your time) You have to remember to add compare function to your sort/sorted command.»] straw 0.25.1 [«Desktop news aggregator for GNOME»] Amara 1.1.6 [«Amara XML Toolkit: a collection of Python/XML processing tools to complement 4Suite»] Cheese Shop: atocha 1.0b1 [«A web forms handling and rendering library.»] Django Weblog: Week in review [«It was another huge week in Django development.»] Django Weblog: London presentation this Thursday [«Django cocreator Simon Willison, now a Yahoo employee, will be presenting Django to 200+ people in London on Thursday.»] Django Weblog: New RSS/Atom framework [«We've added a syndication framework to Django. It makes generating RSS and Atom feeds very easy.»] Django Weblog: Django desktops [«Let anyone who happens to be standing over your shoulder know what kind of a programmer you are.»] Voidspace: rest2web 0.4.0 alpha [«rest2web 0.4.0 alpha is now available for download. After about five months (and lots of changes), I've finally done a new release.»] Voidspace: Mapping and Sequence Type Protocols [«A while ago I did a blog entry ranting about duck typing in Python. In it I suggested that we could create a useful definition of the MappingType and SequenceType protocols. This doesn't require anything as heavy duty as interfaces, but is more useful than the broken functions IsMappingType and IsSequenceType from the operator module.»] Voidspace: The Other Articles [«I've had a good response to my tutorial on OOP - including someone wanting to translate it into Brazilian.»] Zope Dispatches - Paul Everitt: DDJ podcast on Goldegg [«Last week I was in California at a Goldegg-sponsored sprint focused on packaging. Chris McDonough has a nice sprint writeup .CIGNEX got their PR agency involved and we had a couple of press interviews. One was kind of neat: a 5 minute podcast interview with the editor-in-chief of Dr. Dobb's Journal.»] Max Khesin: Continuations, a Holiday Season TV-influenced explaination [«I have ventured into learning some Ruby, for a number of reasons: - According to Pragmatic Programmers it's about time I learned another language - Rails, at least to see 1st-hand what the hype is all about ;) - XpNYC (which I recently started attending, RIP dpsg-NYC) is using Ruby. This is an especially important excercise for Python programmers considering that a number of PEPs (342, 343) coming down the pike are clearly influenced by some Ruby concepts. Which brings me to another, very specific reason I wanted to to learn some Ruby - continuations.»] Titus Brown: twill & in-process testing of WSGI apps [«Ian Bicking's "Best of the web app test frameworks?" sparked an interesting discussion ... Of particular interest to me was Ian's suggestion that twill (or, really, urllib2/httplib) be modified to send requests directly to a WSGI application without going through a TCP connection. A few hours of hacking later, I've got a simple implementation that works (inside of twill).»] online.effbot.org - Fredrik Lundh: Tkinter Tricks: Using WCK-Style Controllers in Tkinter [«In an earlier article, I described the Controller mechanism in the Widget Construction Kit (WCK). The WCK uses different classes for code that draws a widget, and code that implements interactive behaviour. The main widget class is responsible for drawing the widget, but all interactive behaviour is provided by a separate controller class.»] Will Guaraldi's Blog: PyBlosxom status: 11/13/2005 [«I re-re-wrote the flavour template code for the upcoming PyBlosxom 1.3 release.»] Plone training at Stansted, London [«Webworks Sweden will again hold a plone training event December 7 to December 9 at the SAS Radisson hotel at Stansted airport, London. The event will be held in English.»] Mike Fletcher: Extensions move into CVS [«I've just checked the auto-generated extensions for OpenGL-ctypes into the Sourceforge CVS repository. The autogeneration is still quite crude, so expect any extension with glGet-like, pointer or image-based functionality to fail.»] Jsonserver for Zope2 implements json-rpc (1.1.pre1) [«Jsonserver is a json-rpc server side implementation for Zope2. It needs to be installed as a product. It also support client access to the jsolait client-side javascript package.»] James Tauber: Using Python Coroutines for AJAX Applications [«I think I just had an epiphany regarding the upcoming coroutine support in Python. I don't mean I came up with anything new (I think Ruby programmers have been doing it for a long time), just that I finally grok it or at least, I think I do.for Python 2.5!»] Cheese Shop: guitest 0.3 [«library for unit-testing Python GUI applications»] Cheese Shop: qtxmldom 0.2.7 [«PyXML-style API for the qtxml Python bindings»] Cheese Shop: swiginac 0.9.2 [«Symbolic mathematics»] Cheese Shop: desktop 0.2 [«Simple desktop integration for Python»] Cheese Shop: nose 0.7.2 [«A unittest extension offering automatic test suite discovery, simplified test authoring, and output capture»] Jerome Laheurte: PSP-Python update [«So, following a suggestion from Nevyn, I mercylessly ripped off LuaPlayer's graphic code and made a C++ library out of it, which is now used by PSP-Python. Next step is the sound library, shouldn't take long. So there's a new version out there.»] Martijn was right about ZPT [«Yesterday I wanted to write a test for a page template. It took me half a day, and I'm good at this stuff. Why was it so hard?»] Benji York: First Release of ZopeTestbrowser [«I've put together the first stand-alone release of the zope.testbrowser package. It is used in Zope 3 for doing functional testing of web applications, but can also be used against any web site. It uses John J. Lee's mechanize as the back-end but provides a redesigned API that is more suited to testing, and perhaps other uses as well.»] PloneCollectorNG 1.2.8 beta 1 released [«I am pleased to announce the release of PloneCollectorNG 1.2.8 b1. This release introduces compatibility with Plone 2.1.1. »] pynakotheka v1.0 [«I'm really pleased to announce the first public release of Pynakotheka. Pynakotheka is a simple GPL-licensed python script which generates static HTML photo albums to be added to web sites or to be burnt in CDs. It includes some templates and it's easy to create more.»] Will Guaraldi's Blog: Another round at taming the project maintenance [«I was talking with Josh the other day and he told me that I should take the time to learn Subversion and switch over rather than investing more time to tame my projects with CVS and CVSTrac. So I spent a good portion of today moving my PyBlosxom plugins (the ones that I wrote and/or maintain on my own) to a Subversion repository and Trac.»] James Tauber: Relational Python: Displaying Relations [«Here is the first pass of a method I wrote for displaying the relation in tabular form.»] Jp Calderone: Configuring Static Resources on a Mantissa Server [«Okay listen up, it's time for static file configuration.»] Jp Calderone: There is an easy way to determine if a Python RPC library is broken [«If the library employs Python's pickle module, it is broken. Period. When will people learn that pickle is not suitable for this task? "Oh, it looks so easy." "Oh, it's so fast, just look at those objects fly." "Oh it will core my process when handling a maliciously constructed string, there goes my server." "Oh, it allows arbitrary code to be executed by a remote party, woops there goes my credit card database."»] Cheese Shop: FormEncode 0.3 [«HTML form validation, generation, and conversion package»] Cheese Shop: Aioxml 0.0.1 [«Aioxml: Is nOt XML»] Cheese Shop: zope.testbrowser 0.9.0 [«A programmatic web browser»] Cheese Shop: SciPy 0.4.2_1434 [«Scientific Algorithms Library for Python»] Cheese Shop: TheMingServer 0.7.6 [«A Honking-good Little Python Application Server»] Cheese Shop: scipy_core 0.6.0 [«Core SciPy»] Cheese Shop: pygsear 0.53.1 [«Pygame library and examples»] Cheese Shop: python-json 3.4 [«an implementation of a JSON reader and writer in Python»] Schedule correction [«"Dec 25: Circulate doc set to community" That last date should be NOVEMBER 25 -- not Dec 25.»] SoCal Piggies: Ninth SoCal Piggies Meeting [«The SoCal Piggies had their ninth meeting at USC (Salvatori Computer Science Center) on November 10th at 7:00 PM. Eight Piggies attended -- Daniel Arbuckle, Steve Williams, Grig Gheorghiu, Diane Trout, Titus Brown, Mark Kohler, Howard Golden and George Bullis. ... The meeting ran pretty long, we were there until 10 PM or so, but it was well worth it.»] Foundation status update [«We wanted to send an update on the status of the Zope Foundation. We circulated a number of documents to an advisory committee. The comments were excellent and precise. The comments also identified a number of documents that needed to be either developed or updated before we circulate the final set of documents to the community for review. This process is nearing completion.»] Cheese Shop: PSE 3.0.0 [«Python Servlet Engine»] Cheese Shop: twill 0.7.4 [«twill Web testing environment»] Basket 0.1 Released [«Basket is a Zope 2 product that makes it possible to use *other* Zope 2 products which are packaged as Python Eggs.»]2005-11-11NewsForge: Project management with Trac [« If you've ever been a part of a large development project, you've no doubt become accustomed to having access to source control and bug tracking tools and design document repositories. But what if you're part of smaller project where you're responsible for setting up your own infrastructure? Trac, an open source project sponsored by Edgewall Software Services, provides a complete project infrastructure that's easy to install and maintain.»] Cheese Shop: qtxmldom 0.2.5 [«PyXML-style API for the qtxml Python bindings»] Cheese Shop: ll-toxic 0.7.1 [«Generate Oracle functions from PL/SQL embedded in XML.»] Martijn Faassen: Tramline source code now available [«At the Plone conference 2005 I gave a lightning talk about tramline, a lightweight up and download accelator for web applications. Now at last I've found some time to put the source code online.»] Sydney Python - Thursday November 17 [«The Sydney Python group is having its last meeting for the year next Thursday, November 17. Andy Todd will be regaling us with a preview of his upcoming OSDC presentation, "Building GUI Applications with PythonCard". Usual time and place: Thursday, November 17, 2005 (6:30 PM - 8:30 PM); James Squire Brewhouse, 2 The Promenade King St Wharf, Sydney, New South Wales»] Cheese Shop: SciPy 0.4.2_1431 [«Scientific Algorithms Library for Python»] Cheese Shop: scipy_core 0.5.9.1460 [«Core SciPy»] Cheese Shop: Numeric 24.2 [«Numerical Extension to Python»] Cheese Shop: gerbmerge 1.1 [«Merge multiple Gerber/Excellon files»] Django Weblog: Flatpages and redirects factored out [«As of a code update today, flatpages and redirects, two features that have been installed with Django by default but had not been documented, are now optional add-ons.»] Voidspace: Introduction to OOP [«I've put a new tutorial online. This is Introduction to OOP with Python. It's a tutorial for beginners - and covers objects, classes, etc.»] Jp Calderone: Configuring HTTP and HTTPS ports, and static content [«Yesterday I showed you how to create and start the most minimal Mantissa server possible. ... "Awesome," I hear you exclaim. "But what does it do," you most likely then complain. A fair question, to be sure!»] Andy McKay presents "Avoiding Zope Development Pitfalls" at our Seattle Plone Gathering in December [«We have a special treat this month. If you're going to be developing Zope or Plone applications, then there are lots of things to learn. Sure enough there are few things to avoid. After a few years of Zope development, Andy has hit most bad things at one time or another, so here are some of the things he's learnt. Andy McKay is the author of "The Definitive Guide to Plone" and provides Plone training and consulting at Enfold Systems.»] Mike Fletcher: Extensions start to take shape [«I continued work on the extension wrapping code for OpenGL-ctypes this evening.»] Mike Fletcher: Gentle hush of tickets falling [«Spent the entire day on the VoIP project, mostly on the Emergency Services (9-1-1) support.»] Unified model for managing application resources [«Here is a pattern for managing the different types of resources used in an application.»] Peter Bengtsson: "Clever" date formatting accessibility [«Last night I wrote a little function that tries to show dates cleverly by comparing the date with todays date, it formats the date differently. If the date is today is just says "Today 10:00" and for yesterday it says "Yesterday 10:00". If it's within a week it shows is like this "Thursday 10:00". If the date is older than about 30 days it skips the time part and just shows "13-May 2005" and if anything else (ie. > 7 and < 30 days) it shows the whole thing like this "13-Oct 2005 10:00".»] Cheese Shop: qtxmldom 0.2.4 [«PyXML-style API for the qtxml Python bindings»] Cheese Shop: SPyDI 0.7.3 [«SPyDI: Simple Python Distributed Indexing»] Cheese Shop: SPyRO 0.9.3 [«SPyRO: Simple Python Remote Objects»]2005-11-10Ian Bicking: Best of the web app test frameworks? [«What are the best web application test frameworks people have seen? Any language, though I'm thinking more about unit tests, not as much about through-HTTP acceptance testing. I'm curious mostly because I want to see other useful features for me to borrow.»] CPS 3.3.8 released [«CPS 3.3.8 has been released. This is the last development release before the forthcoming stable version, CPS 3.4.0.»] Kudos to Florent Guillaume! [«His work to bridge back the Zope3 event model to Zope2 is an amazing feat.»] Cheese Shop: kid 0.7.1 [«A simple and pythonic XML template language»] Cheese Shop: mathdom 0.6.4 [«MathDOM - Content MathML in Python»] Cheese Shop: pygraphviz 0.21 [«A python interface to graphviz»] Wing IDE for Python 2.0.4 released [«We're pleased to announce the release of Wing IDE for Python 2.0.4. This is a bugfix release and is a free upgrade for Wing IDE 2.0 users.»] Flightdeck-UI Online Version 0.3.91 Released [«Flightdeck-UI Online version 0.3.91 has been released. This is a minor update to the advanced beta version (0.3.9).»] seppo 20051109 - simple embarrassingly parallel python [«I'd like to announce "seppo" - simple embarrassingly parallel python. This should be considered a very alpha version, and was released to the public to gauge interest/reaction. Overview: The map function is well-known in Python, allowing a single function to be called on each member of an iterable sequence: map( function, [1,2,3,4] ) The seppo module allows the same functionality, but distributed over several processes...»] rst.el -- renewed emacs support for editing restructuredtextdocuments [«emacs support for reStructuredText has been greatly improved and rewritten over the past few weeks.»] some Subversion tools written in Python [«Some tools for Subversion that might be useful for others. svn-copy-register: Replicates the directory structure and files of into, performing the necessary additions and deletions to register the changes files in into Subversion. is assumed to be a Subversion checkout. Files that exist on both sides are diffed to figure out if there are changes to be copied. svn-import-releases: Take a list of directories, each representing a version of some files (like a checkout of a release of some software), and imports each of these sequentially over an existing checkout, registering the new fileset and creating a subversion release for every directory imported.»] indra -- interfaces for web applications [«Indra is a set of simple programming interfaces that were defined with the intention of isolating web application code from specific back-ends. The goal is to be able to write powerful web applications with a clear separation that allows easily retargeting an application to a different backend, without having to rewrite the application code.»] Dr. Dobb's Python-URL! - weekly Python news and links (Nov 9) [«QOTW: "The lesson for me is to spend much less time on Python discussion and much more on unfinished projects. So even if I never use the new syntax, I will have gained something ;-)" - Terry Reedy "In short, this group is a broad church, and those readers with brains the size of planets should remember that they are just as much in a minority as the readers who appear on the list for the first time this week. The vast majority are here to learn and grow, and I think that's the sort of behaviour we should be encouraging." -- Steve Holden »] PythonThreads: Python has "arrived" in the mainstream [«David Ascher is the Chief Technologist and Managing Director for ActiveState, he is also a director of the Python Software Foundation.»] Nuxeo: Object event dispatching in Zope [«Here are some explanations about what happens in Zope 3.2 (and Zope 2.9 when using Five) when an event notification is sent by some code, up to a specific subscriber. It focuses more specifically on object events, which go through some additional hoops.»] Cheese Shop: funkload 1.3.1 [«Functional and load web tester.»] Cheese Shop: P(x) 0.2 [«An applet programming language»] Cheese Shop: interval 1.0.0 [«Python interval and interval set implementation»] Cheese Shop: PyZenity 0.1 [«An easy to use frontend to Zenity.»] Cheese Shop: pygraphviz 0.2 [«A python interface to graphviz»] Django Weblog: Authentication docs [«We've added docs on Django's authentication system -- users, groups, permissions and messages. It includes information on how to require user-login for a particular page, or pages, of your Django-powered site.»] Andrew Channels Dexter Pinion - Andy Todd: String manipulation in PL/SQL [«I've had to put my managerial hat to one side for a while. There's some very broken code in our system and I find myself the only person with the skills and time to fix it. It's the most serious PL/SQL programming I've done in a while and I'm beginning to remember why. These days if I want to get something done I'll reach for Python, and a day or so into this PL/SQL coding I'm pining for it already.»] Max Khesin: Acronymizer in Python (and why does sort have to suck?) [«When I am not wearing a cape and protecting the Universe from super-villans I mostly code a Windoze GUI for backoffice processing at a (albeit a very cool) financial company. A lot of our GUI is just a specific view of the database. We have some functionality where the user has to type in a column name. As DATABASE_COLUMN_NAMES_ARE_WAY_TOO_LONG_AND_UGLY I hardcoded 2-letter acronyms for some of them. Today the question came up whether this approach will scale to tables with a lot of columns. I immediately thought that 22^2 is quite enough possibilities, but then you have to take into account that acronyms have to actually sound a bit like the original, at the very least be composed of two letters of the original in ascending order. I figured that writing a script to do this would be faster than theorizing...»] Jp Calderone: How To Create A Mantissa Server [«So a guy comes up to me and wants to know what the absolute minimum effort to get a Mantissa server running is.»] Carlos de la Guardia: Zope 3 Project Starter [«I recently posted a comment about the need for a Zope 3 structure generator that allows new users to quickly set up a working project instead of having to create a number of files and directories by hand. Well, Duncan McGreggor has just announced z3 Project Starter , which is a Python script that automatically generates a Zope 3 project structure. Good work, Duncan! Now hoping for the other part of my wish: could something like this be part of the official Zope 3 distribution?»] James Tauber: Relational Python: Basic class for relations [«A relation is basically a set of dictionaries (called tuples) where each dictionary has identical keys (called attributes). While, as you'll see in the next couple of posts in this series, my display routine and the initial relational operators work on iterations over plain Python dictionaries, I found it useful to implement a relation, at least in these preliminary stages, using a different internal structure (something Date is clear in his book he has no problem with).»] TextIndexNG 3.1.1 released [«What's new? - multi-field indexing and query support - multi-lingual support - configurable converters (through ZCML) - new indexing API (allowing you to hook your custom content types with TextIndexNG through Zope 3 adapters).»] Silva 1.4 released [«Infrae has just released version 1.4 of the Silva content management system.»] Planet Zope: Silva News Network 2.0 released [«Infrae is proud to release version 2.0 of Silva News Network, the news application and framework for Silva. Silva News Network can be used to turn a Silva site into a sophisticated news publishing and aggregation application.»] Cheese Shop: libxml2dom 0.2.3 [«PyXML-style API for the libxml2 Python bindings»]2005-11-09James Tauber: Relational Python [«Reading Chris Date's "Database in Depth", I started to wonder what it would be like to have relational algebraic operations in Python. This is the first in a series of posts exploring that idea. I'll start by defining a simple class for relations.»] Revised announcement for tonight's Fredericksburg ZPUG [«This is a revised announcement for tonight's Fredericksburg ZPUG meeting. Andrew Sawyers is postponing his Squid and Zope presentation until the January ZPUG meeting (January 11, 2006). This is the new agenda: Please join us November 9, 7:30-9:00 PM, for the sixth meeting of the Fredericksburg, VA Zope and Python User Group ("ZPUG"). Using Zope for newspaper publishing! The dangers of object oriented inheritance! Free food!»] PyCon 2006 Call for Tutorials [«Enjoy teaching classes or tutorials? PyCon 2006 is looking for proposals for a pre-conference tutorials day. PyCon 2006 will be held February 24-26 in Addison, Texas (near Dallas). Tutorials will be held on February 23, at the same location.»] Voidspace: Python Search Engine [«I've been hacking around with the Yahoo Search API. It returns results a lot faster than the google one. I've cobbled together a CGI search engine that only returns results from a specific set of domains.»] Zope3 Starter Script - Update [«A new script/utility to ease z3 entry and facilitate beginning new z3 projects/sites.»] sharep 0.2 - share price downloader module [«sharep is a Public Domain python module for downloading share prices from the internet.»] SoCal Piggies meeting: Nov.10 at USC (7 PM) [«The next meeting of the SoCal Piggies will be this Thursday November 10 at USC, starting at 7 PM. We'll have 2 presentations: * "Python and Unicode" -- Daniel Arbuckle * "What You Can Do with Python in 90 Minutes" -- Mark Kohler. If you're a Python enthusiast living in the L.A./O.C. area, please consider joining us for the meeting.»] Python owns us - The weblog of Jarno Virtanen: The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Floating Point Numbers (No Excuses!) [«please, please, please read the Python tutorial appendix: "Floating Point Arithmetic: Issues and Limitations". It's all there. Explained by a seasoned expert. If you don't understand floating point numbers after reading it, don't use floating point numbers. (At least for anything serious.)»] Cheese Shop: swiginac 0.9.1 [«Symbolic mathematics»] Cheese Shop: nose 0.7.1 [«A unittest extension offering automatic test suite discovery, simplified test authoring, and output capture»] Ian Bicking: The UnZen of UnPython [«Chris McDonough is thinking about what Unpythonic means, and he kind of concludes that it's just a stick to beat other people over the head with, that like "obscenity" it's just a vague term brought out to invoke a response without being very explicit about what really bothers you. Probably true. But then, I think "Unpythonic" really does mean something.»] Grig Gheorghiu: ibofobi's Django doctest framework [«In the "This is way too cool" category: a new doctest-based framework for testing your Django apps. Other than doctest, it also uses Beautiful Soup and YAML. I need to check it out at some point.»] Ian Bicking: What is Paste, yet again [«The universal feedback I've received on paste attempts to define Paste is that no one got it. My fault. Anyway, since then I've started thinking differently about the composition of Paste and split it up in a different way. So, yet again, I try to explain what Paste is: Paste is just a name OK, that's a dodge. Paste is stuff I think is important and underdeveloped elsewhere. But I can be more specific about the pieces.»] Blue Sky On Mars: MacDevCenter.com: What Is TurboGears (Hint: Python-Based Framework for Rapid Web Development) [«Matthew Russell has just posted an article at O'Reilly's MacDevCenter "What Is TurboGears (Hint: Python-Based Framework for Rapid Web Development)". He and I spoke a few days ago, and he wrote quite an article around the interview. Thanks, Matthew!»] Base-Art: Giving this cat a little walk [«I've just watched TurboTunes screencast... CatWalk seems to be a good piece of code which puts SQLObject in all its userfriendly point-an-click glory! ... i was quite surprised to see Kevin code so much javascript, particularly some code (like retrieveGenres() or retrieveAlbumsForArtist ) which to me would be much more readable in Python in a real .py file.»]2005-11-08SDJournal: Getting the Subway Noteboard example up and running [«After taking a first look at Subway a few weeks ago I've been doing a bit more work with it today in terms of getting the NoteBoard example app up and running.»] Cheese Shop: Glarf 0.35 [«Side-scrolling platformer. The "Web 2.0" of games»] Cheese Shop: funkload 1.3.0 [«Functional and load web tester.»] Cheese Shop: mechanoid 0.5.21 [«Python Programmatic Web Browser»] Blue Sky On Mars: 600 members and nearly 30,000 screencast views [«I've been really busy these past few days, working on features for TurboGears 0.9 and creating a new screencast. This morning a took a quick look at the stats. The TurboGears google group has passed 600 members and the 20 Minute Wiki is likely to pass 30,000 views this week. It s also likely that TurboGears.org will serve its 40,000th Python Egg this week!»] Max's blog v0.2.1: The blog has moved [«I decided to stop using Blogger and moved to a dedicated hosting for blogging. Please check it out on max.textdriven.com.»] Blue Sky On Mars: TurboTunes tutorial and screencast [«Haven't had a chance to check out Ronald Jaramillo s great CatWalk tool for TurboGears? Take a look at the new TurboTunes tutorial and screencast to see how easy it is to populate your development databases using the CatWalk model browser. This is the first preview of TurboGears 0.9, which is coming soon.»] Titus Brown: 8 Nov 2005 [«a Perl-er learning Python Interesting reading. PyFLTK "David" posted about PyFLTK -- fantastic! I use FLTK from C++ and I've been waiting for the day when PyFLTK became usable. And it is!»] Chris McAvoy: First Ruby Meetup [«By "First", I mean "The First Ruby Meetup I've Attended."»] DFW Pythoneer Meetings This Week [«The Dallas-Ft. Worth Pythoneers are having three meetings this week.»] Chicago Python Users Group, Thurs Nov 10 [«November topics are "Remote, Generic and Random", just like us. We'll have presentations on PyRO (Python Remote Objects) by Fawad Halim, generic functions (as implemented in RuleDispatch) by Ian Bicking, and the standard library random module by Robert Ramsdell. There will also be time to chat, and many opportunities to ask questions. We encourage people at all levels to attend.»] Checking and Sharing: Coding conventions [«Now that CatWalk is part of TurboGears I have some cleanup to do, because allMyMethodNames should now be underscored to match TG's coding style.»] Checking and Sharing: SQLObject and Big Brother [«If you are sceptical about SQLObject and want to keep and eye on it, this feature is for you. I just check in support for turning SQLObject debug on and off from within CatWalk and displaying (in a frame) the raw SQL in all its gory.»] Checking and Sharing: Grid widget on a JSON diet [«CatWalk's grids are dynamically build using MochiKit terrific Stan syntax. They accept a data structure (JSON) and return a grid element you can add to your page or manipulate further using the DOM.»] Checking and Sharing: Configuring which columns you want in your grid views [«If you have objects with a lot of fields and you don't want to clutter your grid views with all the extra information which better fits your detail view, then this feature is for you. Grid view in CatWalk comes now with a small dingy, like in mozilla grids. If you mouse over it, you get a dropdown where you can choose the columns you wish to display. This display settings are context dependent and CatWalk remembers them for you.»] Checking and Sharing: Many to many [«I have just check in support for many to many relations in CatWalk.»] Checking and Sharing: CatWalk in TurboGears [«I was very pleased last week when Kevin Dangoor ask me if I could see CatWalk as part of TurboGears. Of course I could! Now you can get CatWalk out of the box if you checkout the developer version of TG from SVN.»] Checking and Sharing: Reordering fields [«Now, you can change the order of your fields in CatWalk's structure view!»] Checking and Sharing: Eval and IE [«I think I wasn't clear about my last post regarding IE and eval on dynamically generated input fields.»] Checking and Sharing: JavaScript & IE [«While using MochiKit to render CatWalk's views I stumble upon two quirks. First, when you are generating tables dynamically with the DOM you have to add your rows to a tbody element. ... The second quirk involved dynamically generated input fields.»] Checking and Sharing: CatWalk has a new home! [«The site hosts a new release of CatWalk that among other things add support for: - IE6 - MultipleJoins - Configuring which column to user as label for ForeignKey columns - Enum, Int, Floats, Bool columns. The stringCol enforce length settings - host based access control, by default only localhost has access A brand new tutorial shows you how to use CatWalk to develop a survey application for TurboGears.»] Cheese Shop: hungarian 0.1.1 [«algorithm for the linear assignment problem»] Cheese Shop: pyLAPJV 0.2.2 [«efficient algorithm for the linear assignment problem»] Cheese Shop: qtxmldom 0.2.3 [«PyXML-style API for the qtxml Python bindings»] James Tauber: Working on atompub-protocol-06 [«I've just started working on moving Demokritos over to supporting atompub-protocol-06. I've completed the changes to the introspection document. Next step will be throwing away the old collection format in favour of a normal atom feed. I'll also need to implement support for collection indexing. I'm glad APP defines the manner in which ranges of a collection are accessed because it saves us having to come up with something proprietary for Leonardo.»] BayPIGgies: November 10, 7:30pm (Google) [«The next meeting of BayPIGgies will be Thurs, November at 7:30pm at Google (Bldg 43, room Tunis). Hasan Diwan will demonstrate a prototype GPS system written in Python. Let's all work to convince him that he doesn't need to rewrite it in Java!»] Nuxeo: Events in Zope 2.9 [«Zope 2.9 (and Zope 2.8 when using Five 1.2) introduces a big change: Zope 3 style container events. With container events, you finally have the ability to react to things happening to objects without have to subclass manage_afterAdd, manage_beforeDelete or manage_afterClone. Instead, you just have to register a subscriber for the appropriate event, for instance IObjectAddedEvent, and make it do the work. Indeed, the old methods like manage_afterAdd are now deprecated, you shouldn't use them anymore. Let's see how to migrate your products.»] Griddle Noise: Adding Textile Support to Zope 3 [«I wanted to add Textile support to my Zope 3 'snippets' application. It was quite simple, thanks to Zope 3's concept of Source Types. Source Types are marker interfaces and text rendering views which render a plain text source type into HTML. The sources that are registered with the system are kept track of in a Zope Vocabulary which could be used to give users input options - plain text? structured text? reStructuredText? In a component architecture, this is just the type of thing one would want to be able to plug into and extend. Here's how I added PyTextile support into my application.»] Will Guaraldi's Blog: Should we rebuild PyBlosxom as a paste application? [«I've been following (very loosely) Ian Bicking's paste progress and it's really amazing stuff. Today, I bumped into his screencast on Ajaxy exception catching. That was really cool and I could see how it could be immensely helpful with debugging/fixing PyBlosxom plugins. I'm adding "investigate porting PyBlosxom to paste" to my todo list for winter break; paste looks seriously awesome.»] ASTNG 0.13.1 [«This release fixes a lot of bugs detected by pylint users, the most popular application built on top of this package. ... The aim of this module is to provide a common base representation of python source code for projects such as pychecker, pyreverse, pylint.»] pylint 0.8.1 [«I'm pleased to announce a new bug fix release of PyLint. Notice that a lot of other bugs will be fixed by updating the logilab-astng package to 0.13.1. ... Pylint is a python tool that checks if a module satisfy a coding standard.»] Cheese Shop: pygossip 0.1 [«Python GOSSiP distributed domain reputation service»] Cheese Shop: ruby2shoes 1.0.2 [«low-resource writer's software for screenplays and fiction»] Cheese Shop: SPE 0.7.5.f [«Python IDE with Blender, Kiki, PyChecker, Remote debugger, Uml and wxGlade support»] Cheese Shop: MingZine 0.3.2 [«Ming Server add-on to create a multi-site e-zine»] Cheese Shop: MingMods 0.2.3 [«Ming Server Mods to connect your digital audience to your PayPal account»] Cheese Shop: TheMingServer 0.7.4 [«A Honking-good Little Python Application Server»] Cheese Shop: PGAPy 0.1 [«Python wrapper for pgapack, the parallel genetic algorithm library»] Cheese Shop: OOoPy 0.2 [«OOoPy: Modify OpenOffice.org documents in Python»]2005-11-07Cheese Shop: astng 0.13.1 [«Python Abstract Syntax Tree New Generation»] Cheese Shop: pylint 0.8.1 [«python code static checker»] Chris McAvoy: Ruby Tonight, Python Thursday [«Tonight is the Chicago Ruby Meetup. I'm going to be attending for the first time. I'm looking forward to it. As I've written, I've been enjoying Ruby so far. I'm interested in seeing what the community is like. chiPy meets Thursday. Ian is going to present RulesDispatch, Robert Ramsdell is going to continue his exploration of the Standard Library, and Fawad Halim is going to present Python Remote Objects.»] Cheese Shop: SPyRO 0.9.2 [«SPyRO: Simple Python Remote Objects»] Cheese Shop: SPyDI 0.7.2 [«SPyDI: Simple Python Distributed Indexing»] Cheese Shop: fakemail-python 1.0beta [«Fake SMTP server for use in software testing»] Ned Batchelder: Ajaxy Exception Catching [«I'm only just beginning to dig into all of the Python web frameworks (The Boston Python Meetup group is doing a quickie comparison of frameworks on Thursday, and I'm on the hook for a TurboGears application.) For the most part, I still don't understand what all the parts are, though I recognize the names going by in my RSS feeds. I read about the developments with a vague interest, because it doesn't apply to me. But when I saw Ian Bicking's Ajaxy Exception Catching screencast, my mouth dropped open.»] ConfigObj 4.0.1 Config File Reader/Writer [«Version 4.0.1 of ConfigObj is now available. This includes one bugfix and two new features. ... ConfigObj is a simple but powerful config file reader and writer: an ini file round tripper.»] logintools Critical Update [«Critical Bugfix in logintools (which also affects jalopy). The new release is 0.6.2 ... I recently updated logintools and jalopy to be compatible with the new pythonutils code. This was the 0.6.0 releases. Embarrassingly, I didn't update the email calls to use the new function signature in cgiutils. New user sign-ups have been thoroughly broken since.»] python-ldap-2.0.11 [«python-ldap provides an object-oriented API to access LDAP directory servers from Python programs.»] Zwiki 0.47 released, news [«Zwiki is a powerful, easy to use and administer, GPL wiki engine for Zope 2. It works in both standard Zope and CMF/Plone. Version 0.47 has been released ... Allow limited-depth hierarchy display, translation updates, bugfixes.»] zopebot on irc [«You may have noticed a strange new metal personage hanging out in #zwiki, #zope and #zope-web: zopebot. ... zopebot can do many things, such as search google or major zope sites, but generally it stays quiet unless you talk to it. Mainly what it does is watch rss feeds and announce interesting changes in the channel as they happen (more or less).»] eric3 3.8.0 released [«eric3 is a Python and Ruby IDE with batteries included.»] Voidspace: Twisted Network and Other Mega Frameworks [«My new copy of Twisted Network Programming Essentials has just arrived. It's time to get Twisted. Whilst we're on the subject, I'll jump on the "discussing web frameworks" bandwagon.»] Ian Bicking: Ajaxy Exception Catching [«I added a new WSGI middleware to Paste this weekend, in paste.evalexception:EvalException... This adds to exception reports, allowing you to inspect and evaluate code in the context of individual frames of the traceback. Like everything in Paste, this can be applied to any WSGI application/framework.»] Circe 0.0.3b1 released [«We have added several bug fixes, and new features, such as unicode, into the 0.0.3 beta 1 release. ... Circe is a multiplatform IRC client written in the Python language that utilizes the wxpython library for the graphical interface.»] Cheese Shop: jpeg 0.1.2 [«Module to Read & Write JPEG COM and EXIF medata»] Django Weblog: Week in review [«Here are the highlights of Django improvements this past week...»] Mike Fletcher: FreeGLUT support mostly working [«Okay, went with implementing the FreeGLUT wrappers. They are basically working now, though I can't test the mouse-wheel (I don't have a mouse-with-wheel configured on Linux).»] PyJudy 1.0 [«Over the last three weeks of on-and-off work I've developed and have just released PyJudy 1.0, a wrapper to the Judy sparse dynamic array library.»] Mike Fletcher: Finally got the GLUT fonts working in OpenGL-ctypes [«I decided I really needed to get the OpenGL-ctypes GLUT support finished, so I just sat down and pounded on it for a few hours.»] Dr. Dobb's Python-URL! - weekly Python news and links (Nov 6) [«QOTW: "- don't use SAX unless your document is huge - don't use DOM unless someone is putting a gun to your head" - Istvan Albert "I wouldn't fret too much about a sharp remark from Fredrik Lundh. They're pretty much all that way. ;) It looks like you already did the right thing - read past the insults, and gleaned the useful information that he included in between. It takes a little training to get used to him, but if you can look past the nasty bite, he's really a valuable resource." - Steven Bethard»] Speedometer 2.1 - bandwidth and download monitor [«New in this release: - New simultaneous display of multiple graphs with options for stacking graphs vertically or horizontally - New labels to differentiate each graph - Removed 0-32 B/s from display to make more room for higher speeds - Fixed a wait_creation bug ... Speedometer is a console bandwidth and file download progress monitor with a logarithmic bandwidth display and a simple command-line interface.»] atomixlib 0.3.0 [«What's new? * It breaks the compatibility with previous version. Mainly you do not need to pass the current atom element being constructed to the Atomix methods. Instead the Atomix class keeps an handle to that element internally. * It adds a lot more documentation via docstrings and an epydoc version of the API. * It fixes some issues with XHTML content * It is more flexible for creating the atom document (feed or entry based). * It improves performances of atomixlib since 0.2.0 ... What's atomixlib? A Python module to facilitate Atom 1.0 documents generation.»] Leo 4.4a2 withdrawn [«Leo 4.4a2 has been withdrawn due to problems that can cause Leo to lose what you have recently typed. Leo 4.4a3 will be released in about a week.»]2005-11-06Cheese Shop: nose 0.7 [«A unittest extension offering automatic test suite discovery, simplified test authoring, and output capture»] Cheese Shop: Karrigell 2.2 beta2 [«A Pythonic web framework»] Cheese Shop: SiGL 19 [«An OpenGL 2D graphics library.»] Cheese Shop: Speedometer 2.1 [«Measures and displays the rate of data across a network connection or data being stored in a file.»] Cheese Shop: SPyDI 0.7.1 [«SPyDI Is a powerful engine to create distributed full text indexing systems and distributed search engines. It supports harvesting, crawling (pull mehtods), and push methods (via a Web interface or SPyRO Web services). It supports boolean and vector Information retrieval models. It has few dependencies, and comes with its own HTTP server and HTML embedded pages language (called pyew and wey pages), and session manager. It can use the SMTP of the Python library. It supports replacing the default modules with some better modules (Apache, exim, etc).»] Jerome Laheurte: Not only is it alive, it is usable. [«Finally found some time to work on PSP-Python. I dropped my first approach of wrapping the low-level APIs and instead wrote a higher-level module, inspired from LuaPlayer. Works nice. I even wrote some documentation. The module does only handle 2D graphics right now; but I just bought a book on the mathematical principles behind 3D programming and I have some hope I can come up with something interesting in the future.»] TextIndexNG 3.1.0 released [«I am pleased to announce the release of TextIndexNG V 3.1.0. TextIndexNG V 3 is a complete new implementation based on Zope 3 technologies and can be used both in Zope 2.8 or in Zope 3. What's new? - multi-field indexing and query support - multi-lingual support - configurable converters (through ZCML) - new indexing API (allowing you to hook your custom content types with TextIndexNG through Zope 3 adapters).»] CMF 1.5.5-beta Released [«The CMF developer community and Zope Corporation are pleased to announce the release of version 1.5.5-beta of the Zope Content Management Framework (CMF). This release is intended for testing purposes only; we do not recommend deploying it to production servers. The final release of version 1.5.5 is expected in the third week of November.»] Amara XML Toolkit 1.1.6 Efectos Especiales: The Poignant Planet Python Puzzle! -- solutions Nuxeo: CPS Second Bug Day Wrapup [«This bug day was announced on short notice, we we still managed to kill 26 bugs (while 9 new were opened). That's good work! Because there are still 84 active tickets for CPS 3.4 (some are only details of course), we've decided to release a CPS 3.3.7 in the meantime, probably early next week. And we'll keep doing bug days, I propose to have them every Thursday until CPS 3.4 is finally released.»] Blue Sky On Mars: URL-rewriting in CherryPy 2.1 and TurboGears [«Robert 'FuManChu' Brewer goes in-depth on URL-rewriting in CherryPy 2.1. This is some documentation I wish I had a couple weeks ago. Robert sums up which aspects of mounting apps at arbitrary points are broken.»] Nuxeo: CPS English Manual is here! [«Steve Meaker, from Manitacc, have just achieved and released the CPS English Manual for the upcoming CPS 3.4 release! I am really amazed by the quality and the amount of work he did. It's so great to see our lack of english documentation reduce a lot.»] Andrew Barilla: Exit 66 Jukebox 3.0 Beta 2 Released [«A quick little update to the 3.0 beta which fixes a minor import problem.»] Petro Verkhogliad: Coding like mad [«I helped a friend write some code for his Algorithms in Bioinformatics. He originally spent hours writing code in C++. In 20 minutes we had a more functional version written in Python. It is true what they say, Python is a great rapid development language.»] David Warnock: TurboGears plans adding CRUD [«See SimpleAdminIdeas on the TurboGears Trac wiki for a sumamry of where things are at present. Again this is an attempt to pull together with other projects as well as to make this something that plugs in when needed. Also on the mailing list there has been lots of activity around authentication and authorisation (more simply described as identification and permission). It is exciting to see how much progress is being made, looking forward to lots more too.»] David Warnock: TurboGears continues to adopt external tools [«On the TurboGears mailing list there is a suggestion to move away from its own test tool TestGears. So far the opinions are all positive. Again this shows, IMHO, that this is a project with a healthy approval of "Not Invented Here".»] Nuxeo: 1.3 of the Calendar released! [«If you wonder why it has been so long between 1.0 and 1.3 of the CalCore/CalZope/CPSSharedCalendar trio, then the answer is not only vacation, and a whole bunch of big new features, but also that every time I have been close to releasing a new version, I have first released it to some of our trusty customers for testing. And they have promptly found bugs, which I then fixed, and made a new release, and so on.»] Small Values of Cool - Simon Brunning: Selenium [«We've not automated our functional tests in the past - I know, I know - but we are really trying to pick up our game in our currenty project, so manual functional testing is another of our bad habits that we are consigning to the dustbin of history. With a bit of a steer from Sam , I looked at a number of functional test tools , but Selenium really stood out from the rest. It's just powerful enough, it's really simple, and it runs in your browser, so you can test browser compatability.»] David Warnock: CatWalk for Turbogears [«One of the key advantages of Django has been the automatically created database maintenance/admin forms. Now with CatWalk TurboGears is catching up fast. Of course one of the nice features is that it should be possible to make Catwalk work for other SQLObject applications once all the Paste Deploy issues are sorted out. Again an advantage of re-using existing tools rather than inventing new ones.»] Max Khesin: delicious-py slightly broken [«I was staying up last night implementing my next del.icio.us experiment, only to find that an essential (for this experiment) part of delicious-py, get_posts_by_url() is broken. It's not that surprising, as it is one of the DeliciousNOTAPI set of functions, which are basically HTML scrapes and subject to breakage by Joshua and Co any time. Still I was feeling kind of down, as one of my favorite toy's legs were falling off. Well, it was late enough and I said what the heck, I can do it myself...»] Nuxeo: zpkg tool: A quick intro [«You are in a maze of twisty little config files, all alike. I'm currently preparing to create a non-Zope bundle of CalCore and all it's dependencies. Since these dependencies are mostly Zope 3 packages (interface and schema) it seems natural to use Zope Corps tool for this: zpkg. Unfortunately zpkg is a complex tool with cryptic documentation. I have made packages with zpkg before, and it was hard. This time around, it was equally hard, because I had forgotten everything. I'm sorry to say this, but when it's hard to do something, and hard to remember how you did it, this is a sign of a bad design.»] Sidnei da Silva: Python and XUL: The Screenshot [«Mark Hammond just shown me a screenshot of Python and XUL. That's right, Python used as scripting language on our most beloved browser to create XUL interfaces.»] Grig Gheorghiu: Cheesecake: how tasty is your code? [«Our friends in the Perl community came up with the concept of KWALITEE: " It looks like quality, it sounds like quality, but it's not quite quality". Kwalitee is an empiric measure of how good a specific body of code is. It defines quality indicators and measures the code along them. It is currently used by the CPANTS Testing Service to evaluate the 'goodness' of CPAN packages. ... I think it would be worth having a similar quality indicator for Python modules. Since the Python CPAN equivalent is the PyPI hosted at the Cheese Shop, it stands to reason that the quality indicator of a PyPI package should be called the Cheesecake index, and I hereby declare that I'm starting the Cheesecake project.»] Grig Gheorghiu: Article on Selenium in October issue of "Better Software" [«My "Tool Look: A Look at Selenium" article was published in the Oct. 2005 issue of Better Software. I can now post a PDF version of the article...»] Spyced: Why do Java programmers like Ruby? [«As a (mostly ex-) Java programmer myself who prefers Python to Ruby, I'm puzzled by what seems like a rush of Java programmers to embrace Ruby as though it were the only dynamic language on the planet. I understand that it's mostly because of the success of Rails, which definitely came at the right time with the right marketing. But Ruby really doesn't seem like a good philosophical match with Java to me.»] The Occasional Occurrence: Rendering Arbitrary Objects with Nevow CherryPy [«I decided to rewrite a Python Cookbook recipe using CherryPy. I don't have anything against Twisted or Nevow, but there are just too many recipes devoted to them in the 2nd edition of the Python Cookbook.»] Dirt Simple: RuleDispatch Mojo Kicks Monkeypatching's Ass [«It all started a couple days ago, when Ian Bicking posted about his attempt at using generic functions for a simple JSON-ification task. Then, Rene Dudfield posted comments to the effect that generic functions were a poor fit for the task, and slower to boot. He included a benchmark that was supposed to show that generic functions were 30 times slower than a hand-optimized version of the same operation, although the numbers he posted actually showed only a 23.4 times slowdown. Well, I didn't think the benchmark was a very good one, but what the heck. I tried it out for myself, made a couple of minor tweaks, and spent 30 minutes or so writing a C version of one part of RuleDispatch that I'd been meaning to get around to anyway, and got the benchmark down to only a 1.37 times slowdown - a mere 37% slower than the hand-tuned version. But since it's still not fair to compare a function you're supposed to extend by adding new methods, with a hand-tuned version that has all the methods it will ever have, I devised a slightly fairer benchmark.»] Making It Stick (Patrick Logan): The Cathedral is the Bizarre (Too) [«Here's some postmodern glue I have been working with lately... I wanted to use Erlang with the Berekeley XML database as well as with the Clips rules engine. After a little consideration of my options for integration, for my purposes the easy answer was Python. Running SWIG for Python on Erlang's C-based erl_interface creates the glue that gets me into Python from Erlang (with all the desired Erlang node management capabilities). From there Python already has Berkeley XML DB integration and the PyClips interface to Clips. Plus I can send Python code from Erlang over the distributed process connection and have it executed dynamically in those Python "agents". On the front end, Erlang sends JavaScript, XML, JSON, and CSS to the browser. These combinations make Sed, Awk, and various shells look downright homogenous. Bizarre combinations gathered from the bazaar. »] Sidnei da Silva: Zope.org: Permanent Failure? [«Rumor has it that some brave folks are trying to come up with a zope3.org website, so that Zope 3 related information is found separate from the current zope.org website. I have lost track of how many different attempts have happened to restore sanity at the zope.org website.»] Sidnei da Silva: memcached Cache Manager for Zope 2 [«Made some good progress on my memcached Cache Manager for Zope 2. ... While staring at the code for the memcached python wrapper, I wondered if there was anything that could be done to make it faster, but sadly anything that I tried just made it slower.»] Nuxeo: "Some Zope 3 Quick Starts and Resources" [«Jeff Shell has just posted a reminder for several introductory documents and tutorials about Zope 3. Nice thing about it is that he even mentions z3lab.org, a project dear to us at Nuxeo: This site has blogs, documentation, proposals, movies, prototypes, and more, for building a high class content management platform on top of the Zope 3 framework. There is a lot of information and ideas floating around here, and the animations are very impressive.»] Ian Maurer: Django Unit Testing [«Looking through the unit tests for the Django project, I have been able to extract a relatively simple way of creating tests for my django models that do not effect production data or need to be cleaned up after each run.»] James Tauber: Demokritos and Leonardo [«What is Demokritos? Demokritos is an open source Atom Store I'm writing in Python. What is the relationship between Demokritos and Leonardo? The focus of Demokritos is implementing the Atom specifications. The focus of Leonardo is implementing a practical CMS for personal websites. Although the two will likely merge at some point, I think doing so at this stage would slow down things too much.»] The Occasional Occurrence: filterized [«I converted part of MultiAuth to a filter this evening. It is now at version 0.7. It still has the metaclass and decorators for setting roles, but the actual authentiation and access control happens in the filter.»]comments? |