Software that makes software

I just read an Interactions magazine article that was a bit muddled but pointed out,

The Industrial Revolution did not occur when we built steam engines, it occurred when we used steam engines to build steam engines.  The true information and computing revolution will not occur until we use software to build software; until we really use executable knowledge to create executable knowledge.

It’s hard to know specifically what this will look like.  Will it be more machine-learning based, probabilistic like the human brain?  Analogy-centric?  Evolutionary?  Based on internet-scale knowledge?  In any case, I don’t doubt that the essential “meta” argument is true.  Without software that can build software, computers will remain pretty dumb.

Simplifying the disciplines

Here’s what I’m thinking.

Science is all about gradually figuring things out by trial and error — making predictions and see if they hold up. You hope to be surprised. Engineering is all about clever hacks — breaking the rules while following the real rules. Design is about constraints — tradeoffs, compromises, and innovative solutions that manage to support all of the constraints. Art is about free association — thinking outside the box at all cost and doing something simply because it is new.

What is liberal arts? I think liberal arts is all about critical thinking — pushing an argument to its full logical conclusion. This is important in all of the above areas. For example:

  • Science: if light travels at a constant speed, the logical conclusion is that time slows down as objects speed up (special relativity).
  • Engineering: if transistors can perform a basic bitwise operation, then lots and lots of transistors can produce artificial intelligence (or at least Windows Vista).
  • Design: if computers are good for organizing information but bad for portability, pocket devices should be fully managed using a computer (iPod).
  • Art: if everyone paints only important or unusual objects, why not paint objects that are fully mass-produced and pedestrian? (Andy Warhol)

Do you see what I mean? It’s just another vindication of the liberal arts. I kind of got sidetracked from my original point, though, which was just new thinking about the essence of science and engineering.

Ray Kurzweil and the Future

I went to a talk given by Ray Kurzweil today. This is a man who helped shape the way I think, because I read one of his books at age 15 or so, and it was startling. As soon as he started talking today I knew I had seem him before… it must have been a similar talk at MIT last year, or maybe a recording I watched online. The funny thing about him is that he talks about these crazy things that will happen in the future, in a totally droning voice like he’s so bored with all these obvious predictions. Also, you can’t argue with the guy. His numerical evidence is just way too strong. You have no grounds whatsoever to disagree. The only way you can beg to differ is by going outside the game — finding what he’s not talking about.

There are a couple of his points that I wanted to touch on here. An audience member said that a century ago people predicted that they would have more leisure time in the future; why isn’t that the case? And Ray basically pointed out that it is the case — most people work a lot because they want to, not because they have to in order to survive. Their jobs are a big part of who they are, what gives them gratitude. So, in many senses, that’s leisure. It struck me as slightly profound. Not working is boring. And if no one depends on you, what is the meaning of your life?

Another interesting aspect of Kurzweil is that he talks about all these exponential trends as if they are completely inevitable. Computer power doubling every year, gene sequencing doubling every year, brain imaging resolution doubling every year. And I agree with him 100% — when you look at those numbers, it does seem inevitable. But you also can’t forget that it only happens because real people do it!

He talked a fair bit about renewable energy. Apparently the amount of electricity in the world coming from solar power has been doubling every 2-3 years. Right now it accounts for around 1% of our electricity. If you follow the exponential trend, this means that in 15-20 years, just about all our energy will come from solar. I think this prediction has an excellent chance of coming true. But it’s interesting to compare Kurzweil with Ted Nordhaus and Michael Shellenberger, who argue a very similar thing in their recent book: climate change will be solved by massive investment in technology. The difference is that N&S are closer to the ground, advocating more research funds towards renewable energy technology. To Kurzweil, it will just happen because people like N&S and all the scientists will do their thing and make it so. It’s kind of amazing how he’s lifted himself out of the big complex mess of actually doing it. But if everything is preordained, what’s the meaning of life?

