I suspect it was deliberately chosen to do this for the purposes of testing the disk; the sequence is random-looking so it exercises all the bits, but is also deterministic so that written data can be verified by reading it back and comparing without having to store a copy of all the written data somewhere else.
I love these posts. I don't properly understand the majority of what's being done, but a step by step of somebody solving a difficult problem in a space I know nothing about is so fascinating.
Can you explain what the problem is? I recently switched the mobile formatting so Google would stop complaining that my page wasn't optimized for mobile. But maybe that made things worse.
I left a more detailed reply (https://news.ycombinator.com/item?id=12514009) to the other person in the thread, but basically while trying to zoom I get sent to other posts or images.
I don't quite understand the problem. You say when you touch an image and let go, it navigates to the image as if you clicked on it. Isn't touching and letting go the definition of clicking?
Out of curiosity: what would it take to turn that disk back into a working boot disk? I can only imagine how difficult it must be to find an Alto _with two disk drives_ these days to dub a boot disk onto your scrubbed one.
Does the Alto have any sort of recovery environment? e.g: boot from the (3Mbit?) Ethernet, or boot from a floppy/tape, etc. that would aid in such a task?
The easiest thing would be to boot the Alto off a good disk, then swap the disks and write a good boot environment to the bad disk. (You can switch disks while the system is running.)
One of the guys working on the restoration (Carl) is building a FPGA-based disk emulator, which we could use to re-write the bad disk (as well as read and archive disks).
The Alto supports network boot over Ethernet; I'm working on a BeagleBone-based Ethernet emulator/gateway so that's another option. (The Alto's 3 Mbit Ethernet isn't compatible with anything modern, so I can't just plug an Ethernet cable into it.)
I think you can switch disks pretty much any time. The Alto doesn't swap to disk so the disk is only being used when you're loading a program or loading/saving a file. As far as how it's used, think of the Alto's disk more like a floppy drive than a hard drive. (Although since it takes a minute for the disk to spin up to speed, you don't want to switch disks too often.)
Hah! Nice job on inverting the random number generator. And note that RNGs for testing data patterns have much less stringent requirements than cryptographically secure RNGs :-). I'm hopeful that a known good disk will actually boot something.
Getting a good RNG on 1970s hardware is almost impossible without some kind of custom device. There is no end to examples of horrible RNGs from that era, sometimes manifesting in amusing ways. There was an implementation of Minesweeper that naively used the rand() call from C's standard library and generated utterly predictable boards.
I am rather impressed at how the author of the article actually tracked down the appropriate RNG function to verify exactly what happened. This is only possible because the PARC community was so small there would only be a couple of ways something like this could have possibly happened?
What made it possible to track down the RNG function was that the Computer History Museum has a big archive of Alto code [1]. By searching that site with Google, I found the random number source code. Of course figuring out the code is a bit of a challenge since it's in BCPL or Nova assembly.
Hopefully as part of our Alto restoration we'll be able to add more old Alto disks to the online archive. Maybe the disk labeled "Alan Demo" will have an exciting long-lost Alan Kay demo on it :-)
They'll have to find or build a 3Mb/s Ethernet anyway. Ask around; maybe someone still has a 3Mb/s to 10Mb/s gateway. If they can get to 10Mb on coax, they can get an off the shelf box to go to 10baseT and to the modern world.
The Living Computer Museum is working on a 3Mb/s Ethernet gateway. I'm also looking into making one with a BeagleBone (which is why I've been looking at its PRU microcontrollers lately).
Reading this effort is as exciting as watching a good detective show.. I'll almost be disappointed if they don't come across any other blocking issues on the way to success (as long as they find a way to overcome it, of course ;-)
> The biggest impact of the Alto was in 1979 when Steve Jobs famously toured Xerox and saw the Alto and other machines. When Jobs saw the advanced graphics of the Alto and Star, he was inspired to base the user interfaces of the Lisa and Macintosh systems on Xerox's ideas, making the GUI available to the mass market.
The reference is " Malcolm Gladwell describes Steve Jobs' visit to Xerox in detail in Creation Myth."
> The closest thing in the history of computing to a Prometheus myth is the late 1979 visit to Xerox PARC by a group of Apple engineers and executives led by Steve Jobs. According to early reports, it was on this visit that Jobs discovered the mouse, windows, icons, and other technologies that had been developed at PARC. ... It's a good story. Unfortunately, it's also wrong in almost every way a story can be wrong. ...
> Both the Macintosh and Lisa projects were underway before the 1979 visit. Documents in The Book of Macintosh (a collection of essays, technical specs, and brainstorms written by Jef Raskin on and others) dating from the fall of 1979-- months before the PARC visit-- show that the Macintosh was going to feature user-friendly interfaces; a screen that could handle multiple fonts (that is, bitmapped screens); graphics capabilities; and a graphical input device. ...
> Finally, as several authors have pointed out, there were actually two visits by groups from Apple to Xerox PARC in 1979. Steve Jobs was on the second of the two.
Chapter 23 of "Dealers of Lightning" points out that everyone describes the Steve Jobs visit(s) in contradictory ways. "No anecdote from PARC's history is burdened by so much contradictory testimony. PARC engineers disagree about who delivered what portions of the demonstration; on how many demos there were and when they took place; whether Jobs and his people saw an Alto or a Dorado..."
I recommend "Dealers of Lightning" for the best description of Steve Jobs' visits and their impact on him. The short summary is there were two visits to PARC in December 1979. Adele Goldberg tried to demonstrate just the publicly-announced technology (WYSIWYG browser, mouse, drawing program) but was forced by management to show Steve Jobs all the secret stuff (e.g. Smalltalk, overlapping windows). Steve Jobs considered the three mind-bending things he saw to be the user interface, object-oriented programming and networking, but he was "saturated" by the UI and missed the significance of the others. The book goes into detail on exactly what Apple was doing before the visit and how it changed their plans. The book has a whole chapter on this, way more than I can cover here, so please read the book if you're interested in this.
Your comment reminded me of this interview [1] with Steve Jobs:
"And they showed me really three things, but I was so blinded by the first one that I didn't even really see the other two.
One of the things they showed me was Object Oriented Programming. They showed me that, but I didn't even see that.
The other one they showed me was really a networked computer system. They had over a hundred Alto computers, all networked, using email, et cetera, et cetera. I didn't even see that.
I was so blinded by the first thing they showed me, which was the Graphical User Interface. I thought it was the best thing I'd ever seen in my life. Now remember, it was very flawed; what we saw was incomplete, they'd done a bunch of things wrong, but we didn't know that at the time. Still though, the germ of the idea was there, and they'd done it very well.
And, within, you know, ten minutes, it was obvious to me that all computers would work like this. Basically, they were copier-heads that just had no clue about a computer or what it could do. And so they just grabbed defeat from the greatest victory in the computer industry. Xerox could have owned the entire computer industry today. Could have been a company ten times its size. Could have been IBM. Could have been the IBM of the 90s. Could have been the Microsoft of the 90s."
Not only, but it's a very Aristotelian perspective on human interaction. I'd caution not to cheat rich analysis through binary thinking, but then again, I'm not the billionaire here...
I'm more interested in what was going on before the visit, because the myth is that Jobs was like Prometheus. To counter that myth, we must look into what people knew earlier. Quoting from the Standford link I mentioned before, at http://web.stanford.edu/dept/SUL/sites/mac/parc.html :
> Both the Macintosh and Lisa projects were underway before the 1979 visit. Documents in The Book of Macintosh (a collection of essays, technical specs, and brainstorms written by Jef Raskin on and others) dating from the fall of 1979-- months before the PARC visit-- show that the Macintosh was going to feature user-friendly interfaces; a screen that could handle multiple fonts (that is, bitmapped screens); graphics capabilities; and a graphical input device
It also comments that the myth "assumes that Xerox PARC's ideas weren't well-known before Apple engineers saw them, or had even been actively kept hidden from public view." I see echos of that in your own comment that Smalltalk was a secret. As that Stanford link points out "Bill Atkinson had read about Smalltalk as an undergraduate. Some had worked at PARC: Jef Raskin spent time there during a sabbatical year at Stanford, and had a number of friends who were researchers there."
I think you have misremembered the part about Smalltalk and overlapping windows being a secret? Ingalls wrote "The Smalltalk-76 programming system design and implementation" for POPL '78, in Proceedings of the 5th ACM SIGACT-SIGPLAN symposium on Principles of programming languages (doi:10.1145/512760.512762). It shows overlapping windows for figures 1-3, where figure 1 is "A typical Smalltalk display." It also has "if the stylus is depressed within the window, the content is
redisplayed, thus showing it “in front of” the other windows", which is a description of how overlapping windows works.
As some additional background, you mentioned "forced by management to show Steve Jobs all the secret stuff". This is because, and quoting again from that Stanford link, "Xerox's venture capital arm had recently made an investment in Apple, and had agreed to show Apple what was going on in its lab."
A lab, by the way, which received thousands of visitors each year.
Jobs may not have been Promethean in the foresight department, but he made a pretty good go of it in the "having your liver taken out of you" department.
No surprise that Jobs would fixate on the UI thing. He never struck me as a techie, but someone that got into tech because it was easy to mesmerize people with. The UI was a perfect tool for that.
Yeah, that makes a certain kind of sense. I'm spending some spare time listening to interviews with old Atari employees on the ANTIC podcast and one thing comes through again and again. Lots of investment was being made in networking and programming languages and almost nobody outside of PARC had any real ideas about GUIs. A couple Atari employees who came from PARC at the time tried to get it into products, but just couldn't.
Apple likewise didn't produce a GUI for their contemporary computers.
The most that people seemed to really be shooting for was higher density text displays and colorful graphics, but nobody had really figured out the magical combination of manipulation device and interface metaphor and Jobs did just "get it" and understood why it would be a major differentiator - few people had more than one computer to network, and few people liked programming.
The Lisa and Macintosh projects interfaces pre-Xerox visit were remarkably different from post-visit. The Macintosh pre-early-1980-Xerox-visit was based around soft keys. Yes it had a bitmapped graphical display, but it was not a mouse based user interface as we know it, it was more like what Raskin did later with the Canon Cat.
The office desktop with icons interface that shipped on the Lisa is very clearly influenced by the Xerox Star office system more than it is by Smalltalk. And the Mac copied the Lisa.
In the link you pointed to shows that by summer of '80 there was no longer support for softkeys and there was support for a mouse. The primary documents at http://web.stanford.edu/dept/SUL/sites/mac/mouse0.html only start talking about a Macintosh mouse in spring of '80.
This fits well with a transition from Canon Cat UI to a PARC-derived UI, as you've described.
> the Macintosh was going to feature user-friendly interfaces; a screen that could handle multiple fonts (that is, bitmapped screens); graphics capabilities; and a graphical input device.
There is a big difference between having a bitmapped screen and graphical input on one hand, and having a Starlike WIMP user interface on the other. This sounds like it was written by someone who has never seen anything else.
I think you have drawn an incorrect inference from that text.
Raskin, the founder of the Macintosh project at Apple, was a visiting scholar at Stanford for a year. He and others in the AI lab "were tightly intermixed with the people at PARC" (Quoting http://web.stanford.edu/dept/SUL/sites/mac/primary/interview... ).
I believe he knew what a Starlike WIMP user interface entailed.
I don't think Raskin liked WIMP very much. You can see what his original vision for the Macintosh was in the Canon Cat, which he went on to develop after leaving apple.
I had read a lot about the Cat, but never saw it in action, so I decided to look for a video. This is a fascinating view into Raskin's user interface concepts. The world might have been a very different place if Jobs hadn't interfered with the Macintosh project.
If you're near the SF Peninsula and are curious to see a Cat in person, I have a working one here in Menlo Park, and an open invitation to any HN regulars who are interested in trying it out.
It is indeed a very different UI concept! No pointing device. No graphics. Not even cursor keys, instead it has LEAP keys to navigate.
I keep thinking I should sell the machine since I don't really do anything with it, but it's here for the time being. Email is in my profile.
I lived in the Bay Area for 15 years, but I don't any more. Thanks for the offer. I would love to see it.
There seems to be very little information about it on YouTube. It would be great if you could make some videos about it, or lend it to someone who could. I would do it if I were still in California. I have really been getting into documenting obscure retro computer stuff recently. Mostly old Macs. I have 14. :-)
I agree that its a great story. Like all good stories it tries to distill the point from a much more complex and nuanced world. And because the world is more complicated than narrative fiction, there are always other aspects that contribute or can be portrayed in different ways.
The reality of things as I came to understand them were these; Jef Raskin was passionate about user interface design like few people I have ever known. The folks at PARC were excited about the possibilities offered by the advanced state of the art in graphics and input devices and they had some really excellent thinkers and engineers who were implementing really different ways of interacting with computers. Steve Jobs was passionate about design with strong opinions on what was "right" and what was "wrong" about any given product feature.
Now you have to put that into an engineering context. Apple is building a new computer system, one of its, if not THE, lead designers has ideas about how the user will interact with it. The company is pushing back on these ideas because they are "radical and new" and questioning how the engineers know that this will be a better way to build computers than the existing examples in the Apple II and CP/M machines of the day. So this conversation within Apple gets more and more energetic. If you are in an engineering company and are leading any sort of project you will have this experience. You propose something different than what the company expects, and the company pushes back on that proposal in a bunch of different ways. In an effect that is oddly reminiscent of how a band-gap forms in a PN junction, groups line up for or against the concept. And it percolates up the management chain until someone in authority "decides" and shuts down all of the side conversations.
Having had conversations with various people both on the Xerox side and the Apple side who were part of that experience, I concluded that Steve Job's visit to PARC where he saw a realized example of what Jef was trying to push through, convinced Steve that it was better design.
I based that conclusion on stories about how the conversation within Apple changed once Steve had seen for himself the possibilities presented by a window based system with a pointing device. Jef related in a talk that he gave about interface design that resistance to the ideas essentially evaporated once Steve was on board.
So is that the "real" story? I don't know. It is the most likely explanation of events that followed all of the statements I heard from people who participated in the design of the Macintosh/Lisa and people who build XDE and Star (the Xerox Development Environment and their office suite). Does it matter? I don't know that it does, the origin story for the Macintosh is what it is.
Jef Raskin was passionate about user interface design, but had a completely different approach. The realization of Raskin's thinking is the Canon Cat.[1] Video demo: [2] It's a machine for text editing with the minimal number of keystrokes. There are special "Leap" keys, and a "Front" shift for extra characters on keytop fronts.
There's no pointing device.
It's an elegant concept, but nothing one would think of as a GUI today. It's more like something that would appeal to Markdown enthusiasts.
This doesn't mean Macintosh wasn't inspired by Xerox , even if they started work with Macintosh and Lisa there's is big chance getting first hand look at Xerox they have changed their approach drastically. Even if Android was in development before iphone debute they got drastic inspiration from iphone UI.
I didn't say otherwise. It's absolutely clear that ideas in Macintosh were inspired by PARC, just like ideas at PARC were inspired by SRI.
My complaint is about the assertion that "[Jobs] was inspired to base the user interfaces of the Lisa and Macintosh systems on Xerox's ideas", when the inspiration came before that visit, and was not due to Jobs.
1. If the value is 0, output the magic number.
2. If the value has only its high bit set, output 0.
3. Otherwise, shift the value to the left
4. if there was an overflow (the high bit was 1 before the shift), xor the value by a magic constant.
For certain values of the magic constant, this has the property of generating every integer in the range exactly once.