Search Results: "tach"

5 September 2006

Adam Rosi-Kessel: New York City Labor Day 2006

We spent the extended weekend in New York City, visiting many friends. Particularly noteworthy was our dinner with my Cousin (Dr.) Matt at Gobo, “Food for the Five Senses.” (The website, by the way, is a fairly effective combination of Flash where helpful and HTML where Flash is unnecessary.) Gobo served quite possibly the best vegan food I’ve ever had. I might even say the best vegetarian food I’ve ever had. (Since I’m a vegetarian, I guess that might just make it the “best” food.) Our dinner included: Too bad Boston has nothing comparable. Every time I travel to New York I wonder why Boston can’t borrow at least some of the best ideas — for example, a functional mass transit system. Some other highlights — click on any image for a full-size version: Esther watching the traffic go by
Buildings
A Fountain
The view from my cousin’s rooftop

4 September 2006

Branden Robinson: Dropping the Soap in the Gulf of Mexico, or: How I Got Cornholed by Continental Airlines

Short version first: those in Oldenburg who are expecting me to arrive at the Bremen airport on Friday afternoon, don't. Expect me on Saturday at 11:10 instead, assuming there are no further setbacks. I got to the Indy airport today in time for my flight, except my flight was going nowhere fast. "No problem," I thought to myself. "I have nearly a three-hour layover in Newark. They can dicker with this flight for quite some time, or I can get switched over to the flight on the commuter jet that Continental also has going to Newark this evening." Silly me. My flight has a "wing indicator light" problem — that's what the gate agents called it, shrewdly deducing that a pilot otherwise has no way of determining whether the lifting surfaces are still attached to the aircraft — that amazingly takes hours to resolve, and the other flight? Well, Continental's headquarters are in Houston, and apparently some of their employees startlingly decided to evacuate their families out of the expected path of Hurricane Rita instead of showing up to work in Indianapolis to be the flight crew. Or something like that. So instead of getting to switch over to the flight that would get me to Newark safely in time to catch my connecting flight to Paris, the airline shunts all those passengers onto my flight. So we take off about 3 hours and five minutes late, and when I land in Newark, there's nothing left of my flight to Paris but wing tip vortices spiraling out over the hypodermic-syringe-strewn New Jersey coast. Apparently airports both in the U.S. and Europe have a problem with flights leaving or arriving in the middle of the night, so the soonest I can leave for Europe is now 1845 on Friday. This means I'll miss nearly a full day of the conference, which I was only going to be at for 2.5 days anyway. Joy. Oh, and they also close down baggage claim at 11pm (or five minutes before you land, whichever comes first), so my checked bag which couldn't make the same flight I couldn't is now being held hostage somewhere in the bowels of Newark Airport while I sleep at the Howard Johnson's in a room that one dare not view in ultraviolet light. Well, technically, this hotel is joint venture with Holiday Inn, an enterprise which no doubt serves the sole purpose of frustrating class-action liability suits by people who contract scabies in the course of their stay. I don't even know if my beloved dismantled Quadra is in better accommodations, or if my machine, tortoise.deadbeast.net, stuffed into a suitcase and crudely protected with towels and masking tape, has been obliterated with patriotic fervor by the TSA, swinging their hammers to pulverize it. I guess I could be in worse places, like Galveston. Any DDs in New York wanna give me a wake-up call in the morning and meet for lunch? (I'm at +1 973 589 1000 x217.) If not, I was thinking I might try to go see the Statue of Liberty in the late morning. I've been in the NYC area twice before but never went to see it. Air travel sucks. Maybe this is the real reason, unadmitted to myself until now, that Contact resonates with me. I can almost forgive Robert Zemeckis for that brown smear he did with Tom Hanks three years before. Then I remember that other brown smear he did with Tom Hanks three years later. Okay, I won't blame Hurricane Rita or even Continental Airlines. I'll blame Robert Zemeckis instead. :-P I'm okay to go... I'm okay to go...

Benjamin Mako Hill: Hitler Mustache Video

In my infinite spare time, I think it would be fun to make a parody of an MTV style "documentary" about one day in the life a person with a Hitler mustache to show ridiculous that genre has become. The video will be done with 15 second cuts and and with a bumping soundtrack by an eclectic selection of artists from the full spectrum of popular music. It will follow around a person for one day as they have a barber chisel out a Hitler mustache and then spend one day in that form. These scenes will, of course, be interspersed up with snippets from interviews with vapid onlookers, fashion gurus, and celebrities weighing in on all sides of the many "issues" that wearing a Hitler mustache raises. These issues might include:
  • Is it now or will it ever been long enough to make the Hitler mustache OK again? Did Hitler really ruin that mustache for ever and for everybody? Do fashionistas believe that this is that a good or a bad thing?
  • What about Charlie Chaplin and others who wore similar mustaches before or concurrent with Hitler?
  • In what sense does living with a Hitler mustache teach either the wearer or the public that "it's what inside that really counts."
If you would like to donate resources or time to this project, please let me know.

Isaac Jones: How to get involved in Free Software (the bug method)

