TweetFollow Us on Twitter

Easy Life
Volume Number:7
Issue Number:2
Column Tag:Tools of the Trade

The "Easy" Life

By Dave Kelly, Editorial Board

Programmer’s Utilities Make Life Easier

In 1984 the Macintosh was revolutionary. It was unique. It was fun. But MacWrite just wasn’t enough power. MacPaint 1.0 seemed to do a lot, but is a wimp by todays standards. That’s innovation. No matter how good software or hardware gets, it won’t be good enough, ever. There will always be bugs in software, even the software that comes from the big companies (sometimes especially the software that comes from big companies) have bugs. Otherwise you wouldn’t see version 1.02 around anywhere.

Every year new software updates and hardware upgrades are released. It seems that there are more updates and upgrades than new product releases. The more software you own, the more software updates you’ll be forced to buy. I hate buggy software. When I know there is a bug fix available I want it.

The updates are not what I want to talk about in this article. We need them and can’t live without them. Instead, let’s talk about a few ways that we can extend the capabilities of the software we already have while we are waiting for innovation to catch up to our wants. I’m referring to the ways we can make our existing systems do more.

First I refer you to THINK Pascal’s pop up menus. THINK Pascal gives you a quick way to move to any procedure, function, or method in your source code file. With the source code file open, hold down the Command key and click in the title bar of the Edit window. THINK Pascal will display a pop-up menu of the routines defined in the file. When you select on of the procedure or function names from the pop up menu, the insertion point moves to the beginning of the routine. This is a great time saver that was not part of version 1.0.

Symantec also publishes what I feel is the most popular C compiler around, THINK C. The THINK C editor is somewhat different from the THINK Pascal editor. If you hold down the Option or command key as you click the title bar of a THINK C source file’s edit window, you get a pop up menu listing all the #include files that are called out in the source file. Wouldn’t it be advantageous to be able to find functions or routines like you can in THINK Pascal?

This is exactly how PopUpFuncs 2.0 from SciComp Software was born. Eric Slosser, the author of PopUpFuncs, had just finished a major contract using THINK Pascal. He had grown to love the pop up function list feature, and sorely missed it when using THINK C. Eric stated, “I couldn’t break the habit of holding down the command key and clicking on the title bar to get that menu, and I was frustrated every time it didn’t appear. I was sitting in a BMUG programmer’s meeting. The topic was the forthcoming version of THINK C (back when 4.0 was about to come out). I asked if my favorite feature was included”.

“Someone said that it was in one of the early beta-versions, but was yanked in the later ones, and wasn’t going to be in the release. Since THINK revs its products at a quick pace, I knew it would be a long time (if ever) before I saw the feature. I asked, “how hard could it be?” That was the end of my spare time for the next month. The MPW version was produced with Apple’s blessing, and the aid of an engineer on the MPW project.”

PopUpFuncs 2.0 (PUF) adds a pop up menu to THINK C, MPW C (3.0 or later), Pascal and Rez file windows. PUF installs a small icon on each end of the window title bar. Clicking on the icon activates the pop up menu. The PopUpFuncs menu lists functions, typedef, and locations that are marked with “#pragma mark”. #pragma is ignored by the compiler and PUF makes use of it to mark a location. With Pascal, the menu has indentation that mirrors the nesting of the subroutines. The Rez parser makes it much easier to get around in those long files (the text listing of your resources). A ‘feature’ of PUF that really wasn’t planned is that it parses all three languages, even inside THINK C. (good when viewing converting sample code from Pascal to c). Parsing takes place when you click the button on the control in the title bar.

If the pop up menu of functions isn’t enough, PopUpFuncs also supports external functions. PUF can change text in a file. There are many different text altering utilities that can (and should) be written or integrated into the PUF environment. Examples are block commenting, comment wrapping, pretty-printing, C-style prototypes, list of routines. A unique resource of type xPop carries the code for the extension to PUF. One xPop comes with PopUpFuncs (including C source code and xPop specifications) for commenting/uncommenting lines. This is similar to the Block Comment FKEY that comes with THINK Pascal. You can access the external functions through the pop up menu by using Command-Click. You’ll have to write your own extensions though; the comment xPop is the only one available now. Future xpops written by users will be distributed (with their permission) in future versions.

