Thursday, May 22, 2008

Netflix Player by Roku

I was really thrilled to hear today that people buying Roku's new set-top box for the Netflix Watch Instantly service is backordered by 10 days. Well, not so thrilled since I just ordered mine, but happy that the device is so popular.

Friday, May 16, 2008

Bacterially Generated Buckytubes

I'm a fan of the concept of a space elevator. I'd love to be able to see this technology envisioned by Arthur Clarke in the 70's become reality some time before I die. One of the biggest obstacles to the creation of the a space elevator is a breakthrough in the material science necessary to build a tether.

There are some promising bits of work being done on carbon fiber and buckytubes, but the last I heard, there were scaling problems. Sure, we can generate a fiber a few millimeters long that's strong enough, but getting from there to 100,000km is still a really big leap.

What if someone genetically engineered a bacteria that had some chlorophyll in it and had a predilection for growing a buckytube tail? Now you stick a vat in the sunlight and start pulling the thread... Voila! space elevator tether!

Monday, May 05, 2008

Did I mention that I was hiring?

I'm currently looking for three different people to fill three different jobs here at Netflix?. The first is a QA engineer for our Instant Viewing on the PC client. The second is a QA Engineer for the Netflix API team. The third is a QA Engineer for the Customer Account team.

While each of those job descriptions has a list of technical requirements, I need someone (three someones) who can understand the why of testing just as much as they understand the how of testing. A particular tool in your toolbox isn't as important as knowing how to select the right tool for the job (or even learn a new one). Likewise, having demonstrated prior experience in knowing where to apply your tools for the greatest effect is more important than any particular bit of prior experience with a particular technology.

I've been toying with a mission statement for my group:

Economically review changes in order to prevent, detect and mitigate impaired customer experiences.

If this somehow speaks to you, I'd love to hear from you what you think it means. I might want you to apply yourself to that mission.

Sunday, May 04, 2008

Software Plasticity and Risk: The Search

After writing yesterday's post, I decided that it might be a good idea to take a look and see if anyone else was using plasticity in the sense that I was trying to use it, or if there was an already established notion of plasticity that I'd be swimming upstream against.

Again, my notion of plasticity is: how changeable is the system in question balanced against the cumulative risk to the business of the change itself and the risk to the business of actually making the changes.

I found a couple links via Google. The first was from a paper submitted to a 2004 conference in Hamburg, Germany. It discussed the concept of a new widget type, "the comet", that would adapt its function based on the execution context. Not exactly what I was after. The second was a link to the same paper from a different source. Then, surprisingly, the third entry was my blog post from yesterday.

In the fourth position, was a blog page that was just a click through to the real article which was actually discussing the use of aspect oriented programming (AOP) and the concept of software plasticity. In reviewing it, this appeared to be more of a discussion of how to apply AOP as a debugging tool, rather than how to build and maintain a system in the context of keeping a business running and satisfying customers.

After that it seemed to get a little random, except for a link to a PDF on UI plasticity. The article referenced by the top link continued to show up an awful lot from a bunch of different sources as well. I took a look at Yahoo search and Dogpile. Came up with the same set of stuff.

From this survey, it seems like there hasn't really been a lot of thinking published on the web about the development effects of the plastic nature of software, and especially when evaluating plasticity within the context of business risk.

I guess I'll keep flogging it and see if anything useful comes of it.

Friday, May 02, 2008

Software Plasticity and Risk

I've been toying with the concept of plasticity with respect to software. I've also been thinking about the software development process and how plasticity relates to the risks introduced by making changes to software.

Think about using a scale from 1 to 10 to describe how plastic a software product is. A one (the least plastic software product) would be a consumer electronics device where the software is embedded and it's impossible to update the software. Examples would include a portable DVD player or a digital clock radio. A ten would be something like a website (perhaps like the Netflix website or Instant Viewing PC client -- and I happen to be hiring one or two QA Engineers), where if there are defects discovered, they can be fixed quickly by pushing new code to the servers, and instantly, all users get the new code.

