<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><description></description><title>Jaanus</title><generator>Tumblr (3.0; @jaanus-en)</generator><link>http://jaanus.com/</link><item><title>“OK, Glass”</title><description>&lt;p&gt;I played a bit with Google Glass. Here’s the TL;DR version.&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;This is a new category of &lt;strong&gt;everyday Heads-Up Display&lt;/strong&gt; devices. It is going to be great and widely used.&lt;/li&gt;
&lt;li&gt;This first version of Glass is an &lt;strong&gt;above-average first version&lt;/strong&gt; implementation of the category.&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;&lt;a href="http://www.flickr.com/photos/jaanus/9002268068/" title="Glasshole and Android by Jaanus1, on Flickr"&gt;&lt;img src="http://farm8.staticflickr.com/7416/9002268068_d1d0914946.jpg" width="500" height="375" alt="Glasshole and Android"/&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;How come I got to play with it?&lt;/h2&gt;

&lt;p&gt;Google has developed an extensive staged rollout for Glass. Currently, it selects the people that get Glass, and those people must then pay a decent amount of money (around $1,600 at this time) and must then go to a Google location in the US (something like Mountain View, Los Angeles, or New York at this time) for a personal setup. It’s probably a combination of production shortage, and wanting to control the initial experience for this very different new category.&lt;/p&gt;

&lt;p&gt;I have a great friend who signs up for all sorts of new products, and was lucky to be selected in this initial Glass program. (Google calls those people Explorers.) She had her Glass setup appointment scheduled for today, wanted to have a friend with her (Google allows the selected Explorers to bring along a friend for the setup experience and this is actually beneficial, as discussed below), and I just happened to be that friend. So she was definitely the main act and spent most of the time with the product, but I also got to see enough to form an opinion.&lt;/p&gt;

&lt;h2&gt;Service design&lt;/h2&gt;

&lt;p&gt;I have to give credit to Google for the service design. The whole experience today was very well thought through and executed. We were given an appointment time and place at Google’s campus. We showed up there and were greeted by our “fitter”, the person dealing with us for the two hours that it all took.&lt;/p&gt;

&lt;p&gt;We were taken to a Garage space that was almost like a retail store. (Maybe they are actually testing some retail concepts in the process. I wouldn’t be surprised.) Our fitter sat us down at a table and we were offered champagne, not unlike when you buy an expensive wedding ring at Tiffany’s or some such.&lt;/p&gt;

&lt;p&gt;Our fitter then guided us through the initial Glass unboxing and setup experience. I could see the two main reasons why the expensive in-person experience is necessary:&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;Glass is a computer on your face that’s held in place by a somewhat awkward form factor that requires some tweaking to get it right to sit on your face comfortably and with the right angles for everything.&lt;/li&gt;
&lt;li&gt;Glass is controlled by a combination of software on your phone/browser and a set of novel gestures on the hardware itself that are somewhat non-discoverable and not obvious, and you could easily make errors in the setup process.&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Make no mistake, the experience definitely wasn’t because of shortcomings in the product quality that they’d need to compensate for. The software, hardware and packaging in today’s version is fairly high quality. What Google could have done is simply shipped the boxes to people’s homes and let them deal with it themselves using the packaged instructions. But they have chosen a personalized walkthrough instead, minimizing the chance of people inevitably misinterpreting or not following the instructions, getting a bad initial experience, and mistakenly concluding that the whole product is stupid or broken just because they made a setup mistake. This is a bold service design decision and investment, and deserves credit.&lt;/p&gt;

&lt;p&gt;Our fitter took us through the physical setup, that mainly consisted of adjusting the way Glass sits on your face, to get an optimal viewing experience. We also went through the hardware and gesture controls, of which there are more than I expected. The spoken phrase “OK Glass” is known by now, but in addition to that, there are gestures, buttons, and even head tilts.&lt;/p&gt;

&lt;h2&gt;Software and UI&lt;/h2&gt;

&lt;p&gt;The whole experience is based on Google-Now-like cards. Not sure how deeply I want to comment on the details, given that it will change.&lt;/p&gt;

&lt;p&gt;The most important fact of the UI is that it’s a Heads-Up Display, embedding itself into how you look at the real world. Part of the fitting experience ensures optimal field of vision so you can naturally look at the real world, and glance slightly upwards to see the Glass UI.&lt;/p&gt;

&lt;p&gt;It all felt better than I had expected. I’m not saying I’m immediately signing up to buy it, but this category will definitely establish itself in some form so that you no longer have to glance at a screen. Sure, it feels too geeky or weird, but you could say the same about staring at your smartphone all the time, which wasn’t the norm five years ago, and now we all do it.&lt;/p&gt;

&lt;p&gt;It was beneficial to be there with a friend, as part of the experience includes shooting videos and photos and then posting them somewhere, not to mention video calls. Talking and posting to yourself isn’t very interesting, and it made a lot of sense that she shot some material or made a call, and I was the other party in Google Plus/Hangouts.&lt;/p&gt;

&lt;p&gt;One shortcoming of current Glass hardware is that there’s no good solution for people like me who wear prescription glasses. Sure, people wear the current Glass over their glasses like our fitter told us, but it looks and feels weirder than for regular people. I asked what are the hardware plans for prescription glasses, and there was no clear answer at this time.&lt;/p&gt;

&lt;h2&gt;Overall&lt;/h2&gt;

&lt;p&gt;I’m quite impressed with the current form of the product, as well as the service design that Google currently has in place for early adopters. Can’t wait for the more in-depth verdict from my friend after she actually uses it for longer periods of time.&lt;/p&gt;</description><link>http://jaanus.com/post/52587594002</link><guid>http://jaanus.com/post/52587594002</guid><pubDate>Sun, 09 Jun 2013 20:37:43 -0400</pubDate><category>google</category><category>glass</category><category>design</category><category>servicedesign</category></item><item><title>Why I bought and returned a LaCie 2TB Little Big Disk Thunderbolt drive</title><description>&lt;p&gt;I’m in the process of migrating my personal computing from an iMac to Macbook Pro. Since MBP doesn’t have the luxury of a 2TB secondary HDD like the iMac had, I looked at external drive options. Thunderbolt looked like a good idea, and specifically, I went for the &lt;a href="http://store.apple.com/us/product/H7114ZM/A/lacie-little-big-disk-thunderbolt-series-hard-drive?"&gt;LaCie 2TB drive.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I tried it out for a few days, and then took it back to the store for a refund. Didn’t work for me.&lt;/p&gt;

&lt;p&gt;Here’s the things I didn’t like about it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Expensive.&lt;/strong&gt; 500$ for 2TB comes down to $250/TB. That’s just a lot of money.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;No bus power.&lt;/strong&gt; Maybe I’m stupid, but the very fact that there’s a power supply included with the disk tells you something. The disk wanted to have two cables—Thunderbolt to your computer, and separate power cable for wall power. That’s just annoying. I don’t like wall power and cables. USB and Firewire drives are bus-powered (meaning they get their power from computer from the same cable that transfers the data), so why can’t Thunderbolt do the same?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2TB actually means two 1TB drives that you must configure for RAID.&lt;/strong&gt; Yep, there were two 1TB devices in the enclosure, and I could set them up any way I want with Disk Utility—1TB mirrored, or 2TB serialized, or a bunch of other configurations. Honestly, I don’t care. I handle backup outside all of this nonsense, and I just want one disk, so why do you make me think about the configuration at all?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;No advertised speed.&lt;/strong&gt; One of the advertised benefits of Thunderbolt is that it is crazy fast. I happily admit that I am an idiot who is not able to use these devices as they are supposed to—I just did not see any of the advertised speeds. I saw plain boring old 10MB/s or so, which is achievable with any USB or Firewire drive.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Thunderbolt ONLY.&lt;/strong&gt; Apparently that is a thing. There is no multi-interface. I used to have a LaCie drive that was Firewire 400, Firewire 800, and USB. No dice with Thunderbolt. You are Thunderbolt-only and can’t connect it to older computers without it.&lt;/p&gt;

&lt;p&gt;I put all these items together and decided that I am simply too dumb for Thunderbolt drives at this point in time, or it is too early for the technology, or both. I took it back to the store. (Kudos to Apple Store’s 14-day no-questions-asked return policy.)&lt;/p&gt;

&lt;p&gt;Instead, I got some 1TB USB3 drives from Seagate and Toshiba, for about 90$ each, or 5 times cheaper. They are crazy fast with my Retina MBP, and acceptably slow with my old iMac (but hey, I can at least connect them, which is not the case for Thunderbolt drives).&lt;/p&gt;</description><link>http://jaanus.com/post/29955573265</link><guid>http://jaanus.com/post/29955573265</guid><pubDate>Wed, 22 Aug 2012 04:00:00 -0400</pubDate><category>hardware</category><category>lacie</category><category>thunderbolt</category></item><item><title>Benchmarking 2012 Retina Macbook Pro vs 2010 iMac</title><description>&lt;p&gt;The last home computer I bought was a maxed out iMac in late 2010. I recently got a Retina Macbook Pro and thought it would be interesting to compare the machines’ performance for both work and play purposes.&lt;/p&gt;

&lt;p&gt;The configuration policy I adopted for my personal purposes a while ago is “buy a maxed-out configuration, it will last a while”. This is true for both the iMac and MBP. They were both maxed out at the time of purchase in terms of CPU and RAM, and I was interested to see how it affects performance and how/if things have evolved in two years.&lt;/p&gt;

&lt;p&gt;The hardware specs of the machines:&lt;/p&gt;

&lt;p&gt;27&amp;#8221; iMac, 2.93&amp;#160;GHz Intel Core i7, ATI Radeon HD 5750&amp;#160;1024&amp;#160;MB graphics, 8&amp;#160;GB 1333&amp;#160;MH DDR3 RAM, OS X on SSD, Windows on secondary HDD&lt;/p&gt;

&lt;p&gt;15&amp;#8221; Retina Macbook Pro, 2.7&amp;#160;GHz Intel Core i7, NVIDIA GeForce GT 650M 1024MB + Intel HD Graphics 4000&amp;#160;512MB graphics, 16&amp;#160;GB 1600&amp;#160;MHz DDR3 RAM, OS X on SSD, Windows also on SSD&lt;/p&gt;

&lt;h2&gt;OS X general performance&lt;/h2&gt;

&lt;p&gt;I didn’t want to spend money on benchmark tools so I just used the first free one I could find in the App Store, which was NovaBench. Here’s the results for both machines.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_m959h0qseB1qzvrnk.png" alt=""/&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_m959h8OmYa1qzvrnk.png" alt=""/&gt;&lt;/p&gt;

&lt;p&gt;The MBP score is slightly higher, since it performs better in all aspects except graphics. I admit that it’s still confusing to me why recent Macs (all? or only laptops?) have multiple graphics chips, and how/why the system or user switches between them.&lt;/p&gt;

&lt;h2&gt;OS X disk speed&lt;/h2&gt;

&lt;p&gt;Both computers are running the Apple-provided SSD-s. Looks like there has been a huge speed leap in two years. MBP is more than 2x faster for both read and write speeds. I used Blackmagic Disk Speed Test for this benchmark.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_m959htiZgW1qzvrnk.png" alt=""/&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_m959i5c1Tr1qzvrnk.png" alt=""/&gt;&lt;/p&gt;

&lt;h2&gt;3DMark&lt;/h2&gt;

&lt;p&gt;This is interesting for games. I used the standard free 3DMark from Futuremark. The iMac was running 32bit Windows 7 from a HDD Bootcamp partition, and MBP was running 64bit Windows 7 from a SDD Bootcamp partition.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_m959ig3bwK1qzvrnk.png" alt=""/&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_m959imIbbo1qzvrnk.png" alt=""/&gt;&lt;/p&gt;

