Quiet week warning

Things could go quiet for a few days this week. I’m in Seattle and I’m not sure what internet access I’ll have. I had meant to sort out a couple of posts in advance, but it hasn’t been that sort of week.

Feel free to carry on without me, I’ll catch up when I can

possible topics:

  • Do we still need office productivity suites?
  • Does techological influence within a company increase with technical competence?
  • Is there a single feature that if added to (or removed from ;-) ) the next Excel would make it a compelling upgrade?
  • And what would it be?

cheers

Simon

Advertisements

7 Responses to “Quiet week warning”

  1. Harlan Grove Says:

    * Do we still need office productivity suites?

    Do we still need word processing?
    Do we still need presentations? Did we ever?
    Do we still need e-mail clients/calendars?

    Or do you mean should productivity suites provide mere users with any development tools? That is, VBA/VBE? Life would be easier for most IT departments if Office Standard meant no VBA/VBE. More bluntly, people who need and know how to use Access probably also need and know how to use VBA; people who don’t probably don’t.

    Tangent: Lotus Notes provides different capabilities to users with developer IDs and to those with mere user IDs.

    That still leaves Excel sans VBA/VBE. If you remove it, you’d force many users to use even worse alternatives (calculators supplemented by paper & pencil). But do 80% of business users need everything Excel provides? No.

    Tangent: what about an Excel runtime that provided NO MEANS of editing, entering or even viewing formulas, but users could enter constants into unlocked cells, use autofilters and pivot tables. As for formatting, nothing in under Format > Cells, but allow changing row heights and column widths. Something more like Access runtime than the Excel viewer.

    * Does techological influence within a company increase with technical competence?

    Well, Bill Gates can code. Can Steve Balmer?

    Maybe inapt examples. If one works for a tech company, then tech knowledge may be perceived as useful. But in financial services, say, it doesn’t count for much outside IT departments.

    * Is there a single feature that if added to (or removed from ;-) ) the next Excel would make it a compelling upgrade?

    Single? No.

    Me, I’d upgrade if MSFT brought XL kicking & screaming into the late 1980s by (1) allowing XL to open multiple files with the same base filename, and (2) providing a built-in equivalent to SQL.REQUEST [equivalent features provided by Lotus 123 in Release 3.0 in 1989]. And it wouldn’t hurt if they also provided functions like Longre’s INDIRECT.EXT, MCONCAT and THREED. And regular expression support like in OpenOffice Calc.

  2. Simon Says:

    Harlan
    Sorry my questions weren’t clear – I have done a proper post which hopefully clears it up.
    Interesting thoughts about office, you can do most of that ID based stuff now with office policies (.adms). But I think they mainly cover the UI – ie you can prevent access to the VBAIDE but can’t stop VBA (except through security).
    You can run Excel without VBA (an installation option) but all sorts of things don’t work right – OOo calc may be a better option than Excel without VBA.

    I’ll come back to influence in a post tomorrow, interesting example though.

    Re functions – without counting or checking I’m going to say that I think both Gnumeric and OOo Calc have more worksheet functions than Excel.
    Can anyone confirm? And/Or explain why Excel has less (if it does)? Is it becoming the ‘beginners’ spreadsheet, scared of power because it might confuse novices?
    cheers
    Simon

  3. Harlan Grove Says:

    Excel 2003 (with ATP loaded) has 329 non-XLM functions (the 328 shown in online help and the Lotus 123 rip-off DATEDIF which MSFT seems to embarrassed to document aside from the lapse in XL2000, but not CALL or REGISTER).

    OpenOffice 2.1 Calc has 368 functions. It lacks Excel’s DATEDIF and RTD functions. The silliest OOo-specific function is ARABIC, the inverse for ROMAN. The most useful are BASE, CURRENT and STYLE together (CURRENT on it’s own is weird), DDE (a MUCH MORE INTELLIGENT approach to DDE link construction than Excel’s), FORMULA, ISFORMULA, SHEET and SHEETS. There are several others for date handling to make up for not having a DATEDIF equivalent, and there are others that serve little purpose I can see. Well, maybe ROT13.

    Gnumeric 1.6.3 has 518 functions. It only lacks Excel’s RTD function. It adds several options pricing and analysis functions, more continuous probability distribution functions, random number generators for different distributions, bitwise operators (silly), imaginary arcsine and hyperbolic arcsine etc., Erlang functions, and prime number and integer factoring functions.

    Gnumeric’s additional functions are more esoteric than OOo Calc’s, of interest to real number crunchers only (in which group I include myself). It’s a shame Gnumeric hasn’t added equivalents for OOo Calc’s more useful additional functions.

    Excel has fewer because (1) low ROI for providing more, (2) fear of botching ’em the first time through (the options and Erlang functions aren’t trivial), and (3) indifference to user/developer needs.

    How could I possibly suspect indifference? Maybe because it took MSFT 8 *YEARS* to manage colored worksheet tabs after this ‘feature’ appeared in Quattro Pro 5 in 1993. Maybe because Excel still can’t open multiple files with the same base filename (wasn’t a problem back in the days of single disk drive Macs, so why add the feature now?). Maybe because the @#$%&*! ribbon can’t be modified as part of Excel’s object model via VBA.

  4. Dennis Wallentin Says:

    Harlan,

    I’m rarely impressed of anything or anyone but I must honestly admit that Your post here is impressive – thanks for sharing Your knowledge.

    Kind regards,
    Dennis

  5. simon Says:

    Thanks for the run down Harlan – a simple yes/no would have been fine, :)but this is much more useful! Thanks.

    I’ve seen FORMULA and (EXPRESSION in Gnumeric), these are very useful to me. I’d have thought ROI in worksheet functions would be higher than some of the other stuff that made it into 2007 (the ribbon must surely have a negative ROI for example!)

    I wonder if the whole function list evaluation thing is implimented as a big select case, in which case adding more functions/cases would potentially slow down calc time?

  6. Harlan Grove Says:

    The ribbon is all about product lock-in for MSFT’s benefit. The old Lotus vs Mosaic and vs PSI look-and-feel lawsuits are still operative law in the US, so MSFT *could* have legal recourse in the US against any other company implementing a ribbon without getting a license to do so from MSFT. If they can control who can make software that looks like MS Office, they can control who can take market share away from it. But IANAL.

    To me, no clearer expression of how close MSFT thought OOo had come to MS Office by 2005. Of course this is an Excel-centric view of Office. Aside from the UI, the changes in Excel and maybe Access may be worth the cost of upgrade, but I’m not convinced the non-ribbon changes in Word, PPT and Outlook are as worthwhile. But I don’t use ’em, so what do I know?

    As for worksheet function implementation, experimentation shows that defined names, udfs and add-in functions share a common name space. For example, when I load Longre’s MOREFUNC.XLL add-in, and I then enter the formula =FILENAME, Excel returns 914882726 (this varies by session). If I define the name f referring to =FILENAME, the formula =f also returns 914882726. But if I enter the formula =f(), it returns Book1. Now if I define f as =IF(Sheet1!$A$1,FILENAME,ISEVEN), mixing in the ATP function ISEVEN, and enter the formula =f(0) with A1 blank, Excel returns Book1, same as =FILENAME(0). Then I enter 1 in A1, and the formula returns TRUE, same as =ISEVEN(0). This convinces me that Excel keeps a table of pointers for udfs and add-in functions, and compiles such function calls as function pointer followed by an argument list.

    Built-in functions seem to have a different namespace. =SUM returns #NAME? unless SUM is a defined name. I suspect Excel’s formula parser does a table or hash lookup of the function name, returning a function pointer for built-in functions. If it’s a hash table, it’s constant time for a reasonably small number of functions (but reasonably small would still be > 1000). Even if it’s simple text table lookup, as long as the table is sorted, it could use binary search, so be O(LOG(N)) rather than linear time.

    What I suspect is design constraints, such as Excel using very few bits to encode built-in function pointers, number of arguments, and argument types. Still, if this is correct, since there’s more than 255 built-in functions, there should be room for about 511 built-in functions. Of course, that assumes there aren’t internal ‘functions’ that work like TABLE but aren’t visible in pseudoformulas like it that use up slots in the built-in function table, or perhaps different function pointers for INDEX called with 2, 3 or 4 arguments, LOOKUP called with 2 or 3 arguments, etc.

  7. Robert Norman Says:

    Open office accomplishes RTD functionality via the XVolatile return type for addin functions. It allow one to return values in a callback driven form. Its a bit cleaner than RTD as it doesn’t require automation and hence is cross platform.

    I think that an RTD function could be written using this, but of course it would be windows specific. If there is a demand for it I might take a shot at it as I have some time on my hands at the moment…

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


%d bloggers like this: