they were hanging out in California. Being warm. (That's Angie's comment. I'm still wearing sandals. Although I saw a Montrealer shudder at me today. That was worth it. I think I'll keep wearing them all week, even if it causes me to lose my toes)
but.. BUT! that's not the exciting part!
This is:
http://www.realtor.ca/PropertyResults.aspx?Mode=5&id=1487634This evening we accepted the counter-offer on the place.
The timeline so far: arrived Saturday, looked at places 10:30 Sunday morning. Made offer 7pm. They made a counter-office at 8:30pm. We accepted the counter-office at 6:30pm today.
Next up: Review property agreement. Find someone to sign all the paperwork for us when we're out of town. Pray that CMHC aren't rat bastards. Inspection on Saturday at 1pm.
Oh, and none of this includes going to the house party on Saturday night, the last minute finding of a hotel as our friend's place had a pipe burst where we were going to stay. Finding out that another friend had a place to stay. Me forgetting my laptop at the hotel. We saw the midwife this morning. And I went to work today.
Sometimes I think that Aikido Rondori has nothing on my life. =)
One ongoing problem with TCP networking is the combination of RPC services and port based services on the same host. If you have an RPC service that uses a port less than 1024 then typically it will start at 1023 and try lower ports until it finds one that works. A problem that I have had in the past is that an RPC service used port 631 and I then couldn’t start CUPS (which uses that port). A similar problem can arise in a more insidious manner if you have strange networking devices such as a
BMC [1] which uses the same IP address as the host and just snarfs connections for itself (
as documented by pantz.org [2]), this means that according to the OS the port in question is not in use, but connections to that port will go to the hardware BMC and the OS won’t see them.
Another solution is to give a SE Linux security context to the port which prevents the RPC service from binding to it. RPC applications seem to be happy to make as many bind attempts as necessary to get an available port (thousands of attempts if necessary) so reserving a few ports is not going to cause any problems. As far as I recall my problems with CUPS and RPC services was a motivating factor in some of my early work on writing SE Linux policy to restrict port access.
Of course the best thing to do is to assign IP addresses for IPMI that are different from the OS IP addresses. This is easy to do and merely requires an extra IP address for each port. As a typical server will have two Ethernet ports on the baseboard (one for the front-end network and one for the private network) that means an extra two IP addresses (you want to use both interfaces for redundancy in case the problem which cripples a server is related to one of the Ethernet ports). But for people who don’t have spare IP addresses, SE Linux port labeling could really help.
Share This
Today, among all the other things I accomplished, I converted the rest of
the system templates for the eyrie.org systems to Git and tweaked my
personal configuration management system to make better use of Git's
features to push data around. I was feeling on a productive roll, so I
also
wrote up the system I use.
This system has a long history. The first commit in the underlying
repository for my personal workstation is dated September of 1998, and the
underlying system was already in use at Stanford before I started working
here more than 15 years ago. It survived several major OS changes and
several significant reorganizations and only recently has been replaced
for day-to-day server management by
Puppet. We still use
bundle to do some of the initial system
configuration inside FAI before the system is put together enough to run
Puppet.
Puppet is overkill for a few personal systems, so the system I'm using is
based on our previous revision of our server template system, with some
modifications to not depend on AFS and to make remote deployment of
changes easier and simpler. It's not as fancy as some of the new ideas
for managing all of
/etc in a VCS, but it's been reliable and
capable enough for me that the core of the system remains unchanged after
ten years.

It is nice to see someone
apologising for their planned failure to consider Linux users. It's ridiculous that they even have to. It seems to me that these people have spent way too much effort on making the logo and menus scroll in from the left and right of the screen, and not enought effort on the actual functionality of their website.
I fail to understand what benefit they have gained from using the
Pizza UI for their logo & menus (yes, really) rather than using simple links - or CSS-based menus, if they needed fancy. The page layout doesn't actually need anything more than simple text links. The logo (thankfully) does nothing after it's page-load scroll. For extra 'fail' marks they substitute graphics when I initially arrive with Javascript disabled (and wearing my
tinfoil hat) but the graphics give me the appearance of a menu without actually performing a useful function.
The user-interface situation gets worse later, when I am taken through five successive screens to upload and classify some new media. It seems that in order to bore people who are foolishly trying to upload their home movies over "
poorband" they attempt to display a progress bar. A better approach would be to ask me all of the questions about the media I am uploading on one
single page and let me get on with something useful. This might be news, but it seems that such an interface could be done in plain HTML, and wouldn't actually require me to enable javascript for a site which is
riddled with
cross-site scripting flaws.
Since it's the school holidays at the moment we took advantage of Te Papa's excellent institution of "Late Night Thursday" last week and visited the other end of the website in person. My disappointment in the website was then entirely eclipsed by my disappointment in the real-life part of the exhibit. The "walk on the map and see photos of the area" component was decidedly clunky, with no clear feedback between stepping on a tile and media appearing on the wall In fact it seems most tiles don't actually do anything, and there are only a few small screens in the walls to display the images. The "postcards blowing in the wind" gimmick amused the kids for about 20 seconds, tops.
The 'wall' was quite a lot more successful, amusing me and the kids for nearly half an hour, though we're unlikely to go back next time we're there. There were plenty of annoyances also, in particular that it doesn't appear to use the full resolution of uploaded photos, the interface is slow and it is difficult to see what you are doing at times.
It's good that they've started practising their apologies, firstly targeting the small (but geeky :-) segment of New Zealanders who are Linux users trying to help them out by providing them with free content.
Now I am looking forward to their further apologies to larger groups of justifiably annoyed people, culminating with the ultimate one, where they apologise to all of the taxpayers of New Zealand who funded this incredible waste of money.
I can imagine that something interesting could be done with a lot of media of New Zealand and now that Te Papa has started to amass a collection in this way, perhaps they will.