Then, think about the risks you run by making changes. My canonical examples to contrast the risk of changes usually go something like this:

1. We're updating the encryption key that we use to encrypt the credit cards for our members. We test this very thoroughly. The risks to the business are very large if there's a screwup and the benefits of avoiding screwups are equally large. Therefore, it makes a lot of sense to invest a lot in testing.

2. We're modifying how we format the pages for different genres of movies so that boxshots are right aligned instead of left aligned. Not a lot of risk for damaging the business there. We may not even do any formal QA and leave it up to the UI engineers to make sure they get that one right.

I haven't worked out the details yet for measuring risk vs. plasticity, but I imagine some kind of matrix with plasticity across the top and different software components down the side. The intersection of each row and column would have some metric that boils down the cost to fix, the cost to deploy, the risk of change and the risk to the business. Then, during the course of normal development, or in the case of an emergency, evaluate the proposed change on those four dimensions to come up the metric for that change and compare to the matrix for where the change lies. If there's a net positive risk/reward, do the change immediately in the case of a fix to production. Likewise, if it's part of the normal development cycle, then if there's a positive risk/reward, allocate the QA resources to fully test. If there's not adequate reward for testing, or the risk to the business is low enough, dedicate the limited QA resources elsewhere in that push cycle.

Comments?

Thursday, December 20, 2007

OLPC Laptops Delivered Today

I ordered two of the OLPC via the Give One Get One program. They just got delivered today.

I think that perhaps I'm more excited about them than the girls will be when I give them to them for Christmas.

I'm going to unpack and boot them up after the girls go to bed tonight to... um... make sure they work! Yeah, that's it!

More news as I have it.

----

So now, it's tomorrow morning, and I took a look at the laptops last night. They're pretty cool. They work as expected. They're not quite as peppy as I'd have hoped, but they're certainly not sluggish.

I still have to figure out how to get the wi-fi to connect to our secured WAP. I guess the answer might be in the support forum. Duh.

Well the boxes are wrapped, so I guess I'll play with wi-fi after Christmas Day.

I didn't play too much with the apps. I recorded a short video of myself. I played with the 'measure the distance between two laptops' widget. That last one made a sound that was really annoying to my wife. Might have to restrict usage of that app to outside or downstairs.

The video was kind of grainy, but sort of cool to see.

It will be interesting to see how intuitive the interface is for a relatively computer-naive child.

I guess I'll post those impressions after Eloise (6) and Lucy (4) get ahold of the machines in a couple days.

Tuesday, November 13, 2007

Give One Get One for "One Laptop Per Child" is in Effect

I just put in my order earlier yesterday for two laptops under the OLPC "Give One Get One" program.

I got one for each of my daughters, and I feel a little warm and fuzzy that two children I'll probably never meet will have an opportunity to explore the digital world.

Providing my own children with that opportunity for discovery made the expenditure of a couple days wages seem like a pretty good deal.

Sunday, October 14, 2007

Pokerstars Blogger Tourney

I played in that this afternoon. Got about an hour into it before getting busted. I actually feel that I played fairly well. I was patient until I played my first hand that turned into the nut flush, and I managed to extract 3k where if I'd just jammed with the nuts I don't think I would have gotten the call. I also managed to get away from a hand where I'd semi-bluffed on the flop and followed through on the turn to lay it down to a big re-raise. Final hand was A8o vs A9o who was in the big blind. Couldn't think of a way that I could have gotten away from it, and am kind of surprised the other guy called. He was fond of saying 'donkey', so I expect he's a "hardened professional" and goes looking for marginal hands that he can "get sucked out on" with.

Anyway, I had a good time. Since I busted out so quickly, I was able to substitute for my wife on taking the kids to see "Ratatouille".

Side note. Firefox spell-check thinks I misspelled ratatouille. The suggested correction is "bouillabaisse". Very freaky.

