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

AMERICA ONLINE 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

Sandvox 2.10.2 - Easily build eye-catchi...
Sandvox is for Mac users who want to create a professional looking website quickly and easily. With Sandvox, you don't need to be a Web genius to build a stylish, feature-rich, standards-compliant... Read more
LibreOffice 5.0.1.2 - Free, open-source...
LibreOffice is an office suite (word processor, spreadsheet, presentations, drawing tool) compatible with other major office suites. The Document Foundation is coordinating development and... Read more
f.lux 36.1 - Adjusts the color of your d...
f.lux makes the color of your computer's display adapt to the time of day, warm at night and like sunlight during the day. Ever notice how people texting at night have that eerie blue glow? Or wake... Read more
VirtualBox 5.0.2 - x86 virtualization so...
VirtualBox is a family of powerful x86 virtualization products for enterprise as well as home use. Not only is VirtualBox an extremely feature rich, high performance product for enterprise customers... Read more
File Juicer 4.43 - Extract images, video...
File Juicer is a drag-and-drop can opener and data archaeologist. Its specialty is to find and extract images, video, audio, or text from files which are hard to open in other ways. In computer... Read more
Apple MainStage 3.2 - Live performance t...
MainStage 3 makes it easy to bring to the stage all the same instruments and effects that you love in your recording. Everything from the Sound Library and Smart Controls you're familiar with from... Read more
formZ 8.5 - Solid and surface modeler. (...
formZ pro is a powerful 3D design application featuring a variety of modeling personalities and tools with an easy to use interface to express and communicate your imagination. It is based on... Read more
PopChar 7.2 - Floating window shows avai...
We're also selling a 5-license family pack for only $25.99! PopChar helps you get the most out of your font collection. With its crystal-clear interface, PopChar provides a frustration-free way to... Read more
FileMaker Pro 14.0.2 - Powerful, easy-to...
FileMaker Pro is powerful, easy-to-use software used to create custom solutions for your business that run on iPad, iPhone, Windows, Mac and the web. Use FileMaker Pro to manage and share information... Read more
djay Pro 1.2 - Transform your Mac into a...
djay Pro provides a complete toolkit for performing DJs. Its unique modern interface is built around a sophisticated integration with iTunes and Spotify, giving you instant access to millions of... Read more

ReBoard: Revolutionary Keyboard (Utilit...
ReBoard: Revolutionary Keyboard 1.0 Device: iOS Universal Category: Utilities Price: $1.99, Version: 1.0 (iTunes) Description: Do everything within the keyboard without switching apps! If you are in WhatsApp, how do you schedule a... | Read more »
Tiny Empire (Games)
Tiny Empire 1.1.3 Device: iOS Universal Category: Games Price: $2.99, Version: 1.1.3 (iTunes) Description: Launch cannonballs and blow tiny orcs into thousands of pieces in this intuitive fantasy-themed puzzle shooter! Embark on an... | Read more »
Astropad Mini (Productivity)
Astropad Mini 1.0 Device: iOS iPhone Category: Productivity Price: $4.99, Version: 1.0 (iTunes) Description: *** 50% off introductory price! ​*** Get the high-end experience of a Wacom tablet at a fraction of the price with Astropad... | Read more »
Emo Chorus (Music)
Emo Chorus 1.0.0 Device: iOS Universal Category: Music Price: $1.99, Version: 1.0.0 (iTunes) Description: Realistic Choir simulator ranging from simple Chorus emulation to full ensemble Choir with 128 members. ### introductory offer... | Read more »
Forest Spirit (Games)
Forest Spirit 1.0.5 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0.5 (iTunes) Description: | Read more »
Ski Safari 2 (Games)
Ski Safari 2 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: The world's most fantastical, fun, family-friendly skiing game is back and better than ever! Play as Sven's sister Evana, share... | Read more »
Lara Croft GO (Games)
Lara Croft GO 1.0.47768 Device: iOS Universal Category: Games Price: $4.99, Version: 1.0.47768 (iTunes) Description: Lara Croft GO is a turn based puzzle-adventure set in a long-forgotten world. Explore the ruins of an ancient... | Read more »
Whispering Willows (Games)
Whispering Willows 1.23 Device: iOS Universal Category: Games Price: $4.99, Version: 1.23 (iTunes) Description: **LAUNCH SALE 50% OFF** - Whispering Willows is on sale for 50% off ($4.99) until September 9th. | Read more »
Calvino Noir (Games)
Calvino Noir 1.1 Device: iOS iPhone Category: Games Price: $3.99, Version: 1.1 (iTunes) Description: The film noir stealth game. Calvino Noir is the exploratory, sneaking adventure through the 1930s European criminal underworld.... | Read more »
Angel Sword (Games)
Angel Sword 1.0 Device: iOS Universal Category: Games Price: $6.99, Version: 1.0 (iTunes) Description: Prepare to adventure in the most epic full scale multiplayer 3D RPG for mobile! Experience amazing detailed graphics in full HD.... | Read more »

Price Scanner via MacPrices.net

Tablet Screen Sizes Expanding as iPad Pro App...
Larger screen sizes are gaining favor as the tablet transforms into a productivity device, with shipments growing 185 percent year-over-year in 2015. According to a new Strategy Analytics’ Tablet... Read more
Today Only: Save US$50 on Adobe Elements 13;...
Keep the memories. lose the distractions. Summer’s winding down and it’s time to turn almost perfect shots into picture perfect memories with Elements 13. And get the power to edit both photos and... Read more
1.4GHz Mac mini on sale for $449, save $50
Best Buy has the 1.4GHz Mac mini on sale for $50 off MSRP on their online store. Choose free shipping or free local store pickup (if available). Price for online orders only, in-store price may vary... Read more
12-inch 1.1GHz Gold MacBook on sale for $1149...
B&H Photo has the 12″ 1.1GHz Gold Retina MacBook on sale for $1149.99 including free shipping plus NY sales tax only. Their price is $150 off MSRP, and it’s the lowest price available for this... Read more
27-inch 3.3GHz 5K iMac on sale for $1849, sav...
Best Buy has the 27″ 3.3GHz 5K iMac on sale for $1849.99. Their price is $150 off MSRP, and it’s the lowest price available for this model. Choose free shipping or free local store pickup (if... Read more
Worldwide Tablet Shipments Expected to Declin...
Does Apple badly need a touchscreen convertible/hybrid laptop MacBook? Yes, judging from a new market forecast from the International Data Corporation (IDC) Worldwide Quarterly Tablet Tracker, which... Read more
Continued PC Shipment Shrinkage Expected Thro...
Worldwide PC shipments are expected to fall by -8.7 percent in 2015 and not stabilize until 2017, according to the latest International Data Corporation (IDC) Worldwide Quarterly PC Tracker data. The... Read more
Imminent iPhone 6s Announcement Leads To 103%...
NextWorth Solutions, with its online and in-store electronics trade-in programs including http://NextWorth.com, reports that it has experienced a 103 percent surge in quoted trade-in values over the... Read more
Weekend Deal: 13-inch Retina MacBook Pros for...
Save up to $100 on the purchase of a new 2015 13″ Retina MacBook Pro at the following resellers this weekend. Shipping is free with each model: 2.7GHz/128GB MSRP $1299 2.7GHz/... Read more
13-inch 2.5GHz MacBook Pro on sale for $999,...
B&H Photo has the 13″ 2.5GHz MacBook Pro on sale for $999.99 including free shipping plus NY sales tax only. Their price is $100 off MSRP. Read more

Jobs Board

Product Design Engineer - *Apple* Watch - A...
**Job Summary** Product Design Engineer Job Description As a member of Apple 's Watch product design team, you will help to create the next generation of the world's 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
Software QA Engineer, *Apple* Pay Security...
Changing the world is all in a day039s work at Apple . If you love innovation, here039s your chance to make a career of it. You039ll work hard. But the job comes with 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
*Apple* Solutions Consultant - Retail Sales...
**Job Summary** As an Apple Solutions Consultant (ASC) you are the link between our customers and our products. Your role is to drive the Apple business in a retail Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.