randys.org

Wasting your precious bandwidth since 1998

71 Days Until Next Sunrise, 16,500 Prophylactics to the Rescue

From the “scientist are people too” department:

One of the last shipments to a U.S. research base in Antarctica before the onset of winter darkness was a year’s supply of condoms… [that] would be made available, free of charge, to staff throughout the year to avoid the potential embarrassment of having to buy them.

I imagine it’s still going to be uncomfortable the day after.

• • •

Apple’s iPhone 3G Not So Cheap Afterall, AT&T Gets The Skins

Today saw the announcement of the new 3G iPhone from Apple. It looks very promissing and the price cut to $199 USD sounds like a really good price point to get more people to jump on the iPhone bandwagon. Afterall, this thing is twice as fast, but half the cost.

What was not mentioned in Job’s keynote was AT&T’s iPhone 3G plan pricing. And, why should they; AT&T and Apple have severed their revenue sharing deal they had with the initial iPhone release one year ago. However, don’t let the $200 discount on a new iPhone fool you. Let’s do some math…

The old iPhone plans started at $59.99/mo. If you signed a two year contract you would pay roughly $1,440 over the life of the contract. The new plans, according to the press release, start at $39.99 voice plan PLUS $30 per month for unlimited data. Now you’re looking at $1,680 over the live of the contract. That’s $240 more (per contract) than the previous iPhone plans. Still feel like you’re getting a good deal? You just spent $240 to save $200. No word on family plan pricing or if they have family plans for the iPhone.

Will I get one? Probably. :\

Update: Looks like there’s no special treatment for new iPhone users and the standard plans and rates apply. It makes it a little easier to swallow a family plan at $59.99/mo for two lines of service but I have yet to find out if the family plan is available for the iPhone 3G. Interesting thing I found looking for answers to the question What plans are available for the iPhone? I Suppose they should update this if it’s not true.

Update #2: I just spoke with a Karen George in AT&T customer service and from what she told me the iPhone plan is the same, just going up in price $10/mo (this kind of contradicts the press release though). She also confirmed that the family plans are available for the new iPhone. I asked if the new iPhone plans will still include the 200 text messages and she said yes. I also asked if the MEdia(TM) Max Unlimited data plan (which, at $35/mo includes unlimited data and texts, seems to be a better deal) would be available for the iPhone and she said yes. I’m a little skeptical about what some random customer service rep says at this point, so take it with a grain of salt. Especially when she tells me they (customer service?) are not being told ANYthing about the details of the new iPhone and/or plans.

NB: If you’re wondering about the ‘AT&T Gets the Skins’ bit of the title, I’m referring to the San Bromista Cat Ranch.

• • •

Amazon is Down

It appears that Amazon is having some issues. Their site has been down for well over an hour now. I can’t imagine how much money this kind of downtime has on a company as large as Amazon. Maybe in the millions by now.

Amazon is down

This screen shot was grabbed at approximately 12:10PM PST on 06 June 2008. About 30 minutes ago I was simply getting a “HTTP/1.1 Service Unavailable.”

Update: I did manage to get the home page at about 12:22PM PST, but after clicking a link, I get the same “We’re Sorry!” page.

Techcrunch has a post on it as well with a note from Amazon PR (if you can call it a note).

Update #2: Cnet speculates Amazon could potentially have missed out on close to $1.4M USD in the 90 or so minutes they were offline.

Based on last quarter’s revenue of $4.13 billion globally, a full-scale global outage would cost Amazon more than $31,000 per minute on average. For North America, it would be more than $16,000 per minute. (To be fair, those figures don’t include revenue from other sources such as search or contextual advertisements or Amazon Web Services.)

I feel bad for the poor schmucks who had to sweat this one out.

• • •

MPAA Accuses University Laser Printer of Piracy, Printer Goes on Toner Binge