It is nice to see someone
apologising for their planned failure to consider Linux users. It's ridiculous that they even have to. It seems to me that these people have spent way too much effort on making the logo and menus scroll in from the left and right of the screen, and not enought effort on the actual functionality of their website.
I fail to understand what benefit they have gained from using the
Pizza UI for their logo & menus (yes, really) rather than using simple links - or CSS-based menus, if they needed fancy. The page layout doesn't actually need anything more than simple text links. The logo (thankfully) does nothing after it's page-load scroll. For extra 'fail' marks they substitute graphics when I initially arrive with Javascript disabled (and wearing my
tinfoil hat) but the graphics give me the appearance of a menu without actually performing a useful function.
The user-interface situation gets worse later, when I am taken through five successive screens to upload and classify some new media. It seems that in order to bore people who are foolishly trying to upload their home movies over "
poorband" they attempt to display a progress bar. A better approach would be to ask me all of the questions about the media I am uploading on one
single page and let me get on with something useful. This might be news, but it seems that such an interface could be done in plain HTML, and wouldn't actually require me to enable javascript for a site which is
riddled with
cross-site scripting flaws.
Since it's the school holidays at the moment we took advantage of Te Papa's excellent institution of "Late Night Thursday" last week and visited the other end of the website in person. My disappointment in the website was then entirely eclipsed by my disappointment in the real-life part of the exhibit. The "walk on the map and see photos of the area" component was decidedly clunky, with no clear feedback between stepping on a tile and media appearing on the wall In fact it seems most tiles don't actually do anything, and there are only a few small screens in the walls to display the images. The "postcards blowing in the wind" gimmick amused the kids for about 20 seconds, tops.
The 'wall' was quite a lot more successful, amusing me and the kids for nearly half an hour, though we're unlikely to go back next time we're there. There were plenty of annoyances also, in particular that it doesn't appear to use the full resolution of uploaded photos, the interface is slow and it is difficult to see what you are doing at times.
It's good that they've started practising their apologies, firstly targeting the small (but geeky :-) segment of New Zealanders who are Linux users trying to help them out by providing them with free content.
Now I am looking forward to their further apologies to larger groups of justifiably annoyed people, culminating with the ultimate one, where they apologise to all of the taxpayers of New Zealand who funded this incredible waste of money.
I can imagine that something interesting could be done with a lot of media of New Zealand and now that Te Papa has started to amass a collection in this way, perhaps they will.
I just got back from the
OpEd project/workshop. In short, it was worth every penny and if you are interested in writing an OpEp and riding the public debate bandwagon, this is the perfect place to start. Why? Well, first because the world of punditry and debate needs more diversity and women and this project is fundamentally geared toward getting more women into the system and in a no nonsense, accessible, inspiring, and yet utterly pragmatic fashion.
First, if you don’t know the stats concerning women, they are depressingly dismal. For example, 9 out of 10 submissions are from male writers and 88% of published pieces are from male authors (and this is matched by all sorts of other disturbing figures about the lack of women non-fiction writers, TV producers etc). In the OpEd field, the main problem, in short, is that women are not even trying.
Today’s full-day workshop was enlivening and engaging.
Catherine Orenstein, the founder and dynamic leader of the project, dusts away a lot of the mystery of this writing genre and equips participants with some basic skills and tactics to get you started (then, in my opinion, it takes a fair bit of work and persistence to master, just like any type of writing but it is not rocket science either).
What I like most about the project is its utter pragmatism. Cathy knows that once there are enough women in the system, the project can close shop, for it will be other women who will take over the reigns and inspire other women to write them (and informally mentor them as well). It is well known, for example, that once there is a critical mass of women, let’s say in the work place, then these women are the point people for recruitment so that the company does not need to actively recruit women.
I have heard this argument before and have had a number of personal experiences that confirmed this fact. Last year, for example, a student from my department was organizing a conference and he could not, for the life of him, find any female speakers or discussants, despite asking a number of them who declined because of other commitments. He had ran out of options, that is, until he talked to me. In less than a minute, I rattled off like 5-7 other possible choices and within a day, we had 2 on board. It is clear that women know other women (and many are friends) so the best person to go to to tap into are other women.
In terms of the actual writing of an OpEd, I am not sure I will be writing one anytime soon in so far as I need to really pump out a few more academic articles as the future of my jobs depends on them. But I may write a draft version of one that I will hammer into finer shape if a timely news event arises. Otherwise, I look forward to spending more time on this genre, especially once my book is done and know that if I am going to stay in academia, I will for sure make space for this type of thinking and writing.
Finally if you are interested in attending one of the
public, women-only seminars and you know me, let them know you learned about the project through me, and you will get discount.
One thing I am known to do is complain how the public/academic discourse surrounding/around technology/computers is overwhelmingly male (Lessig, Benkler, Zittrain, Shirky and I can go on and on). But one day I realized that if I am bothered by it, I should do more than talk the (often) empty talk of complaint. So I decided to enroll in a day long
training for writing OpEds, which kicks off tomorrow.
I am not sure if engaging in public debate is what I want to do, mostly because of piling more work and time commitments on a very full plate but I am starting to explore what it means and what it may take to leave the Ivory Tower. Here is a little more info about the OpEd Project:
The OpEd Project - featured by The New York Times, Feministing.com and Katie Couric on CBS News - is an initiative to expand public debate, with an immediate focus on targeting and training women experts across the nation to project their voices on the op-ed pages of major newspapers, online sites and other key forums of public discourse. The lack of diversity on the op-ed pages - which are a source for all other media - deprives the public of robust, democratic debate, especially important in this space which is intended to showcase divergent opinions. It also means we are only hearing from a tiny sliver of the nation’s best thinkers. Imagine a baseball team of only pitchers - how well would it do?

