Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
User Journal

Journal Journal: My thoughts on the Oscar nominations

In each category, nominees are listed in alphabetical order, followed by my personal favorite.

Best Picture:
Avatar: The worldbuilding is amazing. One of the most important ways to separate good sci-fi/fantasy from bad is by how well fleshed-out the fictional universe is. If it's possible to role-play or write (halfway-competent) fanfics that use the setting but not the main characters, it passes the test. You can roleplay in the Wheel of Time universe without playing Rand or Egwene, but Sword of Truth fanfics without Richard and Kahlan are barely recognizable. Or look at Buffy vs. Charmed. Considering only movies that aren't based on books or TV shows, I'd put Avatar third-all-time behind Star Wars and The Matrix (fourth if you give the Kristy Swanson movie credit for the whole Buffyverse, but I don't think that's fair or even logically sound). Pandora is a world in which you can tell a wide variety of interesting stories. However, Avatar's script is NOT one of them. The premise is a flimsy excuse to get humans involved--Cameron himself stated that unobtanium (as joke names go, only mcguffinite would have been better) has nothing to do with the bio-computer-network that defines the world, it's just coincidence that there's a big deposit under the Navi village. The science team is led by someone who is somehow both a botanist and a zoologist, but none of the other members even HAVE specialties. The entire plot revolves around the idea that ex-Marine Jake is the closest thing to a real cultural anthropologist who has ever been avatarized, which is profoundly stupid. For the most part, no attempt at all is made to develop characters. In one case--Trudy's change of heart--this failure at characterization actually creates a plot hole. It's only believable that exactly one military-type would end up on the side of the scientists and natives if she has any unique perspective. The only thing that distinguishes Trudy from any other grunt is screen time--and even that is mostly post-reversal. Even her line when she changes her mind--"I didn't sign up for this!"--is patently false. It's precisely what she signed up for, she just no longer believes it's right. And her first act of treason, changing sides in mid-battle, is completely unpunished. In the case of the Navi, the absence of character development beyond stock aboriginal stereotypes is an offensive crutch propping up the bullshit Noble Savage idea that nobody in their culture could possibly benefit from technology or specialized labor, which itself is the only justification for the third-act war. Giovanni Ribisi's only two character traits are caring about results and being willing to listen to reason, but the war starts when, and because, he suddenly decides not to listen to reason precisely when Jake is actually starting to get results. The character's only reason for existing is to start the war, but his only character develolpment establishes that he would not do so under those circumstances. After Jake, Trudy, and the other scientists escape from the military, one scientist stays back as a spy. That he could do so without being caught is implausible, that he could actually break the others out of prison in the first place without being caught is impossible--are there really no security cameras? The supposed climax of the plot is a faceoff between Jake and the scar-headed leader of the military (who, if not for movie-magic, would have died half a dozen times already) because that's what the formula says should happen. But that's the second half of the mentor-and-protege-on-opposite-sides formula, which is the wrong formula. Jake and Scarhead have an arrangement that is purely business, with little direct communication and no emotional bond. The final showdown is part of that formula to bring the character arcs full-circle. It has to happen because the first half of the formula sets it up. I'm no great fan of cliche, but things become cliche because they work. If you're going to use part of a formula, either you have to use the rest of it too, or you have to have a reason to subvert it and set up the subversion properly. The film as a whole is somewhat elevated by the worldbuilding and spectacle factor, but the flaws are too big too many for it to deserve consideration for Best Picture.

The Blind Side: Every character, white or black, is an offensive stereotype. The movie displays no respect for the viewer whatsoever--everything that can be dumbed down is, any moral issue that is (intentionally) raised is discussed by the characters at length but not in any depth. There's not a single thing in this film that isn't handled with more subtlety and honesty in Remember The Titans. "More simplistic than Remember The Titans" is not a compliment. If you take everything I don't like about RtT, combine it with everything I don't like about Crash, you get this. The paternalistic, White Man's Burden portrayal of the main character is simply shocking. To be fair, it's a basically competent piece of filmmaking. A lot of the movies I have to see make me wonder how anyone involved even has a job in the industry, but this is at least a real movie. There are no plot holes and nobody ever behaves drastically out of character. It has decent acting. The camerawork isn't distractingly artsy or misframed. If it was the worst movie I had seen in the past year, I'd be pretty happy. But that's about as backhanded as praise gets.

District 9: This is not a metaphor for apartheid. Well, it is, but that's not the point. The superficial anti-apartheid message is cover for the more subtle but more central and better developed commentary on the military-industrial complex. The South African government and United Nations have outsourced the entire project of dealing with the aliens, and the whole movie is an exploration of the consequences of that decision and the ways the private sector and public sector naturally and necessarily have different motives. That has to be addressed delicately because it's very politically charged. When you talk directly about a politicized issue, you only get through to the people who already agree with you. Everyone else will feel like they're being preached at, and they'll be right. Aside from simply avoiding being off-putting, the "show, don't tell" rule lets you make a better argument by demonstrating the reasons behind your belief. By hiding the real issue under something generic that everybody agrees about, like "apartheid was bad," Blomkamp was able to make a much stronger and more openly partisan case against corporate militia than he could have otherwise. Not to mention that it's all contained in a story entertaining enough to satisfy the unwashed masses. If your primary criterion for film is how well the various elements (acting, directing, main plot, subplots, character development, cinematography, philosophical message, entertainment value) of flimmaking fit together into a coherent whole, then this isn't just the best film of the year, it's the best of the last several years.

An Education: I haven't seen it yet. We're getting it at Lennox this weekend, so I will soon.

The Hurt Locker: It's hard to describe this film in any way other than "see it." This year was a good one for fans of psychological character studies, and this might be the best of the bunch. There's a scene near the end, while Jeremy Renner is back home, that contains my favorite minute of film of the year. If you've seen it you know what scene I mean.