If I’m coming off as giving Kurzweil a hard time, I don’t mean to. Not only is he brilliant, he is in fact working hard with many companies on new research and advocating for research funding from his positions on government panels. I should mention that he became famous partly because he invented the first realistic music synthesizer, the first flatbed scanner, and the first robust optical character recognition system… among others. (And he wrote some damn good books — because, as he says, he can’t work on systems that are 15 years away, so he can only write about them.)

Based on current exponential-growth information technology trends and the estimated computational capacity of the human brain, Ray estimates that a computer will pass the Turing test (be able to simulate a human) around the year 2029. Many people argue that such a thing could never happen, but I see no good reason why not. I will be 45 in 2029. Who knows what the world will be like when extra human intelligence is cheap. Ray was quick to point out that we will use these technologies to extend ourselves — as we have with all past technologies — not to build artificial intelligence robots that take over the world — as is popular in sci-fi.

One last thing. It occurred to me that regardless of all the technological progress that has taken place, all the “social networking” that goes on online, I still just really want to cuddle with real humans. As the world becomes more connected and more overwhelming, we need to figure out how to make sure people feel loved and involved in their real world communities, and interact with real physical people. Yes, maybe in 50 years we will have realistic physical virtual reality, but that is too far away to worry about (I will be 74). I wonder what I could do in the meantime to help create more loving, physical, local communities.

There was a couple sitting next to me, about my age, and they were bored and “passing notes” by typing them on a cell phone and passing it back and forth. It seemed vaguely ironic… here was Ray Kurzweil, telling us that 10 years ago only a few people even owned cell phones. It had never even occurred to me to pass notes on a cell phone. It makes me wonder if I will read this 10 years from now and think, typing on cell phones, how old-fashioned…

When the details make the difference

I attended a talk some weeks ago that I’ve been meaning to write about. It was given by one of the chief something-or-others of Continuum, a design firm in the Boston area. He used the analogy of the light spectrum to describe a spectrum of design — “ultraviolet” on the one end referring to impractical but beautiful artsy design, to “infrared” on the other focusing on “design that’s almost invisible, but it makes you feel warm, so you go back and buy more.” This “infrared” end is what Continuum is all about.

For me, the most interesting part of his talk was his point that his favorite design problems are very constrained, with very little wiggle room to change anything. He pointed out that when this is the case, the little details can make all the difference. For example, his team worked on disposable diapers (for Pampers), and had a huge impact on their market share by carefully adjusting the smell of the diapers and by introducing slightly different diaper shapes for different developmental stages of the baby (because parents love to talk about the development of their baby).

The reason this is interesting is that as any product becomes commoditized (a process which is only intensified by globalization), the more the design settles, the less room there is for change, and the more the details make the difference. This means that software interfaces will improve as applications like word processing become commodities, because the competitive advantage will be gained on “little things” like the details of the user experience — beyond the feature set to how good the users feel when they use the product. As Continuum guy put it: as technological differentiation between products decreases, the value of customer experience differentiation increases.

Apple has always been very good at the user experience aspects of product design, so I think they will do well in the future. Indeed, Apple does not tend to develop new paradigms per se but new crucial tweaks that enhance the usability, the feel, the efficiency of the product. They do well in consumer markets (as opposed to corporate) because that is where products are sold on the whole experience rather than some sort of price/feature tradeoff decision made by managers.

Two kinds of stress

Stress is generally thought of as a bad thing, but it occurred to me last night that there are really two very different kinds of stress. The type which I find very unpleasant is based on fear; fear of not finishing something you are supposed to do, or in general fear of being unable to prevent an unwanted scenario. For example, “can I finish my thesis and graduate in time.”

In contrast, the other type of stress I see as part of what makes life worth living: the desire to do more than might be possible. This type of stress is proactive, based on things you want to do, and comes with excitement. I think it is part of what Cervantes means by the “impossible dream.” For example, “can I make my thesis really excellent in the time I have left.”