I received
some
feedback on
my previous
BeID post, where I explained how to log in to a remote system by use
of your digital ID card.
Philip and Guy both claim it possible or likely that the crypto keys
on eID cards are stored on a system of the government somewhere and that
you therefore should not be using them.
I find this to be jumping the gun a little. Security is always a
trade-off; indeed, if you want to hide stuff from the government, then
using eID-based authentication might not be a very good idea. However,
there are other cases where eID-based authentication really
is
the correct option; and it is nice to know that this kind of thing is
possible. Security always is a trade-off; and if you make an informed
choice, there's nothing wrong about giving someone else access to your
server.
The fun bit is that Philip actually advocates
carrying
a clear-text printout of a list of still-valid passwords. Now
that, I feel, is unacceptable, security-wise. Personally, I'd
rather use a smartcard that only some secret government agency
might be keeping copies of rather than a list that any random
thief might make use of. The question really boils down to this, I
think: how likely do you think it is that someone else will be able to
get at your password by guessing or stealing it?
- Using a password that's related to your person or someone near
you, or is based on a dictionary: rather likely. There are scripts out
there that will guess these passwords. Don't use them.
- Using a printout of a list of one-time passwords: somewhat less
likely (they can't be guessed by script), but still not very hard
(wallets get stolen by the hundreds every day, and it usually takes a
while before one notices)
- Using smartcards with keys generated by someone else: somewhat
unlikely (there may be a few people who know my private key,
but one can't be sure of that; and, color me naive, but I tend to trust
the government to abide by its own laws—for the most
part—laws that prevent this kind of behavior)
- Using strong password: rather unlikely, provided you take care of
them.
What I mean by that last bit is that you should always generate your
passwords with a tool that generates fully-random passwords ('pwgen -s',
for example), and never write them down in cleartext anywhere. That of
course makes it slightly hardish to memorize them; what I do is to store
the password encrypted to my GPG key on my laptop, and I memorize the
password by changing it on a remote server that I need to access fairly
often (Debian's systems will do), but leaving my GPG passphrase and
laptop password as is for the time being. Every time I need to log in to
the remote server, I first try to remember the passphrase. If I can't
remember it, I look it up in the encrypted file (again taking care not
to store the file on disk). Once I start being able to log in to the
remote server
without having to look it up in the file, I
change all my other passwords. This process usually takes a few
weeks. Then, the
only way someone can get my password is either
by coercing me or by killing me and disecting my brain. And then
still.
Unfortunately, in the real world, I realize that many people do not
wish to go through all this trouble just to get a secure login, and
instead just choose a weak password. I guess that's why I think the next
best thing might be slightly better than using strong passwords...
One thing I am known to do is complain how the public/academic discourse surrounding/around technology/computers is overwhelmingly male (Lessig, Benkler, Zittrain, Shirky and I can go on and on). But one day I realized that if I am bothered by it, I should do more than talk the (often) empty talk of complaint. So I decided to enroll in a day long
training for writing OpEds, which kicks off tomorrow.
I am not sure if engaging in public debate is what I want to do, mostly because of piling more work and time commitments on a very full plate but I am starting to explore what it means and what it may take to leave the Ivory Tower. Here is a little more info about the OpEd Project:
he OpEd Project - featured by The New York Times, Feministing.com and Katie Couric on CBS News - is an initiative to expand public debate, with an immediate focus on targeting and training women experts across the nation to project their voices on the op-ed pages of major newspapers, online sites and other key forums of public discourse. The lack of diversity on the op-ed pages - which are a source for all other media - deprives the public of robust, democratic debate, especially important in this space which is intended to showcase divergent opinions. It also means we are only hearing from a tiny sliver of the nation’s best thinkers. Imagine a baseball team of only pitchers - how well would it do?

As mentioned I bought an EEE 901. The battery life was the clincher.
I've had it for about 3 weeks now, but have only really been using it
for a week - since I finished doing my mobile broadband survey and got
an
Orange contract.
I can't really comment on the supplied Xandros install. I used it for a
week or so, with Firefox + a shell for ssh (Ctrl-Alt-T IYF) but once I
found time I installed
Debian. I used the
EEE installer which I think
mainly does the appropriate ethernet driver magic without faff.
Certainly went smoothly and all up and running minus wifi, which was
soon sorted out with the rt2860-source package. Ethernet, bluetooth and
camera all seem fine. SD reader is a USB device that appears when a card
is inserted.
Battery life rocks. I can use it on the morning on the train (1hr30 or
so), suspend to ram all day, use it on the train on the way home and
then around the house in the evening without needing to charge it up.
And that's while powering the USB 3G dongle and without any real tuning
in terms of trying to save power by dimming the screen etc.
The keyboard *is* small. I wouldn't want this to be my main machine.
However it is just about touch typable and the overall machine size is
superb - even if I get a bad seat on the train I can still unfold the
screen fully and it's my arms/elbows that end up being the issue rather
than the laptop itself. I also notice the decrease in screen resolution
down to 1024x600 (my old laptop is 1024x768); I can't fit enough xterms.
:)
Speed seems fine too. I've not really pushed it hard (I've been
resisting installing build-essential) but for a handful of xterms and
Iceweasel it's doing a fine job. Equally firing up mplayer resulted in
perfectly smooth playback of some mpeg4 over the network. Must actually
remember to put something on it to watch on train journeys...
Speaking of train journeys the Orange dongle has integrated without too much hassle. 2.6.27-rc kernels have the appropriate hso driver but I found it caused crashes in areas of low/no signal. Patching up to the latest 1.6 driver solved the problem and adding PPTP to my work VPN into the mix means I can use offlineimap to pull mail locally and then read it with mutt on my journey even when the signal is fluctuating. Hopefully ridiculous starts can be mostly a thing of the past if I can get work done on the train.
What else to say? I'm quite liking the trackpad. The buttons are a bit
stiff, but I'm getting used to the double tap, or tap and drag gestures
in a way I never seemed to on the R200. Wifi reception seems fine. All
in all I'm happy with my choice; the small keyboard is the main drawback
and that's the (acceptable) price I pay for a small laptop.