Inglorious Basterds: There's a lot to like about it, but it's not anywhere close to the film it could have been if Tarantino didn't surround himself with yes-men. Usually my favorite thing about QT is that he knows which characters and plot elements to focus on and which to leave as recurring, undeveloped leitmotifs, but the biggest flaw of this film is its utter failure in that department. Shosanna and Col. Landa are the most interesting, complex, developable characters in the film, but combine for maybe 40 minutes of screen time in a 150-minute movie. The titular Basterds are riotously entertaining five minutes at a time, but one-dimensional and monotonous. Most of them don't even have names or lines. They get the remaining 110 minutes. It's not just that the film is a perfect beginning, a perfect ending, and two hours of filler, it's that it didn't have to be.

Precious: If I was given a short plot outline of this movie, I'd guess that it was a superficial, unintentionally racist, shameless Oscar-baiting mess. To make it work at all, it had to have character development and penetrating honesty, both taken to all-time-great extremes. Fortunately, that's exactly what it has. It has none of the surface trappings of a horror film, but that's what it is. A teenaged girl (Precious) and children (her toddler and infant) trapped in a creepy house (literally, a filthy apartment; figuratively, the culture of self-perpetuating urban poverty) with/by monsters (her parents, more literally than you would believe), struggling to escape with the protection of an outside hero (her teacher), eventually succeeding but not without paying a harsh price (which would be a spoiler). Several scenes, particularly the mother's attempt to justify her behavior to a social worker, are much more horrifying than anything in the so-called horror genre.

A Serious Man: I enjoyed it thoroughly, but I'm not sure it's Best Picture material. If it has anything to say at all, it's not me it's saying it to. Middle-class Jews who grew up in the 60's in midwest college towns make for a pretty narrow target audience. The comedic take on the Book of Job is a clever idea, and the execution is terrific (which goes without saying for the Coen brothers), but it's a one-note song. Well worth seeing, borderline worth nominating, but one of the Coens' shallowest films.

Up: When you're a child, there's a pure, unadulterated joy associated with watching a movie. When you've seen enough movies to understand that some of them are good and some of them are bad, that joy is very difficult to recapture--you're always dissecting the bad ones and waiting for the other shoe to drop in the good ones. It's a rare film that can make a jaded cynic like me feel like I did the first time I saw Mary Poppins.

Up In The Air: I strongly disagree with the message of the film--that nobody can be truly happy living the lifestyle that George Clooney's character does. But it's still one of my favorite movies of the year. That's how good the other parts of the film are, and how well it follows "show, don't tell."

Unless one of the three I haven't seen really wows me, I think Precious deserves to win, but it's a close call over D-9 and Hurt Locker.

Best Director:
Kathryn Bigelow, The Hurt Locker: The film is a character study and an action movie and a soldier-friendship drama, which call for different directorial skills and styles. All three are done well.

James Cameron, Avatar: The nomination is justified by the technical aspects of directing alone. My problems with the movie are 90% Cameron-as-writer, 10% Cameron-as-director, and 0% Cameron-as-producer. That 10% is still big enough that I don't think he should win, but it won't be a gross miscarriage of justice when he does.

