Search Results: "ron"

4 February 2009

Gunnar Wolf: How active are your local Linux,Free Software User Groups?

Ted T'so wonders about the LUGs over the world, seeking to answer a conversation he recently had at the Linux Foundation. He quotes a blog posting in Lenovo, Local User Groups - gone the way of the dinosaur? . I think this is an interesting point to gather input from others. In Mexico City, we did have a strong LUG several years ago, holding not-very-regular-but-good-quality-wise meetings, roughly monthly, at Instituto de Ciencias Nucleares. I was active there ~1996-2001.
By 2001, however, the group stopped acting as one - Maybe one of the main factors is that we had a very strong, unquestionable group leader and cohesion factor (Miguel), who worked at Nucleares and regularly got said auditorium. Once Miguel left to form Ximian, the group slowly disgregated. In one of the last LUG meetings, we started working towards the National Free Software Conference (CONSOL)... Nowadays, in Mexico (as a country) we have several conferences around the year, although I'd be hard-pressed to say whether any of them really fills the needs of a LUG (and my answer would probably be negative). Now, there are several smaller groups that have popped up in the void left by the Mexico City LUG - Mainly LUGs local to universities or faculties... And yes, a 25-million-people city is too large to have a single, functional LUG - Just the geographical size of the thing is too daunting. Besides, we are too many people, even though few of us are contributing any real work. But I also recognize that a local *users* group should care about making the users better, before focusing on making the world a better place ;-) Anyway... My intention with this post, besides writing what I see, is to ask to other people that read me (I know this blog is syndicated at Planeta Linux Mexico, maybe even people reading in other Latin American countries through Planeta EDUSOL) to write what they see at their local communities. To make this a bit more useful, please leave a comment (in English, if possible) at this blog, so this can be used as a summary for Ted's request as well.

Theodore Ts'o: How active are your local Linux User s Groups?

At the Linux Foundation, I recently had been brainstorming with some my colleagues about ways in which we might be able to reach out to the various local Linux User s Group (LUGS). So I was quite surprised when I saw a blog posting from Lenovo s Connections blog asking the question: Local User Groups - gone the way of the dinosaur? and even more provocatively, Has the web now relegated the user group to history, along with dot matrix printers, cassette tapes for mass storage, and dial up modems with acoustic couplers? I checked on the web for a number of LUG s, such as the Boston Linux and Unix User Group (BLU) and the Silicon Valley LUG (SVLUG), and they appeared to be active, at least in terms of mailing list activity and event calanedars. But of course that doesn t indicate how many people are actually attending the face-to-face meetings, and how strong the LUG s are in general. So let me ask here do you attend or participate in a LUG? How active is it? What do you get out of participating in a LUG?

Ian Wienand: NoMachine NX - the missing non-manual

I've been meaning to try NoMachine NX for a while. Its promise of fast remote X11 sessions sounded exactly like what I wanted to log into my work desktop remotely (I really like having a remote desktop with saved state you can just pick up from when using remote access). That was pretty much all I knew about the software, so I was a completely blank slate. The getting started guide is the perfect example of how not to write a getting started guide. Firstly, Section 1 - "Getting started" - gives me a full history of the product, goes into significant depth about the challenges of forwarding X11 requests, talks about the caching and compression implementation, round-trip latency measurement, the details of two-way proxying system and discusses every other feature of the software. My eyes glazed over after about the first paragraph. That's all great -- I just want to know what to do! At this point, I assume that I'm required to run some sort of daemon at the remote end. I download and install the server package (it is explained that the server package requires the client and agent packages as well, fine). I'm paging down, looking for something to get me started. I'm happy to see Section 7 - "Set up your NX Server environment" (remember, at this point I though I needed some daemon running in the background constantly). It even has some commands commands to type, so I tap away, running nxserver --useradd nxtest --system. My server binary doesn't even seem to recognise these options. I give up, assuming that the server isn't running and nothing will work. The getting started guide has abruptly ended and I have no idea what to do. As it turns out, it's all completely trivial. Here's the missing "getting started guide". Additional tips: Other than the documentation, it really works as promised, making remote X11 usable. One really nice feature is that it is smart about the resolution of the remote desktop, filling up your local screen. Add to that you don't need anything setup but your normal ssh connection, and it's a great remote desktop solution.

Dirk Eddelbuettel: Correct Datetime / POSIXct behaviour for R and kdb+

