<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss'><id>tag:blogger.com,1999:blog-8381936</id><updated>2009-10-15T04:49:51.381-07:00</updated><title type='text'>foobarista</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default?start-index=26&amp;max-results=25'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>120</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8381936.post-3180070638607076329</id><published>2009-05-09T01:21:00.000-07:00</published><updated>2009-05-09T01:22:20.853-07:00</updated><title type='text'>Websites with "sound" are evil...</title><content type='html'>and anyone using them is guaranteed to have me click away instantly.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-3180070638607076329?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/3180070638607076329/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=3180070638607076329' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/3180070638607076329'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/3180070638607076329'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2009/05/websites-with-sound-are-evil.html' title='Websites with &quot;sound&quot; are evil...'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-4003064699554441615</id><published>2009-03-05T21:51:00.000-08:00</published><updated>2009-03-05T21:59:52.241-08:00</updated><title type='text'>The "Obama-Conned"</title><content type='html'>During the election, there were a lot of conservative pundits, especially of the big-think types who write for newspapers and magazines in New York and Washington, who decided to plump for Obama.  Basically, their arguments were that he was "smart", was surrounding himself with smart people, and he wasn't a wild-eyed radical, despite his associations with Hyde Park 1960s lefties, his history as a "community organizer", and clear radical sympathies as expressed in his books.&lt;br /&gt;&lt;br /&gt;I also was hopeful immediately after the election, even though I didn't go so far as to actually vote for him.  I figured events would constrain him to find his inner Calvin Coolidge, as they did to Bill Clinton in his first term.  But instead of the smart, reasonable guy we were hoping for, we're seeing the Hyde Park "community organizer" radical, channeling his inner Hugo Chavez.&lt;br /&gt;&lt;br /&gt;These pundits are now withdrawing their support, and the ranks of the Obama-Conned are growing by leaps and bounds.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-4003064699554441615?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/4003064699554441615/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=4003064699554441615' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/4003064699554441615'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/4003064699554441615'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2009/03/obama-and-obama-conned.html' title='The &quot;Obama-Conned&quot;'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-3612904274691914498</id><published>2009-03-05T21:11:00.000-08:00</published><updated>2009-03-05T21:23:07.813-08:00</updated><title type='text'>The economic problem with consumption...</title><content type='html'>is that many products we have nowadays are actually quite good.  A decently maintained car in a friendly climate can last 15 years or more.  A modern PC can be used until it physically fails; unless you're a hard core gamer, you don't need to upgrade a PC every couple of years or so like we did in the 1990s.  And many people can get away with cheap, micro-things like netbooks or tiny PC thingies that cost $300 or less.&lt;br /&gt;&lt;br /&gt;Clothes are cheap, shoes are high quality, and all this stuff can last quite a long time if it's maintained.&lt;br /&gt;&lt;br /&gt;So, many people can easily live "out of inventory" for several years before needing to buy much of anything beyond consumables.  &lt;br /&gt;&lt;br /&gt;This is why the "stimulus" won't do much; people will just save it.  Even trying to loosen up consumer credit won't help much; the last thing any sane person wants to do now is go out and buy a new car on credit or go on a credit-card-powered shopping spree.&lt;br /&gt;&lt;br /&gt;The US savings rate is up to 5% and rising, from near-zero in the middle of last year.  I suspect most of this is non-savers paying down debt (which looks like economic savings), although many congenital savers are also saving even more.&lt;br /&gt;&lt;br /&gt;Anyway, the Great Deleveraging continues, and will likely go on for a long time.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-3612904274691914498?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/3612904274691914498/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=3612904274691914498' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/3612904274691914498'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/3612904274691914498'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2009/03/economic-problem-with-consumption.html' title='The economic problem with consumption...'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-6573770277414090871</id><published>2009-02-03T22:46:00.000-08:00</published><updated>2009-02-03T23:13:11.639-08:00</updated><title type='text'>A word from my current work world...</title><content type='html'>Now that I have a job, my current Big Project is to make our product, which currently falls apart under a load of about 20 million "sessions" (or about 60M records), to run with 500M sessions or about 1.5B records.  Searches are ad-hoc on any combination of AND, OR, and NOT, on about 20 different search parameters.  Also, I was to do this without needing fancy hardware support.  To make things more interesting, the schema had to work on both Oracle and MySQL.&lt;br /&gt;&lt;br /&gt;To solve this problem, I used a schema derived from "snowflake" designs from data warehouses, and broke up the data into "dimension" (search) versus "fact" (data display) tables.  The dimension tables are denormalized in that they store some data that is also in FACT tables.&lt;br /&gt;&lt;br /&gt;Queries are done by doing initial qualification on the search tables.  The results of these searches are saved to temp tables.  The final set of qualifying IDs is computed using SQL INTERSECT, UNION, or MINUS queries on the IDs in the temp tables, depending on the search logic.  After we have the final set of qualifying IDs, the set is sorted using a computed value that is bound to all "sessions", and the top N records are joined with the FACT tables to produce the final result.&lt;br /&gt;&lt;br /&gt;The fundamental problem with the old schema is it relied heavily on ID joins for secondary qualification, after "picking" a primary search qualification.  Large-scale ID joins require full B-tree descent for every record in the join, and if there are hundreds of thousands of records being qualified this way, the query will take minutes or more.  My new schema avoided this problem by simply qualifying each criterion separately, doing a single pass through the B-tree index per criterion, and doing the qualification logic without actually needing to visit the - very wide - FACT table.&lt;br /&gt;&lt;br /&gt;A thing that helped hugely was using INDEX ORGANIZED tables in Oracle, which means that all table data is physically stored in the index - as opposed to the standard storage method of having the index records pointing at "real" table storage in a heap.  This meant my qualification searches didn't actually have to traverse index recs to get at a base table - they were pure index scans.  I haven't done MySQL yet, but InnoDB storage is basically identical to INDEX ORGANIZED tables, so this trick should still work.&lt;br /&gt;&lt;br /&gt;One advantage that I have with our application is it has a magic number I can use to short-circuit searches, but even without this magic number, my new approach is still far faster than a more "standard" approach using simple joins.&lt;br /&gt;&lt;br /&gt;The final results are that my new approach is nearly four orders of magnitude faster than the existing schema, and is completely predictable.  We're able to go after much bigger deals than before now that we have a more scalable schema.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-6573770277414090871?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/6573770277414090871/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=6573770277414090871' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/6573770277414090871'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/6573770277414090871'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2009/02/thoughts-on-database-apps.html' title='A word from my current work world...'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-2280000718901387637</id><published>2008-12-01T16:53:00.000-08:00</published><updated>2008-12-01T17:14:01.656-08:00</updated><title type='text'>The Car "Format Wars"</title><content type='html'>Everyone who owns DVDs or lived through Beta versus VHS knows all about Format Wars in the electronics industry.  A similar problem is "related tech" wars, such as Plasma versus LCD in flat-screen TVs, etc.  And, as a consumer - at least if you're a cheapscate like me who expect that things that cost $hundreds or $thousands will be useful for several years at least - is to wait until there's one or two clear technology winners that are well-understood and will be around awhile.&lt;br /&gt;&lt;br /&gt;And one thing I often wonder about is whether we're seeing the beginnings of "format wars" reactions by consumers in the car industry?  I suspect so - who wants to buy a Chevy sedan today if they can wait for the Volt (assuming GM lasts that long)?  The credit crunch and the recent gas-price crunch are bad enough, but I suspect looming format wars aren't helping either.&lt;br /&gt;&lt;br /&gt;Personally, I'm a techie who likes to buy "cool" stuff, but not enough to qualify as an early adopter.  I want something that costs $20K+ to last for about fifteen years and 175K miles, as have my first three cars.  I buy new, over-maintain, and drive it until the wheels fall off.&lt;br /&gt;&lt;br /&gt;Where the format war issue comes in is I'm not interested in buying a "gas-only" car, and would like to "vote" for a good hybrid tech vehicle, but am hesitant about the various hybrid techs out there.  I'd like a plug-in serial hybrid - at least - and would love to be able to buy a hydrogen car if one were available.  The problem is there's way too many technology moving parts in hybrids for me to be interested in paying a premium for a vehicle which may need to be basically dumped if one element or another in the powertrain proves to need expensive replacement.&lt;br /&gt;&lt;br /&gt;Also, will we have neighborhood mechanics who can fix these babies?  Or do we have  to the dealer, where everything beyond an oil change costs $1K?&lt;br /&gt;&lt;br /&gt;And, ironically, most cars with ICE powertrains are so reliable nowadays that if they're decently maintained, they'll run nearly forever.  (Note that this includes GM cars, as my 1993 Saturn demonstrated after running up 175K miles with little unscheduled maintenance before it was stolen (!) three years ago.)&lt;br /&gt;&lt;br /&gt;Our eight year old Toyota and our three year old Honda should last awhile longer, but I'm hoping they'll last another half-decade or so while the powertrain format war plays out, and we'll start to understand what happens when hybrids and new-style powertrain cars get old.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-2280000718901387637?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/2280000718901387637/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=2280000718901387637' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/2280000718901387637'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/2280000718901387637'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/12/car-format-wars.html' title='The Car &quot;Format Wars&quot;'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-5061348348536746082</id><published>2008-10-04T12:51:00.000-07:00</published><updated>2008-10-04T13:46:50.193-07:00</updated><title type='text'>Political discussions, trust, and logical argument</title><content type='html'>As a basically conservative "small-ell" libertarian in Silicon Valley, I'm surrounded by Obamaphiles - when I'm not encountering people further to the Left - who basically want to grind those who oppose them into the dust.  Needless to say, it's hard to have a political conversation without being thrust into a situation where name-calling or other "categorization behavior" begins, and any hope that you can actually have an interesting discussion ends.&lt;br /&gt;&lt;br /&gt;This is particularly painful for me, since I like to talk about politics and ideas, and have always felt that one's politics is informed by one's life experience, and that the religious view that one's politics are Right and one's opponents are Wrong is silly.  In a large, complex world, policies will always be unsatisfying, inelegant muddles, and perspectives of small-state types like me and gung-ho, let's Use The Government to Solve Social Problems types like most honest progressives will be useful.&lt;br /&gt;&lt;br /&gt;One thing I do try to do is to avoid &lt;a href="http://en.wikipedia.org/wiki/Logical_fallacy"&gt;logical fallacies&lt;/a&gt; in political discussions.  This is hugely difficult, since political arguments are always rhetorical, and driven as much by personalities (Bush/Cheney/Rove is Hitler! Obama is a Commie!) as by any actual policy or philosophy discussion.&lt;br /&gt;&lt;br /&gt;One other thing that's even harder to deal with is political humor.  At the risk of appearing humorless, my feeling is that political humor is hugely rhetorical and manipulative, driven by stereotypes and logical fallacies buried behind a veneer of "trying to be funny", which makes it all OK.&lt;br /&gt;&lt;br /&gt;Sorry, I'm not laughing.  Political humor, which is the way many people - especially younger people - shape their political opinions these days, is a very serious business and drives a lot of the political tribalism that I find so dangerous.&lt;br /&gt;&lt;br /&gt;Another dimension is the use of rhetoric as argument.  One of the key points of logical argument is separation of the argument from the person making the argument, so that it is a fallacy to say that "Policy X is wrong because Bush/Rove/Obama advocated it" (a variant of ad-hominem) or it flip-side "Policy Y must be good because Really Smart Guy Z that I Really Like advocates it" (argument to authority).&lt;br /&gt;&lt;br /&gt;In ideal logical argument, proper names are simply not used.  It's all about the arguments and the fact base underneath the arguments.&lt;br /&gt;&lt;br /&gt;The Question of Hypocrisy&lt;br /&gt;&lt;br /&gt;The most seemingly powerful rhetorical argument one can make is hypocrisy.  And it can't be denied that if someone makes one argument one day and puts a completely opposite argument on the table the next day for the purpose of political convenience is being a hypocrite and should lose credibility in the world of political punditry.  But their arguments themselves still stand and should be refuted - or not - as arguments, and not simply discounted because they were advanced by a hypocrite.&lt;br /&gt;&lt;br /&gt;I am well aware that logical argument is seen by many post-modernists, post-structuralists, critical &lt;X&gt; theorists, etc as being an invalid way to argue, because logical argument purposely ignores the reasons why someone advances an argument.  But the "why" shouldn't matter!  If the argument is invalid, it will be shown to be invalid by a better argument.  It shouldn't matter whether the person making the argument is an Asian woman or a gay black man - or holds General Motors stock. &lt;br /&gt;&lt;br /&gt;Once you toss logical argument, with its common set of rules and clear definitions of validity that are available to all sides of the argument, into the ditch, all that's left is a thousand variants of "might makes right".  The Greeks figured this out 2500 years ago, and they're still right.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-5061348348536746082?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/5061348348536746082/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=5061348348536746082' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/5061348348536746082'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/5061348348536746082'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/10/political-discussions-trust-and-logical.html' title='Political discussions, trust, and logical argument'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-6670342233873765313</id><published>2008-08-23T00:49:00.000-07:00</published><updated>2008-08-23T01:01:22.932-07:00</updated><title type='text'>The pronunciation of "Beijing"</title><content type='html'>As someone who spent nearly a year living in Beijing - and not being Chinese, although married to a wonderful lady from that part of the world - I've been annoyed at the tendency to pronounce "Beijing" like "Beige-Ing".  It is (basically) "Bay-Jing", with the second syllable starting with a hard "J" like "Juice", versus the drawled "Ge" in "Beige".&lt;br /&gt;&lt;br /&gt;One would think that Bob Costas would have figured this out by now...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-6670342233873765313?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/6670342233873765313/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=6670342233873765313' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/6670342233873765313'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/6670342233873765313'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/08/pronunciation-of-beijing.html' title='The pronunciation of &quot;Beijing&quot;'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-4659434872297137271</id><published>2008-08-22T00:38:00.001-07:00</published><updated>2008-08-22T00:46:23.690-07:00</updated><title type='text'>On Software Tools</title><content type='html'>In my new job, I'm in a largely Java shop for the first time.  I'll be doing a "query cache accelerator" for them fairly soon, which will be done in C...&lt;br /&gt;&lt;br /&gt;Anyway, one thing that I'm now highly exposed to is the Java world's proliferation of software tools.  As a guy who figured that 20+ year old tools like make, vi, gdb, gprof, and purify are the cat's meow, it's hard to deal with tools that change every six months.  Also, I hate wasting time learning the fiddly idiosyncrasies of yet another bunch of gooey-licious tools, who's main "advantage" over standbys like make is primarily their GUIness.&lt;br /&gt;&lt;br /&gt;But, there we are.  And I'm stuck with them, I suppose.  The one thing I'm insisting on is that we pick a suite of tools, do all the customization we need to do, and stick with them and not change the world every few months as new tools appear.&lt;br /&gt;&lt;br /&gt;I've always figured that software tools are like lawyers: you need to know a few good ones well for various purposes, but you don't want them to get in the way of living your life or doing your job.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-4659434872297137271?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/4659434872297137271/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=4659434872297137271' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/4659434872297137271'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/4659434872297137271'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/08/on-software-tools.html' title='On Software Tools'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-6996124935472720467</id><published>2008-08-06T22:05:00.001-07:00</published><updated>2008-08-06T22:40:28.412-07:00</updated><title type='text'>Thoughts on "Coding Interviews"</title><content type='html'>In my job search, I was asked to write code in a couple of interviews.  Personally, I don't like asking coding questions in interviews, and if I have a question about a programmer's ability, I'll use a simple programming test that's emailed to them a couple of days before - and ask them to explain their code in the interview.&lt;br /&gt;&lt;br /&gt;For me, the problems with interview code questions are the following:&lt;br /&gt;&lt;br /&gt;1.  It's a completely weird environment.  No computer, no compiler, and extremely vague requirements.  Few programmers do well in this environment.&lt;br /&gt;&lt;br /&gt;2.  Lots of room for silly "gotcha" pickiness that has little to do with actual programming skill.&lt;br /&gt;&lt;br /&gt;3.  The programming problem often involves too much code for a few minutes.&lt;br /&gt;&lt;br /&gt;As an interviewee, my strategy for programming questions was the following:&lt;br /&gt;&lt;br /&gt;0.  Get the requirements, and state any assumptions.  If you're wondering about a definition or something, go ahead and ask - it's better to do this than to get "gotcha'ed".  Frankly, I also like to use the requirements discussion to "run out the clock" so that the coding lasts only a few minutes.&lt;br /&gt;&lt;br /&gt;An aside: if the interviewer gets impatient at this point, they're probably not very good programmers themselves, or they're very junior.&lt;br /&gt;&lt;br /&gt;1.  Set up the data structures.&lt;br /&gt;&lt;br /&gt;2.  Discuss the main modules/classes/APIs you expect to use.  Don't get hung up on the details of library calls or whatever; in real life, you'd look these up anyway, so go ahead and say so.&lt;br /&gt;&lt;br /&gt;3.  Only code the "top level" function that implements the main algorithm, using the data structures and APIs you outlined above.  Bury stuff that's tedious and that takes a lot of code behind a module that you discuss but don't write, unless the interviewer insists.&lt;br /&gt;&lt;br /&gt;Also, up front, state that you're explicitly skipping error conditions and error handling, but discuss how you'd code error handling if you were doing this "for real".&lt;br /&gt;&lt;br /&gt;4.  If you get gotcha'ed, go ahead and make the corrections.  Don't get flustered.&lt;br /&gt;&lt;br /&gt;If you expect to have this sort of "live programming" asked in an interview, it may be useful to have a practice session where you sit in front of a "friendly" and write some code on a piece of paper so you get used to the environment.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-6996124935472720467?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/6996124935472720467/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=6996124935472720467' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/6996124935472720467'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/6996124935472720467'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/08/thoughts-on-coding-interviews.html' title='Thoughts on &quot;Coding Interviews&quot;'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-4573897775267377647</id><published>2008-08-06T21:21:00.000-07:00</published><updated>2008-08-06T22:04:39.450-07:00</updated><title type='text'>Technology observations from my job search</title><content type='html'>For all that job searching is a pain in the butt, it gives you a chance to see what companies are doing and where their "pain points" are.  Some observations from my search:&lt;br /&gt;&lt;br /&gt;1.  Companies are drowning in data, particularly small ones that can't afford to build a fancy glass house for racks of servers running Oracle.  There's a golden opportunity here.&lt;br /&gt;&lt;br /&gt;2.  A few players are going after this opportunity, but they seem focused on the top of the market.  This is probably reasonable from a business perspective, but my impression is that bowie-knives.com needs high performance stuff as much as Google.&lt;br /&gt;&lt;br /&gt;3.  The DB market may well end up splitting in two: high-performance query answering and search, and highly reliable archival and storage.  The latter interferes with the former, and several places where I was interviewing definitely want high-performance query answering.  (I'm building one of these puppies for my new company.)&lt;br /&gt;&lt;br /&gt;4.  There is lots of other movement going on in databases.  With the end of Moore's Law, and data and the need for high-speed data processing growing quickly, new db architectures are appearing.  Several companies are building various forms of "database appliances", and some new hardware stuff may help here.&lt;br /&gt;&lt;br /&gt;5.  Programming is about to get a whole lot harder as computer hardware changes intrude on programming in a way they haven't for at least 20 years.  This is good for us old fogies who like hard "edge condition" problems, but Joe Java, who lives in a world where abstractions hide all the fun stuff, may have a hard time adjusting.&lt;br /&gt;&lt;br /&gt;I saw this in a couple of companies: a bunch of smart young guys, steeped in the latest languages and alphabet-soup "skills", wondering how to get a factor of 100 performance speedup in their complex application without buying 100x more hardware.  It can be done, but commodity approaches probably won't do it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-4573897775267377647?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/4573897775267377647/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=4573897775267377647' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/4573897775267377647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/4573897775267377647'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/08/technology-observations-from-my-job.html' title='Technology observations from my job search'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-3394046588474183876</id><published>2008-08-06T21:06:00.000-07:00</published><updated>2008-08-06T21:21:12.438-07:00</updated><title type='text'>Adventures in job hunting...</title><content type='html'>My company went belly-up in June, and I collected my last paycheck on June 30.  After that came the Great Job Search, which ended this week.&lt;br /&gt;&lt;br /&gt;A bit about me in advance: I've been a database engine developer for the past 20 years, and work as an individual contributor with some management responsibilities, and typically work at a "director" level (ie, reports to VP Eng) in a small company.&lt;br /&gt;&lt;br /&gt;Some observations from the job search:&lt;br /&gt;&lt;br /&gt;o  A surprisingly large number of technology companies use pedantic "employment applications" of the sort one expects to see at Burger King.  An experienced professional has a very different life history than these applications are built for.  One example: they have trivial notions of compensation - they only ask for base salary, without the ability to enter bonus information, profit sharing, stock options, etc.&lt;br /&gt;&lt;br /&gt;2.  I had to rewrite my resume a couple of times to get it right.  I had friends proofread it and this helped greatly.  I maintained a MS Word version of my resume as well as a text version.&lt;br /&gt;&lt;br /&gt;4.  I worked with several recruiters.  Two of them were "active" while the others were duds.  I ended up accepting an offer from a company the most active recruiter found.&lt;br /&gt;&lt;br /&gt;5.  Interviewing is a skill that needs practice.  I blew my first couple of phone interviews until I analyzed them and realized I talked too much about my last company and not enough about what I could do for them.  A good interview is where you ask more questions than the interviewer.&lt;br /&gt;&lt;br /&gt;6.  Again with interviewing: I accepted a couple of "practice" interviews so I could hone my interview technique.&lt;br /&gt;&lt;br /&gt;7.  A couple of interviews involved writing code in front of the interviewer.  I did well here, but I always hated this practice, especially for senior people.  I always preferred offline coding tests to scrawling code on paper in front of someone trying to play gotcha.  More on this later...&lt;br /&gt;&lt;br /&gt;Anyway, enough of the job search.  More on it later...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-3394046588474183876?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/3394046588474183876/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=3394046588474183876' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/3394046588474183876'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/3394046588474183876'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/08/adventures-in-job-hunting.html' title='Adventures in job hunting...'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-1788321927491888651</id><published>2008-06-13T11:15:00.000-07:00</published><updated>2008-06-13T11:27:13.798-07:00</updated><title type='text'>More weight loss info...</title><content type='html'>My blog is in serious danger of turning into a "health" blog, but anyway...&lt;br /&gt;&lt;br /&gt;I just lost my 50th pound and crossed Major Milestone #2.  I had to increase the intensity of my workout to keep the calorie burn the same.  My elliptical reports the calories burned, and they were going down as I lost weight even though the time and resistance was the same.  I upped the resistance and increased the time a bit to get back to the calorie goal.  &lt;br /&gt;&lt;br /&gt;A crazy idea of mine is based on reading that many people lose weight to a point and hit a stubborn resistance point.  I wonder if it isn't due to their workout burning less calories than it was due to their own weight loss; the math behind weight loss is quite unforgiving and once you hit an equilibrium point where calories burned equals calories eaten, you'll quit losing weight.  This is why I'm trying to keep the calorie burn up.&lt;br /&gt;&lt;br /&gt;I'm only using the calorie goal as a measurement on the elliptical.  It's only interesting for the changes over time.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-1788321927491888651?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/1788321927491888651/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=1788321927491888651' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/1788321927491888651'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/1788321927491888651'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/06/more-weight-loss-info.html' title='More weight loss info...'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-1429564139712140607</id><published>2008-05-09T12:47:00.000-07:00</published><updated>2008-05-09T12:56:42.445-07:00</updated><title type='text'>Weight loss update...</title><content type='html'>I just passed Magic Number 2 in my weight loss efforts.  Things are rather bumpy, and weight loss appears to be a sort of "step function", but my homemade plan of increased exercise, less carbs, and no junk food appears to be working well.&lt;br /&gt;&lt;br /&gt;My plan is as follows:&lt;br /&gt;&lt;br /&gt;Lots of exercise; 3 90 minute sessions on my cross-trainer per week, and two walks of at least 5 miles per week.  Usually, these are just walks around the neighborhood, but we often do big "bonus" walks or hikes where we go somewhere far...&lt;br /&gt;&lt;br /&gt;Eat less junk; my only snacks now are sliced carrots (with no dip).  These fill the stomach but aren't otherwise terribly interesting.  This is the main "will power test" part of the plan.&lt;br /&gt;&lt;br /&gt;Reserve good and interesting food for occasions.  I love ice-cream, so we now have an ice-cream night once every two weeks.  And we only have really good ice cream.  Same with beer (which has a lot of calories and carbs): only a bit of good beer a couple times per week.&lt;br /&gt;&lt;br /&gt;Otherwise, we eat a basically homemade Asian diet; we've cut down on the rice and noodles and increased the meat and veggies.  &lt;br /&gt;&lt;br /&gt;Other things; we take our lunches to work and eat fast food extremely rarely.  We do go out to restaurants, but try to be more careful than we used to be.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-1429564139712140607?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/1429564139712140607/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=1429564139712140607' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/1429564139712140607'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/1429564139712140607'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/05/weight-loss-update.html' title='Weight loss update...'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-5696186295860882893</id><published>2008-04-19T18:45:00.001-07:00</published><updated>2008-04-19T18:54:54.571-07:00</updated><title type='text'>Are the super-rich who advocate taxes really altruistic?</title><content type='html'>With Obama's San Francisco adventure on &lt;a href="http://www.zombietime.com/obama_visits_billionaires_row/"&gt;Billionaire's Row&lt;/a&gt;, there's been a lot of discussion about "altruistic billionaires".  With guys like &lt;a href="http://business.timesonline.co.uk/tol/business/money/tax/article1996735.ece"&gt;Warren Buffett&lt;/a&gt; and other leftish billionaires advocating tax increases, one may well think they're doing it out of a spirit of altruism.&lt;br /&gt;&lt;br /&gt;And maybe some, or even most, of them are.&lt;br /&gt;&lt;br /&gt;But one point about these guys is that tax increases won't affect them or their lifestyles.  They're &lt;span style="font-weight:bold;"&gt;already rich&lt;/span&gt;.  In the US, taxes are on cash flow, not wealth, so even a massive income tax increase won't affect these guys' lifestyles in the least - while advocating tax increases will definitely enhance their "man of the people" street cred with the Davos crowd.  &lt;br /&gt;&lt;br /&gt;One other thing about guys like Buffett: while he may advocate higher tax rates, one can be certain he'll avail himself of the best tax lawyers on the planet to minimize his own tax bill.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-5696186295860882893?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/5696186295860882893/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=5696186295860882893' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/5696186295860882893'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/5696186295860882893'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/04/are-super-rich-who-advocate-taxes.html' title='Are the super-rich who advocate taxes really altruistic?'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-7507246114269238266</id><published>2008-03-27T12:12:00.000-07:00</published><updated>2008-03-27T12:36:52.928-07:00</updated><title type='text'>Annoying "faux-official" sales pitches</title><content type='html'>We just refinanced our house, and I've been getting a steady stream of annoying "faux-official" marketing pitches for "mortgage protection insurance".  These lovely scams are massively overpriced life insurance that pays off your mortgage if you die.  The fun part is they're way more expensive than simply getting non-earmarked term life for the mortgage amount, but I digress...&lt;br /&gt;&lt;br /&gt;Anyway, these guys are a part of an annoying trend of "official looking" direct mail sales pitches.  It's quite obvious that they're sales pitches once you read them, but they're official-looking enough that they make it in the house instead of getting tossed immediately into recycling.&lt;br /&gt;&lt;br /&gt;One that actually got me was a magazine renewal pitch.  It happened to be for &lt;a href="http://economist.com"&gt;The Economist&lt;/a&gt;, which I subscribe to, and which was coming up for renewal anyway.&lt;br /&gt;&lt;br /&gt;I'm vastly more careful now...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-7507246114269238266?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/7507246114269238266/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=7507246114269238266' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/7507246114269238266'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/7507246114269238266'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/03/annoying-faux-official-sales-pitches.html' title='Annoying &quot;faux-official&quot; sales pitches'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-2221596937084679740</id><published>2008-03-20T18:09:00.000-07:00</published><updated>2008-03-20T18:26:04.445-07:00</updated><title type='text'>My Tax Tweaks</title><content type='html'>If I were God-Emperor, I'd do the following with taxes:&lt;br /&gt;&lt;br /&gt;o  I'm not sure about the "Fair Tax", but I do like consumption taxes over income taxes in general.  I'd like to see more consumption and less income taxes over time.&lt;br /&gt;&lt;br /&gt;o  I'd have a fairly high new gas tax.  This would strengthen the dollar by reducing oil imports, and would make it clear that gas is not going to get any cheaper, so people should react accordingly.  You can still buy a big SUV for pulling your boat, but you probably don't want to use it for your primary commute vehicle.&lt;br /&gt;&lt;br /&gt;o  Since in most American cities, working people still have to drive, I'd have a front-loaded reduction in payroll taxes.  So, for example, if the gas tax produces $2K per worker, the first $2K in payroll taxes, or payroll taxes on about the first  $26K of income, would be skipped.  &lt;br /&gt;&lt;br /&gt;This reduction would be dynamic and would probably go down over time as people use less gasoline.&lt;br /&gt;&lt;br /&gt;o  I'd eliminate corporate tax and have corporate dividends taxed at the income tax rate.  Corporate tax is simply passed through to consumers in the form of higher prices, although reducing it is easy to demagogue as a givaway to "corporate America".  Also, one of the reasons the dollar is weakening against the Euro is Europe is reducing corporate taxes.&lt;br /&gt;&lt;br /&gt;o  I'm not sure what to do about capital gains.  If you eliminate corporate tax and corporations don't pay dividends, you need a way to capture the part of a gain in a stock price that is due to undistributed earnings.  But you also want something that's easy to account for and doesn't result in a double-tax (ie, the company saves up a bunch of money and then has a dividend.)&lt;br /&gt;&lt;br /&gt;At the end of the day, I like the idea of the "Fair Tax", but I'm not sure its implementation is workable...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-2221596937084679740?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/2221596937084679740/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=2221596937084679740' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/2221596937084679740'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/2221596937084679740'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/03/my-tax-tweaks.html' title='My Tax Tweaks'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-5089214072264577492</id><published>2008-03-18T13:31:00.000-07:00</published><updated>2008-03-18T14:36:54.934-07:00</updated><title type='text'>The "pain threshold" of taxes...</title><content type='html'>OK, I'll admit it.  I'm "greedy" and am driven, at least to an extent, by a desire to lower my family's taxes.  My "pain threshold" on taxes is definitely exceeded and I'm actively interested in political approaches that lower my taxes and not positively disposed to those that would raise them.&lt;br /&gt;&lt;br /&gt;My wife and I are professionals in our late 30s and early 40s, with a household income that would put us well out of most definitions of "middle class".  We are probably "middle class millionaires" in that we drive old cars, live in a small house, and aren't visibly "rich" if you saw us walking on the street.&lt;br /&gt;&lt;br /&gt;Since we have a high income and live frugally, our tax bill for Federal, State, Social Security, and Medicare taxes is nearly double our total living expenses.  (I'm not counting sales taxes, gas taxes, or other taxes here - just the obvious ones.)&lt;br /&gt;&lt;br /&gt;Also, our "perceived pain" on taxes is high because while I'm well-paid for what I do, my field - software - isn't noted for job security.  I'm very good at what I do, and take the view that job security is best in small companies where a good developer can visibly "shine", but I doubt that I'd ever work anywhere for more than a few years.  I fully expect that I'll have to execute a major career change at some point in the next five to ten years, and that career change will result - at least temporarily - in a significant drop in income.&lt;br /&gt;&lt;br /&gt;Another part of the "pain" is the notion that higher taxes would delay our retirement.  Since there's no pension in my future, and SS will certainly have to be reduced (I'm greedy, but not greedy enough to want the country bankrupted to provide me with a comfy retirement on the public dime), I'll have to retire nearly completely on our savings.  Given that taxes versus savings is a zero-sum game at the micro level, higher taxes equals lower savings equals later retirement.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-5089214072264577492?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/5089214072264577492/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=5089214072264577492' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/5089214072264577492'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/5089214072264577492'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/03/pain-threshold-of-taxes.html' title='The &quot;pain threshold&quot; of taxes...'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-8439746819716608742</id><published>2008-02-13T16:18:00.000-08:00</published><updated>2008-02-13T19:08:01.172-08:00</updated><title type='text'>The Obama Bubble, and the Dot-Coms...</title><content type='html'>One of my theories about the Dot-Com Bubble of the late 1990s was that, because the internet and web were clearly a new and important change in the world, but one that was extremely poorly understood at the time, there was an almost rational argument for the sky being the limit for anything associated with the internet in, say, 1998.  After all, who could possibly predict who wins and who loses?  Maybe it'll be email, maybe it'll be search, maybe it'll be selling dogfood on the web, maybe web TV, etc, etc.&lt;br /&gt;&lt;br /&gt;By 2000, the business layout of the Internet began to be more visible, the winners and losers both began to be known, and the general outlines of the markets for the winners began to take shape.  And like any radically new thing, most plays ended up being losers, or at least ahead of their time - and therefore losers in a business sense.  And thus the air is let out of the balloon.&lt;br /&gt;&lt;br /&gt;Oddly, the massive predictions for the Internet and commerce using turned out to be true, if a couple years too early and typically in the wrong places...&lt;br /&gt;&lt;br /&gt;Anyway, this relates to Obama because his campaign, to this point, looks an awful like a dotcom business plan from 1998: a whole lot of "audacity", change-the-world stuff, and the political equivalent of a growth hockey-stick that shows how, somehow, he'll magically transform life as we know it.  &lt;br /&gt;&lt;br /&gt;This will work for awhile, possibly long enough for him to get past Hillary.  But he's beginning to discuss actual policies, which will inevitably produce discussion and informed debate based on numbers.  Will this lead to a popping of the "Obama bubble", or will he go through a brief moment of pain and end up sticking around because his policies make sense?&lt;br /&gt;&lt;br /&gt;We'll see...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-8439746819716608742?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/8439746819716608742/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=8439746819716608742' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/8439746819716608742'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/8439746819716608742'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/02/obamas-new-danger-and-dotbomb-analogy.html' title='The Obama Bubble, and the Dot-Coms...'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-4806463931461178692</id><published>2008-02-06T15:09:00.000-08:00</published><updated>2008-02-06T15:25:40.623-08:00</updated><title type='text'>McCain shouldn't make Huckabee his running mate</title><content type='html'>It looks like Senator McCain's going to be the Republican nominee for President.  And he looks like the person most likely to beat the Democrat in November.&lt;br /&gt;&lt;br /&gt;But he may well toss that away, by making Mike Huckabee his running mate.&lt;br /&gt;&lt;br /&gt;This move would lose him the election.  Huck hasn't gotten good numbers outside the South, and is even more radioactive to secular economic conservatives than McCain is to culture-cons.  Huck made a strategically wise choice to champion the Fair Tax in his Presidential run - it gave him a boost as a tax-fighter that he doesn't merit based on his record - but his governing history in Arkansas was basically pro big-government.  And, while secular Americans will vote for a religious President, Huck is the sort of culture warrior and "religious professional" that scares away anyone who isn't an evangelical Christian.  As a standalone Presidential candidate, my guess would be that Huck would be hard-pressed to get over 35% of the vote nationally, and he'd be unlikely to win any states outside the South.&lt;br /&gt;&lt;br /&gt;For me, Huck is everything I dislike about Bush - "big government conservatism" - and has none of the elements that I liked: Bush's steadfastness in the War on Terror.&lt;br /&gt;&lt;br /&gt;Just going by life expectancy, McCain has a 50-50 chance of dying in office, and we'd have a President Huckabee.  The prospect of this would be enough to send many independents to Hillary or Obama.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-4806463931461178692?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/4806463931461178692/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=4806463931461178692' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/4806463931461178692'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/4806463931461178692'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/02/mccain-shouldnt-make-huckabee-his.html' title='McCain shouldn&apos;t make Huckabee his running mate'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-5894691030416152591</id><published>2008-02-03T11:58:00.000-08:00</published><updated>2008-02-03T12:16:25.931-08:00</updated><title type='text'>The Great Chinese Blizzard of 2008</title><content type='html'>The biggest underreported story of 2008 is the &lt;a href="http://www.reuters.com/article/worldNews/idUSPEK11184620080130?feedType=RSS&amp;feedName=worldNews"&gt;Great Chinese Blizzard&lt;/a&gt; of 2008.  Basically, what happened is a large series of snow storms, ice storms, and general unusual cold weather that has persisted for the past couple of weeks throughout the heavily populated areas of eastern China, from Beijing to Guangzhou.&lt;br /&gt;&lt;br /&gt;The problem for China is many of these places rarely get snow - the winter is China's dry season - and when they do, they usually get an inch or so that goes away quickly.  Shanghai's weather is similar to Atlanta, GA, although a bit colder.  Guangzhou's weather is similar to Miami's.  Another big problem has been big ice storms, particularly in Hunan Province, of the sort that occasionally hit Portland, Ore or Seattle, WA in several big cities in central China; pictures from the affected cities show several inches of ice, which is playing havoc with the power grid and telecoms.  According to Chinese media reports, many of these cities have been without power for over a week, and are running out of food.  Also, it hasn't warmed up so the ice isn't melting.  This is similar to the ice storms that hit the American Northeast a few years ago; recall that many rural areas didn't have power for a couple of weeks.&lt;br /&gt;&lt;br /&gt;And to top it off, this happened during the run up to Chinese New Year - basically Christmas, Easter, and Thanksgiving rolled into a single family-centric holiday - when hundreds of millions of people try to go home to be with their families.  The main media accounts have focused on the Guangzhou train station, which has had several hundred thousand people camped outside waiting for trains that aren't running due to ice and snow.  The problem is particularly bad in Guangzhou since that area is where much of China's export manufacturing is located, and tens of millions of peasants have moved there to work.  Also, Guangzhou is the southern terminus of the main north-south rail line, which has been open and closed off and on as snow and ice are dealt with further north.&lt;br /&gt;&lt;br /&gt;Things appear to be slowly recovering there, but it looks to be a cold, dark, lonely New Years in China this year for many.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-5894691030416152591?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/5894691030416152591/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=5894691030416152591' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/5894691030416152591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/5894691030416152591'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/02/great-chinese-blizzard-of-2008.html' title='The Great Chinese Blizzard of 2008'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-7570565228017390923</id><published>2008-02-02T14:25:00.000-08:00</published><updated>2008-02-02T14:28:36.551-08:00</updated><title type='text'>Just saw a Tesla</title><content type='html'>I just saw a &lt;a href="http://www.teslamotors.com/design/exterior_colors.php"&gt;Tesla&lt;/a&gt; driving near Old Middlefield Road in Mountain View.  Very cool...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-7570565228017390923?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/7570565228017390923/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=7570565228017390923' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/7570565228017390923'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/7570565228017390923'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/02/just-saw-tesla.html' title='Just saw a Tesla'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-3091633199284741153</id><published>2008-01-23T13:14:00.000-08:00</published><updated>2008-01-23T13:17:44.113-08:00</updated><title type='text'>Just did a mortgage refinance</title><content type='html'>from our old 30 year @ 5.875% to a 15 year @ 4.675%, with no points.  Our payment will go up by about $300/month, but our mortgage term will be shorter by 8 years and our interest is over 1% lower.  We're doing an "even-steven" refi; no cash out or cash in (although we'll probably get a bit of cash at closing depending on the timing of the closing)&lt;br /&gt;&lt;br /&gt;We figured we aren't going to do much better interest-rate wise, so we decided to pull the trigger.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-3091633199284741153?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/3091633199284741153/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=3091633199284741153' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/3091633199284741153'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/3091633199284741153'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/01/just-did-mortgage-refinance.html' title='Just did a mortgage refinance'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-4807418706332869698</id><published>2008-01-20T21:57:00.000-08:00</published><updated>2008-01-20T22:05:19.686-08:00</updated><title type='text'>Managing one's software career</title><content type='html'>Today, I was at a party with some friends, and one of the people there had been recently laid off from his job at HP.  At the end of the day, his problem was he tried to stay a "web generalist", and ran out of gas trying to stay on the infinite "skilz treadmill".  He's walking away from programming...&lt;br /&gt;&lt;br /&gt;I've chosen a different career direction: getting to a high level in an extremely useful, if old, programming language - C - and mastering a relatively obscure application domain.  A useful side effect is I don't have to retrain every two or three months or master yet another script language.  I don't love syntax enough to play games with it over and over, and would much rather learn new algorithms and genuine new approaches to hard problems over mastering yet another bunch of syntactic gobbledygook.  &lt;br /&gt;&lt;br /&gt;My career pledge is to avoid any programming that involves a "color".  It's worked well so far.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-4807418706332869698?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/4807418706332869698/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=4807418706332869698' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/4807418706332869698'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/4807418706332869698'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/01/managing-ones-software-career.html' title='Managing one&apos;s software career'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-4262129552011951664</id><published>2008-01-18T13:30:00.000-08:00</published><updated>2008-01-18T13:43:36.318-08:00</updated><title type='text'>Losing weight...</title><content type='html'>Yesterday, I hit Magic Number #1 on my attempt to lose a bunch of weight.  Unfortunately, programming for a living isn't exactly something that works up a physical sweat, so I've accumulated rather too many pounds over the years.&lt;br /&gt;&lt;br /&gt;Fortunately, I'm still quite healthy due to exercising on our crosstrainer machine, walking, and backpacking trips, but I'm still well above where I should be.  I don't put much stock in silly &lt;a href="http://en.wikipedia.org/wiki/Body_mass_index"&gt;BMI&lt;/a&gt; numbers, but I still want to "get down" by a fairly significant amount.&lt;br /&gt;&lt;br /&gt;Anyway, Magic Number #1 is about 25 pounds less than my "zenith weight".  Magic Number #2 is about 15 pounds more.  Ultimately, my target weight is about 30 pounds less than Magic Number #2.&lt;br /&gt;&lt;br /&gt;My big changes: &lt;br /&gt;&lt;br /&gt;1.  Eating less rice.  My wife is Chinese, and we eat a basically (home-made) Chinese diet, with lots of rice and noodles.  We've done what amounts to a "mini-Atkins" by upping the green veggies and downsizing the rice and noodles in our meals.  We eat half the rice we used to eat.  My wife now uses various stringy veggies like bean sprouts as a partial substitute for noodles in soups.&lt;br /&gt;&lt;br /&gt;2.  Less snacking.  I used to always have a bag of corn chips handy.  It's now gone.&lt;br /&gt;&lt;br /&gt;3.  A bit more exercise.  For my three times per week on the cross-trainer, I've upped the workout from 1 hour to 1 hour 15 minutes (+ 10 minutes cooldown).  (We also walk file miles twice per week)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-4262129552011951664?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/4262129552011951664/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=4262129552011951664' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/4262129552011951664'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/4262129552011951664'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/01/losing-weight.html' title='Losing weight...'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8381936.post-3579954293588705580</id><published>2008-01-08T13:24:00.001-08:00</published><updated>2008-01-08T13:37:03.733-08:00</updated><title type='text'>Thoughts on emergency kits</title><content type='html'>Some random thoughts on emergency kits:&lt;br /&gt;&lt;br /&gt;1.  As a Californian, my main "emergency" would be earthquakes.  Earthquake emergency kits are somewhat different from most other kits, although they would tend to have the same "stuff" in them.  The biggest difference is that an earthquake emergency kit probably should be in the back yard, away from the house.  Since earthquakes can destroy houses, having an emergency kit in the garage or closet may not be useful.  We keep ours in a small shed in our backyard.&lt;br /&gt;&lt;br /&gt;2.  The emergency kit contents would include the usual: a week's worth of MRE-type food, water (we keep 25 gallons and rotate it every six months), warm-weather clothes, blankets, a first-aid kit, candles, hand-crank flashlights and radios, batteries, etc.  Good lists can be found in numerous places online.  One other thing that's good to have is a shovel so you can dig an emergency latrine or do other emergency duties that involve moving dirt.&lt;br /&gt;&lt;br /&gt;3.  A temporary place to sleep is also useful.  We keep our camping and backpacking gear with our emergency kit so we can have tents and sleeping bags if we need them.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8381936-3579954293588705580?l=foobarista.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://foobarista.blogspot.com/feeds/3579954293588705580/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8381936&amp;postID=3579954293588705580' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/3579954293588705580'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8381936/posts/default/3579954293588705580'/><link rel='alternate' type='text/html' href='http://foobarista.blogspot.com/2008/01/thoughts-on-emergency-kits.html' title='Thoughts on emergency kits'/><author><name>Foobarista</name><uri>http://www.blogger.com/profile/17695839524769425977</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='04429552456030627098'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry></feed>