Bird List upload program

I have made myself a python (programming language, not a member of Pythonidae) bird-list uploading program. At first I just wrote a console application which was rather simple and suited my needs perfectly. But I wanted to extend it so that others could use it. So I built a gui (graphical user interface, again, not a creature.)

It is not a very fancy thing. All it does is give you an interface:

Blupy bird list uploader

You get fields for common name, scientific name, day, month, year, place, town, country, and notes. This gets posted to a mysqlite database. From there you can get it build an html page for you with all the info from the database. You can see an example of what it does here [a bit of my life list]

You can preset year and country from the terminal (command line) if you want, and you can also pre-set place while running it. You can also edit the database easily if you made a mistake or want to change things.

Requirements:
Linux (well, it should work on Windows and others, but I haven't tested yet)
Python2.6 (around about) - if you don't have Python, and want it, download it here: http://python.org/download/
(Quick sales pitch: If you have the slightest interest in programming, you really should have Python. It is just the most fantastic language to work with.)
Sqlite3 - it is bundled with Python. Sqlite3 is so easy to use that you don't even need Python to work with it, you can do stuff just with the database and work with it in your console. I do that often for birding stuff.
wxpython - is a gui wrapper for the C++ wxwidgets, and gives a fantastic api for writing gui aps.   If you don't have it, get it here http://www.wxpython.org/

Even if you are not a programmer, and want to get it running, you should be able to get python and wxpython up and running on your system without a hassle. If you run Linux, it is very likely that you already have python anyway. Don't Macs also come with a version of Python installed?

Then you will need the program itself.  You can get it here.  For now this is how you need to deal with it:

Download it to where you want.

Open your terminal and cd to that file. It should be called Blupy-0.1a.tar.gz
un-tar with:
tar xzvf Blupy-0.1a.tar.gz
Don't install it yet. You can, if you like, run 'python setup.py install' but really it's not going to do anything very useful.
Now just cd into the Blupy-0.1a directory. Run the main gui with:
python bird_up.py

I would be really interested in any feedback from someone using it. If you want to help my packaging it for windows or any other os, please contact me before doing it..it is likely that I have already added some stuff. For every 10 birds I upload to my lifelist with it, I write 25 lines of code. I always have new ideas.

If you have a look around the code, in the bird_up.py file you will find a reference to some stuff that I want to do. If you want to do it, go ahead.

There are many types of extensions that you could build once you have this basic framework. You could create multiple tables in the sqlite3 database, you could change the configuration for bird counts, you could (and I want to do this) put an optional drop down list from the common name field, so that you could choose your birds from a list instead of typing them in. I you want to write patches, I am busy working on managing that (still don't really understand all that stuff, but getting there). If you want to build stuff onto it, go ahead. I have put it under the GPL3 license, so you can basically do what you want with it. But I would most appreciate anyone who has ideas for what they would like to do with it, so that I can add more stuff on to make it more useful.

One of the reasons that I want to release it as free software is just that I don't believe that there is much market for it. However, there may be a specific need of some organization where this could be a useful idea to build something around. If you are interested in getting help on something like that, let's chat..leave a comment or email me.

Even if all of ...one.. person ends up using it, it is a fun thing and makes it much easier to get stuff up on the Internet on into a file than typing at a spreedsheet. I do hope someone finds some use for it.

Ah, bugs, yes, let me know. Spelling mistakes, whatever.
Share this post
Digg Stumble Technorati Facebook Reddit Subscribe

2 comments:

Peregrine's Bird Blog said...

I was looking through your list and!!!!!
Crowned Hornbill Tockus monteiri
surely tockus alboterminatus ;-)

Namib Naturalist said...

That's really great, thanks.

I posted about 90% of it just testing my little program, so I am sure there must be some more mistakes.

I have fixed it.