Archive for » October, 2008 «

Monday, October 27th, 2008 | Author: number.0

Okay, here is a quick way to get everything recursively downloaded using wget

$wget -rkp -np <url here>

Share/Save/Bookmark

Category: linux  | Tags: , ,  | Leave a Comment
Tuesday, October 21st, 2008 | Author: number.0

I keep some bookmarks of file manipulation with Python, please update if you know more. Thank you!

Documents / Office:

pyExcelerator: Generating Excel97 files
OOoPy: Manipulating OpenOffice documents
dbfpy: Manipulating dBase, Foxpro DBF files
vobject: Reading vCard & vCalendar
PalmDB: manipulating PalmPDB & PRC

Multimedia:

PyMedia: Manipulating wav, ogg, avi, divx, dvd etc..

Photos / Images:

TheBigPicture: manipulating EXIF & IPTC metadata in JPEG & TIFF files
jpeg.py: manipulating EXIF metadata of JPEG

GPS:

PyGarmin: Manipulating data from Garmin GPS

Utilities:

PyUNRAR: unpacking RAR files
libextractor: extract data from any type of files

Share/Save/Bookmark

Monday, October 20th, 2008 | Author: number.0

I’m writing a tokenizer in Python and found out a great GUI debugger for Regular Expression. For all of you that have been looking for a good Python Regular Expression GUI, you can depend on this - named Kodos:

Kodos is a Python GUI utility for creating, testing and debugging regular
expressions for the Python programming language. Kodos should aid any
developer to efficiently and effortlessly develop regular expressions in
Python. Since Python’s implementation of regular expressions is based on
the PCRE standard, Kodos should
benefit developers in other programming languages that also adhere to the
PCRE standard (Perl, PHP, etc…).

You can download and try it here

Share/Save/Bookmark

Category: editor, python  | Tags: , ,  | Leave a Comment
Sunday, October 05th, 2008 | Author: number.0

Here are the steps that I managed to install Mapnik 0.5.1 on Slackware 12.1, it’s for personal documentation but might be helpful for some of you out there.

Depends on your current installed packages, you may be required to install some other packages, for details of the dependencies, please refer to it’s wiki

Mapnik requires the Boost libraries, International Components for Unicode, Freetype, Proj4, and a variety of image libraries.

Installing Boost is often new to mapnik users, but the majority of remaining dependencies are more familiar.

If you have previously built or installed other open source graphics or mapping applications it is likely that most of the remaining dependencies are already installed.

Currently detailed notes on mapnik dependencies are included in each platform specific installation instructions.

See MapnikInstallation for more information.

Before installation, check your boost lib compatibility here
The boost lib I got from LinuxPackages.Net for Slackware 12.1 is at version 1.36, which is not compatible with mapnik 0.5.1 (I got error while compiling), so I took boost version 1.35 from here

- Install boost lib package
- Install scons package (from slacky.eu), requiredbuilder (from stabellini.net )
- Download SlackBuild of Mapnik for Slackware 12.1 from slacky.eu , put everything in the same folder (e.x /home/download/mapnik-slackbuild/)
- running #./mapnik.SlackBuild
- If everything is ok, you will get mapnik package at the same folder with the slackbuild scripts, install it like other Slackware packages.

Test your Mapnik:

Once the installation is completed, you can test your installation by running a Python Hello World with Mapnik (You can see detailed instruction from here). Here is my summarization

1. Download the data, put it in /home/work/mapnik/data/ & unzip it
2. Copy the python code below, put in it a file name world.py at /home/work/mapnik/

#!/usr/bin/env python

from mapnik import *
m = Map(600,300,“+proj=latlong +datum=WGS84″)
m.background = Color(’steelblue’)
s = Style()
r=Rule()
r.symbols.append(PolygonSymbolizer(Color(‘#f2eff9′)))
r.symbols.append(LineSymbolizer(Color(‘rgb(50%,50%,50%)’),0.1))
s.rules.append(r)
m.append_style(‘My Style’,s)
lyr = Layer(‘world’)
lyr.datasource = Shapefile(file=‘/home/work/mapnik/data/world_borders’)
lyr.styles.append(‘My Style’)
m.layers.append(lyr)
m.zoom_to_box(lyr.envelope())
render_to_file(m,‘world.png’, ‘png’)

3. Go to /home/work/mapnik/ and run the script #python world.py, if you get the world.png file in the same folder then everything is fine, mean the installation was successful

Share/Save/Bookmark

Category: programming, slackware  | Tags: , ,  | 2 Comments
Friday, October 03rd, 2008 | Author: number.0

This post will help me to keep track of some good resources on Internet related to CouchDB development

Wiki

http://wiki.apache.org/couchdb/

Tutorials

Introduction
Official website
Author blog (Jan Lehnardt)
Author blog (Damien Katz)
Conceptual Diagram

Step-by-step guide:
Programming CouchDB with Javascript (very good & detailed guide)
CouchDB on Rails (nice one, detailed, step-by-step, but I’m not a rail developer, may be later on)
Simple one way replication (Ruby)

General Discussion:
CouchDB - Use case
Couchdb Joins by Paul Joseph Davis
CouchDB Joins by Christopher Lenz
Storing hierachical data in CouchDB

PHP:
PHPillow - object oriented wrapper for CouchDB
http://wiki.apache.org/couchdb/GettingStartedWithPhp

Python:
Python-CouchDB wrapper library
CouchDB via Python (python-couchdb author website)
CouchDB with Django

Ruby & Rails:
CouchDB on Rails
Planet CouchDB
CouchDB and CouchObjects

.NET:
CouchDB Gui Front End

JAVA:
CouchDB4J

Hard-core:
These stuffs are at high level for those of you - brilliant minds, quite difficult to understand for me but they are here for completeness and you may find cool thing to plow more and become CouchDB experts :)
Inspecting CouchDB
CouchDB btree:lookup
CouchDB btree:query_modify

Comparision:
Amazon SimpleDB & CouchDB

Performance:
A quick look at couchdb performance

Real-word Examples:

You will find a lot of projects started to use CouchDB here

Hope that you find them useful for getting start with CouchDB, I will try to keep this up-to-date, so help me if you can

Share/Save/Bookmark