&lt;p&gt;My hypothesis was that even though the iMac is 2 years older, it has a stronger graphics chip, but apparently, this is not true. MBP performed better than iMac, though not by a huge margin. I don’t know which of the two graphics subsystems the MBP used for 3D, or whether both of them are even active or usable under Windows.&lt;/p&gt;

&lt;h2&gt;PCMark (Windows general performance)&lt;/h2&gt;

&lt;p&gt;This test measures the general performance in Windows. This was clearly unequal, as iMac was running from HDD and MBP was running from SSD, so iMac was disadvantaged and it definitely shows in the score. Still, many of the tests were CPU- or network-bound (e.g browsing and encryption) where the disk should not matter so much. PCMark has many categories, I compared them individually, and MBP beat the iMac in every single category, which is also clearly reflected in the overall score.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_m959iydNLM1qzvrnk.png" alt=""/&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_m959j3c4tB1qzvrnk.png" alt=""/&gt;&lt;/p&gt;

&lt;h2&gt;More ideas to test?&lt;/h2&gt;

&lt;p&gt;Is there any more ideas how I could test the performance of these two machines? The Windows tests were clearly unequal, as MBP was Win7&amp;#160;64bit from SSD and iMac was Win7&amp;#160;32bit from HDD. In an ideal world, I would test with the same OS version. I haven’t really kept up with the testing scene recently—any other benchmark softwares in OS X or Windows?&lt;/p&gt;</description><link>http://jaanus.com/post/29953497893</link><guid>http://jaanus.com/post/29953497893</guid><pubDate>Wed, 22 Aug 2012 02:48:00 -0400</pubDate><category>imac</category><category>mac</category><category>mbp</category><category>hardware</category><category>performance</category></item><item><title>How to import your iCloud contacts to Google / Android universe</title><description>&lt;p&gt;I &lt;a href="http://jaanus.com/post/27320734381/samsung-galaxy-s3-gives-iphone-4-a-run-for-its-money"&gt;previously said&lt;/a&gt; that there is no web UI to manage your Android contacts, and there’s no sane way to import your iCloud contacts. Fortunately, this was not correct, and there are simple tools for both.&lt;/p&gt;

&lt;h2&gt;Contact editor&lt;/h2&gt;

&lt;p&gt;Just go to &lt;a href="http://google.com/contacts"&gt;google.com/contacts&lt;/a&gt; where you can manage the contacts. There seems to be a link to this feature in Gmail, of all places. In top left of Gmail, there’s a dropdown kind of thing where you select Contacts and can then access this. Shouldn’t it also be in the top Google bar? It’s an important feature.&lt;/p&gt;

&lt;h2&gt;Importing contacts from Address Book/iCloud to the Android and Google universe&lt;/h2&gt;

&lt;p&gt;There’s a clean process. It won’t keep the contacts in sync, but you can do this over and over again.&lt;/p&gt;

&lt;ol&gt;&lt;li&gt;In Address Book, select all contacts (Cmd-A).&lt;/li&gt;
&lt;li&gt;Click File, Export, Export vCard. All your contacts are saved in vCard file.&lt;/li&gt;
&lt;li&gt;In Google Contacts, select More, Import.&lt;/li&gt;
&lt;li&gt;Select your vCard file and upload.&lt;/li&gt;
&lt;li&gt;In More, select Find and Merge Duplicates, which does exactly what it says, and is pretty intelligent.&lt;/li&gt;
&lt;/ol&gt;</description><link>http://jaanus.com/post/28154592855</link><guid>http://jaanus.com/post/28154592855</guid><pubDate>Fri, 27 Jul 2012 18:38:45 -0400</pubDate><category>howto</category><category>icloud</category><category>google</category><category>android</category><category>mac</category></item><item><title>Samsung Galaxy S3 gives iPhone 4 a run for its money</title><description>&lt;p&gt;I bought myself a Samsung Galaxy S3 Android phone.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_m78twrtu0D1qzvrnk.jpg" alt=""/&gt;&lt;/p&gt;

&lt;p&gt;No, I haven’t ditched iOS. I just happen to have phones in different countries, and rather than keep switching out SIMs or such, it’s a good excuse for me to maintain multiple devices. My Estonian device was an ancient Sony Ericsson feature phone that was like 8 years old.&lt;/p&gt;

&lt;p&gt;I used the Galaxy S3 heavily for a week as my primary phone device, and here’s some thoughts from the perspective of having used iPhone for the past 5 years.&lt;/p&gt;

&lt;p&gt;To start off, I see mixed feedback about the device. Some people like it.&lt;/p&gt;

&lt;blockquote class="twitter-tweet" data-in-reply-to="224592365384515585"&gt;&lt;p&gt;@&lt;a href="https://twitter.com/jaanus"&gt;jaanus&lt;/a&gt; I love it so much.&lt;/p&gt;— stephanie robesky (@nerdgirl) &lt;a href="https://twitter.com/nerdgirl/status/224597459391885312" data-datetime="2012-07-15T20:13:01+00:00"&gt;July 15, 2012&lt;/a&gt;&lt;/blockquote&gt;

&lt;script src="//platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;&lt;p&gt;Others, not so much.&lt;/p&gt;

&lt;blockquote class="twitter-tweet"&gt;&lt;p&gt;Got the new Galaxy S3 today. What a disappointment. Disgusting hardware coupled with Samsung&amp;#8217;s useless ICS skin. Just terrible.&lt;/p&gt;— Andrew Borovsky (@borovsky) &lt;a href="https://twitter.com/borovsky/status/220947444320575488" data-datetime="2012-07-05T18:29:10+00:00"&gt;July 5, 2012&lt;/a&gt;&lt;/blockquote&gt;

&lt;script src="//platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;&lt;p&gt;This mirrors my own experience. There are some questionable design choices made, but it is in several ways superior to the iPhone, and overall a worthy Android flagship device.&lt;/p&gt;

&lt;h2&gt;Hardware&lt;/h2&gt;

&lt;p&gt;The first thing you notice: it’s HUGE in two dimensions. It’s not very thick, but it is wide and tall, and the screen goes super close to the edges. My friends affectionately call it the “shovel”. It does fit in my pocket, but it’s somewhat uncomfortable to use software apps with one hand. I end up holding it with my left hand and using the screen with the right. When I lift it to my ear for calls, it’s easy to hold, though, because it’s slightly lighter than iPhone.&lt;/p&gt;

&lt;p&gt;4.7 vs 4.9 ounces (133 vs 140 grams) does not sound like much difference, but somehow my iPhone feels bulkier, especially since it also has a case. There does not seem to be a decent case ecosystem in the Android world, I guess because there’s so many devices. So now I must be more careful than with the iPhone to not drop it.&lt;/p&gt;

&lt;p&gt;As for phone calls, the sound quality is excellent.&lt;/p&gt;

&lt;p&gt;I don’t like the experience of pressing the home button. It has a weird narrow shape and whenever I press it, only a small part of my finger actually contacts the button, and the rest ends up just being against the phone case. It is slightly raised which slightly improves the experience, but it is still weird, the iPhone button shape feels more natural.&lt;/p&gt;

&lt;p&gt;I like how the Back button is at the most accessible location—bottom right—unlike most iPhone apps where it is top left and you must reach a longer distance for it. The whole Back button business is arguable (and see below about app switching), but this location is handy and better than what I’ve seen on some other devices, where it’s bottom left, sometimes even between other buttons.&lt;/p&gt;

&lt;h2&gt;Software&lt;/h2&gt;

&lt;p&gt;The device runs Android 4 “Ice Cream Sandwich” with some Samsung modifications and crapware. I don’t think the UI modifications themselves matter too much, but the extra crapware on the device is annoying. Sure, it’s hidden in my Apps and I removed it from all the home screens, but it still feels like those Windows PC-s loaded with crapware. Annoying. I also don’t want to root the device to load vanilla ICS or anything like that, so I guess I’m stuck with it. Why can’t I uninstall the crapware like I can uninstall the other apps?&lt;/p&gt;

&lt;p&gt;The single most annoying thing when you use the device for realz is that there is no sane way to get my contacts to it. I’m using iCloud, and my contacts sync nicely between all my Macs, iPhones, and iPad. There doesn’t seem to be any sane way to sync them with my Google contacts. I appreciate the motivation of Apple who won’t give developers an easy way to do that, but the situation is still super annoying. For now, I basically have to maintain two “contact universes”, one in iCloud and the other in Google.&lt;/p&gt;

&lt;p&gt;Also on contacts, there doesn’t seem to be a web UI where I could manage my Google Contacts. I can manage my iCloud contacts either on my desktop with the Address Book app, or with icloud.com browser UI. There isn’t any UI at all for Google. There’s some contacts in Gmail, but those are different. Plus is probably not relevant at all. And on the device, after I put in my Gmail account, it sucks down some contacts, and then some of them are in “My Contacts” and some aren’t. I need to put contacts in groups to make them actual contacts. I don’t really understand what’s going on there. I would like to use a web or desktop app to get a better understanding, but there isn’t any.&lt;/p&gt;

&lt;p&gt;The most delightful part of using the device is that it’s FAST. Like, really fast. All the animations and transitions are smooth, apps start more quickly, jumping between apps is smoother, and overall it’s just really great performance. My two-year-old iPhone 4 feels like a sluggish piece of crap next to it where everything is slow. I didn’t imagine ever saying that an Android device is faster than iPhone, but there it is. Probably it’s not an entirely fair comparison, as the CPU in iPhone 4S is supposedly faster, but there.&lt;/p&gt;

&lt;p&gt;It also reboots faster than iPhone. At least 50% faster. Yes, we don’t reboot very often, but when we do, I don’t want to wait for my device for a long time.&lt;/p&gt;

&lt;p&gt;The Samsung is a great Skype device for voice calls. Skype on my iPhone is just unusably broken. It plain does not work and takes forever to load. Incoming chats affect calls. I used to think that it is simply not possible to do Skype properly on a mobile device, but Samsung shows that it’s specifically the combination of iPhone hardware and the iOS Skype implementation that’s broken. With the same user data, Skype runs great on Android, starts up quickly, and calls are fast and crispy clear, and chats don’t affect the calls in any way.&lt;/p&gt;

&lt;h2&gt;Transitioning between apps&lt;/h2&gt;

&lt;p&gt;One thing that helps the perceived performance is smooth transitions between apps. Imagine that you read email, and tap a link that’s loaded in the browser. Roughly the following steps need to happen:&lt;/p&gt;

&lt;ol&gt;&lt;li&gt;The gesture recognizer detects a tap on the element.&lt;/li&gt;
&lt;li&gt;The transition happens from the email app to browser app.&lt;/li&gt;
&lt;li&gt;Browser starts.&lt;/li&gt;
&lt;li&gt;Browser loads the page.&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;I shot a video where I opened exactly the same email on both devices and tapped on the same link at the same time.&lt;/p&gt;

&lt;iframe width="500" height="281" src="http://www.youtube.com/embed/kjgI8CcdTzQ?rel=0" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;

&lt;p&gt;You’ll notice that Samsung is faster because of several reasons.&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;&lt;p&gt;The gesture recognizer timings are more aggressive and it is faster to recognize the tap.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The transition from email to browser app is much subtler and faster. iOS does this with “flip one app out and the other in” visual transition. It is gratuitous and happens at the expense of performance and usability. I always hated it, but seeing the much faster Android transition made me realize just by how much.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Browser starts more quickly. Both devices were freshly rebooted before this test, so neither had the app running.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Browser loads and renders the page more quickly. I am not sure how valid this part of the test is because I had previously loaded the page in browser so things may have been cached. So this may not be entirely reflective of the experience of loading a new page that the browser hasn’t seen before. Nevertheless, the Android browser is fast.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Now, imagine that you’re done looking at the page and want to go back to your email. On Android, it’s one tap of the Back button. On iPhone, you must either double-click Home and then tap the email app in running apps, or click Home and then select your email app from Springboard. No matter what the naysayers think are the downsides of the Android back button, in this situation it provides a much smoother experience.&lt;/p&gt;

