stargeek
PHP news website logo.
home    PHP scripts    articles    seo tools    links    search    contact    shop    realtors


Jon's Python modules







Jon's Python modules

Jon's Python modules 04/11/2004 12:04 PM

jonpy 0.06 released




This is a GrokNews Entry: (what is grok?)





Similar Items

Jon's Python modules

Grok Headline matches for Jon's Python modules

Jon's Radio


Jon's Radio 12/19/2003 11:55 AM

Jon's Jail Journal


Jon's Jail Journal 09/09/2004 05:08 AM
This is Jon's diary. Jon is in prison on money laundering and drugs charges. "My new co-habitants are enduring the twin evils of a broken swamp-cooler and a cockroach infestation. A neighbouring asthmatic inmate happily described how he inhaled a cockroach that had crept into his nebulizer. He could feel the insect crawling around inside him and promptly vomited his stomach contents. Unfortunately the cockroach was not ejected, as it was lodged in his lung."

Jon's Ramblings: Using Services_Google
(PEAR)


Jon's Ramblings: Using Services_Google
(PEAR)
08/09/2004 07:59 AM
In a new posting on Jon's Ramblings (one of the PEAR developers working with the Auth_PrefManager, Auth_Enterprise , and Services_Google.

Update: Jon's Phone Tool 2.0


Update: Jon's Phone Tool 2.0 07/07/2004 11:17 AM
The scriptable phone dialing application adds a completely overhauled interface, a Location Manager, an Address Book Numbers menu, the ability to launch an AppleScript or an application when dialing, and many other changes.

Python and XML: XML Namespaces Support
in Python Tools, Part Two


Python and XML: XML Namespaces Support
in Python Tools, Part Two
05/13/2004 07:55 PM
In his latest Python and XML column, Uche Ogbuji continues his tour of XML namespaces support in Python tools, focusing this time on 4Suite.

Python and XML: XML Namespaces Support
in Python Tools, Part Three


Python and XML: XML Namespaces Support
in Python Tools, Part Three
06/30/2004 07:31 PM
In this month's Python and XML column Uche Ogbuji examines the namespace support in ElementTree, PyRXPU, and libxml.

This is Jon's diary. Jon is in prison on
money laundering and drugs charges


This is Jon's diary. Jon is in prison on
money laundering and drugs charges
09/11/2004 01:42 AM
prison

jonsjailjournal.blogspot.com
track this site | 5 links


Backporting from Python 2.3 to Python
2.2


Backporting from Python 2.3 to Python
2.2
06/08/2004 11:18 PM

We have a home-grown templating system at work, which I intend to dedicate an entry to some time in the future. We originally wrote it in Python 2.2, but upgraded to Python 2.3 a while ago and have since been evolving our code in that environment. Today I found a need to load the most recent version of our templating system on to a small, long neglected application that had been running the original version ever since it had enough features to be usable.

Unfortunately, this application was running on a server that only had Python 2.2. Installing Python 2.3 would have been somewhat more painful here than on other servers we run for reasons I won't go in to, so I decided to have a go at getting our current code to run under the older Python version.

In the end, I only had to make three minor changes, all at the top of the file in question.

  1. I added from __future__ import generators as the very first line of the file. We use generators (with the yield statement) in a few places - this feature was only properly added in Python 2.3, but was made available in Python 2.2 as a "future enhancement" through the aforementioned obscure import.

  2. I added True, False = 1, 0 on the next line down. Surprisingly, Python 2.2 had no support for a boolean type and instead used a test for non-zero instead. The above line defines constants that behave enough like Python 2.3's True and False to avoid any problems.

  3. I defined an enumerate function, which was introduced for real in Python 2.3. Here's the code I used:

    
    def enumerate(obj):
        for i, item in zip(range(len(obj)), obj):
            yield i, item 
    

All in all it only took around ten minutes to put the above together, after which the script worked just fine. It was interesting to see how our code had grown to rely on Python 2.3 features without us realising it.


SAS Modules I 0.0.12


SAS Modules I 0.0.12 11/18/2003 10:21 AM
Modules for the Site@School content management system.

SAS Modules I 0.1.0


SAS Modules I 0.1.0 12/03/2003 07:34 AM
Modules for the Site@School content management system.

from components to modules


from components to modules 01/11/2004 07:52 AM

