This is an interesting conversation.
We have some of these same debates in designing programming languages
-- strict typing with compile time enforcement, or highly-polymorphic,
late binding? What is best for productivity? What is best for reducing
errors? What is best for solitary user=author, versus large complex
sheets with multiple authors and business critical uses? Spreadsheet
errors can be very costly, but most spreadsheets are very simple and have
a short lifetime.
I wonder how much of what we have today
is due to historic circumstances? When spreadsheet came out, there
were not so many capable coder/end-users. Application development
was a long drawn out and expensive process. It still can be that
way, but there are now a larger number of tools based on easy-to-use scripting
engines which bring coding within the reach of more people. The typical
1-2-3 users back in 1990 might have been 30 years old but was having their
very first experience with a computer. I remember a Computer
Languages magazine survey that showed that the 1-2-3- macro language was
the most-used programming language in the world.
But look at today -- The typical 14
year old knows more about computers than adults knew back then. I
assume most high school graduates today know how to program in at least
one high level language. My niece is graduating high school in a
couple of years with MS Office certification. She already knows how
to program Access better than I do. If we were to look forward at
the next 20 years of uses and users for spreadsheets, would we be lead
to make a different set of assumptions in terms of what idioms would be
familiar to them, and how much of a tolerance they would have for doing
type conversions explicitly?
I guess my point is that a lot of the
syntactic and semantic complications that made it into 1-2-3 and Excel
came from a need to support a type of novice user which we may never see
again.
-Rob
Eike Rathke <> wrote on 03/01/2006
08:07:36 AM:
> Hi Tomas,
>
> On Wed, Mar 01, 2006 at 09:45:01 +0100, Tomas Mecir wrote:
>
> > > > First of all, my fundamental principle: as far as the
user is
> > > > concerned, there are no datatypes. Everything automatically
gets
> > > > converted to what is expected.
> > > This is exactly the hell in which the approach of the one
big player
> > > brought us..
> >
> > Really ? What kind of hell ?
>
> The hell of strings being sometimes interpreted as numbers and sometimes
> not. The hell of locale
>
> > I don't see any problem with this approach - after all all those
> > "high-level" programming panguages do the same ...
>
> Which ones do what?
>
> > Or, do you see any reason why strings shouldn't be treated as
numbers
> > for values like "3", other than performance reasons
?
>
> My favorite examples: The values of "12'345.67" and "12
345,67" and
> "$B0lFs!";0;M8^!%O;