<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/><description>Kushal’s coding blog</description><title>Codeshal</title><generator>Tumblr (3.0; @codeshal)</generator><link>http://codeshal.tumblr.com/</link><item><title>http://chrislord.net/index.php/2013/02/11/tips-for-smooth-scrolling-web-pages-edgeconf-follow-up/</title><description>&lt;a href="http://chrislord.net/index.php/2013/02/11/tips-for-smooth-scrolling-web-pages-edgeconf-follow-up/"&gt;http://chrislord.net/index.php/2013/02/11/tips-for-smooth-scrolling-web-pages-edgeconf-follow-up/&lt;/a&gt;</description><link>http://codeshal.tumblr.com/post/43248935080</link><guid>http://codeshal.tumblr.com/post/43248935080</guid><pubDate>Sat, 16 Feb 2013 15:10:28 -0500</pubDate></item><item><title>http://platformsandnetworks.blogspot.ca/2012/12/heres-my-compilation-of-2012s-best.html</title><description>&lt;a href="http://platformsandnetworks.blogspot.ca/2012/12/heres-my-compilation-of-2012s-best.html"&gt;http://platformsandnetworks.blogspot.ca/2012/12/heres-my-compilation-of-2012s-best.html&lt;/a&gt;</description><link>http://codeshal.tumblr.com/post/39473770619</link><guid>http://codeshal.tumblr.com/post/39473770619</guid><pubDate>Wed, 02 Jan 2013 09:20:02 -0500</pubDate></item><item><title>Great Git video</title><description>&lt;a href="http://blip.tv/scott-chacon/git-talk-4113729"&gt;Great Git video&lt;/a&gt;</description><link>http://codeshal.tumblr.com/post/34640614971</link><guid>http://codeshal.tumblr.com/post/34640614971</guid><pubDate>Tue, 30 Oct 2012 12:28:55 -0400</pubDate></item><item><title>Awesome Chrome DevTools Tips</title><description>&lt;a href="http://www.igvita.com/slides/2012/devtools-tips-and-tricks/"&gt;Awesome Chrome DevTools Tips&lt;/a&gt;</description><link>http://codeshal.tumblr.com/post/33126791162</link><guid>http://codeshal.tumblr.com/post/33126791162</guid><pubDate>Sun, 07 Oct 2012 20:54:42 -0400</pubDate></item><item><title>How RESTful is your API?</title><description>&lt;a href="http://www.bitnative.com/2012/08/26/how-restful-is-your-api"&gt;How RESTful is your API?&lt;/a&gt;</description><link>http://codeshal.tumblr.com/post/31105146881</link><guid>http://codeshal.tumblr.com/post/31105146881</guid><pubDate>Sat, 08 Sep 2012 00:41:16 -0400</pubDate></item><item><title>What makes a good engineer?</title><description>&lt;p&gt;The more time I spend evaluating engineers (or anything really), the more I come back to three core things: execution, initiative, and personality.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Execution&lt;/strong&gt;. The people we all respect the most get a lot done quickly. And that work is of high quality - builds on a strong knowledge base, well documented, thought out, performant, correct, not overwrought.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Initiative. &lt;/strong&gt;Seniority is really marked by an engineer constantly learning about technology and the company, looking at the company&amp;#8217;s goals, identifying high-impact things on their own, and coming up with a plan to build them, all with little supervision.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Personality.&lt;/strong&gt; To be really effective, a good engineer has the personality to persuade, discuss, and mentor, as well as collaborate and be open-minded.&lt;/p&gt;
&lt;p&gt;Does this miss anything? I&amp;#8217;ve already found this framework pretty useful, and usually when somebody seems almost-but-not-quite ready to be a leader, it&amp;#8217;s easy to spot one of three that needs some more work.&lt;/p&gt;</description><link>http://codeshal.tumblr.com/post/30569868867</link><guid>http://codeshal.tumblr.com/post/30569868867</guid><pubDate>Fri, 31 Aug 2012 00:40:00 -0400</pubDate></item><item><title>How Netflix manages RPC latency and failures</title><description>&lt;a href="http://g33ktalk.com/performance-and-fault-tolerance-for-the-netflix-api/"&gt;How Netflix manages RPC latency and failures&lt;/a&gt;</description><link>http://codeshal.tumblr.com/post/28769026726</link><guid>http://codeshal.tumblr.com/post/28769026726</guid><pubDate>Sun, 05 Aug 2012 11:53:09 -0400</pubDate></item><item><title>Linux tips</title><description>&lt;a href="http://www.quora.com/Linux/What-are-some-time-saving-tips-that-every-Linux-user-should-know"&gt;Linux tips&lt;/a&gt;</description><link>http://codeshal.tumblr.com/post/23200008287</link><guid>http://codeshal.tumblr.com/post/23200008287</guid><pubDate>Wed, 16 May 2012 21:02:52 -0400</pubDate></item><item><title>Awesome slides about reducing latency in large fanout systems</title><description>&lt;a href="http://research.google.com/people/jeff/latency.html"&gt;Awesome slides about reducing latency in large fanout systems&lt;/a&gt;</description><link>http://codeshal.tumblr.com/post/20509476274</link><guid>http://codeshal.tumblr.com/post/20509476274</guid><pubDate>Wed, 04 Apr 2012 23:43:18 -0400</pubDate></item><item><title>Changing Android emulator's /etc/hosts</title><description>&lt;p&gt;If you&amp;#8217;re trying to Wireshark to observe SSL traffic (for example, to see if connections are being reused and SSL sessions being resumed), you&amp;#8217;ll find yourself needing to filter by ip.addr = XXXX. Unfortunately, Amazon Route 53 appears to pretty aggressively vend different IP addresses every time you ask, which means you&amp;#8217;ll want to pick one and throw it in your /etc/hosts so that you can know what your client is using as an IP.&lt;/p&gt;
&lt;p&gt;If your client happens to be an Android emulator, though, you might be in for a rude surprise. It seems (?) like it ignores you local /etc/hosts file. Instead, I had to change the /etc/hosts in the emulator itself. I ended up following some &lt;a href="http://www.bradcurtis.com/2011/02/13/hosts-file-google-android-emulator/"&gt;great instructions from Brad Curtis&lt;/a&gt;. Be sure to pay attention to step 1! Otherwise you&amp;#8217;re in for a head scratcher. In Eclipse, you can enter that parameter in Run &amp;gt; Run Configurations &amp;gt; Target &amp;gt; Additional Emulator Command Line Options. And if you&amp;#8217;re on a Mac, you&amp;#8217;ll probably find adb in ./android-sdks/platform-tools&lt;/p&gt;</description><link>http://codeshal.tumblr.com/post/17337792069</link><guid>http://codeshal.tumblr.com/post/17337792069</guid><pubDate>Thu, 09 Feb 2012 17:40:35 -0500</pubDate></item><item><title>Dear Google, Please Stop Hitting Yourself</title><description>&lt;p&gt;I&amp;#8217;m really rooting for Google.&lt;/p&gt;
&lt;p&gt;I believe in Android as a bulwark against iPhone&amp;#8217;s greedy closed system of iTunes and its hypocritically Orwellian &amp;#8220;&lt;a href="http://gawker.com/5539717/"&gt;freedom from porn&lt;/a&gt;&amp;#8221; (and its &amp;#8220;&lt;a href="http://almerica.blogspot.com/2008/09/podcaster-rejeceted-because-it.html"&gt;we&amp;#8217;ve already solved podcasts&lt;/a&gt;&amp;#8221; (and its &lt;a href="http://www.theiphonespot.net/apple-rejects-%E2%80%98someecards%E2%80%99-iphone-app-for-satiric-material/"&gt;love of Hitler&lt;/a&gt; (and its &lt;a href="http://www.theregister.co.uk/2010/04/15/mark_fiore_rejected_from_app_store/"&gt;intolerance for satire&lt;/a&gt;))). (Plus Android&amp;#8217;s Gmail, Maps, Calendar, OTA syncing, nimble navigation, and fast app release cycles are all superior.)&lt;/p&gt;
&lt;p&gt;I believe in App Engine as a way of letting developers easily build apps that make people&amp;#8217;s lives better.&lt;/p&gt;
&lt;p&gt;I believe in Google Docs and Gmail for making enterprises and individuals more efficient.&lt;/p&gt;
&lt;p&gt;I believe in Google Maps as a platform for visualizing geographic data and making the world more accessible.&lt;/p&gt;
&lt;p&gt;But then the past couple of years happened.&lt;/p&gt;
&lt;p&gt;Android &lt;a href="http://minming.posterous.com/google-currents-yet-another-contribution-to-t"&gt;continues to look like ass&lt;/a&gt;. It has &lt;a href="http://code.google.com/p/android/issues/detail?id=8247"&gt;long-standing issues of runaway battery use&lt;/a&gt; that haven&amp;#8217;t been rectified. (In addition to these mysteries, why would it autoupdate apps (yay!) during the day, when the phone is unlikely to be plugged in, instead of at night? The mind boggles.) Fragmentation has eaten it alive. It&amp;#8217;s uninterested in improving its geolocation APIs. It hangs when I try to answer calls.&lt;/p&gt;
&lt;p&gt;App Engine came up with pricing that had no basis in reality, and then &lt;a href="http://www.vijayp.ca/blog/?p=162"&gt;lost revenue and increased costs for Google by failing to respond&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Docs and Gmail got slower and slower, and, for a year, were nearly impossible to log in to.&lt;/p&gt;
&lt;p&gt;Reader was eviscerated for the unproved Plus.&lt;/p&gt;
&lt;p&gt;Maps came up with pricing that &lt;a href="http://blog.nestoria.co.uk/why-and-how-weve-switched-away-from-google-ma"&gt;drove people away&lt;/a&gt; again and &lt;a href="https://plus.google.com/u/0/118383351194421484817/posts/foj5A1fURGt"&gt;again&lt;/a&gt;, obviously exceeding the cost for even small organizations to just run their own maps. These prices also have no basis in reality. (For context, AdSense pays ~ $1 per thousand page views. Maps tries to charge ~ $4 per thousand page views.)&lt;/p&gt;
&lt;p&gt;I don&amp;#8217;t get it. Is there a department of self-sabotage at Google that, seeing success, gets to work right away trying to erode it? That, having earned good will, attempts to destroy it? That, having read the new Steve Jobs biography, ignores the great advice about avoiding division P&amp;amp;Ls? That, faced with two sides of a balance sheet, haplessly ramps up costs and then scavenges for revenue? That, having built a brand and a user base, tries to alienate it? Google should probably shut that department down.&lt;/p&gt;</description><link>http://codeshal.tumblr.com/post/15713339973</link><guid>http://codeshal.tumblr.com/post/15713339973</guid><pubDate>Thu, 12 Jan 2012 01:14:00 -0500</pubDate></item><item><title>How Netflix runs on AWS</title><description>&lt;a href="http://www.slideshare.net/adrianco/global-netflix-platform"&gt;How Netflix runs on AWS&lt;/a&gt;</description><link>http://codeshal.tumblr.com/post/13118695317</link><guid>http://codeshal.tumblr.com/post/13118695317</guid><pubDate>Mon, 21 Nov 2011 13:59:54 -0500</pubDate></item><item><title>kschoeck:

