4 ms·
>What are the advantages? You could save your formulas to a separate file and import them through the add-in. This lets you easily share your formulas with othe
by jasode 11y ago
>What are the advantages? You could save your formulas to a separate file and import them through the add-in. This lets you easily share your formulas with others and add version control and code review to your project.
Is this plugin meant for programmers or non-programmers? The distinction is critical because...
>Inspired by two discussions [...]
You have to be careful with criticisms about Excel made by programmers. Discussion on HN will skew toward the programmer skillset.
The mindset of the non-programmers that use Excel is very different from programmers. To many programmers, the use of Excel looks illogical. It's a spaghetti of dependencies when formulas refer to other formulas. A complex spreadsheet becomes a ball of mud.
Those criticisms are true but they completely miss the reason why non-programmers find Excel compelling: the UI starts with a visual grid of the "output".
On the other hand, a programmer's UI starts with a blank text file (ready for the programmer to type in "do while x<10" etc.
If one studies how all these disparate groups of non-programmers use Excel, the grid's visual immediacy is the common feature that they all prioritize. Diverse groups of non-programmers such as:
- the Wall Street quants playing with rows & columns in financial models,
- the project manager using Excel as a grid for itemizing tasks instead of using MS Project,
- the facilities manager using Excel as an adhoc inventory system instead of learning a database product like MS Access, FileMaker, or MySQL
It's true that Excel is spaghetti but non-programmers prioritize the grid over the resultant spaghetti. In contrast, programmers prioritize code organization (formulas) over the visual grid. These 2 groups are not even on the same wavelength.
Your proposed tool is helpful but it doesn't really address a burning need for non-programmers. For example, your mockup shows the formulas off to the side and disconnected spatially from the cell. That separation is fine for programmers (who can mentally connect things like CSS rules in a .css file to elements in the .html) but not user-friendly for non-programmers.
- damian_r 11y agoThanks for this perspective. As a programmer I haven't actually thought much about how important this link between a cell in a grid and its formula may be. I have seen huge (i mean HUGE) Excel files full of complex formulas being built by non-programmers. Some even took whole night to recalculate. There was a programmers mindset emerging from those files - extracting common formulas to separate cells (DRY), writing 'unit' tests by using formatting (if result for sample input is less than 0 then make the cell red - which means someone broke the formula). The question arises - is there a point where a non-programmer starts thinking like a programmer, on a different level of abstraction? Is it possible to teach non-programmers some basic programming practices to make their work easier?