New Apple technote “describes the AEStream* collection of APIs that can be used to construct Apple event records and Apple event descriptors using stream oriented calling conventions. These APIs allow you to use interesting and easy to maintain stream oriented algorithms for creating complex Apple event descriptor records.”
O’Reilly: “It feels a bit like a homecoming. After years wandering in the cranky wilderness of mix-and-match PCs I’m working again on a computer that feels like it has a soul. The reason I feel like this? The other week I switched from an Intel-based laptop to an iBook.”
This maintenance release adds AppleScript Studio support and fixes bugs.
evolt.org: “As you probably know, when a search engine spiders your site and finds a query string it stops. After all, how on earth can the robot know that all the pages are not the same with just a different parameter passed to the page?”
xml.com: “This article will show you how to implement your own specialized template languages by building up a simple example capable of transforming a music database in XML into any form of HTML.”
O’Reilly: “Jython is a complete re-implementation of the Python programming language, written in 100 percent pure Java, which runs on any Java Virtual Machine (JVM). Python is a high-level, interpreted, object-oriented scripting language which combines elegant syntax rules with powerful built-in objects to create a language that is very easy to write, read, and maintain.”
Cocoa Dev Central: “But, what do you do when you want a variable number of instances for a given window or set of windows?”
xml.com: “Is it even possible to explain XML in simple English—especially in the limited space of an XML Q&A column?”
perl.com: “Its objective is simple: do what CPAN.pm does, but do it better. We’d start with a clean code base designed to accommodate different types of use.”
Developer Shed: “I’ll be attempting to build a reusable library of functions for form input validation, in an attempt to save myself (and, hopefully, you) some time the next time an application needs to have its input checked for errors. The end result of this experiment will be a PHP class that can be easily included in your scripts, and that exposes basic object methods for data validation.”
WebReference: “The techniques presented in this article do not use the new technologies present to implement session tracking, but use some old, tried and tested ways which are extremely popular even today. After reading this article you would be able to implement session tracking using any language, since you would understand the concepts of session tracking rather than some language dependent implementation.”
O’Reilly: “Things really become interesting, however, when you take advantage of a little known feature of term files, the ability to define a command line to run when the window opens. Doing this allows you to create your own double-clickable run files that open in Terminal within a window of your exact specifications and run any command line (or script file) you can come up with.”
Developer Shed: “No developer, no matter how good he or she may be, writes error-free code all the time. Which is why most programming languages—including PHP—come with built-in capabilities to catch errors and take remedial action. This action could be something as simple as displaying an error message, or as complex as heating your computer’s innards until they burst into flame.”
The second release candidate of Python 2.2.1 is a bugfix release.
This free plugin for OS X adds a Scripts submenu to your contextual menus. You can attach and run your own AppleScript scripts from the Finder and other apps—such as BBEdit, Eudora, and Internet Explorer—that support contextual menus. Here’s a Finder screen shot and an Internet Explorer screen shot.
BareBones: “Not only is Mailsmith a scriptable mail client—giving you scripting access to checking mail, sending messages, and moving messages between mailboxes—but it’s also a fully scriptable text editor. Most AppleScripts written for BBEdit work in Mailsmith.”
developer.com: “These days, it is trivial to run a servlet container on your workstation. This should be your first line of deployment. Before you push your application to any other servers, you should deploy it locally and look it over.”
Tomasz Kukielka: “Contextual Menu Workshop is a free framework for creating Contextual Menu plugins for Mac OS X.”
Old programmer’s philosophy: if you work primarily (or exclusively) in one environment, it’s a good idea to learn about others. It stretches your mind, helps you think more widely and imaginatively about how to solve problems.
It’s an open source clone of Mail.app that uses Cocoa or GNUStep.
Brent Ashley posts another method of doing a referers page. He uses awk to parse his logs and PHP to build the referers page.
O’Reilly: “If you’re developing your application using Java on the Macintosh, you may have noticed that Apple’s Human Interface Guidelines specify vertical text in side tabs, but Java only supports horizontal text. To address this, I wrote the VTextIcon class, which manages vertical text with support for localization.”
This new sample code from Apple helps build Apple events and object descriptors.
New Cocoa sample code from Apple “shows how to add a dock menu to your Cocoa application, so that clicking and holding on your application’s dock icon displays a menu. It demonstrates this by scanning a folder of your choice (which you can choose from the ‘Preferences...’ menu item) for pictures, displaying those pictures in the dock menu, and setting your desktop picture to the picture you choose from the menu.”
Apple posted a preliminary guide to the Authorization Services API.
Apple posted a preliminary guide to the Carbon Help Manager.
Apple posted a preliminary guide describing the Mach-O runtime architecture.
James Sentman: “New in Beta 4: Adds ‘debug windows’ that let you see exactly what data is going back and forth between dispatcher and the scripts.” acgi Dispatcher allows traditional-style acgi scripts and apps to run behind Apache on OS X.
Tim Jarrett’s Manila Envelope is an external editor for Manila weblogs. This release adds a couple new features and fixes some bugs.
Jesse Shanks: “The DVD Player application comes with a scripting dictionary that allows the intrepid user to control aspects of the way the player acts, looks and responds. Besides commands to start, stop, pause and stop DVDs, there are commands for the arrow keys, the return key and ability to go to any of the menus found on a disc.”
Macrobyte: “RCSearch is the super-easy-to-use search engine for UserLand’s Radio Community Server. It’s also a Just-in-Time search engine: within minutes of a new page being uploaded to your community server, the page will be fully indexed and searchable.”
How to do a page that shows referers for the past 24 hours. (Like the same feature in Manila.)
A very simple AppleScript script. Highlight a PHP function in a BBEdit window, then choose Look Up PHP Function from the Scripts menu. Your browser will then run a search on the PHP site to find the docs for that function.
perl.com: “So for our exploration, the components of the .NET Framework that we care about are the Common Language Runtime and the C# language. And to nail it down beyond any doubt, these are things that you can download and use today. They’re real, they exist and they work.”
LinuxPlanet: “IBM, Rational Rose, HoloSofx, CommerceQuest, Versata, and at least 25 other vendors have all been readying tools for the open source integrated development environment (IDE). Meanwhile, a greatly enhanced Eclipse 2.0 is slated for release in May.”
evolt.org: “If you’ve seen a regular expression before and thought it looked like alien space-algebra, it does, but have no fear—you’ll be fluent in alien space-algebra in no time!”
Apple Technical Note: “The AEBuild* suite of routines provide simple to use and easy to maintain facilities for constructing complex Apple event structures in memory for sending information to other applications. AEPrint provides a symmetrical pretty printer routine for viewing complex Apple event structures as strings formatted using the same syntax as the strings AEBuild* is able to read.”
A List Apart: “Problem: Dreamweaver 4 falls short in its ability to produce well-formed, standards-compliant markup. Solution: You can easily harness Dreamweaver’s two greatest strengths, its flexibility and its user community, to make it one of the best tools on the market for producing good XHTML.”
A List Apart: “With the advent of standards-compliant browsers, we need to turn our attention to the tools that help designers and developers build the web. Professional developers and homepage hobbyists alike can code their pages with simple text editors. Hand coding, however, won’t always allow developers to meet tight publication or delivery deadlines.”
Paul Bissex: Mailfilter is “a command-line POP client whose only job is to kill spam. It connects to your POP account, compares the headers on waiting messages to its configurable list of rules, and deletes messages accordingly—before your e-mail client even downloads it. You don’t have to change any settings in your e-mail client or on the server where your POP account resides.”
DevShed: “In this article, I’m going to take things further, exploring yet another addition to the Java/XML family. It’s called Xalan, and it’s an XSLT transformation engine that should substantially simplify the task of converting, or ‘transforming,’ XML documents into other formats.”
Apple: “Forms are key components of all Web-based applications. But important as they are, Web developers often present users with forms that are difficult to use.”
Linux Journal: “Every few years something significant happens in the land of computer programming. In my opinion the Ruby computer language is such a landmark.”
O’Reilly: “In this article I describe a danger inherent in most mail-reading methods, and ways to work around it on OS X, using the Mail program. I’ll also give you a brief tour of some SSH client tools that subtly stow away in the Mac OS X distribution.”
Tallent Communications Group: “The ODBC Extension allows a Frontier user to easily write cross-platform scripts for connecting Frontier to any ODBC compliant database system such as Oracle, Sybase, MS SQLServer, Access, mySql, or anything with an ODBC driver for your platform.” This new versions works in OS X.
From André Radke, a DLL and set of verbs for calling PostgreSQL from Frontier.
WebReference.com: “Cocoon is a Java Web-application for generating dynamic content using XML. It can be installed on any Java Servlet Engine and comes with a wide variety of components for generating, transforming and outputting data with XML.”
developer.com: “The foundation of any build process is the project directory structure. A messy project directory, cluttered with files dropped willy nilly into whatever directory the ‘file save’ dialog happened to open up with, leads to arcane and bug-prone build scripts. On the other hand, if you try to organize too compulsively, you can end up with a byzantine nest of sub-sub-subdirectories that make it tedious to find the files you’re looking for.”
Macrobyte Resources: “Early pre-release versions have already been tested successfully. A public, time-limited beta version will be available in late March.”
Webmonkey: Jay Greenspan “answers the age-old Q: ‘What’s the big deal with Transactions?’; investigates the four properties that a database must have to be considered transaction-capable; takes a closer look at locking mechanisms; and finishes up with a look at MyISAM tables, the lesser cousin of fully transaction-capable tables.”
Book excerpt—Chapter 4: Communicating with the Apache Server.
Linux Journal: “The Roxen WebServer, from the Swedish company Roxen Internet Software, is a viable alternative for those who find Apache inappropriate for their needs. Although Apache dominates the internet web server market, it has some weak points: it lacks a built-in SQL database backend, flexible administration tools and easy SSL certificate management.”
evolt.org: “Pop-ups come first: for 52% of the respondents, pop-ups constitute the element Internet users hate most.”
UserLand: “Radio Community Server (RCS) is a software application for Radio UserLand or Frontier/Manila that makes it possible for individuals or organizations to host communities of Radio users. It offers all of the community functionality currently offered by UserLand’s centralized system.”
evolt.org: “Unfortunately, many people are still using WYSIWYG packages to do their web development, and many of them are trying a table-free approach in their attempts to ride the wave of the CSS flood. What some of these developers tend to forget is that pixel-precise layouts are anything but, especially when you consider all the custom settings users may have on their systems.”
ADC News: “You can now view a sample’s source code online in HTML format. To access the source code, simply find the sample you’re interested in and select your preferred format from the pull-down menu. In addition, you can search for specific APIs using Google search technology.”
O’Reilly: Programming with Cocoa: “Today we’re going to continue our parade through the new Aqua interface with a look at toolbars. Toolbars are a great addition to the Macintosh GUI. They provide a consistent interface across all applications and are highly customizable by users, taking some of the UI burden off the developer.”
MacCentral: “New features in OmniOutliner 2.0 include a customizable toolbar, new column types, notes, auto-numbering, sorting, summary values, new keyboard shortcuts, support for alternating row colors, an updated info window, and more.”
I just added a new feature to this site—you can specify a search string and get the results as RSS. I’m not sure it’s useful, but why not.
perl.com: “If you love Perl and your favorite Web server is Apache, then you will love mod_perl at first sight.”
WebReference.com: “Regular expressions are simple to implement, and once you’ve mastered a few regular expressions (which are specially formatted strings that we can use to tell the regular expression engine the portion of a string we want to match) you’ll be asking yourself why you left regular expressions in the corner for so long.”
Late Night Software’s XML Tools for AppleScript update fixes bugs regarding whitespace and character encoding.
UserLand: “This API views a post as a package of metadata with some well-known names and room to grow on an organized or an ad hoc basis. In my experience those are the kinds of APIs that have legs.” I agree that an API richer than the Blogger API is needed—and that using a struct is the way to do it.
MacCentral: “Halcyon Software, a company that specializes in migration services and technology business, has released a beta version of its iNET technology, the first commercially available Java-based implementation of the Microsoft .NET framework.” As Paul Revere is said to have said: The redcoats are coming!
DevShed: “As it turned out, my user authentication module had enough security holes in it to drive a few hundred dump trucks through. I spent the next week plugging those holes, and along the way learnt a number of valuable things about access control—most notably, that it’s not as easy or as obvious as you might think.”
DevShed: “Constructing a dynamic, database-driven Web site in Perl would take me a week; with PHP, I’m done in two days, and my code is cleaner, more readable and less convoluted than my best efforts in Perl.”
No longer beta. This free OS X plugin allows you to run Frontier scripts from apps which support contextual menus, such as the Finder, BBEdit, Eudora, and Internet Explorer. Here’s a Finder screen shot; here’s an Internet Explorer screen shot.
The OS X version of this plugin has been released. It allows you to quickly and easily change the type and creator codes of files in the Finder. Here’s a screen shot.
Linux Journal explains the basics of transforming XML documents via XSLT.
Linux Journal: “Each Zope product is actually an object class (or a set of classes) that can be instantiated any number of times in our web site.”
Earthweb: “The more interesting your application becomes, the more complicated your build process. In this article, I will sketch out a framework for how to use simple tools (like Ant and JUnit) and a simple directory structure to avoid many of the common growing pains of application development.”
I was curious about what browsers were hitting my site, so I started recording user-agents. Check out all the Radio UserLand hits.
Apple’s new mailing list is “for community discussions regarding all the questions people face when doing a port: What’s different about Darwin? Which high-level toolkits should I use for my GUI? Is there a workaround for this problem? Has someone tried to port this before?”
OSXGuide.com: “Fink is very handy. With it, you can automatically install and update dozens of free software programs on OS X. These programs include many different text editors, Internet programs like email clients and Usenet browsers, programming tools, and more.”
The scripts folder is now structured: different folders match the different selection types. That way you can have one set of scripts for files, another for text selections, and so on. This may be the last beta.
Major change—it now also works with text in apps such as BBEdit, Eudora, and Internet Explorer. This screen shot demonstrates.
On installing and developing with MySQL and PHP.
The Little Page of Beta AppleScripts: “AWPS (Applescriptable Web Publishing System) is a template-based webpage rendering system; basically a framework into which you add your own code, templates and data, and let it do all the hard work of putting these together. The control logic (standard AppleScript) is kept completely separate to the html templates, making design and editing a snap.”
Apple Technote TN2043 lists changes in system software updates 10.1.1 through 10.1.3.
Apple Technical Q&A 1123: “If you want to list all of the running applications you should use the Carbon Process Manager routine GetNextProcess. This will return a list of all application processes, including those running in the Carbon, Cocoa, and Classic environments. However, this doesn’t return a list of non-application (daemon) processes.”
Choose a theme for this site. A demo of using CSS to define layout and style.
A List Apart: “For optimum usability, a rollover must be instantaneous—BAM!—or the effect is diminished... The solution? Don’t swap images.”
Greg Pierce: “pySlice is a suite of scripts for UserLand Frontier or Radio UserLand that implement string and list slicing, based on index values (ie, ‘1:3’)—the same way slicing is implemented in the Python language.”
Lots of interesting AppleScript scripts and AppleScript Studio examples by Jesse Shanks. (Via MacScripter.net.)
I missed having a referers page—so now I have one. As with Manila and Radio sites it’s public.
MacCentral: “Without typing a single UNIX command, the OpenOSX package will install PHP 4.1.2 and dependent libraries: PDF Lib 4.0.2, Libcurl, and Freetype 2.0.4.”\r
It’s a search engine for Frontier and Radio UserLand that indexes text and attributes. “AttSearchEngine is a developer’s tool. There’s no user interface, because it’s not a tool for users. You build the AttSearchEngine into your software or project.”\r
According to an email posted by an Apple manager to the Cocoa-Dev list, Apple’s Cocoa API reference documentation is now content complete.
Stepwise: “A serious security issue has been discovered in OpenSSH 3.0.2 (Apple ships this version with Mac OS X 10.1.3). Update to the latest version as soon as possible.”
The code that maps a menu item to a script on disk was re-written, made cleaner, smarter, and shorter. It also now supports exported script objects, which means it should work easily with Radio UserLand now.
Linux Journal: “The aim of this article is to enable you to create an application with the KDevelop Integrated Development Environment (IDE) on a Linux/UNIX system running KDE 2. We explain this process by creating a sample application that gives some insight into the development framework and how it works.”
developer.com: “Last time, we installed Tomcat 4 on Mac OS X. This time, we’ll look at how to set it up to launch automatically, and how to run it more securely, as an unprivileged user.”
Developer Shed: “This concluding article focuses on the dynamic generation of Web pages from an XML file, demonstrating how Java, JSP, Xerces and XML con be combined to create simple Web applications.”
OS X users—you can attach Frontier scripts to the Finder’s contextual menus. (It will work for Radio too in a later beta.)
Seth Dillingham is looking for Frontier resources for the Open Directory Project. (Via Scripting News.)
By popular demand—okay, two or three people—here’s the first OS X beta of this contextual menus plugin.
Developer Shed: “Imagine a site that carried the latest news from the hottest portals on the Web. Stock prices, weather information, news stories, threaded discussions, software releases...all updated dynamically, on an hourly basis, without any manual intervention. Imagine the traffic such a site would get.”
Opens URLs, prints documents, launches apps in the background, and more. By Nicholas Riley.
Stepwise: “AspectJ is an aspect-oriented extension to the Java programming language. It is freely available as open source, and version 1.0 was released on November 30 last year. It’s time for WebObjects developers to evaluate if and how they can benefit from using AspectJ.”
This utility makes it easy to look up documentation on Frontier’s verbs and keywords when you’re scripting. Just right-click on a verb name and choose Open in DocServer.\r
If you follow the link above, you can comment on this posting. To comment on any post, click under the post where it says comments.
If I don’t specify, people will send me email. So here’s a page that describes the technology used to run this site.
Added a links page with cool places to visit. Also added links to the template.
These folks are my ISP. The price is reasonable and service is good. I’m utterly pleased.
This page is syndicated in both RSS and scriptingNews2 formats.
The Software section of the old site has been imported. It includes two really old CMM plugins for Mac OS 8/9. As far as I know they still work.