As background: I've been developing software for many years (and a heavy MS user over the last 15 years - especially with VB & ASP). After an - err, interesting - experience with VB.NET on a recent project, I thought I'd check out some other options. I had looked at Python a year or 2 ago, but it seemed severely lacking in a decent IDE. You can imagine how great it was to find Boa!
Since I am a new user to the whole Open Source / SourceForge / Python / Boa community, all of the choices that are available, and need to pull together pieces for different places is a bit overwhelming at first. I thought that I'd make some notes of where I pulled everything from in order to get a 'complete package' in order to help out others who might be coming fro a similar background. Here's my attempt:
- Download and install a copy of Python. There's 2 general sources (I used the ActiveState one):
-- www.python.org: http://www.python.org/ftp/python/2.2.2/Python-2.2.2.exe for the core, and http://starship.python.net/crew/mhammond/downloads/win32all-148.exe for the Win32 extensions
-- or the ActiveState version of Python: http://www.activestate.com/Products/ActivePython/ (click on 'Download' at the left, then select the build on the download screen (I used the latest version available: 2.2.1). This includes the Win32 stuff.
-- The default directory is [C:\Python22], but I've organized my tools on my PC differently and so I placed it in [D:\Dev\Python22]. You should adjust any paths mentioned below accordingly.
- Download and install wxPython (I used the ANSI not Unicode version): http://www.wxpython.org/download.php#binaries
- Next get Boa.
-- Various messages all recommend pulling down the latest CVS version. I didn't have a open source CVS tools - I don't expect that SourceSafe is going to help me out here ;) - so I found this tool that integrates nicely into Windows Explorer Shell: http://tortoisecvs.sourceforge.net/. After you install it, you will have some additional 'right-click' choices in Explorer. In order to get Boa:
--- Decide where to put the software. Based on the directory tree created when I installed Python, I saw a number of items in a [D:\Dev\Python22\Lib\site-packages\] directory, so I went to that directory. Right Click on the directory, and select [CVS Checkout...]
--- In the CVSROOT field, paste: "pserver:anonymous@cvs.Boa-Constructor.sourceforge.net:/cvsroot/boa-constructor"
(this causes the protocol, server, repository directory, & username to be set appropriately).
--- In the Module field, enter "boa", then click OK. TortoiseCVS will begin checking out the package. As of this time, it should be ver 0.1.3a.
- Get the additional Docs if you want to use the help available in Boa
-- (note: wxPython and ActiveState Python both have very nice CHM help files included with them, but they can't be brought up in Boa, so if you want to have 'integrated help', you'll need to perform this step): Go to the Boa downloads page at http://sourceforge.net/project/showfiles.php?group_id=1909&release_id=72445 and download the boa-constructor-0.1.0-alpha.docs.zip file. Unzip it into the Boa directory you created above. It should create a Docs directory and subdirectories. This will provide you with Python, wxPython, and CVS documentation.
-- At the Boa downloads page, download the boa-constructor-0.1.0-alpha.src.zip file. It's probably easiest to unzip it to a temporary working space - NOT in the CVS managed directory you created above. It will create a Boa directory & subdirectories. Next move the whole [Docs] subdirectory into the CVS managed Boa directory, so it adds it's files to the Docs directory created in the last step. You can delete the rest of the temporary boa directory (it's an older version - 0.1.0)
- Finally, I created a shortcut to Boa on my desktop. (I decided that the console window might provide some helpful debug information, so I made the shortcut point to boa.py instead of boa.pyw (which doesn't display a console).
- To run BOA, click on the shortcut you created. Boa has 3 windows that will open up: the Palette window (on top), the Editor window (right side), and the Inspector window (left side).
- I would recommend starting with the tutorial, which is in the Boa documentation, and can be accessed by clicking on the blue help/book icon in the Palette window. Go to the "Boa Constructor Getting Started" / "Tutorial - Building your first application" You'll note that a number of details are out of date. I hope to go through the tutorial and provide updated notes next.
Finally, thanks to Riaan for writing such an awesome package, and to the various other folks who have contributed to it as well.
-- Greg Brunet
Semper Software, Inc.
Thanks for this post.
I am just starting with Python too, looking at Boa but did not see that the doc was in a separate download.
Just the other day I found wxDesigner (http://www.roebling.de/), when looking around for Python stuff. Have not spent that much time on it, nor on Boa, but I like the wxDesigner approch with the "sizers" better, however other things are nicer in Boa, and wxd costs about Eur 100.
I like to use Python stuff to develope a small application, which I have prototyped in Corel Paradox (as I have a copy of it), but I don't like the screen stuff nor they way it gets deployed (if I ever get there).
I do like most what I see in Python, have found answers to things like I18n (want to do the app in at least English and French), the last hang up (which I am aware of) is the database. In fact it is really the integration with a db, currently I am considering Firebird (an open source Interbase db), SQlite and GadFly. However I have not found anything on how to tightly link i.e. two gridctrl's to tables (i.e. grid A shows headers, grid B shows details for the selected header record). Doing this in Paradox is a piece of cake when using their data models (kind of simple Entity Relation diags), as most if not all of the needed code is generated.
Being new not only to Python but also the OO stuff, and not really being/nor considering myself to be a programmer it might just be that I have not found/or understood some of the functions there.
Have not seen any good sample programs with regards to DB integration/usage, but I am still looking.
Ordered some books, so hopefully will find some answers in them.
And having seen your message, I am hoping that you will post some more of them.
Thanks again for having spent the time to document your findings.
I also have hopes of being able to use Python, wxPython, & Boa to develop database apps. I have seen comments in newsgroups that the PyQt (and probably BlackAdder) are the best way to go for developing DB apps - that those tools have good DB integration & should make it easy to do things like a parent-child grid. Actually there are a lot of neat things that can be done in VB.NET, especially when augmented by some 3rd party packages (I used a suite by Component One). Still, there are things that, to me, don't work quite right, so I'm investing some time to evaluate alternatives. Boa seems like a leading candidate in the Python space, though I've also been looking at PythonCard and wxGlade as well. Good luck on your efforts,
Log in to post a comment.