It looks like I again did same mistake with Gammu and python-gammu binaries -
they started to crash randomly. It was again caused by fact, that they were
linked to two C runtime libraries (msvcrt.dll and msvcr70.dll). I should make
some automated check for this to avoid uploading so broken things, but I don't
know any command line tool which can list DLLs which are required by exe and
which works on Linux (Wine is okay too). Anyway the binaries has been just
recompiled and uploaded, so if Gammu or python-gammu crashes for you, please
download new version.
PS: Thanks to Olaf Leidinger, now I know how to check it automatically:
/usr/i586-mingw32msvc/bin/objdump -x filename.exe grep "DLL Name"
The first thing you need to do to get started using the
Amazon Elastic Compute Cloud (EC2) [1] is to install the tools to manage the service. The service is run in a client-server manner. You install the client software on your PC to manage the EC2 services that you use.
There are
the AMI tools to manage the machine images [2] and
the API tools to launch and manage instances [3].
The AMI tools come as both a ZIP file and an RPM package and contain Ruby code, while the API tools are written in Java and only come as a ZIP file.
There are no clear license documents that I have seen for any of the software in question, I recall seeing one mention on one of the many confusing web pages of the code being “proprietary” but nothing else. While it seems most likely (but far from certain) that Amazon owns the copyright to the code in question, there is no information on how the software may be used - apart from an implied license that if you are a paying EC2 customer then you can use the tools (as there is no other way to use EC2). If anyone can find a proper license agreement for this software then please let me know.
To get software working in the most desirable manner it needs to be packaged for the distribution on which it is going to be used, as I prefer to use Debian that means packaging it for Debian. Also when packaging the software you can fix some of the silly things that get included in software that is designed for non-packaged release (such as demanding that environment variables be set to specify where the software is installed). So I have built packages for Debian/Lenny for the benefit of myself and some friends and colleagues who use Debian and EC2.
As I can’t be sure of what Amazon would permit me to do with their code I have to assume that they don’t want me to publish Debian packages for the benefit of all Debian and Ubuntu users who are (or might become) EC2 customers. So instead
I have published the .diff.gz files from my Debian/Lenny packages [4] to allow other people to build identical packages after downloading the source from Amazon. At the moment the packages are a little rough, and as I haven’t actually got an EC2 service running with them yet they may have some really bad bugs. But getting the software to basically work took more time than expected. So even if there happen to be some bugs that make it unusable in it’s current state (the code for determining where it looks for PEM files at best needs a feature enhancement and at worst may be broken at the moment) then it would still save people some time to use my packages and fix whatever needs fixing.
Share This
This one derives inspiration from
revealing errors site that Benjamin Mako Hill runs.
The kid in the picture was trying to use the Tata Indicom kiosk at Richmond Road (Bangalore) and suddenly a Windows start menu turned up on the screen.
Sound and tested technology backing is what the kiosk reads in bold; well, if you insist!

