Auto Ads by Adsense

Booking.com

Thursday, May 22, 2014

Review: New York Times Web + Tablet Subscription

After not having a great time on the Kindle subscription to the New York Times, I tried the web + tablet subscription on the $1 trial plan. I tried using the subscription on both Windows and Android tablets.

The Android app was frustrating. For instance, occasionally while reading an article the app would refresh. That's OK. But it would refresh back to "Top Stories", losing your place in the article and your entire context. Navigation was slow, and the app was slow to load data. Using the web browser on my Nexus 7 to visit nytimes.com was also slow, and the website continuously forgot my login, forcing me to login multiple times. The plus was the the android app made it extremely easy to share to Google+, Facebook, etc. The minus was that the android app made it impossible to copy and paste quotes from the article I was reading, which was also frustrating.

The Windows metro app was much less frustrating as a reading experience. It never refreshed randomly, always loaded quickly. Navigation was a bit unintuitive as you had to swiped down from the bottom or top to switch sections, but that's apparently a new UI gesture unique to Windows tablets, so I just had to get used to it. The minus, however, was severe. You absolutely couldn't share articles from the Windows app to Google+ or Facebook. What a crock.

Ultimately, however, the biggest problem with the New York Times is that you always feel like you're paying for yesterday's news. I almost always got better news faster from other sources (usually blogs or topic-specific websites), and for analysis, blogs seem to provide more intelligent and cogent analysis written by people smarter than English majors.

As a result, I've canceled my subscription and switch to getting news on the internet.

Wednesday, May 21, 2014

Review: NOS4A2

NOS4A2 is Joe Hill's Stephen King pastiche novel. That's not how it's sold as, but that's how it struck me. It could be because I haven't read Joe Hill before, or it could be that I've always associated this style of supernatural horror with Stephen King.

The story revolves around Vic "The Brat" McQueen. As a child, she discovers that her bicycle is no mere symbol of freedom, but can also carry her places. By focusing her mind on what she wants to find, she can call up "The Shorter Way Bridge", which connects her to other places near and far, which invariably lets her locate things previously lost. Early on in the novel, she meets up with Maggie Leigh, a librarian in Iowa, who teaches her the rules of supernatural magic as applies to Joe Hill's world.

In the mean time, supernatural serial killer Charles Talent Manx has been collecting children and their mothers for nefarious purposes. It is inevitable that the two characters will collide, and of course they do.

The nature of the collision surprised me, though it shouldn't have, given the amount of foreshadowing provided at the start of the novel. McQueen loses her bike, and then rediscovers it as senior in high school, looking for trouble. Her first encounter with Manx leaves her emotionally scarred and Manx in prison.

Over the next few years, McQueen's life falls apart as she makes one bad decision after another. Then Manx returns and goes after McQueen and her son. The rest of the novel feels familiar, if not quite 100% predictable.

There are a few great ideas in this book. One of them is McQueen's "Search Engine" series of puzzle books for children. It's such a compelling idea that I'm surprised no one has executed it in real life. Another is McQueen's husband. In fantasy literature, we usually get spouses who don't understand or don't believe in the supernatural, deepening the protagonist's sense of isolation and desperation. Instead, McQueen's husband is a comic book geek and motorcycle mechanic who is the first person to believe her story and not declare her insane. It's a refreshing change from the usual stereotype and I thoroughly enjoyed that.

The climatic scenes of the book are compelling reading, if mostly unbelievable. I do understand Hill's desire to put McQueen through hell so we can sympathize with her, but unfortunately, the amount of physical damage McQueen sustains, given her past characterization, leads the reader to think that there's no way she could have gone on. It sounds like a minor nit, but at that point it felt as though McQueen was no longer a character but a puppet being directed by the author.

In any case, I'm not sure I can recommend this book. I picked it up for $2.00 at the Kindle store, and at that price I got my money's worth as far as summer reading is concerned. It's not worth it at $9.99. On the other hand, if you've never been exposed to this style of supernatural thriller, this is a perfectly fine and competent introduction to the genre, though perhaps Christine or Duma Key would be better.

I'll leave you with a quote from the novel to help you decide:
“Chris and me never exactly killed ourselves spoiling you, Vicki. I was afraid to. Now I don’t even think a parent can. Spoil a child, I mean. I didn’t figure nothing out until it was too late to do me any good. I never seemed to have much of a feel for parenting. I was so scared of doing the wrong thing I hardly ever did the right thing.” (Kindle Loc 3460)

Sunday, May 18, 2014

Review: A Troublesome Inheritance

A Troublesome Inheritance is a book about evolution and race. It's a thought provoking book and well-worth reading, though I found it disturbingly plays into stereotypes about races and individuality.

To begin with, the author makes what I consider are uncontroversial claims:

  1. Human evolution has not stopped, and evolution can work rapidly over as few as 20-30 generations.
  2. Human evolution and civilization goes hand in hand. For instance, in a large scale urbanized civilization, violent criminals are heavily punished, leading to aggression being bred out of the gene pool in relatively short order. In other words, humans have domesticated themselves over time.
  3. There's a strong relationship between geography and the type of civilization that evolves.
Unfortunately, he also makes several claims that I find difficult to believe, though he asserts that his notes at the end of the book provide research results that are strong.
 
For instance, he claims that the rise of the propensity for hard work, discipline and savings is due to wealth. Wealthy people during medieval times produced more surviving children. Since not all children can stay in the wealthy tier, some must therefore descend into the lower tiers, thereby introducing their genetic propensity for hard work, thrift, non-violence, and literacy into the rest of the gene pool, where they would later dominate. The evidence for this would have to be very strong before I can believe that it's a significant part of evolution during modern times. For instance, a lot of wealth isn't due to hard work, but being at the right place at the right time. This connection between wealth and all those factors might not be as strong as the connection between wealth and political/inter-personal savviness.

The big stretch in this book is when he claims that as a result of the cultural forces at play, the Western nations therefore evolved stronger tendencies towards novelty seeking, while the Asians evolved stronger tendencies towards conformity. This sneakily promotes some fairly obvious stereotypes again, with very little evidence. We simply don't know enough about genetics at this point to understand how personality is molded, and which parts of personality is determined by the environment, and which parts are what you are born with.