Right now I'm refactoring/rebuilding the user interface of a new release coming out soon (oh right... Note to self: talk about that) and I'm facing the fight against "sticky" APIs. Or, in more technical terms, their coupling.

Ideally, a certain component set that is self-contained (say, and HTML component) will be isolated from other components at the same level. This makes it both simpler, easier to maintain and, contrary to what one might think, often faster. While I was at Drexel, at the Software Engineering Research Group, I did work on source code analysis, studying things like automatic clustering (paper) of software systems, that is, creating software that was able to infer the modules present on a source code base using API cross-references as a basis. Since then I've always been aware (more than I was before that, that is) of the subtle pull created by API references.

The holy grail in this sense is, for me, to create applications that are built of fully interchangeable pieces, that connect dynamically at runtime, thus avoiding compile-time dependencies. In theory, we have many ways of achieving this decoupling between components or component sets; in practice there are some barriers that make it hard to get it right the first time. Or the second. Or...

First, the most common ways of achieving component decoupling are:

  1. Through data: usually this means a configuration file, but it could be a database or whatever else is editable post-compilation. This is one of the reasons why XML is so important, btw.
  2. Through dynamic binding: that is, references "by name" of classes or methods. This is useful mostly with OO languages, as you'll generally end up dynamically allocating a superclass and then using an interface (or superclass) to access the underlying object without losing generality (and thus without increasing coupling).

Achieving decoupling in non-UI components is not too difficult (the data model has to flexible enough though, see below). But UIs are almost by definition something that pulls together all the components of a program so they can be used or managed. The UI references (almost) everything else by necessity, directly or indirectly, and visual components affect each other (say, a list on the left that changes what you see on the right).

In my experience, MVC is an absolute necessity to achieve at least a minimal level of decoupling. Going further is possible by using a combination of data (ie., config files) to connect dynamically loaded visual components removes the coupling created at the UI level, but that is difficult to achieve, because it complicates the initial development process (with dynamically loaded components bugs become more difficult to track, the build process is more complex, etc.) and development tools in general deal with code-units (e.g., classes, or source files) rather than with modules. They go from fine-grained view of a system (say, a class or even a method) to a project, with little in between. We are left with separating files in directories to make a project manageable, which is kind of crazy when you think how far we've come in other areas, particularly in recent years.

The process then becomes iterative, one of achieving higher degrees of decoupling on each release. One thing I've found: that the underlying data model of the application has to be flexible enough, be completely isolated (as a module) and relatively abstract, not just to evolve itself but also to allow the developer to change everything that's "on top" of it and improve the structure of the application without affecting users, etc.

Yes, this is relatively "common knowledge", but I'm a bit frustrated at the moment because I know how things "should be" structured in the code I'm working on but I also know that time is limited, so I make some improvements and move on, leaving the rest for the next release.

Final thought: Until major development tools fully incorporate the concept of modules into their operation (and I mean going beyond the lame use of, for example, things like Java packages in today's Java tools), until they treat a piece of user interface as more than a source file (so far, all of the UI designers I've seen maintain a pretty strict correspondence between a UI design "form" and a single file/class/whatever that references everything else), it will be difficult to get things right on the first try.


Unrealircd modules


Unrealircd modules 01/25/2004 04:13 PM
updated modules

E-Xoops Modules


E-Xoops Modules 01/02/2004 07:17 AM
Welcome

Tivo VLC modules


Tivo VLC modules 03/26/2005 04:46 PM
Tivo VLC modules first release

XML 4 Merge Modules


XML 4 Merge Modules 09/19/2004 05:52 PM

MORE Blog modules!


MORE Blog modules! 07/07/2004 12:55 PM

Imagine my shock and delight as I trolled through Roland Tanglao's page yesterday and discovered Flickr's 'Zeitgeist!

It's YA blog gutter display module - picking up where Laszlo's Photoblox leaves off. Now instead of having to build XML files of your slide show/photo album - it takes the images directly from your Flickr collection - PERFECT!

Another win for integration! Aren't built-in constructs fun - once you KNOW they're there?

Then I found a post by Stewert Butterfield on it. This all happened while I was down and off-line (fighting malware), so my apologies to Stewert and the rest of the Flickr team.

Great job guys and gals!

Now my Flikr photos get sent to this coolio checkerboard, puzzle display (even if it's done in Flash - it's still cooolio - the Flickr people are Flash masters.....)