Lee Daniels, Precious: When that many unknowns (Gabourey Sidibe, Paula Patton) and no-talent hacks (Mariah Carey, Mo'Nique) turn in performances that good, it's a safe bet that the director is the reason why.

Jason Reitman, Up In The Air: If you're making a comedy-drama, the darker the comedy, the harder it is to keep it balanced--dark comedy is not a tension-relieving change of pace from drama like laugh-out-loud comedy is.

Quentin Tarantino, Inglorious Basterds: As with Cameron, my problems are more with the writing than the directing, but the distinction is much blurrier in Tarantino's case.

I like Bigelow, but if you prefer Reitman I won't say you're wrong.

Best Actor:
Jeff Bridges, Crazy Heart: This performance rivals The Dude as Bridges' career-defining role. My big thing with acting is how much the actor does beyond what's explicitly in the script, and I have some major complaints about this script. Bridges and T. Bone Burnett get just about all the credit for the whole movie.

George Clooney, Up In The Air: He faces the public perception of him as a superficial playboy (a reputation for which he has nobody to blame but himself) head-on in this role. It's certainly a good performance, but I don't think he would have been nominated if not for the connections to his own life. Contrast with Mickey Rourke in The Wrestler, whose performance would have deserved the Oscar no matter what his personal life had been like.

Colin Firth, A Single Man: I never once thought of Mr. Darcy in Pride & Prejudice while watching this, a comparable accomplishment to Bridges playing someone who doesn't remind me of Lebowski.

Morgan Freeman, Invictus: He was nominated basically for being Morgan Freeman and playing Nelson Mandela. He evokes Mandela's appearance and mannerisms impressively, but gets just as much of the blame as the writers for sanitizing and oversimplifying a deeply complex person. It's a travesty that he was nominated over Sharlto Copley in District 9, Vincent Gallo in Tetro, Sam Rockwell in Moon, Joseph Gordon-Levitt in (500) Days of Summer.

Jeremy Renner, The Hurt Locker: Most actors would have gone too over-the-top with this role. Not on purpose, but because it's a tightrope walk to get the character right. Renner never falters, but the performance isn't as memorable as the other nominees.

Colin Firth is the best here, but in ways probably too subtle for the voters to pick him over Bridges, who is almost as deserving.

Best Actress:
Sandra Bullock, Blind Side: She's one of the only worthwhile things about the film. For an actor this famous, it's an accomplishment if I'm thinking of her character as "Leanne" rather than "Sandra" by the end. But there's absolutely nothing challenging about the role, no decisions for her to make that a community-theater actor couldn't get right.

Helen Mirren, The Last Station: haven't seen it yet.

Carey Mulligan, An Education: haven't seen it yet.

Gabourey Sidibe, Precious: The most subtle, gradual performance as a dynamic character I saw from any actor or actress all year. Only Firth and Gallo are close.

Meryl Streep, Julie & Julia: The epitome of going beyond the script. Took a deliberately superficial film and gave it depth.

Of Streep and Sidibe, I'm more certain that Streep gets the credit, rather than the writer or director. Both are worthy.

Supporting Actor:
Matt Damon, Invictus: He pulls off a difficult accent, but the script neither provides anything interesting or difficult for him to do nor gives him the leeway to embellish.

Woody Harrelson, The Messenger: It's very hard to give the audience a look inside the head of an emotionally-closed off character.

Christopher Plummer, The Last Station: haven't seen it yet.

Stanley Tucci, The Lovely Bones: In a way, he's too good. It's not believable that someone that creepy isn't a suspect.

Christoph Waltz, Inglorious Basterds: He's the biggest reason nobody noticed the major problems with the film.

Waltz, hands down. Might be the first unanimous vote in Academy history.

Supporting Actress:
Penelope Cruz, Nine: Inexplicable. Everyone involved in the film sets a new career low. Her only job in it is to look good in sexy lingerie. She succeeds, but I didn't know they gave out Oscars for that. Don't be surprised if Julianne Moore "accidentally" spills red wine on Cruz's dress at the ceremony.

Vera Farmiga, Up In The Air: My favorite thing about the performance is a plot spoiler.

Maggie Gyllenhaal, Crazy Heart: Like Matt Damon, it's the script's fault she's undeserving. She has a little more to work with than he does, though.

Anna Kendrick, Up In The Air: She manages to steal scenes from George Clooney.

Mo'Nique, Precious: So good that I'm at a loss for words.

Usually the supporting categories are too close to call and the lead categories have obvious choices. Other way around this year. It's Mo'Nique's.

Movies

Journal Journal: My top 100 movies of the 00's

This list is purely subjective: it's about how much enjoyment I personally got out of each of these. It should not be construed as an argument that Zombieland is a better film in any objective sense than Capote or Waltz With Bashir or Frost/Nixon. It's not. I just had more fun watching it. All right, enough disclaiming, on with the list:

    1. Spirited Away
    2. The Incredibles
    3. Up
    4. Crouching Tiger, Hidden Dragon
    5. Serenity
    6. Hot Fuzz
    7. Shrek
    8. Batman Begins
    9. Pan's Labyrinth
  10. The Queen
  11. Ratatouille
  12. The Wrestler
  13. Monsters, Inc
  14. District 9
  15. Eternal Sunshine of the Spotless Mind
  16. Wall-E
  17. Revolutionary Road
  18. 500 Days of Summer
  19. Gone Baby Gone
  20. In the Valley of Elah
  21. Moon
  22. Precious
  23. Tetro
  24. Paranormal Activity
  25. Forgetting Sarah Marshall
  26. Stardust
  27. Fido
  28. Memento
  29. Shaun of the Dead
  30. V for Vendetta
  31. Wallace and Gromit: The Curse of the Were-Rabbit
  32. O Brother, Where Art Thou?
  33. Big Fish
  34. High Fidelity
  35. Spider-Man 2
  36. Burn After Reading
  37. Miss Pettigrew Lives for a Day
  38. Harry Potter and the Half-Blood Prince
  39. The Bourne Identity
  40. A Christmas Carol (2009)
  41. Sideways
  42. Kill Bill Vol. 2
  43. American Splendor
  44. Lost in Translation
  45. Star Trek 2009
  46. Harry Potter and the Prisoner of Azkaban
  47. X-Men
  48. Hellboy II
  49. Coraline
  50. The Illusionist
  51. Slumdog Millionaire
  52. Zombieland
  53. Rachel Getting Married
  54. Hero
  55. Capote
  56. Eastern Promises
  57. Fantastic Mr. Fox
  58. Bright Star
  59. Up In The Air
  60. Drag Me To Hell
  61. Ponyo
  62. Waltz With Bashir
  63. Gladiator
  64. A History of Violence
  65. There Will Be Blood
  66. State and Main
  67. Harry Potter and the Sorcerer's Stone
  68. Kill Bill Vol. 1
  69. Pirates of the Caribbean: The Curse of the Black Pearl
  70. Spider-Man
  71. The Boondock Saints
  72. Almost Famous
  73. The Hurt Locker
  74. Bolt
  75. Pineapple Express
  76. Casino Royale
  77. The Dark Knight
  78. Unbreakable
  79. Remember the Titans
  80. Holes
  81. Chicken Run
  82. Shadow of the Vampire
  83. Sin City
  84. Minority Report
  85. Watchmen
  86. The Simpsons Movie
  87. Adventureland
  88. Iron Man
  89. Frost/Nixon
  90. Taken
  91. Milk
  92. Tropic Thunder
  93. The Aristocrats
  94. Sherlock Holmes
  95. The Bourne Ultimatum
  96. Doubt
  97. Superbad
  98. The Lord of the Rings: The Return of the King
  99. The Triplets of Belleville
100. No Country for Old Men

The following movies didn't quite make the list. I liked them enough to mention them, but can't justify taking anything out of the top 100 to put them in:
Amazing Grace
Bend It Like Beckham
Brick
Brokeback Mountain
Chicago
The Cove
The Departed
Fantasia 2000
Finding Nemo
Good Night, and Good Luck.
Kung Fu Panda
Lucky Number Slevin
Munich
Ocean's Eleven
Over the Hedge
Ray
Ready to Rumble
Snatch
The Tale of Despereaux
Titan A.E.
Where the Wild Things Are
Wonder Boys
Zoolander

User Journal

Journal Journal: Widenius on "selfless" quest to destroy GPL MySQL "in order to save it" 3

It's not "his baby" any more!

And the "selfless" argument accepts as a given that Oracle will let MySQL die on the vine. There are many rational reasons why they would not.

If Oracle's intentions are opaque, Widenius' motives are no less opaque. He risks serious embarrassment himself by advocating that the EU, as Deus ex machina, strip the GPL, the last layer of protection for the MySQL community and platform. To that extent this issue is *very much* "about Open Source"!

It's time to let go and build "what comes after MySQL". Even a casual observer can see conventional RDBMS architectures straining to keep up with today's data environments, hence the growth of the NoSQL movement. If a fraction of the talent already shed by MySQL AB, combined with the brains at Primebase, and all the other community contributors can rise to that challenge, Oracle may easily find itself on the defensive once more - to the market's gain!

Mr Widenius, you've created one technology so incredibly disruptive that Oracle (the market leader) finally had to buy it - why not move on and create the next one? You already have the support and respect of geeks and suits alike. But you won't keep it by insisting on this contrarian, easily misconstrued campaign.

User Journal

Journal Journal: On raising your children and jumping to conclusions.

Posted a comment on the story about the new "Internet Luring Law" thing that is happening in Canada at the moment.

The gist of my comment was "I guess the law was formulated with good intentions, but the responsibility for the child ultimately lies with the parent"

Holy heck was I overwhelmed with negative responses!

Seems that people tend to read a comment to where they can find a place to disrespectfully disagree and then hammer the poster with whatever they can get.

News to you all. It makes you look dumb.

User Journal

Journal Journal: Staring a limited lifespan in the face... skewed stats FTW.

I commented on the H1N1 poll about when I found out that I was diagnosed with Marfan Syndrome.

Reading online documentation about the disorder and talking to various doctors I got the news that Marfan sufferers on average have a life expectancy of about 42 years. Heck I had hoped for at least double that! I was about 29/30 at the time and the prospect of having already lived more than two-thirds of my expected lifespan was worrying to say the least.

My GP was kind enough to have a look and explained to me that the statistics was generally skewed because people who died young with my condition generally had other issues like Cancer, Smokers, Diabetics or generally unhealthy people.

I was, on the other hand, perfectly healthy considering my condition, so 84 and upwards is by no means out of the question...

What this episode DID do for me was that I had a real taste of what it feels like to deal with limited time. Sure, 12 years sounds like a lot at first, but there is some mental trigger that causes one to suddenly become very agitated. 12 years!??! What!? I have so much I want to do!!! Heck paying off my car will take up a third of that!

Yep, panic a nasty thing...

Well, it is a few years later now. In February I am turning 32, and I realised that after I was assured of a normal (ish) life expectancy I have again become complacent.

I decided that this December I will take the opportunity of our company closing down for the holidays to spend some quality time with me. A happy me is probably one of the better gifts I can give my wife and kids, sort out my plans for the immediate future, connect to what I really find important - maybe paint a little!

Heck this sounds like a good plan...

Space

Journal Journal: I AM BACK 7

I'm sorry to have been away for so long, but I have returned! Now that unpleasantness is over I can read over all my emails, and such. Hmmm. Nothing here? WHAT?

Nobody missed me, nobody cared. It was like a million voices continued on while I was away from Slashdot. I suppose being on a spec in the middle of a sandy beach of specs in the floating massiveness of universialitude, I could not be missed had I evaporated and rained all over the prairies. Alas, some things on Slashdot have changed.

What is all this Javascript? Looks good! Things appear to be much more interesting! Hey I've got achievements!!! LOL

Databases

Journal Journal: SQL: random member of each of many groups

Question asked on comp.databases.mysql, which I solved as follows:

mysql> select T.n, T.rnd, L.id, L.street, L.town, count(R.id) as idx
from (
select count(*) as n, rand() as rnd, town
from addr
group by town
) T
join addr L on L.town = T.town
join addr R on R.town = L.town and R.id <= L.id
group by L.id
having ceil(T.n*T.rnd) = idx;
+----+---------------------+-----+---------------------------------
+-------------+-----+
| n | rnd | id | street |
town | idx |
+----+---------------------+-----+---------------------------------
+-------------+-----+
| 12 | 0.00842807908396058 | 1 | 601 West 5th Avenue |
Anchorage | 1 |
| 10 | 0.650273804227145 | 37 | 9190 Parkway East |
Birmingham | 7 |
| 11 | 0.226084814617489 | 55 | 3494 BEL AIR MALL |
Mobile | 3 |
| 16 | 0.179602691139656 | 117 | 4940 S Gilbert Rd |
Chandler | 3 |
| 10 | 0.219759042579456 | 154 | 7123 N. 138th Ave. |
Glendale | 3 |
| 18 | 0.559987170211959 | 187 | 2832 North Power Road |
Mesa | 11 |
| 63 | 0.14065875405507 | 213 | 340 East McDowell Rd |
Phoenix | 9 |
| 26 | 0.0233322903731207 | 275 | 15660 N Frank Lloyd Wright Blvd |
Scottsdale | 1 |
| 16 | 0.694685220434037 | 325 | 5000 Arizona Mills Circle |
Tempe | 12 |
| 35 | 0.403429261784469 | 345 | 3901 W Ina Rd |
Tucson | 15 |
| 19 | 0.933090678353878 | 454 | 2200 Panama Lane |
Bakersfield | 18 |
| 15 | 0.45516563714963 | 513 | 4000 Warner Blvd |
Burbank | 7 |
+----+---------------------+-----+---------------------------------
+-------------+-----+
12 rows in set (0.16 sec)

Databases

Journal Journal: Uses for self JOIN: 11) winning streak

