Cool stuff to look at
Steve Yegge gave a nice talk at OSCON, What would you do with your own Google?, compelling us all to focus on math, stats, machine learning, and the understanding the core fundamentals. We should be working to make the world a better place! Use our knowledge of scaling and systems, to solve big, important problems (medicine, cancer, etc.) not on optimizing ads or cat pictures. From this talk, I think we should all spend an hour each day on learning and self-improvement!
Alan Kay has a nice talk, Programming and Scaling (also at LtU), where he carefully, and patiently explains that our software today is tinker-toys. We haven’t raised our level of consciousness, we aren’t innovating ideas, and our languages aren’t powerful enough. I like this because, at the end of the talk he demonstrates how to stitch pieces together with greater effect: OMeta.
Ungar has a video given at Stanford called Self and Self: Whys and Wherefores where he shows clips demonstrating the Alternate Reality Kit . The ARK, in my opinion, represents alot of what Kay has been doing in Squeak. Ungar, uses these clips to argue that “simplicity begats uniformity begats malleability” (Randy Smith). When designing a system, we should try to keep it small and elegant. This is not just an aesthetic issue, but it’s an engineering complexity issue. By striving to keep the system small, we factor out the core ideas behind the system. This helps use to explicitly identify the underlying similarities of what we are trying to model. This uniformity make for a better system, and gives it a cohesive framework. You’ll notice the same lesson is available from Unix, where Thompson and Ritchie credit the idea of ‘piping’ with a fundamentally better means of program interactivity, and the ‘file object’ as the enabler. (The file interface was later improved in the Plan 9 OS). The uniformity can also be brought to the fore, by language. A core language for expressing the core ideas. You should also not add to the design of the language by looking at clever examples that show off the feature. Instead, step back, and see if the new rules fit in with the principles of the system.
These demos of old systems (especially the Mother of All Demos (vid)), really pack a punch. It kills me to think that we’ve been getting it wrong for so long. The mediocre triumphs because our brains are too slow. As Kay observes in the talk above: We can’t conceptualize our future except by baby-step-iteration of the present. This is a sad state of affairs.