Stress about grades can also illustrate the difference: worrying about the negative consequences of getting bad grades vs. striving for good grades to achieve positive consequences. It’s related to the optimistic vs. pessimistic explanation styles described in positive psychology.

Writing in the electronic margins

I came across an interesting article about the importance of being able to “write in the margins” and how that functionality has been neglected in computer systems in favor of the designer trying (in vain) to figure it all out ahead of time. I love this quote:

The fuzzy intersection of official and unofficial data has never been a comfort zone for information technologists.

How true…

It also follows a theme that has been recurring lately, which might be summed up as “computer science is hard:” in a sense we are trying to re-create the world from scratch, which is a very difficult job! Paper gives you all sorts of abilities “for free” but every new function on a computer (such as the ability to “write in the margins”) must be explicitly designed.

Advice from Steve Jobs

Recently published was some really important advice from Steve Jobs. Well, he was just answering interview questions. But I take it as advice. On getting things right:

“At Pixar when we were making Toy Story, there came a time when we were forced to admit that the story wasn’t great. It just wasn’t great. We stopped production for five months…. We paid them all to twiddle their thumbs while the team perfected the story into what became Toy Story. And if they hadn’t had the courage to stop, there would have never been a Toy Story the way it is, and there probably would have never been a Pixar.

“We called that the ‘story crisis,’ and we never expected to have another one. But you know what? There’s been one on every film. We don’t stop production for five months. We’ve gotten a little smarter about it. But there always seems to come a moment where it’s just not working, and it’s so easy to fool yourself – to convince yourself that it is when you know in your heart that it isn’t.

“Well, you know what? It’s been that way with [almost] every major project at Apple, too…. Take the iPhone. We had a different enclosure design for this iPhone until way too close to the introduction to ever change it. And I came in one Monday morning, I said, ‘I just don’t love this. I can’t convince myself to fall in love with this. And this is the most important product we’ve ever done.’

“And we pushed the reset button. We went through all of the zillions of models we’d made and ideas we’d had. And we ended up creating what you see here as the iPhone, which is dramatically better. It was hell because we had to go to the team and say, ‘All this work you’ve [done] for the last year, we’re going to have to throw it away and start over, and we’re going to have to work twice as hard now because we don’t have enough time.’ And you know what everybody said? ‘Sign us up.’

“That happens more than you think, because this is not just engineering and science. There is art, too. Sometimes when you’re in the middle of one of these crises, you’re not sure you’re going to make it to the other end. But we’ve always made it, and so we have a certain degree of confidence, although sometimes you wonder. I think the key thing is that we’re not all terrified at the same time. I mean, we do put our heart and soul into these things.”

On management style:

“My job is to not be easy on people. My job is to make them better. My job is to pull things together from different parts of the company and clear the ways and get the resources for the key projects. And to take these great people we have and to push them and make them even better, coming up with more aggressive visions of how it could be.”

On managing economic downturns:

“We’ve had one of these before, when the dot-com bubble burst. What I told our company was that we were just going to invest our way through the downturn, that we weren’t going to lay off people, that we’d taken a tremendous amount of effort to get them into Apple in the first place — the last thing we were going to do is lay them off. And we were going to keep funding. In fact we were going to up our R&D budget so that we would be ahead of our competitors when the downturn was over. And that’s exactly what we did. And it worked. And that’s exactly what we’ll do this time.”

Of course, that’s why it’s amazing to have a huge pot of cash you can draw from. College endowments are very useful for the same reason (plus the fact that it earns interest).

Apple has really done some amazing work. And they are amazing at focusing on a small number of products.

“I’m actually as proud of many of the things we haven’t done as the things we have done. The clearest example was when we were pressured for years to do a PDA, and I realized one day that 90% of the people who use a PDA only take information out of it on the road. They don’t put information into it. Pretty soon cellphones are going to do that, so the PDA market’s going to get reduced to a fraction of its current size, and it won’t really be sustainable. So we decided not to get into it. If we had gotten into it, we wouldn’t have had the resources to do the iPod. We probably wouldn’t have seen it coming.”