Using PUF is simple, just run an installer program to install or un-install PUF. You wouldn’t know it was simple by its documentation though. The scarce documentation is limited to the About window and a Read-me file, not enough to go on without a little bit of intuition. Experienced programmers with intuition should have no trouble making excellent use of PUF, but some people would be just a little lost initially. The Read-me file is primarily a list of bug fixes from previous versions and some instructions on how to install PUF.

PopUpFuncs 2.0 About Dialog

PopUpFuncs is a convenience that is worth the expense. If you’re not sure, SciComp Software promises: “We’re pretty sure that you’ll soon find it an indispensable part of your programming environment. We’re so sure that you’ll like it, we guarantee it. If you find in the next 30 days that you can live without it, let us know and we’ll refund your money”.

INITs Galore

The Macintosh system is still evolving as I said at the beginning of this article. System 7.0 is coming just around the corner and for those of us who have seen it know that there are some marvelous new bells and whistles. Many of these functions are already available without waiting for System 7.0. The problem is that adding these capabilities usually means adding INITs. Adding INITs often causes the system to slow down and sometimes even crash (especially when INITs conflict with one another).

There are some INITs that can be an asset to any Mac user and without really trying can help improve working conditions. Software developers should want to improve their working conditions too.

Utilities Every Programmer Will Use NOW!

Now you can get a powerful collection of system enhancement utilities in one package. Now Utilities™ from Now Software has 12 great extensions. For several months since the release of Now Utilities I have received advertising literature about Now Utilities. From the advertising I thought it looked interesting, but I didn’t get too excited because some of these utilities had previously been seen as Public Domain or Shareware versions. That’s true but the Shareware/PD versions were not nearly as powerful as the current version.

Since MacTutor’s primary concern is in the ways that the programmer’s life can be made easier, I’ll focus on the ways that Now Utilities can help you as a programmer to both be more productive and enjoy the Macintosh too. Since any or all the utilities can be installed each one works independently of the others. Yet, each complements and supports the others.

Now Utilities 2.0 includes (alphabetically):

• AlarmsClock™: This INIT puts an alarm clock in the menu bar. The best part about this alarm clock is that multiple alarms can be set to remind you of important events. I use it to remind me when to quit what I’m working on and get some sleep. I tend to stay up too late working if I don’t remind myself. The clock display can be configured in any font and whatever size is available for the selected font.

• Customizer™: As many of you know, there are attributes of the Finder that can be modified to change the display of icons, text, color, and window location. The Customizer is an application that modifies these Finder attributes. The equivalent of this application is built into System 7.0.

• DeskPicture™: The pre-commercial version of this bombed on the newer Macintoshes. This INIT lets you set up a PICT as the background of the screen. This new version also lets you select a folder for the INIT randomly to select the PICT to be used. I like this since it adds variety and I don’t have to look at the same background every time I use my Macintosh. Since DeskPicture also works on large monitors, a provision has been added to keep the PICT files on disk instead of in memory. This could reduce that amount of RAM used for a 19” 32 bit monitor from 3 megabytes to 84 kilobytes.

• FinderKeys™: Converts to the Mac who miss being able to type commands at the keyboard will love this one. The way it works is that the first letter you type will automatically select all the files/folders that begin with that letter. As you enter more letters, only the files starting with the letters you have typed will remain selected. If you press return the folder or file selected will be opened. FinderKeys also provides a way to copy or move documents from inactive windows by selecting a combination of Command, option, and shift keys.

• MultiMaster™: This INIT provides an instant pop up or pull down menu to launch files and applications. A pull down menu (similar to On-Que™) can be configured so you don’t have to search through multi-levels of folders to find files or applications that you use frequently. You can use the Memory Sizer option to edit an application’s default memory size. This is quicker than opening up “Get Info” window to change each application. Since memory size is usually something that is set only once or only occasionally, the Memory Sizer won’t be that important.