(long post, you've been warned)
With his
his 'Omelette Post' about FOSS.IN/2008 Call for Participation, Atul Chitnis, the
FOSS.IN team 'leader' indeed sent an strong sign.
For those who aren't aware of it, FOSS.IN is the longstanding major FLOSS event in India and, still (just like our beloved Debconf) only run by volunteers.
Last year, along with Sam Hocevar, I had the chance to attend the event and share the groove of that big, huge, conference, with over 2,000 participants.
Some other Debian fellows also made it in the past (Jaldhar, Bdale...).
During the Debian Project Day as well as regular conference days, we
had the great opportunity to meet with the people who currently
participate in Debian (and Ubuntu) in South Asia, as well as first
meeting some major contributors from other projects. For me, and, I
think, of all people I met up there, this was a great *and
productive* event.
Maybe not productive at the moment it happened, but productive in terms of mutual awareness, knowledge and friendship. All people who attended such conferences (should I say "Debconf" or "FOSDEM"?) know what I'm talking about.
The conference was still quite focused on "real" FLOSS contribution more than evangelizing or politics. And I think it succeeded in it quite well.
This year, I already planned to not attend...mostly because such event, with the associated long travel time, is something I can't really fit in my real life right now. Also, because it conflicts with a planned Extremadura work session, indeed.
Still, I would indeed not have attended it.
Atul's post makes it clear: the even will only be about coding. The point is to put focus on people who code and we do 'real' code. Bug fixing is not coding. Translation effort is not coding. Work on support for complex languages is not coding.
Actually, what FOSS.IN/2008 organizers are trying to do is a kind of big Debcamp. I'm afraid it won't work this way.
From what I have seen in years of participation to Debian, things just don't come up this way. People don't sit down and code because they're invited to. And, still, are only "people who code" the only people that matter in a project?
Debian is sometimes seen as one of the biggest FLOSS projects all around (probably shared with the Linux kernel). How many people in Debian just "sit down and code"? What about those people who maintain our web site, our archive, setup our infrastructure, our new maintainer queue, our communication channels? What about those dozens of people who nicely maintain packages and keep the link with upstream developers, or fix bugs.... Those people do not seem welcomed at FOSS.IN/2008.
"Not only bug fixing" is said in this announcement. This, I don't get it. At all. Why would "bug fixing" be second class work? Why would it be more noble to "code" new stuff? Maybe Atul did not mean to say this. He wants to have Indian contributors in FLOSS to be more visible....but I don't share this. Indian contributors in Debian *are* visible. Giridhar Appaji Nag is visible, "my" translator crew is visible, Kartik Mistry is visible (he once was too visible, even, by maintaining a little bit too many packages...).
Bug fixing is the most noble task I see in FLOSS development. This is what we need the most. I recently blogged about how I feel APT to be 'poorly' maintained (once again, that was not targeted to current APT maintainers). What I would respect deeply is to see a bunch of Indian contributors stand up and take this task over. Atul, that would certainly not be "outsourcing code/package maintenance" and, no, these are not things one can get involved with instantly.
Really, I don't buy this vision and that saddens me. That saddens me mostly because I know the folks there. I know the FOSS.IN organizers and I have deep respect for them. I just think they're missing the target and are too ambitious: one cannot change an event so drastically by just saying it has to change..:-)
And, really, I'm even more sad to see localization work be called a
low-hanging fruit from a country where there are 22 official
languages. Or take words such as "talk is cheap, show me the code" as
$ DEITY 's Holy Word just because it was once said by Linus Torvalds
(who said many stupid things). Code is just one part of FLOSS
development. Certainly one of the important parts but still one part. What would have happened to FLOSS if only "coders" had been working on it all over those years? It would be something used by about 10,000 people all around the world, that's all.
We should not make an opposition between those who code and those who don't. By the way, do *I* code? When I'm sitting at 07:00AM on a Saturday morning, hacking on Samba packages and try to have Samba 3.2.4 built with the set of patches we have on Debian....do I code? I'm not *producing* code....the code was produced by those wonderful Samba Team folks.
Does Karolin Seeger code
when she's releasing samba with such a precise and constant schedule as she's doing since early 2008?
Or Ana Guerrero when
she (not alone!) compiles dozens of KDE packages and organizes and bumps the maintenance of KDE in Debian for the best of our users.
Or Miriam Ruiz when
she picks up each and every possible free game and tries to get it in Debian, talks with upstream developers, help them to fiw their code to suit the severe requirements of the Debian policy?
Or Clytie Siddall when she translates about every major FLOSS in Vietnamese (nor URL here, sorry)?
All these folks are part of the FLOSS game. You want Indians to be part of FLOSS game? Then allow the potential Karolin, Ana, Miriam or Clytie to be part of Indian FLOSS game and don't try to make FOSS.in the place where you seek the future Indian Linus Torvalds and only him her.
Talk is cheap, show me the contribution.
A comment on Facebook yesterday got me thinking what American "traditional values" are all about. We hear it a lot, and I suspect it means something different to different people.
Here's what it means to me.
It starts with an ethic fundamentally informed by the central tenets of Christianity -- which are also excellent standards of decency by secular standards. We are called to have a relentless drive to care for the repressed, poor, downtrodden. As Jesus said, "whatever you do to the least of these, so you do to me." It means extending the hand of friendship and compassion to all, in our own neighborhood and around the world. It means taking good care of the resources we have, acting responsibly, and affirming and supporting others so they can do the same. It means that, as our founding fathers emphasized, remembering that all people are created equal, are equally deserving of a good life, and deserve liberty and freedom. Finally, it means a constant realization that we are creating a human institution, and will always have an imperfect answer to these ideals, but that we can -- and must -- recognize our faults and strive to make things better.
How do these apply to our time?
We must start with the poor, the repressed, and habitually think of their situation in everything we do. That means remembering that when we drop a bomb in Afghanistan to kill a terrorist, we also usually kill 50 innocent bystanders, and devastate their families. It means remembering that illegal immigrants from Mexico come here because all they want is refuge from drug wars, food on the table, and a roof over their head. It means showing compassion in deportation proceedings: when illegal immigrant parents have a child born in the United States, the child is an American citizen and can't be deported, but deporting the parents will create an orphan. It means actively helping the repressed people of the world, whether they be in Sudan, Georgia, or AIDS victims in Africa, Muslims in New York. It means reducing taxes on the poor, giving them the skills and tools they need to make their way in life. It means caring for those with alcohol drug addictions, helping them to summon the strength to get past those problems, rather than locking them up or throwing them out on the street. In days past, this might have meant sharing firewood with the family down the road that was at risk of freezing in winter. Today it might mean assistance with winter heating bills.
Remembering that all people are created equal means that we must provide good education for everyone, whether they live in suburban California, inner city Detroit, or rural Appalachia. We owe quality health care to everyone; those without means to pay for health care, or to pay for a car to get to a clinic, should be treated with dignity and respect, and have equal access to medicine.
Remembering that all people are created equal also means that we must provide equal justice under law, and give everyone a fair trail. We must abandon the death penalty, because we have a shocking number of people on death row -- hugely disproportionately black and poor -- that have been shown innocent of their crimes thanks to advances in DNA testing. We must maintain the integrity of checks and balances in government, and support judicial oversight over search and seizure. We must avoid warrantless wiretapping because it subverts judicial oversight and corrupts our justice system by making the exercise of power secret. We must denounce torture, and refuse to employ it, because no human, being created equal, deserves to be treated in such a way -- and we have been applying it to innocent humans.
We owe the opportunity to grow up in a loving family, in a safe community, to every child. We must make sure that gangs no longer have the run of our streets, that drugs aren't displacing hard work as the currency of the community, and that adoption is inexpensive and practical for more families, rather than costing thousands of dollars. Doing so will help every child grow up knowing that they are valued, are important, rather than being unwanted and therefore abused or neglected.
Extending the hand of friendship and compassion to all starts with being a good example -- that shining city on a hill that Reagan talked about. We have to run an open, just, and fair society ourselves. We must not fear those that are different than us, just because they're different. We have to recognize that citizens of Iran, Russia, North Korea, Palestine, and the United States fundamentally are humans, created equal, seeking the same thing: a safe and secure future for themselves and their families. Being able to coexist peacefully means starting from that point, and being willing to talk to them, and yes, even their leaders, regardless of how distasteful they may be.
Acting responsibly with our resources starts at home -- things like not driving up credit card debt, not living outside our means. The same applies to government: massive deficits each year are exceptionally irresponsible and place us at great risk both at the present and in the future. We also have a duty to care for the planet and the environment in which we live, which means actively working to curb the things we do to harm the planet and cause global warming.
What about recognizing our faults? Perhaps the most patriotic duty asked of Americans is dissent. It is never easy, but is essential to keeping our democracy functioning. This country has a long history of successes, and also a long history of failures. We failed so many by keeping slavery legal for so long, and discrimination and lynching legal for even longer. We failed that Native Americans by forcing them from their lands and treating them with brutality. We have, to some extent, risen above these failures thanks to the ability to recognize them and try, to the best of our ability, to fix them. This is what the civil rights movement was about, and why we have a holiday for Martin Luther King, Jr. He spoke out against a society that said some couldn't eat in a restaurant because of the color of their skin, or who were repressed because of their economic status. He recognized that problem in America, and by speaking out against it, helped to change this country for the better.
Today we have to recognize the things we are doing wrong, and try to change them. We are torturing potentially innocent people. We are discriminating against Muslims and homosexuals in our midst. We are giving extraordinary power to big media companies through changes in copyright law, to big communications companies through failure to enact network neutrality laws. And we are labeling people that disagree with war as unpatriotic.
Notice some things I didn't mention, such as abortion. It's not really relevant, and the lines we are fed by both sides present us with this false pro choice vs. pro life debate. In reality, it seems to me that both sides want the best for the children: for every child to grow up in a loving family, where he or she is wanted. We all know from research that laws banning abortion do not actually reduce it. So we ought all to come together and try to make it more rare by providing more support to single parents, by making it easier to adopt children, by trying to make the perceived need for an abortion to go away.
So, in this election, I look at the candidates and it seems pretty clear which one is promoting traditional values and which one isn't. Obama is actively trying to reach across the aisle and find common ground. Even in his convention speech, he suggested ways to work together on abortion like I just mentioned. In the debate, he listened carefully to his opponent and acknowledged when he thought McCain was right. This is a necessary first step in working together to move forward. McCain subsequently released an ad mocking Obama for this.
What about caring for the poor? Again, Obama's tax policies, education policies, and health care policies take care of them far better than McCain's. About responsibility? McCain supported these deficit-busting budgets of the last 6 years, supported the oil-centric energy policies, and has been only lukewarm towards dealing with global warming. McCain and Palin mock Obama for trying to help poor Chicago neighborhoods 20 years ago, for being willing to just talk to our supposed enemies, for actually reaching across the aisle.
So yes, I am a values voter, and that's why I can't possibly do anything but vote for Obama.
Currently we have a problem with the Debian list server and Gmail. Gmail signs all mail that it sends with both DKIM and DomainKeys (DomainKeys has been obsoleted by DKIM so most mail servers implement only one of the two standards although apart from space there is no reason not to use both). The Debian list servers change the message body without removing the signatures, and therefore send out mail with invalid signatures.
DKIM has an option to specify the length of the body part that it signs. If that option is used then an intermediate system can append data to the body without breaking the signature. This could be bad if a hostile party could intercept messages and append something damaging, but has the advantage that mailing list footers will not affect the signature. Of course if the list server modifies the Subject to include the list name in brackets at the start of the subject line then it will still break the signature. However Gmail is configured to not use the length field, and a Gmail user has no option to change this (AFAIK - if anyone knows how to make Gmail use the DKIM length field for their own account then please let me know).
I believe that the ideal functionality of a sending mail server would be to have the configuration of it’s DKIM milter allow specifying which addresses should have the length field used. For example I would like to have all mail sent to an address matching @lists\. have the length field used (as well as some other list servers that don’t match that naming scheme), and I would also like to be able to specify which recipient addresses should have no DKIM signatures (for example list servers that modify the subject line). I have filed
Debian bug #500967 against the dkim-filter package requesting this feature [1].
For correct operation of a list server, the minimal functionality is implemented in the Mailman package in Lenny. That is to strip off DKIM and DomainKey signatures. The ideal functionality of a list server would be that for lists that are not configured to modify the Subject line it would leave a DKIM header that uses the length field and otherwise remove the DKIM header.
I have filed Debian bug #500965 against lists.debian.org requesting that the configuration be changed to strip the headers in question in a similar manner [2] (the Debian list servers appear to use SmartList - I have not checked whether the latest version of SmartList does the right thing in this regard - if not it deserves another bug report).
I have also filed Debian bug report #500966 requesting that the list servers sign all outbound mail with DKIM [3]. I believe that protecting the integrity of the Debian mail infrastructure is important, preventing forged mail is a good thing, and that the small amount of CPU time needed for this is worth the effort.
Also the Debian project is in a position of leadership in the community. We should adopt new technologies that benefit society first to help encourage others to do the same and also to help find and fix bugs.
Share This
I've written about
AUXV previously,
focusing on one of its most interesting applications -- its role in
helping find
linux-gate.so.1.
If you're starting your program, you can get the dynamic loader to
echo out the AUXV fields with the environment variable
LD_SHOW_AUXV, but if your process has started you'll need to
pull the values out of
/proc/pid/auxv directly.
This is pretty internal stuff for the dynamic loader and is
probably only useful if you're writing a debugger or doing some other
low-level tricks (such as debugging!). However, should you need to,
here is some
sample
code which does just that. Hopefully it will save someone else
some time!