What Users Do Online

Hot visualization</title><description>&lt;img src="http://24.media.tumblr.com/tumblr_lqtw59deqm1qbtrqlo1_500.gif"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;a href="http://kschoeck.tumblr.com/post/9657661978"&gt;kschoeck&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;What Users Do Online&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Hot visualization&lt;/p&gt;</description><link>http://codeshal.tumblr.com/post/11434172144</link><guid>http://codeshal.tumblr.com/post/11434172144</guid><pubDate>Fri, 14 Oct 2011 09:01:42 -0400</pubDate></item><item><title>Why is Google squeezing developers?</title><description>&lt;p&gt;There have been a lot of crazy prices coming out of Google lately.&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.informationweek.com/news/cloud-computing/platform/231600672"&gt;App Engine Pricing&lt;/a&gt; (since revised to be less insane)&lt;/li&gt;
&lt;li&gt;&lt;a href="http://code.google.com/apis/maps/faq.html"&gt;Maps pricing&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://uncrunched.com/2011/10/02/google-analytics-premium-premiums-the-right-word/"&gt;Analytics&lt;/a&gt; (not exactly a developer-focused product, and the prices aren&amp;#8217;t that crazy for the target tier)&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Here are some things I don&amp;#8217;t understand about this&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;Given the number of overpaid MBAs at Google, how did nobody evaluate this pricing against competition (e.g. EC2 vs. App Engine) or sanity (e.g. maps cost per page view vs typical CPM)? Maybe these prices are an attempt at price discrimination and behind the scenes they&amp;#8217;re negotiating aggressively?&lt;/li&gt;
&lt;li&gt;Does Google really see these as being relevant revenue streams given their revenues?&lt;/li&gt;
&lt;li&gt;App Engine drives adoption of Google Accounts, Maps furthers the Google brand, and Analytics furthers Google ads. Does undercutting these by charging really outweigh the harm to the overall business?&lt;/li&gt;
&lt;li&gt;If Google is fighting for the hearts and minds of developers with Android and other platforms, why show itself to be tone-deaf and heartless toward platform consumers?&lt;/li&gt;
&lt;li&gt;Google used to talk a lot about trying to make the web better with various free services and making money through search. Did they get bored with this?&lt;/li&gt;
&lt;li&gt;Google is sitting on a gigantic cash cow with Apps. Companies pay less for Apps than they do for fogbugz or Campfire or various other services that are less indispensable. Why undercharge for the one service for which enterprises are willing to pay and which has no real competition? Especially if this money could also go to making these applications better and faster (multiple pricing tiers?) instead of the gradual decline we witnessed once Google cleared the market of realistic alternatives. Google could even make money offering one-click billing for App Engine apps used by Google Apps domains. Why is Google trying to make money in the hardest way available? I assume this is some sort of terrible cost center accounting, and the end of an era.&lt;/li&gt;
&lt;/ol&gt;</description><link>http://codeshal.tumblr.com/post/11344515395</link><guid>http://codeshal.tumblr.com/post/11344515395</guid><pubDate>Wed, 12 Oct 2011 00:29:00 -0400</pubDate></item><item><title>Two fun performance talks</title><description>&lt;p&gt;These were making the rounds at work&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.parleys.com/#st=5&amp;amp;id=2662&amp;amp;sl=0"&gt;http://www.parleys.com/#st=5&amp;amp;id=2662&amp;amp;sl=0&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.infoq.com/presentations/Scale-at-Facebook"&gt;http://www.infoq.com/presentations/Scale-at-Facebook&lt;/a&gt;&lt;/p&gt;</description><link>http://codeshal.tumblr.com/post/11304644848</link><guid>http://codeshal.tumblr.com/post/11304644848</guid><pubDate>Mon, 10 Oct 2011 23:30:50 -0400</pubDate></item><item><title>App Engine Receiving Email Caveat</title><description>&lt;p&gt;The sample code makes this totally non-obvious, but the sender is actually a noisy string like &amp;#8220;Joe Blow &amp;lt;joeblow@example.com&amp;gt;&amp;#8221;. You need to parse it using &lt;span&gt;email.utils.parseaddr(message.sender)[&lt;span class="s1"&gt;1&lt;/span&gt;]&lt;/span&gt;&lt;/p&gt;</description><link>http://codeshal.tumblr.com/post/2678343593</link><guid>http://codeshal.tumblr.com/post/2678343593</guid><pubDate>Sun, 09 Jan 2011 22:09:00 -0500</pubDate></item><item><title>Copying files as root</title><description>&lt;p&gt;rsync -avz &amp;#8212;rsync-path=&amp;#8217;sudo rsync&amp;#8217; FILE SERVER:REMOTE_FILE&lt;/p&gt;</description><link>http://codeshal.tumblr.com/post/2657483857</link><guid>http://codeshal.tumblr.com/post/2657483857</guid><pubDate>Sat, 08 Jan 2011 17:14:03 -0500</pubDate></item><item><title>Tweaking the git post-receieve-email hook</title><description>&lt;p&gt;For whatever reason, Git&amp;#8217;s post-receive email hook is a hassle to configure, and ugly. How we do it.&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;cd ~git/repositories/XXXX/hooks&lt;/li&gt;
&lt;li&gt;locate post-receive-email&lt;/li&gt;
&lt;li&gt;cp YYY/post-receive-email . &lt;/li&gt;
&lt;li&gt;emacs post-receieve-email&lt;/li&gt;
&lt;li&gt;change recipients=YOUR MAILING LIST&lt;/li&gt;
&lt;li&gt;change&lt;br/&gt;describe=$(git describe $rev 2&amp;gt;/dev/null)&lt;br/&gt;to&lt;br/&gt;describe=$(git log -1 &amp;#8212;pretty=%s $rev)&lt;/li&gt;
&lt;li&gt;change &lt;br/&gt;Subject: ${emailprefix}$projectdesc $refname_type $short_refname ${change_type}d. $describe&lt;br/&gt;to&lt;br/&gt;Subject: [${emailprefix}$projectdesc $short_refname] $describe&lt;/li&gt;
&lt;li&gt;change emailprefix=&amp;#8221;&lt;/li&gt;
&lt;li&gt;below &amp;#8220;via $rev&amp;#8221;, add      &lt;span&gt; &lt;/span&gt;      &lt;span&gt; &lt;/span&gt;echo &amp;#8220;https://YOUR_CGIT_SERVER/cgit/REPO/commit/?id=$rev&amp;#8221;&lt;/li&gt;
&lt;li&gt;emacs post-receive&lt;/li&gt;
&lt;li&gt;uncomment sourcing of post-receive-email and include fully path to your new post-receive-email file&lt;/li&gt;
&lt;li&gt;if committing is really slow / hangs, uninstall sendmail, install postfix&lt;/li&gt;
&lt;/ol&gt;</description><link>http://codeshal.tumblr.com/post/2316251032</link><guid>http://codeshal.tumblr.com/post/2316251032</guid><pubDate>Tue, 14 Dec 2010 16:57:00 -0500</pubDate></item><item><title>http://stackoverflow.com/questions/4139379/http-keep-alive-in-the-modern-age/4141920</title><description>&lt;a href="http://stackoverflow.com/questions/4139379/http-keep-alive-in-the-modern-age/4141920"&gt;http://stackoverflow.com/questions/4139379/http-keep-alive-in-the-modern-age/4141920&lt;/a&gt;</description><link>http://codeshal.tumblr.com/post/1564593432</link><guid>http://codeshal.tumblr.com/post/1564593432</guid><pubDate>Sat, 13 Nov 2010 15:40:07 -0500</pubDate></item><item><title>What are some useful tips for tuning programs running on the JVM? - Quora</title><description>&lt;a href="http://www.quora.com/What-are-some-useful-tips-for-tuning-programs-running-on-the-JVM"&gt;What are some useful tips for tuning programs running on the JVM? - Quora&lt;/a&gt;</description><link>http://codeshal.tumblr.com/post/1455945772</link><guid>http://codeshal.tumblr.com/post/1455945772</guid><pubDate>Mon, 01 Nov 2010 18:14:33 -0400</pubDate></item></channel></rss>