Now, there are some other claims that I think are quite believable. For instance, why have there been a preponderance of Jews in the sciences and other intellectual fields? Why are so many major award winners (Nobel prizes, etch) Jewish? There's quite a bit of evidence that there's been quite severe selection in the Jewish gene pool for IQ, which has also come along with a number of disadvantages such as genetic diseases unique to that race. This is entirely believable, especially since some of the genes creating those genetic diseases have also been linked to higher IQ.

The net result is that while I think this book is worth reading, especially in his debunking of say, Guns Gems and Steel, some of its wilder claims are a bit hard to believe. I can certainly see some politically minded folks seizing on this book as an opportunity to advance their causes. I fully expect certain sections of this book to be debunked in later research. But I'd recommend this book for everyone to read, bearing all these caveats in mind.

Thursday, May 15, 2014

Notes for New Cyclists

Arturo will be joining me this year on the Tour of the Alps. Since he wasn't a serious cyclist prior to this Saturday, I had an opportunity to see first hand what techniques that experienced cyclists know that new cyclists don't necessarily find intuitive.
  1. Easing up on a shift is something that most experienced cyclists do. It's hard to explain, but I found that "go slightly faster than usual and then ease up as you shift" came across much better than "ease up as you shift." Speeding up a bit is useful because on a climb, you don't want to lose so much momentum that you have to put a foot down, and you tend to need to shift just as you hit a grade change.
  2. Quick releases on brake levers are not obvious.
  3. When the chain drops, the best way to put the chain back is not with the finger, but with a stick. If a stick is not around, use leaves or grass so your fingers don't get dirty.
  4. Don't have a death grip on the handlebars. Lean on the bars when you climb, don't necessarily grip them.
  5. It's possible to shoot photos on the bike while moving. But don't do it until you're very comfortable with riding and with the bike. And don't try it with a phone that relies on a touch screen!
  6. Kool-Stop Salmon brake pads. Enough said.

Wednesday, May 14, 2014

Field Test: Dell Venue 8 Pro 32GB

On my recent Pigeon Point qualifier, I got a chance to field test the Venue 8 Pro in an environment where I had no other choice of computing device. It was a cycling trip, so weight and space were both at a premium, eliminating the Surface Pro as a choice even if it had been an option. I could have brought the basic Kindle or the Venue 8 Pro, but the prospect of being able to upload rides and run Lightroom while at Pigeon Point won out. especially since we knew that Pigeon Point had wifi internet and the Venue 8 Pro had a Kindle app.

The device was certainly light enough and compact enough that it fit in my saddlebag with no problems. The battery life on the Venue 8 Pro is so good that I don't even bother turning it off for the 6 hour ride to the lighthouse. It showed up at the other end with still a 99% battery life. The first test was uploading tracks to Strava. I used an OTG cable and a mini-USB cable to connect the Venue 8 Pro to the Garmin Edge 800. The interesting thing about this tablet is that it comes with 2 web browsers: the "Modern" IE, and the Desktop IE. The two are different beasts, despite having the same name! The "Modern" IE, for instance, doesn't support plugins such as the Garmin communicator, so you must use the desktop IE, which is a real web-browser, for all intents and purposes. With that in place, the upload went without a hitch. The only complaint I have for this process was that the Venue 8 Pro, like any real PC, charged the Garmin while it was uploading data. This drained the Venue 8 Pro's battery sufficiently in such a fashion that I had no idea whether the battery life at the end of the evening at 49% was due to excessive charging of the Garmin Edge or because of my use of Lightroom.

Lightroom demands lots of storage, especially if you're going to be uploading 20MB pictures from the Sony RX100 during a long tour. As a result, I opted for a 64GB micro-SD card on the Venue 8 Pro for storage. At $39 for a UHS-1 on Amazon, this won't break the bank is would provide a reasonable backup for all your photos while you're touring. However, what I didn't account for was that the write speed to micro-SD storage on the Dell Venue 8 Pro was slow. Basically, you cannot expect better than 8MB/s write and 23MB/s read from even a UHS10 card. For me, that meant that on top of the Lightroom and OS overhead, it was taking about 30s per photo to upload from the camera to the tablet. And yes, you need the above mentioned OTG cable as well as a memory card reader. Once on the tablet, due to the write speeds to storage mentioned, do not expect snappy performance out of lightroom. In particular, trying to do photo editing while importing can be quite frustrating, as is manipulating lightroom with a finger. With a stylus, you can at least get some precision without toting a mouse along. Being able to run an ND grad filter on photos output by the RX100 is unique to the full Windows 8 tablets, and since your best photos take place at sunrise or sunset, I expect this distinguishing feature to be something that most serious photographers would consider essential.

One unexpected hitch came with exporting the photos. There's no easy way to select multiple photos with the finger and then export, so what I did was to export one photo at a time. Since Lightroom was happy to queue up my exports, this was surprisingly fast and easy once I had the photos filtered in library view. Again, writing the exports took time, but it was easily done in batch mode and once it was done I could upload to Facebook in a batch.

Skype also has both a "Modern" UI and a desktop version. The "Modern" version here worked fine, so I didn't bother with the desktop. However, the bandwidth at the hostel was so low that I couldn't tell whether the video was pixelated because of the bandwidth or whether I ran into a limitation of the tablet. Given that the machine was hardly CPU bound, I'd be inclined to blame the bandwidth.

My friend the Google employee was concerned that I'd turned to the dark side (though I'd always been a Windows user, even back when I was working for Google), but then I showed him the "Modern" IE and asked him to try out web browsing on the device. 3 web pages later, he was impressed. The tablet definitely runs circles around existing Android tablets for web-browsing.

I didn't get a chance to use the Kindle app, but I doubt if I'd have any problems with it, either reading, downloading, or purchasing.

All in all, if I was going on a self-contained cycle tour in Europe and had to carry everything in my saddlebag, there are only 4 pieces of electronics that are worth carrying (my CPAP machine doesn't count, since you mostly aren't a CPAP user). The Garmin Edge 800, a phone, a camera, and this tablet. Obviously, the tablet is the most optional of the devices, but it substitutes well enough for a laptop and any other tablet doesn't come close to the functionality of this tablet while maintaining a relatively low weight. I do wish that the device had better write speeds to the microSD card, but on tour, I'd simply just run the import overnight and deal with the editing the next day.

All in all, I'd recommend this tablet to a cycle tourist, and if Dell or Microsoft came up with a tablet with better write performance to secondary storage (or a reasonable price on more primary storage), I'd advice a cycle tourist to check those out.

