Live data from Hacker News

Alan Kay has agreed to do an AMA today

news.ycombinator.com

711–720 of 931 posts

Re: Alan Kay has agreed to do an AMA today

#711
post #702

Earlier quoted context omitted.

Keep on turning the crank ... What if you need something but don't know its name or URL? Etc.

My example definitely presumed things like service discovery which gets you to URLs. But I think I see the larger point you make about what if you don't even know what kind services are available (which my example assumes you already know) and once told of their existence how do you negotiate their capabilities and usage (my example, as I envisioned it, completely falls apart here without some major plumbing which mi…

One thing I've found about the web, as it exists, is that the people who set up a system for the outside world to use change it over time. The URLs change. The CGI their service will accept changes. As things exist now, a program must use "sticky" names, and if a name changes, all of a sudden the connection is broken, even though the exact same functionality still exists. It would be good if a program could find the functionality it needs based on a functional description of what it needs, rather than a name. That gets more to what's really important. I once complained to Alan that Smalltalk had the same problem. If I change the name of a class, all of a sudden all the code in the system that needs that class could no longer find it, even though I had changed none of its functional code. This seemed like an extremely brittle scheme for finding resources. The name is not the important thing about what a program needs. It's just a reference point that does nothing. Names are still good, because they allow us to quickly identify resources, but they should mainly be for us, not the program, because when you really think about it, a program doesn't care what something is called.

Re: Alan Kay has agreed to do an AMA today

#712
post #40

What do you think about functional languages like Haskell, OCaml etc ?