Cluber on #mysql wanted to find the longest winning streak in a series of matches, like this:

mysql> select * from m;
+----+--------+-------+
| id | winner | loser |
+----+--------+-------+
| 29 | A | B |
| 30 | A | C |
| 31 | C | B |
| 32 | B | A |
| 33 | A | D |
| 34 | B | C |
| 35 | C | D |
| 36 | E | D |
+----+--------+-------+
8 rows in set (0.00 sec)

Longest winning streak per user is the longest series of wins by a user before they lose a match. The wins need not be consecutive. Here is a SQL solution:

mysql> select Streak.winner, max(Streak.cnt)
from (
select m0.id, m0.winner, count(Game.id) as cnt
from m m0
join (
select m1.id, min(m2.id) as minid
from m m1
left join m m2 on m2.loser = m1.winner
and m2.id > m1.id
group by m1.id
) Loss on Loss.id = m0.id
join m Game on Game.winner = m0.winner
and Game.id >= m0.id
and (Loss.minid is null
or Game.id < Loss.minid)
group by m0.id
) Streak
group by Streak.winner;

+--------+-----------------+
| winner | max(Streak.cnt) |
+--------+-----------------+
| A | 2 |
| B | 2 |
| C | 1 |
| E | 1 |
+--------+-----------------+
4 rows in set (0.01 sec)