Programmers will like MultiMaster’s Memory view option, a memory map for optimizing your memory use under MultiFinder. The memory map shows memory usage for each application and the System Heap and shows which portions are free blocks, non-relocatable, and relocatable. For the casual user, the memory map is helpful to visualize where free memory is available and which applications must be closed to free up memory for another application.

MultiMaster also gives you the “set aside” feature similar to “set aside” in System 7.0. If the “Set aside” option is selected windows of a foreground application will be hidden as it switches to a newly selected application when using MultiFinder. This feature will help relieve the window clutter that sometimes occurs when several applications are open.

• NowMenus™: Now you can open CDEVs and Chooser documents directly from the Apple Menu. Submenus are created for these and any DA that has a menu. You can now change printers in one quick click of the mouse or open the SmartScrap™ table of contents directly from the Apple Menu. In addition, an option can be selected to cause NowMenus to display a pop up menu whenever you click on the desktop, or anywhere when selected modifier keys are pressed. From this pop up menu you can select any running application and any item in the menu bar. You see, the menu bar items are duplicated in the pull down menu.

• Print Previewer™: Print Previewer is a Chooser extension that lets you view your document on the screen before printing. An FKEY is also provided to switch automatically between the Previewer and whatever printer you have selected.

• Profiler™: This one is helpful if you are responsible for maintaining the configuration of several Macintoshes. The profile analyzes all system version information, memory status, hardware attributes, and Startup documents. Profiler also lists all applications on any locally mounted storage drives. Too bad, but Profiler won’t list applications on Tops or Appleshare volumes. An option to do that would be useful to system operators.

• Screen Locker™: This INIT provides password protection for your Macintosh. In addition, a screen saver function is provided which displays a message or a picture when the screen blanks out. The screen saver is not as versatile as After Dark or Pyro. The screen locking function can be used without starting screen saving so that other screen savers can be used with it.

• StartUp Manager™: This INIT alone is worth the price of Now Utilities. The StartUp Manager keeps track of all INITs, CDEVs, and Chooser documents. They can be turned on or off so that the INITs you don’t use always can be bypassed. There are other INIT manager type programs available such as INIT Picker and Aask from CE Software. The difference is in the way that they keep track of the Startup documents. StartUp Manager detects a system crash after it has already happened and gone through the standard Macintosh system error handler. INIT Picker on the other hand, hacks in into several low-memory globals and exception vectors to catch the error that would cause a system crash. Because of this, their crash protection doesn’t work as well as the StartUp Manager, and in particular, it’s annoying for programmers using MacsBug, who would prefer to have a chance to catch the problem before their machine reboots. You see, if an INIT crashes with MacsBugs and StartUp Manager loaded, you end at MacsBug with a chance to correct the problem If an INIT crashes with MacsBug and INIT Picker loaded, the machine immediately re-boots or bombs without a chance to look at the problem. For programmers writing INITs, this is extraordinarily annoying. When restarting after an INIT crashes, StartUp Manager turns off the offending INIT and warns you that it did so. The offending INIT may not be the cause of the problem, but the StartUp Manager helps track down the INIT conflicts as they happen.

Another feature that StartUp Manager includes is the ability to set up selected groups of INITs to be loaded. These groups of INITs can be selected when starting up by holding down a Startup dialog key. I have one set that I usually use (day to day) and another when I connect to an AppleShare network remotely. Any number of groups can be set up.

Besides selecting INITs, the StartUp Manager preference options let you adjust the size of the system heap before the INITs are loaded. This helps eliminate crashes at startup due to low memory constraints caused from poorly written INITs.

• Super Boomerang™: This is the commercial big brother of the popular Boomerang INIT written by Hiroaki Yamamoto. Boomerang received a 5 mouse rating from MacUser and Super Boomerang is a big improvement on that. Instead of a pop up menu (in Boomerang), Super Boomerang has pull down menus which appear at the top of the Open and Save (SFGetFile, SFPutFile) dialog boxes. In addition, Super Boomerang attaches a Hierarchical menu to the open command of your application, showing your previously opened files.

