Wouter Verhelst: Whee.
I just sent in the AM
report for my first ever NM, Lucas
Nussbaum. If I haven't done anything wrong, that means Lucas is now
well on his way to actually becoming a Debian Developer.
Welcome Lucas!
nbd (1:2.8.3-2) unstable; urgency=low
* Steal patch from CVS for nbd-server.c to make children exit when they
finish serving, rather than having them loop over "Help, I can't accept()
anymore!". Closes: #350357.
-- Wouter Verhelst <wouter@debian.org> Tue, 31 Jan 2006 11:17:25 +0100
#350357 is a bug of
severity important, and rightly so. From the bug report:
Jan 28 14:42:58 caradoc last message repeated 1190456 times Jan 28 14:43:59 caradoc last message repeated 2478818 timesAn infinite loop producing an error message, a bug which triggers when a client disconnects. Have two clients connect, then disconnect, and you have a syslog being filled up with spurious error messages, filling your entire disk in a few hours or days. It may be too late to update dapper now; however, had I been asked after #350357 was filed whether it would be a good idea to ship with this specific version of nbd, I would have said "no", and this horribly buggy version of nbd wouldn't be in a released version of Ubuntu. And since #350357 was filed a few days before the above log entry, in January, I cannot believe that it would've been too late. Of course, if anyone from Ubuntu is reading this and can tell me that yes, it is still possible to update nbd in Dapper, then by all means, please do so. Oh, and don't forget to update edgy while you're at it :-) That being said, I'm hoping something can be done to avoid this kind of SNAFUs from occurring again. Ubuntu could talk to me for those packages they care about, which (according to their policy and the status of nbd in their distribution) includes nbd. As it is, Ubuntu is just a large institution that happens to redistribute parts of Debian. I'm getting more feedback from the guy doin the 'nbd-server' port in FreeBSD than I'm getting from Ubuntu—and that FreeBSD guy only once or twice sent me an email...
Norwegian Wood was the one of Murakami's novels that I didn't like at all, wish I had never read, and by which I felt "cheated" and let down by what may well be my favourite author for the time being -- well, maybe Dance Dance Dance is also one of those. It was previously impossible for me to determine exactly why I felt so bad about the book, which made this reread a little more challenging -- and rather interesting in the end. Norwegian Wood was my third Murakami novel, after I had read the Wild Sheep Chase and After the Quake. Up front those reasons that I think made me dislike the book the first time around: the story line of Norwegian Wood is absolutely boring and way too autobiographical, and the ending is painfully artificial. In fact, half way through the book, the story takes a turn (I cannot pinpoint the exact moment), around which I often put down the book in refusal, annoyed and disappointed. If I say that the story line is boring, I mean that it's a boring foundation, but as with all stories, it's in the author's hands to make it into an exciting novel. Murakami fails in this novel, in my opinion (he claims he set out to achieve something else, that this book was a challenge to him). Anyway, I do remember from my first reading that I really liked the tension and potential in the character interplay Murakami describes in the first half of the book, and I anticipated a deadlock between them, which would have to be solved by Watanabe (the main character) in a lose-lose type of resolution. However, what happens is that everything sort of resolves itself, dragging the characters along. It never touches once on paradoxical or supernatural elements as found in most other Murakami novels, which is a shame. Furthermore, it's a love story, and one with too many romantic and melancholic moments for my taste. Upon rereading (having gone through another four Murakami books in the mean time), I noticed a number of other things that disturbed me, or otherwise came in perpendicular to my taste: Toru Watanabe, the main character, aged around 20, goes through a great deal of effort to make sure the world knows he's just ordinary. Yet, the way he swings life is just a little too good for the ordinary. Throughout the book, you get the impression that he's not very happy or satisfied with his life, yet if you look at the days he fills, you'll tend to see them as complete. This turns Watanabe into a grouchy pessimist, and that mood transferred to me as the reader. On a side note: one thing I definitely like about Murakami's main characters (at least those I have met) is their self-sufficiency: the whole world could vanish and still they'd continue doing what they always did. In some ways, I have found myself in those characters, but more often I find myself looking up to them and wishing I could be like that. Watanabe is, however, just too much of a polished character (and with that I don't mean polished to be good, just polished), and one that seems to do everything right when it comes to the moral level. Sure, he asks himself about moral issues here or there, but my feeling was always that Murakami put those monologues in for completeness, not for character. I find it hard to imagine a boy between the ages of 17 and 21 (which is the years the book covers) with traits like Watanabe, and such integrity: he's never dishonest or even plagued by the possibility, and he appears to be consciously doing everything he does. He ends up in bed (or close by) with one of several girls he devours on a number of occasions, but each time stays in absolute control, not allowing himself to "do it", or accepting whatever excuse comes =66rom the girl. I don't mean to say that this by itself is unlike a boy at his age, but I guess what I am really lacking is a reflection on his thoughts, or at least some insight, which Murakami withholds each time. It would have added a lot of tension to those moments, made them even a bit erotic (which despite all the sex and sexual references, I found none of the book to be). Finally, there is almost no character development in the novel. Even though the time span of the novel spans a very important time in the development of a boy, he does not change much, nor does his perception of the characters around him (the book is told in the first person). In the end, despite a serious lack of motivation to read on throughout most of the text, I think I did learn to appreciate it after all. On the one hand, Murakami hides many little gems of thoughts in the conversations with Midori, the girl ready to shake up Toru's life, which often have Zen-character ("I wonder what ants do on rainy days"), and it did take me a reread to notice those -- and I smiled every time I did. On the other hand, the reread did allow me to get a closer look at the relationships between the characters, and how Murakami explores them, mostly with parallels referencing the past. He remains in my eyes as one of the most imaginative writers of modern literature, and while it strikes me as easier to be imaginative in an imaginary story, the challenge is all the more as you move into real life, and in this case: real life as tangible as it gets because of the elements of love.I am still looking forward to my next novel, which will either be Murakami's Wind-Up Bird Chronicle (which is said to be his best), a book recommended to me by the aforementioned traveller (Lizard by Banana Yoshimoto), or one suggested today by my physiotherapist, but I fail to recall the name at this moment and shall have to wait until I receive my next treatment on Wednesday.
Over the past two years our users have experienced tremendous success incorporating WebLoyalty in their checkout. For those of you unfamiliar with WebLoyalty, it’s a special rewards program offered by Marketworks that benefits merchants with cash and repeat shopping. Given the success our participating Sellers have experienced, effective June 21, 2006, WebLoyalty will be enabled as a default setting in all US-based users’ StoreFront/Checkout profiles. We’ve updated our Terms & Conditions to reflect this setting (effective June 21, 2006 for existing users). If at any time you wish to discontinue your participation, simply indicate your participation preference by clicking the appropriate radio button on the WebLoyalty settings of your StoreFront/Checkout profile. Note that at this time WebLoyalty is only available to US sellers and buyers. Learn more about WebLoyalty. The Marketworks TeamSo now not only will there be millions of Webloyalty subscribers who aren’t even aware they are paying for this useless service, there will also be thousands of eBay sellers who aren’t even aware that they are signing their customers up for this useless service. I understand that a number of Marketworks sellers who actually know this is going on are upset, but the majority of users don’t read the forums where this is being discussed. (Full disclosure: I have nothing to do with Marketworks myself.) To be fair, I should mention that a Webloyalty executive (the “lead Consumer Affairs representative” — Mary O’Reilly) has apparently posted to my blog in defense of the company. The following comment appears about 1,000 comments down on my main Webloyalty entry, and is in response to this entry mentioning inflammatory comments posted by other Webloyalty employees calling Webloyalty customers ‘suckers’:
As lead Consumer Affairs representative for Reservation Rewards, I apologize on behalf of WLI Reservation Rewards for the inappropriate and offensive comments posted by the person identifyingthemselves as “WLI Customer Service Representative”. Our company does not condone or tolerate this type of unprofessional behavior and providing consumers with the highest level of customer service is of utmost importance to us. If we can confirm that the comments were actually posted by one of our customer service representatives, appropriate action will be taken with that employee. As a company, Reservation Rewards takes consumer comments very seriously. We have hundredsof thousands of satisfied customers and we consistently strive to provide our customers with first class membership programs and customer service. In the past, our approach has been to deal with consumer concerns on an individual basis rather than in a public forum. To fully address a consumer’s concerns we need some specific information (e.g. the consumer’s full name or email address) so that the consumer’s record can be accessed. Once the consumer’s record is accessed, we can identify exactly how, when and where the membership offer was accepted and also cancel the membership if that is what the consumer wants. However, it troubles us to see the concern that some consumers have expressed on this blog with regard to Reservation Rewards. At this time, wewant to make an open and sincere attempt in this public forum to clear up the misunderstandings that are generating the concerns. We thought the following Question & Answer type format might be the clearest way to share information and address the primary areas of concern expressed on this blog: 1. How Is The Reservation Offer Presented To Consumers? How Did I Get Signed Up For This? We try to make our offer as clear as possible so that consumers can make an educated decision on the offer. Over the years, we’ve incorporated a number of client and consumer suggestions to clarify the offer even further. Consumers are presented with the ReservationRewards offer when completing a transaction at one of our client’s websites. It’s not a check box that you have to unclick to reject the offer. Instead, the consumer is presented with a full offer page (separate from the client’s transaction page) and is required to take 3 actions to accept the offer and authorize the data pass of personal information. In addition to entering their email address twice, a consumer must also click on a ‘YES’ button to accept the offer. The offerpage includes all the Offer Details, clear mention of the monthly charges, a description of the membership benefits and instructions on how to redeem the Cash Back award. 2. How Does Reservation Rewards Get Consumer Credit Card Numbers? Please be assured that our clients aren’t passing credit card information to us without the consumer’s authorization. The security of your credit card information is of utmost importance to each of our clients. They would never provide a consumer’s credit card information without proper authorization. The security of your credit card number is also important to Reservation Rewards and we require consumers to provide us with authorization. In order to accept the Reservation Rewards membership, we requirethe consumer to provide us with their email address twice to make them pause and take the time to read and understand the offer. Immediately next to the boxes where a consumer is required to enter their email address is the statement: ‘By entering my email address as my electronic signature and clicking YES, I have read and agree to the Offer and Billing Details and authorize to securely transfer my name address and credit or debit card information to Reservation Rewards for billing and benefit processing.’ If a consumer just clicks on the ‘YES’ button without entering their email twice, the membership is not accepted. If a consumer does not want to accept the offer, there is a ‘No Thanks’ option right under the ‘YES’ button. 3. Reservation Rewards customer service said they sent me multiple emails about the membership before billing. What emails? I never got any. Once a consumer accepts the membership we make a significant effort to make the consumer aware of the membership and send multiple communications to the consumer before the first membership billing occurs. We use sophisticated monitoring tools to track the deliverability of these emails and our records show a very high delivery rate. We actuallyhave these records audited by a third party to ensure we are consistent in sending them to consumers.We also work with two outside companies to assist us in maximizing our high delivery rate. If an email bounces back as undeliverable, we send the consumer a letter via U.S. postal mail. However, we do understand in this day and age of spam, some of our email communications maybe filtered out and not read by some consumers. So, in addition to the email communications, each member is also presented with a membership acknowledgement page immediately upon acceptance of the membership. Our intent with this acknowledgement page is to make the consumer immediately aware theyaccepted the membership and to give them an opportunity to cancel it if that is what they want. We have hundreds of thousands of members that happily use the Reservation Rewards benefits and we don’t want people to be in the membership that they didn’t intend to join. 4. Why didn’t I get my Cash Back Award or access to membership benefits? I don’t believe there really is a Cash Back Award or Membership Benefits. We apologize if some consumers find it unclear how they can redeem their Cash Back Award or take advantage of the membership benefits. We have many members taking full advantage of the membership benefits and redemption of their Cash Back Awards. We encourage members to redeem their Cash Back Award and use the membership benefits by immediately presenting them with the membership acknowledgement page. In addition to instructions on how to redeem their Cash Back Award, the membership acknowledgement page also includes a password to log into the Reservation Rewards website. We also send each customer an email 13 days after accepting the membership that reminds them to redeem their Cash Back Award. We encourage you to go to www.reservationrewards.com to review the array of membership benefits. We think you’ll find that we partner with many top names in leisure, dining and theme parks to provide our members with significant discounts. At the lower left-hand corner of the home page you can review positive comments from Reservation Rewards members who regularly use the benefits. When a misunderstanding occurs, we’re more than willing to cancel the membership and provide a refund. Wecan assure you that our customer service representatives are all trained to respond to consumers in afriendly and accommodating manner. When you contact our customer service department to cancel a membership, you won’t be faced with a rep trying to convince you to keep the membership ’ our reps aren’t allowed to do that. The rep will just need some basic information from you such as your email address, full name and/or zip code to access your record and immediately accommodate your request. Once your membership is cancelled, you can be assured that we will not bill your credit card again. We value consumer comments whether positive or negative. They help us consider ways we can further improve the communication and value of the Reservation Rewards offer to consumers and they also gives us the opportunity to clear up any misunderstandings. If anyone would like us to provide more specific information on the actual offer that was presented specifically to you, just send your full name and email address directly to consumeraffairs@webloyalty.com. We’ll be happy to assist you and address any further concerns you have. Sincerely,I don’t know whether or not the above description is currently true, but it is certainly entirely inconsistent with my experience. I did not enter my email address once — or twice — to “confirm” my subscription. My server logs from that time period showed that no confirmation emails were ever sent by Webloyalty (regardless of whether they might be caught by a spam filter), and the customer service representative I spoke with did try to keep me to keep my membership (and moreover was exceedingly rude). Hopefully my experience with the company is no longer true, but based on the comments on my blog that’s not the case. Webloyalty seems to have found a novel and profitable solution to the opt-in vs. opt-out tradeoff — don’t give the customer any option at all!
Mary O’Reilly
Consumer Affairs
Reservation Rewards
However, RDBO achieves its perl speed by aggressive inlining of stuff etc. - for example the main object retrieval function in RDBO's manager class is >3000 lines in a single sub. DBIC values extensibility over a few extra sub calls, so methods are much more broken out and there are many more ways to hook into the DBIC execution process to extend.Also its idea of resultsets is something I really love. Here's a small example to illustrate that:
my $user_rs = $schema->resultset('User')->search( registered => 1 );
$user_rs = $user_rs->search(
comment.title => 'Foo' ,
join => 'article' => 'comment' ,
order_by => 'user.name',
,
);
# no sql executed yet. # now you can use your resultset as an iterator or query a list of User # objects from it or ..
while (my $user = $user_rs->next) ...
# or
my $count = $user_rs->count;Using these resultset makes it extremely easy to built up queries piece by piece and to work together well with, for example, a templating system. You don't need to fetch all row-objects and give them to your template. You can just pass the iterator to the template library. There's a lot more to say about this two object-relational mappers (for example RDBO supports prefetching of multiple one-to-many at once, which DBIC doesn't), but maybe you just should take a look yourself. I personally prefer DBIx::Class for its vast extensibility.
Next.