Ted Leung on the air
Ted Leung on the air: Open Source, Java, Python, and ...
Ted Leung on the air: Open Source, Java, Python, and ...
Sat, 31 May 2003
Multimethods in Python
David Mertz is extremely prolific both as an author of code and prose. His latest
article appears on O'Reilly's ONLamp.com site (David also writes for IBM's DeveloperWorks), and covers his packege for doing multimethod dispatch in Python. David's various articles have been a big help to me in getting up to speed on Python.
[13:22] |
[computers/programming/python] |
# |
TB |
F |
G |
0 Comments |
Fri, 30 May 2003
Open source is about controlling our destiny
A lot of people have pointed out pro open source remarks by the president of India. Dana Blankenhorn
restated some of the key points like this:
[12:04] |
[computers/open_source] |
# |
TB |
F |
G |
2 Comments |
In other words it is Microsoft, not Linux, which is dangerous to India, because Microsoft can change its mind while India can control whatever it does with Linux.Open source is not only about the economic aspects, its about the control aspects. Customers of software are at the mercy of vendors of software. As I mentioned a few days ago, I want software vendors to be able to earn a good living (especially since I'm one of them). But I don't want to be at their mercy. Dana then goes on to sound the horn of doom:
While China may take America's hardware business away, India seems poised to take away our software business. And where would our New World Order be then?It's not that simple. There are plenty of us here in America who are working in the open source world. We have just as much ability to control our destiny as India does, but we have to decide that we're going to do that.
Jon Udell: Titles and XPath help us go back to grade school
Jon Udell's OSCOM keynote slides are up. There are a few interesting items in there:
[11:50] |
[computers/internet/www] |
# |
TB |
F |
G |
0 Comments |
- A section on titles in RSS and HTML versions of blog pages (I need to fix this in my blog).
- The use of HTML doc titles and URI's to affect search engine results.
- His argument for the use of xhtml:body in blog entries.
- A nice series of XPath examples, and his repetition of what Joshua Allen and Dare Obasanjo already know about XPath based programming models for XML
One more reason to look at virtual machine software
I've been following the posts from various Microsofties regarding their use of Virtual PC to quickly get test configurations up and running. Today I came upon an article by security guru Kurt Seifried that discusses using VMWare as the foundation for building honeypots.
[11:39] |
[computers/operating_systems] |
# |
TB |
F |
G |
0 Comments |
Thu, 29 May 2003
JBoss AOP Article
O'Reilly's OnJava has an
article on the upcoming AOP support in JBoss 4.0.
[12:17] |
[computers/programming/java] |
# |
TB |
F |
G |
0 Comments |
IE and CSS: just bugs? Or something more?
Tim Bray's post on CSS is mostly about his frustration over IE's brokenness in various ways.
It's also an illustration of one of the big problems that I think Microsoft is facing. The everything integrated into the operating system story sounds good, and from a particular view of system architecture makes sense. You move things that everybody uses down into a system layer so it can be leveraged. The problem comes when all the pieces become very dependent on each other. Now you can't ship IE without shipping parts X, Y, and Z from Longhorn. But those parts depend on A, B, and C which in turn depend on yet other parts. Pretty soon you reach the point where you can't ship IE without shipping Longhorn. Granted, I'm taking this to an extreme to make a point, but it seems to me that the integrated delivery strategy that Microsoft (and Sun in the J2SE, J2EE) has committed to is going to force them to go slower and slower, and to become less and less responsive to changes in the marketplace (you can see this very clearly in Java). When everything is tightly integrated, you need more communications between components (both human and code), you need more testing, you need more of everthing. And the stakes are higher because it's all or nothing. Seems to be an odd strategy for a company that's touting the benefits of loosely coupled web services.
[12:13] |
[computers] |
# |
TB |
F |
G |
2 Comments |
Weblog infrastructure quickies
Ian Davis posted his idea for a Weblog API multiplexer. This would definitely take a load off of people implementing weblog software (they wouldn't have to update their list of ping locations all the the time). It would also allow other ping services to get visibility quickly. The question is who will pay to host such a service?
Timoty Appnel is talking about a SOAP/RSS based weblog API. I was meaning to talk to Dare about this at the Crossroads get together, but we got diverted, and Sam wasn't there -- he's been talking about this idea for a while. I think that use of a SOAP document / literal wrapper for RSS items is a viable way to do a weblog API. The biggest rationale I can see for this right now is that XML-RPC based API's don't have proper XML support for character encoding, which makes life difficult for people who don't use Euro character sets. Are there hacks around it? Probably, but it seems to me that an API for personal publishing should have first class support for any character set that people want to use. We've already had problems with non ISO-8859 character support in pyblosxom. There are fixes in the 0.7 series -- but it doesn't help to have support in pyblosxom, if people can't use bloggerAPI or metaweblogAPI to post their entries.
[11:58] |
[computers/internet/weblogs] |
# |
TB |
F |
G |
0 Comments |
Wed, 28 May 2003
More old acquantances
When I worked for IBM, we were upstairs from the team that was doing the very cool alphaWorks site. One of the folkes that I got to know down there was John Wolpert, who made his debut on the Corante IdeaFlow blog today.
[16:29] |
[computers/internet/weblogs] |
# |
TB |
F |
G |
1 Comments |
Tue, 27 May 2003
How do we pay for value?
Ross Mayfield's
comments in the Paying for Software thread have come closest for me.
[15:53] |
[computers/open_source] |
# |
TB |
F |
G |
2 Comments |
I buy software when I know it will get better, rather than worse, over time.There are some pieces of software that I depend on. That software needs to improve. It needs bug fixes, it needs to move to new versions of operating systems, it needs new features, etc. I've been disappointed by software that I've depended on in the past. Symantec took More and stopped development on it. You could argue that this action didn't affect the value of the copy of More that I already had, but I certainly didn't feel that way. I invested a lot of money and effort into a program called Arrange, by a nice group of people in Palo Alto. They didn't make it, and all my data ended up locked up in Arrange. Some years later I switched from the Macintosh to Windows. I used a program called Ecco. Netmanage stopped development on Ecco. There was nothing wrong with the copy of Ecco that I still use. But it doesn't grow, it can't talk to my PocketPC, and its web integration is lacking. Traditionally, we've assigned the value in software to the software itself. But without the people who wrote the software, the software has markedly less value. I'm more than happy to pay people to keep working on the software (if you like, you can think of this as a service), but my experience (and hard-earned money) shows that paying for the software alone is a dubious value proposition. So to me, the question is: Where is the value, and how do we make sure that when we pay (because as Mark Bernstein points out, we do pay), that we are paying to get the value that we want? I don't have an answer for this yet, but our industry is going to have to come up with one.
Operator error
Joshua Allen generously attributes flaws in my photograph of him to my camera. The more likely explanation is that the flaws are due to operator/photographer error. I was seated, he was standing, I was focusing on getting a picture of Megan, and I was probably a bit to far for the feeble flash in my PowerShot S10... Next time maybe I'll bust out Photoshop -- but then you'd find out what operator error in Photoshop looks like!
[15:24] |
[computers/internet/weblogs] |
# |
TB |
F |
G |
0 Comments |
Mon, 26 May 2003
Home pages vs RSS Feeds
Tim Bray wonders if home pages are going away. I think of it this way. A home page is like a brochure or advertisement that is used to get someone's attention -- as a starting point for a relationship. An RSS feed is what you use if you want to keep the relationship going.
[15:46] |
[computers/internet/www] |
# |
TB |
F |
G |
2 Comments |
Dates and times in Python
Philip Pearson posted about date and time handling in Python. There's another alternative for ISO8601 dates (needed by Dublin Core's date), which is to use the
[15:45] |
[computers/programming/python] |
# |
TB |
F |
G |
0 Comments |
xml.utils.iso8601
package.
Sun, 25 May 2003
On linking...
Simon thought I was dropping a hint about linking. I must be more subtle than I know!
Here's my general rule for linking: I try to link to posts or resources that are interesting. I try to do this independently of who the poster is. If I meet one of "the big guys" and we talk about something interesting, then I link it. Otherwise I don't. I also post/link to keep up the conversations (like this one) that start up on blogs.
When I was a graduate student, I had an officemate (Hi Sai), who used to greet me in the mornings by saying "Tell me something interesting". That's what I'm trying to do with my blog.
[15:48] |
[computers/internet/weblogs] |
# |
TB |
F |
G |
0 Comments |
Martin Fowler's Bliki
Martin Fowler has started a
Bliki, a cross between a blog and a wiki. Don't just sit there reading this, go put it in your aggregator!
[15:20] |
[computers/programming] |
# |
TB |
F |
G |
0 Comments |
Sat, 24 May 2003
Rules for URLs
Thomas A. Powell and Joe Lima have written a nice article on ways to make URLs easier to use and more permanent.
[23:08] |
[computers/internet/www] |
# |
TB |
F |
G |
0 Comments |
Fri, 23 May 2003
My apologies to
John Lambert and Joe Beda Joe Bork
who were also at the Crossroads gathering. John and Joe were a part of the conversation that Dare and I were having. Unfortunately, I'm bad at names and didn't write them all down. John Porcaro's blog provided the missing names. Next time I'll write it down, I promise.
[23:32] |
[computers/internet/weblogs] |
# |
TB |
F |
G |
2 Comments |
Blogrolls and the "inner circle"
Dana Blankenhorn dropped me a nice note to thank me for referencing his blog. There's something simple about that gesture that warms my heart. From there we got into a discussion about the political process and blogrolls. I'll skip the political process part, but I do want to comment on the blogroll part. Dana and I were talking about the whole blogroll thing and how it is silly to define the success of your blog by your blogroll. I'd also say that it is silly to define the success of your blog by how many blogrolls you are on. That's only reinforced as I read Simon's posts about "cracking the inner circle". Simon, I don't care if you use frames in your blog, or where your blogroll is, or whether I'm on it or not. There are some of us who care about the content. One thing I will say is that I know that you've got more content in there. We've talked when we were both at IBM, and I've seen you speak a few times. You've got things to say and a manner of saying them. Don't give up.
[23:26] |
[computers/internet/weblogs] |
# |
TB |
F |
G |
2 Comments |
Carlos strikes again
Carlos (with the help of the E Rights project) has discovered that lambda can be used to create objects. In the interest of helping Carlos, and any other interested parties grok this idea, may I suggest Chapter 3 of The Structure and Interpretation of Computer Programs. You may have to back up to section 3.1, but section 3.2 explains how to make objects out of lambda and state. The designers of Scheme were influenced by Hewitt's work on actors.
Updated: I'm a monkey. I didn't follow all the links in Carlos' article, and missed the fact that the C# delegates article that he refers to was written by my friends Steven Lewis and Wilhelm Fitzpatrick.
[22:54] |
[computers/programming] |
# |
TB |
F |
G |
1 Comments |
OSCON for sure
I've completed my registration for the O'Reilly Open Source Convention. I'll be in Portland from Tuesday July 8, through Friday July 11. If there's anyone who wants to get together during OSCON, please leave a comment on this entry. I know that Sam and Patrick Logan are going to be there, and I'm interested in a what's next discussion.
[15:38] |
[computers/open_source] |
# |
TB |
F |
G |
2 Comments |
Thu, 22 May 2003
"It's all about being the McDonald's of Software"
Dare Obasanjo provided the title for this post. Please remember that Dare works for Microsoft, so that automatically makes him evil ;-).
Last night's blogger gathering at Crossroads was about a quarter the size
of the previous one. It was probably not publicized that well. At
least that's the impression I got from talking some of the folks there
tonight. There also may have been some competition from the monthly
Seattle blogger meetup mentioned at seablogs (go look
at the site -- there's a great map of Seattle and blogger locations,
and the map is even big enough to show little old me out to the west
on Bainbridge Island.
Lack of quantity doensn't imply lack of quality. I got a chance to
spend a bunch of time with people that I didn't get to talk to at the
last gathering.
Joshua Allen and I were the first to arrive. Joshua brought his 2
year old daughter Megan to the gathering. Here's her picture (Hi
Megan).
Joshua and I talked about kids and speaking Chinese. His wife is
Chinese, while my wife is Caucasian (I'm "Chinese American" or
whatever the latest PC term is). I also learned that Joshua and Dare
are the PM's for the core XML support in .NET. Joshua and I didn't
talk much about that, but Dare and I sure did. He also related a few of his adventures as one of the first Microsoft bloggers.
Dare was the next to arrive. We spent some time talking about RSS
Bandit, the history of how it came to be, the things that need to be
done, as well as feature requests. I believe that RSS Bandit is the aggregator to watch.
Why do I say this? Dare and Torsten are almost at feature parity
with SharpReader. There are two of them (plus a few kibitzers) while
there is only one of Luke. The RSS Bandit sources are on
gotdotnet.com. The SharpReader sources are nowhere, although Luke is
planning to open source SharpReader soon. Unless that happens soon,
Dare, Torsten, and crew are going to pick up the people who are
interested in hacking on an aggregator. It will be interesting to see
what happens with this.
After we got done with RSS Bandit, the discussion turned to XML. I
enjoyed this conversation immensely. Dare and Joshua are doing the
same stuff for .NET that I was doing for XML parsing in Java. It was
very interesting to see that our opinions have developed
independently, but are quite similar: we both think that SAX and DOM
are bad API's for XML. As I've posted before I think that the pull
based readers that are in .NET are very nice. We also both hate XML
Schema. I was astonished to find that the Microsoft Schema WG reps
were also not part of the dev team working on the parser. This was also true when I was working on XML Schema at IBM. We'll all be paying for this in the
years to come. Both of us share a disillusionment with and
suspicion of the W3C and standardization processes in general. As a
take off on this, I explained my frustration with the JCP and offered
my "let a thousand flowers bloom, and the best will remain" theory of
how we can let open source do what standardization has failed at.
One of Dare's replies was basically that he's grateful for the JCP
because it's slowing Java so that .NET can catch up (I think his actual words were something like "Every day I pray that Sun will last one more year"). Actually, if you look at the XMLReader stuff and the XPathNavigator and ObjectXPathNavigator stuff, it looks to me like Microsoft
is passing Java, not catching up. I don't know if this is happening
in other places in the platform, but its definitely happening in the
XML core. It gets worse too. Erik Meijer is a part of Dare's team,
and has written a very interesting paper on how to integrate
relational tables and XML into C#. If this work actually makes it in
to C#, its going to make a monkey out of Java. In order for this
stuff to make it into Java, there'd have to be a JSR for it, and by
the time that got finished, I might be a grandparent. If Sun doesn't
open up Java in a way that allows it to match innovations at the same
velocity as C# and CLR, then Java is going to be in trouble. All this
talk of Sun stewarding Java is going to result in a platform that
can't compete with C#. And that's *before* Mono gets into the act.
One last tidbit from my conversations with Dare. Somewhere in there
we got talking about open source, and Dare mentioned the infamous Dave
Stutz memo. He said that one of the things that resonated with him
was the idea that the world is moving to a loosely coupled, component
style of usage, while a big part of the Microsoft value proposition is
integration. Dare was talking about the length of time it takes to do
a release at Microsoft. The fully integrated value proposition means
that MS releases infrequently, because it takes time to do a good job
of building a fully integrated product. The open source / loosely
coupled model allows the release early / release often style of
development that allows the developers to get feedback and steer the
development of the product in much smaller time intervals. Dare's
working on API's and he get a chance once every 18mos-2yrs to deliver
something based on the feedback that he got on the previous iteration
of his product. This is like the difference between Agile and
Heavyweight processes. The ability to steer and react quickly is
important. In fairness, I should point out that Sun has been
following a similar pattern with Java and J2EE. While in principle
the various pieces of J2SE and J2EE are described by independent JSRs,
they are usually not delivered independently. So Sun is also
suffering from an inability to react quickly.
Simon Phipps was the other non-MS blogger at this one. I didn't get
to talk to him much -- he was talking with Robert Scoble and John
Porcaro about blogs, community and publishing. He was toting a
Titanium powerbook, though. Last time I saw him (at ApacheCon) he was
toting a recently kaput Windows XP box (I think). Since it takes me
so long to get to Bellevue I usually try to piggy back another activity on top
of it. This time I took a trip out to the new Apple Store in
Bellevue that everyone's been writing about. I hadn't had the chance
to go into one before and I was curious. I looked at the PowerBook
G4's, since I'm in the market for a laptop. The 17" PowerBook is just
too big for me. I know from experience that a 6lb machine is the
limit of what my body can schlep around for any period of time. The
12" PowerBook was too hot. Literally. I think I was getting
burned. The 15" Powerbook was just right, but I still can't get over
the Carbon layer thing (it not being open source, that is). So I
guess I'll probably get another Intel based laptop. I also looked at
the new iPods and the Bose noise reducing headphones. I wish there
was a way to try out noise reduction headphones in your anticipated
environment. They're too pricey to take risk on if they don't work, although they seemed to be doing a good job in store -- but I'd like to know how they work on crying babies.
The iPod industrial design doesn't appeal to me at all. But the
controls seemed functional, and 30GB is a lot of storage in a
cigarette pack size.
Back to the blog party. Last but not least, I met Robert Scoble on
the way out. Dare, Robert, and I stood outside of Crossroads for
another hour and a half. Dare was giving Robert some advice and
explaining how things work inside of Microsoft. I
found this to be a very educational discussion.
[11:18] |
[computers/internet/weblogs] |
# |
TB |
F |
G |
1 Comments |