Search Results: "spa"

4 February 2010

Andrew Pollock: [geek] On trying to buy a 19 inch rack

The first time we looked at this condo that we ended up buying, I looked at the cupboard under the stairs, and could visualise a small 19 inch rack in the lower part of it, with all of my computer gear in it. When we got structured cabling installed, I had the CAT-6 cabling terminated onto a basic 19 inch patch panel, with the intent of mounting this in a rack. Then it became a case of trying to find a rack. My favourite junk shop, Weird Stuff, didn't have anything that wasn't full height, so I started looking around online. There's certainly a lot of variance in price. I settled on a 26U Intellinet rack from New Tech, because based on the dimensions on the website, it would fit in the space I had in mind. When we assembled it, it became obvious that the dimensions quoted were the inside dimensions and not the outside dimensions, and it was about 4 centimetres too tall. In hindsight, I should have figured that out. 26 x 1.75 is 45.5. This is where I must give a shout out to New Tech. Sarah called them up, explained the situation, and they agreed to take the rack back, and sent us some shipping labels to ship it back. We managed to find a more simple rack, a 20U Middle Atlantic, which arrived today, and was significantly easier to put together. The only downside: no rear mounting holes. I don't think it'll be a huge problem, though. All I'm planning on mounting in the immediate future are the patch panel, some sort of cable management, a Catalyst switch, and a power strip. At some point in the future, once we stop spending money hand over fist, I'll look at getting a rack mountable server to replace the hodge podge of computers I'm currently running. What I wish we'd discovered about two days ago, was the Lack Rack. This would have been perfect (and so much cheaper).

DebConf team: Registration now open for DebConf10 (Posted by Jimmy Kaplowitz)

Registration is now open for DebConf10. The dates of the conference are August 1-7, 2010, with arrivals at our group lodging permitted as of 3 PM on July 31 and departures required by 11 AM on August 8. The conference is preceded by DebCamp from July 25-31 including the arrival day. To receive announcements regarding DebConf and DebCamp, please subscribe to the debconf-announce mailing list. In order to avoid spamming Planet Debian with a long post detailing registration procedure, travel sponsorship, DebCamp info, and cost of attendance, please instead see the DebConf10 website s registration page to answer all your questions. As always, feel free to contact the DebConf team via email or IRC for answers not provided by the website. DebConf10 is going to be great. We re looking forward to seeing you in New York in August! the DebConf team

Dirk Eddelbuettel: RProtoBuf 0.1-0

Romain uploaded our first release of RProtoBuf to CRAN yesterday. RProtoBuf provides bindings for GNU R to the Google Protobuf implementation. Google Protobuf is (and I quote) a way of encoding structured data in an efficient yet extensible format that is used for almost all internal RPC protocols and file formats at Google. RProtoBuf had a funny start. I had blogged about the 12 hour passage from proof of concept to R-Forge project following the ORD session hackfest in October. What happened next was as good. Romain emailed within hours of the blog post and reminded me of a similar project that is part of Saptarshi Guha's RHIPE R/Hadoop implementation. So the three of us--Romain, Saptarshi and I---started emailing and before long it becomes clear that Romain is both rather intrigued by this (whereas Saptarshi has slightly different needs for the inner workings of his Hadoop bindings) and was able to devote some time to it. So the code kept growing and growing at a fairly rapid clip. Til that stopped as we switched to working feverishly on Rcpp to both support the needs of this project, and to implement ideas we had while working on this. That now lead to the point where Rcpp is maturing in terms of features, so we will probably have time come back to more work on RProtoBuf to take advantage of the nice templated autoconversions we now have in Rcpp. Oddly enough, the initial blog post seemed to anticipate changes in Rcpp. Anyway -- RProtoBuf is finally here and it already does a fair amount of magic based of code reflection using the proto files. The Google documentation has a simple example of a 'person' entry in an 'addressbook' which, when translated to R, goes like this:
R> library( RProtoBuf )                      ## load the package
R> readProtoFiles( "addressbook.proto" )     ## acquire protobuf information
R> bob <- new( tutorial.Person,              ## create new object
+   email = "bob@example.com",
+   name = "Bob",
+   id = 123 )
R> writeLines( bob$toString() )              ## serialize to stdout
name: "Bob"
id: 123
email: "bob@example.com"
R> bob$email                                 ## access and/or override
[1] "bob@example.com"
R> bob$id <- 5
R> bob$id
[1] 5
R> serialize( bob, "person.pb" )             ## serialize to compact binary format
There is more information at the RProtoBuf page, and we already have a draft package vignette, a 'quick' overview vignette and a unit test summary vignette. More changes should be forthcoming as Romain and I find time to code them up. Feedback is as always welcome.

3 February 2010

Enrico Zini: Cropping images with GDAL

