-------- Original Message --------
Subject:        Re: [fonc] Software and Motivation
Date:   Sat, 19 Feb 2011 04:01:22 -0700
From:   BGB <cr88...@gmail.com>
To:     Fundamentals of New Computing <fonc@vpri.org>
CC:     David Harris <dphar...@telus.net>



On 2/19/2011 1:06 AM, David Harris wrote:
 Here is a very interesting 'cartoon' of what, in general, motivates
 people - certainly applicable to what you are talking about.
 http://www.youtube.com/watch?v=u6XAPnuFjJc

 David


yep, interesting...

I have before noted that, personally, it is difficult to really care
that much about money...
money is there, something for some people to idolize, and something for
others to screw over each other to try to get more of, ...

but, personally, my efforts were not motivated as much by this...
after all, I work mostly with compiler, VM, and some language-design
stuff, and it is unlikely there is a whole lot of money to be made here...
and, yes, a lot of it is fairly dull and boring as well...

although it may seem like it, my goal isn't really to spend away all my
time implementing "yet another generic language exactly like all those
that came before".

or even "spend all my time implementing yet new bytecode interpreters
and JITs and performance-tuning the things...".

rather, it is more that, doing all of this allows one to try their hand
at chipping away at long-standing problems, in ways that simply using a
VM or bug-fixing/maintaining the thing would not (as then, one has to
swallow the existing architecture full-force, and there is no real room
for experimentation...).

one knows the architecture, one knows all its merits and flaws, but at
the same time something is missing...

so, it may well be a more satisfying experience to try ones' hand at
making things, even if very possibly in the end it may well all just
amount to nothing.


granted, I don't really buy as much into the cult of novelty or
originality either, as the existing forms and traditions make a good
starting point, and are, in many ways, powerful tools worth leveraging.

often, what real merit is there in "purity" and "paradigm"? wouldn't it
be better to just do something a little more familiar and friendly, even
if in some cases it would seem to involve slavish adherence to
technically pointless traditions and minutia?... this is really the cost
one pays, but it is at the deeper levels where one is more free to try
out some of the possibilities.


but, at which point one is ruled by their tools, rather than the other
way around, something has gone wrong.

it is like the folly of traditional VM/"Platform" architecture:
they don't so much aid the user to do new and interesting things, so
much as they tend to enslave the developer into whatever set of tools
and development mindsets and application domains as were deemed
important to the original developers.

one is far better IMO just writing apps in C, as even if they get some
of the ire and disdain from the Java and C# people, one is far more free
when writing in C.

but, it doesn't need to be this way, as there are still some interesting
things worth observing and learning from these architectures, and maybe
one may even go as far as to try their hand at improving on them...


so, yeah, I am implementing a new VM and language...
yes, the language sort of resembles a mix of Java, AS3, C#, and a few
others, but the design motivations and underlying architecture differ
notably, and this may well effect things more notably than the syntax.

so, the syntax is a starting point:
it defines a sort of baseline for what the language is expected to be
able to do;
but, syntax alone is not a limit on what a language can do (a syntax can
do far more than the set of functionality usually exported for a
language, although sadly many have also fallen into a sort of "cult of
syntax sugar", where syntax sugar is far more prominent than actually
addressing core deficiencies).

in fact, a language with a "novel" syntax may well hide most of its
deficiencies:
there is less expectation for what things are possible (or "should be"),
and so many piles of "trivial limitations" will pile up, and then the
problems will be hidden under the carpet.

but, with a more traditional syntax, many such issues are a little more
obvious, as then people will note "I can do task X in language Y", and
missing a basic capability will often stand out somewhat notably.

granted, one is more open to criticism this way, as then, to claim to be
better than something, it will in-fact have to be better, and an
unsubstantiated claim will tend to be more readily apparent.

but, OTOH, is this really a bad thing?... it may well force the creation
of a better product overall, and people don't necessarily lose out.

a product with novelty and a lot of overt features may seem to be less
deficient than something else, but even if one can hide these things
from being seen, they will still be "felt" by those who use the system,
as the matter of "why is there no good way to do X or Y" may sit in the
back of one's mind (or why seemingly simple tasks should need such ugly
and complex workarounds...).

and, no, hype and promoting warm fuzzy feelings about the product is not
the solution, as eventually people will still be left cold.


not that a language can or even should try to provide for every possible
use-case, as this is itself going in the wrong direction. a
well-designed system shouldn't even really need to worry about use-cases
at all, as nearly any task should be able to be represented and
performed reasonably adequately (regardless of whether the "architects"
thought about it or not).

granted, it is a problem how much "good design" is such an elusive
thing. eventually, some level of trial and error is needed to separate
out what works and what does not (as one has to find out what works
well, and allow bad ideas to be put to rest).

one doesn't spot good designs by how great or impressive they seem at
the time, but rather that they often "just work" and tend to have a high
degree of "staying power". they are not so often "the next big thing",
but rather, "the thing one can't put away"...


or such...


_______________________________________________
fonc mailing list
fonc@vpri.org
http://vpri.org/mailman/listinfo/fonc

Reply via email to