Ted Leung on the air
Ted Leung on the air: Open Source, Java, Python, and ...
Wed, 30 Nov 2005
Travel plans

I'm going to be at the OSAF offices in San Francisco next week from Monday (12/5) through Friday (12/9). After that I'll be at ApacheCon 2005 (it's not too late to register!) from Saturday (12/10) through Wednesday (12/14). If you'd like to get together, leave a comment or send e-mail.

[01:02] | [misc] | # | TB | F | G | 2 Comments | Other blogs commenting on this post
Tue, 29 Nov 2005
Mind Camp Video

Tonight we had our debrief of the Seattle Mind Camp event. The meeting was delayed due to the XBox 360 launch and Thanksgiving. One piece of news is that some folks made a cool movie about the Mind Camp experience. You can get to it via this post on the Mind Camp blog. You'll need VLC or some other player that can do XViD.

[23:24] | [places/us/wa/seattle] | # | TB | F | G | 2 Comments | Other blogs commenting on this post
Lucien got the scoop

It looks like Lucien Dupont, who I worked with at the Newton group, got the scoop on Aperture. My copy is supposed to get here tomorrow... Enjoy the flow Lucien!

The dpreview.com forums have a pretty good thread going too.

[23:15] | [photography] | # | TB | F | G | 1 Comments | Other blogs commenting on this post
If you are waiting for your copy of Aperture

You should look at the new support page. Apple has posted some docs and other stuff there.

[00:06] | [photography] | # | TB | F | G | 0 Comments | Other blogs commenting on this post
Mon, 28 Nov 2005
How I got into computers

It's nice to see that Nat Torkington followed up on Julie's wish for interviews with people who became hackers (the good kind) as children (although I've noticed that a number of folks who were interviewed started a bit later in life). I don't know that I became a hacker when I was a kid, but I certainly got started with computers as one...

Before I was introduced to computers, I went through roughly one hobby or new interest per year. This usually involved me going to the school library and checking out all the books that I could find on the topic of the moment. Of course, I was limited by the number of books that I could have checked out at any one time.

In sixth grade, we had a presentation about computers in one of my classes. It involved making a computer out of a file folder. I remember cutting strips of cardboard to represent the program counter and a gluing on a sheet of paper for registers. For most of my classmates, this was a nice guest presentation, but I actually took the thing home and tried to write a few programs for it. I think that I barely knew what I was doing, but I was motivated.

The motivation really kicked in during the following year. The junior high school had just gotten its first batch of microcomputers, Apple II Plus', with around 4k of memory and cassette tapes for storage. There was even a quarterly elective for learning about computers. There was only one small problem. That elective was only open to eighth graders, and I was a seventh grader. Undeterred, I asked on of the math teachers if I could come after school and spend some time in the computer room. I think that he figured I'd come for a little while and then get bored, but it ended up that I came just about every day for the rest of the year. I read all the manuals that came with the computers and wrote small programs to play simple games. These were the days of Byte and Creative Computing magazine, and somehow I managed to get a hold of those magazines, which served as a rich source of information. I learned about computer hardware by comparing the specifications of various computer parts, figuring that the more expensive parts must be better, so I cobbled together some knowledge about RAM, processor clocks and all that. Of course, the content of the magazines helped as well.

Actually I do know where those magazines came from. Around the time that this happened, a Computerland store opened in a local shopping center, which was a huge event as far as I was concerned. Apparently, during my first visit to the store, I made a circuit of all the computers on display and crashed/locked up most of them. I don't remember this, but I have no doubt that it happened. The owner of the store told his wife that she shouldn't let "that kid" back into the store. And sure enough, the next time I came to visit, there was a sign on the door, stating that children under 15 (I was) needed to be accompanied by a parent. So I trudged back out to the car, and came back with my mother in tow. I bought some magazines there, and after more uneventful visits, things started to go better for me and the folks in the store.

Somewhere around this time, I started bugging my parents for a computer of my own. I was spending lots of time after school, and paying an occasional visit to Computerland -- learning what I could from the people in the store. Access to my own computer seemed reasonable, at least to me. For my parents, who had watched me chew through hobby after hobby, this was pretty disconcerting, I am sure. Especially since in 1980's dollars, the price of an Apple II class machine was a lot of money. In hindsight, I couldn't really fault my parents for turning down my request. Everything they had observed suggested that this would just be another of my one or possibly two year long fads. It was my grandfather who stepped in at this important moment (and if you don't think it was important, then you should read this on the impact of access to computers and involvement in free software - and software in general). My mother's father and I had a communications gap. He spoke Cantonese and very little English and I spoke English and very little Cantonese. Somehow my mother must have mentioned the whole business with the computer, and my grandfather agreed to put up the money for an Apple II Plus.

So off we trundled to Computerland to purchase a computer. The acquisition of a computer only served to further warm relations with the store folks, as I was now dropping more frequently to look at software and magazines. I think I probably talked to a few customers in the store, because I was there so much, but I can't really remember. All I do know is that one day, the owner's wife took me aside in the store and told me that they wanted to offer me a job working in the store. This was a young computer geek's dream come true (ok, so I didn't have very ambitious dreams). Not only was I going to get paid to talk to people about computers (which means I needed to learn all about everything in the store), but I got access to lots of computers, I got an employee discount so I could buy stuff much more cheaply, and I was in the store a lot. Out of all the benefits of working in the store, this last was the most important. In the early microcomputer days, lots of the customers of a Computerland store were microcomputer hackers. We had a guy who had written a Prolog for CP/M, several local consultants (like David Moskowitz), and other folks who were very knowledgeable about computers. Some of these folks took it upon themselves to improve my education. They'd suggest books to read, or tell me about stuff I had no idea about, - precisely the kind of stuff that was incredibly valuable to a young person interested in computers.

And some of these folks were real hackers (they liked to take things apart). I still remember some folks who used to stop in with games which they had bought, and subsequently cracked the copy protection on, just because it was there. I learned a bunch about Apple II disk I/O and booting from these folks, and I still remember the day when one guy was in the back trying to demonstrate how he could copy a disk using Nibbles Away, a bit copying program, when all of a sudden a siren started playing from the computer doing the copying. Of course, the writers of the copy protection had exploited a buffer overrun in Nibbles Away, yielding the police siren. I can still remember the looks of shock and astonishment.

Meanwhile, back at school, I was carrying on with my subjects. There wasn't much of a computer curriculum in those days, and because of my job, I had access to resources that were very rare in those days. Today, of course, any 15 year old kid can get on the internet and have access to a staggering amount of information. Even before computers I was involved in the science fair circuit -- I started out in electrochemistry (batteries). The fairs had a math and computer science category, so I began to enter projects in that category. I remember an assembler, and a compiler for a simple object-oriented language based on Smalltalk. Yep, Smalltalk. There is a now famous issue of Byte (my copy is still in a box somewhere in our garage) that detailed out the working of Smalltalk. (I had also learned a little bit about Lisp from Byte, but the coverage was nowhere as a good as the Smalltalk issue. It wasn't until I got to MIT that I was fully Lisp indoctrinated).

The fair that happened during my senior year was particularly important. It turned out that one of the judges worked for a company called Burroughs, which in those days, was a large computer company. This judge took an interest in the work that I had done, and managed to get me a summer internship at a Burroughs subsidiary near Paoli, which housed their Federal systems work, and a research group. I ended up working in the research group, where I saw my first VAX (an 11/780), my first Unix (BSD 2.9), and (Gosling) emacs. That summer I did some projects with lex and yacc, and in subsequent years, I was working on a research compiler for a combinator based compiler for a functional programming language.

It's been interesting to review the course of my involvement with computers as I've been writing this. I spent a few years working at Apple, fulfilling a childhood dream that was intimately involved with my introduction to computers. Lotus introduced the 1-2-3 spreadsheet during the time that I worked at Computerland, and rare was the machine that we sold without a copy. Today I'm working for the man who designed that highly influential piece of software. Hard to believe.

I was very fortunate that at almost every step of the way, there were adults who (one way or another) fostered my interest. Without them, I highly doubt that I would be doing what I am doing today. I owe them a debt which is just about impossible to repay. Over the years I've tried to take an interest in young people who are in the same position that I was in, like my friend Sarah.

School played a very limited, and if you are ungenerous, obstructionist role in all of this. Everything that I learned about computers I learned outside of the established school system, and I actually had to work around one of my (well intentioned, I"m sure) teachers. I learned on my own, and at the feet of actual practitioners. Perhaps it's not all that surprising that Julie and I have chosen to home school our kids. Some of you know that they've done a little Python, and they're just about to get started on Squeak (more on all of that in future posts). Whether they turn out to be hackers is not for me to say, but I'm at least going to do my best to make sure they got the kinds of opportunities that I got.

[23:28] | [education] | # | TB | F | G | 2 Comments | Other blogs commenting on this post
Sun, 27 Nov 2005
Capabilities in Perl

[via Links ]:

Earlier this year at CodeCon, Ben Laurie showed me the work that he had done on adding capabilties to Perl. Now he's put up a post with a pointer to the code and a little bit of documentation. He originally got interested in the problem because he was interested in adding capabilities to Python, but that turned out to be harder than he thought. Along the way, he formed some conclusions about Python and security:

Also, it seems the Python devlopers aren’t really interested in capabilities (nor all that interested in security, it seems, since the restricted execution mode is not maintained).

I don't think it's quite as a bad as Ben thinks, since he and I had some conversations with some Python developers and those folks were definitely interested in capability support. Of course, quite a few of them were a bit Twisted.

CaPerl is an alternative approach to adding capabilities which involves compiling a capability enhanced version of the language into the regular language. As to the rationale for doing this in Perl:

So, I did this for Perl, on the basis that if you can secure Perl you can surely secure anything.

I'm curious to see whether making the code available has any impact on the uptake of these ideas. Perhaps there will be some impetus in the Perl or Python communities to pick up on these ideas. When I saw Ben at Mind Camp, I suggested to him that perhaps the most profitable place to seed these ideas is the Ruby community, given the momentum hype of Rails, and the relative openness of the Ruby community to non-mainstream ideas.

I'd love to be proven wrong.

[23:57] | [computers/security] | # | TB | F | G | 32 Comments | Other blogs commenting on this post
Thu, 24 Nov 2005
Wed, 16 Nov 2005
What do we expect from these lousy machines?

Sanjiva had this to say about Geir's PowerBook upgrade/migration:

Wow, this is amazing. I don't want to even start to describe the migration pains for the rest of us .. :(.

I couldn't help thinking about some dialog from The Empire Strikes Back:

Luke (after Yoda lifts an X-Wing fighter out of a swamp using the Force): "I don't believe it!"

Yoda: "That is why you fail."

[00:35] | [computers] | # | TB | F | G | 3 Comments | Other blogs commenting on this post
Tue, 15 Nov 2005
A wonderful hack?

This fall in our Bainbridge Island reading group, we are going through the Ruby on Rails and Ruby (Pickaxe) book. At our last meeting, one of the things that we discussed was Ruby closures, and I was trying to help people understand what was going on. Turns out there was one area where I didn't quite understand what was going on: the ability to pass an existing function as a block argument. I thought that you'd be able to do that, but apparently you can't.

A few days afterwards I finally got around to reading this post by Dave Thomas on the Symbol#to_proc hack, which I've excerpted:

The Ruby Extensions Project contains an absolutely wonderful hack. Say you want to convert an array of strings to uppercase. You could write

result = names.map {|name| name.upcase}

Fairly concise, right? Return a new array where each element is the corresponding element in the original, converted to uppercase. But if you include the Symbol extension from the Ruby Extensions Project, you could instead write

result = names.map(&:upcase)

Now that’s concise: apply the upcase method to each element of names.

Ouch. My idea of concise would have been:

result = names.map(upcase)

Or am I missing something here?

[23:33] | [computers/programming] | # | TB | F | G | 8 Comments | Other blogs commenting on this post
Mon, 14 Nov 2005
I am shaky

Last weekend after Mind Camp, I stopped by Glazer's Camera in Seattle. I've stopped in a few chain photo stores here and there (there aren't many in Kitsap County), but haven't had the opportunity to stop in a store aimed at more serious photographers. Since I was already in Seattle and had a car with me, it was a good opportunity to stop in. I spent a while poking around at various bits of photographic equipment. I was also able to mount a few lenses on my camera to get a feel for what they'd be like. I looked a several telephotos in 70/75-200/300 range, and a 100mm macro lens.

I definitely felt the lack of a telephoto when trying to photograph the girls at soccer this fall, and there are a ton of choices. The lenses I was most curious about were the new 70-300mm image stabilized lens versus the 70-200mm F4 L series lens. The L lens focuses *really* fast, which seems like a big plus. However, the salesman had me turn off the image stabilizer in the 70-300mm lens, and that was really an eye opener. My hands shake a lot -- granted I'd had some coffee and not much sleep due to Mind Camp, but that whole episode gave me a lot to think about. I'm still undecided on what the best choice would be, but I feel fortunate that we are now well into the winter season, which means there isn't much need for me to shoot sports action of the kids.

The Canon kit lens has been pretty good for close ups, but I wanted to see how much difference a real macro lens would make. Results of that experiment:

Backside of a

Seemed pretty good, although my shaky hands made it hard to get a good picture. This seems more practical to me than the telephoto, but I'm a little concerned about the length -- I should have tried to 60mm macro while I was there.

If it wasn't for the (potentially) massive Canon rebate, I'd probably just stick to working with the 50mm and the kit lens - who know, maybe I'll end up doing just that. This weekend I took some photos of Julie (with the 50mm) for her SXSW headshot, and it seems clear to me that I've still got plenty of room to learn how to work with that lens.

[22:23] | [photography] | # | TB | F | G | 10 Comments | Other blogs commenting on this post
Thu, 10 Nov 2005
Phear Avi and Smalltalk

[via HREF Considered Harmful ]:

Best quote I've heard from a Seattle Mind Camp roundup:

my favorite was from Ryan Davis, giving a presentation on Rails, who said something like
I defy anyone to come up here and use any other framework to duplicate what we’re doing in Rails as quickly. Except Avi.
[23:25] | [computers/programming/smalltalk] | # | TB | F | G | 0 Comments | Other blogs commenting on this post
Wed, 09 Nov 2005
Tue, 08 Nov 2005
Next time, try a Mac

[via The Seattle Times ]:

Good advice from Paul Andrews:

Hardly a week goes by that I don't hear from a friend or colleague with a monumental Windows problem.

I tell them I'm glad to help, on one condition: Next time they buy a computer, they agree to consider a Macintosh. A year ago, after a particularly trying week of spyware, adware, viral attacks, lock-ups and reboots, I changed my primary computer to a Mac. I've dabbled with Macs since the late 1980s but never felt a need to change from Windows.
[21:44] | [computers/operating_systems/macosx] | # | TB | F | G | 4 Comments | Other blogs commenting on this post
Mon, 07 Nov 2005
Mind Camp 1.0 report

Where to start?

A big thanks for everyone who took time out of their schedule to come this weekend. These sorts of events depend entirely on the people who attend, so if it was good (and I think it was), then the credit goes to all those who showed up and participated.

I was pleased to see a number of people from Bainbridge Island, including some folks that I was unaware of. Steve Sivits, Michael Gerlek, and Todd Blanchard also made the trip. I had never met Steve or Todd before, and its great to discover more people on the island.

A number of folks are posting their reactions to the event, and much of has been positive. The thing that is most important to me is that during the closing session/wrap-up, I heard a lot of people say that they had met cool and interesting people. The reason that I got involved with Seattle Mind Camp was because I wanted to see technology people in the Puget Sound get connected to each other. One of the things that I miss about Silicon Valley is the sense of connectedness, which seems to facilitate people knowing who's doing what, and which is a facilitator of a culture of innovation. I wanted Mind Camp to be something that would contribute in some small way to improving that sense of connectedness, so nothing could have pleased me more than to hear that people met other cool people that they were unaware of. Of course, it would be great if several years from now you could point to a project or company that got started because of Mind Camp, but we'll have to wait several years to see if that happens.

About the only real problem that we had was with internet access. The SeattleWireless folks tried to deploy a mesh network across all the laptops at the camp, but this turned out to be problematic, so that the network was flaky for the early part of the event. Once it was obvious that the mesh wasn't going to work, it didn't take that long to rig up an more conventional network (which still used the mesh to connect the access points -- the problem turns out to be a bad interaction between the mesh network, mobile clients, and Window's wireless networking support). Unfortunately, we discovered on Friday that there was much less bandwidth coming into the building that we expected, and by that time, it was too late to fix that problem. That was not SeattleWireless's fault at all. During the wrapup, several organizations volunteered to make sure that we never have this sort of (backhaul) problem again.

I actually didn't even open my computer until a few hours before my session, and I didn't bother to try to blog something while the event was going on. After all, if I came meet people, why spend the time with my nose buried in e-mail, etc. I didn't even get the pictures out of my camera until tonight.

While we were waiting to get started, I met Scott Laird, and Eric Sooros (who I had met previously), both of whom are camera geeks. Acutally, I would put Scott in the major camera geek category, due to the L series lens and the external flash. Both of the had apparently read my post about the nifty 50, and immediately offered to let me try out lenses from their arsenals. Unfortunately, I got so engrossed in other things that photography took a back seat, so I never actually took them up on it. But I loved it that these guys were so willing to let a relative strange bolt several hundred dollars worth of glass onto his camera. Very much in the spirit of the weekend. I did post some more photos to my Flickr photo set for Mind Camp 1.0.

Here's a brief run down of things that I did, some on the program, some off.

I attended a discussion on women in computing -- the session title might have said technology but Liz Lawley pointed out that computing is the only field in which female enrollments are declining as opposed to increasing. It's been interesting to hear these discussions in different contexts, with different participants. Apparently I missed out on really good session on Engelbart style augumentation.

I attended pieces of Julie's talk -- Elisabeth and I were in and out of the room several times, but as far as I could tell people resonated with the issues that she raised. We may even have found someone who can help make a full multimedia version of the presentation available.

Information overflow was a big theme. There were two (unwittingly, I think) competing sessions, one explicitly on information overload, and another, led by Liz Lawley on the difference between information networks and social networks. I never really considered that these two might be different, and I'm still not quite sure that I think that they are, but there was a lively discussion. If nothing else, the discussion reinforced for me that it's all about trust when it comes to information flow/networks/attention. And for me, that's one reason why blogs that have a personal, not only professional voice, will continue to be important. It's hard for me to really develop trust without a sense of a person. One other surprise for me was the amount of consensus that something like My Yahoo will become the predominant method of getting information via RSS. The argument was that it's easier to get someone to use a new webapp than it is to get them to download and install a new app. More pondering.

Julie and I took a break in the middle of the afternoon to build some howtoons derived marshmellow shooters. Early Saturday I took a sidetrip to the Home Depot in Tukwila to get the materials. Unfortunately, I didn't notice that the T-Joints that I got we threaded in the shaft, which made it much harder (but not impossible) to get the things working.

My session on Chandler turned into what I can only call the worst demo ever. I had intended to demo a recent version of Chandler including read/write calendar sharing, timezone support, and a few other things, but moments after I plugged the machine into the project, it froze up solid. Waiting for a machine to reboot when you are supposed to be demoing seems like an eternity. I was able to get through most of my demo, but I couldn't get the sharing part of the demo to work, despite the fact that I carefully tested it out before at home. With all the hitches, I didn't have time to go through the slides that I had prepared that discussed some of where we are trying to go. Mercifully, not that many people left, and people had lots of questions about the software, the process, and more. But boy, did that smart.

Apologies to Andy Edmonds for falling asleep during the attention.xml session. Highly ironic. By the time this session rolled around, my body had reached its limits, and Andy happened to be the one in the fatal timeslot. Fortunately, a summary of the session made it onto the Mind Camp wiki.

Shelley Farnum, formerly of Microsoft Research had a fascinating session on her experiences with Groove during the aftermath of Katrina. Shelley accompanied someone from the Groove team to help anyone who wanted use Groove to facilitate Katrina recovery operations. There were lots of interesting observations both about recovery operations and about software/technology in this context. Nancy White mentioned that this session went on till 1AM (after starting at 10pm). Sadly for me, I had to leave to go to another session.

And what was so all fired important that it was worth missing the disaster recovery for? Well, sitting down with
Scott Laird, who among other things, is a contributor to Typo, a Ruby on Rails based blogging system. I learned quite a bit about Type, but I also learned some interesting things about Rails and about the Ruby community.

I've long been an admirer of Avi Bryant's work, and I was looking forward to the opportunity to meet him this weekend. Avi and I sat down and he gave me a demonstration of Dabble, which is a very cool web based database app. The data modelling capabilities of Dabble look spiritually similar to what we are trying to do in the repository for Chandler. Avi also gave me a very nice demo of Seaside, a continuation based web framework for Smalltalk. Other useful things that I learned about Avi: he's from Vancouver, not very far away, he plays mean harmonica, and the he did hack some Ruby for a while.

Preventing me from getting to bed last night (of my own free will) were Brian Rice, his security geek friend Paul (whose last name I forgot), my friend Sarah, Eric Butler, and one more person whose name I never got. It all started innocently enough, when I wandered over to a conversation where I had overheard the worlds "Lisp Machine". From there on out it was downhill. Lisp, Squeak, Slate, and more, culminating in a full bore "let me show you why Squeak is cool" demo that lasted till 3am, which is when my body gave out the second time and I went to sleep.

Sunday morning I went to Todd Blanchard's presentation on Objective CLIPS, which is a clever job of gluing together CLIPS, F-Script, and Core Data. It was an eerie experience watching all the CLIPS rules firing while Todd manipulated the GUI. Just more evidence that everything that was old is new again. At least here, there are no wheels being re-invented. Todd also brought a copy of the book that he recommended to Julie. Lots of Squeak going on this weekend.

I was sitting on the floor using the power outlet, minding my own business, when I overheard the words Blue like Jazz in a conversation between Justin Martenstein and Bryan Zug. Having read the book, I invited myself into their conversation, which turned a bunch of interesting dimensions. I'm looking forward to unpacking some of those in the coming weeks.

Eventually, we wound up with a few more people and the beginnings of an impromptu post-mortem of Mind Camp, which was good preparation for the scheduled one at 11AM. Brief (and I think) incomplete notes on the wiki. I heard two big themes (as well as several smaller ones) during the feedback. The first was that we could have done a better job of communications, in terms of setting expectations for people. A lot of people said they had no idea what to expect, several people said I wish I knew that we could bring XXX gadgets, and some people thought that we were focusing on the blogging/Web 2.0 space. The second theme was that people want to get together and actually make stuff, whether that's software, hardware or whatever.

Since I've been somewhat vocal, a number of people asked if Mind Camp turned out the way I wanted or or met my expectations. It easily did, even with the caveat of it being the first time and so forth. The most important thing isn't what I think, but whether or not people get more connected as a result of what happened this weekend.

[00:59] | [places/us/wa/seattle] | # | TB | F | G | 2 Comments | Other blogs commenting on this post
Fri, 04 Nov 2005
Seattle MindCamp 1.0 tomorrow

I just got back from helping to set up for Mind Camp 1.0. I'd never been to the space before and it is huge! We'll have plenty of space for whatever people want to do. I've put up a few pictures in this Flickr photoset, and I'll be posting more, including (I hope) some shots from my new "nifty 50", the cheap but good Canon 50mm f1.8 lens.

For those of you tag searchers, the "official tag" is mindcamp1.0

[21:34] | [places/us/wa/seattle] | # | TB | F | G | 0 Comments | Other blogs commenting on this post
Thu, 03 Nov 2005
Wed, 02 Nov 2005
Languages and communities

The aggregator is always good for some serendipity. Here's today's.

Sam Ruby wrote about Bruce Tate's new book, Beyond Java:

In particular, I agree that in the next few years we are likely to see a shift from a small number of dominant languages/platforms to a plurality of solutions focusing on approachability, community, and metaprogramming.

It was interesting to me that when Sam analyzed Tate's list of alternative languages, there was a little discussion of metaprogramming/DSL's, but not much on approachability or community. Earlier in the aggregator session I had read Ian Bicking's post Friendship and hand holding, which gets at the community side of approachability (versus the approachability of the language), and adds some thoughts on the Python community, mostly from the point of view of friendliness. But there's more to a community than friendliness, as Ian points out:

Now I'm not saying comp.lang.python is a mean-spirited place. But Python has calcified in certain ways that Ruby has not. Just like a child is more flexible than an adult, the Ruby community is more flexible than the Python community. I think there's more open space in Ruby than Python, there's more openness to some new ideas, there's more acceptance of the opinion of outsiders. The barriers to contribution are smaller. Backward compatibility? Not as big a deal with Ruby. Add new syntax? Suggestions along those lines won't be dismissed for Python, but all new syntax is met with extreme suspicion; all the moreso if you aren't aware of past conversations on the matter. And there are lots of past conversions on just about any new syntax you'll think of -- which makes it hard to jump in and contribute ideas on that level. So I suspect you'll get a more friendly reaction from Rubyists on syntax. But then, the cutting edge of Python hasn't been the core language for a long time (by design).

When looking at Python, Bruce and Sam say that it needs a "killer app". Bruce dismisses Smalltalk (and I would assume Lisp, which didn't even get a mention), because they haven't been adopted after 30 years or so, which kind of sounds like it also needs a "killer app". Arguably, Ruby has a "killer app", Ruby on Rails. So my question is: What is it (if anything) about these three communities that results in only one "killer app" amongst the three? Rails could have appeared in Python, Smalltalk, or Lisp. But it didn't. Some people will say it's just the timing, that it's just iteration n+1 of web frameworks. But I'm not so sure. Look at what iteration n+1 of the Java web frameworks look like. The culture of a community is a powerful influence on what it chooses to pursue, and the means by which those pursuits are undertaken.

[00:08] | [computers/programming] | # | TB | F | G | 7 Comments | Other blogs commenting on this post
Who's writing release notes at Apple?

It seems a little bit odd to me that I'd have to find out about support for additional digital camera RAW formats from some blogs rather than the Mac OS 10.4.3 updater release notes... At least Rob Galbraith thinks that things are promising for Aperture's RAW conversions.

[00:01] | [computers/operating_systems/macosx] | # | TB | F | G | 0 Comments | Other blogs commenting on this post

twl JPG


Ted Leung FOAF Explorer

I work at the Open Source Applications Foundation (OSAF).
The opinions expressed here are entirely my own, not those of my employer.

Creative Commons License
This work is licensed under a Creative Commons License.

Now available!
Professional XML Development with Apache Tools : Xerces, Xalan, FOP, Cocoon, Axis, Xindice
Technorati Profile
PGP Key Fingerprint
My del.icio.us Bookmarks
My Flickr Photos

RSS 2.0 xml GIF
Comments (RSS 2.0) xml GIF
Atom 0.3 feed
Feedburner'ed RSS feed

< November 2005 >
   1 2 3 4 5
6 7 8 9101112


Macintosh Tips and Tricks

Blogs nearby
geourl PNG

/ (1567)
  books/ (33)
  computers/ (62)
    hardware/ (15)
    internet/ (58)
      mail/ (11)
      microcontent/ (58)
      weblogs/ (174)
        pyblosxom/ (36)
      www/ (25)
    open_source/ (145)
      asf/ (53)
      osaf/ (32)
        chandler/ (35)
        cosmo/ (1)
    operating_systems/ (16)
      linux/ (9)
        debian/ (15)
        ubuntu/ (2)
      macosx/ (101)
        tips/ (25)
      windows_xp/ (4)
    programming/ (156)
      clr/ (1)
      dotnet/ (13)
      java/ (71)
        eclipse/ (22)
      lisp/ (34)
      python/ (86)
      smalltalk/ (4)
      xml/ (18)
    research/ (1)
    security/ (4)
    wireless/ (1)
  culture/ (10)
    film/ (8)
    music/ (6)
  education/ (13)
  family/ (17)
  gadgets/ (24)
  misc/ (47)
  people/ (18)
  photography/ (25)
    pictures/ (12)
  places/ (3)
    us/ (0)
      wa/ (2)
        bainbridge_island/ (17)
        seattle/ (13)
  skating/ (6)
  society/ (20)

[Valid RSS]

del.icio.us linkblog



Listed on BlogShares

Locations of visitors to this page
Where are visitors to this page?

pyblosxom GIF