Cropping images with GDAL I am working to get a better integration between Meteosatlib and GDAL. A nice aspect of GDAL is that it allows to create read/write drivers around two functions: Open and CreateCopy. Open opens a datset read only, and to implement that all you have to do is to implement read access to your data using the GDALDataset interface. To implement CreateCopy, all you have to do is to create a new file reading information from a GDALDataset; then call Open on it. This means that there is no need to support incremental updates, and that all the data required to create a new file is readily available. This simplifies matters a lot. GDAL provides some interesting image manipulation functions, that can work over just these two calls. The way it does it is by exploiting the concept of a virtual dataset, which wraps an existing dataset but changes some parameters on the fly. This means that you can wrap a read only dataset with a virtual dataset that transforms it somehow, and then pass the virtual dataset to CreateCopy to save the transformed image in a format of your choice. On top of that, for many transformations you do not need to create your own virtual datasets, but you can use the functions provided by the VRT GDAL driver. One can learn a lot on how to use VRTDataset by reading the source code for gdal_translate. By doing that I could come up with this code for cropping an image, which is an interesting VRTDataset example.
GDALDataset* crop(GDALDataset* poDS, int xoff, int yoff, int xsize, int ysize)
 
        VRTDataset *poVDS = (VRTDataset*)VRTCreate(xsize, ysize);
        // Copy dataset info
        const char* pszProjection = poDS->GetProjectionRef();
        if (pszProjection != NULL && strlen(pszProjection) > 0)
                poVDS->SetProjection(pszProjection);
        double adfGeoTransform[6];
        if (poDS->GetGeoTransform(adfGeoTransform) == CE_None)
         
                // Adapt the geotransform matrix to the subarea
                adfGeoTransform[0] += xoff * adfGeoTransform[1]
                        + yoff * adfGeoTransform[2];
                adfGeoTransform[3] += xoff * adfGeoTransform[4]
                        + yoff * adfGeoTransform[5];
                poVDS->SetGeoTransform(adfGeoTransform);
         
        poVDS->SetMetadata(poDS->GetMetadata());
        // Here I also copy metadata from my own domain
        char **papszMD;
        papszMD = poDS->GetMetadata(MD_DOMAIN_MSAT);
        if (papszMD != NULL)
                poVDS->SetMetadata(papszMD, MD_DOMAIN_MSAT);
        for (int i = 0; i < poDS->GetRasterCount(); ++i)
         
                GDALRasterBand* poSrcBand = poDS->GetRasterBand(i + 1);
                GDALDataType eBandType = poSrcBand->GetRasterDataType();
                poVDS->AddBand(eBandType, NULL);
                VRTSourcedRasterBand* poVRTBand = (VRTSourcedRasterBand*)poVDS->GetRasterBand(i + 1);
                poVRTBand->AddSimpleSource(poSrcBand,
                                xoff, yoff,
                                xsize, ysize,
                                0, 0, xsize, ysize);
                poVRTBand->CopyCommonInfoFrom(poSrcBand);
                // Again, I copy my own metadata
                papszMD = poSrcBand->GetMetadata(MD_DOMAIN_MSAT);
                if (papszMD != NULL)
                        poVRTBand->SetMetadata(papszMD, MD_DOMAIN_MSAT);
         
        return poVDS;
 
This function wraps a dataset with a virtual dataset that crops it. Just pass the resulting dataset to GDALCreateCopy to save it in the format that you need.

Sandro Tosi: Convert a time string (with microseconds) in a datetime

I struggled a bit with datetime & friends providing a strftime() that support %f (for microseconds output) but not a strptime() . That's really boring and counter-intuitive, and luckily it was fixed in 2.6:

$ python2.6
>>> import datetime
>>> datetime.datetime.strptime('22:57:39.101941', '%H:%M:%S.%f')
datetime.datetime(1900, 1, 1, 22, 57, 39, 101941)

but on my servers I still have 2.5, so what to do?

I found a reply on StackOverflow quite interesting:

$ python2.5
>>> from dateutil.parser import parser
>>> p = parser()
>>> p.parse('22:57:39.101941')
datetime.datetime(2010, 2, 3, 22, 57, 39, 101941)

ok, it uses the current date (instead of 1900-01-01) but it's still has the microseconds correctly recognized (and since I need a time diff, I'm fine with that).

Mike Hommey: Sad reality

One of the major changes in the latest xulrunner upload was to enable a great part of the test suite. The result is stunning: crashes on alpha, armel, powerpc and sparc. Update: Also failed on mips. (though interestingly, it worked on mipsel)

Russell Coker: Michael Atkinson Lies

The South Australian government wanted to force bloggers to disclose their name and post-code when commenting on an election [1]. According to Adelaide Now this included posts on Twitter and Facebook [2]. As expected there was a strong public reaction to this and Michael Atkinson (state Attorney General) stated that the law was not going to be enforced and that it would be retrospectively repealed after the election [3]. Which might have been the end of the issue, but he also said All MPs and all parties voted for Electoral law. Hope Libs, Greens, Family First, Independents etc will join us to support repeal which seems to be a clear claim that the Greens supported that legislation. The Greens are pretty good about freedom of speech issues so I immediately enquired as to what was going on. The following is from a Greens media brief issued yesterday by the office of Mark Parnell MLC (the Greens MLC in SA) which was issued before the new law was retracted: Attorney General Michael Atkinson must urgently clarify the scope of new electoral laws covering public comment on the internet, in the wake of concerns that the impact will be much wider than expected.

With only weeks to go before the election kicks off, there is an urgent need for the Attorney General to explain exactly what his laws are
intended to capture, said Greens MLC Mark Parnell.

When this was debated in Parliament last year, we were told that the law change would only affect electronic versions of a journal . Now there is
concern that the laws could extend further, restricting public commentary on media sites like AdelaideNow and ABC Online, he said.

When the Bill was debated in the Lower House, Michael Atkinson originally wanted to include ALL material on the web. However, the Government
backed down on this by the time it got to the Upper House, with Minister Holloway saying:
The intention is to limit the coverage of section 116 as it applies to the internet to electronic versions of a journal rather than any electronic publication on the internet.

A journal was narrowly defined as a newspaper, magazine or other periodical . Now I don t have a great objection to a law that demands that journalists identify themselves when commenting on an election, and I think that most people would not care about that. It seems that Michael Atkinson is repeatedly changing his claims to try and match popular sentiment. He has got form for this sort of thing, his past achievements include censoring the censorship debate about an R18+ rating for computer games [4].

2 February 2010

Russell Coker: Precision vs Accuracy in Identifying People