“Things happen fairly slowly, you know. They do. These waves of technology, you can see them way before they happen, and you just have to choose wisely which ones you’re going to surf. If you choose unwisely, then you can waste a lot of energy, but if you choose wisely it actually unfolds fairly slowly. It takes years.

“We don’t get a chance to do that many things, and every one should be really excellent. Because this is our life. Life is brief, and then you die, you know? So this is what we’ve chosen to do with our life. We could be sitting in a monastery somewhere in Japan. We could be out sailing. Some of the [executive team] could be playing golf. They could be running other companies. And we’ve all chosen to do this with our lives. So it better be damn good. It better be worth it. And we think it is.”

Clean energy research

Man, I went to a cool talk today given by Ted Nordhaus and Michael Shellenberger who recently wrote a book called Breakthrough: From the Death of Environmentalism to the Politics of Possibility. Remember the essay I posted a while back called “Climate change is not an environmental issue”? They were basically backing me up all the way on that viewpoint. It’s always great when someone famous agrees with you AND gives you even better reasoning behind the position.

Their core message, however, which was not part of my essay, is that massive government spending on clean energy research is going to be the primary way we solve the climate crisis. They pointed out that massive government spending is what led to computing, the silicon chip, the economies of scale for the silicon chip ($1000 to $20 per chip in 7 years), and ultimately “silicon valley.” They also cited the very interesting fact that the international treaty banning CFCs (to protect the ozone layer) was not ratified until alternative chemicals to CFCs became available. Analogously, serious global warming treaties will probably not be passed until clean energy technologies as cheap as coal are actually available.

Their position is that carbon taxes are really only useful for raising the necessary money to massively invest in clean energy technologies – so that the true cost of these technologies become competitive with fossil fuels. They think an $80 billion per year investment will be what it takes. This is a lot, but pales in comparison to the defense budget of over $500 billion. This is reasonable for American taxpayers to swallow if they are convinced that it contributes strongly to issues they care about, such as national security and economic security.

Part of what’s amazing to me is that I was already fascinated by solar panels back in high school. Why was that? I guess it just seemed clear to me that the most efficient way to get energy would be to take it directly from its source: the sun. Every other method is incredibly indirect (fossil fuels stunningly so). Four years later, I put much of my savings into solar panel stocks (that was a good choice). And now we have a very clear case being made that solar panels may well be a major factor in tomorrow’s energy sources – it’s just going to take enough research and economies of scale to make them sufficiently inexpensive.

I bought their book (and got it signed) and am looking forward to reading it.

Presidential debate tidbits

I watched bits of the Clinton-Obama debate that aired tonight and it occurred to me that one of the things Obama does effectively is talk on the meta-level about his campaign. For example, he often says, “I wouldn’t be running for President if I didn’t think ____.” He also talks about how his campaign itself has proved his ability to inspire people. Talking on this meta-level makes him more believable in my eyes – it’s an invitation to “imagine if you were him” to see why, if you were him, you would do what you are claiming.

I also just have to put it out there that it’s much more fun to listen to Obama than to Clinton. Clinton makes me anxious. Obama makes me relaxed. I don’t think this has much to do with whether they will make good presidents, but I’m certainly more likely to listen to them on the radio/podcast if it’s a pleasant experience.

Visualizing data that doesn’t exist

By the way, I have a new way of thinking about Graph Sketcher (my software project): visualizing information about the future.

Lots of software lets you plot out data that you already have. But can you think of any applications that let you plot out data that you don’t have? At first glance, most people seem to find this whole notion crazy. But every day people need to make decisions about the future, based on very uncertain information. A lot of the time, it is overkill to fool around with formal predictive models, because the whole thing is so uncertain anyway. But at the same time it’s very helpful to visualize what you do and do not know. Hence: just sketch it in with Graph Sketcher.