They need a much better idea of time (such as approaches to McCarthy's fluents). And then there is the issue that we need to make "systems" ... I like what a function is, and this idea should be used, but I think it is better used rather differently ...

Are you familiar with Functional Reactive Programming (FRP)?

Re: Alan Kay has agreed to do an AMA today

#713

Earlier quoted context omitted.

I don't think it was hyperbole and I am being 100% serious. You make a good case that PARC contributed $35+ trillion in value, of which Xerox was only able to capture a portion. If we extrapolate out an exponential trend from forty years ago, a quadrillion seems like it might be about right. If I'm doing my math correctly, it is only about $100k value/person. Companies will soon be doing $1 trillion in annual revenue…

I don't dispute the figure, but in most cases when I say that phrase I'm trying to be hyperbolic to make a different point

Maybe we can talk about ways context should be changed?

I still don't walk into a store with my phone and then quickly walk out with exactly those items I predetermined. Occasionally I will use my phone as a list, but a small piece of paper is easier to reference while in the store. I don't ever see anyone else doing any better and most never use their phone or any other device.

I think this means that we do not yet have true personal computers.

What might be the most important context to change/solve?

Re: Alan Kay has agreed to do an AMA today

#714

It is not unlikely that you will never get to the same league as 'the inventors'. Most people are mediocre at everything they do and will always be. Most likely that includes you. We live in a culture that doesn't just tell everyone that they can easily outgrow mediocrity, no, this culture tells people they are above it from the very start. The following advice doesn't apply to geniuses or those who can be, but it ap…

At first, I was tempted to see this as a disappointing comment, promoting the idea of "If you didn't understand this early, you're not going to, no matter how hard you try, so stop trying," but I think what you could really be saying (correct me if I'm off) is that just because you want to do something, doesn't mean you know how to do it. So, trying to change things for the better takes some serious preparatory work that takes some time to do, learning alternate perspectives that will help you understand better what's really going on, and what tendencies people have that can be used, if people are willing, to help them realize what I've just described. However, if you don't have time for that, just acknowledge it, but also understand that you're not going to have a positive impact on that goal, because you haven't gotten out of your common sense perspective and natural urges, which are only going to make the problem worse if you try to make that impact, because you're not going to understand what you're doing. The comment Alan made at https://news.ycombinator.com/item?id=11940497 is indicative of this concern. However, in defense of this thread, I think everything that Alan has been talking about in here is an attempt to guide people toward learning how to learn so that for those who find the opportunity, they can give that advice a try, and see if this really is for them or not.

Re: Alan Kay has agreed to do an AMA today

#715

Earlier quoted context omitted.

few really good managers of researchers Bob Taylor has been generally praised as a great manager, and I believe them of course. But when I heard stories of his management style, it seemed to go against every instinct we have on how to foster creativity. Could you comment on that? Also, in terms of funding, I wonder -- haven't things changed? Wasn't funding more important in, say, the 1960's and 70's due to the cost o…

As Alan has said, the importance of funding is more about finding the problem. There's a lot of wandering and false leads involved (though, finding out the false leads is nevertheless valuable. It's still new knowledge). In terms of hardware, the thing to anticipate is what computing power will be necessary for accomplishing things decades from now, and paying the bill for that, not considering what one can buy from…

Using funding to find the problem is inefficient; side projects are a much more distributed and efficient method and they don't need funding.

As for hardware, you're repeating what's clear. What I'm saying is that you used to have to purchase the future but now you can mimic those coming changes and, while slower, offer perfectly acceptable performance.

I guess I'm trying to lead Alan to say something to the effect that the next PARC can be groups, working together, on their own time, over Skype. I'm not sure he believes that but I do.

Re: Alan Kay has agreed to do an AMA today

#716

Alan, while trying come up with a good question, I learned you are a musician. Great! As a fellow musician (also jazz and classical) I'm curious whether you feel this has influenced your engineering.

I'm not really an engineer -- but yes music furnishes many good parallels and metaphors ...

Glad to hear it! I would certainly agree.

[Do you prefer "[computer] science", "design", or another term? I personally get a bit queasy about calling it "science" when the field isn't centered around experiments and their analysis. Moreover "sciencing" is not a verb :).]

Re: Alan Kay has agreed to do an AMA today

#717

Many mainstream programming tools feel to be moving backwards. For example, Saber-C of the 1980s allowed hot-editing without restarting processes and graphical data structures. Similarly, the ability to experiment with collections of code before assembling them into a function was advance. Do you hold much hope for our development environments helping us think?

Yes. I think they have been slowly getting better. Visual Studio has let you do hot code editing for over a decade now, they call it "Edit and Continue"[0]. Only works for some languages (C#, Visual Basic/C++). It also lets you modify the program state while stopped on a break-point with code of your devising. Most browsers also let you adhoc compose and run code without modifying the underlying programs. Thanks to h…

I don't know in what context "hot editing" was used to start this thread, but what I read in it is the idea that you can change code while it's running. Edit and continue has a different feel to it, because it works by a different method, by literally patching memory that the suspended thread is going to execute. It has the convenience of stopping the execution of the program before the patch is done. What "hot editing" in, say, Smalltalk has been able to do is you can have a live program running, you can call up a class that the thread uses, change the code in a method, compile it, while the thread is still running, and instantly see the change take effect. The reason it can do this is that method dispatch is late-bound. In .Net it's bound early. Late binding allows much more of a sense of experimentation. You don't have to stop anything. You just change it like you're changing a setting in an app., and you can see the change instantly. This gives you the feel that programming is much more fluid than the typical "stop, edit, compile, debug" cycle.

Re: Alan Kay has agreed to do an AMA today

#718
Is there any instructions for getting the Frank system (that you show off at talk) on a Linux computer? Even instructions with some missing steps to be filled in. It would beat recreating things from scratch from glimpses.

I find it much easier to explore with a concrete copies that can be queried with inputs and outputs, even if they are far from their platonic ideals. For example, the Ometa interpreter I wrote recently was much easier to make by bootstrapping the creation of an initial tree from the output of an existing implementations of Ometa.

Re: Alan Kay has agreed to do an AMA today

#719

Earlier quoted context omitted.

Yes. I think they have been slowly getting better. Visual Studio has let you do hot code editing for over a decade now, they call it "Edit and Continue"[0]. Only works for some languages (C#, Visual Basic/C++). It also lets you modify the program state while stopped on a break-point with code of your devising. Most browsers also let you adhoc compose and run code without modifying the underlying programs. Thanks to h…

BASIC also did this on pretty much every microcomputer in the 1980s.

Kind of, but it was clunkier. You could Break out of an executing program, edit the code you wanted, and then type CONT to continue execution from the break point. The state from that point forward might not be what you want, though. At least inside VS it tries to revert state so that the revision executes as if the state came into it "clean."

Re: Alan Kay has agreed to do an AMA today

#720

Earlier quoted context omitted.

While the methods are different from what Alan has espoused in the past, I'd like to believe the goals are very well aligned.

But are "the good goals of the past" good enough goals for today and tomorrow?

I would hope not. But, based on your work and other comments here, I think we'd agree that our collective sights have been set lower for no good reason. If the goals of the past cannot be fully realized, what hope can we have for those of today and tomorrow?

Concretely, I follow existing languages like Agda, Lean, Haskell, and Rust for pushing the envelope on language semantics, compiler ingenuity, and library abstractions; and http://unisonweb.org/ and http://www.lamdu.org/ for pushing the envelope on the programming workflow itself. While I don't believe editors and languages are orthogonal problems, I do believe there is enough independence to make pursuing these fronts separately in parallel worthwhile.

[Of all of those, http://unisonweb.org/ might especially fit your interests, if I understand them correctly.]

Post reply on HN