&lt;h2&gt;Summary&lt;/h2&gt;

&lt;p&gt;If I had to choose which device to buy, I would still buy an iOS device for my daily main use. But whereas previously Android devices and software were clearly inferior, they have been catching up and in some cases are better than iOS. This is all great stuff for the users, and all the devices continue to be fun to work with.&lt;/p&gt;</description><link>http://jaanus.com/post/27320734381</link><guid>http://jaanus.com/post/27320734381</guid><pubDate>Mon, 16 Jul 2012 03:53:00 -0400</pubDate><category>iphone</category><category>android</category><category>apple</category><category>samsung</category><category>performance</category><category>usability</category><category>design</category><category>ios</category></item><item><title>The phone call you weren’t expecting</title><description>&lt;p&gt;A few months ago, my mobile rang. Unknown number. I picked up.&lt;/p&gt;

&lt;p&gt;“Hello?”&lt;/p&gt;

&lt;p&gt;“Hi. This is so-and-so. Do you remember me? You purchased this-and-that from me a while back.”&lt;/p&gt;

&lt;p&gt;I remembered. She was a medical doctor that I went to a few years ago. The procedure went well. Why whould she call me now?&lt;/p&gt;

&lt;p&gt;“I remember you,” I said. “I bought this-and-that procedure from you a while back. It was great. How have you been? What can I do for you?”&lt;/p&gt;

&lt;p&gt;“I’ve been well, thanks. Listen—” she sounded a bit hesitant but at the same time knowing she had the right to stand her ground. “—I am calling you because you have something about me on your blog that is—uh—unprofessional. When you enter my name in Google, it comes up on the first page. Can you take it down?”&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Shit. I can’t believe this is happening,&lt;/em&gt; I thought. &lt;em&gt;I know exactly what she is talking about. I posted this stupid article a while back. It had her name with some stupid words next to it. Apparently I have good SEO for her name. Okay, let’s end the call in a reasonable fashion and think more later.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;So I said the only thing that I think is appropriate to say in this situation…&lt;/p&gt;

&lt;p&gt;“Thank you for your call. I know what you are referring to. I am sorry for the trouble that I have caused. I will fix this.”&lt;/p&gt;

&lt;p&gt;“Okay,” she responded. And then went on, almost sounding embarrassed that she had called me (even though I am the one that caused the problem), as if trying to make up for what she had requested… “How have you been? All good?”&lt;/p&gt;

&lt;p&gt;“Yes, yes, thank you. The procedure was great and I’ve been well. I am again so sorry about this. I’ll take care of it.” And I hung up.&lt;/p&gt;

&lt;p&gt;I wanted to punch myself in the face. I had written this stupid post that would otherwise have been fine, but it had in it the name of the honest doctor that was just trying to run her business, which I am not sure is not easy day-to-day. And due to what I had written, when people punch her name in Google, they have this stupid shit come up that does her a disservice, while in reality it was just my random thought after the procedure.&lt;/p&gt;

&lt;p&gt;So, of course, I took it down. There was no reason for it to be up there. And Google took a while to reindex and remove the link to the broken page, but I don’t think it’s now coming up any more.&lt;/p&gt;

&lt;p&gt;I didn’t expect my stupid blogpost to have such a real impact on someone else’s life and business, but it did. She went back to her several years of client records and took the time out of her busy day to call me up. The good news is, there was no human material damage caused. Maybe it hurt her business a bit, but no one died. Still, I wish I could undo the reputation damage that I had caused.&lt;/p&gt;

&lt;p&gt;Already before this call, you’ll notice that I’ve gone light on my public posting. This call reinforces one belief that I already had, that’s grown stronger over the years: you can do whatever you want on the Internet regarding your own person. Post your thoughts, feelings, stupid pictures, whatevers. It doesn’t matter. It is your own life and thus you yourself will be responsible for all of this material.&lt;/p&gt;

&lt;p&gt;But, it pays to be super mindful of other people. Don’t post names, pictures, anything really, unless you are sure that the other person would approve. It may come back to painfully bite you years later, as this phone call shows.&lt;/p&gt;

&lt;p&gt;This is why I think that it’s not cool to post material about children. Doesn’t matter if it’s yours or anyone else’s. If you browse through all of my public site, you have no idea if I have kids or not. Well—for now, I don’t. But if I ever have kids, I’m sure as hell that you will never find a single photo of them on any public site. I will take tons of photos, sure, but when the kid turns old enough, I’ll hand the whatever-memory-device-we-have-by-then over to them, and they can then themselves decide if or how they want to publish any of that.&lt;/p&gt;

&lt;p&gt;I’m sorry I was a dick to you, anonymous doctor. And to those reading this—just be nice to both friends and strangers.&lt;/p&gt;</description><link>http://jaanus.com/post/25981938466</link><guid>http://jaanus.com/post/25981938466</guid><pubDate>Wed, 27 Jun 2012 00:56:00 -0400</pubDate><category>personal</category></item><item><title>BT_ESCM and “Flaming June.” Pure classic trance genius</title><description>&lt;p&gt;I am somewhat ashamed of myself. And yet glad that I no longer have to be.&lt;/p&gt;

&lt;p&gt;I am somewhat of a trancehead and really dig the genre. It is great “work music” and I just plain like it. I’ve been trying to learn more about the history and all the influencers and seminal works and find my own direction, and I’m doing mostly pretty well.&lt;/p&gt;

&lt;p&gt;Yet, until recently, I’m ashamed that I had not heard about &lt;a href="http://en.wikipedia.org/wiki/BT_(musician)"&gt;BT&lt;/a&gt; or his &lt;a href="http://en.wikipedia.org/wiki/Flaming_June_(song)"&gt;“Flaming June”&lt;/a&gt; that’s said to be a classic dance anthem. Sure, now in retrospect, I’ve heard fragments of it here or there, but I did not really know the piece.&lt;/p&gt;

&lt;p&gt;So, when I heard the Paul Van Dyk remix of it recently on some trance podcast, I became curious. What is this piece that sounds so amazing? There’s a lot of good-sounding trance, but not really a whole lot that’s timeless.&lt;/p&gt;

&lt;p&gt;So I found out that &lt;a href="http://itunes.apple.com/us/album/flaming-june-remixes/id525408228"&gt;an album of “Flaming June” remixes&lt;/a&gt; recently came out. I listened to all. Some of them I don’t like. Some of them, in particular Laptop Symphony, Paul Van Dyk and Fred Baker, are OK.&lt;/p&gt;

&lt;p&gt;But none come anywhere close to the original. The remixes, like I say, are OK. The original from 1997 is a timeless epic classic anthem masterpiece.&lt;/p&gt;

&lt;p&gt;Here’s a low-quality Youtube version of the original.&lt;/p&gt;

&lt;iframe width="500" height="375" src="http://www.youtube.com/embed/pfCc56njC7U?rel=0" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;

&lt;p&gt;I did something that I haven’t done in years—I bought a physical CD of BT_ESCM, the album that “Flaming June” was originally on. I just got tired of listening to the low-quality Youtube version. And out of respect for the artist as well as the annoyance of finding the right torrent version, I didn’t want to pirate-torrent it. Good news is, it only cost $6 on Amazon and I got it from Goodwill, so I hope the money goes to the right place.&lt;/p&gt;

&lt;p&gt;And… yeah. The original of “Flaming June” is timeless. The rest of the album is fine and BT is a prolific and versatile producer, so it’s not all trance. It’s rock and breakbeat and god knows what. But “Flaming June” for me is definitely the star there.&lt;/p&gt;

&lt;p&gt;I’m glad I now have acquired, physically and in spirit, one more piece of the #trancefamily story.&lt;/p&gt;</description><link>http://jaanus.com/post/24664195895</link><guid>http://jaanus.com/post/24664195895</guid><pubDate>Fri, 08 Jun 2012 01:39:00 -0400</pubDate><category>music</category><category>trance</category></item><item><title>My ski bus mixes</title><description>&lt;p&gt;I was on a &lt;a href="http://www.bayareaskibus.com/"&gt;Bay Area Ski Bus&lt;/a&gt; today (which is an amazing way to get to the mountain from around here). The ride is about 4 hours each way. On the way back, there was no movie playing so I figured I’d just play around with some music apps.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.algoriddim.com/"&gt;Algoriddim’s djay&lt;/a&gt; is a great way to DJ on iOS. It was initially released for iPad, but I didn’t have my iPad with me, so I just downloaded the iPhone version and played with it and made these three little mixes.&lt;/p&gt;

&lt;p&gt;Nothing spectacular, though some sounds are quite interesting there. I think I liked the Gate and Echo effects the most, together with eq they can make fascinating sounds. And I made some mistakes too as expected—in the second mix, it’s too obvious where I adjust the bpm. I found the bpm adjustment/matching kinda hard to use, and there are other UI quirks I would do differently. Like the method to get in and out of effects with a tiny button could be better. But overall, the interface is quite compelling.&lt;/p&gt;

&lt;iframe width="100%" height="166" scrolling="no" frameborder="no" src="http://w.soundcloud.com/player/?url=http%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F41631269&amp;amp;show_artwork=true"&gt;&lt;/iframe&gt;

&lt;iframe width="100%" height="166" scrolling="no" frameborder="no" src="http://w.soundcloud.com/player/?url=http%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F41631516&amp;amp;show_artwork=true"&gt;&lt;/iframe&gt;

&lt;iframe width="100%" height="166" scrolling="no" frameborder="no" src="http://w.soundcloud.com/player/?url=http%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F41631453&amp;amp;show_artwork=true"&gt;&lt;/iframe&gt;</description><link>http://jaanus.com/post/20273116318</link><guid>http://jaanus.com/post/20273116318</guid><pubDate>Sun, 01 Apr 2012 01:49:00 -0400</pubDate><category>music</category><category>trance</category></item><item><title>Liars and Outliers, and “they”</title><description>&lt;p&gt;&lt;a href="http://www.schneier.com/book-lo.html"&gt;“Liars and Outliers”&lt;/a&gt; is a book by well-known security author &lt;a href="http://www.schneier.com/"&gt;Bruce Schneier.&lt;/a&gt; It talks about the role and mechanisms of trust in society, and how these have evolved over time as we have scaled our civilization. &lt;a href="http://www.schneier.com/blog/archives/2012/03/liars_and_outli_5.html"&gt;See the author’s own take on the big story.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_m1eresMhwt1qzvrnk.png" alt=""/&gt;&lt;/p&gt;

&lt;p&gt;It used to be easy. Humans lived in tribes and everyone knew everyone else. A combination of moral and reputational pressures was in action to keep people in check. In societies, there is often a conflict between personal and group interest, and these pressures make sure that most people act in group interest most of the time.&lt;/p&gt;

&lt;p&gt;As civilization grew, we needed institutional pressure and security systems in addition to moral and reputational pressures. Schneier calls all of them together “societal pressures”, and discusses each one in great detail.&lt;/p&gt;

&lt;p&gt;Security and trust are a great framework to analyze how societies work, and take a step back from current issues and politics. When you get bogged down in what’s around you too much, it is easy to assume that this is simply “how things always were, are, and will be”. Schneier shows that society and trust operate based on a complex set of knobs we can collectively tweak, and neither too little nor too much security and conformance are good. We don’t want to live in an anarchy or a police state, but somewhere in between.&lt;/p&gt;

&lt;p&gt;As part of operating in a modern world, we need to trust hundreds of people and institutions every day, mostly without thinking about it. It’s interesting to watch the daily language where this is often lumped into “they”. “I was late to work because they were repairing the road and some lanes were closed.” “They should serve better food in the cafeteria.” “They’re starting to build some new houses down the street.”&lt;/p&gt;