Networking

Journal Journal: Chronicles of GoDaddy: How not to run an ISP 16

This is a review of the GoDaddy.com ISP. For a brief period of time, I used them for both my SSL certificate provider and my hosting provider. That lasted about a week. This review chronicles my experience with GoDaddy so that others can avoid the same fate.

It's hard to know where to begin when criticizing my experience with GoDaddy. It all started with a GoDaddy SSL certificate that was expiring in mid-August. Things started going wrong when GoDaddy sent me the expiration notice in mid-June. I immediately went to their website to renew. When I got there, I got a message that said I couldn't renew it for three days. I wrote them to complain and their reply basically said, "Yes, you can't renew before a certain date." Three days later, on the day it said I should be able to renew it, it still said I couldn't renew it.

A couple of weeks later, I went back to renew. I submitted a renewal for 9 years and paid for it (almost $270). I thought it was odd that they still hadn't sent out the cert, but I figured it would happen on the billing date for the account.

In the meantime, I decided to try to speed up my website by moving large graphics to shared hosting. Since I had a GoDaddy account already, I added hosting to it. Thankfully, I only paid for two months. While uploading content to the server, I started having weird problems almost immediately, finding that the server would just suddenly block my IP (including pings) for several minutes at a time. I theorized that they were limiting the number of reconnects per minute, so I spread the load out across several IPs and finished my uploading. I did all this over the holiday weekend to minimize impact.

Well, once I had the content on the server, I switched my home server to point to the images on that server. The next night, I tried to view a page full of thumbnail images and it stalled for a very long time. The problem went away after a couple of minutes, so I ignored it. When it happened again the next night, I started becoming concerned. When it happened on the fourth night, I started running a script that requested a tiny 15K image once a minute so that I could characterize the problem.

I contacted GoDaddy at this point, and they blamed my connection. I then reproduced the problem from work (where they have multiple OC-3 connections). I contacted them again. They continued to just say "We can't reproduce this" and actually had the nerve to suggest that I call them when I have the problem. How do you call somebody about a problem that only lasts 2-3 minutes from the start of the hang to the end? That's like telling somebody, "When you see a shooting star, text me so I can look up." Yikes!

Then, it got better. GoDaddy contacted me and said that they couldn't issue my SSL certificate because they now issue them for a maximum of 5 years---this in spite of the fact that their website was perfectly willing to sell me a 9-year certificate. So they started the process of issuing a refund.

A few hours later, they denied the refund. At this point, I wrote them back, chewed them out massively, listing in detail the litany of problems I had experienced with their service, carbon copied the president of GoDaddy, and basically threatened legal action if they didn't fix this mess. They restarted processing of the refund, but continued to refuse to honor the terms of our contract.

Their servers are still performing inadequately, so I plan to drop their service entirely as soon as I figure out where to migrate the files. And my SSL cert no longer comes from GoDaddy. I didn't even wait for my existing cert to expire; I don't want GoDaddy to get the free advertising. It also helps that my new SSL cert provider is free as in beer. I figure it's worth the hassle of renewing the cert annually to save $30 a year.

The bottom line is that I was going to spend about $114/year in hosting and SSL with GoDaddy, but because of their completely inept customer support, I'm now going to spend exactly $0 with them, and I will be spending a fair amount of time over the next few weeks posting detailed, harsh, negative reviews of their hosting service on every site I can find, from FaceBook to Web Hosting Geeks....

If I did my job as well as their customer service reps did their jobs, I would have lost my job after the first day. How, precisely, do these clowns stay in business? And how have they not had their credit card merchant account revoked?

David

P.S. Does anyone know of a web hosting provider that allows SSH, is reasonably reliable, and doesn't claim the rights to produce derivative works based on anything you upload?

User Journal

Journal Journal: generate Solaris package file lists directly with install-sh

As part of the Solaris pkg creation process, a prototype file is created listing every file and directory created in the process of installing the package.

There are various ways to extract this information, but not all are convenient. By patching about 12 lines of install-sh we can generate the prototype file directly (as /tmp/prototype), with appropriate user/group/mode settings. In parallel we generate a simple file list (/tmp/files) that can be used to safely 'uninstall' the package during experimentation with packaging.

-bash-3.00# diff -c dovecot-1.1.14/install-sh TLGRdovecot-1.1.14/install-sh
*** dovecot-1.1.14/install-sh Mon Jan 5 16:24:36 2009
--- TLGRdovecot-1.1.14/install-sh Sat May 23 19:51:18 2009
***************
*** 128,133 ****
--- 128,136 ----
RMPROG STRIPPROG
"

+ CLASS=none
+ OWNER=bin
+ GROUP=bin
while test $# -ne 0; do
case $1 in
-c) ;;
***************
*** 136,142 ****

-d) dir_arg=true;;

! -g) chgrpcmd="$chgrpprog $2"
shift;;

--help) echo "$usage"; exit $?;;
--- 139,145 ----

-d) dir_arg=true;;

! -g) GROUP=$2; chgrpcmd="$chgrpprog $2"
shift;;