We have started to look into kdb+ as a possible high-performance column-store backend. Kx offers free trials -- and so I have played with this for a day or two, both the general system, data loads and dumps and in particular with the interface to R, Based on the few files (one C source with interface code, one R file to access the C code, one object file to link against, one header file and a simple Makefile), it took just a couple of minutes to turn this into a proper CRAN-style R package. Anyway, the reason for this post was that the R / kdb+ glue code works well ... but not for datetimes. I really like to be able to pass date/time objects natively between systems as easily as, say, numbers or strings (and see e.g. my Rcpp package for doing this with R and C++) and I was a bit annoyed when the millisecond timestamps didn't move smoothly. Turns out that the basic converter function in the code had a number of problems: it converted to integer, only covered a single scalar rather than vectorised mode, and erroneously reduced a reference count. A better version, in my view, is as follows:
static SEXP from_datetime_kobject(K x) 
 
	SEXP result;
	int i, length = x->n;
	if (scalar(x))  
		result = PROTECT(allocVector(REALSXP, 1));
		REAL(result)[0] = (kF(x)[0] + 10957) * 86400;
	  else  
		result = PROTECT(allocVector(REALSXP, length));
		for(i = 0; i < length; i++)  
		    	REAL(result)[i] = (kF(x)[i] + 10957) * 86400;
		 
	 
	SEXP datetimeclass = PROTECT(allocVector(STRSXP,2));
	SET_STRING_ELT(datetimeclass, 0, mkChar("POSIXt"));
	SET_STRING_ELT(datetimeclass, 1, mkChar("POSIXct"));
	setAttrib(result, R_ClassSymbol, datetimeclass);
	UNPROTECT(2); 
        return result; 
 
This deals with vectors as well as scalars, converts Kdb's 'fractional days since Jan 1, 2000' to the Unix standard of seconds since the epoch -- including the R extension of fractional seconds -- and as importantly, sets the class attributes to POSIXt POSIXct as needed by R. With that, a simple select max datetime from table does just that, and vectors of timestamped records of trades or quotes or whatever also come with proper POSIXct behaviour into R. Note that it needs TZ to be set to UTC, though, or you get a timezone offset you may not want.

3 February 2009

David Bremner: source-highlight and oz

In order to have pretty highlighted oz code in HTML and TeX, I defined a simple language definition "oz.lang"
keyword = "andthen at attr case catch choice class cond",
          "declare define dis div do else elsecase ",
          "elseif elseof end fail false feat finally for",
          "from fun functor if import in local lock meth",
          "mod not of or orelse prepare proc prop raise",
          "require self skip then thread true try unit"
meta delim "<" ">"
cbracket = " "
comment start "%"
symbol = "~","*","(",")","-","+","=","[","]","#",":",
       ",",".","/","?","&","<",">","\ "
atom delim "'" "'"  escape "\\"
atom = '[a-z][[:alpha:][:digit:]]*'
variable delim " " " "  escape "\\"
variable = '[A-Z][[:alpha:][:digit:]]*'
string delim "\"" "\"" escape "\\"
The meta tags are so I can intersperse EBNF notation in with oz code. Unfortunately source-highlight seems a little braindead about e.g. environment variables, so I had to wrap the invocation in a script
#!/bin/sh
HLDIR=$HOME/config/source-highlight
source-highlight --style-file=$HLDIR/default.style --lang-map=$HLDIR/lang.map $*
The final pieces of the puzzle is a customized lang.map file that tells source-highlight to use "oz.lang" for "foo.oz" and a default.style file that defines highlighting for "meta" text.

David Welton: Langpop.com - now with IRC