Are you a software developer? Are you graduating soon? Maybe you should get involved in free software projects! There are any number of reasons people get involved, from altruistic reasons to selfish reasons. Let's approach it from a "selfish" point of view. I assert that involvement in free software projects looks really good on a resume, and is an excellent way to "network". Networking isn't all about schmoozing at job fairs; it's about building a reputation with professionals in your field. There are very few fields where a huge number of professionals are so very accessible. Software developers are very lucky in this sense. Common wisdom seems to indicate that the job market for software developers is very competitive, and it's going to continue to be competitive for a while yet. Any edge you can get over your classmates is going to help. There is plenty of opportunity to contribute, no matter what your skill level. There is documentation to write and there are translations to perform. There are bugs to fix, and packages to create. Of course there are projects that need more "serious" development as well. You don't have to start your own open-source project, and you don't have to learn to hack on the Linux kernel to add something very attractive to your resume. When people ask me how to get involved in free software, I usually recommend that they start out reporting bugs in the open-source software they use frequently. You might install a version of GNU/Linux, or if you want to stick with Windows or MacOS, you should browse around to find out what free software is available. I think you'll be pleasantly surprised. Let's use "Gaim", a multi-protocol IM client, as an example of how this might proceed. Gaim runs on Windows, GNU/Linux variants, and I'd expect MacOS X, and Unix. It's open source and free: http://gaim.sourceforge.net/. Download Gaim and the Gaim source code. Build it for your machine if you want. Notice what language it's written in. Do you know this language? If not, can you understand it (if you know Java, you can probably understand a lot of C, for instance). Try out Gaim, set up your AOL Instant Messenger and your IRC channels. Visit some open source channels. See any problems? Check the bug reports to see if anyone else has seen that problem. If not, report it as a bug (you might want to google for "how to report a bug" first). Now check out the "bug reports" for Gaim. Pick a bug and try to reproduce it. Why are bug reports the first step in improving your resume?
  • Reporting a bug is a half-hour task.
  • Fixing a bug is often (not always) a small, weekend-sized task.
  • Bugs introduce you to the source code on a level where you don't have to understand everything (hopefully).
  • You will build familiarity with debugging tools which are invaluable for a developer.
  • You will start to build a reputation with the authors of the software, and in the free software community.
  • And because developers are always very happy to get bug fixes that they didn't have to work on themselves. Let's take a look at the bug list for Gaim again. Different ways to contribute to fixing a bug:
  • If you can reproduce the bug, you might add more information to the bug report: What steps did take to reproduce it? Is there a unique combination of features you need to be using to cause the bug?
  • If you can't reproduce the bug, maybe it's fixed in the version you're using! Maybe you should add that to the report (better read and understand it very carefully first). Pick another bug, repeat.
  • Depending on your skill level, you might try to fix this bug, or at least isolate where the bug came from. If you manage to fix it, read about the "diff" and "patch" utilities. Send the author a patch, or attach the patch to the bug report. Here is a bug that looks pretty easy, and it doesn't look like the developer is particularly thrilled to spend time on it: "Buddy Pounce does not get removed when user is deleted". I'm going to take a wild stab at how you might fix this bug: most probably, there's a "list" of "pounces" that has a data-structure which contains both the buddy's name, and the pounce action, whatever that is. Find the code where the buddy is deleted from the buddy list (a different list). Add code to search through the "pounces" list to delete that buddy from the pounces list as well. Compile, test, and run diff to create a patch, attach it to the bug report, take a bow. Now add this to your resume. You are now 50% more interesting to me, as someone who reads resumes, than your classmates who have never taken on a project outside of school. You've shown initiative, skill, and maybe even teamwork. Higher levels of commitment If there's a piece of software that you love, that you think is really important, then you might try adding features to that software and joining the development effort. Lots of projects have a page dedicated to information about how to help out. Here is one for the Mozilla project, for instance. If you want to lead a development project, you might adopt one that has been orphaned. Many people recommend against starting your own project off the bat. I've presented you with a method to increase your skill and reputation, and to add something interesting to your resume. Try it out. You might find out why so many software professionals work on free software projects. It's tons of fun! Feel free to send me comments on this document, or to tell me whether this advice has effected you.
  • 3 September 2006

    Marc 'Zugschlus' Haber: Why translate Debian stuff to German?

    Disclaimer: I am not comfortable with technical documents in my native language, German. I generally find German translations of technical stuff clumsy, overly complicated and badly worded. I might have a “special” feeling for the language, but some output of translators is just too bad to tolerate.For example, I constantly keep stumbling over the german translation of the Debian security team FAQ, which I consider horrendously badly done. Especially the use of the german word “Gutachten”, which basically means “opinion” in the legal sense (as the document produced by an expert called by a court of law) to translate “advisory” is a very very bad choice. My toes curl when I read the german version.In April 2005, I suggested to the German translation team to review the translation of the security team FAQ. I might not have chosen the right wording for that request, but besides a lot of flamage and “the translation is just fine”, I received the usual “send a patch”. Which I did in April 2005.No answer. In October 2005, I asked again, and received answer from the translator that my patch was just too intrusive. Well, a bad translation was rewritten, and the bad translation is still being used.Consequences for me? I’m not going to bother any more about German translations. English is just fine, and when somebody needs a German translation, I’m going to translate the stuff myself. Pointing people to the official German translations is just too embarrassing. A pity.

    29 August 2006

    Enrico Zini: random-thoughts

    Random thoughts Model Builder How are you tonight?
    1. What are the packages?
    < mrvn> Sesse: cvs help commit You know you definitely are bored when you set up your own newsgroup with a hammer Bringing about the intention: which future? Should a DPL have a moustache? Brilliant. ...the solution to all problems. the point is that from Redhat Linux NT you need to forward to a GUI in order to mount a microprocessor it's about time Kindly start doing something useful and quit ignoring the policy, please let's be reasonable. Let's not drag this into another flame war!

    Erich Schubert: Keeping your users out.

    Today I was trying to find some information in the Ubuntu forums. I'm seriously annoyed. There was one thread that seemed relevant, but it has some 310 pages. Yes, thats over 3000 posts. Unfortunately, Ubuntu (and I consider this arrogant behaviour) doesn't allow you to search the forum or access attached images if you are not registered. I can understand things like spam protection. But WTF do you require registration for searching? I mean... I was trying to find out if the Ubuntu community could help, and all I get is "register first"!? Thats pure harrasment of non-registered users. I don't think I'll bother to remember another username and password just for their crappy forums. I hate forums anyway. And the size of that thread just shows that forums don't scale well. Especially if you can't search. [Update: yes, I've been a bit harsh here. The front page says that they're experiencing speed issues, and thus have disabled search within the forum. Actually I can't believe that search requests make such a huge load (especially compared to me browsing a 30-page thread...) - but maybe their search function is just implemented badly? I wouldn't be surprised if they do some huge SELECT to search, and don't have an index optimized for text searching. Maybe they shouldn't be using a closed source software for running their forum. I guess they could just fix the search functionality then. If opensource software doesn't meet their requirements, they're bound to get some support by the community to make the software meet them, if vBulletin actually is better in some points. IMHO vBulletin sucks. And given the speed issues "it is what the admin prefers" might miss some important point - that at some point you can't just keep getting a larger CPU]

    26 August 2006

    Russell Coker: the waste of closed lists

    As I mentioned in my first post the amount of effort I'm prepared to invest in posting to a small group of people is limited. I don't think that I am the only person with this opinion.<br /><br />I also believe that the number of people who refuse to post to open lists is quite small, and that on many lists they aren't the people who contribute much. I believe that they are outweighed in both number and contributions by the people who want open lists and who are unwilling to spend a large effort on posting to a closed list.<br /><br />When posting to an open list you have to be concerned about your online reputation. Some lists are closed because of having NSFW content that people don't want known by their colleagues and managers, I guess that this makes sense for some lists.<br /><br />IMHO the only good reason for closed lists is for discussion of truly sensitive information. This ranges from security problems in software that have not yet been fixed to medical and psychiatric problems. There are many lists which should not be publicly archived, but for general discussion of computers there is no such motivation.<br /><br />For a list with a primarily technical focus on answering basic questions secrecy does no good, it merely protects people who want to post off-topic messages and create pointless arguments about issues that they don't understand.<br /><br />My solution to some of these problems is to use this blog to comment on such things. I expect that my solution will also be adopted by other people on some of the closed lists that I use.<br /><br />Also it has occurred to me that blogging about issues may improve the quality of list discussion. If instead of responding to a message in point-form you write an article about the general issue then it may reduce the level of personal dispute. I think it would be difficult to have a flame-war by blog.<br /><br />Finally while on the topic I have to mention that I don't believe in anonymous posting to technical forums. Any content that is worth having should come with someone's name attached. IRC nicks etc are OK, but the person writing the content should be identifiable.

    Russell Coker: wasted votes

    In a mailing list to which I subscribe there is currently a discussion on US politics with the inevitable discussion of <span style="font-weight: bold;">wasted votes</span>. As I don't want to waste my writing on this topic on a closed list I'm posting to my blog.<br /><br />There is ongoing discussion on the topic of <span style="font-style: italic;">wasted votes</span>. As a matter of principle, if a vote is considered to be wasted, then that should be considered a failure of the electoral system.<br /><br />Having representatives for regions makes some sense in that a regional representative will have more interest in the region than a central government with no attachment to the region. I expect that representatives of regions were initially used because it was not feasible for people to vote for people that weren't geographically local. Now there is no real requirement for geographical locality (only a very small fraction of the voters get to meet the person they are voting for anyway) but having a representative for a region still makes sense.<br /><br />The requirement for a regional representative means that if you live in a region mostly filled with people who disagree with you then your vote won't change much. For example I live in a strong Labor region so the REAL fight for the lower house seat (both state and federal) occurs in the Labor party room.<br /><br />My vote for the senate counts as that is done on a state-wide basis. So of the two votes entered in one election one of them can be considered to not be <span style="font-style: italic;">wasted</span>.<span style="font-weight: bold;"></span><br /><br />For the US system, the electoral college was developed in a time when it was impossible for the majority of voters to assess the presidential candidates, and it solved the requirements of those times reasonably well. Today it is quite easy to add up all the votes and use either a simple majority or the "Australian ballot".<br /><br />Currently there is some controversy over the actions of Senator Joe Lieberman who lost the support of his party and then immediately declared that he would stand as an independent candidate. I believe that this illustrates a failure of the electoral system. It should be possible to have multiple candidates from each party on the list. In the Australian system it is possible to do that, but as they are in random order on the voting cards no-one would be sure of which candidate of the winning party would get the seat unless there were actual reasons for preferring one candidate over another (which sadly often isn't the case). This is good for voters (the minority of voters who care enough about internal party policies to prefer one party candidate over another should make the decision) but not good for the candidates who want a better chance of winning without actually demonstrating that they can represent their voters better than other candidates.<br /><br />The Australian government system has nothing equivalent to the US presidential election. The prime minister is voted in by the members of parliament. So there is little chance of getting multiple candidates from one party contesting one position. For the US presidential election I think that the best thing to do would be to have an "Australian ballot" and permit multiple candidates from each party. For example you could have Bush and Cheney running as candidates for president with each promising to make the other their VP if they get elected. With the Australian ballot it wouldn't matter if you put Bush and Cheney as the last two votes on your ticket, the order you use for them will still matter.<br /><br />I think that with the US presidential and state governor elections there is enough knowledge of the candidates among the voters to make it worth-while for each of the major parties to run multiple candidates.<br /><br />One of many advantages of having multiple candidates is that you might have real debates. If the main candidates from the two big parties have a set of strict rules for their debate that prevents any surprise then the people who are the less likely candidates from those parties (and who therefore have less to lose) could go for a no-holds-barred debate with a selection of random members of the public asking questions.<br /><br />Of course none of this is likely to happen. Any serious change would have the potential to adversely affect at least one of the major parties, and any improvement would necessarily have a negative impact on most of the current politicians. Votes ARE being wasted, and most politicians seem to like it that way.

    23 August 2006

    Evan Prodromou: 6 Fructidor CCXIV

    Argh... trying to get caught up on this journal in the wee hours of the morning here in wt:Odense. I've had pretty bad jet lag this trip -- I've never been particularly good with time changes, and the North-America-to-Europe switcheroo really throws me off. So by 2PM I'm falling down on my feet, but at 4AM I'm rarin' to go. Odense has been a particularly nice place to visit. We got into wt:Copenhagen a few days ago, and crashed at the Airport Hilton there. It's actually attached to the airport -- you can just walk right in. Maj got a good deal on a room, and we figured it would make sense to sleep with the baby right there, rather than fight the train system to find another hotel in the city centre. After a free brunch including many different kinds of pickled fish, and a looong nap, we took the train into the Central Station in Copenhagen, right by Tivoli Gardens. There were lines around the block for the amusement park, but we skirted them and headed into the pedestrian area near City Hall. Based on a recommendation in Wikitravel, we went to the line of caf s and restaurants off of Nyhavn, a sliver of water poking into the heart of the town. It was a great walk, and we had a casual sidewalk dinner at a place called Carl's Corner. The canal was lined with boats that had been converted to restaurants -- we may try one when we go back to Copenhagen this week. tags:

    Wikisym The next morning I got up at dawn and got on a train to Odense for Wikisym. I missed my connection at the Central Station, and all the trains were running late, so I got real confused about where to go. The fact that I was carrying all of our luggage didn't help matters. But a few false starts later, I managed to get myself oriented and on my way. The train ride was beautiful -- wt:Denmark is a very pretty country, with rolling grassy hills and clusters of small, peak-rooved houses by the tracks. The trip from Copenhagen to Odense takes you from wt:Zealand to wt:Funen, across a long rail bridge. Very impressive. Once I'd landed in Odense and got myself organized, I slipped into the back of the room for Wikisym to catch the last few minutes of Angela Beesley's keynote address. Angela might be the hardest-working person in Wikidom -- she's a tireless community organizer not only for the Wikimedia Foundation sites like Wikipedia but also for Wikia's sites. After her talk, we did an wp:Open Space session, which continued throughout the day, interlaced with the academic presentations. I'm getting to be a big fan of Open Space; it was really effective for RecentChangesCamp, and I think it works well for organizing a conference. Ted Ernst led the sessions, with the help of Gerard Muller of the Danish Open Space Institute. Probably the most productive Open Space session for me was the one about non-text wikis -- using wiki techniques for video, audio, image and visual language editing. I'm fascinated by this stuff, and it's great to hear that some people are working with SVG and SMIL to do in-browser multimedia editing. The consensus is that the technologies Aren't There Yet but are around the corner. The other major thing I think I picked up from this session was Eugene Eric Kim's discussion of Wiki Ohana. Ohana is the Hawaiian word for family; the Wiki Ohana is a project to develop some interoperability and a transmission of our Wiki principles to new members of the family. I think it's a great idea and I'm going to try to get involved further. tags:

    Odense We had a great walk around Odense's core pedestrian area. It's not exceptional for Northern European towns -- it reminds me of the Netherlands, and Maj of Switzerland -- but the car-free cobble-stone walking areas are a real relief after years in North America. We have some pedestrian areas in Montreal, of course, but not in the same way. Odense is the childhood home of wp:Hans Christian Anderson, and the city is decorated with statues of HCA, and of characters from his stories (the Tin Soldier, Thumbelina, etc.) It gives a kind of fairy-tale air to the town. I'm not sure they should feel so proud of being Anderson's childhood home, though -- from everything I've read, his childhood was nightmarishly cruel, and his abysmally poor family was harshly treated by the society here. But, of course, that's in the past. Now, we had a real nice time walking around. Amita June likes tottering along on the cobblestones, and shouting really loud in the small streets to hear the echos. We ended up having dinner in a place called the Cuckoo Caf -- great food under a spreading tree in a little square. This morning -- no, yesterday morning -- Maj got up and took the first sessions, and Amita June and I slept in. We went off into town again to find a bakery, and shared a chunk of brunsviger, a sugary pastry that will probably rot out her tiny teeth. I had a cup of tea, which was less than satisfying. I've been trying to cut caffeine out of my life, so we've been having decaf at home, but they don't seem to serve it in caf s here. I'm a creature of habit, and I like the taste of coffee even if it doesn't have the caffeine oomph. tags:

    CAPS LOCK SUCKS In response to Lars's defense of CAPS LOCK: Lars, you ignorant slut. Caps lock has been the bane of online culture since the invention of mixed case in the late 1960s. It is a hallmark of clueless newbie-ism for people who are too analphabetic to remember the exceedingly simple English capitalization rules. The only legitimate purpose for CAPS LOCK is for doing C macros and defines, but hey, who writes in C any more? Anyways, that's just lazy programming. A real programmer would write a macro to capitalize the names of other macros where used. That's just good programming practice. Another important point is that CAPS LOCK is Eurocentric and imperialistic. What value does CAPS LOCK have for someone writing in Eritrean, Malayalam or Ojibwa? None at all. Yet dead white males like Lars Wirzenius want to force their CAPS LOCK cultural hegemony on an increasingly global culture. For shame. The worst thing about CAPS LOCK is that it squats in the middle of the most important letters on the keyboard, like a rat trap waiting to spring. Big and ugly, it always catches your left pinky when you're reaching for Ctl or Shift or Tab or A or whatever. Key-chording is here to stay, and CAPS LOCK not only ignores this important UI development but actively interferes with it. Modal interfaces are rightfully extinct, and CAPS LOCK needs to go the way of the dinosaur. It's time to eliminate this obsolete key once and for all. (This message brought to you by The Taxpayers Against Caps Lock Coalition. I, Evan Prodromou, endorse this message.) tags:

    21 August 2006

    Gustavo Franco: epiphany 2.14 in Debian

    <a onblur="try parent.deselectBloggerImageGracefully(); catch(e) " href="http://www.telecable.es/personales/algarcia/img/epiphany-88x31.png"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 89px; height: 31px;" src="http://www.telecable.es/personales/algarcia/img/epiphany-88x31.png" alt="" border="0" /></a>If you're using GNOME as your desktop environment, it's possible that you're using the wrong browser or just using one that isn't doing everything you want as i was, right ? Well, when Firefox came into the scene with one of its previous names i was using Galeon. Galeon worked for me, but it lacked some features that the new browser was offering. I would like to tell you that the same thing is happening again, and it's now time to give <a href="http://www.gnome.org/projects/epiphany/">epiphany</a> a try. If you did it before, do it again with the latest epiphany (2.14.0) in Debian sid, my reasons are below:<br /><span style="font-weight: bold;"><br /><span style="font-weight: bold;">Gecko<br /><span style="font-weight: bold;"></span></span></span>Yes, it uses Gecko 1.8 as backend and not gtkhtml so don't worry about page rendering. For those 'in the loop', it's already linked against <a href="http://developer.mozilla.org/en/docs/XULRunner">xulrunner</a><span style="font-weight: bold;"><span style="font-weight: bold;"><span style="font-weight: bold;"> </span></span></span>library. Firefox (in Debian sid) isn't yet.<br /><br /><span style="font-weight: bold;"><span style="font-weight: bold;"><span style="font-weight: bold;"></span></span>Bookmarks</span><br />You can attach tags (epiphany calls them 'topics') to the bookmarks and it will organize everything in a tree for you. The bookmark manager looks good for me too, i'm not too much into the bookmark thing but together with deskbar-applet and epiphany topics i can find what i want.<br /><br />The most interesting feature is that epiphany can look up to bookmarks published using avahi (mdns/dns-sd daemon) and show them as "local sites". In other words, you can setup a centralized bookmark server and all the epiphany users in your network will be able to see them. I've a mt-daapd server, and epiphany recognize that there's a admin website around, just like rhythmbox does.<br /><br /><span style="font-weight: bold;">Extensions<br /></span>Yes, it has extensions and is able to do ad-block and all that. Unfortunately the latest <a href="http://packages.debian.org/epiphany-extensions">epiphany-extensions</a> package still needs to be built for i386, but it's already ok for amd64 arm hppa powerpc s390.<br /><span style="font-weight: bold;"><br /></span><span style="font-weight: bold;">RSS<br /></span>I had some rss apps around, but wasn't really using them because what i needed was subscribe from the browser, organize the feeds in the app using topics/tags or folders and see some interesting integration between that app and the browser. It's now done, try epiphany and liferea. =)<br /><span style="font-weight: bold;"><br /></span><span style="font-weight: bold;">Memory<br /></span>After eight hours using epiphany it won't eat all your memory to 'optimize page loading' and even with this "bug" i don't see epiphany (and the rest of my desktop) too slow to open a new page after all this time.<br /><br />I think that a lot of users and developers will just look to epiphany as a serious Firefox alternative, after a big "user oriented" distribution pick it as the default browser. Thanks to the epiphany developers anyway, keep the good work.

    13 August 2006

    Adam Rosi-Kessel: Return to Traverse City Film Festival

    We spent last week at the Traverse City Film Festival in Michigan. This was the second year of the festival as well as our second year attending. Unlike last year, there was no “Freedom Festival” organized by Michael Moore-haters this year. Perhaps they are still recovering their debts from last year, when they lost money and had to stop their showing of “Michael Moore Hates America” after discovering it had inappropriate language for the family audience they were targeting. We saw nine films in just five days — four in one day was our max. (Rachele saw one more — The Beauty Academy of Kabul — that I missed, unfortunately, and we gave our tickets to Jesus Camp to Rachele’s parents.) Our selections were: The one that sticks most in my memory is La Moustache. The essence of the plot is revealed in the first minute of the movie: a man shaves off his mustache. His wife of fifteen years doesn’t notice. In fact, she doesn’t remember he ever had a mustache. While the film starts as vaguely comic, it quickly spirals into a psychic breakdown with a possibly unreliable narrator. It was quite nearly perfect. The beautifully restored virgin print of Monty Python’s Holy Grail was astonishing. The film was shown for free on a large outdoor screen by the lake, and the sound was crystal clear (now in stereo!) no matter where you sat. There are a bunch of scenes everyone always remembers in the Holy Grail. I realized after watching it again that the movie is composed entirely of these memorable scenes. (I had the same feeling watching the Wizard of Oz after a ten to fifteen year hiatus recently.) Finally, Stanley Kubrick’s first film, The Killing (1956) also merits the maximum rating, whatever that is (5.5 stars?). While it lacks the surreal/experimental feel of his later films, Kubrick was already beginning to play with narrative structure and sequencing. The film walks through the events leading to the climax several times, each time from a different character’s point of view. But really it’s just a great heist flick. Mani Haghigi, the Iranian director of Men at Work, had an interesting observation about the festival. Unlike most other film festivals, he, as a director, could just hang out and enjoy the films and the company and not worry about impressing executives and distributors. The festival’s motto is accurate — “Just Great Movies.”

    Alexander Sack: thunderbird + reply-to-list ... here it comes

    Yesterday, I uploaded a first thunderbird 1.5.0.5 build. It fixes – as you might know – several security issues, applies several patches … so nothing unusual. However, there is one interesting and maybe useful change: a patch which provides the core feature needed to make a reply-to-list extension possible in thunderbird. I often red complains that thunderbird has no reply-to-list feature. Thus, I decided to ship this patch for etch. In general, I don’t add features upstream has not yet included. But this one looks important enough for me to not remember my own rules :-). In order to make use of this feature, do this:
    1. Install enigmail or mnenhy extension. I would suggest enigmail which is in the debian archive (aptitude install enigmail)
    2. Install the Reply-To-List Extension from this address.
    3. Press Ctrl+I (yes, Ctrl-L is already in use, sorry) in order to reply to list.
    4. or add the Reply-To-List button to your toolbar and press that one.

    Ah, here a screenshot,
    Reply To List Button and Key-Binding in Debian Thunderbird 1.5.0.5
    Anyone disagrees with the decision to ship this in etch?

    Andrew Pollock: [tech] MythTV in under 24 hours

    Last night, the final component of my MythTV setup arrived - the TV tuner card, a Hauppauge WinTV-PVR-350. I'd had the other bits and pieces for about a week, indeed I'd already had MythTV installed and "operational", but there's really only so much you can do without a TV signal in the mix as well. So I had a bit of a late night last night bashing on things and getting it all going. It was actually surprisingly trouble-free. For some reason, I naively thought that the more contemporary 2.6 kernels had all the support required for the PVR-350. Not true. You need to grab the ivtv driver and build it separately. If I was less impatient, I would have worked with module-assistant to get it packaged, but I just threw it on. I have to run 2.6.17 to get the sound working, so I needed the 0.7.0 version of the driver. This built and installed fine, and I could run mplayer against /dev/video0 and see (and hear) TV fine. With a bit of tweaking of MythTV, it was happily using the card. Getting the remote control to work was slightly more problematic. It turned out that I needed to get the latest greatest lirc from CVS in order to get everything to build correctly, and get a /dev/lirc that I could actually read from. After that, everything else just fell into place. The last thing I spent a bit of time battling with today was guide data and channel tuning. It seems for some reason that channels greater than or equal to 14 didn't have their frequency set correctly, so I had to manually edit each channel and put in the frequency in kilohertz that ivtv-tune --list-channels provided. The Zap2it chaps also provide two different sets of guide data for Mountain View, and depending on which one you pick, you get a totally screwed up idea of the actual channels available. I also discovered the hard way that changing from one set of channels to the other without cleaning out the channels first leads to a complete mish-mash of channel data that correlates even less with reality than choosing one or the other by itself. But within 24 hours of receiving the tuner card, I have everything up and running. The ATA over Ethernet disk array (that Myth tells me is good for over 600 hours of recording) seems to be holding up to the task alright. The current bandwidth utilisation for a few test recordings is interesting: Graph of bandwidth utilisation for disks attached to the MythTV server
via ATA over Ethernet So it seems that a TV show is a nice steady 5 mbits/sec, which everything seems to keep up with okay. The post-processing to flag commercials seems a bit more bandwidth-intensive. It seems to take about 40 minutes to flag the commercials for a 60 minute block of recording. It's early days yet, but I'm fairly happy with how everything's operating so far. I can certainly leave things as they are for a while without needing to fiddle with things any further. The one thing I do want to mention is the guide data. The fact that it's totally free, and designed to be used by the likes of MythTV is awesome. PVRs really live and die by the guide data, and it's so cool that Zap2it offer it complete gratis. Mad props to them. Oh, and while I'm dishing out praise, I really must also thank Christian Marillat for http://www.debian-multimedia.org/ and for packaging up MythTV for Debian. If I had to build all of this myself, I'm sure it wouldn't have been so trouble free.

    Andrew Pollock: [tech] More benchmarking

    When I did my Red Hat Certified Engineer training, the second time around (when I updated from Red Hat 7.1 to Enterprise Linux 3), the trainer mentioned this Ext3 vs Reiserfs benchmark that Gurulabs performed. Probably because it had such a memorable name, I've remembered it and referred people to it, and referred to it myself, a few times over the years since. So it seemed only fair to try out their benchmarking methods (i.e. use NetApp's postmark with a few different settings) on the uber-disk as well, while I had it idle. So I did. Firstly, I ran it locally on minotaur, the piddling little 866Mhz Pentium III, with 320Mb of RAM (but with 1.5Tb of disk attached directly via USB), and then I ran the exact same tests from teevee, the box destined to become my MythTV server (3.0Ghz Pentium 4, 1Gb of RAM), with the disks mounted with ATA over Ethernet. This was with a JFS filesystem on a single logical volume striped across four physical volumes. I ran the tests three times, just like the Gurulabs benchmark, first time around, it was with: The idea being that this will generate around 150Mb of data, which should all fit in the RAM (of either system) The second time around was with: The idea being that this, generating 1400Mb of data, will exceed the RAM on both systems (but not uniformally, obviously). The final run was a total thrash with: This one causes about 19Gb of data to be written, and absolutely hammers the living daylights out of the disks (or the network, and the disks, in the case of ATAoE). So, now for the results:
    Test case 1, with locally attached disks
    Time:
            22 seconds total
            21 seconds of transactions (2380 per second)
    Files:
            27170 created (1235 per second)
                    Creation alone: 2000 files (2000 per second)
                    Mixed with transactions: 25170 files (1198 per second)
            24986 read (1189 per second)
            24697 appended (1176 per second)
            27170 deleted (1235 per second)
                    Deletion alone: 2340 files (2340 per second)
                    Mixed with transactions: 24830 files (1182 per second)
    Data:
            149.53 megabytes read (6.80 megabytes per second)
            161.85 megabytes written (7.36 megabytes per second)
    
    Test case 1, with ATAoE attached disks
    Time:
            27 seconds total
            25 seconds of transactions (2000 per second)
    Files:
            27170 created (1006 per second)
                    Creation alone: 2000 files (2000 per second)
                    Mixed with transactions: 25170 files (1006 per second)
            24986 read (999 per second)
            24697 appended (987 per second)
            27170 deleted (1006 per second)
                    Deletion alone: 2340 files (2340 per second)
                    Mixed with transactions: 24830 files (993 per second)
    Data:
            149.53 megabytes read (5.54 megabytes per second)
            161.85 megabytes written (5.99 megabytes per second)
    
    Findings
    A degradation in performance, sure, but not a huge one. Graph of the results
    Test case 2, with locally attached disks
    Time:
            218 seconds total
            209 seconds of transactions (239 per second)
    Files:
            27144 created (124 per second)
                    Creation alone: 2000 files (400 per second)
                    Mixed with transactions: 25144 files (120 per second)
            24830 read (118 per second)
            25094 appended (120 per second)
            27144 deleted (124 per second)
                    Deletion alone: 2288 files (572 per second)
                    Mixed with transactions: 24856 files (118 per second)
    Data:
            1405.24 megabytes read (6.45 megabytes per second)
            1535.91 megabytes written (7.05 megabytes per second)
    
    Test case 2, with ATAoE attached disks
    Time:
            165 seconds total
            158 seconds of transactions (316 per second)
    Files:
            27144 created (164 per second)
                    Creation alone: 2000 files (1000 per second)
                    Mixed with transactions: 25144 files (159 per second)
            24830 read (157 per second)
            25094 appended (158 per second)
            27144 deleted (164 per second)
                    Deletion alone: 2288 files (457 per second)
                    Mixed with transactions: 24856 files (157 per second)
    Data:
            1405.24 megabytes read (8.52 megabytes per second)
            1535.91 megabytes written (9.31 megabytes per second)
    
    Findings
    Whoa, who'd have thought this? Better performance over the wire? I'm blaming the fact that minotaur is a bit of a weakling compared to teevee, and teevee had a better caching advantage with more RAM. Mind you, you'd expect to see the same for the first test as well, unless size is a factor. Inconclusive results I guess. Graph of the results
    Test case 3, with locally attached disks
    Time:
            7356 seconds total
            7310 seconds of transactions (27 per second)
    Files:
            104099 created (14 per second)
                    Creation alone: 4000 files (117 per second)
                    Mixed with transactions: 100099 files (13 per second)
            100246 read (13 per second)
            99560 appended (13 per second)
            104099 deleted (14 per second)
                    Deletion alone: 4198 files (349 per second)
                    Mixed with transactions: 99901 files (13 per second)
    Data:
            18995.06 megabytes read (2.58 megabytes per second)
            19738.85 megabytes written (2.68 megabytes per second)
    
    Test case 3, with ATAoE attached disks
    Time:
            12320 seconds total
            12111 seconds of transactions (16 per second)
    Files:
            104099 created (8 per second)
                    Creation alone: 4000 files (32 per second)
                    Mixed with transactions: 100099 files (8 per second)
            100246 read (8 per second)
            99560 appended (8 per second)
            104099 deleted (8 per second)
                    Deletion alone: 4198 files (49 per second)
                    Mixed with transactions: 99901 files (8 per second)
    Data:
            18995.06 megabytes read (1.54 megabytes per second)
            19738.85 megabytes written (1.60 megabytes per second)
    
    Findings
    So presumably the network latency made its presence felt with data volumes of this magnitude. Graph of the results

    6 August 2006

    Andrew Pollock: [tech] Initial bonnie++ results with the uber-disk

    So I ran bonnie++ over my 1.5 terabyte, exported via ATA-over-Ethernet logical volume of extreme immensity. I don't really know what I'm looking at, but I'll record the results here before I lose them. From both the MythTV front-end, and from minotaur, the box that has the disks attached, I ran bonnie++ twice:
    bonnie++ -d /mnt -s 2G -n 1 -u nobody:nogroup
    
    and
    bonnie++ -d /mnt -s 2G -n 1024 -u nobody:nogroup
    
    Firstly, I guess the results where the disks are directly attached (via USB):
    Version  1.03       ------Sequential Output------ --Sequential Input- --Random-
                        -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
    Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
    minotaur         2G 13595  95 20652  24 10204  12 13625  92 21362   6 295.5   1
                        ------Sequential Create------ --------Random Create--------
                        -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
                  files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                      1 +++++ +++ +++++ +++ +++++ +++ +++++ +++ +++++ +++ +++++ +++
    
    and
    Version  1.03       ------Sequential Output------ --Sequential Input- --Random-
                        -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
    Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
    minotaur         2G 13646  95 20864  24 10195  12 13348  91 21377   6 288.8   2
                        ------Sequential Create------ --------Random Create--------
                        -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
                  files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                   1024  6173  37  6090  17  2215  22  1032  22   184   0    93   2
    
    The +'s indicate that the result occurred in an impossible to accurately measure, sub-500ms time. From the MythTV front-end, so with the ATA-over-Ethernet overhead thrown in:
    Version  1.03       ------Sequential Output------ --Sequential Input- --Random-
                        -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
    Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
    teevee           2G  3789   7  3761   0  3138   0 10742  23 11445   0 152.9   0
                        ------Sequential Create------ --------Random Create--------
                        -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
                  files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                      1 +++++ +++ +++++ +++  1029   2  1372   1 +++++ +++ +++++ +++
    
    and
    Version  1.03       ------Sequential Output------ --Sequential Input- --Random-
                        -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
    Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
    teevee           2G  3848   8  3862   0  2876   0  9871  31 11440   1 147.9   0
                        ------Sequential Create------ --------Random Create--------
                        -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
                  files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                   1024  2488   7  4633   8  1752  15   752   8   444   1   159   1
    
    Wow, I'm going to go away and analyse these numbers and update this post, but on the face of it, it looks like there's a significant performance impact (at least on my home network, I'm sure it's not optimal) in using ATA over Ethernet. Hmmm.

    31 July 2006

    Aigars Mahinovs: Spot focus

    For a long time I have considered F-Spot to be a nice concept application, but not really fit to be the center of Linux digital photography experience due to general bloat and (most importantly) due to the lack of many important features that would compensate the interface lock in that this application demands. In this post I will try to list all the deficiencies and lacking features of F-Spot that I have found while using it to manage my photo flow.
    First let’s talk about the bloat. I will compare F-Spot to GThumb. There are few points of comparison: first start up, viewing a bunch of photos and importing a bunch of photos. When starting up GThumb uses 17 Mb RSS memory (10 of them shared with all other Gnome programs) while F-Spot uses 33 Mb RSS memory (17 of them shared with other Mono programs, of which I do not have any). When viewing a folder with couple hundred photos GThumb uses 25 Mb RSS memory while F-Spot grows to 55 Mb RSS. On import GThumb calls gphoto that adds 3-5 Mb RSS to the memory usage, while F-Spot seems to implement some/most of the photo protocol internally and can easily grow in memory up to the size of the photos being imported (which is kind of problematic while importing a gigabyte of photos), but usually the memory usage on import hangs around 250-300 Mb and hovers around that level for some time after the import is complete. For me personally it does not make much a difference (I have 2 Gb RAM now), but conservative memory usage is still critical for a good Linux application because people expect Linux to be faster and high memory usage can slow down anything. In my opinion no photo management operation should take more then 50 Mb of private RSS memory (even importing several gigs of RAW files from the camera).
    Now let me try to describe the optimal work process of a (semi)professional photographer, so that we can see what is missing in F-Spot to accommodate such work-flow and what is done right.
    1. The photographer takes one (or several) cameras, lenses, flashes, memory cars, spare batteries and tripods and goes to an event/photoshoot/modelling session/walk in the park/wedding/…
    2. He takes 3-5 Gb of pictures from lots of different angles with different cameras, different lenses on different memory cards with different settings. Most of them will be the highest quality available on the camera, usually those will be RAW images.
    3. Upon getting back to his computer, the photographer wants to drop all the data to a staging place dedicated to this event. He wants to do it fast and simple without sorting trough the photos at the moment, but at the same time he might want to split the staging areas (multiple models within one session) or join them (one model from different cameras). Sometimes he might not even have time for that and would just want to dump the data now and run to another event.
    4. After several shooting events the photographer finally has reserved the time to sift trough some of the photos from the staging area (modelling jobs first, then the friends wedding and the walk in the park as last)
    5. First the photographer decides to check if the times on the photographs are correct and discovers that at some shooting sessions one of the cameras was set to another timezone. He select all shots from that camera across several (but not all) staging areas and adjusts the time.
    6. Now he rechecks the logical groups of photos (which photos should be in which staging area) by dragging the photos around, splitting and joining the staging areas
    7. When the overall structure is clear, the photographer selects one (most important) staging area and starts working with images in that staging area not caring about any other images
    8. First he browses in full screen trough all the photos rating them in quality scores form 1 to 9 by pressing corresponding number keys. Rating a picture automatically advances to the next picture, which happens very fast because the software precaches several photos ahead for speed and displays without any flicker. Speeds in the order of 2 photos per second are expected on good enough hardware. One key operations for “view 100% zoom”, “rotate”, “view exif” and “quick note” are available. RAW images are automatically translated for preview with default settings.
    9. With couple clicks bad photos (with score of 4 or under) are selected and erased
    10. Now the photographer starts working with individual photos
    11. First step is the RAW->Jpeg conversion. An appropriate tool is brought up with default setting already applied and a preview of the photo showing up (like in dcraw). The photographer adjusts the conversion parameters (including and option to make a HDR-like effect by compressing the dynamic range of high bitness pictures). The converted Jpeg is saved as a version of the original photo and becomes the default for operations that do not understand RAW.
    12. A separate plugin is used to reduce digital photo noise from the pictures (new version)
    13. Photographer makes adjustments to the image inside F-Spot. Each modification makes a new version.
    14. Still not satisfied, the photographer starts Gimp from inside F-Spot and make further edits. Each time Gimp saves the file, F-Spot makes another version.
    15. The photographer erases some versions of the picture and also joins multiple near-duplicate shots into one picture as versions of that picture. One version is always marked as the top version and the photographer can easily change it.
    16. The good photos are tagged and imported to the main collection
    17. A subset of the photos is exported to: Flickr, personal Gallery installation, plain html photo album, a zip file with small (1024x…) versions of the photos, … Only the top versions of photos are exported. If unconverted RAWs are top versions, then they are converted to Jpeg with default settings. In most cases photos are also downsized before export according to the preferences. Highest quality downsizing is used (anti-aliasing) and also additionally small unsharp mask is run on each photo
    18. The photographer does advanced searches and advanced tag selections to select and display or export subsets of his main collection
    19. The photographer has three instances of F-Spot: his laptop, his main work PC and a backup hard drive that can be attached to either of them. He needs to keep his F-Spot photographs synchronised between the three locations for backups and for distributed work. Also after some point the main photo archive becomes too big to store it (with all versions) on the laptop or even on the main PC, so the photographer selects a set of older photos and selects an option to archive them. The next time a connection is established with the backup drive, all versions of archived photos are copied to the backup harddrive and the laptop and the main PC only keep 90% quality Jpeg format picture of the top version of each photo downsized to exactly fit the display resolution of the device. If even that takes too much space then “Archive Only” option is selected which insures that the backup harddrive has the copy of the photo and then erases it from primary data stores completely.
    20. When the backup harddrive is connected it is also very simple to make DVD/HDDVD/Blueray backup copies of subsets of photos from the archive with all the metadata and versions in such a way that other software (and even dedicated media devices) could easily browse the top versions of photos directly from the backup media. Of course, restoring from such backups also must be tested.
    So, to summarise, the changes needed for F-Spot are: As you can see, many of those issues are already reported to F-Spot bugzilla, but have recieved little attention. So what shall we do about it?

    29 July 2006

    Joerg Jaspert: Little changes

    Today aj applied two patches to the dak code running on ftp-master i supplied. One got the part in dak that processes NEW up to reality for non-free (well, non-main) debian-installer components, they are now able to go in. The other, more interesting one, affects the mails people receive when a NEW package is accepted. Those now contain an added paragraph, basically looking like the following:
       Override entries for your package:
       foo.deb - optional devel
       bar.udeb - extra admin
       foo2.0-1.dsc - source interpreters
    
    That means you can now directly see if you have a different opinion of the override entries and change your package, avoiding a “Override disparity” mail with your next upload. And just because it was a nice rainy (and cold!) day today, I also went and rejected those two old packages we had in the queue. rte, real time encoder, was the first, and looks like it wont ever get included in Debian, containing non-free code. The other, more flame-attached package, is mplayer - which may get into the archive in the future, but needs a lot of work before that can actually happen. Now - people only need to stop uploading NEW packages, and we are all fine. :) Update: And after aj applied my fix to my override patch people now get the right data mailed…

    28 July 2006

    Joerg Jaspert: Little changes

    Today aj applied two patches to the dak code running on ftp-master i supplied. One got the part in dak that processes NEW up to reality for non-free (well, non-main) debian-installer components, they are now able to go in. The other, more interesting one, affects the mails people receive when a NEW package is accepted. Those now contain an added paragraph, basically looking like the following:
       Override entries for your package:
       foo.deb - optional devel
       bar.udeb - extra admin
       foo2.0-1.dsc - source interpreters
    
    That means you can now directly see if you have a different opinion of the override entries and change your package, avoiding a “Override disparity” mail with your next upload. And just because it was a nice rainy (and cold!) day today, I also went and rejected those two old packages we had in the queue. rte, real time encoder, was the first, and looks like it wont ever get included in Debian, containing non-free code. The other, more flame-attached package, is mplayer - which may get into the archive in the future, but needs a lot of work before that can actually get true. Now - people only need to stop uploading NEW packages, and we are all fine. :)

    19 July 2006

    Andrew Pollock: [tech] Gadgets always seem to arrive in bulk

    Whenever I get stuff, I always seem to get lots of stuff all at once. So tonight we went to the lovely Fry's, with a mission to acquire an Ethernet switch to plug in the new printer, which was due to arrive any day now. A co-worker had also recently bought a 160Gb hard drive that cost $40 after rebate, so I was on the lookout for one of them too. Instead, I came home with 1.6Tb of hard drive. Oh well. There were some Seagate 400Gb hard drives going for around 30 cents a gigabyte (that figure still blows me away, I remember when it was dollars per megabyte), so I couldn't pass that up. Hopefully it'll motivate me into getting a wriggle-on with building the MythTV box. I figure I'll try to get a USB-2 card and stick it in my 1RU server, attach the four disks to that, and export them via ATA over Ethernet, and I should be able to have an essentially diskless MythTV front-end (maybe boot it from a 1Gb USB key I've got lying around spare, or PXE boot). Should be fun, if I ever get around to it...

    Next.

    Previous.