|
|
| 2005-01-15 |
Tagsonomy Management |
|
Following the recent growth-spike in social software systems like del.icio.us and flickr (systems that support the use of tags to classify content and to then share those tag schemes with others) has been the use of the term folksonomy to describe these tag-based taxonomies.
Personally, I find a lesser-used term, tagsonomy, more appropriate.
Of course, these recent 'net-based systems aren't the first place that I've run into on-the-fly creation of tags to help classify content.
I believe I have various tagsonomies now in effect in a number of places, including at least the following:
- Outlook categories for PIM content
- Office document keyword metadata
- del.icio.us bookmark tags
- Adobe Album photo tags
- iPhoto photo tags
- posts on this blog
- grouped news feeds in Sharpreader
- etc.
[Some may object that the tags used in systems that manage purely private content (e.g., Outlook categories) cannot be considered true folksonomies, since neither the content nor the tags are visible to anyone but myself. That may be true, and is maybe the root difference between folksonomy and tagsonomy. However, my guess, without having (yet) studied the patterns/structures in tags used across the different systems, some private some public, is that my informal tagging systems probably bear more similarities than differences. They probably all reflect to a significant extent my particular way of viewing the world.]
I have been quite intrigued with the exploration that del.icio.us lets one do by browsing not only who else is bookmarking the same content you are, but also seeing how they have tagged the same links...in some cases, there is quite a bit of diversity! And then when you see someone else with a similar tagsonomy, you think, hey, they must think in some way like me.
I realize that the simple, informal, ad-hoc nature of these tag-based classifications is a feature, yet I am unable to avoid thinking that there may be a way to, without diminishing those properties, somehow do a better job of managing at least my own global tagsonomy as it grows and evolves. By manage it, I mostly mean do something special to help make the tags more consistent across my own content. The anticipated benefit will be better searchability across my own content. And beyond that, some better means for discovering related content elsewhere on the web.
Next step (if I had the time) would be to build a tool that harvests all the tags from these decentralized tagsonomies, and presents them to me in some unified way. This would be a nice little sem-webbish python project, I recall seeing python libs for del.icio.us and flickr, I can use win32com for the com-based apps, I'll have to explore to see what some of the other apps provide in the way of exposure or api. |
| Filed under:
Knowledge Management
Python
|
|
posted at Sat, 15 Jan 2005 20:35:12 GMT
#
|
|
| |
| 2004-12-07 |
Python Native XML Datatype redux |
|
Logix makes this and that feasible (or so it would appear) with a working implementation of a multi-language programming system.
Thanks to LtU for the pointer |
| Filed under:
Python
|
|
posted at Tue, 07 Dec 2004 22:06:56 GMT
#
|
|
| |
|
|
| |
| 2004-10-10 |
Native XML Datatype for Python, contd |
|
Jon Udell, taking it to the next level by suggesting that such a native type be added to the mainstream VMs, kept me thinking about how to move toward the ideal of a native xml datatype in python...xmltramp looks like it is worth some experimentation.
Then yesterday, serendipitously, I was browsing around the site of one of the giants of Python, Frederick Lundh, when I ran across this post of his from late 2002: Idea: XML Literals for Python. Maybe we should be praying for rain? |
| Filed under:
Python
|
|
posted at Sun, 10 Oct 2004 12:45:52 GMT
#
|
|
| |
| 2004-10-06 |
PEP: Native XML Datatype |
|
Request for new Python Feature: support for a native (or quasi-native) XML datatype, a la E4X. As recently discussed by Jon Udell and Phil Windley.
I wonder how close to the ideal user (developer) experience a solution could get without changes to the core language? Does python 2.3.x have enough innate extensibility to make something decent possible? |
| Filed under:
Python
|
|
posted at Wed, 06 Oct 2004 17:27:28 GMT
#
|
|
| |
| 2004-07-29 |
IronPython |
|
Bonus! Tonight was an all-niter, wasn't it sweet to take a glance at the news before retiring circa 4am only to see jump from the page that IronPython has finally been made available. I thought maybe I was hallucinating, but no, it is there. Maybe I won't hit the hay just yet... |
| Filed under:
Python
|
|
posted at Thu, 29 Jul 2004 07:45:04 GMT
#
|
|
| |
| 2004-05-10 |
PyDS as a Windows Service |
|
I now have my PyDS desktop server running as a Windows service, thanks to these clues. This is much more convenient and 'cleaner' than the previous mechanism of starting up the server from a cmd-shell.
The best impact is that I no longer run into localhost-not-localhost because I forgot to start up PyDS.
This solution leverages the ZService.py script from the Zope distribution. Nice little gem to keep in mind for running some python as a Windows service. |
| Filed under:
PyDS
Python
|
|
posted at Mon, 10 May 2004 04:20:16 GMT
#
|
|
| |
|
|
| |
| 2004-04-18 |
Pub-sub Internet Middleware |
|
Adam Rifkin, co-founder of KnowNow, has a new article (co-authored with KnowNow's CTO Jnan Dash) published in Business Integration Journal: 'Survival of the Freshest: Improving Business Processes With Pub-Sub
Internet Middleware'. I was pleased to see in a recent email update from BIJ that this article is amongst their most-read in recent months.
"With publish-and-subscribe internet middleware, organizations can achieve 'last-mile', real-time data delivery with less latency, fewer IT requirements, and low cost."
"...HTTP-based real-time information can be sent from anywhere on the Internet to anywhere on the Internet. In effect, HTTP now goes in both directions, enabling applications to be continuously updated with new data..."
Want to build some wicked event-driven apps? Or add some real-time information displays to your web apps? Check out KnowNow. Also check out mod-pubsub, the open-source edition that is also led by Adam. Mod-pubsub includes a python-based server implementation, as well as numerous python-based client examples (not to mention the many examples in most other mainstream platforms/languages). |
| Filed under:
Event-driven
Python
|
|
posted at Sun, 18 Apr 2004 19:14:08 GMT
#
|
|
| |
| 2004-04-16 |
Moving Python: The Problem |
|
When I first installed Python, I made a mistake. I didn't think it was a mistake at the time, but have come to believe so over time.
The mistake that I am referring to is that I didn't install python to hang directly off of my root directory, as c:\python23, but rather off of another folder. [Note: This is on a Windows host]
So instead of having c:\python23, I have c:\dev\python23. This made sense to me at the time, grouping all of my development tools/libs/sdks under a single c:\dev folder, and it still makes sense to me conceptually. But over time, I have realized two things, at least wrt python: 1) Certain kinds of installs prompt you for the target location (rather than just finding where python is already installed), and these usually default to c:\python23; and 2) I have occasionally found that some installs (could be python packages, or maybe other tools that embed python facilities) create a c:\python23 folder and put some stuff in it. I haven't always noticed cases of the latter immediately, so I'm not sure who the culprits are.
Right now for instance, I see that c:\python23 was created recently, and it contains 3 files (and no subfolders): MSVCIRT.dll, MSVCP60.dll, and MSVCRT.dll. I recognize these as the runtime files for apps built with Visual Studio 6. But who put them there? And what is the impact, if any, of this rogue python folder?
Worse, something also messed with some of my registry settings for python-related paths. I searched the registry for occurrences of '\python23' and found some to be 'c:\dev\python23' and others to be 'c:\python23'. Ayy. Even more confusing was when I realized that I might have been the cause of some of these, due to factor#1 above: when installs prompt for the target python folder, and default to c:\python23, I wouldn't be surprised if I sometimes glazed over at that step and just (incorrectly) went with the default.
In any case, I think that these ongoing problems can all be cleared up if I move my python folder from c:\dev\python23 to c:\python23. The question is how?
I've searched around the likely places, but haven't found a recipe for doing this. So...
Option 1: Re-install python from scratch
This, I am sure, is the cleanest approach. The only reason I am looking for another option is that I am not as confident about easily getting back to my current 'state' of python installation, meaning having all of the same releases of python packages, and tweaks or customizations of python scripts, etc.
I am pretty sure that all such customizations on top of the base python23 install are isolated to four categories/places:
Lib\site-packages
Scripts, where I've customized some of the scripts that get installed and added my own
The files from Python.NET which enable access to .NET assemblies
myScraps, my own folder for keeping bits and pieces of useful code
This might lead to Option 1a, reinstall python and then handle these exceptions manually, but I'm uncomfortable with this approach, with assuming that there are no other post-base-python-install areas to account for. Plus, if I have to hand-manage all these individually...which leads me to option 2.
Option 2: Physically move the python folder, and make necessary adjustments manually
I think that with this approach, the manual adjustments are limited to:
Search and edit all registry entries that mention \python23
Edit the paths of existing batch files in the Scripts folder (I did a grep for hardcoded refs to '\python23' in the whole python tree and the only results were in scripts and in some install log files)
Change my path to point to the new python root location
If anyone has any comments, or an easier option, please let me know; otherwise, I'll report back in a few days with 'Moving Python: A Solution'. |
| Filed under:
Python
|
|
posted at Sat, 17 Apr 2004 00:02:08 GMT
#
|
|
| |
| 2004-04-09 |
TMAPI |
|
TMAPI, a new proposal for a standardized API for working with topic maps, has been released in alpha 1.0 status.
Coverpages coverage here and the project homepage here.
I wonder if Ontopia will update its (free) python-based tmproc topic map engine? |
| Filed under:
Knowledge Management
Python
|
|
posted at Sat, 10 Apr 2004 00:06:24 GMT
#
|
|
| |
| 2004-04-01 |
xyzzy |
|
I wonder what the ongoing impact of computer-games / video-games is on generating interest among youth in software development?
In fact, Adventure on a PDP-11/34 definitely played a role not only in how much time I spent online way back when, but also in instigating me to learn the PDP's dialect of BASIC so that I could write my own interactive fiction (IF) adventure.
Hans Nowak's recent discovery of Twisty Little Passages has, in some faint way, rekindled a bit of my original interest in interactive fiction, probably partly from nostalgia, partly from pure amusement, and partly from wondering what v2.0 of my own rendition of an IF game might look like by applying the power of some of the technologies and techniques I know now. For example, python and OO - I recall reading another pythoneer's consideration of the pros/cons of python/OO for game-development, can't remember just now who/where.
Maybe this would be a good pure-fun side-project to exercise my still-growing python muscles and expand my breadth - I have a few ideas that may prove very interesting. Does pygame provide support for game state and flow, or is it mostly geared toward the visuals? Are there other essential python libs for this kind of dev? |
| Filed under:
Games
Python
|
|
posted at Fri, 02 Apr 2004 00:04:16 GMT
#
|
|
| |
| 2004-03-23 |
Outlined Blogroll |
|
Putting aside for the moment the issues of whether and how to organize a blogroll beyond a simple list (these issues to be covered in a follow-up post), here is a decent first cut at presenting such information in an expandable/collapsable form, assuming you have some such blogroll feed taxonomy available in OPML.
With the help of the recent activeRenderer v2.0 and its new XML-RPC API, I've finally managed to add my blogroll to my page's sidebar in a form that I feel is at least a slight improvement over the flat list. ActiveRenderer does all the hard work.
Here's the python code:
def blogrollRenderer(self, blogrollURL='c:\\somefiles\\mySubscriptions.opml'):
import xmlrpclib
server = xmlrpclib.Server("http://rpc.activerenderer.com")
opmlFile = open(blogrollURL)
opml = opmlFile.read()
opmlFile.close()
opmlHtml = server.activeRenderer.opmlRenderer(opml)
html = '<p>'
html += '<b>Blogroll</b>'
html += '<link rel="stylesheet" type="text/css" \
href="http://www.activerenderer.com/activeRenderer/activerenderer.css">'
html += '<script type="text/javascript" \
src="http://www.activerenderer.com/activeRenderer/activerenderer.js"></script>'
html += opmlHtml
html += '</p>'
return html
With PyDS, you just put this in a macro, and then invoke the macro from a nugget, and you're done.
Of course this is just step one; some usability issues still need to be addressed, foremost being easier access to the sites and RSS URLs of the listed feeds. This looks like it will require delving a bit into the activeRenderer script.
TTD (Things To Do):
Bag inline expansion of items
Add hrefs to feed items
Add rss links to feed items
Replace use of remote activerenderer resources with local copies where possible |
| Filed under:
Knowledge Management
PyDS
Python
|
|
posted at Tue, 23 Mar 2004 21:32:48 GMT
#
|
|
| |
| 2004-03-20 |
PySpaces 2 |
|
Since my initial post puzzling about the absence of a Python-based tuple-space product and/or API, I've discovered these two starts:
Quixote-based proof-of-concept
Linda in Python
I sure would love to see a Twisted-based PySpaces effort get started...I've got a project or two that would actively exercise such an engine. |
| Filed under:
Python
|
|
posted at Sun, 21 Mar 2004 00:46:56 GMT
#
|
|
| |
| 2004-03-17 |
Instant Webserver Here |
|
Pretty funny (maybe profound, actually) how a one-liner using a core package of Python suddenly gets such attention in the community.
As I mentioned the other day, I also found this 'instant webserver' functionality compelling; so much so, I wanted to make it even more accessible to common ad-hoc contexts. Improving accessibility to tools has an exponential (or at least multiplicative) effect on their value to the user.
The following is specific to the Windows platform; but surely a similarly simple (or simpler) solution exists for your favorite Linux distro.
Improved Shell Access
First, create a two-line batch file:
cd %1
python -c "import SimpleHTTPServer; SimpleHTTPServer.test()"
and save it to a folder that is in your system path. I put mine in c:\utils, and named it iws.cmd.
Now, at any shell prompt, I can enter
c:\iws serve-dir
where serve-dir is the name of the directory that I want to serve up via HTTP. For example, to serve up the current working dir, just enter
c:\foo>iws .
Direct Explorer Access
Now provide easy GUI access to this same batch file.
Two options here, one requires registry editing, the other doesn't.
Option #1: No Registry Edit Required
Just create a short-cut in your SendTo folder that points to your iws batch-file, and you're done. Apparently the send-to folder essentially maps the selected element in Explorer as a first parameter to the target.
Option #2: Registry Edit Required
[WARNING/DISCLAIMER: This option requires the use of the Registry Editor (REGEDIT.EXE). Changes made to the Windows registry happen immediately, and no backup is automatically made. Do not edit the Windows registry unless you are confident about doing so.
Microsoft have issued the following warning with respect to the Registry Editor:
"Using Registry Editor incorrectly can cause serious, system-wide problems that may require you to re-install Windows to correct them. Microsoft cannot guarantee that any problems resulting from the use of Registry Editor can be solved. Use this tool at your own risk."]
If you have authorization to edit your registry, and are comfortable with doing so, then you can make the access point slightly cleaner semantically while also requiring less menu navigation. You need to add a new key in 'My Computer\HKEY_CLASSES_ROOT\Folder\shell' named 'Instant Web Server', and under that a key named 'command' with a REG_SZ value that points to your batch file and follows it with a reference to the %L variable. On my machine, this full value looks like this: "c:\utils\iws.cmd" "%L" (all quotes included).
Now in Windows Explorer, right click on any folder...
Sweetness!
Next steps:
Add a line to the iws.cmd file to, after starting the web server, open up a new tab in a current firefox window and navigate to the url |
| Filed under:
Python
|
|
posted at Wed, 17 Mar 2004 17:36:00 GMT
#
|
|
|
| January 2005 |
|---|
| Mo | Tu | We | Th | Fr | Sa | Su |
|---|
| | | | | | 1 | 2 | | 3 | 4 | 5 | 6 | 7 | 8 | 9 | | 10 | 11 | 12 | 13 | 14 | 15 | 16 | | 17 | 18 | 19 | 20 | 21 | 22 | 23 | | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | 31 | | | | | | | Dec 2004 | | Feb 2005 |
|---|
On my explorations of python

|