Follow by Email

Friday, December 30, 2011

Different Modes of Thought

A good friend found this link earlier, about how renaissance people think: shifting from one mode of thought to another. And I found myself in those words somewhere between rational thought and experiential thinking. How does this apply to me? Do I shift constantly, or do I exist on both sides?

When I get into a rational frame of mind, I can organize and probe a complex set of information. I can make sense from randomness. I can put it all together.

When I get into an experiential frame of mind, I can create music. I can draw interesting designs. I can understand how another person is thinking and be considerate. I get the feeling that most people have to contain both sides in some quantity or another: the thinker and the creator.

Rational People

I know that there are some people who are pure rational thinkers and very little empathy. I have met a few and they are sometimes quite creepy. Some people are very deep into this and can do amazing things. They are great resources, for sure. When rational thought reigns over empathic thought, you can easily end up with a sociopath. This can happen when they are taught bad values from the very start, or if they aren't taught the right ones, I think. Such a person has to learn from scratch how to interact with others and sometimes they become very practiced. And sometimes they are misunderstood.

I had a friend named Bob Lansdon. Really he was Tom Hedges' friend, having met him at Ruddock House in Caltech, but I came to know him pretty well, since he contracted for Fractal Design. He was responsible for the logic behind the first watercolor brush in Painter. Tom did the programming, but Bob figured out some interesting things about watercolors in the physical sense. Bob was a pure rational thinker. He was constantly involved with academia and working on his PhD. He was, as we sometimes put it, an odd bird. I must thank Bob because he turned me onto Fourier Transforms and it was through Bob that Tom Hedges first learned of fractals at Calma in the late 1970s. I did a lot of work on fractal branching in the early 1980s and had access to a raster plotter. I even presented a fractal poster to Benoit Mandelbrot at a SIGgraph once. Bob was a tragic figure, because we never could figure him out. I remember one day in 1994 that Bob came into our office (Tom, John Derry, and I had the same office the Fractal Design building in Aptos then) and was muttering about his PhD. He showed us his certificate and we congratulated him but we were all working on deadline for some version of Painter. After he left, we never saw him again. He committed suicide in a park in Berkeley a couple days later. Tom and I beat ourselves up over it, and the only thing we could figure was that, when he finally got his PhD he figured his life was over and had no more to contribute.

Later, in Painter 6, I implemented a new watercolor brush, with a donor-receptor model and multiple layers for the water to transport the ink and a paper layer for the ink to dry onto. A Margolus-Toffoli cellular automata model was used in the transportation of the ink-bearing liquid. Bob Lansdon showed me their work. Also, the whole model for how watercolor actually works and how it could be simulated was heavily influenced by talks with Lansdon years earlier. But it wasn't practical when Bob was around. So the watercolor feature in Painter 6 was a tribute to Bob.

Experiential People

There are also people who are completely in the experiential mode. I have met a few actors, and they have matched this one-sided profile quite well, which is why the best of them are so good at ad-libbing: they are creative. The most creepy thing is to see a person that has to act to live, that have to be something else to "be" at all. Empty vessels that need to be filled up with something/anything. Why are they so good at portraying bad people? Poor Heath Ledger was probably a very good person, but one thing is certain: her was a really good actor. Clearly, after he portrayed the Joker in The Dark Knight, he had learned accurately to be a sociopath. I can't imagine living a character for weeks on end and not having it affect me in some way. In Heath Ledger's case, perhaps it somehow contributed to his death: pure speculation.

Actor Daniel Day-Lewis is famous for totally taking on the persona of the character he portrays. His zeal at becoming the character has led to many unusual circumstances.

What Mode am I In?

Now I sometimes will be asking myself what mode I am in. When I sit at the piano and play, I improvise. Improvisation is a creative art, so it is experiential. But I can also see the chord sequences in my head, and understand the chromatic relationships between the chords. I can feel the music, I can sing and play simultaneously, but I can also tell my fingers which patterns to play, and how the rhythms interrelate.