Andrew Dowdell and Michael McGuire have an interesting article in the Adelaide Now about censorship in the South Australian election [1]. The South Australian government wants to force everyone who comments on the upcoming SA election to provide their name and postcode. Attorney-General Michael Atkinson said the law was all about honesty . However a law that forces someone to not comment as Anonymous and instead forces them to use a name that sounds like something that might appear on a birth certificate and a postcode is not going to increase honesty at all. I think it s much better to honestly say I m not telling you my name than to lie and claim to be revealing your name. When the government forces people to give precise but totally inaccurate information it seems that it s going to be bad for everyone. It s even bad for the people who want to be identified, if most people who comment on a blog post are anonymous then I d like to be distinguished as the person who uses their real name! In the vast majority of cases the effort of determining who is using their real name will not be worth the effort. If someone comments on my blog under the name John Howard from Bennelong I will be very suspicious that they are using a fake name. But probably the vast majority of the English speaking population of the world wouldn t immediately identify such a name as fake. If someone wants to comment on my blog and they don t have a published phone number then I won t have any good way of identifying their address. If their name and postcode match an entry in a phone book then they still might be faking it they could take a random name from a phone book. If I was to demand that people who enter blog comments provide their phone numbers then I would have to pay the expense of phoning them as well as dealing with cases of people who are away from home, should I delay a blog comment for a month until the author returns from their European vacation? I have had a moderate amount of experience in writing letters to the editors of newspapers, and I have only once had an editor phone me to verify my details. In all other cases I guess I could have fooled them if I wished. I believe that there are already precedents regarding libel, if I approve a blog comment (or fail to unapprove it in a reasonable amount of time if it meats the automatic approval criteria) then I could be sued for libel if the contents of the comment are deemed to be suitably damaging. So if I was to try to get the real names of people who make comments on my blog then it wouldn t make it any easier for an idiot who wants to sue also anyone who wants to sue regarding an Australian political issue will probably find me a better target than most people who comment on my blog (a significant portion of whom are from the US and have much greater legal protections of their freedom of speech). Extending such a law to US based services such as Twitter is just silly. The stockholders and employees of a US based corporation can freely laugh at Australian censorship laws. Also it s pretty stupid to have a global scope on such laws, as a Victorian why should I care about the South Australian state laws? Implementing laws that can be easily broken inadvertently and can never be enforced against anyone who cares is just pitiful and will result in the MPs who vote for such laws being the object of derision. Vote for the small parties and independent candidates. Both Labour and Liberal want to censor us, put them in the second last two spots on your vote card! Now this law doesn t take affect until the writs for the March 20 election are issued. I encourage Australian bloggers to write bad things about the Liberal and Labour parties after the writs are released which are not libelous and which don t include your postcode. If they try to apply the new law then your blog post gets wide attention. If you plan to be a professional blogger then you could consider the $5,000 fine to be an advertising fee. If you don t want to be known then you can use a US based blogging service. I m going to continue to write political blog posts whenever I feel like it and I won t be telling anyone where I live. I will rely on the Streisand effect to save me. Update:
The politicians in SA have surrendered, the law in question won t be enforced and will supposedly be repealed after the election [2]. It will be interesting to see whether they really do repeal that law.

Craig Small: procps: Third time lucky

OK, ok, i got a chroot and pbuilder now. So that should, I hope stop any more FTBFS bugs about missing depdendencies.

procps got uploaded that fixes some important bugs, but mainly they were small fiddly things. About the most significant enhancement was pmap now has a real working -x flag. It looks a lot like some of the other pmap programs out there and shows the RSS and Dirty bytes per map. Let me know if its useful or not.

However there still is 48 bugs in the package, so if you're feeling game wander over to procps bug page and have a look around, but here are some more interesting ones, such as why would a process start time be earlier than the boot time? Bug 408879 has this problem

Now, a nice can of worms is in a Linux system, what is free memory? What should the "free" program report? Currently free just reports what it sees in /proc, but in Bug 565518 should the slab count be taken out? I certainly won't be making any Debian-specific changes here as you could get different numbers depending on your distribution, or even worse the age of you Debian system.

procps is also my first attempt at using git-buildpackage which I found very helpful. There was one problem with it and that is how it works with the quilt patch program. If the quilt patches are applied, git doesn't know this and says all the files have changed. I know its how these two programs are supposed to work but its a little annoying.
<script defer="defer" src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script>

Tiago Bortoletto Vaz: Performing Donna Lee, by Charlie Parker (no improvisation)


<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" data="http://www.flickr.com/apps/video/stewart.swf?v=1.161" height="173" type="application/x-shockwave-flash" width="260"> <param name="flashvars" value="photo_id=4324056732&amp;flickr_show_info_box=true"> <param name="movie" value="http://www.flickr.com/apps/video/stewart.swf?v=1.161"><param name="bgcolor" value="#000000"><param name="allowFullScreen" value="true"><embed allowfullscreen="true" bgcolor="#000000" flashvars="photo_id=4324056732&amp;flickr_show_info_box=true" height="173" src="http://www.flickr.com/apps/video/stewart.swf?v=1.161" type="application/x-shockwave-flash" width="260"></embed></object>


Performing Donna Lee, by Charlie Parker (no improvisation)

Upload feito originalmente por tiagovaz
Trying Donna Lee by Charlie Parker

1 February 2010

Debian News: Brief updates: noteworthy updates, X.org, KDE and mini-Debconf in Panama

31 January 2010

Axel Beckert: abe@debian.org