You can find files quickly from the Open and Save dialogs. SuperBoomerang’s Find function has been rewritten to search a 600 MB CD Rom in 15 seconds and a 100 MB hard disk in 3 seconds. The edit files option lets you rename, duplicate, or delete files. You can create a new folder with the New Folder option. Applications and desk accessories can share up to 5 common “groups” of files and folders which you can define. If you like Boomerang, you’ll really like Super Boomerang.

• WYSIWYG Menus™: This INIT is for the user that can never remember what each font looks like and spends forever switching fonts to find the right one. I prefer the regular font menus without WYSIWYG every time I pull down the menu. I can disable it with the command key, but I prefer the option to enable it with the command key, an option not available with this INIT. (SuitCase II gives you this option!)

Now Utilities has something for everyone. Programmers will especially like the Startup Manager, MultiMaster and Super Boomerang. I have no doubts that you’ll like it.

PopUpFuncs is available from:

SciComp Software

2912 Claremont Ave #21

Berkeley CA, 94705

To order: 800 522-5939. 8AM-6PM PST

Tech Support: 415 649-8525 9AM-9PM, with the possibility that you may have to leave a message and be called back.

COMPUSERVE 73517,207

MCI-MAIL eslosser


Price: $45 + $3 shipping & handling; quantity discounts and site licenses are available.

Requires: Any Macintosh with THINK C or MPW C.

No copy protection

Now Utilities™ is available from:

Now Software, Inc.

520 SW Harrison, Suite 435

Portland, Oregon 97201

Telephone: 503-274-2800

Facsimile: 503-274-0670

Price: $129


Community Search:
MacTech Search:

Software Updates via MacUpdate

Snowboard Party 2 (Games)
Snowboard Party 2 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: Crowned the best snowboarding game available on the market, Snowboard Party is back to fulfill all your adrenaline needs in... | Read more »
The best games like Animal Crossing on m...
Animal Crossing amiibo Festival is out right now for the Wii U, reminding us of just how much fun that world can be. Or at least to go back and check in on our villages once in a while. [Read more] | Read more »
Between 2 Taps - Tap for Tap interview M...
Hello, and welcome back to Between 2 Taps, Tap for Tap’s Indie Dev interview series. [Read more] | Read more »
Facility 47 (Games)
Facility 47 1.0.1 Device: iOS Universal Category: Games Price: $3.99, Version: 1.0.1 (iTunes) Description: You wake up alone and freezing in an icy cell. You try the cell door but it’s locked, it seems that you are stuck with no... | Read more »
The best Photoshop alternative on iPad
Instagram and Lightroom are great and all, but sometimes people need to get extra creative with their image editing.Like, Photoshop creative. If you're one of these people, take a look at our pick for the best mobile Photoshop experience on iPad... | Read more »
The Walking Dead: No Man’s Land guide -...
A new update for The Walking Dead: No Man’s Land was released last week, making it the perfect time for you to head back to your base and take out some walkers. Here’s the lowdown on what’s new to the game, and how to take advantage. [Read more] | Read more »
Goat Rider guide - Tips and tricks to st...
We've all been there. One second, we're riding high on a crazed goat, and the next, we've been tossed off it like someone who's no good at goat ridin'. [Read more] | Read more »
Real Boxing 2 CREED: How to become a gre...
Just in time for Rocky fans who can’t wait to see CREED, the latest movie, we have the official tie-in game,Real Boxing 2 CREED. It builds on the success of its predecessor and there’s lots to take in so we at 148apps thought we’d run you through... | Read more »
CoinOp Heroes 2 guide - How to build an...
CoinOp Heroes 2 justlaunched and, like all clickers, it's dangerously addictive stuff. You have to furiously tap your screen to defeat wave after wave of foes and earn an insane amount of cash to spend on character upgrades and an army of minions... | Read more »
Dr. Panda Firefighters (Education)
Dr. Panda Firefighters 1.0.1 Device: iOS Universal Category: Education Price: $2.99, Version: 1.0.1 (iTunes) Description: FIGHT FIRES AND SAVE THE DAY!Work together with Dr. Panda and his firefighting team to rescue his trapped... | Read more »

