Wednesday, February 18, 2015

How bad has Tim Lincecum been from 2012-2014

Not so long ago I was speaking to a Giants fan and remarked about how bad Tim Lincecum had been for the Giants the last few years.  Yes, he did have those two no-hitters, but his overall body of work has been dreadful.

I remarked, "I think Lincecum has probably been worse than Barry Zito over any three years he played for the Giants."

This was a complete guess.  Going off WAR, Lincecum has a -3.0 WAR combined over the last three years (-1.7, -0.6, -0.7).  Needless to say, that's really bad.  Anything that's negative normally means a player should be replaced.

So how about Zito?  From 2007-2013, Zito had a combined WAR of 3.0.  So it's atleast positive.  Four years his WAR was positive and three years it was negative.  His best three year stretch was 2007-2009 when he had a WAR of 4.5 (2.0, -0.1, 2.6).  His worst was 2011-2013, with a WAR of -3.0 (-0.6, 0.2, -2.6).

So his worst three year stretch was the same as Lincecum's.  So it's a draw going by WAR.  Lincecum does have the opportunity to fix things this year, but it's looking pretty bleak.




Saturday, February 7, 2015

Dinner @ Kusakabe in San Francisco, CA

Kusakabe is a freshly minted 1 Michelin Star restaurant in San Francisco.  It, along with Maruya last year, became the first sushi restaurants in San Francisco to be awarded Michelin stars.

I had never tried authentic Kaiseki Japanese sushi, so I felt I had to check this place out.  Kusakabe offers a omakase menu of approximately 11 courses (well, it depends on how you count, there's 1 tea, 7 nigiri, 4 sashimi, 1 soup, 1 warm dish, a plate with 5 petite tastes).  After the tasting, you may order additional sushi a la carte.  It's probably worth noting that dessert isn't amongst the 11 courses, so you'll have to order that extra if you want dessert.

The omakase menu does have several options for you.  The sushi finale is your choice between two different sushi.  In addition, five of the nigiri are up to the chef for the night.  The waitress asked us if we had any favorites.  I just asked for the chef to serve me whatever was best.  Presumably if you have a few favorites, the chef would tune the nigiri selections to your tastes.

Here's an overview of what we had

1) konbu cha, kelp tea


First was a welcoming tea.  Because it was made with kelp, my first thought was "this is like Chinese seawood soup", but obviously not as strong a flavor.  It was tasty, light and flavorful.

2) Nigiri


So from left to right we have

Zuke Chutoro - lightly seared bluefin medium fatty tuna cured in soy sauce
Hirame - Ikejime halibut with own liver
Kan Buri - Lightly cherry wood smoked wild winter yellowtail

The Zuke Chutoro is a set menu item, but the other two nigiri was selected by the chef.  I thought the Zuke Chutoro was pretty good, although not my favorite compared to the other two.  I think the half seared half raw was a little strange.  The kan buri was especially delicious with a ton of flavor.  My initial reaction was, "why is this red?", because it's not what yellowtail normally looks like.  I also thought the hirame was really good.  Not only did it have its own liver added on top, there was also a (I think this is what the waitress said) shiso leaf underneath.  Here's a close up b/c it may be hard to see in the pic above.


I dunno if that was what made it so good, but it was delicious.

It's also worth noting the ginger.  Normally, I'm not a fan of ginger at sushi restaurants.  I think the ginger is just too strong.  Given how high end Kusakabe is, I figured I should atleast try and cleanse my palate between courses.  However, the ginger wasn't quite as stringent here.  I don't know if it's made in house (vs bought in bulk from some supplier).  But I really enjoyed the ginger here and downed most of it.

3) amberjack and scallop sashimi nestled in shaved ice with fresh Wasabi & Yuzu onion sauce



First of all, this dish looks ridiculously pretty with all that green & red and color.  It's worth noting that everything in the bowl, including the garnishes, is edible (of course you can eat the ice, but we didn't eat that).

The dish comes with a yuzu onion sauce or soy sauce for dipping.  The yuzu onion sauce was really good, although I felt it matched better with the scallops than the amberjack. Needless to say, fresh wasabi is much more flavorful and not as sharp as the horseradish wasabi you normally get at sushi restaurants. 

4) "Kamo Dango" duck and "Asari" clam Miso soup with Mitsuba leaf


Next up was miso soup.  But instead of tiny chunks of tofu, you get duck meatballs and clams.  This was delicious.  What my date and I noticed was that even though you might let the bowl of soup sit there for awhile, the miso soup never got "cloudy" like it does at most sushi restaurants and you don't have to re-stir it.  Not sure what flavoring made this soup that way and different.  This was really good.  All other miso soups simply pale in comparison.

5) Shigoku oyster w/ French Daurenki Caviar and four kinds of Chef's assorted Le petite plates


Next up was what the waitress called "Japanese tapas".  From left to right ...


First there was squid with potato.  It wasn't a normal American-like potato, a completely different texture.  Unsure what the sauce was.  Overall really good.



Next was a rice ball with red snapper on it and some citrus which I cannot recall.  I think the citrus overwhelmed this particular one.


Next up was the oyster with caviar and I believe there was a yuzu sauce on it.  Really good.


Then another rice square with tuna and what I assume is bonito flakes on top.  Not bad.  Fourth best on this quintet.


I could have swore the waitress said this was beef with puffed rice, but beef was no where to be found.  My date and I agreed this was not beef.  Possibly taro?  Something starchy ... maybe sauteed in beef fat or something?  We both agreed really tasty, but we were thrown off b/c we weren't sure what it was.

