Looking Back on the Evolution of a Zope Groupware Application
For over a year now, I've been tinkering on and off with a small
groupware application based on Zope. It's used by the editorial team of
a monthly magazine to centralize the many versions of files that precede
the final versions sent to production, and to manage a shared calendar.
I sometimes think of turning this app into a Zope plug-in (aka
Product) that could be used by similar teams. Laziness aside,
there are two things standing in my way. First, it's not a 100 percent pure
Zope (or Python) app. When a Perl script spawned by the cron daemon was
the easiest way for me to do something, I took the path of least
resistance. So while Zope itself is wonderfully portable, I'd have to
rework some pieces for example, I'd probably want to replace my use
of cron with Zope's Xron
scheduler. I'd also need to learn (and perhaps require administrators to
learn) Xron's un-cron-like syntax. This reminds me of the language
versus environment discussion from an earlier
column. It seems silly to recreate, in a scripting platform,
services that already exist in the environment. On the other hand, since
those services aren't guaranteed to exist in the same way in every
environment, you can argue that the scripting platform should be
self sufficient even if that means reinventing wheels. Stuck on the
horns of this dilemma, I've not fixed what wasn't (for me) broken.
A second factor that keeps my from trying to package and distribute this
code is my sense that groupware built for one team won't satisfy
another. Working on this app has been an iterative process. I had a
rough idea of what would work; users had their own different ideas; the
team itself has morphed since we started. The result still doesn't
satisfy everyone all the time, but it strikes a pretty good balance
between what I saw was possible and practical, and what the team
collectively discovered that it wanted.
Extending Enterprise Value with Web 2.0 In this webcast we will talk about how to simply build and quickly remix Web 2.0 applications and the role of the IT department and how they support mashups. We will discuss how IBM can help IT teams adapt existing enterprise systems as well as develop unique ones that can support end user driven mashups in a reliable, scalable and secure way. We will highlight a simple scenario adapting an enterprise information source for mashups and how to test it. We will also cover how IBM can help you build agile, fast and simple web applications based on dynamic scripting languages that dramatically reduces development time. Wednesday, September 24, 2008 - 12pm PT / 3pm ET
2008 International Mathematica Conference Dr. Dobb's interviews Wolfram Research's Theo Gray, co-founder and Director of User Interfaces, and Roger Germundsson, Director of Research and Development, about the upcoming 2008 International
Mathematica Conference.
In this volume of Best of BYTE, we explore the emergence of some heuristic algorithms. Although we have only scratched the surface of this intriguing subject, we hope we've suggested the potential of the synthesis of heuristics and algorithms.
Understand C/C++ code in less time. A new team member ? Inherited legacy code ? Get up to speed faster with Crystal Flow for C/C++. Code-formatting improves readability. Flowcharts are integrated with code browser. Export flowcharts to Visio.