ITworld.com
  Search  
ITworld Home Page ITworld Webcasts ITworld White Papers ITworld Newsletters ITworld News ITworld Topics Careers ITworld Voices ITwhirled Changing the way you view IT

Scripting Qt

Unix Insider 9/15/00

Cameron Laird and Kathryn Soraiz, Unix Insider

unixinsiderhome
New Qt products and licenses have kept vendor Trolltech AS in the headlines all month. Recall our earlier description of Qt as Trolltech's high-quality GUI toolkit. The Trolltech distribution library is coded in C++ and has an innovative C++ API.

On this topic
P>

C++ isn't the only way to get to Qt, though. Andrew F. Lack is the Unix Team Leader responsible for one hundred Linux desktops at City University in London and Islington. He's been working the last couple of years with Ktk, his still-incomplete binding of Qt to Tcl. Most recently he's connected early versions of drag-and-drop and status bars. While Lack doesn't expect to slide those enhancements into the released distribution of Ktk until October, even the current 0.4 is useful for many projects.

PerlQt is quite a bit further along. Ashley Winters released Version 2.105, only for Unix, in March.

Most up-to-date and impressive of those scripted forms of Qt, especially in regard to its respect for Qt's object-orientation, is PyQt. Phil Thompson created and maintains PyQt, a complete binding of Qt to Python, which he just released in September as version 2.0. He's recently deepened his commitment to PyQt, which now "can properly support a Windows version of PyQt." In fact, while the C++ developer library remains an expensive product in the Trolltech catalog, Thompson distributes complete PyQt binaries for Windows, free of charge. In that case, it's not only more effective to use a scripting interface as we so often evangelize but it also costs less in licensing fees.

That's not all. This summer, Trolltech released Qt Designer, a visual-layout development tool that meets the company's usual standards of quality. On his first day using the tool, Thompson hacked up a copy of Qt Designer so it generated PyQt source instead of C++. He summarized, "PyQt will enjoy full cross-platform support at no cost to the Python programmer...PyQt suddenly has a very good GPL'ed GUI design tool developed and supported, again for free, by a commercial organization. Python now has a very high-quality, open source, cross-platform GUI toolkit and development tools."

Thompson makes the point that several parties cooperated "to allow me to develop PyQt much quicker than would otherwise be the case," including Mechanical Dynamics and his current employer, theKompany.com.

Distributing computing the GNU way
We often mention distributed computing models: JavaSpaces, Sash, BizTalk, WebL, and so on. Our lead column in August gave particular attention to the technical prospects for Microsoft's .Net initiative. Piper is an alternative to those models, and .Net in particular, on both engineering and business levels.

Microsoft, for example, has specific business motivations with .Net that involve licensing issues and how the company is paid for its products. Crudely, Microsoft wants to use .Net capabilities to ensure it receives payment every time its software is used. Piper, in contrast, is a free software project to make "anything and everything buildable by linking small components," even across a network, according to J.W. Bizzaro, director of Bioinformatics.org.

An upcoming installment of Regular Expressions will explore Piper's capabilities in detail and show how it differs from other technologies. For this month, though, it's important to observe that Piper is starting to achieve the milestones that make such a project interesting.

Unix fans are fond of that OS's characterization as a toolbox of small, well-crafted parts that work together to achieve larger goals. Users achieve powerful results, for example, by piping output of one command-line utility into the input of another. Piper generalizes that principle in several directions:

  • Its transport encoding is in XML rather than in plaintext
  • It uses a GUI rather than textual command lines to put building blocks together
  • It knows about networks

Those changes should make Piper useful to far more people than ever understood Unix piping. XML is, of course, the new universal data format, richly supported by almost all tools coming to today's market. It's the appropriate native language for most new technologies, including .Net and most new Web services. XML helps Piper, for example, express the idea of spellchecking the content of an email message, but not the header elements.

GUIs are where most computer users now live. Drawing connections between icons makes more sense to them than composing sentences such as:

 
      grep "^From " $SPOOL | wc -l
   

Moreover, Piper's connections are considerably richer than Unix's pipes. Rather than just a one-way, unstructured datafeed, Piper "[l]inks can depict protocol-independent data flow, procedural steps, and relationships," according to one Piper document. Moreover, those links "can merge or split streams."

Most compelling of all, perhaps, is the opportunity to escape the confines of a single desktop and access resources throughout a rich network. Piper knows how to do that, too.

Bizzaro explains, "Piper is actually a new name for a collaboration between four older projects: Overflow, Generalized Messaging Service, The Loci Project, and BlueBox." Workers in the life sciences seem to have the most enthusiasm for Piper; genetics researchers, for instance, can easily see the benefits of a system that makes it easy to build filters and computations on a remote store for the human genome or other massive datasets. However, Bizzaro emphasizes, "Piper is general purpose in design. All of the developers appreciate the need for a system capable of very sophisticated operation, yet with a simple facade."

Cameron Laird and Kathryn Soraiz manage Phaseit, a software consultancy just outside Houston.




Sponsored Links

Dashboards & KPI Reporting for Business People
PivotLink provides a new perspective on your business with drillable dashboards & reports.
New Webcast: How to PROFIT WITH REMOTE SUPPORT
Discover how REMOTE SUPPORT can fuel your IT business in ways you've never thought of before.
Sign up for a FREE NETWORK RISK ASSESSMENT!
MORE THAN 70% OF NETWORKS ARE INFECTED by hidden Malware. Find out if your network is infected now!
Download your FREE BUSINESS IP TELEPHONY EBOOK!
Get your free 96 Page IP Telephony eBook! 11 Chapters on DEPLOYMENT, COST SAVINGS, SECURITY & more.
Used and Refurbished Cisco Routers
Purchase Your Routers From Network Liquidators. Savings of Up to 90% with a Lifetime Warranty!
» Buy a link now

Advertisements
Sponsored links
Top 5 Reasons to Combine App Performance and Security
Locate Hidden Software on business PCs with this free tool
KODAK i1400 Series Scanners stand up to the challenge
Bring harmony to your mix of UNIX-Linux-Windows computing environments
 Home   Application Development  Programming tools  Development tools
www.itworld.com    open.itworld.com     security.itworld.com     smallbusiness.itworld.com
storage.itworld.com     utilitycomputing.itworld.com     wireless.itworld.com

 
Contact Us   About Us   Privacy Policy    Terms of Service   Reprints  

CIO   Computerworld   CSO   GamePro   Games.net   IDG Connect   IDG World Expo   Industry Standard   Infoworld   ITworld   JavaWorld   LinuxWorld  MacUser   Macworld   Network World   PC World   Playlist  

Copyright © Computerworld, Inc. All rights reserved

Reproduction in whole or in part in any form or medium without express written permission of Computerworld Inc. is prohibited. Computerworld and Computerworld.com and the respective logos are trademarks of International Data Group Inc.