Tuesday, May 13, 2014

Review: Brother ADS-2000

I decided to try for a paperless office a couple of years back. The idea is to scan everything that comes in the mail, OCR it making it searchable, and then shredding or discarding the mail. You can do this with a flat-bed scanner, but you'd die of boredom feeding the thing one sheet at a time. The correct solution is a high speed sheet-fed scanner. We chose the Brother ADS2000.

The device is compact, about the size of a fax machine. It comes with a few accessories but we almost never used them. I've successfully dumped about 100 pages at a time into the ADS2000, and the scanner can do them at very high speed. The machine came with a ton of software, but I lost the disk pretty early on, so I pretty much only scan using my copy of Adobe Acrobat, which does the OCR after scanning, albeit at a slow, single-threaded pace.

The machine does jam, especially if the documents you feed it are old or pressed together hard because they got stuck together for one reason or another. But by and large, the machine works, and my son has abused it a lot but it still keeps on ticking. If you're dedicated to going paperless, I'd definitely recommend the Brother ADS2000.

Monday, May 05, 2014

Review: Nokia Lumia 521

As previously mentioned, I've settled on the Nokia 521 as my European phone for the year. I ended up using it earlier than expected, however, as I noted that our Ting phone bill rising due to unexpectedly high data charges from my Galaxy Nexus. Since I had a prepaid T-mobile SIM lying around, I deactivated my Galaxy Nexus, went to the T-mobile store, and moved the SIM account into a micro-SIM to install it onto my Nokia.

The move came at the right time, as we ended up going to Yosemite for a few days. Unlike Google Maps, Nokia's HERE mapping and navigation applications work even without a data plan. If you've ever used Google Maps' offline feature, you know what a crippled application it is when bereft of a data plan. You can't search, you can't re-route when you go off course, and god help you if the phone ever rebooted in the middle of the drive. Well, Nokia's HERE Maps and navigation applications are a breath of fresh air compared to that. Even in the middle of a National Park (where no data availability is to be had for any carrier), navigation is a cinch and works. To my surprise, search, and POI (point of interest) locations like gas stations, etc are also available. I'm impressed and very pleasantly surprised. On top of that, you can even download map prior to leaving the country for foreign destinations.

There are a few glitches, but no more than my Galaxy Nexus had. The one big flaw is bluetooth pairing. For whatever reason, audio pairing (as opposed to phone call pairing) is spotty and requires an explicit connection very time. I have no idea why that is, but there's no way to fix it. Fortunately, the speakers of the Nokia 521 are more than loud enough for navigation purposes.

Speaking of phone calls, Nokia here demonstrates that they really understand how to put together phones that work for voice calling. After years of having gotten used to crappy Samsung calls, phone calls through the Nokia 521 are crystal clear, and the 521 receives far better signals than any other T-mobile phone I'd ever had. I had previously assumed that my home was  a T-mobile dead zone, but the Nokia 521 happily receives and makes phone calls in my home. Either T-mobile's network has improved (unlikely) or Nokia really knows how to make a phone that can make and receive calls.

The battery life is also nothing short of amazing. I'd gotten used to never going out the door with the Galaxy Nexus without also carrying along 2 spare batteries in addition to the extended battery that's already in my phone. I broke that habit with the Nokia 521. Not once did I run out of battery during the course of a normal day, and even when cycling out of cell coverage for a day, the Nokia's battery never dropped past 80%. I couldn't believe my eyes the first time I checked the battery life after a day of riding in the Santa Cruz mountains.

All in all, I'm very happy with this phone as a primary use phone, and when my prepaid minutes run out and I come scrambling back to Ting and the Galaxy Nexus, I'm going to miss the Nokia 521 badly. Highly recommended.

Sunday, May 04, 2014

Review: If You Can: How Millenials Can Get Rich Slowly

If You Can is William Bernstein's financial planning booklet for people starting out in their careers. It is normally $0.99 at the Kindle Store (free today), but you can download it for free from Bernstein's website. At 27 pages long, it is short and can be read in a couple of hours. However, if you actually do do the homework in the book (which only of reading other financial books), the claim is that you will know more than most financial professionals about investing.

The prescriptions in the book are fairly straightforward: save money (at least 15% of your income), pay off all debt, invest in a diversified portfolio (the suggested 33% even splits between domestic stocks, international stocks, and bonds is a fairly good one), learn a bit about finance and financial history, rebalance your portfolio about once a year, steer away from financial professionals who will try to steal your money and only buy indexed funds (preferably Vanguard ones).

Of course, straightforward doesn't mean easy.  Being able to do all of these would qualify you to manage money not just for yourself, but for any one and any institution. Similarly, doing all of the homework assignments isn't easy, since it's actually substantial reading. Here's the reading list:
Bernstein carefully steers away from promoting his own books (which are very good), and leaves out several classics such as A Random Walk Down Wall Street , which are useful but also not as much fun reading as the above list.

In any case, the irony of all teaching is that the people who need it the most won't show up in class, hence the people who need this booklet the most probably won't read this book. But if you're the kind of person who gets asked for financial advice, in the interest of saving your time and your breath (since sadly, this type of advice is more frequently ignored than followed), this is a great little free booklet to point people at so you can talk about more interesting things.

Recommended.

Thursday, May 01, 2014

Review: How to Win Friends and Influence People

How to Win Friends and Influence People is currently $2.99 on the Kindle store. I'd gotten this far in life without reading the book, but a friend of mine told me she used a technique from the book and it worked, though she felt slimy about it afterwards. That's intriguing enough to get me to buy and read the book.

This is a great book, as far as being an effective politician and getting what you want from people goes. Fundamentally, the book is all about helping you tell people what they want to hear, as opposed to what reality is. For example, in one anecdote, the manager of a singer who refused to get on stage simply lied to him over and over again until he did so. In another example, Dale encourages you not to tell people that they are wrong, but to pretend that you could be wrong and asking to check the facts. In certain circumstances, that could easily win you favors, sales, and deals. In other circumstances, it could make you look like an easy pushover and mark, and you will get out-maneuvered by more politically savvy folks, especially if you're an engineer. Dale Carnegie, however, doesn't tell you how to distinguish between those circumstances. For instance, if Galileo had read this book, he might easily have avoided the Roman inquisition. It would have done immense harm to the scientific enterprise, however, so I'm glad the world is not full of people who've read Dale Carnegie's book.