There's a lot of debate these days about the impact of the increasing
number of paid developers in FOSS communities that started as volunteer
efforts and still have significant numbers of volunteers. Evangelia
Berdou's
PhD
thesis "Managing the Bazaar: Commercialization and peripheral
participation in mature, community-led Free/Open source software projects"
contains a contains a wealth of information and insights about this topic.
Berdou conducted interviews with members of the GNOME and KDE projects.
She found that paid developers are often identified with the core developer
group which is responsible for key infrastructure and often make a large
number of commits. Furthermore, she suggested that the groups may have
different priorities: "whereas [paid] developers focus on technical
excellence, peripheral contributors are more interested in access and
practical use".
Based on these interviews, she formulated the following hypotheses which
she subsequently analyzed in more detail:
- Paid developers are more likely to contribute to critical parts of the
code base.
- Paid developers are more likely to maintain critical parts of the code
base.
- Volunteer contributors are more likely to participate in aspects of the
project that are geared towards the end-user.
- Programmers and peripheral contributors are not likely to participate
equally in major community events.
Berdou found all hypotheses to be true for GNOME but only hypothesis two
and four were confirmed for KDE.
In the case of GNOME, Berdou found that hired developers contribute to the
most critical parts of the project, that they maintained most modules in
core areas and that they maintained a larger number modules than
volunteers. Two important differences were found in KDE: paid developers
attend more conferences and they maintain more modules.
Berdou's research contains a number of important insights:
- Corporate contributions are important because paid developers
contribute a lot of changes, and they maintain core modules and code.
- While it's clear that the involvement of paid contributors is
influenced by the strategy of their company, Berdou wonders whether another
reason why they often contribute to core code is because they "develop
their technical skills and their understanding of the code base to a
greater extent than volunteers who usually contribute in their free time".
It's therefore important that projects provide good documentation and other
help so volunteers can get up to speed quickly.
- Since many volunteers cannot afford to attend community events,
projects should provide travel funds. This is something I see more and
more: for example, Debian funds some developers to attend Debian conference
and the Linux Foundation has a grant program to allow developers to attend
events.
- Paid developers often maintain modules they are not paid to directly
contribute to. A reason for this is that they continue to maintain modules
in their spare time when their company tells them to work on other parts of
the code.
Personally, I'm also wondering why there are some significant differences
between GNOME and KDE. For example, about 67% of contributors where paid
to work on GNOME whereas only 38% were paid to work on KDE. Why do some
projects attract more commercial involvement whereas other projects
continue to be mostly volunteer based?
(Originally published on
FOSSBazaar)
There is a lot of discussion and speculation about The Singularity. The term seems to be defined by
Ray Kurzweil’s book “The Singularity Is Near” [1] which focuses on a near-future technological singularity defined by significant increases in medical science (life extension and methods to increase mental capacity) and an accelerating rate of scientific advance.
In popular culture the idea that there will only be one singularity seems to be well accepted, so the discussion is based on when it will happen. One of the definitions for a singularity is that it is a set of events that change society in significant ways such that predictions are impossible - based on the concept of the
Gravitational Singularity (black hole) [2]. Science fiction abounds with stories about what happens after someone enters a black hole, so the concept of a singularity not being a single event (sic) is not unknown, but it seems to me that based on our knowledge of science no-one considers there to be a black hole with multiple singularities - not even when confusing the event horizon with the singularity.
If we consider a singularity to merely consist of a significant technological change (or set of changes) that change society in ways that could not have been predicted (not merely changes that were not predicted) then it seems that there have been several already, here are the ones that seem to be likely candidates:
0) The development of speech was a significant change for our species (and a significant change OF our species). Maybe we should consider that to be singularity 0 as hominids that can’t speak probably can’t be considered human.
1) The adoption of significant tool use and training children in making and using tools (as opposed to just letting them learn by observation) made a significant change to human society. I don’t think that with the knowledge available to bands of humans without tools it would have been possible to imagine that making stone axes and spears would enable them to dominate the environment and immediately become the top of the food chain. In fact as pre-tool hominids were generally not near the top of the food chain they probably would have had difficulty imagining being rulers of the world. I’m sure that it led to an immediate arms race too.
2) The development of agriculture was a significant change to society that seems to have greatly exceeded the expectations that anyone could have had at the time. I’m sure that people started farming as merely a way of ensuring that the next time they migrated to an area there was food available (just sowing seeds along traditional migration routes for a hunter-gatherer existence). They could not have expected that the result would be a significant increase in the ability to support children and a significant increase in the number of people who could be sustained by a given land area, massive population growth, new political structures to deal with greater population density, and then wiping out hunter-gatherer societies in surrounding regions. It seems likely to me that the mental processes needed to predict the actions of a domestic animal (in terms of making it a friend, worker, or docile source of food) differ from those needed to predict the actions of other humans (who’s mental processes are similar) and from those needed to predict the actions of prey that is being hunted (you only need to understand enough to kill it).
3) The invention of writing allowed the creation of larger empires through better administration. All manner of scientific and political development was permitted by writing.
4)
The work of Louis Pasteur sparked a significant development in biology which led to much greater medical technology [3]. This permitted much greater population densities (both in cities and in armies) without the the limitation of significant disease problems. It seems that among other things the world-wars depended on developments in preventing disease which were linked to Louis’ work. Large populations densely congregated in urban areas permit larger universities and a better exchange of knowledge which permitted further significant developments in technology. It seems unlikely that a population suffering the health problems that were common in 1850 could have simultaneously supported large-scale industrial warfare and major research projects such as the Manhattan Project.
5) The latest significant change in society has been the development of the Internet and mobile phones. Mobile phones were fairly obvious in concept, but have made structural changes to society. For example
I doubt that hand-writing is going to be needed to any great extent in the future [4], the traditional letter has disappeared, and “Dates” are now based on “I’ll call your mobile when I’m in the area” instead of meeting at a precise time - but this is the trivial stuff. Scientific development and education have dramatically increased due to using the Internet and business now moves a lot faster due to mobile phones. It seems that nowadays any young person who doesn’t want to be single and unemployed needs to have either a mobile phone or Internet access - and preferably both. When mobile phones were first released I never expected that almost everyone would feel compelled to have one, and when I first started using the Internet in 1992 I never expected it to have the rich collaborative environment of Wikipedia, blogging, social networking, etc (I didn’t imagine anything much more advanced than file exchange and email).
Of these changes the latest (Internet and mobile phones) seems at first glance to be the least significant - but let’s not forget that it’s still an ongoing process. The other changes became standard parts of society long ago. So it seems that we could count as many as six singularities, but it seems that even the most conservative count would have three singularities (tool use, agriculture, and writing).
It seems to me that the major factors for a singularity are an increased population density (through couples being able to support more children, through medical technology extending the life expectancy, through greater food supplies permitting more people to live in an area, or through social structures which manage the disputes that arise when there is a great population density) and increased mental abilities (which includes better education and communication). Research into education methods is continuing, so even without genetically modified humans, surgically connecting computers to human brains, or AI we can expect intelligent beings with a significant incremental advance over current humans in the near future. Communications technology is continually being improved, with some significant advances in the user-interfaces. Even if we don’t get surgically attached communications devices giving something similar to “telepathy” (which is not far from current technology), there are possibilities for significant increments in communication ability through 3D video-conferencing, better time management of communication (inappropriate instant communication destroys productivity), and increased communication skills (they really should replace some of the time-filler subjects at high-school with something useful like how to write effective diagrams).
It seems to me that going from the current situation of something significantly less than one billion people with current (poor) education and limited communications access (which most people don’t know how to use properly) to six billion people with devices that are more user-friendly and powerful than today’s computers and mobile phones combined with better education as to how to use them has the potential to increase the overall rate of scientific development by more than an order of magnitude. This in itself might comprise a singularity depending on the criteria you use to assess it. Of course that would take at least a generation to implement, a significant advance in medical technology or AI could bring about a singularity much sooner.
But I feel safe in predicting that people who expect the world to remain as it is forever will be proven wrong yet again, and I also feel safe in predicting that most of them will still be alive to see it.
I believe that we will have a technological singularity (which will be nothing like the “rapture” which was invented by some of the most imaginative interpretations of the bible). I don’t believe that it will be the final singularity unless we happen to make our species extinct (in which case there will most likely be another species to take over the Earth and have it’s own singularities).
Share This