On Wednesday I got DAM approval and since Saturday late evening I m officially a Debian Developer. Yay! :-) My thanks go to As Bernd cited in his AM report, my earliest activity within the Debian community I can remember was organising the Debian booth at LinuxDay.lu 2003, where I installed Debian 3.0 Woody on my Hamilton Hamstation hy (a Sun SparcStation 4 clone). I wrote my first bugreport in November 2004 (#283365), probably during the Sarge BSP in Frankfurt. And my first Debian package was wikipedia2text, starting to package it August 2005 (ITP #325417). My only earlier documented interest in the Debian community is subscribing to the lists debian-apache@l.d.o and debian-emacsen@l.d.o in June 2002. I though remember that I started playing around with Debian 2.0 Hamm, skipping 2.1 (for whatever reasons, I can t remember), using 2.2 quite regularily and started to dive into with Woody which also ran on my first ThinkPad bijou . I installed it over WLAN with just a boot floppy at the Chemnitzer Linux-Tage. :-) Anyway, this has led to what it had to lead to a new Debian Developer. :-) The first package I uploaded with my newly granted rights was a new conkeror snapshot. This version should work out of the box on Ubuntu again, so that conkeror in Ubuntu should not lag that much behind Debian Sid anymore. In other News Since Wednesday I own a Nokia N900 and use it as my primary mobile phone now. Although it s not as free as the OpenMoko (see two other recent posts by Lucas Nussbaum and by Tollef Fog Heen on Planet Debian) it s definitely what I hoped the OpenMoko will once become. And even if I can t run Debian natively on the N900 (yet), it at least has a Debian chroot on it. :-) I'm going to FOSDEM, the Free and Open Source Software Developers' European Meeting A few weeks ago, I took over the organisation of this year s Debian booth at FOSDEM from Wouter Verhelst who s busy enough with FOSDEM organisation itself. Last Monday the organiser of the BSD DevRoom at FOSDEM asked on #mirbsd for talk suggestions and they somehow talked me into giving a talk about Debian GNU/kFreeBSD. The slides should show up during the next days on my Debian GNU/kFreeBSD talks page. I hope, I ll survive that talk despite giving more or less a talk saying Jehova! . ;-) What a week.

Stefano Zacchiroli: RC bugs of the week - issue 19

RCBW - #19 Back with the "ordinary track" of RCBW, here is this week squashes by yours truly: The attentive reader have noticed that there is one more than usual, the reason is the mighty BSP in M nchengladbach, which has powered all above squashes. I've enjoyed the BSP a lot, my first in M nchengladbach, which won't be the last. I recommend checking it out at least once in the future, even only for tasting Formorer's chili :-) The main highlight of the week is my personal award to the best feedback ever from an NMU-ed maintainer, the award goes to Jonas, kudos for your attitude.

29 January 2010

Joey Hess: xmonad layouts for netbooks

How a window manager with tiling layouts makes a 1024x600 resolution livable. I spend a lot of time in front of a screen, and for the past year I have used only my netbook. No desktops, no laptops. Just a cheap $200 computer that is nearly a kid's toy. The most challenging thing about this is dealing with the 1024x600 screen resolution. When I moved to this screen from something with many more pixels, it at first seemed very cramped. After a year, I think that the most important part of coping with the small screen is the flexability and customizability of layouts provided by the Xmonad window manager. In this post I will explain a few layouts I have developed for fitting specific tasks onto the netbook screen. (I assume that you know maybe 0.1% of Haskell (about what I do), and can read Haskell code without having a brain aneurysm.) web browsing
It's important that the web browser have as few toolbars and other cruft as possible, as horizontal space is especially at a premium. I've configured both Epiphany and Firefox to put everything in one tool bar. But now I use Chromium, which comes pre-configured that way.
What the netbook is designed for. You just want a web browser, taking up the full screen, and with its own tabs. So far, so easy: that's Xmonad's Full layout. But, you sometimes want to see two websites side-by-side. This layout accomplishes that, allowing the sizes to be adjusted as needed. It also uses Xmonad's Magnifier to zoom the smaller window when it's focused, which is useful if you briefly need to see more of a web site.
mySplit = magnifiercz' 1.4 $ Tall nmaster delta ratio
    where
        -- The default number of windows in the master pane
        nmaster = 1
        -- Percent of screen to increment by when resizing panes
        delta   = 3/100
        -- Default proportion of screen occupied by master pane
        ratio   = 60/100
screenshot screenshot web development If you're doing web development, you'll want probably one big web browser window, but also with a nice wide terminal on the same screen, in order to see web server logs. A simple way to do this is to mirror Xmonad's Tall layout by 90 degrees.
myWide = Mirror $ Tall nmaster delta ratio
    where
        -- The default number of windows in the master pane
        nmaster = 1
        -- Percent of screen to increment by when resizing panes
        delta   = 3/100
        -- Default proportion of screen occupied by master pane
        ratio   = 80/100
The myWide layout uses the full screen width for a single terminal, and splits the width when there are more. This is sufficient for viewing logs and doing minor things at the shell prompt, in between testing the result in the web browser. Of course a terminal can be temporarily moved to the master area by pressing mod-return, if you need it to be larger. screenshot screenshot chat
Tips on configuring Pidgin for a netbook: Set it up to use vertical tabs to save horizontal space. Configure the input area to only 1 line tall, and turn off as much other cruft as you can. The menu bars, sadly, cannot be disabled, nor can the excessively large borders. In my screenshots, you can see that stuff wasting space that could be used to show four more lines of text.
For chat, you want to put the buddy list on the side of the screen, and use the rest for conversation windows. Xmonad's IM module takes care of allocating a sidebar on the screen for the buddy window. The rest of the screen can be occupied by any layout you choose. I like to have the conversation windows be as wide as possible, and typically only want to see two conversations at a time. But sometimes I might have a dozen visible. A good layout to cope with those needs is Grid.
myChat' l = withIM size roster l
    where
        -- Ratio of screen roster will occupy
        size = 1%5
        -- Match roster window
        roster = Title "Buddy List"
myChat = myChat' Grid
The withIM layout puts the buddy list on the left; I prefer it on the right for some reason, so I tweaked my layout to do that. All it took was using the reflectHoriz layout modifier to get a mirror image of the layout. Then I reflect the inner layout back to its normal orientation. Being able to throw in a few function calls and mutate a layout like that is where Xmonad shines.
myChat' l = reflectHoriz $ withIM size roster $
            reflectHoriz $ l
screenshot screenshot logs
Ever notice that tail -f wastes the last line of the terminal? On a netbook this matters. shorttail lets the last line be used.
I have a dedidated workspace that I use to tail logs, and as a place to send long-running tasks (such as compiles). The layout for this needs to keep windows wide, to see whole logged lines, but they need only be five or so lines tall. And it's convenient to have one bigger window with the small ones below. Xmonad has a perfect layout for this, called Dishes, because it's sorta like a stack of plates.
myDish = limitWindows 5 $ Dishes nmaster ratio
    where
        -- The default number of windows in the master pane
        nmaster = 1
        -- Default proportion of screen occupied by other panes
        ratio = 1/5
screenshot screenshot
In the second screenshot above, I have 6 windows open, but only 5 are visible. The limitWindows 5 accomplishes this. It's handy mostly because gnome-terminal has a bad habit of crashing when resized to 0x0. (That's gotta be a bug in something!)
Notice that the screenshots above also have Procmeter in a sidebar on the right. I (ab)used the withIM layout to do that:
myLogs' l = reflectHoriz $ withIM procmeterSize procmeter $
              reflectHoriz $ l
    where
        -- Ratio of screen procmeter will occupy
        procmeterSize = 1%7
        -- Match procmeter
        procmeter = ClassName "ProcMeter3"