Is it really that surprising that M.P.A.A, R.I.A.A and others use flawed methods to determine who violates Copyright laws? These are some of the same companies that want to charge you more for a song purchased over a wireless network versus from a computer. Why? Just because. Assholes.

The researchers rigged the software agents to implicate three laserjet printers, which were then accused in takedown letters by the M.P.A.A. of downloading copies of “Iron Man” and the latest Indiana Jones film.

The Inexact Science Behind DMCA Takedown Notices - Bits

• • •

How-not-to: Normalize Your Data

Disclaimer: I am not a database architect nor a certified database programmer. I might not be database guru, but I have been working with SQL Server long enough to know what works and what doesn’t.

I’m not a database programmer per say, but I’m expected to be one at work (even though I’m a code jockey). I don’t mind it most of the time, but there are times when it becomes really frustrating. Especially when you come across some schema that is poorly implemented. Normalization is a double edged sword. On one side, normalization is good for data integrity. On the other, it becomes a pain in the arse to get at your data. There are ways around the later (Views, de-normalized tables), but, a pain in the arse it still is. The one thing that really bugs me is normalization done wrong. We use Microsoft SQL server at work, but this should apply to any relational database.

Recently, at my day job, I’ve been working on a particular project which involved consuming data from a third party for use in a .NET web service. We were already consuming data from this vendor but they recently changed the schema (and data) and are deprecating the old format. The new feed is basically a complete dump of their data and schema. Not all of their data, just data we subscribe to (about 1M records total). Instead of modifying our import process to accommodate the current (old) schema (which would have been a huge effort on our part), we just created a new import process and modified the web service.

After working with this new schema for a couple weeks, I have come to the conclusion that, well, it’s crap. First and foremost, it’s not normalized properly. If you have an column in a table that looks like it should be a foreign key, then by all means, make it so. For example, say I have a table called Widgets with several columns. One of those columns is called WidgetTypeId and another called WidgetTypeDisplayName. There’s a prime candidate for another table. I don’t care if you only have two WidgetTypes, it belongs in its own table. Here’s why: When selecting records out of the table and filtering on WidgetTypeDisplayName, it gets really expensive. Sure, you could add an index on that column, but it still would be slower compared to joining on a WidgetType table. If I had ten million widgets and only 100 widget types, I’m only filtering 100 records vs. ten million.

What about filtering on the WidgetTypeId column? BZZZZZ. Where did you get that ID? Did you select it from the same table? Guess what, same difference. Maybe you hard-coded it in the query. That’s not smart either, especially if you have multiple environments that could possibly be out of sync (i.e. WidgetTypeId 4 in development might not be associated to the same thing in production). Put it in it’s own table.

I ran into this several times with this new schema at work and it was a complete pain. For one thing, in development, the queries were always relatively quick to return. In production, however, not the same. This database sat on the same server as another production database so there was more load on it. Enough to make the queries perform poorly. On the order of 10 to 40 seconds to return data in some cases. That’s not good. My solution: create a single de-normalized table (for some reason, we don’t use views) of commonly used data points. The result was millisecond returns and simple queries. Furthermore, instead of filtering/joining on tables with half a million records, it now filters on less than 20 thousand, properly indexed records.

• • •

Microsoft is in Your Airport, Causing Havoc

And you wonder why people have a fear of flying.

The failure was ultimately down to a combination of human error and a design glitch in the Windows servers brought in over the past three years to replace the radio system’s original Unix servers, according to the FAA.

Full article

• • •

Greenspun on The Old Timers

Really good article on Internet software patents and how “the old timers” already thought of most of the things we do today.

They couldn’t build our modern world for us back in the 1960s because the hardware hadn’t caught up. If you’d given them 50 million quad-core 2 GHz Pentium with 4 GB of RAM and 30 Mbps Verizon FiOS connections to every home, they would have built you all of the services of the modern Internet and probably many that would have been better.