&lt;p&gt;It doesn’t exactly matter who exactly “they” is in each instance—is it some city or state body, or some private company; is it one individual or a big group. “They” is the system that’s running most of the world around us, and it mostly functions fine so we don’t need to be paralyzed with a million little explicit trust and security decisions with every step we make.&lt;/p&gt;</description><link>http://jaanus.com/post/19854316766</link><guid>http://jaanus.com/post/19854316766</guid><pubDate>Sat, 24 Mar 2012 17:23:00 -0400</pubDate><category>books</category><category>security</category><category>bruceschneier</category><category>politics</category><category>trust</category></item><item><title>Alan Wake. An excellent game with a poorly handled ending. 9/10</title><description>&lt;p&gt;&lt;a href="http://en.wikipedia.org/wiki/Alan_Wake"&gt;Alan Wake&lt;/a&gt; is one of those games that I was really looking forward to, for several years. Finland’s Remedy Entertainment who produced the game has deep roots in demoscene that I have great affection for, and the two Max Payne series games were excellent. (And are available on PC Steam. You should go ahead and play them if you haven’t.)&lt;/p&gt;

&lt;p&gt;It was an Xbox exclusive for a long time. I was meaning to to borrow an Xbox from someone just so I could play it (I don’t have any consoles). But I was lazy and I never did. So lo and behold, this February Remedy announces that Alan Wake is coming to Steam on PC. Kaboom. I was happy, I could now just use my iMac’s Bootcamp partition to play it with Windows.&lt;/p&gt;