myLogs = myLogs' myDish
coding Everything above was easy. Doing coding (or writing) on a small screen is where it gets hard. When I'm coding I want to have one window that is exactly 80 columns wide, and as tall as possible, where I do the main development. Then I need a minimum of two other windows also visible: one action window for running tests and the like, and one to view references (emails, man pages, other files, etc). I may need to view any of these windows fullscreen at any time, of course.
As an example of the three window rule: While I'm writing this post, I have a reference window open with my .xmonad/xmonad.hs, and an action window open where I am managing screenshots.
Often, deep into something, I will accumulate many other reference and action windows. But three seems to be the magic, minimum number for me; use of screen or anything else doesn't reduce it; if I can't see all three at once, I will waste time and concentration flipping back and forth. The Xmonad layout I've developed to handle this is based on the handy FixedColumn layout, which automatically keeps the master window 80 columns wide. I modify this by adding the Magnifier, so that my action and reference windows "pop out" over the master window when focused.
myCode = limitWindows 3 $ magnifiercz' 1.4 $ FixedColumn 1 20 80 10
The 1.4 was carefully tuned, to magnify a window to be big enough to be usable for editing, reading, or command-line, while not obscuring too much of the other two windows. And again I use limitWindows, to only show three windows, in order to keep them all as big as possible. Other windows are hidden offscreen, but I can rotate to them with alt-tab as needed. screenshot screenshot reading ebooks When I'm reading an ebook, I want to have the reader in the middle of the screen. But a widescreen netbook like mine is too wide to comfortably read text all the way across, so it's nice to have margins. (In the margins, I put terminals, or notes.) The ThreeColumns module has a layout that does just that.
myBook = ThreeColMid nmaster delta ratio
    where
        nmaster = 1
        -- Percent of screen to increment by when resizing panes
        delta   = 3/100
        -- Default proportion of screen occupied by master pane
        ratio   = 2/3
