<?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></description><title>arbales</title><generator>Tumblr (3.0; @arbales)</generator><link>http://thoughts.austinbales.com/</link><item><title>Design is how it works. Design is what it looks like. Design is it.

Design isn’t, however, a...</title><description>&lt;p&gt;Design is how it works. Design is what it looks like. Design is it.&lt;/p&gt;

&lt;p&gt;Design isn’t, however, a concrete component. Each thing isn’t the essence of 1/nth part design – there is no discreet measure for this essential element of a thing. Rather, design permeates the form, function, intent, and feeling of any made thing – the gestalt.&lt;/p&gt;

&lt;p&gt;The nature of design is process: from an existing state – to a preferred one. This shift is design. Exemplary artifacts of this process are those whose form and function are equivalent.&lt;/p&gt;</description><link>http://thoughts.austinbales.com/post/17651527770</link><guid>http://thoughts.austinbales.com/post/17651527770</guid><pubDate>Wed, 15 Feb 2012 04:37:26 -0500</pubDate></item><item><title>Photo</title><description>&lt;img src="http://28.media.tumblr.com/tumblr_lte8r3xBGx1qzydjto1_500.jpg"/&gt;&lt;br/&gt;&lt;br/&gt;</description><link>http://thoughts.austinbales.com/post/11741214291</link><guid>http://thoughts.austinbales.com/post/11741214291</guid><pubDate>Fri, 21 Oct 2011 15:44:35 -0400</pubDate></item><item><title>OAuth is good for you</title><description>&lt;p&gt;I dislike making accounts. I dislike that Keychain sync will disappear when MobileMe goes. I also dislike 1Password’s UI and its kludgy integration. Finally, I dislike typing usernames and passwords.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;OAuth allows users to forget about “logging in” an instead think about their identity in a more realistic way.&lt;/strong&gt; When you sign-in to a website with Facebook, you’re providing your actual canonical identity to that site — not leaving a weak tie to &lt;code&gt;katkid104@excite.com&lt;/code&gt;. Terrified? The fact is that the anonymity your feline flavored e-mail supposadly provided was just an illusion anyway. Unless you use an insane browser (like Iron) you’re leaving traceable traces. So unless you’ve consistently managed to use &lt;code&gt;_why&lt;/code&gt; in place of your name and leave no personal information anywhere, you’re already exposed.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://mad.catman.co/1o0Y0q1M3W0t3m251I1u/content" alt="Facebook login with basic permissions"/&gt;&lt;/p&gt;

&lt;p&gt;OAuth makes you more secure by drawing your attention to the act of sharing your personal data. Facebook does a great jub of illustrating the process with iconography and making it obvious what you’re doing. There have been numerous times I’ve opted out of sharing personal information with sites because they asked for too much, and reduced my trust in them. That’s not a bad thing — the OAuth process highlighted the suspicious nature of a site I might otherwise have trusted. Without oAuth, I’d have made a username and password, given them an e-mail, fullname, etc. Providing content, faked or not, is still less secure than providing no content. Plus, the best part, is that it elminates the need to create and manage that content in tandem with my real data, and to created and manage passwords.&lt;/p&gt;

&lt;p&gt;For development, OAuth rocks. Maybe at first, sure, it was hard to implement and we hadn’t collectively aggreed on UI paradigms for it. But now &lt;a href="https://github.com/intridea/omniauth"&gt;Omniauth&lt;/a&gt;, &lt;a href="https://github.com/bnoguchi/everyauth"&gt;Everyauth&lt;/a&gt; and &lt;a href="https://github.com/pennersr/django-allauth"&gt;whatever&lt;/a&gt; &lt;a href="https://github.com/omab/django-social-auth"&gt;Python&lt;/a&gt; has, along with the libraries for &lt;a href="https://github.com/nxtbgthng/OAuth2Client"&gt;Objective-C&lt;/a&gt; and &lt;a href="https://github.com/wareninja/generic-oauth2-login-for-android"&gt;Java&lt;/a&gt;, has made oAuth consumption easier than creating your own user/session management.&lt;/p&gt;

&lt;p&gt;OAuth makes sense to me. And I like it. Apparently a lot of people don’t. If you use an app I build, you’re probably going to at least encounter it.&lt;/p&gt;</description><link>http://thoughts.austinbales.com/post/8682528421</link><guid>http://thoughts.austinbales.com/post/8682528421</guid><pubDate>Tue, 09 Aug 2011 03:38:00 -0400</pubDate><category>nerd</category><category>oauth</category><category>Facebook</category></item><item><title>Twitter isn't evil or anything, its gonna be ok.</title><description>&lt;p&gt;&lt;a href="http://twitter.com/#!/technoweenie/status/46338440878501888"&gt;Twitter is not a developer’s OS&lt;/a&gt; but that is alright.&lt;/p&gt;