6) Tofu-Chawan-mushi with fresh steamed Dengeness-Crab and Shiitake mushrooms


Next up was the "warm dish", which was a classic chawan mushi.  I'm not sure why the menu listed it as a "tofu-chawan mushi".  The waitress said it was egg based.  According to a website online, sometimes soy (e.g. soy milk) might be mixed into the egg before its steamed.

Anyways, just delicious.  Except for the mushrooms, which I hate mushrooms and ate around it.

7) Nigiri

Next came the second set of three nigiri.  From left to right:

Shimaaji - Stripe Jack
Masaba - Japanese mackerel cured with konbu
King Salmon - Copper River king salmon with sakura cherry leaf

All three were really tasty, the mackerel in the middle was especially good.  I'm not sure if it's b/c it was cured in something, but the flavor was much stronger than the mackerel I normally have had.  (Similarly to the yellowtail above, I looked at it and thought "Why is this so red?"  Not sure if it's the curing process or what.)

8) Nigiri Choice

The last course you get your choice of either a bluefin fatty tuna nigiri or a A5 Japanese wagyu sushi.  I chose the tuna while by date chose the wagyu.



I can only comment on the tuna as it's the one I had.  I don't think I've ever had tuna this fatty before, so it was a bit surprising when I tasted it.  I would say a number of the other nigiri were more to my liking for the night, but it was still good.

9) Shirayaki - Fresh BBQ white eel with sansho pepper

At this point in the meal, you can order more nigiri if you'd like.  Because eel is my favorite nigiri, I decided to order one to try it.


This was an interesting flavor.  It's not the same eel used for unagi in most places, and it wasn't dripping in bbq sauce, so my expectations were probably warped.  Not the chefs fault by any means, might need to try this again with a better expectation.

I could have eaten a few more nigiri, but didn't know what to order off the a la carte, which had about 25 nigiri (which 7 were tasted on the omakase menu).  Next time, what I'll likely do is just ask the chef for a three more nigiri of their choosing that I hadn't yet tried that night.

We then elected to order some dessert.  It's worth noting that this is a la carte at this point and not part of the tasting menu.

10A) Yuzu and shiso-leaf sorbet with maccha crackers


I ordered the sorbet b/c I love sorbet.  Note the crackers spell the letter 'K' for Kusakabe.  It's yuzu sorbet ... really good.

10B) Sweet pototao Ice cream with kuromitsu sauce with monaka cracker


My date ordered the sweet potato ice cream, which was interesting when I tasted it.  Not the flavor I would have chosen for ice cream, but pretty good.  That's just my personal taste.
Overall, an amazing experience at Kusakabe.  I think most other sushi places are now ruined for me.




Friday, February 6, 2015

Saved By The Bell Reunion on Jimmy Fallon - All The Inside Jokes/References




The skit is absolutely brilliant with tons of inside jokes and references.  Here's the ones I found.


1:10 - Zack recites the Saved By The Bell theme song.  (youtube)


2:37 - A reference to a Saved By The Bell episode (youtube)


2:56 - Mario Lopez was on season 3 of dancing with the stars (wiki)


4:08 - References a recent interview with Nicole Kidman (youtube)


4:25 - Referencing how Elizabeth Berkley was in Showgirls after Saved By The Bell was over.  (wiki)


4:40 - Another reference to a Saved By The Bell episode (youtube)


6:46 - Two references, running off to Las Vegas is a reference to the Saved By the Bell Wedding after the "College Years" show (wiki)


The second reference to moving to Beverly Hills is because Tiffani Thiessen joined the cast of Beverly Hills 90210 after Saved By The Bell.

7:08 - And "Zack Attack" was of course an episode of Saved By The Bell (youtube)

Thursday, February 5, 2015

Hadoop Job Submission Errors

Ugh, for the life of me I couldn't figure this out today until the "Duh ... I didn't do ..".  We all have those days.  Hopefully this will help someone out there a little quicker.

I couldn't submit a small Hadoop job today and was repeatedly getting errors like this:


Error: java.lang.RuntimeException: java.lang.ClassNotFoundException: Class FOOCLASS not found
        at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:1961)
        at org.apache.hadoop.mapreduce.task.JobContextImpl.getMapperClass(JobContextImpl.java:186)
        at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:722)
        at org.apache.hadoop.mapred.MapTask.run(MapTask.java:340)
        at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:415)
        at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1594)
        at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:163)
Caused by: java.lang.ClassNotFoundException: Class WordCount$WordMapper not found
        at org.apache.hadoop.conf.Configuration.getClassByName(Configuration.java:1867)
        at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:1959)
        ... 8 more 

The key line of error output was:

WARN mapreduce.JobSubmitter: No job jar file set. User classes may not be found. See Job or Job#setJar(String).

After Googling I tried all the normal expectations.

1)

Make sure the jar has all the classes in it that it's supposed to have.

2)

Make sure you're calling job.setJarByClass() in your code.

3)

Make sure the permissions on the jar file are correct.

But still couldn't get it to work.  Then a stackoverflow post suggested calling job.setJar() to manually set the jar by it's full path.

This worked.  Why?

Duh ... Hadoop couldn't find the jar submitted in question.  So step 4 to try.

4)

Make sure your jar can be found in the environment variable HADOOP_CLASSPATH.

An alternate option may be to ensure your jar is the classpath of   yarn.application.classpath.  But I didn't try this.