[Edu-sig] Top 5 All Time Novice Obstacles => #2 Helping help

Patrick K. O'Brien pobrien@orbtech.com
Wed, 25 Sep 2002 10:37:21 -0500


[Jason Cunliffe]
>
> Pat, thanks for the reminder about your 'PyCrust'.
> I'll be sure to check it out properly. Sounds good.
>
> Please can you tell me more about whose using it, what's popular
> and where you
> see it going?
> Also, what's the relationship between PyCrust and PythonCard?

I know there are several people and projects using PyCrust, but like most
Open Source software I have no way of telling everyone that's using it. And
I'm usually the last one to find out. <wink> I'm probably the biggest user
of it. I use it almost every day. Any time I need to experiment with Python
code I do so in PyCrust.

There are two main ways to use PyCrust: as a standalone shell application,
and as an embedded component in a wxPython application. PythonCard uses it
in the second fashion, so that any application created with PythonCard has
the ability to expose an interactive Python shell at runtime with access to
the application's namespace. This is pretty cool in action. I covered much
of this in an article on the O'Reilly website at
http://www.onlamp.com/pub/a/python/2002/07/18/pycrust.html.

Every so often I do a search on Google and find other projects using it this
way. For example, the GnuMed project has been using it for some time now.
The Boa Constructor guy (Riaan Booysen) and I have talked about replacing
the Boa shell with PyCrust, but neither of us has made a concerted effort to
do it. Since PyCrust is shipping with wxPython I would think it's getting
pretty good exposure.

As for the future, I'm not sure. I love working in the Python shell. I
consider it an important interface, along with the command line, web, and
GUI. I always strive to make my programs, modules, class, and functions
usable and friendly to all of these interface environments. The Python shell
is the ultimate in interactive, yet minimalistic, user interfaces. PyCrust
builds on that by adding certain graphical conveniences as well as the usual
stuff, like command recall, multi-line editing, and such. And I'll continue
to evolve it as new ideas come out.

As one example, someone was using PyCrust inside an application that
controlled other scientific applications. And they wanted the autocompletion
popup list feature to be triggered by a slash / as well as a dot, because
they were allowing commands in the shell using a special syntax that wasn't
standard Python. So I added that capability. Unfortunately, I don't think
this application was Open Source so you can't see exactly what they were
doing with it. But it is interesting how people will come up with clever
ways to use the Python shell.

Pat

--
Patrick K. O'Brien
Orbtech
-----------------------------------------------
"Your source for Python programming expertise."
-----------------------------------------------
Web:  http://www.orbtech.com/web/pobrien/
Blog: http://www.orbtech.com/blog/pobrien/
Wiki: http://www.orbtech.com/wiki/PatrickOBrien
-----------------------------------------------