&lt;p&gt;Twitter has grown, in part due to its third party clients. But as they scale, they want to ensure that the Twitter experience will scale as well. Although we all might feel tremendous ownership over it after bringing it into our lives, it is still Twitter’s platform.&lt;/p&gt;

&lt;p&gt;After this, the “simple twitter client” will no longer be an example for programmers to follow but their curated terms, layout, and functions &lt;em&gt;will&lt;/em&gt; be available to everyone. Consistency is key to their larger growth. Beyond that, it’s what they want to do. You can’t boss them around, but you can go build something better.&lt;/p&gt;

&lt;p&gt;The more twitter grows, the more opportunities we’ll have to work with tweets and tweeters. C’mon it’ll be fine, and it’s time for something new.&lt;/p&gt;</description><link>http://thoughts.austinbales.com/post/3827232361</link><guid>http://thoughts.austinbales.com/post/3827232361</guid><pubDate>Sun, 13 Mar 2011 03:59:10 -0400</pubDate></item><item><title>Event Delegation with Prototype and LowPro</title><description>&lt;p&gt;&lt;em&gt;Tumblr makes me put something here before a code block—&lt;/em&gt;&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;Event.addBehavior {
  "button:click": -&gt;
    alert "A button was clicked."
    this.disable().update "Clicked"
}                                
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;LowPro makes it easy to delegate events. The advantage of event delegation
is that you can add to your event pool without adding individual listeners
to many elements, greatly simplifying your code and making it more performant.&lt;/p&gt;

&lt;p&gt;This also means that if you create a module or class for a specific purpose,
like showing a dialog window, you can easily add events that are specific
to your code, without interfering with your previously designed behaviors:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;class Euclid.Window
  initialize: (@element)-&gt;
    @element.addClassName "EuclidWindow"
    @addBehaviors()
  addBehaviors: -&gt;
    Event.addBehavior {
      ".EuclidWindow button:click" -&gt;
        alert "And that button is inside an EuclidWindow"
    }   
  show: -&gt;
    @element.appear()
    Event.addBehavior.refresh()
&lt;/code&gt;&lt;/pre&gt;</description><link>http://thoughts.austinbales.com/post/3827452151</link><guid>http://thoughts.austinbales.com/post/3827452151</guid><pubDate>Tue, 01 Mar 2011 00:00:00 -0500</pubDate><category>js</category></item><item><title>Snap your pixels</title><description>&lt;p&gt;Snap to pixels in Illustrator CS5&lt;/p&gt;

&lt;p&gt;Unsnapped&lt;br/&gt;&lt;img src="http://cl.ly/071Y3S0X0C3B381e0n3u/Screen_shot_2011-01-20_at_4.54.16_PM.png" alt="Before"/&gt;&lt;/p&gt;

&lt;p&gt;Snapped&lt;br/&gt;&lt;img src="http://cl.ly/1W1o3e0V020E1N084616/Screen_shot_2011-01-20_at_4.54.34_PM.png" alt="After"/&gt;&lt;/p&gt;

&lt;p&gt;Snap it all&lt;br/&gt;&lt;img src="http://cl.ly/3w0i163A3I0q0O243l0c/Screen_shot_2011-01-20_at_4.58.20_PM.png" alt="myTumblr Image"/&gt;&lt;/p&gt;</description><link>http://thoughts.austinbales.com/post/2849635681</link><guid>http://thoughts.austinbales.com/post/2849635681</guid><pubDate>Thu, 20 Jan 2011 20:00:00 -0500</pubDate><category>illustrator</category></item><item><title>Accelerating 417east</title><description>&lt;p&gt;Recently I’ve been experimenting with methods for decreasing load on &lt;a href="http://417east.com"&gt;417east&lt;/a&gt;. Currently it hosts 38 virtual hosts running on nginx: a few Rack applications passed through mod_rack; half are passed through PHP-FPM; the rest being static HTML sites. The server also runs sshd and afpd (so Mac users smile), and tends to run low on memory if applications leak.&lt;/p&gt;

&lt;ul&gt;&lt;li&gt;&lt;p&gt;First, I switched from Apache to Nginx.&lt;/p&gt;

&lt;p&gt;Nginx is much faster at serving static assets, and since there are so many simple sites running on the server, this immediately speeds up the environment for those users.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;PHP5-FPM&lt;/p&gt;

