<?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>Balancing innovation against deadlines</title>
	<atom:link href="http://www.aaronheld.com/feed" rel="self" type="application/rss+xml" />
	<link>http://www.aaronheld.com</link>
	<description>because work and life have hard deadlines.....</description>
	<lastBuildDate>Wed, 02 Nov 2011 19:25:29 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Crowdsourcing the arts and a misunderstood artist is seen in a new light</title>
		<link>http://www.aaronheld.com/post/crowdsourcing-the-arts-and-a-misunderstood-artist-is-seen-in-a-new-light</link>
		<comments>http://www.aaronheld.com/post/crowdsourcing-the-arts-and-a-misunderstood-artist-is-seen-in-a-new-light#comments</comments>
		<pubDate>Mon, 09 May 2011 01:10:34 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://www.aaronheld.com/?p=317</guid>
		<description><![CDATA[This weekend I attended a gallery opening of an exhibition called '50 Americans' featuring the work of Robert Mapplethorpe.]]></description>
			<content:encoded><![CDATA[<p>This weekend I attended a <a title="Sean Kelly Gallery" href="http://www.skny.com/" target="_blank">gallery</a> <a title="50 Americans" href="http://www.skny.com/exhibitions/2011-05-07_robert-mapplethorpe/">opening</a> of an exhibition called '50 Americans' featuring the work of <a href="http://www.mapplethorpe.org/">Robert</a> <a href="http://en.wikipedia.org/wiki/Robert_Mapplethorpe">Mapplethorpe</a>.</p>
<p>Usually I have to spend the first few minutes or an Art exhibition reading the background to understand the story that the gallery is telling through the art.  This one was different.</p>
<p>Rather then view the Mapplethorpe images through the lens of an expert Sean Kelly's people found 50 Americans, one per state, to curate the selection.  They were nervous about what selections the wisdom of the crowd would choose to surface.  Some people involved with the Mapplethorpe foundation were initially skeptical of the project.</p>
<p>Proving once again trust and risk often yield success these 50 random Americans put together a selection of images that were stunning.  I was able to walk though the gallery, take in an image, and read a short selection about why that image was selected by an American.</p>
<p>The Americans ranged through every cross section I could think of, from successful businessmen (Owner of local favorite <a href="http://www.dogfish.com/">Dogfish</a>) to a Rabbi to my lovely wife.</p>
<p><a href="http://www.aaronheld.com/wp-content/uploads/2011/05/9vpmz.jpg"><img class="aligncenter size-medium wp-image-319" title="Ms Pa" src="http://www.aaronheld.com/wp-content/uploads/2011/05/9vpmz-300x225.jpg" alt="" width="300" height="225" /></a></p>
<p>&nbsp;</p>
<p>Mapplethorpe is often remembered for the controversy surrounding his images.  They have been called exploitive, indecent or simply obscene.  Surprisingly all I saw was crisp compelling photos with an extraordinary use of light and contrast.</p>
<p>"Experts" in academia has praised his artistic works.  "Experts" in law and government have condemned his work.</p>
<p>Turns out average Americans just want the opportunity to enjoy his work.</p>
<p><a href="http://www.aaronheld.com/wp-content/uploads/2011/05/Mapplethorpe-330x278.jpg"><img class="aligncenter size-medium wp-image-324" title="Mapplethorpe Flag" src="http://www.aaronheld.com/wp-content/uploads/2011/05/Mapplethorpe-330x278-300x252.jpg" alt="" width="300" height="252" /></a></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aaronheld.com/post/crowdsourcing-the-arts-and-a-misunderstood-artist-is-seen-in-a-new-light/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using python-dulwich to load any version of a file from a local git repo</title>
		<link>http://www.aaronheld.com/post/using-python-dulwich-to-load-any-version-of-a-file-from-a-local-git-repo</link>
		<comments>http://www.aaronheld.com/post/using-python-dulwich-to-load-any-version-of-a-file-from-a-local-git-repo#comments</comments>
		<pubDate>Sat, 02 Apr 2011 19:49:29 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[Professional]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[labweek2011]]></category>

		<guid isPermaLink="false">http://www.aaronheld.com/?p=305</guid>
		<description><![CDATA[On Monday we are kicking off an innovation week (more to come on that topic) and I've devised a little project that includes nearly every buzzword I'm interested in. I'm spending some time doing some technical spikes to see what is possible and I found a need to load a particular file from a git [...]]]></description>
			<content:encoded><![CDATA[<p>On Monday we are kicking off an innovation week (more to come on that topic) and I've devised a little project that includes nearly every buzzword I'm interested in.</p>
<p>I'm spending some time doing some technical spikes to see what is possible and I found a need to load a particular file from a git repo given the path and tree hash.</p>
<p>I grabbed my trusty python, dulwich (native python-git library) and gave it a shot. After a few minutes writing complicated looking recursive code I jumped over to irc where the friendly author pointed me to a convenience function that does what I needed.</p>
<p>Here is the short answer:</p>
<pre>from dulwich.repo import Repo
from dulwich.object_store import tree_lookup_path

r = Repo('/Documents/projects/gitdep/rails')
def get_file(tree, path):
    (mode,sha) = tree_lookup_path(r.get_object,tree,path)
    return r[sha].data

tree = '7e7331fce169bbe1d6be71a30c1e1f7ab2e6ceba'
path = 'activemodel/examples/validations.rb'

print get_file(tree,path)</pre>
<p>This gives me a rails validation file from last year.  Nothing special about this file, I just find the rails git repo an interesting playground for git experimentation. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.aaronheld.com/post/using-python-dulwich-to-load-any-version-of-a-file-from-a-local-git-repo/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>the measure of Awesome</title>
		<link>http://www.aaronheld.com/post/the-measure-of-awesome</link>
		<comments>http://www.aaronheld.com/post/the-measure-of-awesome#comments</comments>
		<pubDate>Sun, 23 Jan 2011 01:40:42 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Professional]]></category>
		<category><![CDATA[agile]]></category>

		<guid isPermaLink="false">http://www.aaronheld.com/?p=303</guid>
		<description><![CDATA[Development at work has been trending well in the new year and the team is getting excited about our formal incorporation of practices such as TDD and pair programming. I'm definitely perceive an intangible benefit in culture and fun. With a full test suite and engaged developers working out loud coding is fun again. I [...]]]></description>
			<content:encoded><![CDATA[<p>Development at work has been trending well in the new year and the team is getting excited about our formal incorporation of practices such as TDD and pair programming.</p>
<p>I'm definitely perceive an intangible benefit in culture and fun.  With a full test suite and engaged developers working out loud coding is fun again.</p>
<p>I give a lot of thought to developer efficiency and generating metrics around our output is very important to me.  We are at a point in this iteration where I have too many stories in progress and it is taking a few extra days to get work completed and accepted.  This does not concern me greatly since this is a new team and it usually takes a few turns to get into a rhythm.  I was walking down the hall and one of developers said that things are going 'Awesome'.  I said "<em>Great, but <strong>awesome</strong> is not a metric</em>".</p>
<p>Since then he and the rest of the team have risen to the challenge and we have some demonstrable facts in low bug counts and high numbers of actual hours (hands on keyboard time) logged.</p>
<p>I'll have a clue in a few weeks and 'know' in a few iterations that TDD and pair programming have raised productivity in this team.  For right now I do <em>think</em> things have improved and <em>I feel</em> that our velocity is going to increase.  <em>IMHO</em> my personal job satisfaction has increased.</p>
<p>So I may have been nieve last week in saying awesome is not a metric.  I'm now thinking that awesome must a metic with a correlation to both employee retention and code quality.  We simply have not developed the tools to measure and understand this thing we call 'awesome'.  I can only observe the secondary effects that occur when there is "awesome" within a team.</p>
<p>This is kind of like gravity.  Science can only measure the effects of gravity but you can't run without it.  And running beats floating back and forth aimlessly any day.....</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aaronheld.com/post/the-measure-of-awesome/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>OSX vs Ubuntu, Windows wins?</title>
		<link>http://www.aaronheld.com/post/osx-vs-ubuntu-windows-wins</link>
		<comments>http://www.aaronheld.com/post/osx-vs-ubuntu-windows-wins#comments</comments>
		<pubDate>Sun, 02 Jan 2011 16:23:50 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[windows7]]></category>

		<guid isPermaLink="false">http://www.aaronheld.com/?p=299</guid>
		<description><![CDATA[Ever since Barcamp I've been shopping for a personal laptop for general use as well as a development machine that I could use for work.  Our work issued machine is a loaded mac powerbook.  With a unix core osx has given me much of the power that I used to enjoy when I'd used linux [...]]]></description>
			<content:encoded><![CDATA[<p>Ever since Barcamp I've been shopping for a personal laptop for general use as well as a development machine that I could use for work.  Our work issued machine is a loaded mac powerbook.  With a unix core osx has given me much of the power that I used to enjoy when I'd used linux as a primary os. However Apple is not doing wonders for free software and I felt the need to get back to my roots and move back to Linux.</p>
<p>I picked up a 4lb HP <a href="http://www.shopping.hp.com/webapp/shopping/computer_can_series.do?storeName=computer_store&amp;category=notebooks&amp;a1=Category&amp;v1=Ultra-Portable&amp;series_name=dm4t_series&amp;jumpid=in_R329_prodexp/hhoslp/psg/notebooks/Ultra-Portable/dm4t_series" target="_blank">DM4</a> and dual booted to Ubuntu with not issues.  The trackpad didn't work right, but a script off someones blog made it work reasonably ok.  A quick hop into debug mode showed that the drivers returned negative x-y coordinates when you use 2 fingers.  I downloaded the open source drivers to take a look at the code and saw that a patch was already in head.</p>
<p>Developing was a joy and eclipse opened nearly instantly.</p>
<p>Microsoft silverlight DRM is not (yet?) ported to linux so I dual boot to windows 7 to get the customer experience and use CIM products.  A funny thing happened to me while getting the 'customer' experience.   I liked it!   Windows 7 is much more usable then either osx or Linux and IE9 looks like it will be a really powerful platform for future development.</p>
<p>Around this time I picked up a python update on OSX and spent about 4 hours trying to get mysql and python to<a href="http://www.google.com/search?q=mysql+python+osx" target="_blank"> talk to each other</a>.  I booted into windows and thought about how to use this platform as a development machine.</p>
<p>Enter <a href="http://bitnami.org/" target="_blank">BitNami</a>. Rather then deal with version conflicts I grabbed a virtual machine that is close to my target server and installed VMware Player.  Mapping a windows directory to the virtual machine lets me edit files in native windows while running my build chain on Linux.  The browser I use for development is finally the same browser used by the majority of my customers and my dev environment is much closer to my server environment as well.</p>
<p>For not I'm working through the rough edges of this setup and trying to find a decent windows SSH client but this setup seems to have legs.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aaronheld.com/post/osx-vs-ubuntu-windows-wins/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>BarCamp Philly 2010 Summary &#8211; Opendata and beyond</title>
		<link>http://www.aaronheld.com/post/barcamp-philly-2010-summary-opendata-and-beyond</link>
		<comments>http://www.aaronheld.com/post/barcamp-philly-2010-summary-opendata-and-beyond#comments</comments>
		<pubDate>Wed, 17 Nov 2010 02:58:38 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[community]]></category>
		<category><![CDATA[politics]]></category>
		<category><![CDATA[Professional]]></category>
		<category><![CDATA[barcamp]]></category>
		<category><![CDATA[civics]]></category>

		<guid isPermaLink="false">http://www.aaronheld.com/?p=281</guid>
		<description><![CDATA[When wrapping up the VIm talk @trevmex mentioned that people share their dotFiles on github.  This blew my mind.  I can sit in front of anyones desk and start using their eclipse and immediately be productive.  The secret to VIm is the years of refactoring the configuration and shortcuts, known as the dotFiles.  You probably couldn't even [...]]]></description>
			<content:encoded><![CDATA[<p>When wrapping up the VIm talk @<a href="http://twitter.com/trevmex">trevmex</a> mentioned that people share their <a href="https://github.com/search?type=Everything&amp;language=vim&amp;q=dotfile&amp;repo=&amp;langOverride=&amp;x=0&amp;y=0&amp;start_value=1">dotFiles on github</a>.  This blew my mind.  I can sit in front of anyones desk and start using their eclipse and immediately be productive.  The secret to VIm is the years of refactoring the configuration and shortcuts, known as the dotFiles.  You probably couldn't even execute a mapped command on my machine since I <a title="Map your leader" href="http://vimdoc.sourceforge.net/htmldoc/map.html#mapleader">map the leader</a> based on my keyboard.</p>
<p>I'm used to reading about VIm plugins and tips on sites like http://www.vim.org/ but I never really thought about the power of collaborating on the ultimate VIm config via the forking, pushing and pulling that is github.  The idea of forking someones config and :%s/leader='\'/leader='`'/g is really compelling.</p>
<p>So I got to my next session, Philly Opendata, a bit early and powered up the University of the Arts guest wireless to see what this gitHub dotfile concept is really about and could not connect. After an hour of discussing how VIm keeps your hands on keyboard and head focused on the task I'm again reduced to a mouse clicking consumer wondering where the button is that will get my osx to work, or give me a clue as to why it won't.  I would have searched for "iwspy on osx" but without wireless it would have been a short trip.</p>
<p>The point of this segue is that <a href="https://twitter.com/mofro">Maurice</a> noticed my plight and leaned over with the security settings to his mifi app to get me out of the 80's.   That has never happened at any formal show I've been to.  He had signal and was willing to share.</p>
<p>Turns out Philadelphia has <a href="http://twitter.com/opendataphilly">data</a> and is also willing to share.</p>
<p>Getting access to this data is important for so many reasons.  Before I talk about the social importance of opendata I have to step back and comment that crunching huge datasets and experimenting with bizarre visualizations is the type of fun that drew me to computers in the first place.  Whether plotting Fourier power transforms of breathing sheep or number of potholes per coffee shop there is something exciting about creating a unique perspective on otherwise boring or overwhelmingly complex data.</p>
<p>Having transparency into our government machine is really just a continuation of our need for independent newspapers.  Thomas Jefferson is often quoted as saying that <em><strong>Democracy depends upon an informed population</strong></em>.</p>
<p><span style="text-decoration: underline;">The city of Philadelphia has committed to releasing 311, GIS and crime data.</span> There was a very lively discussion at this session around the types of apps we could build, the benefits that the city will reap and most importantly <em>WHEN</em> it will launch.</p>
<p>This was all good and exciting conversation and one particular thread stuck with me long after the session ended.  We talked about how we can audit the data and ensure that it is used properly and not abused.</p>
<p>We live in an age when a<a href="http://blog.compete.com/2007/02/16/colbert-report-wikipedia/"> comedian can save the elephants</a> by editing a wiki page.  When I was a kid I was raised to believe that reporters were 'investigative journalists' and dug deep to get the facts.  I grew up just a few miles from where Geraldo Rivera got his start with an acclaimed expose of a <a href="http://en.wikipedia.org/wiki/Willowbrook_State_School#More_scandals_and_abuses">mental institution</a> that resulted in action being taken.  I was not until I got older and became exposed to Fox and the Daily show that I'd realized how seemingly sane people could look at the same data information and draw such dramatically different conclusions.  (Actually I learned that in grad school.  "Number-smithing" and "creative graphing" are required classes for practicing engineers.  There was a similar class for the business students, but it skipped the numbers part altogether.)</p>
<p>It would be really easy for me to take all the pothole data and plot it on google maps.  A little massaging could show my street as having a few extra's and maybe I'll even 'fix' a few in the other neighborhoods.  People will see my app and maybe my street gets a little bump in priority.</p>
<p>Visualization is a powerful tool and data of this magnitude will always be analyzed with bias.  Even a <a href="http://radar.oreilly.com/2010/08/visualization-as-journalism.html">simple flow chart describing the new health care policy</a> can be warped towards an agenda.</p>
<p>Opendata puts us all on a level playing field.  I'm looking forward to the apps and visualizations coming out.  I will be disappointed if we wind up with a  liberal and a conservative app mirroring our polarized two party system.  I personally feel that there is a responsibility in the hands of the designers and developers to attack this data and ensure that the people of Philadelphia have multiple avenues of getting accurate facts.</p>
<p>The first tenant of the <a href="http://www.ieee.org/membership_services/membership/ethics_code.html">IEEE code of ethics</a> hints at the damage we can do here.</p>
<blockquote><p>1. to accept responsibility in making decisions consistent with the safety, health and welfare of the public, and to disclose promptly factors that might endanger the public or the environment;</p></blockquote>
<p>As far back as the 12th century the Rabbi Maimonides wrote a Physicians oath with another line that I find appropriate:</p>
<blockquote><p>May the love for my art actuate me at all time; may neither avarice nor miserliness, nor thirst for glory or for a great reputation engage my mind; for the enemies of truth and philanthropy could easily deceive me and make me forgetful of my lofty aim of doing good</p></blockquote>
<p>A Doctor's specialized knowledge and training puts his actions and opinions under a special light with regard to ethics.  Typically computer professionals live by a 'do no harm' credo as well, but our actions were usually bounded by our working domain.  With open data and blogs we can now use our skills and training for the betterment of democracy or as a lever to move a personal agenda.</p>
<p>Now that I am ready to wield this data in the name of Democracy and Truthiness I'm headed over to listen to <a href="http://twitter.com/tomjanofsky">Tom Janofsky</a> talk about his experiences with Cloud Computing on EC2.</p>
<p>After all, once this great Philly data is out I'm going to need that elastic processing power....</p>
]]></content:encoded>
			<wfw:commentRss>http://www.aaronheld.com/post/barcamp-philly-2010-summary-opendata-and-beyond/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jugaad &#8211; India&#8217;s Agile style</title>
		<link>http://www.aaronheld.com/post/jugaad-indias-agile-style</link>
		<comments>http://www.aaronheld.com/post/jugaad-indias-agile-style#comments</comments>
		<pubDate>Sun, 14 Nov 2010 22:59:34 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Professional]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[community]]></category>
		<category><![CDATA[obama]]></category>

		<guid isPermaLink="false">http://www.aaronheld.com/?p=262</guid>
		<description><![CDATA[Jugaad: "overcoming harsh constraints by improvising an effective solution using limited resources". We call it the art of creative improvisation]]></description>
			<content:encoded><![CDATA[<p>I’ve been reading about India’s concept of Jugaad, possibly poised to enter our buzzword vocabulary since it came up in the context of what <a href="http://www.nytimes.com/roomfordebate/2010/11/07/what-obama-can-learn-from-india">Obama can learn from that country</a>.</p>
<p>Where the <a href="http://agilemanifesto.org/">Agile Manifesto</a> starts with “Individuals and Interactions” the <a href="http://blogs.hbr.org/cs/2010/01/jugaad_a_new_growth_formula_fo.html">Harvard Business Review</a> kicks off  Jugaad with “Thrift not Waste”.</p>
<p>All too often I’ve seen Agile work because a scarcity of resources (money, time or knowledge) pushed an otherwise waterfall loving group into giving Agile a shot.  The tenants of Jugaad resonate with me as a more general philosophy about how to get things accomplished then Agile’s focus on “working software”.</p>
<p><strong>Agile Manifesto</strong></p>
<p><span style="font-size: 12px; line-spacing: auto;"><em>We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value</em></span></p>
<div id="_mcePaste" style="text-align: center;">Individuals and interactions over processes and tools<br />
Working software over comprehensive documentation</div>
<div id="_mcePaste" style="text-align: center;">Customer collaboration over contract negotiation</div>
<div id="_mcePaste" style="text-align: center;">Responding to change over following a plan</div>
<p><strong>Jugaad (quoted from <a href="http://blogs.hbr.org/cs/2010/01/jugaad_a_new_growth_formula_fo.html">HBR</a>):</strong></p>
<div style="text-align: left;"><span style="font-size: 12px;"><em>The Hindi term roughly translates as “overcoming harsh constraints by improvising an effective solution using limited resources”. We call it the art of creative improvisation.</em></span></div>
<div style="text-align: left;"><span style="font-size: 12px;"><em><br />
</em></span></div>
<div style="text-align: center;">Thrift not waste. Tackle scarcity.</div>
<div style="text-align: center;">Inclusion, not exclusion. diversity of communities</div>
<div style="text-align: center;">Bottom-up participation, not top-down command and control.</div>
<div style="text-align: center;">Flexible thinking and action, not linear planning.</div>
<p>It feels like we are talking about the same thing.  Get a team together and empower them to solve the necessary problem.  Nowhere is there a concept of ‘throw money at the problem’ or ‘hire more consultants’.  Plan for change and change plans in order to achieve success.</p>
<p>I’m on a barcamp high today.  We could have had a conference with a big budget, focused our marketing on the demographic of web designers/developers, planned it from an executive committee and wrote a gant chart tracking the critical path from start to finish.  It would have been a big show, but it would not have been barcamp and it would not have been awesome.</p>
<p>Software engineers learned that top down does not work.  Indian’s entrepreneurs espousing that top down does not work.</p>
<p>Spend a few moments today to consider if you think top down, centralized control of food production is a good idea: <a href="http://foodfreedom.wordpress.com/2010/04/24/s-510-is-hissing-in-the-grass/" target="_blank">http://foodfreedom.wordpress.com/2010/04/24/s-510-is-hissing-in-the-grass/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.aaronheld.com/post/jugaad-indias-agile-style/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