--help) echo "$usage"; exit $?;;
***************
*** 150,156 ****
esac
shift;;

! -o) chowncmd="$chownprog $2"
shift;;

-s) stripcmd=$stripprog;;
--- 153,159 ----
esac
shift;;

! -o) OWNER=$2; chowncmd="$chownprog $2"
shift;;

-s) stripcmd=$stripprog;;
***************
*** 327,335 ****
--- 330,341 ----
# Otherwise, rely on $mkdir_umask.
if test -n "$dir_arg"; then
mkdir_mode=-m$mode
+ echo d $CLASS $dstdir $mode $OWNER $GROUP >>/tmp/prototype
else
+ echo d $CLASS $dstdir 755 $OWNER $GROUP >>/tmp/prototype
mkdir_mode=
fi
+ echo $dstdir >>/tmp/files

posix_mkdir=false
case $umask in
***************
*** 405,410 ****
--- 411,417 ----
do
test -z "$d" && continue

+
prefix=$prefix$d
if test -d "$prefix"; then
prefixes=
***************
*** 442,447 ****
--- 449,457 ----
test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
else

+ echo f $CLASS $dst $mode $OWNER $GROUP >>/tmp/prototype
+ echo $dst >>/tmp/files
+
# Make a couple of temp file names in the proper directory.
dsttmp=$dstdir/_inst.$$_
rmtmp=$dstdir/_rm.$$_

(Actual diff here)

As an example, let's package Dovecot 1.1.14 in a manner suitable for a Solaris non-global zone:

$ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
...
# make install
...
# cat /tmp/prototype
d none /usr/libexec/dovecot 0755 bin bin
f none /usr/libexec/dovecot/dovecot-auth 0755 bin bin
f none /usr/libexec/dovecot/checkpassword-reply 0755 bin bin
d none /usr/lib/dovecot/auth 0755 bin bin
f none /usr/libexec/dovecot/dict 0755 bin bin
f none /usr/libexec/dovecot/ssl-build-param 0755 bin bin
f none /usr/sbin/dovecot 0755 bin bin
f none /usr/libexec/dovecot/imap-login 0755 bin bin
f none /usr/libexec/dovecot/imap 0755 bin bin
f none /usr/libexec/dovecot/pop3-login 0755 bin bin
f none /usr/libexec/dovecot/pop3 0755 bin bin
f none /usr/libexec/dovecot/deliver 0755 bin bin
f none /usr/libexec/dovecot/rawlog 0755 bin bin
f none /usr/libexec/dovecot/gdbhelper 0755 bin bin
f none /usr/libexec/dovecot/idxview 0755 bin bin
f none /usr/libexec/dovecot/listview 0755 bin bin
f none /usr/libexec/dovecot/logview 0755 bin bin
f none /usr/libexec/dovecot/maildirlock 0755 bin bin
f none /usr/sbin/dovecotpw 0755 bin bin
d none /usr/lib/dovecot/imap 0755 bin bin
d none /usr/lib/dovecot/lda 0755 bin bin
f none /usr/lib/dovecot/lib01_acl_plugin.so 0755 bin bin
f none /usr/lib/dovecot/lib01_acl_plugin.la 0755 bin bin
f none /usr/lib/dovecot/lib01_acl_plugin.a 0755 bin bin
d none /usr/lib/dovecot/pop3 0755 bin bin
f none /usr/libexec/dovecot/convert-tool 0755 bin bin
f none /usr/lib/dovecot/lib20_convert_plugin.so 0755 bin bin
f none /usr/lib/dovecot/lib20_convert_plugin.la 0755 bin bin
f none /usr/lib/dovecot/lib20_convert_plugin.a 0755 bin bin
f none /usr/libexec/dovecot/expire-tool 0755 bin bin
f none /usr/lib/dovecot/lib20_expire_plugin.so 0755 bin bin
f none /usr/lib/dovecot/lib20_expire_plugin.la 0755 bin bin
f none /usr/lib/dovecot/lib20_expire_plugin.a 0755 bin bin
f none /usr/lib/dovecot/lib20_fts_plugin.so 0755 bin bin
f none /usr/lib/dovecot/lib20_fts_plugin.la 0755 bin bin
f none /usr/lib/dovecot/lib20_fts_plugin.a 0755 bin bin
f none /usr/lib/dovecot/lib21_fts_squat_plugin.so 0755 bin bin
f none /usr/lib/dovecot/lib21_fts_squat_plugin.la 0755 bin bin
f none /usr/lib/dovecot/lib21_fts_squat_plugin.a 0755 bin bin
f none /usr/lib/dovecot/lib02_lazy_expunge_plugin.so 0755 bin bin
f none /usr/lib/dovecot/lib02_lazy_expunge_plugin.la 0755 bin bin
f none /usr/lib/dovecot/lib02_lazy_expunge_plugin.a 0755 bin bin
f none /usr/lib/dovecot/lib20_mail_log_plugin.so 0755 bin bin
f none /usr/lib/dovecot/lib20_mail_log_plugin.la 0755 bin bin
f none /usr/lib/dovecot/lib20_mail_log_plugin.a 0755 bin bin
f none /usr/lib/dovecot/lib20_mbox_snarf_plugin.so 0755 bin bin
f none /usr/lib/dovecot/lib20_mbox_snarf_plugin.la 0755 bin bin
f none /usr/lib/dovecot/lib20_mbox_snarf_plugin.a 0755 bin bin
f none /usr/lib/dovecot/lib10_quota_plugin.so 0755 bin bin
f none /usr/lib/dovecot/lib10_quota_plugin.la 0755 bin bin
f none /usr/lib/dovecot/lib10_quota_plugin.a 0755 bin bin
f none /usr/lib/dovecot/imap/lib11_imap_quota_plugin.so 0755 bin bin
f none /usr/lib/dovecot/imap/lib11_imap_quota_plugin.la 0755 bin bin
f none /usr/lib/dovecot/imap/lib11_imap_quota_plugin.a 0755 bin bin
f none /usr/lib/dovecot/lib11_trash_plugin.so 0755 bin bin
f none /usr/lib/dovecot/lib11_trash_plugin.la 0755 bin bin
f none /usr/lib/dovecot/lib11_trash_plugin.a 0755 bin bin
f none /usr/lib/dovecot/lib20_zlib_plugin.so 0755 bin bin
f none /usr/lib/dovecot/lib20_zlib_plugin.la 0755 bin bin
f none /usr/lib/dovecot/lib20_zlib_plugin.a 0755 bin bin
d none /usr/share/doc/dovecot/wiki 0755 bin bin
f none /usr/share/doc/dovecot/wiki/ACL.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/AixPluginsSupport.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/AuthDatabase.CheckPassword.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/AuthDatabase.LDAP.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/AuthDatabase.Passwd.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/AuthDatabase.PasswdFile.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/AuthDatabase.SQL.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/AuthDatabase.VPopMail.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/AuthDatabase.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Authentication.Caching.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Authentication.Kerberos.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Authentication.MasterUsers.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Authentication.Mechanisms.DigestMD5.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Authentication.Mechanisms.NTLM.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Authentication.Mechanisms.Winbind.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Authentication.Mechanisms.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Authentication.MultipleDatabases.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Authentication.PasswordSchemes.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Authentication.RestrictAccess.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Authentication.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/BasicConfiguration.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Chrooting.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Clients.NegativeUIDs.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Clients.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/CommandLine.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/CompilingSource.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Debugging.Authentication.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Debugging.ProcessTracing.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Debugging.Rawlog.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Debugging.Thunderbird.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Design.AuthProcess.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Design.Indexes.Cache.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Design.Indexes.MailIndexApi.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Design.Indexes.MainIndex.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Design.Indexes.TransactionLog.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Design.Indexes.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Design.MailProcess.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Design.Processes.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Design.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/FindMailLocation.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/FinishBasicConfiguration.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/HowTo.EximAndDovecotSASL.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/HowTo.PopBSMTPAndDovecot.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/HowTo.PopRelay.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/HowTo.PostfixAndDovecotSASL.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/HowTo.Rootless.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/HowTo.SimpleVirtualInstall.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/HowTo.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/IndexFiles.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/InetdInstall.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Iptables.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/LDA.Exim.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/LDA.Indexing.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/LDA.Postfix.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/LDA.Qmail.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/LDA.Sendmail.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/LDA.Sieve.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/LDA.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Logging.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/LoginProcess.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/MDA.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/MTA.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/MailLocation.LocalDisk.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/MailLocation.Maildir.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/MailLocation.Mbox.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/MailLocation.SharedDisk.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/MailLocation.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/MailboxFormat.Cydir.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/MailboxFormat.MH.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/MailboxFormat.Maildir.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/MailboxFormat.dbox.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/MailboxFormat.mailstore.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/MailboxFormat.mbox.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/MailboxFormat.mbx.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/MailboxFormat.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/ManageSieve.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/MboxLocking.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/MboxProblems.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Migration.BincIMAP.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Migration.Courier.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Migration.Cyrus.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Migration.Linuxconf.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Migration.MailFormat.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Migration.Teapop.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Migration.UW.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Migration.Vm-pop3d.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Migration.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/MissingMailboxes.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/NFS.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Namespaces.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/OSCompatibility.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/POP3Server.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/PasswordDatabase.BSDAuth.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/PasswordDatabase.ExtraFields.AllowNets.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/PasswordDatabase.ExtraFields.Host.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/PasswordDatabase.ExtraFields.NoDelay.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/PasswordDatabase.ExtraFields.NoLogin.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/PasswordDatabase.ExtraFields.Proxy.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/PasswordDatabase.ExtraFields.User.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/PasswordDatabase.ExtraFields.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/PasswordDatabase.PAM.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/PasswordDatabase.Shadow.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/PasswordDatabase.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/PerformanceTuning.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Plugins.Autocreate.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Plugins.Convert.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Plugins.Expire.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Plugins.FTS.Lucene.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Plugins.FTS.Solr.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Plugins.FTS.Squat.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Plugins.FTS.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Plugins.Lazyexpunge.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Plugins.Listescape.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Plugins.MailLog.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Plugins.MboxSnarf.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Plugins.Trash.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Plugins.Virtual.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Plugins.Zlib.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Plugins.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/PostLoginScripting.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/QuickConfiguration.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Quota.1.1.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Quota.Dict.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Quota.Dirsize.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Quota.FS.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Quota.Maildir.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Quota.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/RunningDovecot.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/SSL.CertificateClientImporting.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/SSL.CertificateCreation.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/SSL.DovecotConfiguration.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/SSL.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Sasl.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/SecurityTuning.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/SharedMailboxes.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/SystemUsers.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/TestInstallation.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/TestPop3Installation.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/TimeMovedBackwards.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Upgrading.1.0.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Upgrading.1.1.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Upgrading.1.2.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Upgrading.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/UserDatabase.ExtraFields.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/UserDatabase.NSS.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/UserDatabase.Prefetch.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/UserDatabase.Static.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/UserDatabase.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/UserIds.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/Variables.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/VirtualUsers.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/WhyDoesItNotWork.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/maildrop.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/mutt.txt 644 bin bin
f none /usr/share/doc/dovecot/wiki/uw2dovecot.sh.txt 644 bin bin
f none /etc/dovecot-db-example.conf 644 bin bin
f none /etc/dovecot-ldap-example.conf 644 bin bin
f none /etc/dovecot-sql-example.conf 644 bin bin
f none /usr/share/doc/dovecot/auth-protocol.txt 644 bin bin
f none /usr/share/doc/dovecot/documentation.txt 644 bin bin
f none /usr/share/doc/dovecot/securecoding.txt 644 bin bin
f none /etc/dovecot-example.conf 644 bin bin
d none /usr/include/dovecot 0755 bin bin

