Thursday, October 28, 2004

JPred - interesting way to specify multi-methods (and more!)

Interesting talk by Todd Millstein on his "predicate dispatch" language: JPred
http://www.cs.ucla.edu/~todd/jpred/

On the surface it's some syntactic-sugar for "instanceof, if-the-else ladder", but it's quite a bit more sophisticated. I'm not yet considered it in enough detail, but it looks like a useful tool (FWIW, it was interesting enough that I downloaded it during the subsequent talk).

Interesting comments from the audience & speaker about Subtext and example-oriented programming

After Jonathan Edwards talk on "Example Centric Programming" one of the audience members made a (IMO) fascinating comment. Invoked the metaphor that "code is like DNA" and suggested that the examples/Subtext can be considered as RNA in that metaphor. The role of RNA is the transcription of DNA data into specific protiens, enzymes, etc. (aside: mention was made that the RNA transcription mechanism is Turing-complete - interesting...).

The speaker noted that patterns are really templates, which map into examples very nicely. This observation opens th epossiblity that example-driven languages might have very naturally integrated pattern support.

Onward!: "Programming By Example"

Onward!: "Programming By Example" - Wed. AM

Part 1: "E.G." a tool for building/running examples written in Java under Eclipse. Very interesting new technique to allow people to incrementally write code. Conceptually, very similar to TDD (as the speaker points out), but with perhaps with a more direct connection between the programmer's intent and the app-code and test. Some advantages (maybe) in user-code interaction. Brings an interpreter into the Java development cycle.

Part 2: Speaker's question: "Is this the right way?" Tools on tools on languages, with interpreters, tool-tips, and all manner of "stuff". Simpiler languages? (i.e. examples build into the language) => SubText.

Subtext looks like an interesting graphically manipulated data-flow'ish functional-programming language with protoypes. Much to ponder before passing judgement. Sound bite: "Decriminalize copy & paste" - Cut&Paste is the central mechanism for adding new code.

Tuesday, October 26, 2004

Tuesday...

Keynote: gotta admire the chutzpah of someone to turn an OOPSLA keynote into a product demo. Ugh. I walked out in the middle...

AM sessions: "Unified Garbage Collection...": Pretty interesting. "Mock Roles not Objects": the JMock guys. Good tutorial on why mocks/stubs/stand-ins are important in TDD. Stuff I learned and internalized a couple of years ago, but based on questions afterwards it seems like lots of other folks are just getting on board with the idea.

PM stuff: Ward's talk was excellent. "Methodology Work is Ontology Work" by Brian Marieck in the Onward! session was a fasctinating mix of philosophy-of-science, vetinary education, and discussion about perhaps why XP is gaining popularity.

Monday Poster Session - what a kick!

Levi and I stood in front of our poster during the Monday welcome session. We were actually expecting a pretty sparse evening. I'm assuming that OOPSLA participants are just extremely polite because both Levi and I were busy talking with people all evening. The highlight of the evening was when Ward Cunningham stopped by and talked with Levi for quite a while. I didn't notice too many nametags, so I may well have talked with the entire Gang-of-Four (but I doubt it). I was really impressed with the interest people had; most folks hung around and asked pretty interesting questions. The JMock guys from ThoughtWorks stopped by. They've got a framework for generating mocks in-situ that has much of the same intent as PseudoClasses.

Sunday, October 24, 2004

OOPSLA Wiki

Just FYI, my conference WIKI entry is: http://www.socialtext.net/oopsla2004/index.cgi?geoff_sobering

"The Customer Role in Agile Projects" workshop

I got down to the convention center a bit late and the registration process was almost more than my adled brain could handle. Initially, I was going to take one of the tutorials, but I backed out when I relalized that a full-day would cost me $800. Instead I ended up in the "The Customer Role in Agile Projects" workshop. What a kick. It was a great time. I've worked on three agile projects in the past few years, each one with a vastly different kind of person handling the role of "the customer". Talking with a the other members of the pannel about their experiences and tactics to support (and deal with) the various types of customers out there was very interesting. Lots of outstanding opinions, theories, experiences, and discussion. If the rest of the conference continues in this vein, it's on on-track to be one the best I've ever attended.

United Airlines comes through!

Good flight. Yesterday's flights were pretty amazing. I must have really cashed in a considerable amount of "airline carma". To start, I got on a flight out of Madison that was an hour earlier than my scheduled one (which ended up being late, too). When I arrived in Chicago, I noticed a direct flight to Vancouver was departing in about 20 minutes. A quick dash across the concourses and the friendly gate-attendent swapped my tickets for a seat on the direct flight. My total time in airports for the entire trip was probably less than an hour.

Friday, October 22, 2004

Getting ready to hit the road...

Got my travel docs (thanks Bob!) and I'm ready to go (whew!).

Printed out the program, so I can try and figure out what sessions to attend. It's beginning to feel like I'm actually going to pull this thing off.

Thursday, October 21, 2004

Almost on the road...

After more than five years "doing software" full-time, and longer than that since the last time I did anything remotely academic, I decided this year to submit a poster abstract to the OOPSLA conference. Truth be told, I did it just so I could whine about how unjust the world is when my boss wouldn't send me to the conference. After scheming for a couple of months, I realized I'd forgotten the submision deadline... Luckly, I had a couple of days to prepare and, with the help of a friendly Mac user in the office (thanks Tim!) I was able to crank out an abstract in almost the right format (last time I did this kind of thing, camera-ready meant pasting scraps of paper on a form covered with light blue lines...). Ok, whew, done. Sit back and wait for the rejection. Huh? You want some corrections? Reviewer comments? Accepted!? Wow. Did I mention that between the submision and acceptance I changed jobs? How do you ask your boss of just a couple of weeks about going to a conference? Thankfully one of my co-authors asked and got approval for both of us to go! (thanks Levi, Scott, Dave, ...).

Damn! Now I need to actually make a poster... (at least I get to do a little whining).
Levi and I split up the the pieces. He's the text and I'm the title and big diagram. Well, today I got the final pieces of together. I hope Levi's ready, we fly out Saturday morning (that is, assuming I can get flight - don't ask...).

With any luck Canadian technology will interact decently with my laptop and I'll be able to continue posting my impressions of the conference. Did I mention I'm a fan of the writing style of Hunter S. Thompson? Might be interesting...

Cheers,

Geoff S.