Conal Elliot's Tangible Functional Programming work seems like an
interesting way to shrink the divide between using and programming.


On Fri, Mar 12, 2010 at 7:59 PM, Julian Leviston <[email protected]> wrote:

> Okay.
> Mostly it relates to the simplicity and difficulty level. Using a computer
> is generally seen as MUCH MUCH easier than programming one. Typing a letter
> is easier than expressing a Fourier transform in pascal, for example.
> Here, largely, programming a computer relates to expressing an algorithm (or
> expressing the specifics of accomplishing a goal in a real way) in a
> computer programming language which involves a specific and precise syntax.
> Using computers doesn't involve this. When using a computer, one can do
> anything one likes and *should* not generally cause the computer to complain
> about misuse (such as syntax errors, or segfaults, etc.)
> For example, using Automator on the Macintosh is not quite what I'd consider
> programming, although it has all the elements of programming. Neither, is
> moving 200 emails into a mail box in my email program, though that is an
> operation that could also be considered programming.
> Specifically, it involves how much work (in terms of procedural steps) and
> therefore often how much effort it takes one before one gets to the point
> where the computer knows what it is that we'd like it to do. "Speaking" a
> language other than one's own is NEVER as easy as speaking one's own
> language, hence the bar for achieving fluency is much higher than USING a
> computer, which doesn't usually involve learning a new language to express
> to the computer what one is trying to achieve.
> Granted, using a computer involves User Interface "language" learning, and
> this could be considered a kind of programming language, but moving an input
> device and pressing a single button is something so simple and direct that
> it falls on the side of using a computer.
> So, programming is complicated computer use, essentially.
> Now, my opinion is that neither programming nor using a computer is a
> relatively simple task these days. It *must* be possible to unify a system
> according to the truth of the underlying and most basic goals of a computer
> system in a generic sense.
> Our user interfaces are absolutely crap, to put it lightly. It could be that
> things like the iPad will change this, but I still think that they're
> fundamentally coming at things with an approach that is quite fundamentally
> flawed. It still seems to be coming at things from an application-centric
> point of view rather than a goal-oriented point of view.
> The reason seems to be that a goal-oriented point of view is just WAY TOO
> MUCH WORK for most people to get their heads around.
> I don't think it has to be... but it seems like it might be a pink thought
> amidst a blue field... ;-) Ie no-one is interested in this stuff - we're all
> too busy reinventing the next car that has four wheels.
> The computer system must be designed in such a way as to realise that it is
> indeed a smaller part of a much larger system that is under constant change,
> and therefore can adapt to this change (for instance, I have three
> computers, and they should work in concert to achieve my goals with me...
> sometimes I would like to lend my computers to other people temporarily to
> allow them to use them, and this is part of my goals, etc. etc. as the
> contexts shift, so does my computer usage, yet all the while the computers
> are obeying their prime directive, which is to help ME to achieve my goals -
> inclusive of all these other goals such as helping other people etc...).
> Generally it's been "too big" for most people to take on this kind of
> stuff... but there *has* to be a simple approach that can tackle this...
> it's absolutely needed so we can get on with the bigger picture of achieving
> our goals rather than using computers. (ie computer use is a means to an
> end, not an end in itself).
> Julian.
>
> I propose: "using" a computer means inputting some data for it to interpret.
> One kind of data are "incomplete instructions" meant to be mixed with
> further input at a later point: those are programs. As we move forward,
> we'll keep finding better ways of structuring these "incomplete"
> instructions in a way that makes them both "easy" to complete (the way
> things are "easy" to use), and also are general in their purpose (what we
> intuit now as "programming").
> To reiterate - I'm not saying there's no difference between "programming"
> and "using", I'm saying the difference is a temporary artifact unique to our
> present state of affairs.
>
> _______________________________________________
> fonc mailing list
> [email protected]
> http://vpri.org/mailman/listinfo/fonc
>
>
> _______________________________________________
> fonc mailing list
> [email protected]
> http://vpri.org/mailman/listinfo/fonc
>
>



-- 
--- james mccartney

_______________________________________________
fonc mailing list
[email protected]
http://vpri.org/mailman/listinfo/fonc

Reply via email to