This leaves the package installed, creates /tmp/prototype ready for packaging - accomplished roughly like this:

$ echo i pkginfo=./pkginfo >>prototype
$ cat pkginfo
PKG=TLGRdovecot
NAME=Dovecot IMAP/POP3 server
ARCH=i386
VERSION=1.1.14
CATEGORY=application
VENDOR=http://www.dovecot.org/
BASEDIR=
CLASSES=none
DESC=Dovecot Secure IMAP/POP3 server, by Timo Sirainen
EMAIL=support@telegraphics.com.au
$ pkgmk -r `pwd`
$ cd /var/spool/pkg/
$ pkgtrans -s `pwd` /tmp/TLGRdovecot-1.1.14

Remove the installed files (I suggest reviewing the file list first!)

# rm -fr $(< /tmp/files )
or
# xargs rm -fr < /tmp/files

User Journal

Journal Journal: Retired Gates "too busy, important" to finish deposition

Watch Gates lie through his teeth in Novell vs Microsoft - until the Microsoft side cut the deposition short. Another appointment? Or did they not like the line of questioning? Groklaw reports; you decide. But as the Novell lawyer remarks,

I ... can't remember a single case where I was able to extract a monetary settlement from an opponent by harassing its Board Chairman through a deposition. Perhaps there is something deeper at work here.

Mr. Gates is one of the richest and most powerful persons in this country. His foundation is engaged in good works. Yet we are all equal under the law. Despite his central role in this action, we have requested nothing more than would be expected of any other litigant, a deposition not exceeding 7 hours in length in accordance with Fed. R. Civ. P. 30(b)(1).

(emphasis mine).

This cartoon sums up the true situation very well.

User Journal

Journal Journal: The End. 17

My marriage is done. We are done.

I have nothing to say, except for that one fact. It seems right to mark this date here.

Saturday May 23 2009.

User Journal

Journal Journal: say whut? 1

Cloud computing is emerging as the computational and storage paradigm for ultra-scale data and analytics. A cloud is a pool of virtualized, commodity computer resources accessible via a Web-based interface in conjunction with a highly automated mechanism for managing those resources. Upon this infrastructure, a computational framework brings analytics to the data, effectively implementing a key tenant of cloud computing - ingest data once, move data rarely, and re-use data often. Thus cloud enables the rapid configuration and allocation of vast computational resources while supporting massively parallel processing over petabytes of distributed data to deliver both agility and power at scale. Google, the progenitor of cloud, and others have proven the extraordinary capability of cloud for specific applications within certain well defined domains (e.g. web search/index). Within the Intelligence Community (IC), substantial cloud computing initiatives already underway are poised to do similarly, tailoring cloud for specific objectives. Considered more broadly however, as an enterprise wide platform for the IC, several aspects of cloud are in need of further research and development. Principal among these is the cloud analytic tool set. Analysts working high op-tempo missions down range tell us the most rapid time scale is not of the data or the mission, rather it is the frequency with which they must change the way they view and manipulate the data. For these warfighters, sophisticated tools built nationally are obsolete the day they get deployed. What they clamor for are basic, elemental tools that they can apply in diverse contexts and compose into workflows that help them do their job easier and faster. This SBIR seeks to develop an analytic tool set designed to operate within cloud computing infrastructure, on cloud data. In addition to being cloud-native, the set of tools should reflect a basis-set of functions that together span the range of analytic activity. Each tool should capture / enable a basic element of analytic activity while presenting minimal dependencies on other elements or on application specifics. By developing a complete set of cloud-native tools that may be used independently or composed into workflows to build analytic product, this SBIR aims to provide the warfighter with the means to harness the full power of cloud in the face of rapid change.

Let's play buzzword bingo...

21 the
16 of
14 cloud
10 and
9 to
9 data
8 a
6 for
5 is
5 set
5 they
5 analytic
4 tools
4 computing
4 that
4 are
4 in
3 on
3 computational
3 resources
3 or
3 with
3 rapid
3 tool
3 scale
2 this
2 SBIR
2 range
2 workflows
2 these
2 native
2 analytics
2 basic
2 an
2 do
2 infrastructure
2 activity
2 into
2 specific
2 change
2 while
2 IC
2 within
2 should
2 as
2 power
1 full
1 elemental
1 sophisticated
1 way
1 paradigm
1 enables
1 both
1 Upon
1 Intelligence
1 framework
1 independently
1 based
1 over
1 nationally
1 index
1 emerging
1 massively
1 functions
1 pool
1 Principal
1 developing
1 effectively
1 key
1 complete
1 parallel
1 compose
1 once
1 re
1 aims
1 further
1 enterprise
1 at
1 rather
1 application
1 tell
1 managing
1 development
1 deliver
1 agility
1 applications
1 may
1 computer
1 highly
1 move
1 addition
1 working
1 allocation
1 need
1 not
1 ultra
1 mission
1 Within
1 warfighter
1 interface

User Journal

Journal Journal: The "new" and "de-improved" Slashdot 4

If you've known /. for a while, you've certainly noticed all the recent changes. The front page articles auto-load-extend (presumably through AJAX code), the link to get to your own page has moved twice, and now there are two (that both look alike - your username - but work differently), and checking if anyone has replied to your comments has been a two-click journey instead of the old one-click for a while now.

Then there's the annoying inline popup (so it's not caught by popup blockers) that tells you that "Firehose is paused due to inactivity". Whatever that means, it doesn't seem nearly important enough to interrupt my reading.

Quite frankly, from a user interface design standpoint, the "new" slashdot sucks. Badly. Maybe I'll try disabling all javascript for slashdot.org and check if that improves the experience.

Slashdot Top Deals

BLISS is ignorance.

Working...