Anyway, Jen was going to take care of the kids so I could play in the tourney, and part of it was to take them to this animated feature (which is her absolute least favorite genre of cinema). Since I busted out, I took the kids instead. We get about 85% of the way through. We see the false happy ending and start heading down into the reversal and Lucy starts crying that she doesn't want to watch any more. I ask Eloise if she's ok to watch the end alone if I take Lucy out into the hall to wait, and she says ok. Big mistake on my part. I take Lucy outside and get her calmed down. We start to go down the hall to the bathroom, and all of a sudden, Eloise comes screaming out of the theatre and down the hall. She's scared, doesn't want to watch any more. She's in full on screaming tears mode. She forgot her water bottle in the theater. I calm her down, everyone uses the bathroom. I go back in the theater to get the water bottle. We head home.

One good thing is that as we walk back towards the car, we discover Beard Papa's Sweet Shop. Verrrrrry tasty cream puffs. I'd heard of them from a parent at a birthday party that Eloise had gone too. Worth the trip.

Wednesday, October 03, 2007

It's that time of the year again

Pokerstars.com is having their annual blogger's tournament. I might as well give it a try (assuming I can talk Jen into giving me some time at noon on Oct 14).


Here's the verification stuff:


Online Poker

I have registered to play in the PokerStars World Blogger Championship of Online Poker!

This Online Poker Tournament is a No Limit Texas Holdem event exclusive to Bloggers.

Registration code: 6402628


Tuesday, August 28, 2007

Another Prosper Listing

I haven't plugged anyone on Prosper for a while, but I think this listing deserves some attention. He seems like he's got his plan together and just needs a little help digging out from underneath high interest credit card debt.

As a little reminder, if you sign up through the link above and help fund his loan, both you and I will get $25.

Followup on the July Prosper Listing

So I was beating pretty hard on MWALKER650's Prosper listing. She got funded, but the community finally got so enthusiastic about her loan that I was underbid and didn't get a piece of the action.

What a bummer. I'm glad she got funded though. It was an interesting experience providing advice on how to improve the listing. Just helped out a bit to much, I suppose...

Friday, July 20, 2007

Alright you slackers, cough up the dough

You may have been reading where I've been promoting this loan on prosper.com, and you may be getting sick of reading about it.

Well, one way to stop me from posting over and over and over again would be to:

1. join prosper (you get $25 FOR FREE!)
2. fund this loan
3. enjoy the warm feeling of helping someone get out from under the grinding heel of the consumer debt peddlers.

Do the right thing, peeps.

Something I forgot from yesterday

There's something that I've been telling myself as I've been running (which I didn't do this morning -- website issues got me out of bed at 5:50 and now the kids are up, and I have to get into work).

That thing is:

The body can be trained to do whatever your mind has the will to train it to do.


This seems particularly applicable to the new style of running I've been trying. It's more painful (sometimes much more painful) but it seems to yield better progress overall.

From a strict pain/utility perspective, a slower continuous pace might seem to be optimal, but for a longer term perspective of no slowly degrading performance over time, I think it makes sense to train for the pain. That way I'll always know that I'm pushing things to the practical limit and won't slide down a slippery slope of complacency.

Only by having the will to train through the pain would I get to a better overall solution.

Thursday, July 19, 2007

Running, running, running again

I was on a regimen of running 3 miles every other day. I got some new trail running shoes over the weekend. They inspired me, as new footwear often does. This week, I decided to start running every day. Not only did I decide to run every day, but I also decided to change my style of running.

Previously, I'd take off from house at an easy trot up the hill to Rancho San Antonio, and pace myself to keep at least shuffling along in a gait resembling a run the whole time. I'd slow down on the uphills and be out of breath at the top and then kind of coast down hill until I'd caught my breath.

The new plan is to run flat out until I can't run any more, and then walk at a brisk pace until I feel like I can start running again. I actually feel better for it. I think that I'm moving faster overall (but I suppose I could measure that).

