Tuesday, November 30, 2004

Argentina

We're going on a trip to Argentina in mid/late December. So far we're booked for Buenos Aires for the entire 2 weeks, but we'll also be going to Punta del Este (a resort town in Uruguay). Possibly might go down to Bariloche in the Patagonia region. It's supposed to be a beautiful sight. Feel free to post any travel suggestions if you have any.

Thursday, November 25, 2004

Happy Thanksgiving

Monday, November 22, 2004

Another Epstein?

Yes it's true. The latest addition to the Epstein family is under way! Diana is almost 4 months pregnant. We heard a healthy baby heartbeat at her doctor's appointment today.

Black Hole Computers

Interesting article in last month's edition of Scientific American about Black Hole Computers. I have the hard copy edition of SA, so I can read the entire article. You can read the beginning of the article online but then you have to subscribe to the Digital Edition to read it in its entirety.

According to classical Black Hole Theory (developed by Stephen Hawking and others), anything that enters a black hole is smashed to smithereens. Nothing can escape, not even light. Hawking later revised the theory to account for radiation that does escape, but according to the revision, the radiation is dispersed randomly.

The new theory states that the radiation has encoded information, which is anything but random. The capacity to store and process information, which any unit of matter is capable of, is inherent in the black hole itself. The idea is that if matter containing ordered instruction sets and data is propelled into the black hole, the intense gravitational force causing the collapse of matter will create basic particle collisions, whose scattering velocities and dispersions will result in information sequences. This information will be contained in the radiation escaping from the black hole.

There's some interesting quantum theory applied to black holes that makes the black hole computer theory plausible. The particle collisions triggered by the gravitational collapse in the black hole operate upon the input data & instruction sets described above. Particles have the ability to store bits of information with their spin state. There are two states: left-spin can store one binary bit (say a '1'), right-spin another (say a '0'). Computations occur when the particles "flip over". The resulting arrangement of these flip-overs is the solution to a given problem.

The answer then is "blowing in the wind", awaiting detection.

Sunday, November 21, 2004

More Self-Organized Criticality

I know some of you will find it hard to believe, but I used to love raking the leaves around the house where I grew up. Well, earlier today I returned to the old abode and found some leaves to pick up. I noticed the wind swirled in such a way as to create small piles of leaves, on the concrete that is. I could have easily said "Thank you God" but I was thinking about complexity instead. Self organization is one of the hallmarks of complexity theory and here was an example of it staring me straight in the face. My only gripe is why nature just stops half-way and doesn't finish the job by throwing them away in the cuttings container. I guess this is the criticality point. What a bummer!

Saturday, November 20, 2004

Extreme Programming (XP)

Thanks, Harold, for the comment, and welcome aboard. I don't know too much about XP except what you introduced to me and reading a few articles. It appears to be a more effective approach to software design, resulting in greater programming productivity and better tested software. But I'd like to see data which backs this up. The XP.org site seems to be a good starting point to find out what it is.

The idea of staged, interactive, cooperative software development is compatible with Complex Adaptive Systems which are more reality-based than top-down regimented approaches. These systems depend upon feedback, re-evaluation, decision making based upon that feedback, learning from experienced failures, and of course, adaptation to a changing environment. As I was just Googling on "Complex Adaptive Systems + software development", I did find this article on ASD (Adaptive Software Development) which appears to be akin to XP.

I was just reading the part about paired programming (this is where 2 programmers share the same computer), and you're right; I just can't see that being effective, especially with those endless mouse and keyboard battles! What would appear to be better is developers working on separate stubs (i.e. similar functionality, different approaches or algorithms), test them out in isolated environments, and then upload the best-fit stub. This would still necessitate the "teamwork" approach as it would take several engineers to make this determination.

Thorough software testing is integral to the success of XP. Automation can certainly increase testing coverage; however, experience has shown that automation can be a headache in a perpetually-changing software environment. Automation works best after a code freeze when the features and UI are set. Instead, I think "under-the-hood", or what is often refered to as whitebox testing, is preferred. This is code-level testing. It's effective at finding bugs and failures BEFORE the features are completed. This can help streamline design decisions and feature implementations.

In the Beginning

Hi all. This is the first posting to my new blog. I envision it to be a place where we can share some of our nifty ideas, thoughts, experiences, knowledge, and have some fun while we're at it. There's no central theme, but we'll cover a wide range of topics: current events, art, travel, scientific developments, the software industry, world affairs, literature, anything else that comes to mind. The basic guidelines are to engage in dialog and discussion, even debate; but not to engage in personal attacks or make inflammatory remarks.

Ah, I don't see that happening anyway. Time's a wasting ... Let's get going!