My only request is for a larger and even largest size. I can get over 50%-60% more display space in my gutter! I hate wasting space.

Here's Stewert's post.....



Everyone once in a while it is good to have fun. So, we made the widget which is currently over on the left of this page, the
daily zeitgeist.

It's the first step towards making all kinds of slices through the giant pool of photos. This one grabs a selection of recent photos to cycle through and pops new ones in as they are uploaded.



MOM FAQ: NetIQ AppManager Modules


MOM FAQ: NetIQ AppManager Modules 04/11/2004 05:02 PM

Kernel Modules that Lie About Their
Licenses


Kernel Modules that Lie About Their
Licenses
04/27/2004 11:54 AM

Installed Perl Modules in RSS


Installed Perl Modules in RSS 07/09/2004 08:32 AM
Another interesting use for RSS for your delectation and pleasure. This one is for Perl coders, and is proving deeply useful. Installed Perl Modules in RSS. Automatically listing which modules you have installed yourself, and linking to their documentation. Very...

Gutter modules redux


Gutter modules redux 07/22/2004 01:30 PM

Julian Bond has submitted a great idea to the LazyWeb - I guess assuming that one Ben Hammersely will jump through the proverbial hoop and hack it right up - with some of those sexy shell scripts he and Danny O'Brien love to talk about.

Here's Julian's idea......

Imagine a block in the margin of Joi Ito's weblog.

Last update: 9:23am.
Location: Geneva Airport.
Listening: Monkey Radio.
Last seen in IRC: Channel #joiito 1m43s ago.
Phone: On a call.
Last Meeting: Davros.
Next meeting: Supernova.
Mood:Inspired

That sounds like to me - a lot of what MeNowDocument could handle, with new kinds of micro-content inside of it, with new kinds of collaboration inspired by it.

It also reminds me of a contest we tried to do with CMP back in '95-'96 "Where's Barlow?".

All in all - I'd say blog gutter stuff is coming into it's own. Credit Jason DeFillippo with much of this. His Blogrolling.com (now owned by Tucows) was the first service I ever saw which utilized this idea of blog gutter 'stuff'.

I was so inspired - I came up with a wh ole strategy for Jason.

So now we have Tribe Cast, Ping.net, Blogshares, Technorati, Laszlo's BlogBox and various forms of RSS feeds.

Isn't life getting interesting?

Oh yah - and Google AdSense.


Payroll Perl Modules 0.7


Payroll Perl Modules 0.7 07/30/2004 07:21 PM
A Perl API for calculating payroll taxes.

Modules drop in for v1.2 Bluetooth


Modules drop in for v1.2 Bluetooth 06/17/2004 05:09 AM
Electronics Talk Jun 17 2004 9:52AM GMT

Rukus Industries CMS modules


Rukus Industries CMS modules 06/16/2004 10:10 AM
Welcome to the project site!

Linux: the GPL and Binary Modules


Linux: the GPL and Binary Modules 12/08/2003 04:38 AM

InterBase 6 Merge Modules


InterBase 6 Merge Modules 09/11/2004 02:15 PM

Payroll Perl Modules 0.8


Payroll Perl Modules 0.8 08/12/2004 10:17 PM
A Perl API for calculating payroll taxes.

Childsplay 0.71 (Game modules)


Childsplay 0.71 (Game modules) 06/29/2004 12:23 PM
A suite of educational games for young children.

Childsplay 0.70 (Game modules)


Childsplay 0.70 (Game modules) 06/08/2004 05:23 PM
A suite of educational games for young children.

AVRbased Robotic Modules


AVRbased Robotic Modules 04/12/2004 01:00 PM
Release of AVR ISP

Payroll Perl Modules


Payroll Perl Modules 01/19/2004 04:16 PM
Payroll 0.6 released

A MacPython question about modules: the
default OS ...


A MacPython question about modules: the
default OS ...
10/31/2003 07:24 PM


A MacPython question about modules: the default OS X install of Python is in /usr/bin. MacPython gets installed into /usr/local/bin. If a module (say, for instance, the MySQLdb module) is set to install for the default Python directory, how do I get the module to be recognized by the MacPython install? Does that question make sense? Discuss


Building Good CPAN Modules