&lt;p&gt;Rather than use a more traditional fast-cgi solution for nginx, I went with PHP-FPM,    which has the ability to spawn and scale back instances of PHP applications with greater flexibility. Typically performance is just below apache+mod_php, but that’s alright since the static assets those sites are working with become much faster.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Varnish&lt;/p&gt;

&lt;p&gt;Just recently I decided to add an additional caching layer atop nginx. nginx now listens on 8000 and receives filtered requests from Varnish, so that often a website won’t hit the web server layer at all. Imeplementing this is literally as easy as installing Varnish and changing your web server’s ports. I &lt;a href="http://serverfault.com/questions/111678/how-to-setup-nginx-with-varnish"&gt;found some help&lt;/a&gt; on StackOverflow with writing a basic VCL.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;</description><link>http://thoughts.austinbales.com/post/1547478115</link><guid>http://thoughts.austinbales.com/post/1547478115</guid><pubDate>Thu, 11 Nov 2010 19:19:35 -0500</pubDate></item><item><title>Pascal famously said, “I wrote you a long letter because I didn’t have time to make it shorter.” The...</title><description>&lt;p&gt;Pascal famously said, “I wrote you a long letter because I didn’t have time to make it shorter.” The longer the argument, the sloppier and less well-thought out it appears.&lt;/p&gt;

&lt;p&gt;Found on &lt;a href="http://www.alistapart.com/articles/no-one-nos-learning-to-say-no-to-bad-ideas/"&gt;ALA&lt;/a&gt;.&lt;/p&gt;</description><link>http://thoughts.austinbales.com/post/898743304</link><guid>http://thoughts.austinbales.com/post/898743304</guid><pubDate>Tue, 03 Aug 2010 13:17:53 -0400</pubDate></item><item><title>Consider this:

 if (@current_location == :nyc)
      @pizza_sux = true
 end