When I play a Beatles song, I often put my own spin onto it, interpreting it in a new way. I have long since given up on performing them in the original mode that they were recorded: once you have done that, then you yearn for the song to mean more to you. It just has to be changed up.

There's no doubt that I exist in both the rational and the experiential mode simultaneously.

When I program, managing a complex project, I exercise my rational thought processes to the limit. But I'm always looking for a new way to look at something. This is the creative side peeking through.

Again, both sides are operating simultaneously. Perhaps one side dominates, but they are definitely both there.


  1. Perhaps if we improve our fundamental models for software engineering, hopefully we can spend more time being creative and less time unraveling spaghetti code.

    Have you looked at Scala?

    1. It is amusing that you should post on the expression problem, wince Phil Wadler is a childhood friend of mine (6th grade).

      I used to be involved in language design and such things. But I find Objective C to be perfectly fine for development. And C for gnarly computational work. But usually, I do the detail work of image processing and such in OpenCL, which runs on a GPU. You see, I am in the fast lane and things such as dynamic typing aren't generally my cup of tea.

      Nonetheless, I do see the wisdom in such pursuits. Developing larger and larger projects is a discipline that I have a knack for. OOP is necessary for this.

    2. I can understand that you are more focused on creating. I am not sure if we can achieve a big breakthrough with programming language design that would improve upon the tools you are currently using, but I currently very interested in this area, and I may have a few surprises up my sleeve yet.

      I read that Objective C does not support mixin multiple inheritance. It probably doesn’t have a bottom type, higher kinds, etc.. All appear to me to be critical things for the wide area modularity and reuse. But I still have to prove this. I mentioned in the Hackers blog that Objective C may not protect against buffer overruns and capability security model aided with pure functions (mentioned Joe-E research). Again all things that have yet to sufficiently proved.

      Apparently Objective C doesn't have as powerful GC as Java, and no GC on iOS.

      I think it was Bob Landson who worked near my cubicle and he and I had a long conversation one day out in the parking lot in 1993. He was very interested in exploring wavelets. It felt like he needed someone to talk to. He didn't want to stop talking and it was getting dark. I can't remember all the topics of our conversation, but I have some vague memory of coming away with the impression (not that he said he directly) that he felt out of place perhaps because of lacking implementation discipline or programming skills. He was a very nice person but I also came away with the impression that he had lots of fuzzy ideas (or maybe I just didn't understand the math well enough at that time) and at the time I was more interested in hearing about practical applications of theories and implementation strategies. I sensed that he was floating away from reality or something like that. I had my own issues at the time so maybe I am projecting my own emotions at the time. I am not sure if this is appropriate for a public blog. Feel free to edit any portions out. I was sadden to read about Bob's passing. I think at that time all of us were so busy and preoccupied. Seemed he really needed a friend. I am trying to say I sensed something was not right. I doesn't totally surprise me. But I have this strange ability to sense things before they happen. I sensed my sister's murder about 2 months before it happened in 2006. I have published articles, one in Oct 2010 where I predicted silver to go from $22 to $45-$48 before summar 2011, then fall to $25-$27. I have another published article in Jan 2010, where I predicted exactly gold price moves through Aug 2011. And I don't have alternative predictions out there during that time.

      There are many other examples of this. It is eerie. It is like I see a pattern and am able to see the future from it. Sometimes it is rationally thought out and explained, and other times it is just intuitive.

      I have also written a lot of nonsense ;) From crap ideas, sometimes important work is spawned.

  2. I think I have a major breakthrough:

    It has been rolling around in my head since October 2011. Found the exact solution and wrote it down on Sunday.

    As far as I know, no programming language can do that. But there are 100s of experimental PLs, so I may be mistaken.

    Also I need to work out the detailed implementation and start testing it, to see if I really have an effective breakthrough.