I suspect that by training my body to keep moving at all costs, I was opening the door to a complacent pace. It seems that was a slippery slope to slowing down. The new regime will train my body to always be going flat out. While I can feel the lactic acid building up much more with this style (especially on the uphills), it seems like over the course of the week that the recovery period is getting shorter.

I'll keep you posted.

Sunday, July 15, 2007

Here's another one

So you may recall that I've been promoting a loan for a young Bay Area woman trying to get herself out of debt. In the course of communicating with the other lenders who were trying to fund a loan for her, I was referred to this listing.

She seems to be a little bit more of a risk, but it's a good story, and the other Prosper member says that she's been a pretty good communicator in their email exchanges. A smart girl in a tough position.

Once again, in the interest of full disclosure, if you sign up through one of the links above, both you and I will get a $25 sign-up bonus.

Friday, July 13, 2007

Trying again

So that gal that I was trying to help out through Prosper.com didn't get that loan funded. She's trying again, with some more information in the listing. If you'd like to help out, click on through

In the interest of full disclosure, if you sign up through the link above, both you and I will get a $25 sign-up bonus.

Monday, July 09, 2007

Someone who could use a little help

Would you like to make $25 while lending someone a helping hand?

Here's a listing from Prosper.com for someone who I think is listed as a 'high risk' borrower but really isn't a high risk.

She appears to have a good head on her shoulders, understands that she's in a bit of a bind, but needs a little help to get out of the bind.

I'd encourage you to sign up and lend to her. I have. If you sign up through the link above and lend to her, you'll get $25 as a sign-up bonus, and so will I.

Saturday, June 23, 2007

Looking again

I need to find a QA engineer. Here's a rough draft of the job description:

----------------

Senior Software Engineer in Test -- Customer Service Applications

THE ROLE

We are looking for someone who can own the process of reliably getting the good ideas out of our developers heads onto the desktops of our customer service reps. We are looking for someone familiar with testing enterprise applications built from web services, Oracle, SQL, PL/SQL and telephony integration in the customer service space.

Quality Assurance at Netflix is not about waiting for some code to fly over the wall from development. It's about providing an environment for the development engineers that helps them minimize the number of bugs that make it into the code in the first place. It's also about insuring that what works when we test continues to work as well when we deploy it. Working on our customer call center software, you will help the people that help our members solve their problems.

You will provide your expertise in understanding what to test, as well as how to test. Given a schedule that is always too short and a feature list that is always too long, you'll identify and efficiently evaluate those changes to our software that pose the greatest risk to the smooth and effective operation of the customer service staff.

RESPONSIBILITIES

* Validate and verify the correct operation of the customer service application
* Advocate designs that are usable by the customer service representatives
* Collaborate with customer service management to design a complete system that meets business needs
* Bridge any communication gaps between the development and operational teams supporting the system
* Improve and extend the automated regression test suite and production monitoring tools

QUALIFICATIONS

Must have:
* 5+ years of white box 3-tier application testing, building and deployment
* Deep experience with Oracle and PL/SQL or equivalent database systems
* Experience with Java/jUnit or C#/nUnit development and testing
* Experience with testing high-traffic, highly scaling, multi-threaded software design
* A Bachelors or Masters in Computer Science or equivalent engineering experience

Nice to have:

Familiarity with contact center technology (e.g. CTI, IVR, CRM)
Familiarity with use of .NET Remoting, Web Services, 3rd party .NET controls, TestComplete

----------------

Email me if you're interested.

Fiction writing

You should never see the phrase "I woke up and went through my usual routine" or anything like it in fictional stories. The point of writing the story is to give insight into the character. If the reader doesn't already know what the character's 'usual routine' is, then they will infer that the character's routine is just like their own, which is probably very boring. If your character usually runs out onto the patio to chase away the squirrel at the bird feeder, you should tell your reader.

Friday, June 22, 2007

Real Life on Second Life

I saw a pretty funny movie when I was visiting Valleywag today. It was about what real life would look like if real life were like Second Life.