<<

F R S T I M P R E S S 0 N S

'·. What's NeXT After 1-2-3?

ou know the old saying about prov window with a somewhat typieal reinventing the wheel. And the Lotus's for worksheet. You'll notice that the items one about not fixing it ifit isn't appear where that ABC/123 stuff used t() Ybroken. Both of those--Philoso­ be, and categories appear on tiles placed phies seem to apply to be­ the nineties, Improv, near the rows and columns they describe. cause practically every one that has been Improv starts up with one category ~ch · produ~ in the last several years looks for rows .and columns, but that might not ~ and acts like Lotus 1-2-3. Can it be that be enough. In the Unix benchmark ex­ --- there is simply no other way to make a has a startling new look ample in photo 1; I needed two sets of spreadsheet? column categories: Results to hold the Lotus doesn't think so. Improv is a timing ·and index. , and System to completely redesigned spreadsheet pro­ hold the system names. . •: gram that borrows nothing from past • In 1-2-3, it might have been siniplest Lotus efforts. Nearly everything about it Tom Yager to keep· typing ..! 'ResUlt" -and ''Index" is new to Lotus, and some elements ofthe across the columns until I had as many as 1 interface have never ·been used in any . ' I needed, but Improv won't allow that. . ~ program. That's what's so exciting about '· Because it use5 row and column names to it. In these days of lawsuits over dupli· that'sonJytire~. ·~;... identify cells, the names must be unique. ~ cated look and feel, Lotus has come up In Improv, row and coluinn names are· That might .seem 'like a burden, ·put it r.~~ with something new. not just ornaments;· they are identirrers, isn't. H you biwe · repetitive data, 'you which Lotus calls items. To locate a spe­ need to create a new category to .contain s B2,orNotB2 · :. ' .. cirte cell in an Improv worksheet, yoti it.-That's easy enough: Click on an exist­ To call a program a spreadsheet, it must specify the intei:s~~ting items (e.g., ing category tile and press Enter on the . have rows and columns; ·that is the only . March:Profit). For clarity, that beats numeric keypad (there's ·also· a menu sensible way to arrange tabular data. the heck out ofC2L Item names·can cou. option). ;"': _ ~-~~ .. ·-~!~ .. 1-· ~~. ·~ ••b_.~·. Every spreadsheet has this much in com· tain mixed capitalization,'·e-Yen spaces o With the. Results eolumn Category, moo, ·but Improv diverges rapidly from and punctuation. L<. ' · :_.: 1:1g;:: :.•:, .. · · each cell in photo 1! s ·\vorksh~t is dis­ the pack after that. · ··' · :'·. t;·· ''·, · .. ··To add clarity and utility, 'you can as· tinctively identittable; even though there ·· The most obvious difference· is that sign types to items through categories. are.three sets of oolumns with the same Improv runs exclusively, at least for the These are brief, usually_· one-word, de­ names. To reference the C compiler in­ time being, on the NeXT . scriptions ofthe type of information rep­ dex for the NeXT; you'd ask for NeXT: C Lotus .had its own reasons for selecting resented by the items. For example, if Compiler: Index. As you add. catego­ that platform, not the least ofwhich is the you had row items representing months ries, the number of items needed to refer killer development environment that ofthe year, and column items named for to a specific cell increases. For this'rea­ comes standard on the NeXT. · the things you sell, you might define cat­ son, it's best to avoid .using additional ·· Lotus plans to pOrt Improv to other en­ egories· of Months and Products.· But categories simply to group data for read· vironments, but the fir8t such target bas you could tag them anything you like: ability. .,. . -. :.::' ·.;· ... · i,· not yet been chosen. The package is en­ Improv doesn't care what names you use. lmprov provides ·a separate mecha­ tirely dependent on a graph.ical interface, Now, look at photo 1. .This is an Im- nism for this, ·called (of·course) the so Wmdows, the X Window System, and . : •.. . : · .!~ . ,_ group. · Any numbetofitems can be col­ the are all likely candidates. ,~v" • "• I lected into a_group, and grQUp names can .. Shipments to customers are scheduled to THE FACTS 9e used wherever a ~nge is called for. start late this year. ·. · · · ··· · :. · Ranges still exist,;and they are specified Once you get over the shock of having in al-2-3-,like fashion with .... " between to buy a NeXT to run Improv, you begin the bounding item .names. · ' · · ... to notice the important things that make it different. First, the stifling ABC/123 Getting (Data) into It '·. · row and column names are dead. You can When yoti :start lmprov~ · you get a one­ name rows and columns whatever you cell spreadsheet. Improv requires that - like. Big deal, right? Ah, be patient- · ·"'>. ·:, · _,,. ;:.,, ;:;;,:\ -· .... · -.. · · conti~d

OCTOBER 1990 • BYTE 147 S F IRST IMPRESS I ON WHAT'S NEXT AFTER 1-2-3?

clearly and you can see the bottom line re­ enough, but it takes time to compare sults between systems. could In an ordinary spreadsheet, you the main set aside a group of cells below clearly. to present the data more the data into those cells would Getting of involve tedious copying or the creation the origi- . formulas that referred back to data. nal 2 In lmprov, the worksheet in photo and created with a single action: drag was category drop. By moving the Systems area, I tile from the row to the column of the instantly created a revised view Systems got stacked together worksheet. a in adjoining rows, making comparisons , and you breeze. The data doesn't change any way can shuffle the category tiles tile over you like. If you drop a category devote the page placeholder, Improv will that one display page to each item under category. The data hierarchy in lmprov doesn't can hold end with pages. Each worksheet views, where each view presents multiple file the data differently. A single lmprov work­ (called a model) can hold multiple Cells sheets (with unique data) as well. same in other worksheets (within the formula model) can be referenced in any with the by prefixing the cell address colons worksheet name followed by two (e.g., Profit and Loss: :FY 90:Ql:Net Income). highlighted. with the key interface elements The Secret Fonnulil Photo 1: A sample lmprov worksheet to refer­ . There's really only one reason lWrksheet cell or group of cells, sticking out of the ence a This is click on the ''towel" is to perform some calculation · you create cells as you need them. the mouse down and that clutter­ item dispenser, and drag innovated again with re­ a good idea-it cuts down on the of items you on them. Lotus some get­ until you have the number In 1-2-3, the norm is but adding cells as you go takes sheet of items spect to formulas. key, as want. You then tear off the in each cell that used to. The keypad Enter worksheet. to define one formula ting and drop the items on the It is not unusual to above, is the global "make an­ interface needs calculating. described key, This is illustrative of lmprov's with hundreds of other one of whatever is selected" common opera­ find large spreadsheets Cells are philosophy: The most in a fragile web of inter­ and it creates new cells, too. are the easiest to formulas, woven With tions are the ones that added one at a time, of course. dependence. not all perform. the link between cells the benchmark worksheet, I created Improv breaks first. Formulas are entered in the column categories and items and formulas. with the Facing the Interface a resizable subwindow Then, stepping down the rows with lmprov, you the formula paM, named the row When you sit down worksheet window. Each formula Enter key, I created and be completely lost of the is added, must be prepared to a right side that describes the items. Each time a new item is no 1-2-3 in­ ci>nsists of for a few minutes. There a left side that specifies empty cells are created. menu comes calculation, and hurry, Improv terface compatibility-no of the results. I say "re­ For those who are in a "/." But there is a the placement creation of up when you press a single formula can pro­ offers two shortcuts to the a continuity that sults" because an item simplicity to it, and place multiple data values in a new cells. First, if you highlight and endearing to duce and key, it makes it quick to learn you create a worksheet start drumming on the Enter enough that, worksheet. If and use. The interface is simple Quantity, and Total, create new items (and, therefore, of cat­ with items Cost, will If once you understand the hierarchy will named after the parent category. the rest the formula Total=Quantity*Cost cells) egories, groups, items, and cells, in one operation. category is named Month, the default calculate all the totals the and follows naturally. almost never re• item names will be Monthl, Month2, oflmprov 's Entering formulas . Nowhere is the uniqueness the keyboard. Double-click, soon. than in flexible quires using At the interface more apparent pane places you in edi• The other approach is more fun. study the layout ing in the formula item dis­ views. Take a moment to up a palette of formub upper left ofthe window lies the in photo 1. It mode and brings works like a of the data in the worksheet buttons. Clicking in tht penser, a nifty device that rapid data entry, construction an item, is laid out properly for roll of paper towels. You select

148 B Y T E • OCTOBER 1990 FIRST IMPRESSIONS WHAT'S NEXT AFTER l-2-3?

worksheet adds the appropriate identifier to the formula. Category, group, and item names can all be used to select data for formulas. Erroneous formulas are trapped im­ mediately, and an explanatory error mes­ sage that briefly describes the specific problem is displayed. A mouse-click brings up a dialog box with a detailed de­ scription of the error and a pointer to the location in the formula where the calcu­ lation failed. Formulas can also overlap, placing their results in the same cells. Improv flags these, too, and, instead of blindly following the "last formula takes prece­ dence" rule, it lets you select which for­ mula will prevail. The 1-2-3 functions are duplicated in lmprov, and 1-2-3 spreadsheets can be imported to and exported from Improv. When importing spreadsheets, you can determine whether label names will be '- converted to items. Also, Improv will filter through the formulas, reducing them to the minimum set required to de­ rive the desired result. The reduction varies, but most large spreadsheets, loaded with copied formulas, can be du­ plicated in Improv with only a handful of formulas. Another important factor lending to the reduction in the number of formulas is the recurrence formula. A single ex­ pression can replace countless copied formulas. Quarter[THIS] :Cost=Quar­ Photo ter(PREV] : Costd.25, 2: The same worksheet as in photo 1, after having its data rearranged for example, es­ with flexible calates costs by 25 views. The format box is typical of/mprpv 's interface: stylish percent each quarter, and functional. starting from a constant value and stop­ ping when there are no more cells. FIRST, LAST, and NEXT can also be used The Hatchet Falls primary market inside the brackets, as can an integer for Improv will be expe­ in­ lmprov is much easier to use than to de­ rienced dex. Prices[J] refers to spreadsheet users who have out­ the third cell scribe. There is great depth to its abili­ grown under the item Prices. the limited, traditional programs. ties, but the interface causes it all to That may be, Formulas can be restricted to operat­ but I'm convinced that new make sense. To discuss everything that users, even ing on certain cells with the IN and those who have never used a SKIP makes Improv special would fill several computer ~- clauses. IN restricts calculations before, will find Improv easier to deal articles this size. Instead, here are a few to learn only with specif"aed cells. SKIP and use. Running under Unix, operates points of that shouldn't be over­ Improv similarly, instructing a formula benefits from virtual memory, not to looked. transparent mess with the specified cells. The networking, and multitask­ result Presentation Builder is an Improv tool ing. is that formulas can have scope, Running on the NeXT, it inherits the and por­ through which you create graphs from stunning tions of a worksheet can be made NextStep graphical interface. to cal­ worksheet data. You can add freehand Lotus culate differently from others. could have played it safe, pro­ drawings, paste in worksheet contents, ducing Gone is the age-old (as with the Sun version of l-2-3) problem with clob­ and bring in PostScript and TIFF graph­ bering formulas a text-based spreadsheet that runs in a by accidentally typing ics files. Help is rampant, and over it can be graphical window. Instead, the company them. Improv will not allow data brought up in context-sensitive, entry click-to­ decided to take a chance, and the results in any calculated cell. Selecting a describe, and other modes. If you ask to ·are astounding. You may never own formula will highlight the cells it affects. open an lmprov a file that is currently in NeXT , but ifyou sit down to The symbolic arrangement of data in use by somebody use else on the network, a a spreadsheet five years from Improv makes formulas easier to create, warning now, panel is presented (which you chances are it will have a lot easier to read, and, therefore, easier to can override). in common maintain. With well-chosen with -Improv. • item names, In all, Improv knocked me out. It is · most formulas read like English; look the first new program that I've seen in Tom Yager closely at the formulas in photo 1 and is a technical editor for the see months, and Lotus's design ideas are BYTE Lab. if you understand what's going He can be reached on BIX as on. truly innovative. Lotus claims that the "tyager. "

OCTOBER 1990 • BYTE 149