Price Scanner via

Best Buy Black Friday deals: Up to $200 off M...
Best Buy has posted their Black Friday sale prices for 2015. Save on MacBook Pros, MacBooks, MacBook Airs, iMacs, iPads, and Apple Watches. Choose free shipping or free local store pickup (if... Read more
Save $30-$40 on new Apple TVs after rebate
Adorama has new Apple TVs on sale for up to $40 off MSRP after mail-in rebate, good through December 15th. Shipping is free, and Adorama charges NY & NJ sales tax only: - 32GB Apple TV: $119.99... Read more
13-Inch Haswell MacBook Air At Two Years – Th...
The 13-inch mid-2013 “Haswell” MacBook Air I ordered in Apple’s November 2013 Black Friday sale was my first new Mac in four and a half years — the longest interval I’ve gone between system upgrades... Read more
Target Black Friday Early Access deals: $100...
Target is offering early access to their Black Friday deals on Apple products on their online store for today, the 25th, only. Choose free shipping or free local store pickup (if available): - Apple... Read more
BlackBerry Q3 Mobility Index Report Finds iOS...
BlackBerry has announced results of its thirteenth Good Mobility Index Report, showing that organizations are increasingly building custom secure apps. Among Good Powered by BlackBerry (formerly Good... Read more
Wednesday roundup of early Black Friday Mac s...
Save up to $500 on a new Mac with these early Black Friday deals from Apple resellers, currently the lowest prices available for these models: (1) B&H Photo has all new Macs on sale for up to $... Read more
iPod nano on sale for $119, $30 off MSRP
Walmart has the 16GB iPod nano (various colors) on sale for $119.20 on their online store for a limited time. That’s $30 off MSRP. Choose free shipping or free local store pickup (if available). Sale... Read more
Adorama Black Friday deals: Up to $400 off Ma...
Adorama has released their Black Friday deals for 2015. Save up to $400 on MacBook Pros, $200 on MacBooks and MacBook Airs, and $270 on iMacs. Use code RYBFDEAL during checkout to see these prices.... Read more
B&H Photo Deals: $200 off 12-inch 1.2GHz...
In addition to the B&H Photo Black Friday week sales we posted yesterday, B&H has lowered their price on two products to $200 off MSRP: - 12″ 1.2GHz Gray Retina MacBook: $1399 save $200 - 13... Read more
Best Buy Early Access: Today only, Up to $125...
Best Buy has iPad Air 2s on sale for up to $125 off MSRP and Apple Watch models on sale on their online store for up to $100 off MSRP with special codes through midnight CT tonight. Choose free... Read more

Jobs Board

Hardware Systems Integration Engineer - *App...
# Hardware Systems Integration Engineer - Apple Watch Job Number: 39380139 Santa Clara Valley, Califo ia, United States Posted: Apr. 23, 2015 Weekly Hours: **Job Read more
Sr. Technical/Project Manager, *Apple* Educ...
# Sr. Technical/Project Manager, Apple Education Job Number: 36588557 New York City, New York, United States Posted: Jul. 30, 2015 Weekly Hours: 40.00 **Job Summary** Read more
*Apple* Retail - Multiple Positions (US) - A...
Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, you're also the Read more
Merchant Operations Manager: *Apple* Pay -...
Changing the world is all in a day's work at Apple . If you love innovation, here's your chance to make a career of it. You'll work hard. But the job comes with more than Read more
*Apple* Pay QA Manager - Apple Inc. (United...
Changing the world is all in a day's work at Apple . If you love innovation, here's your chance to make a career of it. You'll work hard. But the job comes with more than Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.