Someone suggested the clever idea of counting IRC channel users as a metric to use for langpop.com, so I went ahead and gathered that data. Since this is the first month, there are a few glitches (I missed #fortran - sorry guys), and a thing or two to iron out, but I thought I'd go ahead and publish the new results. IRC counts towards the "discussion" portion of the stats, rather than the main part. Like everything else, it has its biases - I used the Freenode network, which is definitely more about free software than other places might be. One number that really jumps out is just how popular the Haskell channel is - it's right up there with all the most popular languages. It will be interesting to see if, over several years, all the "talk" about Haskell starts to translate into people using it for fun and for their jobs. I welcome comments on this post, but there's also a Google group I've set up for discussion of the results, data sources, languages, and so on: http://groups.google.com/group/langpop/ Another idea I'm kicking around is to create a separate page for "up and coming" languages, stuff like Scala, Clojure, F#... that kind of thing. It might have to use different metrics, because the newer languages often don't show up on many of the ones I use for the languages we currently have.

Ross Burton: Sound Juicer "I Should Be Crying, But I Just Can't Let It Show" 2.25.2

Sound Juicer "I Should Be Crying, But I Just Can't Let It Show" 2.25.2 has been released. Tarballs are available on burtonini.com, or from the GNOME FTP servers.

2 February 2009

Junichi Uekawa: Looking at manualness of postrm.

Looking at manualness of postrm. Purging involves removing a few files, but deletion of these files are left to postrm. piuparts is good that it can be checked, but adding an rm to every single package isn't a good solution and prone to errors / debugging.

Axel Beckert: Daily Snapshot .debs of Conkeror

Keeping track with packaging software which is under heavy development can be time-consuming. I noticed this while packaging Conkeror, because there was quite a demand for up-to-date packages, especially from upstream themself. So recently on the IRC channel #conkeror the idea of automatically built Debian packages came up. After a few hours of experimenting and a few days of steadily optimizing, I can proudly present daily built snapshot packages of Conkeror for currently Lenny and Sid, ready to be included in your sources.list:
deb     http://noone.org/conkeror-nightly-debs lenny main
deb-src http://noone.org/conkeror-nightly-debs lenny main
deb     http://noone.org/conkeror-nightly-debs sid main
deb-src http://noone.org/conkeror-nightly-debs sid main
The binary package conkeror-spawn-process-helper is currently only built for the i386 architecture, but other architectures may follow. The packages probably work also on any other Debian based distribution (e.g. Ubuntu) which includes XULRunner version 1.9. Surely they are not of the usual Debian quality, but they should do it for staying up-to-date with the Conkeror development just by using your favourite APT frontend. The script which generates those packages is also available in the Conkeror git repository at repo.or.cz. The APTable archive is generated with reprepro. Packages and the repository are signed with the passphrase-less GnuPG key 373B76B4 which is used only for the Conkeror nightly builds. (If anyone knows a better solution for automatic builds than a passphrase-less key, please tell me. :-) P.S.: I really like the new keybindings << , >> and G . :-)

1 February 2009

Patrick Winnertz: Midnight Commander revived (new version available)

After everybody though that Midnight Commander is dead and the next release of it will be released together with hurd, it is very cool to announce that a new team of developers are active again. We've taken over officially the development in December and now, after two months of work a new version of mc is available: 4.6.2. This is mostly a bugfix release addressing several very nasty bugs which are also present in the debian package. Here the notes what has changed in this release: As you see.. quite a long list of fixes :) Have fun and check the new release out right here! :)

Cyril Brulebois: I love it when a plan comes together

Of course I m still waiting for the FrontDesk to check whether I did something wrong, but at first glance, I m quite happy:
Application Manager assigned              Assigned on 2008-12-31
Application Manager recommends to DAM     Approved on 2009-02-01
Evgeni, it s been a pleasure.

Andre Luis Lopes: KVMing for fun and profit : how to make your toy become a serious business