&lt;p&gt;(Aside, this 27&amp;#8221; iMac from late 2010 is a great game machine. Wake played at full frame rate and resolution without any performance problems.)&lt;/p&gt;

&lt;p&gt;Here’s the trailer for the PC version.&lt;/p&gt;

&lt;iframe width="500" height="254" src="http://www.youtube.com/embed/qSGPU3FnD8Q?rel=0" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;

&lt;p&gt;The developers say it’s a “psychological action thriller” and the game lives up to that categorization. It is similar to &lt;a href="http://jaanus.com/post/15663250145/crysis-2"&gt;Crysis 2&lt;/a&gt; because both of them are cinematic movie-like experiences, even though from very different genres. Alan Wake has the feel of a great thriller movie and great gameplay and pacing.&lt;/p&gt;

&lt;p&gt;It is also a cinematic experience structure- and narrative-wise. The game consists of six episodes like a TV series, and the structure and narrative is constructed well. It develops an intriguing storyline with multiple layers messing around with each other. One thing that I thought of while playing is the movie “Inception” where you have a similar “dream within a dream” structure—except that in this game, the layers are more intertwined and the whole feel is much more dark and sinister.&lt;/p&gt;

&lt;p&gt;So, it takes the player through plot twists and turns, keeps pumping up the adrenaline, builds a great complex story where the multiple threads finally come together, all pointing to a great finale ending…&lt;/p&gt;

&lt;p&gt;… which never comes. And this is my biggest problem with the game. The story is not wrapped up properly and is left hanging in some weird state. The two additional special episodes do nothing to clear this up either. You know what this is called? Prematurely milking the franchise. It feels cheap and wrong. The story was built well, and deserved to be ended well. Happily or unhappily, doesn’t matter, but at least wrapped up somehow.&lt;/p&gt;

&lt;p&gt;Compare this to both Max Payne games, and especially MP2 with its “film noir love story” moniker. There was also some story development there, though not as deep as in Alan Wake, but it was properly wrapped up in the end. I found it especially smart in MP2 that you could get two endings: the dark one one with regular and another, happy one with higher difficulty. They could easily have done the same in Alan Wake and I would definitely have played through the game twice just for that. Now, I’m not sure if I will. Sure, I can find more “book pages” (an important supporting element of the game) in higher  difficulty but I’m not sure if it’s worth it for me.&lt;/p&gt;

&lt;p&gt;I’m only calling this out because the game positions itself as a movie-quality creative work and thus deserves appropriate scrutiny and to be held to a higher bar than regular PC games. Even with the incomplete ending, the whole package is still far more interesting than many other games I’ve played, and the ending is the only reason why I’m taking one point away from the top rating.&lt;/p&gt;

&lt;p&gt;Still, most of the game is not about the ending, and it is highly playable. One great design aspect is good music and sound design by a Finnish band &lt;a href="http://en.wikipedia.org/wiki/Poets_of_the_Fall"&gt;Poets of the Fall&lt;/a&gt; where one member is a legendary demoscene-era Amiga MOD composer Markus “Captain” Kaarlonen. Here’s my favorite song from the game that kinda sorta tells about some storyline aspects, but not really, so there’s no spoilers here. I just found it to be a beautiful track that very well captures the mood, style and ambience of the game.&lt;/p&gt;

&lt;iframe width="500" height="254" src="http://www.youtube.com/embed/GeSUvoY2oUk?rel=0" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;

&lt;p&gt;When the credits rolled, I found it cool that there’s a reference to Estonian &lt;a href="http://www.ringtail-studios.com/"&gt;Ringtail Studios&lt;/a&gt; that I didn’t know existed. There’s some game presence in Estonia with casual and mobile games and of course Playtech and gambling. But to my knowledge, not that much with “big”/“serious”/“deep” games like Max Payne, Crysis and the like. Good to see some studios setting up shop and starting to move Estonian creative industry in that direction. I hope that a day comes when we have a full game studio that makes and publishes the full product.&lt;/p&gt;</description><link>http://jaanus.com/post/19722519355</link><guid>http://jaanus.com/post/19722519355</guid><pubDate>Thu, 22 Mar 2012 01:58:37 -0400</pubDate><category>gaming</category><category>alanwake</category><category>remedy</category></item><item><title>Kindle</title><description>&lt;p&gt;This is my Kindle. The Touch model, to be exact.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_m0e0jro0901qzvrnk.jpg" alt=""/&gt;&lt;/p&gt;

&lt;p&gt;A while back, I declared that since I already have an iPad and iPhone, I don’t need a Kindle. I can read books just as well on these devices as I can on a Kindle. And they even have backlit screens that’s better for me as I’m mostly reading in the dark.&lt;/p&gt;

&lt;p&gt;Still, a few months back I got the Kindle for two main reasons.&lt;/p&gt;

&lt;p&gt;First, I was interested in how the e-ink technology feels compared to other devices that I have (mostly LCD-s). To fix the light problem, I also bought Amazon’s case with a light that draws power from Kindle’s battery. It doesn’t seem to significantly affect the battery life.&lt;/p&gt;

&lt;p&gt;Second, I wanted to see if the reading experience with Kindle is really different or better from iPad and iPhone. I know that iPad is too bulky to read in bed, so I had been using iPhone for that. Is Kindle any better?&lt;/p&gt;

&lt;p&gt;The answer to the second question is yes. Reading with Kindle is significantly better for me than on iPhone or iPad.&lt;/p&gt;

&lt;p&gt;Let’s get the limitations out of the way first. Kindle is only good for reading static textual book pages, and nothing else. The touchscreen is sluggish, e-ink display has an extremely low refresh rate, and the &lt;a href="http://jaanus.com/post/15336455873/the-sad-state-of-e-book-formats-based-on-my-attempted"&gt;e-book format is not good for anything other than text.&lt;/a&gt; Some books have images and those are pretty much unreadable on Kindle if they have any text, as you can’t zoom or do anything else.&lt;/p&gt;

&lt;p&gt;So, only reading books, and nothing else. But at books, Kindle excels.&lt;/p&gt;

&lt;p&gt;I like the form factor. The cover adds a little bulk, but even with that, Kindle is infinitely more usable from the weight perspective than iPad, while showing more text than iPhone.&lt;/p&gt;

&lt;p&gt;The UI is manageable. Just tap to turn pages back and forth, go Home to pick a different book, and that’s really it. Sure, you can use the store if you want, but I prefer to do it on the computer with my web browser. Amazon’s cloud is nicely done and whatever I do on one device makes it to others.&lt;/p&gt;

&lt;p&gt;The text rendering is really well done. The DPI is not super high—at 167 DPI, you can see the pixels if you really want to. But the antialiasing is really good and the letterforms are highly readable. E-ink can do 16 shades of gray per pixel and those are put to good use for sub-pixel text rendering.&lt;/p&gt;

&lt;h2&gt;Ads&lt;/h2&gt;

&lt;p&gt;My Kindle has ads. The default mode for Kindles these days is that you buy them with ads, and you can pay extra to get rid of ads.&lt;/p&gt;

&lt;p&gt;I thought I’d buy the extra to get rid of the ads, but I haven’t done so far. Here’s what a typical ad looks like.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_m0e0knLH5m1qzvrnk.jpg" alt=""/&gt;&lt;/p&gt;

&lt;p&gt;Just a big nice picture and one line of text about the offer. That’s it. No disclaimers, bullets, or other nonsense. Of course, this is in the “screensaver” mode. If you actually go into your home screen, there’s a banner at the bottom where you tap to see more details about the same offer, and then it’s the typical purchasing flow.&lt;/p&gt;

&lt;p&gt;The ads don’t bother me because I think it’s one of the most tasteful executions I’ve seen on any platform. In fact, just recently I bought something from one of the ads—and I very rarely make such purchase decisions based on ads. There was an ad for some dried fruit with a big discount, and I was like, cool, I eat those anyway, so might as well stack up. I’m sure the same content is available on Groupon and Facebook and many other such sites, but those feel much more spammy and annoying to me and I don’t really subscribe to any of them. Whereas on Kindle, it’s executed tastefully enough and integrated with my daily life and reading experience that I might just be responsive.&lt;/p&gt;</description><link>http://jaanus.com/post/18763559456</link><guid>http://jaanus.com/post/18763559456</guid><pubDate>Sun, 04 Mar 2012 20:10:00 -0500</pubDate><category>kindle</category><category>amazon</category><category>reading</category><category>books</category></item><item><title>Fahrenheits and freedom</title><description>&lt;p&gt;&lt;em&gt;In early 2011, the broadly respected &lt;a href="http://president.ee/"&gt;President of Estonia&lt;/a&gt;, Toomas Hendrik Ilves, put out a call for Estonians living abroad to submit essays about how we feel about living abroad and coming back.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I felt touched by this call, and wrote the following essay through April and May 2011. I &lt;a href="http://memokraat.ee/2011/08/fahrenheitid-ja-vabadus/"&gt;published it in Estonian&lt;/a&gt; in Daniel Vaarik’s citizen journalism portal &lt;a href="http://memokraat.ee"&gt;Memokraat&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;The following is my own translation to English. I figured it would be fitting to publish this at the aftermath of Estonia’s 94th Independence Day weekend.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;- ❧ -&lt;/p&gt;

&lt;p&gt;Today, it was sunny and 26C outside. Pretty common for late spring in California in the heart of Silicon Valley. Perhaps a bit on the warm side, even.&lt;/p&gt;

&lt;p&gt;Others thought it was 80F, not 26C. My colleagues in a big US software company find it funny that I can do miles, feet and pounds, but still refuse Fahrenheits. The scale is just too weird for me. The approximate formula isn’t actually that complicated. Just remember that 0C is 30F, and each 5C adds 10F. Thus 80F becomes 25C and the other way around.&lt;/p&gt;

&lt;p&gt;I first came to America 15 years ago when &lt;a href="http://www.oef.org.ee/"&gt;Open Estonia Foundation&lt;/a&gt; sent me to Connecticut for summer school. I had previously been abroad both east and west of Estonia, but America was still a cultural shock. This free country was so strange and different. Something that I would have wanted to discover more deeply. At the time, I didn’t know if this was just a dream, or would become a reality.&lt;/p&gt;

&lt;p&gt;About ten years passed. I again found myself under Californian sun for business travel. By the time, I had crisscrossed Europe so I was no longer walking around open-mouthed and lower than grass, as I had been before. Years ago, I had been tight. I came from a closed society and I found “them”, the free people, to be completely different, almost extraterrestrials. Now I felt quite at home and could easily strike a conversation with the locals. I figured I might want to come back here.&lt;/p&gt;

&lt;p&gt;In 2007, I took a one-way ride to Pittsburgh to study in Carnegie Mellon University Master’s for 12 months. My class was around 40 people. Half of them were Americans and the rest from elsewhere in the world, mainly from China, India and Korea, but also a German and some Portuguese. We got along well with one another and the instructors. Never before or after have I worked as hard as during those 12 months.&lt;/p&gt;

&lt;p&gt;After graduating, I decided to work in New York City. My field in the US is more advanced there than it is in Estonia, and I wanted to live in the greatest city in the world. My first job in NYC didn’t live up to my expectations. I started to think about what I was missing.&lt;/p&gt;

&lt;p&gt;I realized why I had come to America.&lt;/p&gt;

&lt;p&gt;I had come to seek out new teachers.&lt;/p&gt;

&lt;p&gt;By teachers, I don’t only mean teachers in the academic setting. I mean people from who I have things to learn. Through my previous professional and academic careers, I had learned how to create products where the machine works for for the person and not the other way around; how to understand what people really need; how to get from the first napkin sketch to a working product, while remaining true to yourself and friends with others. I had been fortunate to have many good academic and professional mentors, but at one point, they ran out for me in Estonia.&lt;/p&gt;

&lt;p&gt;My field and calling—product development—is a mix of art and craft. In middle ages, in these fields, before becoming a master, you’d be an apprentice and work in the studios and under the guidance of other masters. Even these days, to be a scientist or a skilled practitioner, you have to study outside your comfort zone. This is exactly how I think of my professional career.&lt;/p&gt;

&lt;p&gt;- ❧ -&lt;/p&gt;

&lt;p&gt;Outside of education and career, one of my goals of coming to America was to experience freedom. Regardless of all its weirdnesses, America is regarded to be a hallmark of freedom. More people want to come to live here than to leave.&lt;/p&gt;

&lt;p&gt;What does freedom look like in daily street sights or people’s eyes? Daily life was about the same during Soviet times as it was in the free world. You fed your family, you grew your kids, you got your job done… and yet something was missing. The fifty-year Soviet occupation in Estonia not only committed direct crimes, but it ingrained a dark spot in the memory and being of Estonians and many other nations. I could perceive, but not entirely understand it when I lived in Estonia. I hoped that I would see this dark spot more clearly when I’d live in a different environment.&lt;/p&gt;

&lt;p&gt;To me, freedom is an individual spiritual state and an understanding that you are the master of your own happiness. The United States Declaration of Independence says:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;We hold these truths to be self-evident, that all men are created equal,
  that they are endowed by their Creator with certain unalienable Rights,
  that among these are Life, Liberty and the pursuit of Happiness.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;I looked at the preamble of Estonian constitution in this light. It talks about freedom, justice, and preservation of the nation, but not so much about how any of this has to do with us individually and separately.&lt;/p&gt;

&lt;p&gt;These big words have a practical expression. When I walk about the streets in Estonia, or even when I’m not there but I watch and read the news, I feel everyone to be in a combative state and on defense. There seems to be a zero-sum game going on, where for one to win, the other has to lose—be it their money, time, or dignity. Us not being able to respect each other is manifested in the uneven quality of political communication, commentary on the Internet, and general meanness, as pointed out by Rein Taagepera and other observers.&lt;/p&gt;

&lt;p&gt;When I first came to America, I was myself anxious, antsy, tense, and just could not my way around. I kind of got my things done but did not enjoy myself and something was always bothering me. My good friends gave me great advice that I can sum up with one word:&lt;/p&gt;

&lt;p&gt;“Relax.”&lt;/p&gt;

&lt;p&gt;During Soviet times, they ironically said that Estonians execute Soviet idiocies with German precision. I guess that was the goal of the system—to eliminate independent thinking, punish initiative, and see anything coming from outside as a threat. In the free world, there surely is a place for those who merely do tasks given by others. But if you are sufficiently educated and reach a certain level, the regulations ease up a bit and there are less pre-packaged answers, Learning and work no longer mean rote memorization and twisting of prepackaged knobs. Instead, you are expected to use your learnings, knowledge and experience that you have to create something new.&lt;/p&gt;

&lt;p&gt;I am now a free man and I understand that I myself am the only obstacle preventing me from achieving my own goals and dreams. It’s useless to blame someone else, wage wars or point fingers. It’s not the goal of anybody else to hold me back. Most of limitations, obstacles, rules and disputes are not an objective state of the world—they only exist in our heads. Who knows where they came from, but we can now see and untangle them, if only we want to.&lt;/p&gt;

&lt;p&gt;It would be unfair to say that there’s no free thinking at all in Estonia. &lt;a href="http://www.letsdoitworld.org/"&gt;“Let’s Do It”&lt;/a&gt; and other happy new modern initiatives show that if need be, Estonians can come together and execute reasonable action. “So could they during Soviet times”, you might say. “It’s just that the state and the official society were the enemies.” Perhaps. But a free and caring person realizes that there no longer is an “us vs them” thinking, and that antagonizing, gossiping and undermining each other is no longer justified in any situation.&lt;/p&gt;

&lt;p&gt;Free persons understand that love and respect can’t be bought for money or won at threat of violence. Both of these work when people’s choices and information are limited. But in a free, boundless information society, we look up at other people mainly because they have earned our respect.&lt;/p&gt;

&lt;p&gt;When looking at Estonian politics with this lens, I believe that many reasonable Estonians consider their return to Estonia based on the image of Estonian state and municipal leaders. Putting party loyalty above competence, being involved with corruption, and questionable affairs with foreign intelligence agencies breed curiosity, concern, perhaps fear and contempt, but not respect. Such actions damage Estonian interests and security regardless of whether they can be legally justified or whether someone is convicted in court. All it takes is just an impression of activity that is criminal or does not have regard for Estonian national interests, for people to give up and support the decision to move or stay abroad.&lt;/p&gt;

&lt;p&gt;- ❧ -&lt;/p&gt;

&lt;p&gt;Among other things, freedom means respect for others. Estonians have had the fortune and misfortune of having lived together at the same location as a homogenous group for several millennia. This has helped us to prevail as a nation, but has not given us sufficient experience of reasonable interaction with other similar groups. Many other nations have dominated Estonia, but nothing good has come out of them. Thus, historically, it has been reasonable to have an attitude of disbelief and “us vs them”. My mom was very concerned when she heard that I’d be living in New York in a part of the city inhabited mostly by blacks, as she thought they would be a priori more dangerous than other groups.&lt;/p&gt;

&lt;p&gt;The popular comedy radio show “Rahva oma kaitse” by Estonian journalists Mart Juur and Andrus Kivirähk is to me an honest reflection of how Estonians really think. They often talk about blacks and other strangers in a derogatory and ironical manner. A comedy radio show may not sound as an accurate reflection of reality, but already during the medieval times, the village fool could voice the things that others couldn’t but nevertheless thought of.&lt;/p&gt;

&lt;p&gt;Many of my Estonian friends are proud of “not being caught in the web of political correctness” and always “saying things as they are”. I believe that several things are being confused here.&lt;/p&gt;

&lt;p&gt;On one hand, many people in America, similarly as elsewhere, are full of crap. It takes work to find substance in the sea of garbage. Respect is won by those that can express themselves concisely.&lt;/p&gt;

&lt;p&gt;On the other hand, it makes sense to choose words, so that you wouldn’t hurt those whom your subject matter concerns. I’m pretty sure that in private conversations, Juur, Kivirähk and many others who hurt other people in words would assure that “actually” they do not mean what they said and if they “actually” had such friends, they would surely speak with them and show their attitude towards them in a completely different manner.&lt;/p&gt;

&lt;p&gt;Today’s world is ruthless. We do not have the luxury of explaining our words after they’ve been said. Words are taken at their face value. Meanness and irony function pretty well as a psychological self-defense, but they can be perceived as an attack and victim thinking. We are no longer victims. Let’s move on.&lt;/p&gt;

&lt;p&gt;- ❧ -&lt;/p&gt;

&lt;p&gt;My identity is to be a son, a brother, a friend, a classmate, a schoolmate, as a Talliner, as an Estonian, as a Balt, as a Nordic person, as an Eastern European, as an European, as a citizen of European Union, as a westerner, as an American, as an alumnus of Tartu University, ex-New Yorker, Californian, a Master student, and a designer. I’m sure there are some more roles and identities.&lt;/p&gt;

&lt;p&gt;But first and foremost, I am a human.&lt;/p&gt;

&lt;p&gt;Once upon a time, an evil man said “die Fahne its mehr als der Todt.” “The flag is more than death.” I reject that. I am not a diehard Estonian, and I am not a nationalist. Being an Estonian is an interesting curiosity for me, it is not something that I’d like to fight for or to prove myself.&lt;/p&gt;

&lt;p&gt;I don’t believe in zero sum games for identity. I apologize that I didn’t get the memo where it said that I have to be one or another. I live in America but that does not make me any less of an Estonian. I read and watch more Estonian news than many of those who geographically live in Estonia.&lt;/p&gt;

&lt;p&gt;- ❧ -&lt;/p&gt;

&lt;p&gt;Why should I, or others like me, want to come to Estonia?&lt;/p&gt;

&lt;p&gt;I, like all others, like interesting narratives. The Estonian story is pretty damn compelling. We lived in the Estonian territory long before many European great nations got started, and way long before America. We’ll prevail after all of them, too. We have many things that feel mundane to us but that are causes for war around the world—sufficient water and living space, no earthquakes, tsunamis or tornados, plenty of farmland to feed ourselves, and being able to plan our destiny.&lt;/p&gt;

&lt;p&gt;There’s no reason to be intimidated by Huntington’s “end of civilizations” or the Russian Bear. You can’t predict the future based on cataclysms of the past. The risks will come from where you can least expect them. Until then, Estonia is a good place to live on the world scale. An American must pay thousands of dollars every year to service the public debt and a lot of the world has similar financial troubles. Estonia has none of these and we can set our own future.&lt;/p&gt;

&lt;p&gt;I would like to see an Estonia that deals with tomorrow’s, not yesterday’s problems. In some way, we are already there. We like to refer to Skype and other creators of smart jobs. But in order to attract the future Skypes to Estonia, we need to think about how to make Estonia a good place to live and work for the world’s digital elite who deal with matters like green energy, biotechnology and other future business fields. Focusing on the elite may sound strange in a situation where many common people in Estonia have trouble making ends meet, but it is exactly those fields of businesses and entrepreneurs that bring along the jobs of tomorrow, and add the reasons for people in Estonia to stay put, and for Estonians abroad to return.&lt;/p&gt;

&lt;p&gt;For myself personally, these big questions don’t matter. What matters is that the few people near and dear to my heart are living in Estonia and the rest of Europe and do not want to move to America. They have been here in America, it is a great and beautiful country, and they love it—but merely as visitors. Their, and my own, heart and soul is in Europe.&lt;/p&gt;

&lt;p&gt;I myself feel here as a long-term visitor and not as a native. I will never be friends with Fahrenheit. Every time that I step off an aircraft in Europe I feel that I am visiting home again. Perhaps, at one point, I will be back for a longer time, or permanently.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Thank you you Daniel Vaarik, Sten Tamkivi, and anonymous reviewers who helped with the drafts of this essay,&lt;/em&gt;&lt;/p&gt;</description><link>http://jaanus.com/post/18366037891</link><guid>http://jaanus.com/post/18366037891</guid><pubDate>Sun, 26 Feb 2012 23:58:00 -0500</pubDate></item><item><title>Thinking, Fast and Slow</title><description>&lt;p&gt;I read the book by economist &lt;a href="http://en.wikipedia.org/wiki/Daniel_Kahneman"&gt;Daniel Kahneman&lt;/a&gt;, “Thinking: Fast and Slow”, that summarizes his life’s research in the fields of behavioral economics and decision-making.&lt;/p&gt;

&lt;p&gt;I’m not sure where I got the reference from, but it may have been &lt;a href="http://www.schneier.com/blog/"&gt;Bruce Schneier’s blog&lt;/a&gt; or some other security-related resource. How people think has a lot to do with how they make good or poor security- and privacy-related choices—which these days includes pretty much everything you do online.&lt;/p&gt;

&lt;p&gt;Behavioral economics and statistical methods are all the buzzwords in the Valley these days. People like Kahneman have been working on the topic for decades before it became cool, and the work is now making it into mainstream applications. Just this week, there’s a story about &lt;a href="http://www.forbes.com/sites/kashmirhill/2012/02/16/how-target-figured-out-a-teen-girl-was-pregnant-before-her-father-did/"&gt;how Target uses statistically-driven insights&lt;/a&gt; to lure new shoppers. Kahneman’s book refers to &lt;a href="http://www.amazon.com/Nudge-Improving-Decisions-Health-Happiness/dp/0300122233"&gt;“Nudge”&lt;/a&gt; that contains many other stories about the applications. Some followups being implemented in the real world are that if some food says it’s “90% fat free,” they’re thinking about legislation that will also put “10% fat” close to this label. Kahneman shows that many decisions, including purchase decisions, are influenced simply by how the proposal is framed, and he discusses why “90% fat free” and “10% fat” are two very different things.&lt;/p&gt;

&lt;p&gt;More interesting than any individual application to me is the whole system of thinking that informs them. Kahneman summarizes it in these three pairs.&lt;/p&gt;

&lt;h2&gt;Two systems&lt;/h2&gt;

&lt;p&gt;People think with two systems, System 1 and System 2. (It is an abstraction. There are no specific parts of the brain that correspond to these.)&lt;/p&gt;

&lt;p&gt;System 1 can be thought of as “intuition” or “automatic mode”. It’s how we do most everyday practical decisions: without much conscious thinking. It is effortless and automatic and most of the time it works just fine. But Kahneman shows how it uses many heuristics that can lead to poor decisions, such as representativeness, loss avoidance, framing, anchoring, and What You See Is All There Is (WYSIATI). It sees causality where there is none, and it absolutely cannot do statistical or higher-level reasoning.&lt;/p&gt;

&lt;p&gt;For example, if you roll a regular six-faced dice six times in a row, which outcome is more probable: 111111 or 521534? Most people say it’s the latter because it looks more random. Statistically, they have equal probability.&lt;/p&gt;

&lt;p&gt;System 2 is who we think we are: it is the rational self that can engage in conscious thought, fix mistakes done by System 1, reprogram it to an extent, and use concepts like statistical reasoning for more complex questions. Most of the time, people think they make most decisions with System 2, but Kahneman shows that this is false, and System 2 is often lazy and just blindly trusts System 1.&lt;/p&gt;

&lt;h2&gt;Econs and Humans&lt;/h2&gt;

&lt;p&gt;These are two personality types where Econs correspond to System 2 and Humans correspond to System 1. Most economic theory until recently worked just with Econs and the main premise was that people are rational and make conscious choices to maximize their utility. The Human and System 1 side of affairs was simply not considered. People like Kahneman have advanced the field and brought Humans and System 1 more into sight of economists, not staying just in the field of psychology.&lt;/p&gt;

&lt;h2&gt;Two selves&lt;/h2&gt;

&lt;p&gt;Our two selves are the experiencing self and the remembering self. The experiencing self is the one that does most of the actual living and going through experiences, while the remembering self is able to look back on experiences and construct and recall memories. When you go to the dentist, the experiencing self goes through all the pain in the moment, but does not retain much. The remembering self is the one that can think back to experience and consider how painful it actually was, relative to the benefit received. Thinking about these two would be useful for many kinds of policymaking and service design.&lt;/p&gt;

&lt;p&gt;I feel this book was a good summary of a great researcher’s work and I know a lot more about behavioral economics and decision-making now. Next, even though its reviews are somewhat mixed on Amazon, I think I’ll still read “Nudge.”&lt;/p&gt;</description><link>http://jaanus.com/post/17910506183</link><guid>http://jaanus.com/post/17910506183</guid><pubDate>Sun, 19 Feb 2012 18:17:36 -0500</pubDate><category>books</category><category>economics</category><category>psychology</category></item><item><title>The curious case of big fake touch targets usability</title><description>&lt;p&gt;Let’s talk about touch targets, and how the common knowledge of “bigger is better” manifests itself in ways that may at first glance appear wrong and counterintuitive, yet are very usable in the end.&lt;/p&gt;

&lt;p&gt;Look at your iPhone’s “missed calls” screen, or any other screen that has the “blue tappable chevron” which in Apple developer lingo is a “disclosure indicator”.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lzj5549rk91qzvrnk.png" alt=""/&gt;&lt;/p&gt;

&lt;p&gt;What do you think are the touch targets in each individual row? Clearly, there’s the big section on the left that makes a call, and there’s the disclosure arrow that looks at more detail.&lt;/p&gt;

&lt;p&gt;But what are their individual exact borders? At first glance, you might think they go like this.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lzj55cuEum1qzvrnk.png" alt=""/&gt;&lt;/p&gt;

&lt;p&gt;So there’s this full-width outer container that contains a round-button-like tap target. This is reinforced by the fact that when you actually do tap on the disclosure arrow, just the arrow itself goes into a “pressed” state, but nothing happens to the surrounding space, so it feels like the surrounding space has nothing to do with it.&lt;/p&gt;

&lt;p&gt;Long story short, here are the actual tap targets.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lzj55kcEsZ1qzvrnk.png" alt=""/&gt;&lt;/p&gt;

&lt;p&gt;I know you can come to this conclusion by just reading the API docs where it talks about how the content of the cell is narrower when using a disclosure indicator etc. But I didn’t connect the dots myself until recently.&lt;/p&gt;

&lt;p&gt;So, even though it looks that only the arrow is tappable, in reality, you are seeing two equal-height tappable controls here. If you tap anywhere on the right side of the cell that is in the rectangular area close to the disclosure indicator, it’s the same as if you had precisely tapped on the indicator itself.&lt;/p&gt;

&lt;p&gt;The above is not particularly new or insightful to any touch device interaction designer. This information is readily available by reading API docs or experimenting.&lt;/p&gt;

&lt;p&gt;One interesting question is, does it matter? Is the small-target version any less usable than the big-target version? By how much?&lt;/p&gt;

&lt;p&gt;To answer the question, I did a usability test. Well, this was not the focal point of the test. We were doing a formal usability test of a bigger feature where we had built out a custom table that looked like the first version, where there was a custom table row, where there was a custom disclosure indicator about the size of the blue circle. Just the circle was the tap target, and the area around was still the main cell. So conceptually, it looked like the image above where there is a circular tap target inside a big main cell.&lt;/p&gt;

&lt;p&gt;I asked regular users to tap on the disclosure indicator.&lt;/p&gt;

&lt;p&gt;The results were eye-opening and devastating. No one could do it.&lt;/p&gt;

&lt;p&gt;I’m not talking about 10% or 50% less usable. Literally, people could not hit the smaller touch target even after multiple tries. No matter how much they tried, they kept hitting outside the target into the main cell.&lt;/p&gt;

&lt;p&gt;And yet, when I as a professional designer who had been staring at this component for a long time and tapping it over and over tried, I could it hit at every attempt. This is simply because I had learned where the tap target was and could position my finger appropriately, but the target position was different enough from where a normal person taps, that this was a big problem for regular users.&lt;/p&gt;

&lt;p&gt;I knew this would be a problem before I went into the test, but it was enlightening to see this validated over and over by several people.&lt;/p&gt;

&lt;p&gt;The lesson here is that on touch screens, bigger targets are always and unconditionally better, and sometimes it is OK to fake and lie a little. There is no visible indicator for the blue disclosure indicator tap target—you don’t know where the main cell ends and the blue indicator tap target begins. In the language of Alan Cooper’s “Inmates are running the asylum”, you trade off a little understanding (of where exactly is the border), and what you get in return is success and task completion (being able to actually tap on the disclosure indicator).&lt;/p&gt;</description><link>http://jaanus.com/post/17759066935</link><guid>http://jaanus.com/post/17759066935</guid><pubDate>Fri, 17 Feb 2012 04:03:00 -0500</pubDate><category>ixd</category><category>iphone</category></item><item><title>Debugging HTTP on an Android phone or tablet with Charles proxy for fun and profit</title><description>&lt;p&gt;Although I am an UI designer and UI engineer by trade, I enjoy practicing other crafts that go into making apps. At this day and age, to build a client app, you basically need to know about two things: UI and networking/cloud, and the latter usually involves HTTP. It’s one of the most important technology protocols of our time, and I try to keep my edge in working with it.&lt;/p&gt;

&lt;p&gt;Recently, my team had a problem. When our app was talking to our test servers, we had a seemingly identical request that worked from iPhone and failed from Android. The failure was that instead of returning the expected 200 OK with a response, the server responds with 302 Found and redirects the caller to an authentication page where they must authenticate themselves when approaching from outside a corporate network. This authentication is fine, but it was unclear why the same request returned 200 OK on iPhone and 302 Found on Android.&lt;/p&gt;

&lt;p&gt;I saw this as a fun opportunity to debug a bit with &lt;a href="http://www.charlesproxy.com/"&gt;Charlesproxy.&lt;/a&gt; It’s an indispensable tool for all sorts of HTTP proxying/debugging kinds of things. Apparently people have tried to hack Facebook games with it, because on several pages, Charlesproxy now says “Please note: Charles is not intended or marketed as a tool for hacking Facebook games. Please do not contact me for support in this case.”&lt;/p&gt;

&lt;p&gt;There are many other tools like this available. Maybe some of them are cheaper or better. I just know Charlesproxy the best and it works well on my Mac so I’m using it.&lt;/p&gt;

&lt;p&gt;The text below assumes you have basic knowledge about HTTP and curl.&lt;/p&gt;

&lt;h2&gt;Preparing your Android device&lt;/h2&gt;

&lt;p&gt;There are basically two steps you need to do to prepare your device:&lt;/p&gt;

&lt;ol&gt;&lt;li&gt;Turn on proxying in your device.&lt;/li&gt;
&lt;li&gt;Install the Charlesproxy CA certificate if you intend to debug SSL calls (which I did need to do, as our app was using SSL)&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;&lt;a href="http://www.charlesproxy.com/documentation/faqs/"&gt;Charlesproxy FAQ&lt;/a&gt; contains instructions for the iPhone on how to do these things, but not Android.&lt;/p&gt;

&lt;p&gt;Installing the certificate is easy. Just browse to &lt;a href="http://charlesproxy.com/charles.crt"&gt;&lt;a href="http://charlesproxy.com/charles.crt"&gt;http://charlesproxy.com/charles.crt&lt;/a&gt;&lt;/a&gt; and a dialog pops up, prompting you to install it. Go ahead. You’re now configured to trust Charlesproxy as “man in the middle” for your SSL connections, and for all SSL connections during the proxying, your device will see a certificate issued by Charles instead of the real server.&lt;/p&gt;

&lt;p&gt;If you don’t install the certificate, you’ll see strange things in Charles where the phone seemingly opens a request, but then it disappears from the list as if it never happened. That’s because the phone received a response that was signed with Charles’ untrusted certificate, and closes the session.&lt;/p&gt;

&lt;p&gt;Configuring the proxy was more challenging for me. Assuming you’re on Wifi, turns out you have to long-press your wifi network in wifi settings, select “Modify network”, and you can set up the proxy.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lz9qw3uqzs1qzvrnk.png" alt=""/&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lz9qw8TXXV1qzvrnk.png" alt=""/&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lz9qwc19tr1qzvrnk.png" alt=""/&gt;&lt;/p&gt;

&lt;p&gt;Use your computer’s IP address for the host name. Find it out with Charles Help menu, “Local IP Address…” option&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lz9qwo1flg1qzvrnk.png" alt=""/&gt;&lt;/p&gt;

&lt;p&gt;Charles’ default proxy port is 8888, you can change it in Charles proxy settings.&lt;/p&gt;

&lt;p&gt;Be sure to turn off the proxy when done debugging, otherwise the phone’s HTTP stack will simply not work, trying to talk to a proxy that isn’t there any more.&lt;/p&gt;

&lt;h2&gt;Preparing Charles&lt;/h2&gt;

&lt;p&gt;Just launch the Charles app and there’s not much to prepare. By default, it will change Mac network settings to proxy all your Mac use for you. If that’s not needed, turn off “Mac OS X Proxy” in the “Proxy” menu.&lt;/p&gt;

&lt;p&gt;By default, the “Record” button is already on, and you’re set to go.&lt;/p&gt;

&lt;p&gt;One other thing to do is to turn SSL proxying for each host that you need. In Charles, that’s “opt in”: you need to explicitly turn on SSL proxying for each host that you need SSL for. In Proxy Settings, navigate to the SSL tab, and you’ll see the locations. Click “Add” to enter the target SSL hosts and ports. I just entered them as I went: Charles will still show the requests in the list even if you haven’t opted in for the host, but the request and response contents are not available until you opt in for that host and Charles then starts playing man-in-the-middle.&lt;/p&gt;

&lt;h2&gt;Debugging&lt;/h2&gt;

&lt;p&gt;The actual debugging depends on what exactly you’re after. To start, make sure that proxying is working and just do a basic request from your browser. In my case, I ran a request to cnn.com from the Android browser and here’s what showed up in my Charlesproxy for that.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://media.tumblr.com/tumblr_lz9qx1oeoQ1qzvrnk.png" alt=""/&gt;&lt;/p&gt;

&lt;p&gt;Tons of stuff: the actual content, supporting CSS, Javascript, images, and external hosts that have nothing to do with CNN, that I guess are some sort of tracking/analytics. Pretty informative, actually. Just try using some apps on your phone and see what kinds of data they send. (Or turn on Mac OS X proxying and do the same on your computer.)&lt;/p&gt;

&lt;p&gt;In my case, I wasn’t really sure how to tackle the problem, so I started by just using the relevant part of our apps on both iPhone and Android to run the requests (having, of course, set up proxying on both devices.) Sure enough, I could see 200 OK for iPhone and 302 Found for Android. The requests had different HTTP headers, and they were different enough that I didn’t want to compare them just yet.&lt;/p&gt;

&lt;p&gt;My next plan was to replay the failing request with commandline curl. I always like getting “close to the metal/wire” this way, eliminating the possible extra problems added by the client stack.&lt;/p&gt;

&lt;h2&gt;Replaying with curl&lt;/h2&gt;

&lt;p&gt;curl is another amazing commandline tool for HTTP. You can perform any HTTP request/response and just watch things happen. Charlesproxy had handily already captured all the parameters, so all I needed to do was to navigate to the right tab to grab the POST parameters (the request in question was a POST)&lt;/p&gt;

&lt;p&gt;My thinking was like this: let’s do exactly the same request with curl (meaning the same host and same POST parameters), and it should fail the same way. I grabbed the POST parameters and host from the Android-generated request, copied them to curl commandline, and pressed Enter, expecting to see a 302 Found…&lt;/p&gt;

&lt;p&gt;… but I saw a 200 OK, and it worked. Wow. This was one of those “holy crap, I don’t understand what exactly this is but I feel it’s a huge step closer to the solution” moments. I have exactly the same request that fails when ran from Android and works when run with curl. It is coming (from the server’s point of view) from exactly the same network endpoint (my computer). But clearly, something is different.&lt;/p&gt;

&lt;p&gt;How do we find out? Well, we have this handy Charlesproxy thing running here. Let’s just proxy curl’s request to it as well and compare the breakdown of the curl and Android requests.&lt;/p&gt;

&lt;p&gt;How do we proxy curl through Charlesproxy? Sadly, it isn’t as easy as just turning on “Mac OS X Proxy” in Charles’ settings, as curl isn’t built to consider the OS X proxy settings. But it’s not much harder either, you just need to know an extra commandline setting. My final curl command was:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;curl -k -x 10.0.1.4:8888 -v "https://my.server.example.com/endpoint"
-d "post-data"
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;A few handy switches here.&lt;/p&gt;

&lt;p&gt;-k means “don’t validate the server certificate, just blindly trust it.” Remember how we added Charlesproxy certificate for the device? I coud do the same for curl if I wanted to, it has a similar certificate store. But I can also tell it with -k to just not bother about validating.&lt;/p&gt;

&lt;p&gt;-x is the proxy IP and port, which should be your computer’s IP and the port that Charles is running on.&lt;/p&gt;

&lt;p&gt;-v just emits extra debugging info for extra coolness factor. You may leave it out and it works the same.&lt;/p&gt;

&lt;h2&gt;Comparing the curl and Android requests, and the answer&lt;/h2&gt;

&lt;p&gt;So if I ran the above, indeed, the request showed up in my Charlesproxy next to the failing request from Android. Now it was really time for deep detective work and comparing each bit and piece of the requests.&lt;/p&gt;

&lt;p&gt;The answer wasn’t very far. The curl request had an User-Agent header, and the Android one didn’t. A bit strange: turns out that our Android app was using the DefaultHttpClient library, and the library does not insert any User-Agent if you don’t specify any. That’s a bit strange: on iOS, if you don’t specify a header, the system automatically inserts it for you.&lt;/p&gt;

&lt;p&gt;Well, but it nevertheless shouldn’t matter, should it? User-Agent is just cosmetics and shouldn’t affect this kind of requests? Let’s test it. You can tell curl to remove the user-agent by inserting an empty value, or you can set it to any value. Here’s a line that removes it:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;curl -k -x 10.0.1.4:8888 -v "https://my.server.example.com/endpoint"
-d "post-data" -H "User-Agent:"
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;I typed this in, and pressed Enter, and… hurrah. There’s my 302 as expected. I had a reproducible test case now and had found the root cause (from the client’s POV) of why the requests were behaving this way.&lt;/p&gt;

&lt;p&gt;If this was the case, the opposite should also be true, right? I should specify the User-Agent header in Android code and it should work? That’s exactly how it was. I added a User-Agent and things started flowing smoothly: the app worked and nice 200 OK-s showed up in Charlesproxy.&lt;/p&gt;

&lt;p&gt;So apparently in our server request validation, the server was verifying User-Agent header and redirecting the caller if the header wasn’t there. Which is a bit strange, but I’ve seen stranger things. I could report this finding back to my team and we could move on.&lt;/p&gt;</description><link>http://jaanus.com/post/17476995356</link><guid>http://jaanus.com/post/17476995356</guid><pubDate>Sun, 12 Feb 2012 02:17:00 -0500</pubDate><category>http</category><category>programming</category><category>ios</category><category>android</category><category>curl</category><category>charlesproxy</category></item><item><title>Crysis 2</title><description>&lt;p&gt;&lt;a href="http://en.wikipedia.org/wiki/Crysis_2"&gt;Crysis 2&lt;/a&gt; is the next part of the Crysis series (claimed to be a trilogy). In some ways, it’s similar to the original. Some characters and enemies are supposed to be the same, but there’s not much actual connection in the game. In other ways, it goes in a completely different direction.&lt;/p&gt;

&lt;p&gt;The one word I would use to describe the game is “cinematic.” Even though it’s an FPS, you feel that you are in a movie instead of a computer game. That’s not necessarily bad, but it certainly is very diffent from a regular FPS.&lt;/p&gt;

&lt;p&gt;Just watch this intro.&lt;/p&gt;

&lt;iframe width="500" height="254" src="http://www.youtube.com/embed/xLKv2lVasoo?rel=0" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;

&lt;p&gt;It is not exactly like the gameplay and there aren’t this kind of crazy jumps, but the feel and graphics of it is just like the game. If you don’t like this video, you’ll hate the game. If you like the video, you’ll love the game. And you can really do the thing shown in the video where you rip a heavy machine gun out of its stationary position and just walk around with it and wreak havok until its 150 rounds run out. In fact, that was my favorite maneuver.&lt;/p&gt;

&lt;p&gt;A part of the cinematic feel is the sound score. It’s one of the better ones I’ve heard in games and I really like Hans Zimmer’s orchestral work here. Here’s the sound score from the above video as a soundalone piece.&lt;/p&gt;

&lt;iframe width="500" height="254" src="http://www.youtube.com/embed/sw6cJCNXxHg?rel=0" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;

&lt;p&gt;Crysis 2 is blamed for the ongoing “consolification” of PC gaming. Saving only happens in checkpoints, and it is not a sandbox game—it is super linear. There’s some variance in places, but it’s minimal compared to the original Crysis. I’m not saying it’s a bad thing—it does reflect the evolution of gaming. In some ways, it is less involved and hardcore than the original Crysis. So if you want to have a genuine FPS experience, the original Crysis is a better bet. But if you want to see the future of entertainment, might not be a bad idea to pick up Crysis 2.&lt;/p&gt;

&lt;p&gt;I do most of my gaming these days in Steam on both PC and Mac. This was not possible with Crysis 2 because there was some sort of copyright or distribution problem with EA and Steam, and the game was removed from Steam. You need to use EA’s own Origin app if you want to buy it digitally, and it’s a shitty experience compared to Steam. It was very confusing and the key only arrived a few hours after buying, not immediately like in Steam. In the end I did not care much about the social features or achievements, I just wanted the game, and Origin gets the job done from that perspective I guess. I would still prefer Steam.&lt;/p&gt;

&lt;p&gt;The linear nature of the game doesn’t make it any easier. Some parts are crazy hard and the more difficult ones I had to play at least ten times or so. But then it shifts away from gaming where you have to plan your tactics against an unknown enemy and react to situations, and it’s more about memorizing the script, as the enemies come from fixed locations at fixed times, and you’re just beating the script then. It becomes a bit dull, but once you get through it, you again have a fresh situation that you can approach with new tactics.&lt;/p&gt;</description><link>http://jaanus.com/post/15663250145</link><guid>http://jaanus.com/post/15663250145</guid><pubDate>Wed, 11 Jan 2012 02:27:08 -0500</pubDate><category>gaming</category><category>fps</category></item><item><title>Duke Nukem Forever</title><description>&lt;p&gt;For the past 15 years, Duke Nukem Forever (DNF) was the receiving end of IT project jokes. If you had a project that wasn’t going anywhere, you could say that it will be done “whenever DNF is released,” which meant “never.”&lt;/p&gt;

&lt;p&gt;I hope you launched all those projects in 2011, because that’s when DNF surprisingly was completed and came out.&lt;/p&gt;

&lt;iframe width="500" height="281" src="http://www.youtube.com/embed/wVuuyRGB_BA?rel=0" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;

&lt;p&gt;It’s not a completely terrible game, but if I had to choose one word to describe it, I would use “idiotic”. If you are 12 and like boob jokes, you will love this game. For older people, this game has more of a nostalgic value than anything else.&lt;/p&gt;

&lt;p&gt;I only bought it because it was on sale on Steam during last Thanksgiving for something like $7. It felt like the right price for me, but I don’t think it’s worth much more than that.&lt;/p&gt;

&lt;p&gt;The gameplay is fairly smooth. Similarly to other current FPS-ses, it has a checkpoint-based game system, and some of the stages, especially the boss battles, are a little bit more difficult, but most stages are a breeze. You will never have an ammo problem because it’s plentiful and many enemies drop it, and the whole design isn’t really about resource management. You have plenty of resources so it’s more about enjoying the silly jokes and blasting or punching the hell out of everyone that messes with you.&lt;/p&gt;</description><link>http://jaanus.com/post/15662454243</link><guid>http://jaanus.com/post/15662454243</guid><pubDate>Wed, 11 Jan 2012 01:54:00 -0500</pubDate><category>gaming</category><category>fps</category></item><item><title>Crysis</title><description>&lt;p&gt;&lt;a href="http://en.wikipedia.org/wiki/Crysis"&gt;Crysis&lt;/a&gt; is a culmination of FPS gaming. Although a few years old, it still is one of the best in the genre. In some ways, it is still better than Crysis 2, since the latter goes in a different direction and considerably departs from the essence of the genre as we previously knew it.&lt;/p&gt;

&lt;p&gt;I was always interested in Crysis because I liked the original Far Cry a lot. It was the FPS with most advanced graphics at the time, and Crysis continues the tradition as it’s developed by the original Far Cry team, Crytek. (Unlike Far Cry 2, which is a continuation of the franchise but team-wise not related at all.) Even in 2012, five years after its release, Crysis is still gorgeous.&lt;/p&gt;

&lt;p&gt;At this day and age, it is very easy to purchase and play games. I just use Steam whenever possible, and I have a Windows 7 Home Premium Boot Camp partition on my 2010 iMac. The game plays quite nicely with maximum graphical settings. I did run into a technical problem on the last level where it just crashes. Turns out there is whatever glitch that’s fixed by specifying a special command line option in Steam that uses DirectX 9 instead of DX10 for the graphics API.&lt;/p&gt;

&lt;p&gt;Here’s a gameplay video that fairly accurately captures the feel of the game. (Not by me, but I remember going through this level.)&lt;/p&gt;

&lt;iframe width="420" height="315" src="http://www.youtube.com/embed/UMHgBplll8Q?rel=0" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;

&lt;p&gt;The two gameplay innovations compared to previous FPS-es that you can also see in this video are nanosuit customization and weapon modifications. Nanosuit is what powers you and provides you armor, strength, speed and all these things that you must balance to accomplish your goals. Especially interesting is the cloak mode that I found has not so much use in Crysis but is vital in Crysis 2. I was mostly just in armor mode in Crysis.&lt;/p&gt;

&lt;p&gt;As you can see, Crysis is a “jungle shooter”, similarly to Far Cry and Far Cry 2. I guess jungle is a fairly easy and flexible environment for game designers, as it provides great affordance for field of vision, you can obscure the view, you can add variance in terrain height and scatter open ground and water bodies in the jungle.&lt;/p&gt;

&lt;p&gt;The video shows the importance of sniping. It’s not actually quite as extreme and you will have a lot of close-quarters combat too. But it is a sandbox shooter, meaning you can choose your own path, and you can approach the town in many different ways. In the situation seen in the video, I would probably have tried to fight my way through to the guard tower and from there, clear the town from an elevated position.&lt;/p&gt;

&lt;p&gt;To its credit, Crysis doesn’t use the dirty trick found in earlier Call of Duty games and Far Cry 2 — endless enemy respawn, where enemies just keep coming at you. Once you clear an area, that’s it.&lt;/p&gt;</description><link>http://jaanus.com/post/15661536374</link><guid>http://jaanus.com/post/15661536374</guid><pubDate>Wed, 11 Jan 2012 01:22:00 -0500</pubDate><category>gaming</category><category>fps</category></item><item><title>The sad state of e-book formats based on my attempted conversion of Magic Ink</title><description>&lt;p&gt;At some point in the last summer, I decided that I want to learn more about the e-book technical format. Mostly that meant EPUB, though I understand that others like MOBI that Kindle uses are quite similar to it.&lt;/p&gt;

&lt;p&gt;I knew that the essence of the format is that it is a zipped HTML with the assets and metadata, but I wanted to go through the publishing experience myself and learn all the details. How different is the format from regular HTML? What is the state of the publishing tools? How do different reading softwares and devices render the content?&lt;/p&gt;

&lt;p&gt;I didn’t find a reference/tutorial for ePub that I liked. My workflow consisted of reading the Wikipedia article, dissecting miscellaneous ePub files that I found in the wild, making experiments, and passing my experiments through the quite decent &lt;a href="http://code.google.com/p/epubcheck/"&gt;epubcheck&lt;/a&gt; package. The experiments consisted of both handcrafted HTML and authoring it through various publishing packages like Pages of iWork.&lt;/p&gt;

&lt;p&gt;The publishing softwares did a semidecent job, but lacked in many aspects. For example, they produced a strangely leaded (linespaced) layout with/without paragraph indents, or had too little control over how a multilevel table of contents works. In the end, I decided that the best route for me is to simply handcode and manually zip the HTML, as it lets me most viscerally experience the format.&lt;/p&gt;

&lt;p&gt;I chose Bret Victor’s &lt;a href="http://worrydream.com/MagicInk/"&gt;Magic Ink&lt;/a&gt; as my trial project. This was for two reasons. First, it is an amazing piece of material and everyone claiming to be a designer should read it. Second, it kept crashing my iPad as I read it last year before iOS 5 came out. I think it was about the HTML version crashing Safari (I don’t think this is any more the case in iOS 5), and the PDF version being strangely laid out. I wanted to have a good reading experience on my iPad.&lt;/p&gt;

&lt;p&gt;So I got busy and produced an ePub version of Magic Ink. As a side benefit, having to go through the material multiple times, over and over as I read and tweaked the proofs, means that I basically memorized it all.&lt;/p&gt;

&lt;p&gt;You’ll notice that the web and PDF versions (PDF is just a rendering of the web page) copiously use sidebars and references. This is where the biggest trouble was. No doubt Bret was inspired by page layouts of Edward Tufte’s information design books. (And Magic Ink convinced me to read all of those last summer too.) If you haven’t held any of those in your hands, you should give it a shot. They’re beautiful. The page layouts are carefully composed and crafted, and sidebars are integral to the material.&lt;/p&gt;

&lt;p&gt;With EPUB, it is impossible to reproduce the sidebars and layouts to any sort of fidelity. The goal of this format is to be reflowable on many devices, and thus there is no concept of a page layout or columns. It is basically an endless single column. It can reproduce images, yes, but material like Magic Ink would have to be seriously reworked to be publishable in this format. The sidebar references and images have to be done as either endnotes or inline material.&lt;/p&gt;

&lt;p&gt;I did do all of this work, and converted all the Magic Ink material to EPUB with mixed inline and endnote references. But we ended up not publishing it.&lt;/p&gt;

&lt;p&gt;Here’s an illustration about my disillusion with the format. It’s about Kindle instead of EPUB, but this technicality doesn’t matter. Here’s a spread from Bill Buxton’s “Sketching User Experiences” as a paper book.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.flickr.com/photos/jaanus/6639617989/" title="“Sketching User Experiences” paper book by Jaanus1, on Flickr"&gt;&lt;img src="http://farm8.staticflickr.com/7164/6639617989_575e2d070f.jpg" width="500" height="374" alt="“Sketching User Experiences” paper book"/&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;See the full bleed of the picture? See how the material on the spread works together? How there’s nice whitespace all around? How the ink from the previous and next pages kind of blends in the current page? How it actually has character which is reinforced by typography?&lt;/p&gt;

&lt;p&gt;Here’s part of the same spread in Kindle format.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.flickr.com/photos/jaanus/6639617587/" title="“Sketching User Experiences” in Kindle iPad app by Jaanus1, on Flickr"&gt;&lt;img src="http://farm8.staticflickr.com/7032/6639617587_0a4cdba0ff.jpg" width="375" height="500" alt="“Sketching User Experiences” in Kindle iPad app"/&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.flickr.com/photos/jaanus/6639617645/" title="“Sketching User Experiences” in Kindle iPad app by Jaanus1, on Flickr"&gt;&lt;img src="http://farm8.staticflickr.com/7159/6639617645_3abddeb047.jpg" width="375" height="500" alt="“Sketching User Experiences” in Kindle iPad app"/&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can kind of get the same information, but it’s blah and generic, with randomly reflowed content and generic type. And some of the finer text on the image is plain unreadable due to the much lower resolution of image reproduction.&lt;/p&gt;

&lt;p&gt;I have the EPUB file of Magic Ink, but Bret asked me not to publish it until he gets to reworking the material to better suit the format, and I think it is never going to happen as he surely has much better things to do. And it’s wrong that he should do it at all. The format should suit the needs of the author instead of the author wasting time to fit in the super limited constraints of the format. Constraints are sometimes justified, but ebooks are clearly the wrong tool for producing books with nice designs.&lt;/p&gt;

&lt;p&gt;In my final email to Bret about the project, I said:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;I’ve been reading Tufte and Stephen Few lately, and drowning myself in the beautiful page layouts, which all somehow inspired your work. And while at it, I’ve been thinking about the sad state of the reflowable e-book format that I was playing around with. I’m not really convinced that this terrible format would do justice to the Magic Ink material. To me, part of the goal of the project was to understand the format and its limitations and how to do the conversions, and all that I can see is that it’s suitable for text-based fiction, and not much more. … If you do want to republish it and revisit the material, then, unless you have a specific publishing goal, ePub and other similar formats probably bastardize the material more than they do good to anyone.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;He &lt;a href="https://twitter.com/worrydream/status/124951755078377472"&gt;posted a tweet&lt;/a&gt; which appropriately captures the sentiment and expands it based on his own recent work:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Dear e-book platforms: If you don&amp;#8217;t support computation &amp;amp; dynamically-generated gfx, you are not an e-book. You are a fax machine simulator.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;If I wanted to publish a nice e-book these days that required more than simple reflowable text, I would do it one of these two ways:&lt;/p&gt;

&lt;p&gt;Just a PDF. (How long until we get authors selling their books as PDFs the same way that Louis CK &lt;a href="https://buy.louisck.net/news"&gt;made a million bucks with his video?&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;Or make an app, perhaps the same way that Al Gore’s “Our Choice” was published, and won the Apple Design Award for 2011. The Push Pop Press guys who made the software were bought by Facebook, but clearly there’s room for more games in town. This is also the route that magazine publishers are taking. All of iPad magazines are produced and published with some sort of middleware or app framework that gives the publisher decent control over the layout and embedded/linked media.&lt;/p&gt;</description><link>http://jaanus.com/post/15336455873</link><guid>http://jaanus.com/post/15336455873</guid><pubDate>Thu, 05 Jan 2012 01:55:34 -0500</pubDate><category>epub</category><category>mobi</category><category>e-books</category><category>bretvictor</category></item><item><title>My amazing, quiet 2011</title><description>&lt;p&gt;I thought back to 2011. The most amazing fact about the year is that for the first time in ten years, all of these were true:&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;I worked for the same company and didn’t change jobs.&lt;/li&gt;
&lt;li&gt;I did not go from work to student, from student to work, or change employers. (Though I did do an &lt;a href="http://jaanus.com/post/3847339494/my-drawing-class"&gt;after-hours drawing class&lt;/a&gt;, but that doesn’t count.)&lt;/li&gt;
&lt;li&gt;I did not buy or sell a house, or move houses across the same city, country, or continent. Between 2006 and 2010, I moved houses every single year.&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;In all years between 2002 and 2010, at least one of the above changes happened, and on most years, more than one. All of these life changes are somehow incredibly taxing to me in terms of time, money, and mental effort. Not having to spend resources on them meant I had more time for myself, and reflecting about what is it that I really want to be doing and who I want to be. I figured out a few things, but there’s nothing really material to speak of yet.&lt;/p&gt;</description><link>http://jaanus.com/post/15333375361</link><guid>http://jaanus.com/post/15333375361</guid><pubDate>Thu, 05 Jan 2012 00:31:01 -0500</pubDate><category>personal</category></item></channel></rss>
