<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>real tangible</title>
	<atom:link href="http://realtangible.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://realtangible.com</link>
	<description>personal page of Jason Prado</description>
	<lastBuildDate>Wed, 28 Jul 2010 02:42:35 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Plannr for iPhone</title>
		<link>http://realtangible.com/2010/07/27/plannr-for-iphone/</link>
		<comments>http://realtangible.com/2010/07/27/plannr-for-iphone/#comments</comments>
		<pubDate>Wed, 28 Jul 2010 02:40:48 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[imadethis]]></category>
		<category><![CDATA[plannr]]></category>

		<guid isPermaLink="false">http://realtangible.com/?p=272</guid>
		<description><![CDATA[About two weeks ago we released Plannr in the iTunes app store. My vision for Plannr has always been a mobile experience; your calendar is inherently mobile and highly personal, and it should be with you all the time. The app already more or less has feature parity with the web version of Plannr, and, [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://realtangible.com/wp-content/uploads/2010/07/photo-1.png"><img class="alignright size-full wp-image-273" title="A plan I made for Apple to test with" src="http://realtangible.com/wp-content/uploads/2010/07/photo-1.png" alt="" width="320" height="480" style="float:right" /></a>About two weeks ago we released <a href="http://itunes.apple.com/us/app/plannr/id365234736?mt=8">Plannr in the iTunes app store</a>. My vision for Plannr has always been a mobile experience; your calendar is inherently mobile and highly personal, and it should be with you all the time. The app already more or less has feature parity with the <a href="http://www.useplannr.com">web version of Plannr</a>, and, of course, it takes advantage of features only available on a mobile device (e.g. location and push notifications).</p>
<p>My favorite aspect of the app is how natural and <em>iPhone</em> it feels. We took inspiration from apps we really liked&#8211; Calendar.app, Twitter, and Yelp, just to name a few, and made Plannr feel like Apple shipped it with your iPhone. The calendar view looks and acts like the built-in calendar. Plan creation feels <em>exactly</em> like writing an email. My favorite feature, sharing your location with all the invitees on a plan, is easy to find and pleasant to use.</p>
<p>Since its release, Plannr for iPhone has been downloaded several thousand times. It spent its first week in the store spotlighted in the New &amp; Noteworthy section, which drove downloads to the brink of what our servers could handle. I&#8217;ve always wanted to make software that had scaling issues, and working on scaling is exactly as fun as I thought it would be, which is to say, very fun. Even more enjoyable, I&#8217;ve gotten lots of emails from Plannr users&#8211; some asking for help, some requesting features, and some just saying that Plannr is a cool thing that they like.</p>
<p>So, what&#8217;s next for Plannr? Keeping things quick and stable takes up a good amount of time, but there&#8217;s lots else to do. The third version of Plannr for iPhone, with more polish and a few oft-requested features (swipe-delete, GMail contacts sync, and a no-account option), is awaiting app store approval. We&#8217;re considering other mobile platforms, both Android and HTML, we&#8217;re building new features across all platforms, and we&#8217;re starting work on a pretty kickass way to monetize our products. <a href="http://www.everythingisthebest.com">everythingIsTheBest, LLC</a>, has still gone without funding up to this point, but that&#8217;s also an option we&#8217;re considering.</p>
<p>If you have an iPhone, please do <a href="http://itunes.apple.com/us/app/plannr/id365234736?mt=8">try it out</a>. I&#8217;d love to hear your feedback.</p>
]]></content:encoded>
			<wfw:commentRss>http://realtangible.com/2010/07/27/plannr-for-iphone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPhone Three20 dashed underline style</title>
		<link>http://realtangible.com/2010/07/27/iphone-three20-dashed-underline-style/</link>
		<comments>http://realtangible.com/2010/07/27/iphone-three20-dashed-underline-style/#comments</comments>
		<pubDate>Wed, 28 Jul 2010 01:58:16 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://realtangible.com/?p=269</guid>
		<description><![CDATA[Underlining text on the iPhone is completely non-trivial, and Three20, surprisingly, doesn&#8217;t seem to come with anything to make it easier. Here&#8217;s what I&#8217;m using for an upcoming version of Plannr: myLabel.style = [PlannrDashedUnderlineStyle styleWithColor:[UIColor grayColor] width:1 next:nil]; Available here. Based on a stackexchange answer. My contributions are public domain.]]></description>
			<content:encoded><![CDATA[<p>Underlining text on the iPhone is completely non-trivial, and Three20, surprisingly, doesn&#8217;t seem to come with anything to make it easier. Here&#8217;s what I&#8217;m using for an upcoming version of Plannr:</p>
<pre>myLabel.style = [PlannrDashedUnderlineStyle styleWithColor:[UIColor grayColor] width:1 next:nil];</pre>
<p>Available <a href="http://dump.realtangible.com/DashedUnderlineStyle.zip">here</a>. Based on a stackexchange <a href="http://three20.stackexchange.com/questions/152/ttstyledtextlabel-with-dotted-underline">answer</a>. My contributions are public domain.</p>
]]></content:encoded>
			<wfw:commentRss>http://realtangible.com/2010/07/27/iphone-three20-dashed-underline-style/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>With friends like mine</title>
		<link>http://realtangible.com/2010/04/21/with-friends-like-mine/</link>
		<comments>http://realtangible.com/2010/04/21/with-friends-like-mine/#comments</comments>
		<pubDate>Wed, 21 Apr 2010 16:49:37 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[friends]]></category>

		<guid isPermaLink="false">http://realtangible.com/?p=265</guid>
		<description><![CDATA[From: FutureMe.org &#60;mailer@futureme.org&#62; To: jason.prado@gmail.com Subject: Kicking You In The Balls The following is an e-mail from the past, composed on Friday, April 18, 2008, and sent via FutureMe.org by FutureMe user Truebe (truebe@gmail.com) - &#8211; - &#8211; - &#8211; - &#8211; - &#8211; - &#8211; - &#8211; - &#8211; - &#8211; - &#8211; - &#8211; [...]]]></description>
			<content:encoded><![CDATA[<p>From: FutureMe.org &lt;mailer@futureme.org&gt;<br />
To: jason.prado@gmail.com<br />
Subject: Kicking You In The Balls</p>
<p>The following is an e-mail from the past, composed on Friday, April 18, 2008, and sent via FutureMe.org by FutureMe user Truebe (<a href="mailto:truebe@gmail.com">truebe@gmail.com</a>)<br />
- &#8211; - &#8211; - &#8211; - &#8211; - &#8211; - &#8211; - &#8211; - &#8211; - &#8211; - &#8211; - &#8211; - &#8211; - &#8211; - -</p>
<p>Hey Jason,</p>
<p>Today is the two year anniversary of your first day at Microsoft, and you told me that if you were still working at Microsoft after two years I could kick you in the balls (This was sent via futureme two years ago, so I wouldn&#8217;t forget).  So Happy Anniversary!</p>
<p>If you&#8217;re not still working there, then you are one lucky bastard today.</p>
<p>By the way, I also sent me an email a few days earlier (from the past), so there&#8217;s a good chance I&#8217;ve already bought a plane ticket to your location and will be ready and waiting to kick you in the balls.  Unless you&#8217;re not working for Microsoft, in which case, how&#8217;ve you been, we never talk anymore!</p>
<p>-Truebe</p>
]]></content:encoded>
			<wfw:commentRss>http://realtangible.com/2010/04/21/with-friends-like-mine/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Rebranded! Redesigned! Plannr!</title>
		<link>http://realtangible.com/2010/04/20/rebranded-redesigned-plannr/</link>
		<comments>http://realtangible.com/2010/04/20/rebranded-redesigned-plannr/#comments</comments>
		<pubDate>Tue, 20 Apr 2010 20:10:03 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[everythingIsTheBest]]></category>
		<category><![CDATA[plannr]]></category>

		<guid isPermaLink="false">http://realtangible.com/?p=262</guid>
		<description><![CDATA[Introducing Plannr. We&#8217;ve rebranded PencilYouIn and given it an amazing new design. It&#8217;s prettier, faster, and more informal than before. It has a much better name. It&#8217;s the coolest piece of software I&#8217;ve ever worked on. For real, use it next time you&#8217;re getting dinner with four people. You won&#8217;t be disappointed. Much thanks to [...]]]></description>
			<content:encoded><![CDATA[<p>Introducing <a href="http://www.useplannr.com">Plannr</a>.</p>
<p>We&#8217;ve rebranded PencilYouIn and given it an amazing new design. It&#8217;s prettier, faster, and more informal than before. It has a much better name. It&#8217;s the coolest piece of software I&#8217;ve ever worked on. For real, use it next time you&#8217;re getting dinner with four people. You won&#8217;t be disappointed.</p>
<p>Much thanks to our friend <a href="http://jlewenstein.tumblr.com/">Joel Lewenstein</a> for the design. The man has talent.</p>
]]></content:encoded>
			<wfw:commentRss>http://realtangible.com/2010/04/20/rebranded-redesigned-plannr/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rules? Where we&#8217;re going&#8230;</title>
		<link>http://realtangible.com/2010/04/18/rules-where-were-going/</link>
		<comments>http://realtangible.com/2010/04/18/rules-where-were-going/#comments</comments>
		<pubDate>Sun, 18 Apr 2010 10:52:04 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://realtangible.com/?p=253</guid>
		<description><![CDATA[we don&#8217;t need rules. I was super impressed today upon reading about the SEC requiring Python source code for securities disclosure to represent a description of some complex calculation. They require that funds publish a program that takes input and produces an answer. The SEC could ask these funds to just write down a bunch [...]]]></description>
			<content:encoded><![CDATA[<p><strong>we don&#8217;t need rules.</strong></p>
<p>I was<a href="http://realtangible.com/wp-content/uploads/2010/04/What-To-Eat-Cereal.jpg"><img style="float: right" class="size-medium wp-image-256 alignright" title="What-To-Eat-Cereal" src="http://realtangible.com/wp-content/uploads/2010/04/What-To-Eat-Cereal-108x300.jpg" alt="" width="108" height="300" /></a> super impressed today upon reading about the <a href="http://jrvarma.wordpress.com/2010/04/16/the-sec-and-the-python/">SEC requiring Python source code for securities disclosure</a> to represent a description of some complex calculation. They require that funds publish a program that takes input and produces an answer.</p>
<p>The SEC could ask these funds to just write down a bunch of assumptions and rules that, when put into practice, would allow a person who understands the rules to apply them to their input values and arrive at an answer. I argue: that would suck.</p>
<p>Clearly a program that does the work for the human is awesome, but there&#8217;s something more important here. The SEC requires that the <em>source code</em> of the program be made available also, so that (and I may be extrapolating here a little) the source code itself can represent the rules and policies of the financial product. This just makes so much sense. The code is the specification. It is authoritative. But, even better, it is naturally understandable.</p>
<p>I&#8217;m thinking that imperative programs are the best way to specify a lot of complex behaviors.  Humans seem to intuitively grok linear flow and simple branching. Imperative descriptions even help us see order even when there isn&#8217;t really order to see. The <a href="http://topcultured.com/what-should-i-eat-cereal-edition-flowchart/">cereal</a> decision in the attached example of the heavily-memed &#8220;mundane process in long flowchart&#8221; is not necessarily sequential, but when we see the options lined up in a branched structure we naturally follow it. The author could have just written &#8220;Golden Grahams are great if you&#8217;re on food stamps&#8221; in a list of a dozen other such declarations, but that would be unfunny, lost in the jumble. I suspect all sets of rules have similar problems.</p>
<p>Declarative information dumps remind me of the nearly-defunct programming language <a href="http://en.wikipedia.org/wiki/Prolog">Prolog</a>, wherein, to grossly oversimplify, a programmer considers a problem and writes a set of declarations that the answer to a problem must satisfy. Then a solver reads the declarations and arrives at the answer. The Prolog model is &#8220;tell me about the problem and I&#8217;ll go solve it&#8221;, whereas the imperative method is &#8220;solve a problem then tell me how you solved it&#8221;. Sounds magical and great, right? Then why don&#8217;t any of my friends write  Prolog? There were efficiency problems and other factors, including just  fashion, but Prolog never took off because <em>declarations a</em><em>re not how  people think</em>. People think in steps and conditions and branches and  loops. We write checklists and run through them linearly. We think about our thought process explicitly, seeing it as conditional tests we perform in sequential fashion.</p>
<p>I don&#8217;t know if this is fundamental to human thought, or if I&#8217;ve been infected with imperative thought since I picked up QBasic as a kid. We certainly live in an imperative world, and I can barely imagine how else it could work. Every time I&#8217;ve worked with programming tools that deal with logical declarations, they arrive upon results far from what I intended; <strong>the rules I input combine in unexpected ways to produce unpredictable behavior</strong>. Imperative programs, on the other hand, seem straightforward and almost effortlessly traceable. I&#8217;d rather write a spaghetti-code, heavily-branching 200-line state machine than logic out 20 rules that cover the same domain.</p>
<p>But, we&#8217;re potentially bumping up against the limits of what imperative solutions to problems can accomplish in computing. Software projects today are more wildly large and complex than ever, and today&#8217;s software has to be written to work across multiple CPU cores and across countless machines in a datacenter. All signs point to human reasoning alone not being enough to hack it in this complicated landscape. And that&#8217;s bad news, because I tend to think that imperative programming is a natural behavior that easily flows with our way of doing things.</p>
<p>I don&#8217;t have any kind of an answer to this dilemma. Maybe I&#8217;m a 24-year old dinosaur already, but I&#8217;m pretty sold on the important of imperative thought. I have some ideas about a  productive balance that I&#8217;ll try to explicate further, but the main idea is to use imperative description for as much problem-solving as possible, then reason about larger elements declaratively (and, in programming  terms, functionally).</p>
]]></content:encoded>
			<wfw:commentRss>http://realtangible.com/2010/04/18/rules-where-were-going/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>PencilYouIn</title>
		<link>http://realtangible.com/2010/04/02/pencilyouin/</link>
		<comments>http://realtangible.com/2010/04/02/pencilyouin/#comments</comments>
		<pubDate>Fri, 02 Apr 2010 18:53:30 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[everythingIsTheBest]]></category>
		<category><![CDATA[imadethis]]></category>

		<guid isPermaLink="false">http://realtangible.com/?p=248</guid>
		<description><![CDATA[I&#8217;m finally getting around to writing about what I&#8217;ve been working on for the past two months. PencilYouIn is everythingIsTheBest, LLC&#8217;s latest product. At Microsoft, I started using Outlook in its natural habitat: a large, structured corporation. As the 8-ball says, &#8220;Outlook not good&#8221;, but it really nails scheduling in the corporate world. I used [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m finally getting around to writing about what I&#8217;ve been working on for the past two months. <a href="http://www.pencilyouin.com">PencilYouIn</a> is <a href="http://www.everythingisthebest.com">everythingIsTheBest, LLC&#8217;s</a> latest product.</p>
<p>At Microsoft, I started using Outlook in its natural habitat: a large, structured corporation. As the 8-ball says, &#8220;Outlook not good&#8221;, but it really nails scheduling in the corporate world. I used the put-a-thing-on-someone&#8217;s calendar feature (called an &#8220;S+&#8221; after some ancient tradition) for every meeting that was less formal than stopping by someone&#8217;s office. Even as a generally unscheduled person, my Outlook calendar became authoritative for my work life. And it was good.</p>
<p>My real life continued on less scheduled than ever; I haven&#8217;t been a scheduler since I was in college. This presented an obvious inconsistency&#8211; the S+ makes me happier and more productive at work, but I have no remotely analogous tool in the real world. My schedule is maintained in my head and coordinated over emails and txts.</p>
<p>Obviously, Outlook is the wrong tool for coordinating my real life. It&#8217;s hyperformal because it grew up in the business world. And I don&#8217;t need a tool at all for the least formal events in my life. Nothing will ever replace a txt that says &#8220;hey come over and watch a movie&#8221;. But there&#8217;s a wide range of semi-formal, semi-scheduled stuff going on in my life, and I think PencilYouIn is the tool for those.</p>
<p>PencilYouIn puts things in your calendar and coordinates the details of your plans: time, place, and who&#8217;s coming. It&#8217;s lightweight. It stays out of your way. It syncs to your phone and your calendar. It txts you updates. You never have to sign up to use it. You can just cc it on an email. It gives you an easy way to contact everyone. You can share your location when you&#8217;re running late. It&#8217;s private until you make it public. It&#8217;s not an evite.</p>
<p>My calendar is social, just-in-time, and push. So why are iCal and Google Calendar just 1995 versions of a wall calendar? PencilYouIn is how I want to use a calendar in 2010.</p>
<p>More on the features of PencilYouIn later. For now, I encourage you to <a href="http://www.pencilyouin.com/new">check it out</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://realtangible.com/2010/04/02/pencilyouin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Who Owns the Internet?</title>
		<link>http://realtangible.com/2010/02/08/who-owns-the-internet/</link>
		<comments>http://realtangible.com/2010/02/08/who-owns-the-internet/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 21:54:18 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[imadethis]]></category>
		<category><![CDATA[internets]]></category>

		<guid isPermaLink="false">http://realtangible.com/?p=243</guid>
		<description><![CDATA[At the most recent Salon Fremont I gave a talk about authority and ownership on the internet. If you haven&#8217;t been before, the Salon is a gathering like a bunch of pretentious Frenchies used to have where attendees discuss their work or other topics of interest. I thought the talk went really well. The most [...]]]></description>
			<content:encoded><![CDATA[<p>At the most recent Salon Fremont I gave a talk about authority and ownership on the internet. If you haven&#8217;t been before, the Salon is a gathering like a bunch of <a href="http://en.wikipedia.org/wiki/Salon_%28gathering%29">pretentious Frenchies</a> used to have where attendees discuss their work or other topics of interest.</p>
<p>I thought the talk went really well. The most difficult part of it was to hit the right mix of technical detail&#8211; enough to understand the whole picture, but not so much as to make the important ideas inaccessible to those without a technical background. My co-presenter for the night was Kascha, with her shiny new PhD, speaking on the meaning of life. Thus my talk had to appeal to a crowd just as ready to discuss Arendt as DNS.</p>
<p>Like every Salon I&#8217;ve been to, I was amazed by the level of discussion that followed both presentations. If there&#8217;s anything like it in your city, you should find it; if there isn&#8217;t, you should start one.</p>
<p>I&#8217;ve posted my <a href="http://dump.realtangible.com/whoowns/who_owns_the_internet.pdf">slides</a> and <a href="http://dump.realtangible.com/whoowns/notes.txt">notes</a>. If it&#8217;s something you&#8217;re interested in, don&#8217;t hesitate to talk to me about it.</p>
]]></content:encoded>
			<wfw:commentRss>http://realtangible.com/2010/02/08/who-owns-the-internet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>everythingIsTheBest, LLC</title>
		<link>http://realtangible.com/2010/02/05/everythingisthebest-llc/</link>
		<comments>http://realtangible.com/2010/02/05/everythingisthebest-llc/#comments</comments>
		<pubDate>Sat, 06 Feb 2010 02:50:44 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[everythingIsTheBest]]></category>

		<guid isPermaLink="false">http://realtangible.com/?p=239</guid>
		<description><![CDATA[We incorporated. We have a website. Now we just need a product. A commemorative koan: When Banzan was walking through a market he overheard a conversation between a butcher and his customer. &#8220;Give me the best piece of meat you have,&#8221; said the customer. &#8220;Everything in my shop is the best,&#8221; replied the butcher. &#8220;You [...]]]></description>
			<content:encoded><![CDATA[<p>We incorporated. We have a <a href="http://everythingIsTheBest.com">website</a>. Now we just need a product.</p>
<p>A commemorative <a href="http://www.ashidakim.com/zenkoans/31everythingisbest.html">koan</a>:</p>
<p style="padding-left: 30px;">When Banzan was walking through a market he overheard a conversation between a butcher and his customer.</p>
<p style="padding-left: 30px;">&#8220;Give me the best piece of meat you have,&#8221; said the customer.</p>
<p style="padding-left: 30px;">&#8220;Everything in my shop is the best,&#8221; replied the butcher. &#8220;You cannot find here any piece of meat that is not the best.&#8221;</p>
<p style="padding-left: 30px;">At these words Banzan became enlightened.</p>
]]></content:encoded>
			<wfw:commentRss>http://realtangible.com/2010/02/05/everythingisthebest-llc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ridepenguin: share a cab home from SeaTac</title>
		<link>http://realtangible.com/2009/12/28/ridepenguin-share-a-cab-home-from-seatac/</link>
		<comments>http://realtangible.com/2009/12/28/ridepenguin-share-a-cab-home-from-seatac/#comments</comments>
		<pubDate>Tue, 29 Dec 2009 04:33:21 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[imadethis]]></category>
		<category><![CDATA[projects]]></category>
		<category><![CDATA[seattle]]></category>

		<guid isPermaLink="false">http://realtangible.com/?p=234</guid>
		<description><![CDATA[Ben and I released a little project we&#8217;ve been working on over the past two weeks: ridepenguin. It&#8217;s a mobile webapp for finding cab shares from SeaTac Airport to Seattle/surrounding areas. And I think it beats shouting at a crowd outside the airport. We&#8217;ve been poking around with location-based apps for a while and this [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" style="float:left" title="RidePenguin" src="http://dump.realtangible.com/pics/penguin_logo_medium.png" alt="" width="300" height="115" />Ben and I released a little project we&#8217;ve been working on over the past two weeks: <a href="http://ridepenguin.com">ridepenguin</a>. It&#8217;s a mobile webapp for finding cab shares from SeaTac Airport to Seattle/surrounding areas. And I think it beats shouting at a crowd outside the airport.</p>
<p>We&#8217;ve been poking around with location-based apps for a while and this is our first to be released. The most fun part of it was something highly reusable that helps quickly decide if two locations are &#8216;close&#8217; in a practical sense, as in if you went to one would you mind going to the other on the same trip.</p>
<p>The project has already gotten a bit of press on <a href="http://techflash.com/seattle/2009/12/cabbing_it_home_from_seatac_give_this_rideshare_service_a_try.html">TechFlash</a> and <a href="http://publicola.net/?p=21770">Publicola</a>. Thanks especially to <a href="http://twitter.com/toddbishop">Todd Bishop</a> from TechFlash for talking to Ben about the launch. New media &gt; old media by a long shot.</p>
]]></content:encoded>
			<wfw:commentRss>http://realtangible.com/2009/12/28/ridepenguin-share-a-cab-home-from-seatac/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Recurrences</title>
		<link>http://realtangible.com/2009/12/24/recurrences/</link>
		<comments>http://realtangible.com/2009/12/24/recurrences/#comments</comments>
		<pubDate>Fri, 25 Dec 2009 03:14:17 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[imadethis]]></category>
		<category><![CDATA[projects]]></category>

		<guid isPermaLink="false">http://realtangible.com/?p=226</guid>
		<description><![CDATA[I wrote a small iPhone app called Recurrences. It fills a niche that I&#8217;ve been needing&#8211; a todo list for things that never get done, they just get done for now. Like calling your mom or emailing friends. When you finish a task, you hit done and it moves to the bottom of the todo [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone" title="screencap" style="float:left" src="http://dump.realtangible.com/pics/recurrencescap.png" alt="Recurrences Screencap" width="320" height="240" /><br />
I wrote a small iPhone app called <a href="http://itunes.apple.com/us/app/recurrences/id345155475?mt=8">Recurrences</a>. It fills a niche that I&#8217;ve been needing&#8211; a todo list for things that never get done, they just get done for now. Like calling your mom or emailing friends. When you finish a task, you hit done and it moves to the bottom of the todo list. And every task always tells you how long it&#8217;s been since last you did it. Super simple, but it took me two days to write (and learn CoreData, which is pretty cool) and I&#8217;ll be happy if anyone else finds a use for it besides me.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://realtangible.com/2009/12/24/recurrences/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How to get a hold of me</title>
		<link>http://realtangible.com/2009/11/20/how-to-get-a-hold-of-me/</link>
		<comments>http://realtangible.com/2009/11/20/how-to-get-a-hold-of-me/#comments</comments>
		<pubDate>Fri, 20 Nov 2009 22:11:51 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[internets]]></category>
		<category><![CDATA[projects]]></category>

		<guid isPermaLink="false">http://realtangible.com/?p=221</guid>
		<description><![CDATA[While thinking about how to route messages for a project I&#8217;m starting, I decided to flowchart every method of electronic communication I engage with on a daily basis, how they are routed, and how they get to me. Not sure what to glean from this yet. There&#8217;s definitely a lot more polling than I&#8217;m happy [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://dump.realtangible.com/mycommunication.jpg"><br />
<img height="204" width="320" alt="" src="http://dump.realtangible.com/mycommunication_small.jpg" style="float: left;"/><br />
</a><br />
While thinking about how to route messages for a project I&#8217;m starting, I decided to flowchart every method of electronic communication I engage with on a daily basis, how they are routed, and how they get to me. Not sure what to glean from this yet. There&#8217;s definitely a lot more polling than I&#8217;m happy with. The only direct push is via txt (and phone, but I don&#8217;t talk on the phone regularly). Everything else goes through at least one tight polling loop. We can do better, internet!</p>
]]></content:encoded>
			<wfw:commentRss>http://realtangible.com/2009/11/20/how-to-get-a-hold-of-me/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Programming is like wishing on a genie</title>
		<link>http://realtangible.com/2009/11/18/programming-is-like-wishing-on-a-genie/</link>
		<comments>http://realtangible.com/2009/11/18/programming-is-like-wishing-on-a-genie/#comments</comments>
		<pubDate>Wed, 18 Nov 2009 20:27:17 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[books]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://realtangible.com/?p=218</guid>
		<description><![CDATA[I&#8217;m reading Guy Steele&#8217;s interview in Coders at Work, and I found one of his analogies to be pretty neat: And if you look at the fairy tales, people want to be able to just think in their minds what they want, wave their hands, and it happens. And of course the fairy tales are [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m reading Guy Steele&#8217;s interview in <a href="http://www.amazon.com/Coders-at-Work-Peter-Seibel/dp/1430219483">Coders at Work</a>, and I found one of his analogies to be pretty neat:</p>
<blockquote><p>And if you look at the fairy tales, people want to be able to just think in their minds what they want, wave their hands, and it happens. And of course the fairy tales are full of cautionary tales where you forgot to cover the edge case and then something bad happens.</p></blockquote>
<p>As a pretty accurate real world example, he offers:</p>
<blockquote><p>&#8230;suppose I were to tell my smart computer, &#8220;OK, I&#8217;ve got this address book and I want the addresses to always be in sorted order,&#8221; and it responds by throwing away everything but the first entry. Now the address book is sorted. But that&#8217;s not what you wanted.</p></blockquote>
<p>Yeah, that&#8217;s how programming feels. I remember running into situations exactly like that when programming in Epilog and when trying to annotate code to pass through a static analysis tool. Those problems made me think that the logical/declarative paradigm is just not cut out for being written by humans, whereas functional and certainly imperative models of computation are actually more intuitive, despite their complexity.</p>
<p>I&#8217;m not sure Steele would draw the same conclusion, but his list of more than a dozen languages he has worked in seriously does not include Prolog.</p>
]]></content:encoded>
			<wfw:commentRss>http://realtangible.com/2009/11/18/programming-is-like-wishing-on-a-genie/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Goodbye Silverlight</title>
		<link>http://realtangible.com/2009/11/15/goodbye-silverlight/</link>
		<comments>http://realtangible.com/2009/11/15/goodbye-silverlight/#comments</comments>
		<pubDate>Sun, 15 Nov 2009 19:08:32 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[dayjob]]></category>

		<guid isPermaLink="false">http://realtangible.com/?p=215</guid>
		<description><![CDATA[This is the email I sent to my team upon leaving on Friday. Silverlight, baby, sit down, we need to talk. What&#8217;s that you ask? No, no, it&#8217;s nothing serious. Well, okay, yeah it&#8217;s kind of serious. I need to talk about us. When we started hanging out a year and a half ago, I [...]]]></description>
			<content:encoded><![CDATA[<p>This is the email I sent to my team upon leaving on Friday.</p>
<blockquote><p>Silverlight, baby, sit down, we need to talk.</p>
<p>What&#8217;s that you ask? No, no, it&#8217;s nothing serious. Well, okay, yeah it&#8217;s kind of serious. I need to talk about us.</p>
<p>When we started hanging out a year and a half ago, I didn&#8217;t think it was going to be a big deal. You were the new platform in town, and I had to see what you were all about. I figured you&#8217;d be up for a good time with no strings attached, you know? But something happened&#8230; I really started to fall for you. I found myself up late thinking about you. I was smitten with your rapid release cycles and impressive&#8230; feature sets.</p>
<p>But now, well, we want different things. You want to settle down and play it safe. You&#8217;re over big refactorings and overengineering. You’re all about schedules and planning and being on time. And trust me, I understand that&#8217;s just where you are in your product lifetime. But please understand, that&#8217;s not where I am. Wait! Wait, no, I don&#8217;t think you&#8217;re boring. Really. We&#8217;re just&#8230; interested in different things.</p>
<p>Darling, please don&#8217;t cry. We&#8217;ll always be friends. I&#8217;m totally going to use you for every RIA app I build. Hell, I&#8217;ll even build a mobile app with you later. And just remember the good times. Remember that snowy night when I trekked 3 hours in a blizzard to spend a romantic weekend with you? We integrated forward, reverse, every which way.</p>
<p>But times haven&#8217;t always been good, right? Remember OpacityMask? After you hurt me like that, I didn&#8217;t know if I could trust you again. You burned me so bad, baby. And let&#8217;s not even get into what happened at Taco Town… I thought that was going to be the death of me.</p>
<p>Really, Silverlight? How could you even accuse me of not being loyal? After all we&#8217;ve been through. I started using Windows for you! I commuted to Redmond to see you every day. I gave up the STL! Honestly, after all we&#8217;ve been through&#8230;</p>
<p>But you’re right, there is a reason. It&#8217;s not exactly serious yet, but my interest has been peaked by something else. Its name is Startup, and it wants me all to itself now. Startup does whatever I say, and it gets pretty crazy&#8211; it’s into test-driven development, agile methods, you name it. It moves fast and I need that excitement again in my life. I&#8217;m sorry, you don&#8217;t want to hear about that, but this is how I feel.  You’ve taught me so much these past few months and introduced me to so many wonderful friends that I hope we can all continue to be friends.</p>
<p>I really do wish you all the best, and I know you&#8217;ll find the person who&#8217;s right for you. I think you have 300 excellent candidates right here&#8230;</p>
<p>But to be serious for a moment, it&#8217;s been really great working with all of you. I&#8217;ve enjoyed getting to know everyone on the team, and I certainly hope to stay in touch. It&#8217;s not this company or this product that makes this an amazing team&#8211; it&#8217;s all of you.</p>
<p>The biggest goal I&#8217;ve ever had is to start a successful company of my own, and I have to take this chance to try it, especially while I am young and have so little to lose. Thus, this Friday, November 13th, is my last day at Microsoft. I&#8217;ll be leaving to launch my own startup.</p>
<p>I&#8217;m still going to be in Seattle for the foreseeable future, and I&#8217;d certainly like to hear from you guys. I can always be reached at jason.prado@gmail.com.</p>
<p>Sincerely,<br />
Jason</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://realtangible.com/2009/11/15/goodbye-silverlight/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>% 2 or &amp; 1 ?</title>
		<link>http://realtangible.com/2009/10/08/2-or-1/</link>
		<comments>http://realtangible.com/2009/10/08/2-or-1/#comments</comments>
		<pubDate>Fri, 09 Oct 2009 01:07:53 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://realtangible.com/?p=211</guid>
		<description><![CDATA[Should you test an integer for evenness by n % 2 == 0 or n &#038; 1 == 0? I always assumed they compiled down to the same thing, so today I checked. All code compiled in gcc4 -O3. (gdb) x/8i foo1 0x1fa0 &#60;foo1&#62;: push %ebp 0x1fa1 &#60;foo1+1&#62;: mov %esp,%ebp 0x1fa3 &#60;foo1+3&#62;: mov 0x8(%ebp),%eax 0x1fa6 [...]]]></description>
			<content:encoded><![CDATA[<p>Should you test an integer for evenness by <code>n % 2 == 0</code> or <code>n &#038; 1 == 0</code>? I always assumed they compiled down to the same thing, so today I checked. All code compiled in gcc4 -O3.</p>
<p><code><br />
(gdb) x/8i foo1<br />
0x1fa0 &lt;foo1&gt;:	push   %ebp<br />
0x1fa1 &lt;foo1+1&gt;:	mov    %esp,%ebp<br />
0x1fa3 &lt;foo1+3&gt;:	mov    0x8(%ebp),%eax<br />
0x1fa6 &lt;foo1+6&gt;:	leave<br />
0x1fa7 &lt;foo1+7&gt;:	xor    $0x1,%eax<br />
0x1faa &lt;foo1+10&gt;:	and    $0x1,%eax<br />
0x1fad &lt;foo1+13&gt;:	ret<br />
0x1fae &lt;foo1+14&gt;:	xchg   %ax,%ax<br />
</code></p>
<p><code><br />
(gdb) x/8i foo2<br />
0x1fb0 &lt;foo2&gt;:	push   %ebp<br />
0x1fb1 &lt;foo2+1&gt;:	mov    %esp,%ebp<br />
0x1fb3 &lt;foo2+3&gt;:	mov    0x8(%ebp),%eax<br />
0x1fb6 &lt;foo2+6&gt;:	leave<br />
0x1fb7 &lt;foo2+7&gt;:	xor    $0x1,%eax<br />
0x1fba &lt;foo2+10&gt;:	and    $0x1,%eax<br />
0x1fbd &lt;foo2+13&gt;:	ret<br />
0x1fbe &lt;foo2+14&gt;:	xchg   %ax,%ax<br />
</code></p>
<p>Yep, same thing. This worked the same with signed vs. unsigned ints on my intel mac. According to this <a href="http://www.archivum.info/comp.lang.c/2005-09/01245/Re:_Testing_a_number_for_evenness">thread</a>, that isn&#8217;t the case on all architectures.</p>
<p>Premature optimizers should stop prematurely optimizing. If taking the remainder when divided by 2 is clearer to you, then do it that way. The compiler doesn&#8217;t care.</p>
]]></content:encoded>
			<wfw:commentRss>http://realtangible.com/2009/10/08/2-or-1/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>THEM THANGS is pretty cool</title>
		<link>http://realtangible.com/2009/08/14/them-thangs-is-pretty-cool/</link>
		<comments>http://realtangible.com/2009/08/14/them-thangs-is-pretty-cool/#comments</comments>
		<pubDate>Sat, 15 Aug 2009 03:15:30 +0000</pubDate>
		<dc:creator>jason</dc:creator>
				<category><![CDATA[pretty]]></category>

		<guid isPermaLink="false">http://realtangible.com/?p=205</guid>
		<description><![CDATA[Do you like: Models Naked models Hipster girls Naked hipster girls Clothed hipster guys Motorcycles Drugs Violence Awesome If you answered yes to one or more of the above, then you will probably like THEM THANGS, a photo blog curated by Justin Blyth. I don&#8217;t know much about him besides this quite simplistic blog, but [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://dump.realtangible.com/pics/themthangmodel.jpg"><img style="float:right;" src="http://dump.realtangible.com/pics/themthangmodel.jpg" alt="" width="199" height="300" /></a>Do you like:</p>
<ul>
<li>Models</li>
<li>Naked models</li>
<li>Hipster girls</li>
<li>Naked hipster girls</li>
<li>Clothed hipster guys</li>
<li>Motorcycles</li>
<li>Drugs</li>
<li>Violence</li>
<li>Awesome</li>
</ul>
<p>If you answered yes to one or more of the above, then you will probably like <a href="http://jblyth.com/blog.html">THEM THANGS</a>, a photo blog curated by <a href="http://jblyth.com/">Justin Blyth</a>. I don&#8217;t know much about him besides this quite simplistic blog, but his portfolio looks pretty neat. Check it out.</p>
]]></content:encoded>
			<wfw:commentRss>http://realtangible.com/2009/08/14/them-thangs-is-pretty-cool/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