People occasionally ask me for advice on their careers. Given that I'm completely oblivious to office politics, I'm a bad person to ask. But I do refer them to books such as Career Warfare. It's quite clear to me that How to Win Friends and Influence People is also a great book to read if you want to succeed at a large company, where perception is much more important than reality. Keep in mind, however, that if you're an engineer, you're a much worse liar than anyone who's not an engineer, so some of these techniques absolutely will not work for you.

Highly Recommended.

Monday, April 28, 2014

Review: Android Studio

Since helping my wife with her Nutrition Tracker App, I'd had a chance to try both Eclipse and Android Studio for android app development. Both of them run on Windows, my preferred platform, but it didn't take 3 days with Eclipse before I got frustrated with frequent crashing, features not working, and a lousy layout tool. I found Android Studio and downloaded it and soon persuaded my wife to switch to it.

Android Studio is based on IntelliJ IDEA. Back at Google when I was doing Java work, I avoided it like the plague, preferring to stick with Emacs and gtags. That's because Google's Java source base was so big you couldn't possibly load it into IntelliJ on the puny workstations of that time (yes, Google only supplied machines with 2GB of RAM in 2003), and even if it had been possible, those machines would have slowed to a crawl under the load of processing that much code. IntelliJ/Eclipse die-hards were resorting to wacko tricks like subsetting Google's code base so it could load into IntelliJ and then writing plugins into gtags for accessing the rest of the source code. I have no idea what Googlers do today, but my suspicion is that things haven't gotten much better.

For small Android projects like Nutrition Tracker, however, an IntelliJ is just about right. If you're unfamiliar with the Android API, it would supply you with method name completion, tell you which arguments to supply in which order, automagically add imports, allow for automatic refactoring tricks such as moving methods, renaming variables safely, and moving inner classes out of their outer classes, shifting classes between packages, etc. The layout tool helps you avoid having to learn the lame layout XML language, so you can actually try to make things work (as opposed to making things look pretty and usable --- I think Emacs is a great UI, so I have no expertise on those topics).

Android Studio is slow. It's slow to startup, it's slow to compile, and it's slow to run the debugger. A typical edit-compile-debug cycle would take around 10-20 seconds in order to build a tiny app. Note that I'm not complaining about Android Studio's massive use of resources while I'm editing. I think that's entirely appropriate. I want all my 4 cores/8 threads to be utilized in order to make my coding experience faster and more pleasant. I don't even mind the startup, since it doesn't need to happen that frequently, and it's a one time cost. But the Gradle build system is not only a resource hog, but it introduces additional latency into my think-time, so I begrudge every second it's spending traversing dependency graphs instead of actually compiling code. I have no idea why the Android Studio engineers chose a clunky system like Gradle, as opposed to rolling their own and integrating it fully into the IDE. I never want to edit the gradle build files manually, but the system forces me to. What's more, the syntax is really obscure and the documentation is inadequate.

For instance, when doing an android release, the documentation only covers Eclipse. Worse, the documentation lies to you. It tells you to modify your Manifest file, and I did. Until I kept scratching my head as to why that never worked. It turned out that you had to modify the Gradle config, since the Android Manifest XML file was ignored in the presence of Android Studio. Well, that took so much googling around that I can't remember what search term I used to uncover the Stack Overflow answer any more.

The source control integration is also funky. It supports Git, Mercury, and Subversion, but not Perforce. Given that Google uses Perforce internally, I surmise that Google's internal projects do not use Android Studio. This does not bode well, since that will mean that Android Studio's most serious problems (build performance) will most likely never get addressed because its non-existent internal customers will not feel the pain.

For quick and dirty Android projects, Android Studio is probably the best there is. If you're serious about building an Android app, however, my suggestion is that you use Emacs and roll your own build system that's decently fast. Otherwise, the benefits from using an IDE will be swamped by inordinately long compile/edit/debug cycle times. Note that though my machine is old, it's still decently powerful compared to even the fastest rig today, let alone the kind of laptops most "hip" developers favor, so it's unlikely you can solve Android Studio's problems by throwing more hardware at it.

Recommended only for non serious Android projects. It's a great tool for getting started quickly though, so use it to bootstrap yourself into doing Android development if that's one of your goals.

Friday, April 25, 2014

Why it now makes sense to build your own PC

I've always been tempted to build my own PC. I'm no stranger to the tools, since my internship at Geoworks effectively required me to take apart and put together the machine I was given at work. But until recently it made no sense. Machines were increasing in performance significantly, so every 2-3 years it made sense to get a new machine. When you're getting new machines that frequently, it doesn't make sense to build your own, since the beige box vendors can get you much lower prices, and the cost of your time to swap motherboards, CPU sockets, etc., in and out would swamp the ability to bring over your hard drives, etc. Given Moore's law, every 2-3 years you'd have to buy all new hardware anyway!

I recently took a look to see if it was worth replacing my 5 year old desktop. To my surprise, the answer was "no." Looking at the CPU benchmarks, it looks like a "modern" i7-4770 would clock in at less than twice the performance of my 5 year old i7-920. In the old days, 5 years would have been enough to get at least a quadrupling of performance. Not even getting a doubling in 5 years would have been unthinkable. Part of it is that Intel's no longer getting any competition from AMD. Part of it is because getting up past about 4GHz would overheat a PC, so the easy way out of just merely increasing clock speed is out. Increasing the number of cores have already hit diminishing returns as far as most PC users are concerned (I'm an exception: I regularly process video).

The flip side of this is that the base operating system hasn't been using more hardware resources recently. Windows 8 is actually less resource hungry than Windows 7, which would have been unthinkable in the old days. Thanks to Microsoft's desire to compete in the tablets space with Apple and Google, Windows 8 actually runs decently on a tablet with just 2GB of RAM. This gave me the courage to replace my wife's 4-year old X201 with a Microsoft Surface Pro with half the RAM. My wife didn't even notice the missing RAM, despite running the resource hungry Android Studio, which is enough to spin my desktop PC's fan up.