screenshot putting it all together I join all my layouts together, so Xmonad will allow switching between them. These three combinations all have the same layouts, only ordered differently, so that different workspaces can have different default layouts.
codeFirst  = myCode    myWide    myGrid    myDish
dishFirst  = myDish    myCode    myWide    myGrid
gridFirst  = myGrid    myDish    myCode    myWide
Xmonad layouts can be decorated with things like title bars. To save horizontal space, I leave off the title bars on layouts where they are not needed to disambiguate windows. Two helper functions can be applied to add or remove titles (and also cause the layout to avoid the Gnome panel.)
withTitles l = noFrillsDeco shrinkText myTheme (desktopLayoutModifiers l)
noTitles l = desktopLayoutModifiers l
I have semi-dedicated workspaces; one for each of the above activities. To assign a layout to a workspace, I use the PerWorkspace module.
Notice that the "web" workspace has only two available layouts. Meanwhile, the "book" workspace always uses the specialized myBook layout; I don't use that layout elsewhere.
perWS = onWorkspace "logs" (withTitles $ myLogs' dishFirst) $
        onWorkspace "web"  (noTitles   $ (mySplit   myWide)) $
        onWorkspace "chat" (noTitles   $ myChat' gridFirst) $
        onWorkspace "book" (noTitles   $ myBook) $
                           (withTitles $ codeFirst)
Finally, I allow toggling between the currently selected layout and fullscreen mode, and use smartBorders to avoid displaying borders when there is only one window onscreen.
myLayout = smartBorders $ toggleLayouts Full perWS
Xmonad layout optimised for the small screen of a netbook: Done! (For now...)
screenshots screenshots screenshots screenshots screenshots
PS: Thanks to #xmonad regulars for always having the answer I need up their sleeves.

Craig Small: The Great Australian Internet Firewall

Some what belatedly (hey I'm travelling!) I've changed the layout of my main website http://www.enc.com.au/ so it now has black panels and a little pop-up. It's all in the name of T he Great Australian Internet Blackout which is a protest about the upcoming Australian Governments Internet Filtering.

As per usual with this sort of thing, the proposed solution will not even meet its rather vague goals, unless you count filtering a 1000 or so websites a "goal". While the numbers vary, the best estimates is its way over 100 to 200 million websites. So that 1000 is 0.0005, or 1 in 200,000.

The filter is alternatively going to filter reported refused classification material or perhaps "other stuff"; they'll get back to you on the second one. For the first it works that somone finds a website of sufficient level of classification, reports it to the government and it gets filtered. And how many times have you come across RC websites, just by wandering around? That's not R rated websites, its not porn, its not even reasonably exotic porn, but stuff that's downright nasty.

The government, as per usual, has come out with the tired old protect the children rant. The filter doesn't stop spam, it doesn't stop weirdos on facebook or MSN chatting up your teenage daughter or son, it filters websites that, unless you or your child is REAL unlucky you will never see; ever.

So why am I against it? Surely filtering RC level websites is great right? And to be honest if that is all this ever was going to be, it's still a complete waste of my (and if you are an Australian Internet user) your money, but once the filtering is in, there is going to be a line outside the relevant ministers door to filter anything else anyone wants to filter, for example:
This sort of filtering while initially seeming ok, will get worse, much much worse. There is not a real strong push from the general public about filtering RC websites, most people see and hate spam much more. If you are an Australian citizen I ask you to visit the The Great Australian Internet Firewall website and write to your local member of parliament.

<script defer="defer" src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script>

28 January 2010

Gunnar Wolf: Captchas are for humans...

Nobody cares about me, I thought. Whatever I say is just like throwing a bottle to the infinite ocean. No comments, no hopes of getting any, for several days. Weeks maybe? Not even the spammers cared about me. Until I read this mail, by Thijs Kinkhorst commenting to my yesterday post:
( )
(BTW, I was unable to comment on your blog - couldn't even read one letter of the CAPTCHA...)
And, yes, Drupal module captcha introduced in its 2.1 release (January 2) feature #571344: Mix multiple fonts. Only... no fonts were selected. Grah.

John Goerzen: Greek Mythology and the Old Testament

I have lately been reading Homer s epic poems: first The Iliad, and now I am nearly done with The Odyssey. I figure there isn t anyone alive today that believes that Zeus literally caused thunder in answer to a prayer, or that Athene really transformed Ulysses between having a youthful and an aged physical appearance at a whim. Despite our understanding that these poems don t reflect a literal truth, we still find meaning and truth in them. It is for this reason that they are read by high school and college students all over the world. This same reason drives our reading of more modern plays and novels everything from King Lear to Catcher in the Rye. We learn something of the author s world, something about our world, and if we are truly lucky, a deeper understanding of the universal truths of human life. And it is with that preface that I suggest that the Old Testament or parts of it, at least ought to be read in the same manner. Modern Christianity speaks of a loving, caring God, one who is deeply concerned for the wellbeing of all. Under this understanding, forgiveness is more desired than retribution, and helping the week is better than enslaving them. How then can one square that with a literal reading of the Old Testament? This was a key question I asked over a span of perhaps 15 years. I was perplexed that the God of Love ought to turn someone into a pillar of salt for turning her head the right way, that almost all life on earth might be extinguished by a flood, that slavery is condoned and regulated, and all sorts of people being stoned to death, animals killed for no reason. In short, the God of the Torah, at least, didn t seem to me to be even the same person as the God the Church talks about. I raised this question with many people, and there was even a seminar on it at a convention I went to in 2001. The answers I got usually were of one of two types: 1) God is beyond our comprehension, and this is one of the mysteries we will never understand because that s just the way it is; or 2) the arrival of Jesus changed things, and it s impossible for a modern person to fully appreciate the laws as they existed prior to that. These are really two sides of the same stick: they re both saying, Yep, that s odd. But we have to believe that the Bible is inerrant and literally true, so we just have to accept the mystery and move on. Except I m not so good at accepting mysteries and moving on. It strikes me as odd that nobody even mentioned the third option: that some of the stuff in the Old Testament is, to be blunt, made up. This even though I have come to learn later that some of those people probably believed this to be the most correct explanation. Now, that doesn t mean it has no value or that is doesn t show us truth. Romeo & Juliet was made up, but we learn from it. A typical example of this is the creation myth. There are some that are very defensive about it, perhaps thinking that it weakens their religion to admit it might not be literally true. To me, I find that insisting upon its literal truth weakens the religion; can we not see how a piece of literature speaks to us today and leave it at that? Need we say that Shakespeare s Julius Caesar is an inferior play because it is a work of historical fiction? The position I suggest here is not some crazy nutjob position. Wikipedia has a concise overview of some of the scholarship surrounding these ideas. I now count myself as somewhat inspired by Homer to read the Old Testament in the same way that I read Homer: as a story that can speak to us today, one that inspired a nation in captivity and after, and launched perhaps the most amazing religious movement in history. I only wish that more people would admit the possibility of a non-literal reading of the Bible. This return to an earlier era of Christianity is, in my mind, the only way that Christianity can maintain its relevance in this age. Update: A note I received suggests I ought to make a bit of a clarification. I am not bothered by the fact that people have differing opinions about the historicity of Genesis. I m all for putting all the opinions out there for sure. I think that really the concern over whether Genesis is literally true or not is mostly irrelevant. I have no problem with Christians that find Genesis to be literally true. What I m lamenting is the attitude that you re not Christian if you re not sure that Genesis is literally true or saying anything else about Genesis undermines Christianity. I believe neither of those statements, and would really rather that we collectively got past the creationism vs. evolution debate already. Update 2: It appears that my use of a bit of technical language has caused some confusion. A creation myth can be defined as a supernatural story or explanation that describes the beginnings of humanity, earth, life, and the universe (cosmogony), often as a deliberate act by one or more deities. It is a category of explanations. Simply calling the Genesis story a creation myth is an act of categorization only, and doesn t imply anything about its accuracy or value.

Biella Coleman: New Zealand, a photo-round up

kiwiwiwiwiw Kiwis have to be one of the cutest birds of all time. A bit chubby and clumsy looking, they are (to me, at least), walking, breathing icon of furry cuteness. Truth be told, I did not see one live in action during my recent trip to New Zealand, but I did see a Weka bird which is pretty similar. (Micah and I just consulted the Internets and agreed that we did in fact see cherubic Kiwi not a Weka. In fact, Micah almost ran one over on the west coast of the southern island but his quick reflexes born from years of saving servers while typing saved the bird. So as you can tell by now I finally got to go to New Zealand for a few weeks, even able to travel the south island before attending THE Linux conference of the region, LCA where I gave a talk (video to be posted when available). I jumped at the opportunity and was thrilled to find out that I could actually spend some time traveling around before the intense week long conference. So on January 5th I headed down with Micah to what I have found out is one of the windiest cities on earth ( Windy Wellington ) for a few days before heading to the south island to do a loop on the northern half of the island. I wanted to conquer the mountains made famous by a certain set of movies, but last semester was all about sitting in front of the computer, a sort of agonizing life of the mind, which did not prepare me physically for mountain trekking or as it call it there, tramping. So we decided to stick close to the coast (with one transalpine train that serenaded us through some awesome mountain passes) and hike along the coast, snorkel and swim, and kayak. After Andrew showed us around Wellington, we headed to the sea town of Kaikoura brimming with sea life, such as seals, dolphins, and birds. The two highlights there were our snorkeling trip and a hike along the peninsula. Originally we were going to go diving but I arrived to NZ with a head cold so we opted for the sinus friendlier version and snorkeled in the massive kelp forest, which was strikingly beautiful (I am used to tropical reefs and waters). There happened to be a lot of seals and given their curious nature, they would dart over right next to you and play. One seal I called him the twirler was chubby and mellow and twirled next to me for a long while. The lady seals were sleeker and faster and liked to dive deep down and the zoom up and surprise you. As someone who has spent a lot of time underwater, I found it fun and weird to be with animals that pay attention to you given that most of the sea life ignores you. The hike in Kaikoura was fantastic as well. You go high on a bluff and stare down at this water sparkling with the most beautiful blue hues brought out even more majestically by the white rocks. If I were to go back I would hike along the water and up above on the bluff. After a brief stopover in Christchurch to visit a friend, we took the transalpine train (across Arthur s pass) which was superbly beautiful and arrived on the west coast whose seas are far more rough, rocky, andtemperamental than on the east coast. The vegetation is lush as lush can be and you get the feeling that dinosaurs would have been a happy lot in these parts. The cool part about this area are the many rivers that feed into the ocean (we spent an afternoon swimming and exploring the caves in one) and then what are called the pancake rocks, which are odd geological creatures that really amaze. We then made our way to the Marlborough Sounds area, which includes the city of Nelson (apparently the sunniest in New Zealand) as well as many olive and grape vineyards in outlying areas. We spent some time in the Alpine lakes region hiking but more of the time on the coast. The highlight for me and it is a place I would love to go back to is the Abel Tasman National Park. We spent time hiking and kayaking there and you can even hike down the coast for 5-6 days (there are excellent camping facilities along the way). The coast is simply majestic with alpine like forest conditions (unfortunately a cool old tree whose name I can t remember is no longer common). This forest is situated along the most stunning waters, an electric but totally clear turquoise blue deceivingly inviting because the water was quite cold (but not as cold as the Oregon coast over the summer, which I went swimming in only once after weeks of bike travel). Along with the blue, parts of the coastal waters were a stunning clear green that I have never seen despite my many sea travels. If you ever plan on going to the South Island, I would not miss this area and might even try to spend a few days or more hiking the coastal trails and listening to the cool-as/sweet as birds, one of which has double vocal cords so it sings what sounds to be like totally electronic bird calls. We returned via the same ferry a massive 7 story ship from Picton to Wellington but the conditions were far far worse during our return trip. When we got out of the sounds, we hit the Cook Straight, notorious for being rough and tumble. And indeed, once we hit the waves, I felt like I was no longer in a boat but amusement park ride, the bow of the ship thrown high only to fall hard on upon the waves. It was sort of fun or fun for about 10 minutes until people, most especially kids, started yaking all over the place. It was really the most flagrant yakfest I have ever experienced (I mean it is a 7 story ferry, you can fit a lot of people on that boat) and that made the sail particularly difficult. I have pretty strong sea legs, never once getting sick sick during the year I spent at sea but massive yaking will bring out the sea sick feeling in even the hardiest of sea souls and I was thrilled to arrive in Wellington. Wellington is the only large city I spent any considerable time in and it is a pretty awesome one. The city center area is flat and by the water, with a magnificent area filled with museums, the national library, parks, breweries, and piers where kids like to jump off high things. The botanical gardens were the most beautiful I have been to and since I am a flower nut, I was in high heaven. In this area there are a ridiculous number of great coffee shops (NYC has a thing or two to learn as we don t have enough, I suspect it has something to do with insane real estate prices). The city is surrounded by hills populated by houses, some of the precipitously perched on cliffs that require lifts to get to! It was a wonderful home base for what was a sweet as conference (as they would say down there). And I hope to write about it sometime soon.

Biella Coleman: New Zealand, a photo-round up

kiwiwiwiwiw Kiwis have to be one of the cutest birds of all time. A bit chubby and clumsy looking, they are (to me, at least), walking, breathing icon of furry cuteness. Truth be told, I did not see one live in action during my recent trip to New Zealand, but I did see a Weka bird which is pretty similar. (Micah and I just consulted the Internets and agreed that we did in fact see cherubic Kiwi not a Weka. In fact, Micah almost ran one over on the west coast of the southern island but his quick reflexes born from years of saving servers while typing saved the bird. So as you can tell by now I finally got to go to New Zealand for a few weeks, even able to travel the south island before attending THE Linux conference of the region, LCA where I gave a talk (video to be posted when available). I jumped at the opportunity and was thrilled to find out that I could actually spend some time traveling around before the intense week long conference. So on January 5th I headed down with Micah to what I have found out is one of the windiest cities on earth ( Windy Wellington ) for a few days before heading to the south island to do a loop on the northern half of the island. I wanted to conquer the mountains made famous by a certain set of movies, but last semester was all about sitting in front of the computer, a sort of agonizing life of the mind, which did not prepare me physically for mountain trekking or as it call it there, tramping. So we decided to stick close to the coast (with one transalpine train that serenaded us through some awesome mountain passes) and hike along the coast, snorkel and swim, and kayak. After Andrew showed us around Wellington, we headed to the sea town of Kaikoura brimming with sea life, such as seals, dolphins, and birds. The two highlights there were our snorkeling trip and a hike along the peninsula. Originally we were going to go diving but I arrived to NZ with a head cold so we opted for the sinus friendlier version and snorkeled in the massive kelp forest, which was strikingly beautiful (I am used to tropical reefs and waters). There happened to be a lot of seals and given their curious nature, they would dart over right next to you and play. One seal I called him the twirler was chubby and mellow and twirled next to me for a long while. The lady seals were sleeker and faster and liked to dive deep down and the zoom up and surprise you. As someone who has spent a lot of time underwater, I found it fun and weird to be with animals that pay attention to you given that most of the sea life ignores you. The hike in Kaikoura was fantastic as well. You go high on a bluff and stare down at this water sparkling with the most beautiful blue hues brought out even more majestically by the white rocks. If I were to go back I would hike along the water and up above on the bluff. After a brief stopover in Christchurch to visit a friend, we took the transalpine train (across Arthur s pass) which was superbly beautiful and arrived on the west coast whose seas are far more rough, rocky, andtemperamental than on the east coast. The vegetation is lush as lush can be and you get the feeling that dinosaurs would have been a happy lot in these parts. The cool part about this area are the many rivers that feed into the ocean (we spent an afternoon swimming and exploring the caves in one) and then what are called the pancake rocks, which are odd geological creatures that really amaze. We then made our way to the Marlborough Sounds area, which includes the city of Nelson (apparently the sunniest in New Zealand) as well as many olive and grape vineyards in outlying areas. We spent some time in the Alpine lakes region hiking but more of the time on the coast. The highlight for me and it is a place I would love to go back to is the Abel Tasman National Park. We spent time hiking and kayaking there and you can even hike down the coast for 5-6 days (there are excellent camping facilities along the way). The coast is simply majestic with alpine like forest conditions (unfortunately a cool old tree whose name I can t remember is no longer common). This forest is situated along the most stunning waters, an electric but totally clear turquoise blue deceivingly inviting because the water was quite cold (but not as cold as the Oregon coast over the summer, which I went swimming in only once after weeks of bike travel). Along with the blue, parts of the coastal waters were a stunning clear green that I have never seen despite my many sea travels. If you ever plan on going to the South Island, I would not miss this area and might even try to spend a few days or more hiking the coastal trails and listening to the cool-as/sweet as birds, one of which has double vocal cords so it sings what sounds to be like totally electronic bird calls. We returned via the same ferry a massive 7 story ship from Picton to Wellington but the conditions were far far worse during our return trip. When we got out of the sounds, we hit the Cook Straight, notorious for being rough and tumble. And indeed, once we hit the waves, I felt like I was no longer in a boat but amusement park ride, the bow of the ship thrown high only to fall hard on upon the waves. It was sort of fun or fun for about 10 minutes until people, most especially kids, started yaking all over the place. It was really the most flagrant yakfest I have ever experienced (I mean it is a 7 story ferry, you can fit a lot of people on that boat) and that made the sail particularly difficult. I have pretty strong sea legs, never once getting sick sick during the year I spent at sea but massive yaking will bring out the sea sick feeling in even the hardiest of sea souls and I was thrilled to arrive in Wellington. Wellington is the only large city I spent any considerable time in and it is a pretty awesome one. The city center area is flat and by the water, with a magnificent area filled with museums, the national library, parks, breweries, and piers where kids like to jump off high things. The botanical gardens were the most beautiful I have been to and since I am a flower nut, I was in high heaven. In this area there are a ridiculous number of great coffee shops (NYC has a thing or two to learn as we don t have enough, I suspect it has something to do with insane real estate prices). The city is surrounded by hills populated by houses, some of the precipitously perched on cliffs that require lifts to get to! It was a wonderful home base for what was a sweet as conference (as they would say down there). And I hope to write about it sometime soon.

27 January 2010

Craig Small: Manilla, Git and Gjay

Work doesn't often send to me places as great as Manilla in the Philippines, but here I am. It's a reasonably modern place and to me feels more like America than Asia in so many ways, posssibly because of its history. One thing is for sure, noone follows road rules here. Red lights are a suggestion and a zebra crossing is just some painted lines that you do need to stop at.

As for food, it's not that different, in fact this sad lot is about what was different:
Generally though the food has been pretty good but nothing I could get at home.

Good news about Gjay, the previous maintainer said it was ok for SourceForge to hand over the control of the program to me so I've set it up in git and started working on it. Most of the work was getting the code up-to-date to the later gtk APIs and making it work with audacious instead of xmms. It's almost ready for (re)initial release and there is even an ITP ready to go.

Git is a rather interesting and new (for me at least) version control system. I've been using cvs for more years than I'd care to think about and svn but while it is a bit different as you'd expect I haven't had it get in my way. In fact I've been so impressed with Git I have put a few other projects into it, mainly with the collab maintence Debian project for a few of my packages.

<script defer="defer" src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script>

Next.

Previous.