What would happen if you gave present-day computer programmers those same powerful hardware gifts? We did that experiment. Our modern day best-and-brightest built Microsoft Windows Vista (TM).

• • •

5 Holiday/Winter Beers For Your Enjoyment

About a month ago, a friend (John) mentioned that he was on a mission to try 20 different holiday/winter brews before the New Year. I happily accepted his challenge and so began our journey. Over the past month, we have hunted near and far for the worlds finest holiday beers. So far I’ve managed to try 15 different ones and all of them have been really good beers but the following five are special beers that you should definitely try this year.

First, the runner ups:

Jubilale

Brewery: Deschutes ABV: 6.7%

I’m a huge Deschutes fan. I really like their Hop Trip fresh hop ale, Mirror Pond and Black Butte Porter. Their winter brew, Jubilale, is a decent choice as well and would have made my top 5 last year (had I actually tried more beers last year).

Santa’s Little Helper

Brewery: Port Brewing ABV: 9.5%

I was recently introduced to Port Brewing (and the lovely Pizza Port chain of pizza “joints”). Let me tell you, this company creates some excellent beers. Santa’s Little Helper is a fair example of their talents. It’s an imperial stout with a lot of kick. It has a slight taste of alcohol at the end, but it’s a tasty little bugger. If you really want a good beer (and like extra hop), try their Hop 15!

5. Winterbraun

Brewer: Lost Coast ABV: 6.5%

Lost Coast’s label are always entertaining. The beer is usually always tasty and the Winterbraun is no exception. This is a nice brown ale with an excellent malty taste that’s easy to drink.

4. Celebration Ale

Brewery: Sierra Nevada AVB: 6.8%

From my alma mater hometown of Chico, CA. Their Pale Ale is one of the beers that brought the ale back into main stream in the early 90s. Every year Sierra Nevada makes the Celebration Ale to celebrate the holidays and it’s great every year.

3. Old Jubilation

Brewery: Avery ABV: 8%

Avery produces some very tasty ales. Old Jubilation is definitely one of them. Very crisp. This is the type of beer you want to have with you while sitting next to a fireplace on a cold winter’s night.

2. Yule Smith

Brewer: Ale Smith ABV: 9.5%

The first bottle I purchased of Yule Smith happened to be the summer version so be careful when looking for this beer. The summer version has fireworks on the label while the winter (holiday) version has a nice little wreath. Not that the summer version isn’t good (it was and I’ll look for that this summer for sure), but the holiday version was especially tasty. It slightly hoppy but not overly so.

1. Delirium Noël

Brewer: Brouwerij Huyghe ABV: 10%

This is an excellent beer! It’s a Belgium style ale with an extra kick. Despite its high ABV (Alcohol by Volume), it doesn’t have the alcohol taste. It’s smooth, flavorful and full bodied. It goes down easy and a pint full will definitely put you in the holiday spirit. Careful, this is a potent beer and will sneak up on you. Especially if you buy a 22oz bottle and enjoy the whole thing in one sitting.

In all fairness, all the beers I’ve had this year were excellent examples of what todays smaller breweries have to offer. Sure some where tastier than others, but overall, I was never dissatisfied. I’ll post a full list when the competition is over.

• • •

Good Read: The Accidental Businessman - Rule #10 should really be rule #1

Unfortunately, the complexity of a feature is usually inversely proportional to its simplicity from a user’s perspective.

Dealing with this on a project at work. So true.

• • •

Leopard: Preview Sucks (Literally)

I just noticed that my MacBook Pro’s memory usage was rather high. I’m not working on anything memory intensive (Vmware, Photoshop, etc). So I opened up Activity Monitor to find this

Preview, sucking

Why the hell is Preview taking up nearly 350 MB of ram with NO windows open? I don’t remember opening any large files with it. I’ve been gone all day. I smell a leak!

• • •

All content Copyright © Randy Sesser
Entries (RSS) | Comments (RSS)