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 ...
Mon, 31 Mar 2003
Another good reason for Java to be open source
Lambda the Ultimate had a pointer to this
seminar on memory management research. If Java was open source, all these people could experiment on the real JVM, and we could all benefit from this stuff a lot faster.
Also, problems like the JDK 1.4.1 StringBuffer leak would probably be fixed by now too.
[23:54] |
[computers/programming/java] |
# |
TB |
F |
G |
0 Comments |
Is it April Fools already?
Recently I've been thinking about switching over one of my Linux boxes to run Gentoo. This evening the April 1
edition of the Gentoo Weekly News came out, claiming they were switching from ebuilds to RPM. Nice joke, guys (I hope).
[23:52] |
[computers/operating_systems/linux] |
# |
TB |
F |
G |
0 Comments |
Sat, 29 Mar 2003
Nexus, the ASF, and open source
In the last chapter of Nexus, Beyond Coincidence,
Buchanan writes about the ability of clustered (small world) networks
to foster social capital. His definition of social capital:
[14:40] |
[computers/open_source/asf] |
# |
TB |
F |
G |
0 Comments |
... the ability of a team to work as a team on its own, willingly, without participation being managed by legally binding rules and regulations, the need for which is already a signal of lacking efficiency. In the workplace, efficiency and the organization's ability to learn and adapt in the marketplace tend to suffer from a lack of social capital. The same lack can hamper efforts to improve community well-being, but if social capital can be intelligently fostered -- sometimes just by linking several people together into an artificial social cluster -- improvement can be striking.There is a lot of bumping around within the ASF regarding the structure of the foundation and oversight of the various projects. It seems to me that social capital is what makes the various ASF projects successful. According to this description, the discussions we are having about structure and oversight are warning signs that we are losing efficiency. There's a tension here between the legal entity that is the ASF (a corporation, technically) and the network or community of people that is the ASF. The legal entity needs to demonstrate oversight in order to provide legal liability, but that very oversight reduces the social capital and thereby efficiency of the various projects or subprojects. There's a struggle here between organizational structures and network/community structures. As far as I'm aware (and I'm no expert) most organizational structures are a poor fit for network/community structures. The organizational (or perhaps more accurately, institutional) structures hamper the network structures. Network oriented structures seem to be most effective and productive, but in the business and legal worlds, people want to deal with institutions.
Nexus
Today I finished Mark Buchanan's Nexus. This is another book about network theory, and for much of the book, I found myself comparing it unfavorably to Albert-László Barabási's Linked. However, in Chapter 8, Buchanan describes the problem of airport congestion. The airline hub and spoke network is an example of a small-world network, that should display the winner take all property. The only problem is that's not how the network actually behaves. As certain nodes in the network attract more and more links, they become unable to handle them. The experimental results described in studying this problem show that in networks where it costs something to handle additional links, the network becomes more egalitarian (the number of links tends to be evenly distributed). One thing that this says to me, is that eventually, for some network services, the only way to handle the load is going to be via an egalitarian network. The technical success of the various P2P file sharing networks seems to be evidence of this observation.
[14:25] |
[books] |
# |
TB |
F |
G |
0 Comments |
Fri, 28 Mar 2003
Topic rolls
Matt Mower's work on topic rolls is really interesting. I keep lamenting the lack of multiple categorization in in PyBlosxom, and things like topic rolls are a good example of why. Ultimately I think that the inability to do stuff like this is going to force me to move off of PyBlosxom. While I appreciate the simplicity and elegance of the blosxom filesystem storage model, I keep finding things that are too hard to do with just the filesystem. The only way I've heard about doing multiple categorization is to use symbolic links, which just doesn't cut it for me.
The other difficulty that I'm running into with PyBlosxom has to do with its implementation as Python CGI's. I really like Python, but there are a bunch of things that would be a little easier if the blog software were implemented as a Java web app. I think that mod_python can solve this problem, so that is not as big a concern for me as the storage model.
Rys McCusker has started writing about the Chandler storage subsystem to the OSAF Wiki, and it looks like the pyre level will handle synchronization / replication, which would make it the perfect storage subsystem for a lot of things that I have in mind.
[15:40] |
[computers/internet/weblogs] |
# |
TB |
F |
G |
0 Comments |
Eclipse 2.1 final
The Eclipse 2.1 build is now available. There is a long description of what's new. Major features for me include:
[15:16] |
[computers/programming/java/eclipse] |
# |
TB |
F |
G |
0 Comments |
- Emacs key bindings
- New Ant view and editor
- Linking to external files and directories (so others will stop harping on this)
- Linked rename
- More and improved refactorings
- Add Delegate Methods dialog
Wed, 26 Mar 2003
Mozilla tips and tricks
Mozilla's support for tabbed browsing convinced me to switch over a few months ago. Henrik Gemal's site has a pair of good tips for mananging multiple Mozilla installs:
[12:52] |
[computers/internet/www] |
# |
TB |
F |
G |
0 Comments |
- A guide to all the files in the Mozilla profile directory.
- A description of how to synchronize two profile directories on different machines. I think that this procedure can be improved by using Unison to do that actual file synchronization.
Tue, 25 Mar 2003
The Influentials
I was looking forward to reading The Influentials. Now that I've finished I'm a little bit disappointed. The book is a fine collection of statistics and tables regarding the preferences and behaviours of "influential" Americans, but the book's focus on how to market to this group of people is not what I was hoping for. I had hoped to see some more analysis describing why this group has influence, and what they are using their influence for. There's a bit of this in the book, but what is there seemed kind of obvious to me.
[14:42] |
[books] |
# |
TB |
F |
G |
0 Comments |
Mon, 24 Mar 2003
E-mail patterns map corporate structure: deja vu
CNet news has an article about HP researchers who have used email patterns to determine the structure of an organization. The page of the HP Information Dynamics group has the paper and a bunch of interesting related papers.
As an undergrad I did some
work that seems like it is related. We looked at who talked to who, in the same way that the HP team looked only at To: and From: headers.
One of my hopes for the Chandler platform (as opposed to the Chandler application) is that it will facilitate these kinds of studies.
[23:35] |
[computers/open_source/osaf/chandler] |
# |
TB |
F |
G |
0 Comments |
Sun, 23 Mar 2003
Your Open Source Plan - do you have one?
CIO Magazine has an article titled Your Open Source Plan that looks like a good way to help management level people get more comfortable with open source software.
[23:20] |
[computers/open_source] |
# |
TB |
F |
G |
0 Comments |
Sat, 22 Mar 2003
O-STEP Source code escrow
The
O-STEP source code escrow program is an interesting idea for (eventually) promoting open source. The idea here is for companies to put their source code into escrow until the company attains a sales target. At that point, the source is released from escrow under an open source license (GPL or BSD). I'm not sure that I think this will work, but I am glad to see that there are people thinking about how to innovate in software. Since this is being sponsored by the government, there is a chance that this will actually be done for software developed for the government.
[23:43] |
[computers/open_source] |
# |
TB |
F |
G |
0 Comments |
Fri, 21 Mar 2003
month-long contacts?
I've been wearing corrective lenses of some kind since I was 7 or 8 years old. This week my optometrist gave me a new kind of contact lense to try out. Apparently, these lenses are 5-6 times more efficient at getting atmospheric oxygen to the eyeball than the lenses I've been wearing. The practical outworking
of this is that I ought to be able to wear these lenses for a month without taking them out. The notion of waking up, blinking a few times and being able to see (without taking a laser to my eyeball) is pretty amazing. I've spent the last few days getting acclimated to the new material in the lenses, and I'll probably try sleeping in them over this weekend.
[23:43] |
[gadgets] |
# |
TB |
F |
G |
0 Comments |
Thu, 20 Mar 2003
codehaus
Bob McWhirter and some other folks have started up codehaus as a place to do open source stuff. I'm curious to see how this pans out -- what kinds of projects they do / attract, and what kind of uptake they get. I think that there is still plenty of room for experimentation and differentiation in open source.
[13:39] |
[computers/open_source] |
# |
TB |
F |
G |
0 Comments |
Multimethods in Python.
Multimethods are one of those language features that really simplify code if you need them. The GoF visitor pattern disappears in languages with multimethods. It seems that David Mertz had written a multimethod package for Python. It's described in an
article on IBM developerWorks.
I think that Greenspun's Tenth Law of programming
[13:20] |
[computers/programming/python] |
# |
TB |
F |
G |
0 Comments |
Any sufficiently complicated C or Fortran program contains an ad-hoc, informally-specified bug-ridden slow implementation of half of Common Lisp.needs to be extended to Python as well. At least it's possible to do this somewhat nicely in Python.
Multitasking makes you stupid, studies say
According to this article, multitasking is less efficient than single tasking, and reduces the energy that the brain has available for completing each task. This isn't really a surprising result (especially if you understand how multitasking works in an operating system), but it's nice to have my experience backed up with actual studies.
[12:54] |
[misc] |
# |
TB |
F |
G |
1 Comments |
Wed, 19 Mar 2003
I actually won something
Last night was the monthly SeaJUG meeting. It happened to be one of the nights when Jayson Raymond, the SeaJUG chair was giving away some of the books that publishers periodically send him. His method: stick his finger somewhere in the book and announce the total number of pages, followed by a flurry of guesses as to what page his finger is in. Closest guess wins. Last night I actually won a book. Not only that, I actually wanted to win the book, which was Hang Ngee Mok's From Java to C#: A Developer's Guide. I'm not sure it's the greatest book on C#, but I just need something to get me going on my .NET exploration. And it does describe the Global Assembly Cache.
[12:40] |
[computers/programming/dotnet] |
# |
TB |
F |
G |
0 Comments |
What Should I Do with My Life?
I've been reading Po Bronson's What Should I Do with My Life?. I decided to read it after reading a description of The Grotto in John Lam's weblog. The book is a collection of stories of people who were at various stages in their journey to understand the question that is to book's title. Bronson's experience contradicts the conventional wisdom of many people pursuing a dream -- work some job, get enough money to tell the world to take a hike, and then go do your thing. Very few of the people that he chronicled did that. I appreciated the interweaving of his own journey with those of the people that he interviewed.
[12:31] |
[books] |
# |
TB |
F |
G |
1 Comments |
Us too...
From Andy Oliver:
[01:46] |
[computers/programming/java] |
# |
TB |
F |
G |
0 Comments |
I'm game. Send me email and I'll give you CVS access on my server and we can check all of our code in there and start refactoring. Last time I tried and downloaded what you had it was just a jar and I couldn't quite figure out what to do.. If we can get all the source together and such we can make this happen for real.Check your e-mail...
Mon, 17 Mar 2003
Jardeps == .NET global assembly cache?
Andy quotes Markus on jardeps
[19:13] |
[computers/programming/java] |
# |
TB |
F |
G |
0 Comments |
Guess what.. I'm working on the same thing only starting from the fetching the jar side. Then storing it in a local repository, then using it for builds, then using it for runtime. I'm hoping to steal some code from JBoss who already have the solution to parts of this problem.I had no idea. I mean, until a day or two ago, I didn't even know what the Global Assembly Cache was. (I still don't know what an assembly is, really -- I've been having too much fun on Python to get to .NET). Markus must have already had the virus... Anyway, jardeps can already do the dependency analysis, jar downloading, and classpath generation. It doesn't do any classloader games yet, although that would be a logical thing to do. The next thing on my list was to try and get the dependency information from tiny little XML descriptors like we've been discussing on repository@apache.org. I haven't done much because I've been waiting to see what happened on repository@ and with the Maven top level project. Hey Andy, why don't we find a way to do this together?
Extrovert on Introverts
Elizabeth Lane Lawley gives an extrovert's take on the introvert / extrovert thing started by Jonathan Rauch's article in the The Atlantic. I found the following excerpt particularly interesting:
[18:33] |
[society] |
# |
TB |
F |
G |
0 Comments |
Over the past year, Elouise and I have had a couple of interesting “talks” about our differences in personality type. Most of the substance of these talks, however, has occurred in e-mail or IM. I didn’t give that much thought until last night, when Gerald and I were having coffee with AKMA and his wife Margaret. She was talking about how useful IM is for parents communicating with children at college—particularly when one or both tend toward introversion, since the IM process allows a slower unfolding of the conversation. It was an illuminating moment for me. It made it clear why my friend Elouise and I have been able to have these conversations about different approaches so much more easily in electronic media. The playing field is leveled by the nature of the medium. I can’t fill all the available bandwidth with my excited ramblings—and she can carefully choose her words, making sure that what she says is exactly what she means.I've certainly found that IM is a productive medium -- I usually prefer it to the telephone, which doesn't have that rate limiting effect. This excerpt is giving me some food for thought about how different people handle conflicts:
When we had our first lengthy meta-conversation about these issues, it was touched off by an incident between me and a mutual friend. I'd been pushed a little too hard by this person on a bad day, and I’d behaved in a pretty characteristic (for me) way—I lashed out, and said something really hurtful. I'm not terribly proud of what I said that day, but I knew (and assumed that he would, too) that things said in the heat of the moment like that aren’t that meaningful—they’re like lancing a wound. Something nasty comes out, but then you can heal. But this friend was deeply hurt by my outburst, and his response was to shut down. No communication. Period. When I pushed back, I was told in no uncertain terms to back off. So I told Elouise—via e-mail—how baffled I was by this reaction. With her permission, I’m going to quote from our dialog, because I think it's instructive. She told me: "What helped me keep the friendships I do have, is that in the same way you grew up forgiving and expecting verbal collisions, they forgave and understood the way I’d retreat. (Like a cat licking its wounds). I am not saying either way is particularly healthy. In a perfect world there would be no conflict…but clearly, what behavior is considered appropriate or offensive in anger are opposite." We then went on to have a lengthy exchange about the whole "leave me alone" approach. I said that the longer I went without talking to someone after a fight or misunderstanding, the more I tended to blow things out of proportion, attribute meanings that weren’t really there, and generally create an entire (and often inaccurate) world of hurt to wallow in. She, on the other hand, said that the longer she goes without talking to someone she’s angry at, the easier it is to forget the bad and start remembering the good. Being forced to talk about the event or conflict, to her, was a lot like picking at a scar. The healing had to happen internally, with a barrier against the outside world.But at some point, the healing has to come into the relationship. You can't go on not talking to people forever.