Canon PowerShot G9
ƒ/4
29.167 mm
1/30
200

with Pointers and Provocateurs …

Audience Poll: “Who has coded in the last year?” A few hands. “And if we exclude Powerpoint macros?” I was the only one left.

Next Poll: “Who has been at Bangalore airport at 2:30am?” Many hands.

IBM’s Grady Booch (formerly Rational, Booch Method):
“Google is a company in serious need of adult supervision.”

Q: Why do CEOs think software is so easy?
Booch: “CEOs are clueless. SW is and will remain fundamentally hard.

Coordinating project teams is hard. Multi-core systems are really hard. You end up with this huge sticking fetid pile of crap.

But enough about the Bush administration. (much laughter) Oh, and that’s my opinion, not that of IBM. But the man’s an idiot.”

David Heinemeier Hansson (37signals, Ruby on Rails): “I disagree. It’s not that hard. Much software is not mission-critical. It’s more of a craft.

The big software model does not work with nimble competitors.”

Talking with Charles Simonyi beforehand, he is fascinated in biological metaphors in software design. Perhaps influenced by his belle, Martha Stewart, he uses the term “recipe” to describe the coding process – a recipe rather than a blueprint. Neal Stephenson’s seed vs. feed architecture comes to mind, as well as the dichotomy of designed vs. evolved code.

Simonyi (former Microsoft guru): “Intentional software is storing your IP in the recipe for it. The problem decomposes into the ingredients and the process. The ingredients are supplied by domain experts. The process is created by the programmer.”

Vint Cerf & follow up question: We need new science in computer science. No one has figured out parallel programming.

Leah Jamieson, IEEE, just after this panel:
Survey: 2% of men and 0.4% of women want to major in CS. There has been a massive erosion of prestige. 20% of people surveyed believe engineers improve the quality of life.