Here I ll try to present you some tips on how one could easily make a playground become a paid fun. And no, I won t be teaching you how to become rich, although I would like if you would teach me how that could be accomplished as I m trying to come up with a way to do just that for a couple of years now and failed miserably. Recently, I ve been setting up KVM virtual machines in order to do a lot of testing for a project I m involved with. Letting boring details aside, one could say that a very long, boring and error prone setup was finished after a lot of work and it worked like a charm in the end, as a KVM machine. As always, laziness is a given and when you are into it you empower yourself to come up with some nice hacks and goes that extra mile to find out how one could not to have to do boring and repetitive things again and again, in the best spirit of let s have some work now and save me ten times more work later . As I m becoming more and more into that spirit of laziness, there I went looking for a way which would let me transform my beloved and nice working KVM machine into a fully featured real physical server. After some tips from microblogosphere friends (thanks fike), I had some ideas on how that could be accomplished. Turned out my ideas weren t really all that right so there I went again looking for a way to do what I wanted. After some research I found out that the KVM guys already gave some thought about it and even had a ready solution to my problem : it s called qemu-nbd. Yes, by now everyone should know that KVM builds on top of the excelent (just not so snappy) QEMU. However, as I m a Debian user, here I should say that in Debian, most notably Debian sid/unstable, the qemu-nbd binary was renamed to kvm-nbd, just as the KVM binary is called only kvm and not qemu-system-x86_64 or whatever else is called these days upstream. NBD (short for Network Block Device) is a nice thing. I hadn t tried it before (I certainly used and am still using in some projects of mine the not-upstreamed-yet-but-so-nice-that-I-couldnt-resist DRBD, which seems to share some ideas which NBD). In short (read NBD link for more info on that), NBD allows the Linux kernel to use a remote server as a block device. Also, its upstream is a fellow Debian developer (hello Wouter). How nice s it ? As NBD is an upstreamed kernel feature, you don t need to go to the external-module-route-hell. You only need the userland tools, which are nicely packaged and integrated into Debian as well. They re only one aptitude away, so you could use this command to bring it to your KVM host :
aptitude install nbd-client
After that, you will want to export your image file (the file which represents the disk of you virtual machine) as a NBD block device, so you will be able to mount it under your KVM host and do whatever you want to do with it. Here s how one would do it :
kmv-nbd conect=/dev/nbd0 myimagefile.img
I tested it using both qcow2 and raw disk images and both worked like a charm so I don t think you will have any problems here. Next, you need to create a directory structure under your KVM host which temporarily will be used to mount the partitions inside the virtual block device of your KVM machine. You could do this like this :
mkdir /newserver mkdir /newserver/usr mkdir /newserver/var mkdir /newserver/home
In the example above, I ve created these directories because I want my new server to have separated root, /usr, /var and /home partitions and mount points. Feel free to adapt to any kind of partitioning layout you please. Next, you will mount yout virtual machine filesystem under a temporary location, so you will be able to copy all of its content later to your final desired destination, i.e. the real partitions inside the real disk you are going to use in your future real server (not a virtual machine anymore). I did it using :
mkdir -p /mnt/temp mount /dev/nbd0p1 /mnt/temp
Notice that the /dev/nb0p1 above is my root partition inside my KVM machine, only that it s represented now in my KVM host in NBD s device node notation here. I ve only one partition inside this particular virtual machine (aside from the swap partition). Next, you want to mount the partitions on the real disk you want to be used in your new real server under the directories created earlier so you will be able to chroot to then later and do any tweaks you may want to, like fixing /etc/fstab, /boot/grub/device.map, /boot/grub/menu.lst and all these places we know makes references to block devices which may differ from the situation you had in your virtual machine running under the KVM. Here s what I used :
mount /dev/sdb1 /newserver mount /dev/sdb3 /newserver/usr mount /dev/sdb5 /newserver/var mount /dev/sdb6 /newserver/home
The device nodes above are from your real disk s partitions, not from any virtualized device block access method like NBD. Also, take care not to mount your primary disk s partitions (the ones you are using under in your KVM host) as you could destroy them easily. As you can see above, I m using /dev/sdbX as /dev/sda is my primary disk, the one under which my KVM host is running. Again, adapt to your scenario. Next, you just copy everything from your virtual machine filesystem (which is now accessible from within your NBD block device) to your real disk. I did it using :
cp -a /mnt/temp/* /newserver/
After that, you can disconnect your KVM virtual machine image file from the exported NDB device block using :
kvm-nbd -d /dev/ndb0
And then chroot to your real disk layout yout just copied to /newserver in order to fix anything which would make reference to block devices while running as a virtual machine under KVM but which now will be a completely different thing as a real server, like your /etc/fstab, /boot/grub/device.map, /boot/grub/menu.lst and so on. In order to chroot to your new soon-to-be-real filesystem you could use :
chroot /newserver
Then go nuts and start fixing everything you may think needs to be fixed so this filesystem could be used in a real server to boot it up. Im my case, I needed to fix /etc/fstab in order to mount my additional partitions (as under KVM I was using only a root and a swap partition and now, under the real server, I ll be using separated root, swap, /usr, /var and /home). Before I went changing more things, I fixed my /boot/grub/device.map and my /boot/grub/menu.lst files to point to /dev/sdb and /dev/sdb[1], respectively, so I could run grub-install from inside the chroot in order to install GRUB into the real new disk s MBR (master boot record), using :
grub-install /dev/sdb
Then, finally, I fixed /boot/grub/device.map and /boot/grub/menu.lst again so they would point to /dev/sda and /dev/sda[1], as /dev/sda will be the device node for this new disk when it wil be running under the new real server and not as a disk inside the KVM host machine. Next, I exited the chroot using :
exit
And umounted the new real disk s partitions, using (now already out of the chroot) :
umount /newserver/home umount /newserver/var umount /newserver/usr umount /newserver
Now you can take this new disk out of your KVM host machine, put it inside your new real server, physically install it there, turn on your new real server and everything installed while the filesystem in it was being used under the KVM virtual machine will be there, running nicely. And you re done. That s it. Also, it s important to point out that it s much easier being done than being said (or written, in this case) so, if it looks scary because of the size of this post, don t let it disincourage you as this whole thing is a pretty straightforward procedure, much easier than it seems. And as I know that I will receive lost of complaints from people which will tell me how inefficient this whole thing is and how I could have accomplished the exact same thing in a much easier and faster way (perhaps even with a already existing tool which would automate almost entirely the whole proccess), I would say to these people to please exercise their right to share ideas using the comments. Just be nice on me, please. After all, it was fun and I learned new things while doing it all, as well as I tried to share what I learned from this experience with my peers. That s what matters. Peace, love and geekness to all of you :-)

Matthew Garrett

I'm sitting on a plane. The screen in front of me is currently displaying X root weave. Xorg fo life, yo.

Russ Allbery: Lintian 2.2.1

Another Saturday, another Lintian release. As has frequently been the case lately, much of the work was done by Raphael Geissert, who provided several more patch sets fixing new problems and old ones. I also finally got a chance to dig into the code that generates the long tag descriptions and ended up rewriting it entirely, which will remove some minor annoyances in the setup of Lintian on lintian.debian.org. I was expecting to have a chance to write a pile of pedantic checks, since several of the old bug reports are easy checks to write and were just waiting for the new tag status. I ended up working on other things and merging patches instead, though. Maybe the next release. One amusing note: the compressed Lintian changelog is 112KB (365KB uncompressed). The tar.gz file for the entire Lintian release is 589KB. So the changelog for Lintian is nearly 20% of the entire distribution. Admittedly, we have a fairly verbose changelog style, but most Lintian work involves large numbers of small tweaks and small patches. I think most of the changelog size is unavoidable. I don't think this is a problem Lintian is not the sort of thing that one runs in an embedded environment and within reason it doesn't matter how large the installed size is but it is rather funny. I stopped the last archive-wide run because gluck was being rebooted with a new kernel that didn't cause Perl to close huge numbers of file descriptors on popen, and then due to other things going on my life, didn't get a chance to restart the archive run until yesterday. It's on binary packages starting with "p" now, so hopefully sometime tomorrow there will be fresh Lintian results with 2.2.0 and I can post a bits from the Lintian maintainers message.

Russell Coker: Employment Packages

Paul Wayper has said that he only wants to work for companies that will send him too LCA [1]. While that criteria is quite reasonable it seems overly specific. Among other things the varying location of LCA will result in the expense for the employer varying slightly year by year - which employers generally don t like. I believe that a better option is to have an employment package that specifies a certain amount of money (related to the gross income of the employee) should be set aside for training, hardware, or other expenses that help the employee (or their colleagues) do their job. Such an option would probably only be available to senior employees who are most able to determine the most effective way of spending the money. For example an employee who earns $100,000 per annum might be permitted to assign 10% of their income ($10,000) to training or hardware that assists their job. Modern PCs are so cheap that any reasonable hardware requirements could fit within that budget with ease. There are several benefits to such a scheme. On many occasions I have had colleagues who had inadequate hardware to do their work, slow PCs with small screens really impacted their productivity, in such situations buying a $400 PC and a $400 monitor for each person in the team could make a significant direct improvement to productivity before the impact on moralle kicked in! Some years ago Lenovo ran some adverts for Thinkpads which said demand one at the interview . That made sense when a Thinkpad was an expensive piece of hardware. While there are still some expensive Thinkpads, there is a good range of cheap models, two which cost less than $1200AU and another eight which cost between $1200 and $1800. Now it makes more sense to allow each employee to choose their own hardware (both desktop and portable) and not even bother about issues such as whether the IT department blesses them. As Tom Limoncelli suggested in his LCA keynote, users are going to take more control over their environment whether the IT department like it or not, so it s best to work with them rather than fighting them. For training a common problem is that management can t correctly determine which conferences are worthy of the expense of sending their technical staff. Then when a conference is selected they send everyone. It seems to me that when there are a number of conferences in a region (EG AUUG, LCA, OSDC, and SAGE-AU in Australia) there is a benefit in having someone from your team attend each one. Planning at the start of the year which conferences will be attended by each team member is something that appears to be beyond the ability of most managers as it requires knowing the technical interests and skill areas of most staff. If each employee was granted one week of paid time per year to attend conferences and they could determine their own budget allocation then they would be able to work it out themselves in a more effective manner.

Andrew Pollock: [tech] Oh the irony

Content analysis details:   (5.9 points, 3.8 required)                          
                                                                                
 pts rule name              description                                         
---- ---------------------- --------------------------------------------------  
 1.0 NO_REAL_NAME           From: does not include a real name                  
 1.0 HTML_MESSAGE           BODY: HTML included in message                      
 0.0 BAYES_50               BODY: Bayesian spam probability is 40 to 60%        
                            [score: 0.4956]                                     
 1.4 HTML_10_20             BODY: Message is 10% to 20% HTML                    
 1.5 MIME_HTML_ONLY         BODY: Message only has text/html MIME parts         
 1.1 HTML_MIME_NO_HTML_TAG  HTML-only message, but there is no HTML tag         
That's the registration verification email from the National Do Not Call Registry.

30 January 2009

Jon Dowland: state of fear

I've recently read Michael Crichton's controversial "State of Fear": A book where radical environmentalists stage terror attacks to promote the idea of catastrophic climate change. I read this book as a counterbalance to a few other things I have consumed recently: Kim Stanley Robinson's excellent ecological series "40 Signs of Rain", "50 Degrees Below" and "60 Days and Counting"; as well as Al Gore's "An Inconvenient Truth". I can also kid myself that I don't exclusively read Science Fiction (It's filed under "literature!" honest!) Given these points, I was not expecting to enjoy this book. It's been a while since I last read a Crichton, so it might just be lack of familiarity with his style, but I found the beginning of the book to be a bit frustrating: he doesn't spend much time detailing the world and situations that his characters find themselves in. Some of the early characters are typical Star Trek-style red shirts who exist soley to be killed off. Eventually I either meshed gears with it pacing-wise or the main characters stopped being cardboard because I started to enjoy it. Sometimes it gets a bit preachy and I can see why climate scientists and global warming activists got so wound up about it, although I think some of the reactions are very knee-jerk. At the end of the book, Crichton has a short essay about his feelings regarding climate change, followed by some references. The message I took away from the book was not "global warming is all a farce" as many of the reviews and descriptions suggested to me, but rather, evidence-based science is crucial and don't take things for granted: including either stance on climate change, two points I strongly agree with. There are some other points he raises which I think are really good ideas and hope to write more about soon.

Russell Coker: How to Support Straight Marriage

There is currently a lot of discussion about how to protect marriage , such discussion is based on the issue of whether Gay Marriage should be prohibited to protect Straight Marriage. Some straight people believe that their own marriage would be better if homosexuals were allowed to get married, some have even declared that they won t get married until discrimination in this regard is ended. I don t believe that whether some other people get married will make any difference to my marriage. I believe that any two consenting adults who are not closely related should be allowed to get married, but I am not going to write about that today. What I will address is some positive steps that can be taken by a government to protect Straight Marriage without regard to Gay Marriage. By the most objective criteria, death is the greatest obstacle to marriage. To protect someone s marriage you should first protect them from becoming a widow or widower for as long as possible. Also protecting the lives of children (both biological and adopted) is important for protecting marriage. Here are some of the many ways of preventing needless death:

  1. Don t start wars except in the most extreme situations. Wars inevitably involve the death of soldiers (some of whom are married) and any war that is anything other than the smallest border incident will involve the death of civilians (married people and children).

  2. Protect the food supply and the environment. When toxic chemicals, heavy metals, or radioactive material are released in the environment it results in a statistical increase in the death rate from cancer.

  3. Increase the funding for medical research. Today there are many medical situations which can be routinely and safely resolved which would have been likely to be fatal 10 or 20 years ago. More medical research will lead to more diseases being cured.

  4. Spread positive technology around the world. Protecting marriage should have a larger scope than your local region, therefore life-saving medicine needs to be affordable in all countries. Patents that prevent this need to be voided in the poorer regions of the world.

  5. Increase the research on car safety. Car crashes are one of the largest causes of death and significant injury in the first world which can be easily reduced. Unfortunately there has been little research on making cars safe for women and children (crash-test dummies for woman and children are to a large extent scaled-down models based on research on men due to the lack of female and child cadavers for research [1]). Also I believe that the majority of car safety research in regard to crash test dummies was done in the US and therefore is biased towards caucasians and afro-americans - I believe that research on other races is needed to give equal protection to all races (caucasian and afro-american races are in a minority in the world).

This is by no means a comprehensive list, but it does cover some issues that are current and well known. Now the next objective way to analyse this issue is to look at statistics related to divorce. It seems that money is an issue related to divorce and therefore protecting the finances of married people is a way of protecting marriage. The first thing that can be done is to give people more continuity of employment. Being in a situation where you could lose your job at short notice is stressful and has to have a negative impact on a married couple. Recently the supposedly conservative Liberal government in Australia was trying to ban Gay Marriage while also introducing legislation to make it easier to lay off employees who have done nothing wrong (based on business issues). Among other things the Work Choices legislation made it more difficult for such employees to take out bank loans (which means that they often pay higher interest rates). A final issue that causes stress for married couples is the school system (which is broken in many ways). I m not going to try and cover this in detail here, but I will note that installing flag-poles (as the Liberal government wanted to do) is not the solution to problems with the education system. Addressing these real issues will take some government funding, but it s not a lot and a much greater amount of money could be saved by ending the war on drugs . If the people who claim to be protecting straight marriage can address these other more serious problems that threaten straight marriages then I still won t agree with calls to ban gay marriage. But it would make then seem less hypocritical.

29 January 2009

Neil Williams: langupdate uploaded to experimental

I'm happy enough with the langupdate tool now that I've made the upload to Debian experimental. langupdate is an apt frontend to Emdebian TDebs to support Emdebian Grip and Emdebian Crush but also to support mixed installations of Debian and Emdebian.

Any Debian package is ignored because those packages already contain all the translation files.

Emdebian packages do not include /usr/share/locale, so langupdate identifies these packages from the dpkg status files, identifies the available Emdebian TDebs for the corresponding source package via libapt-pkg and a temporary apt-cache in /var/lib/langupdate and identifies which locales are supported on the current machine from the environment and from /etc/locale.gen. The Emdebian TDeb packages that match these criteria are then automatically installed.

If only Debian packages exist, langupdate reports "Nothing to do."

The end result, for Emdebian users, is that a typical 450Mb /usr/share/locale on Debian is stripped down to 9Mb (or less) per configured language.

The advantages over localepurge are:
  1. The Emdebian packages are smaller because the translations have already been removed at the repository, so no wasted bandwidth or wasted CPU workload removing files that have just been installed.

  2. If a language is added or de-configured, all the corresponding translation files are added or removed respectively.


langupdate can use any suitable repository - the default is the Emdebian TDeb repository.

Note that, unlike in Debian, Emdebian TDebs are architecture-dependent and are split into individual packages for each language and source package and architecture. Yes, it is a lot of packages and a lot of work for the machine hosting the server but better that than trying to do the work on the Emdebian device.

Currently, Emdebian Grip still has a very limited package set so the list of packages that have Emdebian TDebs is still small. Depending on how long it takes to release Lenny, more packages will get added to Grip but the "full Grip experience" will, for most people, involve upgrading from Emdebian Grip 1.0 (based on Debian 5.0 "lenny") to Emdebian Grip testing - what will become 2.0, based on Squeeze.

langupdate itself is translated into 7 languages (cs, de, eu, fr, it, ru and sv) thank you to those who prepared those translations before the deadline ended tonight and uses a langupdate-locale package as a precursor to the eventual Debian TDeb.

Biella Coleman: HFCS is even worse thanks to mercury

So, on the one hand, I am not surprised about this news about a study which found that high fructose corn syrup, which is of questionable health value, is laced, with a significant amount with mercury. On the other hand, I am surprised that this is not splattered all over the front pages of all the major newspapers. This is serious stuff. Mercury is extremely poisonous and is known to cause all sort of health problems from immune system dysfunction to massive neurological damage. Might more of our foods be laced with heavy metals, aside from fish, HFCS. It is very likely. More on this, but later. update: Since the article I linked to did not mention the amount of mercury found, here is the original publication (and as a small aside, why newspapers don t link to these documents is beyond belief). Page 9 of the PDF is particularly telling because it reveals how it was difficult for researchers to obtain more samples so that they could enlarge the sample size .

Next.

Previous.