Building Good CPAN Modules 04/14/2005 07:14 PM
Your code is amazing. It works exactly as you intended. You've decided to give back, to share it with the world by uploading it to the CPAN. Before you do, though, there are a few fiddly details about cross-platform and cross-version compatibility to keep in mind. Rob Kinyon gives several guidelines about writing CPAN modules that will work everywhere they will be useful.

HP Recalls Notebook Memory Modules


HP Recalls Notebook Memory Modules 06/25/2004 03:39 PM
Hewlett-Packard Corp. said Friday that it will replace memory modules in its notebooks that suffered from an "industry-wide" design flaw.

SyChip gains Palm OK for Wi-Fi modules


SyChip gains Palm OK for Wi-Fi modules 07/15/2004 10:31 AM
More WLAN-enabled Palm OS PDAs on the way?

Meilhaus Device Driver Modules


Meilhaus Device Driver Modules 04/20/2004 08:34 AM
Python extension for ME-4000 released

Childsplay 0.80.1.1 (Game modules
branch)


Childsplay 0.80.1.1 (Game modules
branch)
03/19/2005 03:22 AM
Screenshot Childsplay is a suite of educational games for young children. It aims to be more games-like than gcompris.
Changes:
A bug in the "FindLetters" game that could crash the whole application has been fixed. This only affects GNU/Linux users.

Downpour: BitTorrent Modules for Perl


Downpour: BitTorrent Modules for Perl 01/02/2005 04:11 PM
Project Approved

Simon Cozens' Modules Need New
Maintainers


Simon Cozens' Modules Need New
Maintainers
09/16/2004 07:20 PM
Andy Lester writes "Simon Cozens, the not-entirely-mad genius, has left for God School. He's retiring from the CPAN, and leaving his legacy of Perl modules behind. I've stepped up to take on the task of making sure his 100 modules don't fall into disuse, ...

Modules idea for university entry


Modules idea for university entry 04/29/2004 01:18 PM
England's exam boards and regulator are considering ways to distinguish the best university applicants.
Grok Description matches for Jon's Python modules
GrokA matches for Jon's Python modules

Jon's Python modules

The following phrases have been identified by the grok system as matching this entry:

















Also check out:


Grok

Ipod Porn on the
Rise

Brief Abstract of
Wikipedia's
Mesothelioma Cancer
page

Get first aid
instructions in your
cell phone

IE is crap
JSPWiki gains
podcasting support

tbook -- Document
Preparation with XML

Soma Web Server
Rpgtoolkit
Award BIOS Editor
Small Is Huge in PCs
These Days

Taking the fear out
of facing a
high-definition
receiver

Yahoo's search was
well worth it

Yahoo's search well
worth it

passion of the
peeps!

The Skinny Apple Of
My Crotchety Eye

Bush Prays with
Troops After 'Tough
Week' in Iraq
(Reuters)

Bush: Nothing Warned
of 9/11 Attacks (AP)

Heathrow prepares
for superjumbo

Kidnapped Briton
freed in Iraq

LED Blues
Welcome to AJC!
GarageBand On
Windows?

US Asked Falluja
Insurgents to Stop
Firing -Bremer
(Reuters)

FBI Must Explain 70
Probes Before
9/11-Panelists
(Reuters)

Military Warned of
Philippine Jailbreak
(AP)

Islamic Group Claims
Uzbekistan Attacks
(AP)

Cheney Pledges Help
for Japanese in Iraq
(AP)

Progress in War
Against Spam Hit or
Miss (Reuters)

Jiapi
President's Easter
Message

GNU texinfo 4.7
XFree86 4.4.0
Prothon v0.0.4
clew 0.01
Quizmaster 0.0b
Tories' school
places shake-up

Brazil landless step
up seizures

Coalition resolve is
'unshaken'

Collaboration across
120 years yields
"oldest" movie ever

JCalendar 0.76
UseBB 0.2
Unified Qmail Patch
2004_04_11

PyEximon 0.9.0
Libtool 1.5.6
(Stable)

rt_x10 1.0
JamochaMUD
beta13-04-04-10

ACal Project
Arylon
S55 Remote Control
for WinAmp

AtomicFramework
U.S. Apache Shot
Down in Iraq, Two
Crew Killed
(Reuters)

Likud Sets Date for
Gaza Referendum (AP)

Russians on trial
over Qatar bomb

Thousands rally for
HK democracy

Small Is Huge in PCs
These Days (Reuters)

what is grok?