7 responses to “The Future of Code”

  1. that was a mouthful!!

    @vint cerf: no one has figured out parallel programming, just as no one has ever figured out parallel speaking. (my bet on the reason why…)

    We program in the same way we talk, this is: we program in languages which are successive, sequential, just like our tongues are. It seems that the brain has this "parallel thinking" capacity as a major process, but the Language area of the brain doesn’t have the plugin installed.

    As a nice metaphor, as I understand it, we speak / program as we play a flute or sing, note by note. Parallel programming if I follow Vint in what he means, implies playing chords instead of notes, just like in a piano or a guitar. But you can’t make a chord with a flute.

    This for the human part (the flute). Now, we might be able (we are in the road to, for what I know) to build artificial intelligence capable of it (parallel computing first > parallel programming > parallen anything) or capable of allowing us to emulate this method, just like the multitrack consoles and the synthethizers allowed one-man bands to come with songs filled with multiple instruments and voices and amazing choirs with this multi-track-overlapping technology in studio.

    well, I think! I bring no answers, but to make a clear diagnosis of the reasons why things are the way they are (up to date) helps in the emergence of a possible way out

    What would he think of this?

    (there’s a passage in "The Scripture of the God", by Borges, where these structural diferences about sequentiality and simultaneity of the language is so brillantly expressed…)

    I just wish I was there with you all, damn it. Loved to see Vint when here. Waving hands to Eric too!…

    oh, happy 23! |-)

  2. A quick translation of Borges’ passage:

    (for a better understanding of the quote and the idea of "God" expressed herein -and unnecessary for the connection I made with my comments above about parallel programming-, I note that this is a short story placed in pre-colombine times, the times of Monteczuma, the Aztec Empire, and the narrator is a priest for that matter)

    "I will not mention the difficulties of my labor. More than once I shouted to the cage that was impossible to decipher that text. Gradually, the concrete crux that had me busy worried me less than the generic crux of a statement written by a god. What type of statement (I wondered) would an absolute mind construct? I thought that even in the human languages there is no proposition which does not imply the entire universe; to say the tiger is to say the tigers that bred it, the deer and tortoises that they devoured, the pastures which the deer were fed of, the land that was mother of the pastures, the sky that gave light to the land. I considered that in the language of a god, any word would enunciate this infinite concatenation of facts, and not in an implicit, but an explicit way, and not in a progressive, but an immediate way. With time, the notion of a divine statement looked to me blasphematory. A god, I thought, must only say a word and in this word plenitude. No voice articulated by It can be lower than the universe or less than the sum of Time. Shades or simulations of this voice that is equivalent to a language and all that can include a language, are the ambitious and poor human voices: everything, world, universe."

    Here Borges, to me, clearly declares an interesting vision about the capabilities (and limitations) of the human languages. For the purposes of the story he says that only a god would have the ability to state fullness in one word in one phrase. This plenitude, this completeness he mentions as a divine virtue within the narration, is close to the idea of parallel programming, as I interpret it. Simutaneity to its fullest.

    (original of La Escritura del Dios, by Jorge Luis Borges, in Spanish)

  3. absolutely fascinating (your first comment =)…. re-thanks….. As a non-performing-musician, I had never thought of that angle…. and I even started a Ph.D. in programming parallel processing machines….

  4. You find the comparison interesting! 😀 Thx to *you* for sharing these brilliant braindrops from the brainstorm.

    Following what you say… wouldn’t it be nice to add to a course like that one (PhD in programming parallel processing machines) subjects as: Music Theory & Solfege, Introduction to Music, and even to let you choose a Practice like: Guitar, Piano, Flute, etc, whatever the instrument, to learning the language of music and its foundations (what might interest a programmer) while playing with his hands, too?

    I think for what we say here that it would enhance and improve the whole training and the minds of those taking a programming course. I would elevate a petition to the ones in charge. We need more eclectic learning, don’t we?

  5. Since I do program every day, I see how hard it is to implement ivory tower architectures into reality. Programming is about abstractions, for what I do its about how can I create a language that allows a user or another developer to use complicated hardware without reading a 2000 page specification.

    Parallel programming is about breaking up the work in chunks and giving it to the hardware to work on. More like project management. Some hardware is better at doing one thing (storing data) than another (streaming data).

    Some practical platforms for SMP are the propellor chip:
    "eight 32-bit processors (COGs) in one chip"

    propeller

    Then for the musically inclined check out Chuck:
    "Strongly-timed, Concurrent, and On-the-fly Audio Programming Language"

    ChucK

    Since ChucK is too technical, and the propellor is not powerful enough (for a hand held battery powered instrument). I’d want to abstract (make user friendly) ChucK and run it on a hand held instrument. The fun aspect is the HID. How do you control it. There is a big upsurge in hobbyist syntehsizers with their massive patch panels and multitude of knobs. Very analog.

  6. I think a more accurate analogy for writing parallel processing apps is composing music with multiple parts or a high degree of polyphony (as opposed to just chords or music for a single monophonic instrument). When you write polyphonic music for a group/orchestra (or a single instrument capable of being played with a high degree of polyphony — guitar, piano, organ, harp, sitar), you must at all times be aware of parallelism…you give certain parts to certain instruments/hands/fingers (processors)…you split chords across several instruments, you give melodies to one instrument or section, then later, mix them up by giving them to a voice or a group with contrasting timbres. You set sections in opposition and counterpoint, you syncopate, accelerate and decelerate parts in unison or with different tempos…Sometimes you must assign a passage to a certain instrument, player or voice because it cannot be played by any other at that pitch or speed…A typical jazz combo chart is a program written for ~5 parallel processors. A Beethoven symphony is a program written for 20+ parallel processors. The programmatic density of a large symphonic work is on the same order of magnitude as a very large software program in terms of temporal and conceptual/thematic exploration/structure/sequencing…very high information density…I bet great symphonic composers would make great "thinking machines" programmers, if only they could be convinced to focus on music of the gears instead of spheres.

  7. Programming is not the issue in today’s strange new EARTH with a hole in it’s heart, which has just been created. We face a vast universal unknowingness re Swiss Particle Accelerator nightmares … ????http://www.flickr.com/photos/costaricasurfing/2810749070/
    Who knows where we’ll be in 6 weeks!! We do feel one strange certainty — a new EARTH wobble!!! — Born 10 Sept. 2008, at the flip of a Swiss CERN switch!!!
    Does EARTH’s brand-new PA-born ‘wobble’ feature on geo-measure studies? Does it measure on the Richter Scale? — Are PA scientists stressing Earth’s orbit, eg. to see where our orbital break-point lies?
    . Will the UN override this dangerous research which is irresponsibly playing with the entire planet. . What daily increase of heart-attacks is occuring from Earth’s new unnatural wobble and human stress? . Do we believe it is safe to proceed to an even more critical level in six weeks time, without answers to the above queries, and approval of all nations and the UN? — In the lack of such absolute international approval, there must be no increase in the level of planetary distress. We do not believe humanity can survive a global scientific dictatorship. A quote [found by Petra!] may help restore sanity, if taken to heart: — Albert EINSTEIN: ‘A human being is a part of the whole called by us universe, a part limited in time and space. He experiences himself, his thoughts and feeling as something separated from the rest, a kind of optical delusion of his consciousness. This delusion is a kind of prison for us, restricting us to our personal desires and to affection for a few persons nearest to us. Our task must be to free ourselves from this prison by widening our circle of compassion to embrace all living creatures and the whole of nature in its beauty.’ — We must work a total rethink in under 6 weeks!!
    ..
    A Memory of our Daily Life
    Your photo is a GREAT capture!!! Thanks for sharing it with the group.
    This photo is invited to:

    A Memory of our Daily Life
    ..

    For EARTH’s future, help anchor eco-healthy [and fun!] lifeways.
    ~ Be a Sustainability eagle for +1600 of us …
    Please accept our AWARD, join if you wish — EARTHCARE Action!!
    ~ "FIRST – THE EARTH!!" Photo-ART [AWARD + FAV2]
    group.
    ~ Just copy / paste tag, "firsttheearth"

    LIVING-IN-NATURE TALLSHIP & SAIL TRAINING SUPPORT AWARD
    Ready? ~ Come, let's sail together to build a magical paradise around the world ... Want in? FAVE this photo! Tune in!! ~ Tell your friends. Let's make it happen ... !!! ** CLICK! ~ FOR MORE ABOUT US! **

    Plan both EARTHHOUR & EARTHDAY 2009 " EARTH care " dedications.
    ~ Lead an EARTHCARE Photo-Walk or Travel Tour!!
    Help humanity be fit-‘n-well! ~ to help SAVE THE PLANET !!
    "How great EARTH will be when all Volunteer!"
    ~ A tranquil healing way will dwell on Earth.
    HERE’S TO A SUSTAINABLE & GREEN PLANET EARTH"!!!

Leave a Reply

Your email address will not be published. Required fields are marked *