This has several implications for users and developers:

  1. Rather than buy a mid-range machine and planning to replace it every few years, it might be cheaper to build a high end machine and upgrade components. Given that CPUs and motherboards are no longer going to have to be trashed every few years, you might as well get a chassis that supports easy hard drive and SSD replacements/expansions, and GPU upgrades, if you will run GPU-intensive activities.
  2. I/O standards do make a big difference, but any PC with a free slot will let you upgrade to USB 3 and other standards, so again, expand-ability might be more important than "planning to throw it away."
  3. An adequately high end machine will probably last a good 10 years in this environment (i.e., a i7 4770k wouldn't be obsolete for 10 years), which means that it makes sense to put money into a high quality power supply, since the higher quality power supply would provide cost savings when you plan to run a machine for that long. This is in contrast to the "buy-and-replace" strategy, where spending $20 more on a better power supply wouldn't pay for itself in power savings.
  4. This also seems to be applying to laptops, though laptops do benefit from the power efficiency gains of the latest processors, so if battery life matters to you, an upgrade every 4-5 years might make sense. The way most people seem to use laptops (constantly plugged in and never actually used as a mobile device), I think most people should replace laptops every 10 years, getting new batteries every 3-4 years or so, assuming that their device supports it.
I never thought I'd see the day when PCs would be expected to last as long as cars, but then again, I never thought I'd see the day when Microsoft would roll out huge new products and initiatives and everybody would just yawn. But yeah, my next PC is going to be something I build from the case in, and I'd be planning for it to last a good 10 years, something I did not expect when buying my previous desktop. I would have taken a completely different approach otherwise.

Thursday, April 24, 2014

Review: Nuun Active Hydration

I've long been a user of Cytomax as a supplement for my water bottles. It's cheap, easy to use, and keeps the cramps away adequately. I'm a heavy sweater, so having an electrolyte drink is pretty much a necessity. Unfortunately, they recently changed their forumla to use stevia instead of sugar, which means that it's no longer the same as before. In any case, even prior to the formulation change, Cytomax had other problems for on the go use. It was difficult to carry, didn't provide a convenient way to meter usage, and I usually ended up doing without rather than bringing it on tour.

Endurolytes were our go to source for touring. They're essentially salt pills, and eating them a handful at a time was good enough to eliminate Mike Samuel's cramps during a particularly hot tour of the alps. They're relatively low density, so you really have to pop them like candy to have any effect. And of course, being capsules, you essentially have to stop to eat them, unlike Cytomax.

I recently ordered Nuun at a website in order to top up an order to receive free shipping. It comes in a tube and each tube has about 12 tablets. You use 1-2 tablets per bottle, solving the metering problem. Since it dissolves into your drinking water, it's particularly suited for touring cyclists who don't like to stop just to take capsules. It's considerably more expensive than Cytomax, though with Amazon's subscribe and save option along with Amazon Mom and my reduced riding load nowadays, it's still quite affordable.

The taste is much weaker than Cytomax, and that's a good thing. I frequently do get sick of Cytomax if I use too much, but this minor fizzing flavor is just right for me. My biggest problem with it is that it's not calorie dense at all. Come on guys, if you're designing an electrolyte for cyclists and runners, don't skimp on the calories!

In any case, I've turned on a subscription and will now use it for bicycle tours. Recommended.

Thursday, April 17, 2014

Why I can't help PMs, Sales People, or Marketing folks negotiate

Occasionally, I'll get a sales person, product manager or program manager, or even a marketing person ask me to help negotiate their compensation package. With one exception, I invariably turn all of them down. The reason is this: negotiate is a core skill for product managers, program managers or sales people, while the core skill for engineers is being able to design and code, with negotiation being secondary. In fact, one of the ways an engineering manager adds value to an engineering team is negotiating on their behalf with other engineers and with product management and/or UI designers.

If you look at how we train engineers, it's pretty clear that negotiation is out of the picture. Engineering exams aren't graded on style, readability, or collaboration. They're graded on correctness of solution, ability to apply principles and data structures to new areas, and of course, whether or not your project works. What negotiation there is in the engineering curriculum is informal: you might be asked to work in teams to turn in your homework (as a former instructor, I can say with confidence that this is usually so that we only have CLASS_SIZE/N papers/projects to grade, rather than CLASS_SIZE). As a result, engineers are singularly unprepared to negotiate their compensation in a way that sales people, PMs, or marketing types are not.

There's also a fairly subtle effect going on when engineers negotiate their compensation package. Most engineers are in a position to find a new job only because they're unhappy with their old one. Why are they unhappy? Usually it's because the old position did not make full use of their abilities: either they've been stuck in a junior position for years (I've heard horror stories about engineers at Google being stuck at SWE 3 for 5 years, despite performing way better than their grade), or because they've not been given raises, or both. In these cases, usually the managers have consciously or unconsciously beaten down their egos and repeated told the engineers that they're not worth much in the market. One of the things I do is to get such engineers to interview and receive multiple offers. The change is almost immediately visible in such candidates: they gain confidence as they realize that they are valuable employees, and this has an effect when they negotiate. The extra confidence enables them to negotiate and get better deals from their employers. Sales people, product managers or program managers, for whatever reason, seem to be immune to such beat-downs, retaining a healthy ego even when consistently denied promotions.

My negotiation service is unique because it's an irrational thing to do. The real money in compensation negotiation is on the other side of the table. Recruiters and head hunters get 30% of your salary (i.e., your entire engineering salary for a year * 0.3) for getting you to join their client companies. That's why there's no competition for what I do. There's no engineer who'd be willing to match what corporations pay in order to get a better deal.

Wednesday, April 16, 2014

First Impressions: Microsoft Surface Pro

Our trusty X201 had been getting long in the tooth, and Xiaoqin decided to try some Android development. If you've ever tried Android Studio, you'll know that it's a CPU intensive process since it's based on IDEA IntelliJ. The build system associated with Android Studio, Gradle, is also a massive CPU hog, and introduces no small amount of latency to the process. I never thought I'd miss the days of Visual Studio, but it's quite clear that compared to Microsoft's tool set for development, Android is quite a bit behind, and extremely unstable. Of course, in terms of market share, the positions are exactly reversed.

After trying out a Surface Pro in the store a year or so back, I vowed never to buy a conventional laptop again if I could buy a Surface Pro-type device. Fortunately, Microsoft was having a sale on refurbished Surface Pros, so I was able to pick up a 128GB model for $450. You can find them for about $500 if you're willing to put up with a 64GB model. With USB 3 and a microSD card slot, it's probably no big deal if you can't find the 128GB model.

As a laptop, it's quite impressive. It's about 50% faster than the older X201, and 3X faster on boot up, hibernation, and recovery from hibernation, with boot times going from 30s to 10s. And yes, this is with the X201 upgraded to an SSD. There are a few strange fit and finish issues, such as the mini display port slot not being very deep, so when inserting a standard cable there's a little bit of chrome sticking out. The tablet comes with a pen, but there's no place to put it except in the magnetic charging port, and the magnetic charging port isn't strong enough to retain the stylus without loss if there's any pressure whatsoever on it. Since this is an expensive Watcom digitizer stylus, you really do want to keep track of it!

Running Lightroom is fast as you might expect, with no hitches and the Surface Pro had no problem driving the 27" HP monitor with a 2560x1440 display. One nice mode you can run is to have the touch screen run the Start screen, while the big display runs the desktop. This gives you a nice touch UI for the touch part, while having the desktop to do real work. Of course, Microsoft had to glitch this up---in this mode, desktop apps still launch onto the small screen instead of automatically selecting the big screen. It's this kind of inattention to detail that gives Apple its edge over Microsoft, though I've found Macs to have their share of problems when using multiple screens.

The device has a fixed, 4GB of RAM, but surprisingly, until I told Xiaoqin about it, she didn't even notice it didn't have as much RAM as her old device. At least part of the reason is that Windows 8 Pro actually consumes fewer hardware resources that Windows 7 did. The other part of it is that in recent years, software developers just haven't been able to assume more than 4GB of RAM anyway, so as long as you're single tasking or running just one web browser and an application, you're generally OK.

As a tablet, the Surface Pro is quite hefty, though not as hefty as the X201. It makes up for that, however, with power. I'd already written about how much faster the Dell Venue 8 Pro is than my Nexus 7. Using the Surface Pro is instantaneous. The Type Cover is also a joy to use, giving you keyboarding performance akin to what I'm used to with the X201.

The real revelation, however, is the stylus. I'd never tried any of the previous PCs in tablet mode, other than my use of the Wacom Bamboo tablet for producing Independent Cycle Touring. But while I hadn't noticed, Windows' handwriting recognition has become nothing short of amazing. My handwriting can compete with any doctors' for sheer inscrutability, but the Surface Pro handled my cursive with aplomb, as long as I was writing common English words. Write something not in the dictionary, and just like any other machine translation program, and you end up with gibberish. There was no training period, however, and I could pick it up and use it. You could even turn on Chinese handwriting recognition, though Xiaoqin pointed out that Pinyin is faster and much easier to use with a real keyboard. Unfortunately, having multiple languages on the machine is problematic if you use a keyboard, since Microsoft used Windows-Space to switch between languages, and Xiaoqin found it far too easy to hit that combination by mistake. In past versions of windows we tried to change the language key bindings but to no avail, so we gave up and uninstalled the language pack instead.

All tablets are compromises. The Surface Pro does not have great battery life. 3-4 hours with Android Studio and that's it for the battery. When fully powering Android Studio, the device also gets hot enough to turn on its fan, which sounds like a low hissing noise. It's quieter than the X201, but still noticeable if the room is otherwise quiet. Next to my Core i7 920 box going full bore, of course, it might as well not make any noise. At no point would you burn your hand grabbing the Surface Pro, however, so there aren't any safety issues.

Long term, the biggest concern about the Surface Pro is the battery. With the machine running hot, and the battery fully charged most of the time in desktop mode, I would be surprised to see more than 3 hours of battery run time after the first year, and 2 after the second year. Most laptop batteries get abused this way as well, but the Surface Pro has a non user-serviceable battery, with the only option being the $200 power type cover. Fortunately, for the price (which is much less than what I paid for the X201 way back when), we can treat the Surface Pro as a disposable computing device. This is much more of a concern nowadays, however, than it would have been 10 years ago. 10 years ago, you'd expect to replace a machine every 3 years. Now, an adequate machine (which the Surface Pro most definitely is) could have a potential life time of 5-6 years. At the rate Intel is improving (or not improving) CPU performance, I'm likely to keep my desktop for another 2-3 years at least!

There are a few accessories that I would recommend for the Surface Pro. The first is a Type Cover. We tried both the Touch Cover and the Type Cover in the store, and the Type Cover was hands down the winner. Secondly, you need a USB 3.0 hub if you're going to attach a debugging phone as well as a wireless transmitter for wireless keyboard and mouse. The Surface Pro comes with bluetooth, but it was easier to just use the existing Logitech mouse and keyboard than to shop for new ones. USB hubs can be powered or unpowered, and we got an unpowered one for convenience when traveling. It'll make the device drain that much faster, but having one less power adapter to carry will be essential.

In any case, so far, I'm liking the Surface Pro far more than I expect, and Xiaoqin hasn't asked for the older X201 back. I'm expecting not to send this back to Microsoft after the 30 day return period.

Tuesday, April 08, 2014

Review: Flower

I picked up Flower as part of the Journey Collector's Edition, but if you pick up the digital PS4 edition, you'll get it for the Vita and PS3 as well. Given that Journey is a great game, the collector's edition is worth getting as it gets you the soundtrack as well as a few other specials.

You play the wind (or maybe the spirit of Spring) in Flower, picking up flower petals by making flowers bloom. That's it. It's a simple mechanic, made only more difficult because rather than using joystick controls, the game uses motion controls using the Playstation controllers. (I bet most of you didn't know that the Playstation had motion controls that weren't associated with the Playstation Move, did you?) That's not a good thing, because those controls are imprecise, but on the other hand, this is not a game that calls for a lot of precision.

The first few minutes of the game feels puzzling. You almost feel like you're in a tech demo, rather than a game, as there seems to be no purpose. Then after a while, the game picks up and you learn that yes, there actually is a goal, other than floating around swirling petals and admiring the scenery, and there's even a story. It's not a very human story, as there's no dialog, but you also notice attention to detail at the game's level. For instance, there's background music to the game, but you add to it every time you make a flower bloom, and depending on how you control your speed, you can bloom flowers at varying rates, so you're contributing to the soundtrack as well as the game play. This is so beautifully and naturally done that I didn't notice it until I missed making a flower bloom at one point and then the music sounded different. Not wrong --- there's no real punishment for mistakes, but different, giving the game a different mode. Very well done.

The game's story leads you through 6 chapters, though you can go back and replay any of them in any order. Bowen loved the first and second chapters, and made me replay the first 3-4 levels over and over. They are beautiful, and the controls are a sheer joy. The 5th level is where it gets serious and you can actually take damage, and it can be much more confusing as to what you're supposed to do. However, even that level is not very long, and you're unlikely to get stuck in it. The final stage is enjoyable once again and a lot of fun, even exhilarating, and all too short.

As an experience, Flower isn't as strong, long, or contemplative as Journey. However, it is short, and very accessible for even toddlers. I can recommend it for everyone, but do not consider it as much of a "must play" as Journey is. Judging by the trajectory of the developer, thatgamecompany, I'm looking forward to seeing what they produce for their next outing. I don't think there's anyone else doing the type of games these folks are doing.

Monday, April 07, 2014

Review: Journey

Journey, for me, was a magical experience. When I sit down a reflect on the games I've played since December last year, many of them fall into the "interactive movie" category. There's nothing wrong with that. The Last of Us, had me thinking about its themes long after I'd finished the game, and Arkham City is an excellent story that would hold up to any of the Batman stories in any other medium. But those games wouldn't lose all that much if they were translated into movies. In fact, without the constant repetition and restarts due to player deaths, The Last of Us might even make a better movie than it did a game.

Journey, however, is the kind of experience that only works as a game. The wonderful thing about it is that it's an incredibly accessible game. Using only the twin analog joysticks and two buttons, it's a game that eschews complexity, timing based controls, and high speed reflexes and hand-eye coordination for a contemplative travel through the virtual landscapes it renders and the emotional spaces it evokes. What's more, unlike hard-core games that require hour upon hour of slogging and skill mastery, Journey is relatively short, and if you have time to watch a movie, you will have time for Journey.

You control a traveler, rendered in simple fashion little more sophisticated than a stick figure. The start of the game has you contemplating a mountain far away, and it is understood (though the game never explicitly tells you) that you are going there. Along the way, you traverse a desert landscape, an underground cavern, underwater spaces, and a snowy tundra. You visit ruins, and encounter creatures, most of which help you, and perhaps, another traveler representing another player who is also making the same journey.

You can't die, though there are moments when you are threatened, even succumbing to those threats won't hurt your ability to finish the game. The other player who might travel with you can't help or hinder you in your travels. In fact, other than a couple of gestures, you can't even communicate with each other explicitly. Yet the nature of the game is such that mere presence still grants you camaraderie. The puzzles will never stump you for more than 10 minutes, if that. There are no difficulty levels, no ability to save or restore the game. At no point are you forced to move forward, and nothing shoots at you when you're having a contemplative moment or just enjoying the scenery.

If Journey was made into a movie, it would be flat, lacking the emotion it was designed to evoke. But by taking on the character in a virtual space, and providing the means for various forms of traversal, Journey managed to invoke in me feelings of exhilaration, as I slide down a sand dune or soar through the skies towards my goal. I felt fear, when a monster detected my presence (even though I knew I could not die), and came after me. And there were many many moments of wonder as I wandered through a new landscape, not knowing what would come, but enjoying the moments of beauty and solitude that came with making my way through the virtual spaces. The combination of the design, the music, the simplicity of the controls and the way the game teaches you what to do with just dialog and just a handful of on screen prompts in the first 15 minutes of play is nothing short of amazing.

I don't want to over-state the pleasures and the strength of Journey. I wouldn't go as far as to say that you should acquire a PS3 just for this game. (I'd say that for Uncharted 2) But it truly is a game that I think just about everyone should play just to understand why video games are art. Just as missing out on great books like A Wizard of Earthsea would be a great pity, I think missing out on Journey would also subtract from your life.

I bought Journey as part of a collector's edition. However, I will review the other two games on that disc (Flower, and Flow) separately. You can also purchase Journey directly from Sony as a download for $14.99. Highly recommended.

Friday, April 04, 2014

Review: Pixeljunk Monsters Ultimate HD

I'm a big fan of the tower defense genre of games, and have sunk countless hours into the original flash-based game, as well as much nicer looking Defense Grid. Strangely enough, there aren't very many mobile versions of the desktop tower defense that are worth playing, with Space Station Frontier being the only one that's really any good. (I found a common recommendation, Fieldrunners HD to be extremely lacking in imagination compared to even the original flash-based game --- other games were filled with in-app purchasing which sucks all the fun out of gaming, as far as I'm concerned)

That is, until I picked up Pixeljunk Monsters Ultimate HD for my Vita. The game's also available on PC, but I feel it is best played with a joystick and control buttons rather than mouse and keyboard, so I would encourage you to get a controller for the PC, if that's your platform of choice. Obviously, the PC version would be much less portable than the Vita version.

This game is extremely challenging. On Easy difficulty, I found myself having to play most levels more than once. In particular, sections of the game are locked away unless you score perfect scores on a certain number of pages, so I found myself replaying levels over in search of the score. On the easy difficulty at least, the game offers multiple paths to victory, with a great selection of different towers to use on various challenges.

The game features several unique mechanics. The first is that you control an actual character on the game board, which constraints you several ways. Your character creates and sells towers, as well as picking up gems and coins (to purchase new towers). Your character can also upgrade towers by dancing on a tower, or you can upgrade towers with gems. Your character also needs to run back to the base in order to purchase new tower types. With all these constraints in place, the game ensures you always have a plethora of choices to make, which forces you to pay attention to every detail.

Another unique mechanic is the concept of earned interest between waves. By not spending your coin, the game grants an interest bonus between waves that generates more coins. This mechanic basically adds tension between setting up additional towers right away or waiting for the last moment in order to garner the most bonus interest possible.

Your character can also get run over by the invading monsters, which would cause you to lose a number of coins as well as rendering him incapacitated for a period of time. If you don't pick up coins or gems within a certain amount of time, they'll disappear off the game board, which again generates a certain level of tension between running after the coins or staying put and upgrading towers by dancing.

The monsters are typical of the genre, with slow, fast, numbers, shielded, and flying monsters ensuring that you have to build a variety of towers in order to win.

Now, the most important part of a tower defense game is the maps or gameboards. The game features approximately 21 game boards, and the variety between them is pretty cool. They range from the difficult to the nearly impossible to get through without taking losses, and are ranked in difficulty with certain special missions granting you additional tower types or upgrading your character.

The game's extremely replayable, will be free this month on Playstation Plus if you have a Vita. In any case, I definitely got my money's worth for the game and can recommend it.
UPDATE: PixelJunk Monsters is available for $5 on the PC/Mac directly from the developer. This sale will last for 5 days.

Tuesday, April 01, 2014

Review: Aggressive Tax Avoidance For Real Estate Investors, 19th Edition

While I'm not quite an accidental landlord, since we got married we've had a rental property to manage. There are all sorts of issues with landlording, and I've covered many of the short-term solutions in a previous post. Aggressive Tax Avoidance for Real Estate Investors deals with longer term issues. Logistically, you can buy this version of the book from John T Reed's website, or you can buy a used 18th edition from Amazon. While there's unlikely to be much difference in content between the two editions, if you're running a rental business properly, there's no reason to cheap out since the book is tax deductible for your business.

A good measure of a specialist non-fiction book like this is the ROI. Within the first 3rd of the book I'd discovered that there was a certain approach that I'd not used because I'd succumbed to an old-wives tale and it would have saved 10X the price of the book. Live and learn.

The most useful part of the book is John T Reed's aggressiveness in approaching IRS issues. Basically, he tells you not to be afraid of tax courts, how to do research on tax issues, and how to fight the IRS in tax court if it comes down to it. This sounds really aggressive and it is. If you're renting out a room in your house, you're probably better off not being this aggressive, but if you have significant income from rental or run a multi-family rental property unit you want to take this approach as more conservative approaches would cost you significant amounts of money. John T Reed doesn't just assume this, but walks you through the Net Present Value/Expected Value Decision Tree for most of the approaches he espouses in this book. This is a very rational (one might say hyper-rational) approach to tax strategy and decision making as a landlord (or any other business owner), but you have to be capable of taking the mindset that Reed espouses. If you're easily stressed by the thought of an IRS audit, this is not the book for you, though you might want the managers you hire to read it and use it!

Reed not only walks through all the different types of tax courts, and the probability of the tax payer succeeding in winning the cases at the various courts, he also provides the probability of an audit, depending on the type of rental property you have and how much revenue and income you're generating. If you own any rental property, this type of information is invaluable and is worth the price of admission alone.

As a stalwart member of the 1%, Reed is definitely anti-Obama and anti-Democratic, and doesn't hesitate to write political comments throughout the book. I found this irritating, but tolerable given the usefulness of the information he provides.Then at the end of the book I came across something which just made me chuckle:
When you work at a job, you earn taxable income. Part of which, the government is entitled to confiscate. But if you work at increasing net worth---and refrain from selling the asset whose value you are increasing---the government has no right to confiscate any of the gain... It seems to me that if the taxes on work are too high---and they are---then you ought not to work for a living... (Page 180)
Sounds like a prescription for raising capital gains taxes and dividend taxes and reducing income taxes to me!

Anyway, if you own rental property that's more than just a room in your house, you need to buy this book. It will save you multiple times the cost of the book. If you run a business, you need this book just to understand the approach to taxes and how to do the NPV decision tree. Highly Recommended.

Friday, March 28, 2014

Review: Bioshock Infinite

One of the interesting things about catching up on 10 years of games is that since I'd been exposed continuously to only good games, it's extremely jarring when I play a bad one. I don't review most of those, because I never get far enough to finish them, since they don't hold my interest past a couple of chapters. Bioshock Infinite, however, came with stellar reviews, so I persisted despite my not having made it past a the first mini boss from the original Bioshock.

When I reviewed The Last of Us, I complained about how very unfun it was until I finally understood the game system and how it worked. A lot of it was that the game was continuously teaching me how to play, and between me being a slow learner and the reviews I'd read prior to the game, I'd approached it completely wrong. But by the time I really got it, the game became fun. The final scene where Ellie rescues herself from her kidnapper was like a final exam in everything the game had tried to teach you. (The fight against Mr. Freeze in Batman Arkham City serves the same function) Everything was put together right and I was never tempted to even look online for help.

I bring up these examples because they illustrate so clearly how a game can be done right and the game play leading into the climax exercises all the player skills that the game has taught him. Bioshock Infinite does it completely wrong. For one thing, none of the encounters prior to the climax require the kind of tactical and strategic thinking that was required to survive. Furthermore, the power-ups prior to the encounter all had the default selection set to the worst possible choice you could have made coming into the encounter. The result was that the game felt seductively easy enough to play (on easy settings), that you got to the final encounter only to get a whammy that felt like an infinite difficulty spike.

Now, I would probably have powered through anyway if the story had a decent payoff. Now the technical differences between the Naughty Dog team and the Irrational team really shows. The cut-scenes in The Last of Us are full of human interaction and expression, with every nuance of character reflected in the facial animation, body language, and acting. Bioshock Infinite doesn't have cut-scenes, but the animated models used by Irrational aren't subtle enough to carry the story off. Elizabeth is flat, and doesn't interact with  Booker anywhere close to the way Ellie interacts with Joel. The result is that the connection between Booker and Ellie feel forced and not as believable, which reduced my motivation to finish the game.

The net-result is that I watched the ending of the game on YouTube instead of playing through the climax. It's a decent ending without howlers, but definitely does not have the emotional tension and payoff from The Last of Us, or even Tomb Raider.

In any case, if you're a hard core first person shooter player I think Bioshock Infinite would be for you. For the rest of us, I'd recommend giving it a pass. The payoff just isn't worth the work, and the game play is unfun and breaks down right at the end of the game when it matters.

Thursday, March 27, 2014

Review: Sennheiser CX 200

My favorite headphones for on-the-go sonic isolation are still the Etymotic In-Ear Monitors. Mine are several years old and still going strong. Being a parent, however, means that those get increasingly little use, because complete sonic isolation isn't actually what I want, since I need to hear my kid. Moreover, putting on and taking off the Etymotics is an involved operation, and frequently I just need easy-on/easy-off use.

Enter the Sennheiser CX-200. These are relatively cheap, retailing at $18, and you can occasionally find a deal for under $15. They're twist in, and you get a little bit of sonic isolation, but not so much that you can't hear your kid (or your wife). They're light and easy to carry, and not bulky at all, though on a plane you'd still rather have the Etymotics.

The sound quality is decent, though of course if I'm at home, I'd much rather use my PortaPro or PX100s. But you can't buy the PX100s any more, and the PX200s that replace them have terrible reviews and cost a lot more. The PortaPro, meanwhile, sounds great but is really bulky, so you're not really going to carry them out of the house.

Of course, these beat the heck out of the ear buds that came with your phone, iPod, or other portable music player. So if you're still using those, I'd recommend these as an upgrade.