The internets are...</title><description>&lt;p&gt;Consider this:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt; if (@current_location == :nyc)
      @pizza_sux = true
 end
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;The internets are drastically mistaken about pizza quality. New York’s average slice is really awful. It’s wet, huge, greasy, and predictable. Chicago suffers from the same ailments.&lt;/p&gt;</description><link>http://thoughts.austinbales.com/post/762859169</link><guid>http://thoughts.austinbales.com/post/762859169</guid><pubDate>Fri, 02 Jul 2010 17:11:00 -0400</pubDate></item><item><title>From SPF10000</title><description>&lt;img src="http://26.media.tumblr.com/tumblr_l3xz7y55Am1qasx2no1_400.png"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;From &lt;a href="http://spf10000.blogspot.com/2009/12/passage-of-abstract-idea-in-seven.html"&gt;SPF10000&lt;/a&gt;&lt;/p&gt;</description><link>http://thoughts.austinbales.com/post/693078789</link><guid>http://thoughts.austinbales.com/post/693078789</guid><pubDate>Sun, 13 Jun 2010 03:23:57 -0400</pubDate></item><item><title>Prototype 1.7, nice.</title><description>&lt;a href="http://prototypejs.org/2010/4/5/prototype-1-7-rc1-sizzle-layout-dimensions-api-event-delegation-and-more"&gt;Prototype 1.7, nice.&lt;/a&gt;</description><link>http://thoughts.austinbales.com/post/499640368</link><guid>http://thoughts.austinbales.com/post/499640368</guid><pubDate>Mon, 05 Apr 2010 22:49:38 -0400</pubDate></item><item><title>http://37signals.com/svn/posts/2241-a-little-sketching-is-an-exploration-a-lot</title><description>&lt;a href="http://37signals.com/svn/posts/2241-a-little-sketching-is-an-exploration-a-lot"&gt;http://37signals.com/svn/posts/2241-a-little-sketching-is-an-exploration-a-lot&lt;/a&gt;: &lt;p&gt;&lt;blockquote&gt;A little sketching is an exploration. A lot of sketching is a procrastination.&lt;/blockquote&gt;&lt;/p&gt;</description><link>http://thoughts.austinbales.com/post/489513895</link><guid>http://thoughts.austinbales.com/post/489513895</guid><pubDate>Thu, 01 Apr 2010 14:51:18 -0400</pubDate></item><item><title>These United States: Daytrotter Session recorded Mar 2, 2010</title><description>&lt;a href="http://www.daytrotter.com/dt/these-united-states-concert/20030969-110537.html"&gt;These United States: Daytrotter Session recorded Mar 2, 2010&lt;/a&gt;: &lt;p&gt;Huge line-lengths, sqrshd type — awesome site, poorly finished.&lt;br/&gt;Too bad, so sad.&lt;/p&gt;</description><link>http://thoughts.austinbales.com/post/442931768</link><guid>http://thoughts.austinbales.com/post/442931768</guid><pubDate>Fri, 12 Mar 2010 02:36:00 -0500</pubDate></item><item><title>http://chikuyonok.ru/ambilight/</title><description>&lt;a href="http://chikuyonok.ru/ambilight/"&gt;http://chikuyonok.ru/ambilight/&lt;/a&gt;</description><link>http://thoughts.austinbales.com/post/440850662</link><guid>http://thoughts.austinbales.com/post/440850662</guid><pubDate>Thu, 11 Mar 2010 03:29:14 -0500</pubDate></item><item><title>"Studying the computers"</title><description>&lt;p&gt;Apparently, my four years of design education equate to “studying computers.” I suppose had I been born a decade ago I’d have “studied pencils.”&lt;/p&gt;</description><link>http://thoughts.austinbales.com/post/433450585</link><guid>http://thoughts.austinbales.com/post/433450585</guid><pubDate>Sun, 07 Mar 2010 19:35:00 -0500</pubDate></item><item><title>Right-handed.</title><description>&lt;img src="http://29.media.tumblr.com/tumblr_kukacm3gLv1qasx2no1_500.jpg"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;Right-handed.&lt;/p&gt;</description><link>http://thoughts.austinbales.com/post/280782103</link><guid>http://thoughts.austinbales.com/post/280782103</guid><pubDate>Sat, 12 Dec 2009 17:55:34 -0500</pubDate></item><item><title>iatrogenic (comparative more iatrogenic, superlative most iatrogenic)
(medicine, of a disease...</title><description>&lt;p&gt;&lt;b&gt;iatrogenic&lt;/b&gt; (&lt;i&gt;&lt;a title="Appendix:Glossary"&gt;comparative&lt;/a&gt;&lt;/i&gt; &lt;b&gt;more iatrogenic&lt;/b&gt;, &lt;i&gt;&lt;a title="Appendix:Glossary"&gt;superlative&lt;/a&gt;&lt;/i&gt; &lt;b&gt;most iatrogenic&lt;/b&gt;)&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;(medicine, of a disease etc.) &lt;a title="induced"&gt;Induced&lt;/a&gt; by the &lt;a title="word"&gt;words&lt;/a&gt; or &lt;a title="action"&gt;actions&lt;/a&gt; of the &lt;a title="physician"&gt;physician&lt;/a&gt;.  
&lt;ul&gt;&lt;li&gt;&lt;b&gt;2003,&lt;/b&gt; Michael L. Raulin, &lt;i&gt;Abnormal Psychology&lt;/i&gt;, Pearson Education, Inc. (2003), p. 494,&lt;dl&gt;&lt;dd&gt;Another group argues that the diagnosis is being overused and that many of the diagnosed cases are &lt;b&gt;iatrogenic,&lt;/b&gt; or unintentionally shaped or caused by the practitioner (Lilienfeld et al., 1999; Spanos, 1994). (boldface in original)&lt;/dd&gt;&lt;dd&gt;&lt;br/&gt;&lt;/dd&gt;&lt;/dl&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;From Wikitionary, the free Dictionary&lt;/p&gt;</description><link>http://thoughts.austinbales.com/post/259073139</link><guid>http://thoughts.austinbales.com/post/259073139</guid><pubDate>Thu, 26 Nov 2009 23:28:08 -0500</pubDate></item><item><title>My peers and I are encouraged to attend a weekly panel of design professionals who talk about their...</title><description>&lt;p&gt;My peers and I are encouraged to attend a weekly panel of design professionals who talk about their work, the industry and employment in design. The Q&amp;A period is usually pretty silent, likely for two reasons: uninterested attendees and uninteresting topics. Last Monday one of the few questions asked with this: ”How should we go about quitting a design job?”.&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;The same way you’d quit any job. You should be professional, courteous, expressive, and give plenty of notice. You should express clearly and unemotionally your reasons for leaving and make all efforts to leave on the best of terms. &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;My question is why isn’t this easy for everyone to answer? Anyone whose ever had a job should know this – it’s the same at a restaurant, a golf course, or literally any job. Even if you’ve never had a job in your life, all it takes is a little thought – three to seven minutes. It really isn’t rocket surgery.&lt;/p&gt;</description><link>http://thoughts.austinbales.com/post/258620541</link><guid>http://thoughts.austinbales.com/post/258620541</guid><pubDate>Thu, 26 Nov 2009 15:32:54 -0500</pubDate></item></channel></rss>

