<?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/"
	xmlns:series="http://unfoldingneurons.com/"
	>

<channel>
	<title>MettaProgramming &#187; programming</title>
	<atom:link href="http://mettadore.com/tag/programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://mettadore.com</link>
	<description>Thoughts on Software and Technology</description>
	<lastBuildDate>Fri, 03 Feb 2012 17:39:26 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>So you want to hire a ninja, do you?</title>
		<link>http://mettadore.com/analysis/so-you-want-to-hire-a-ninja-do-you/</link>
		<comments>http://mettadore.com/analysis/so-you-want-to-hire-a-ninja-do-you/#comments</comments>
		<pubDate>Wed, 28 Jul 2010 22:36:33 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Miscellany]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[jobs]]></category>
		<category><![CDATA[ninja]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[rockstar]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[zombie]]></category>

		<guid isPermaLink="false">http://mettadore.com/?p=437</guid>
		<description><![CDATA[I took a trip to Portland recently to traipse through OSCON. I was mostly in the exhibition hall with all the great schwag and company booths&#8211; many which had posted job announcements. While there, I was once again frustrated by a trend I keep seeing. The trend can be described as an &#8220;arms race of [...]]]></description>
			<content:encoded><![CDATA[<p>I took a trip to Portland recently to traipse through OSCON. I was mostly in the exhibition hall with all the great schwag and company booths&#8211; many which had posted job announcements. While there, I was once again frustrated by a trend I keep seeing. The trend can be described as an &#8220;arms race of job announcements,&#8221; and has gotten to the point where it&#8217;s difficult to find a development job listed by a company that is not seeking a &#8220;ninja,&#8221; or a &#8220;rockstar,&#8221; or some similarly absurdly described candidate.</p>
<h3>Smart and Gets Things Done</h3>
<p>As best I can tell, this trend really took off&#8211; even if it didn&#8217;t start&#8211; with Joel Spolsky&#8217;s blog article titled &#8220;<a href="http://www.joelonsoftware.com/articles/fog0000000073.html">The Guerrilla Guide to Interviewing</a>.&#8221; In that article, he stated that there was one primary requirement for working at Fog Creek Software: &#8220;Smart, and gets things done.&#8221;</p>
<p><a href="http://mettadore.com/files/2010/07/dwight.jpg"><img class="size-medium wp-image-441 alignright" src="http://mettadore.com/files/2010/07/dwight-218x300.jpg" alt="" width="218" height="300" /></a></p>
<p>His basic argument, with which I tend to agree, is that it doesn&#8217;t really matter what your past qualifications are as much as it matters that you can do to things: 1) Learn shit, and 2) Actually do shit.</p>
<p>His point? If you can&#8217;t learn, you&#8217;ll be stuck trying to write software in Visual Basic and someone will eventually shove you off of a roof out of frustration. Furthermore, if you don&#8217;t actually DO anything, but rather just talk about it, or think about it, or tell others why you could do it better&#8211; then you won&#8217;t even write software in Visual Basic. You won&#8217;t write any software at all, and someone will eventually shove you off of a roof out of frustration.</p>
<p>But if you can learn, it doesn&#8217;t matter what you come into the job knowing, because that&#8217;s merely a starting point. It&#8217;s how your knowledge and skills translate over time that&#8217;s important. You can learn &lt;insert whatever you need to do your job here&gt; quickly. I say quickly because you are a DOER, and doers always learn new stuff, so they can DO more stuff.</p>
<p>The most important thing here: The job will probably change, and when it changes, it&#8217;s the people who can LEARN, ADAPT and DO that will help the company succeed. The person who came to the job with one incredible skill but can&#8217;t learn probably has that one incredible skill in a stupid technology like Visual Basic, and someone will eventually shove&#8211;</p>
<p>well, you get the idea.</p>
<h3>The problem with catchy words</h3>
<p>So, herein lies a bit of the problem. Joel also talks about hiring the best people, treating them like &#8220;rockstars,&#8221; etc. Again, I think he has a point, but that there are a great deal of people who are stupidly picking up the hot new terms like &#8220;rockstar&#8221; and &#8220;ninja&#8221; and using the words, basically, without using their brains.</p>
<p>I see them a lot. Those posting that sound all hip and cool: &#8220;Are you a Python Guru?&#8221; or &#8220;We&#8217;re looking for a Ruby Rockstar for-&#8221; or &#8220;We want a PHP ninja to-&#8221; Everytime I see one of them I want to slap them in the head with the nearest O&#8217;Reilly book and then vomit.</p>
<p>This type of job posting proves one thing to the very people that you want hire: That they don&#8217;t want to work for you.</p>
<p>Why?</p>
<p>Because the very people you want to hire are the ones who describe themselves as &#8220;hard working&#8221; or &#8220;with a lot to learn&#8221; or even &#8220;not as good as many, but loyal, friendly and likes to learn new things.&#8221;</p>
<h3>Do you really want to hire a ninja?</h3>
<p>What&#8217;s a ninja?</p>
<p>It&#8217;s such a stupid, overused buzzword! Do you even know  what it means? It&#8217;s either an assassin or a stupid 14 year old jumping  out of a dumpster brandishing a medieval sword.</p>
<p>You don&#8217;t want either  of those things!</p>
<div id="attachment_438" class="wp-caption alignleft" style="width: 310px"><a href="http://mettadore.com/files/2010/07/GirlNinjas.jpg"><img class="size-medium wp-image-438" src="http://mettadore.com/files/2010/07/GirlNinjas-300x240.jpg" alt="" width="300" height="240" /></a><p class="wp-caption-text">Ninja: It&#039;s a word that&#039;s THIS overused</p></div>
<p>Yes, there&#8217;s some evidence that a well trained ninja was, if absolutely nothing else, a competent assassin (though the Samurai made fun of them). A ninja is basically a person who does one single thing really well, they kill people, and the rest of life- including the whole &#8220;getting along with people&#8221; part- they could give a rat&#8217;s ass about.</p>
<p>Human interaction to a ninja is &#8220;kill them!&#8221;</p>
<p>Conflict resolution to a ninja: &#8220;Kill them!&#8221;</p>
<p>For those who miss my subtly: A ninja programmer&#8217;s response to pretty much anything is going to be this: &#8220;Do it my way and no-one gets stabbed in the face with my medieval sword.&#8221;<sup><a href="http://mettadore.com/analysis/so-you-want-to-hire-a-ninja-do-you/#footnote_0_437" id="identifier_0_437" class="footnote-link footnote-identifier-link" title="No, don&amp;#8217;t ask your ninja programmer why they have a European weapon, you&amp;#8217;ll get stabbed in the face.">1</a></sup></p>
<p>Think about it. Do you really want to hire someone who does <em>one single thing</em> really well? To the exclusion of things like &#8220;showering&#8221; and, say &#8220;talking to other human beings?&#8221;</p>
<h3>Ninjas are Zombies!</h3>
<p>Here&#8217;s a neat trick: think of another stupid, overused buzzword: Zombie. What if I told you that ninjas are just zombies with black bags over their heads?</p>
<p>They do one thing really well: kill people (eating their brains- mostly the brains of your team if you hire them), and they could give a rat&#8217;s ass about things like &#8220;human interaction&#8221; and &#8220;conflict resolution.&#8221; What&#8217;s their solution to everything? &#8220;Kill them! (and, since we&#8217;re here, we could maybe snack on their brains too&#8230;)&#8221;</p>
<p>Ninjas are zombies! They&#8217;re mindless idiots going around trying to do one thing.</p>
<p>That&#8217;s it.</p>
<p>When you say &#8220;I want a ninja&#8221; you&#8217;re saying &#8220;you can be a complete asshole, refuse to learn anything new, refuse to respond to other human needs or the needs of the business, and also be a social trainwreck. Oh, and you don&#8217;t really need to know, or care, about 90% of programming or computer work, but if you can sit in your hole and &lt;do that one thing well&gt; and not talk to anyone, you&#8217;re the guy for us!&#8221;</p>
<p>You want a ninja-zombie as your lead developer, don&#8217;t you? Admit it.</p>
<h3>Rockstars: They go to 11</h3>
<p>Alright, I think you get my point, but let me touch upon rockstars for a moment. Here&#8217;s another place where I think Joel&#8217;s point was completely missed by a lot of people. Joel says &#8220;hire the best people you can find and treat them like rockstars&#8221; and in pure politician-like &#8220;I don&#8217;t really want to put any actual cognitive thought into this process, so I&#8217;ll just pull a buzzword&#8221;-style, job announcements start popping up for undefinable qualities such as &#8220;Ruby Rockstar.&#8221;</p>
<div id="attachment_440" class="wp-caption alignright" style="width: 310px"><a href="http://mettadore.com/files/2010/07/spinal-tap.jpg"><img class="size-medium wp-image-440" src="http://mettadore.com/files/2010/07/spinal-tap-300x201.jpg" alt="" width="300" height="201" /></a><p class="wp-caption-text">You want these guys in your company?</p></div>
<p>The mistake here is that all the corporate bozos think &#8220;Hey, &#8216;Rockstar&#8217; is the current buzzword, so I&#8217;ll use that too!&#8221; without stopping to think about one thing: &#8220;Rockstars don&#8217;t usually make the best employee material.&#8221;</p>
<p>Think of the words &#8220;punctual&#8221; and &#8220;hardworking.&#8221; Okay, now, keep those words in your head, and think of the word &#8220;rockstar.&#8221;</p>
<p>Yeah, your neck hurts doesn&#8217;t it?</p>
<p>See what happens when you take things out of context? Joel&#8217;s statement was &#8220;<em>treat</em> them like rockstars.&#8221; In otherwords, treat them like they mean something, like they matter, like the company depends on their happiness… so they will be happy… and do really good work… and make you more money.</p>
<p>The line was emphatically NOT &#8220;Make them <em>into</em> rockstars.&#8221;</p>
<p>Seriously! Think about your average caricature of a rockstar.<sup><a href="http://mettadore.com/analysis/so-you-want-to-hire-a-ninja-do-you/#footnote_1_437" id="identifier_1_437" class="footnote-link footnote-identifier-link" title="which is all we&amp;#8217;re really talking about in either case- neither Joel or you are talking about Dar Williams, here.">2</a></sup> They show up late, drunk, stoned, with a 16 year old&#8217;s bra stuck to their belt, and give you a loud, shitty performance of something they don&#8217;t feel like playing before hopping back into the bus for more sex, booze, and food.</p>
<p>Okay people, repeat this after me:</p>
<p><strong>&#8220;I don&#8217;t want to hire a Rockstar!&#8221;</strong></p>
<p>A rockstar is probably worse than a ninja, because at least a ninja- or a zombie, for that matter- can do <em>one</em> freakin&#8217; thing well. The only thing the rockstar can do is pray to god that the sound team can mix together the shit they call a studio performance, and that the stage crew can hit blow the fireworks early to cover the guitarist tripping and falling because they&#8217;re too freakin stoned to remember that there&#8217;s a drumset behind them.</p>
<p>They think of themselves as the best thing that&#8217;s ever happened to you, and if you tell them otherwise, they&#8217;ll freak out.</p>
<p>Rockstars <em>look</em> good. Full stop.</p>
<p>You know who the rockstar is? It&#8217;s the young programmer I met at the <a href="http://opensourcebridge.org">Open Source Bridge conference</a> who immediately berated me for using a different database strategy than him&#8211; without ever stopping to listen to the problem I was solving, to hear about my application&#8217;s design, or to learn <em>why</em> I would choose one over the other.</p>
<p>I was wrong, they were right, and I should really just stop being stupid and do it their way.</p>
<p>Yeah, that&#8217;s who I want on <em>my</em> team.</p>
<p>Fucking rockstars.</p>
<h3>Are you an incompetent programmer with an overblown sense of self-worth?</h3>
<p>Here&#8217;s the part that bugs me the most: The people posting these job announcements are actively selecting for people with a tendency to overstate their abilities while understating their faults.<br />
<a href="http://mettadore.com/files/2010/07/cat.jpg"><img class="alignleft size-medium wp-image-444" src="http://mettadore.com/files/2010/07/cat-265x300.jpg" alt="" width="265" height="300" /></a><br />
It&#8217;s called the <a href="http://en.wikipedia.org/wiki/Dunning-Kruger_effect">Dunning-Kruger effect</a> and it&#8217;s well documented in both the scientific literature and<a href="http://en.wikipedia.org/wiki/Dunning-Kruger_effect">popular journalism</a>.</p>
<p>The basic Gist is this: Incompetent people tend to overstate their abilities and think they are amazing, while highly competent people tend to downplay their skills and think that they are less than amazing.</p>
<p>And you know it&#8217;s true.</p>
<p>Go pick the first male rockstar-ninja-zombie programmer you can find and I&#8217;ll pick the first quiet, understated female programmer I can find. Then we&#8217;ll see which one can actually shut the hell up about how great they are and get something done.</p>
<p>The best people for the job are not the ones who are going to feel comfortable applying for the &#8220;Amazing Rockstar!!1!&#8221; position for the very reason that <em>they are the ones that you want to hire</em>: because they are too busy being amazed at all the stuff they <em>don&#8217;t</em> know to be rockstars who tell you everything that they <em>do</em> know.</p>
<p>They don&#8217;t think they know everything. In fact, with everything there is out there, they realize that they know basically <em>nothing</em>. Most importantly: They know that there&#8217;s a lot to learn, and they are trying to learn it.</p>
<p>The rockstars? The ninjas? They already know it, and they&#8217;ll tell you.</p>
<p>In fact, They&#8217;re more than happy to tell you <em>how much</em> they know.</p>
<p>Every single time you interact with them.</p>
<h3>Folk Developer: Will learn and be nice for food</h3>
<p>I don&#8217;t apply to any of these positions because, while there are a lot of things that I <em>am</em> and <em>can</em> do, there are certain things that I am emphatically <em>not</em>. A partial list of the things that I&#8217;m not is:</p>
<ul>
<li>Rockstar</li>
<li>Ninja</li>
<li>Zombie</li>
<li>Best person in the world at &lt;fill in whatever you want here&gt;</li>
</ul>
<p>Me, I&#8217;m not any of that. And that makes me think, from the majority of jobs I see lately, that I won&#8217;t be good enough to make the cut. And let&#8217;s face it, if they&#8217;re advertising for a rockstar, then I am probably not, because I do a lot of things competently, not one thing <em>better than everyone else including you</em>.</p>
<p><a href="http://mettadore.com/files/2010/07/ad-tiger.gif"><img class="alignleft size-full wp-image-465" src="http://mettadore.com/files/2010/07/ad-tiger.gif" alt="" width="251" height="243" /></a>See here&#8217;s the thing: I&#8217;ve been programming for 25+ years, I&#8217;m competent in at least 10 different languages, and really good in at least 4.<sup><a href="http://mettadore.com/analysis/so-you-want-to-hire-a-ninja-do-you/#footnote_2_437" id="identifier_2_437" class="footnote-link footnote-identifier-link" title="5 if we count Ruby, which I&amp;#8217;m learning more about every day">3</a></sup> I&#8217;ve built everything from robotic control systems to mathematical models, from spatial applications to social web applications. I&#8217;ve <em>taught</em> programming, and am about to do so again, and I do other things like start a <a href="http://rubygorge.org">Ruby users group</a>.</p>
<p>By many-if-not-all accounts, I&#8217;d be one hell of a developer to have on a team; yet many teams are seeking rockstars.</p>
<p>I am not a rockstar.</p>
<p>I&#8217;m not the guy on stage with lights and explosions and a screaming electric guitar.</p>
<p>I&#8217;m the guy who goes to a party and sits on the couch singing a song on a guitar. A really fun song, with really good guitar work, but not anything that needs lights and explosions. I may also pick up a banjo or back someone up on a number of other instruments, but mostly I just stay at the party and hang out with people.</p>
<p>No lights. No explosions.</p>
<p>I&#8217;m a folk developer.</p>
<p>I&#8217;m a seeker, I&#8217;m a learner. I&#8217;m a hard worker who will spend his free time coming up to speed on a technology for curiosity as well as success. I&#8217;m loyal, I&#8217;m friendly, I&#8217;ve got a sense of humor and would much rather laugh at myself than at anyone else. I spend my off time programming, like lots of people who love programming, but I also spend my off time playing the Irish flute and banjo, cycling, brewing cider and mead, working in community theater, and lots of other social pursuits.</p>
<p>Despite this (or, rather, because of it) I see myself as little more than &#8220;a decent programmer who&#8217;s probably not as good as most, but might be better than some.&#8221; In fact, I don&#8217;t have enough fingers to count the number of jobs I&#8217;ve actually <em>turned down</em> because I thought that I was probably not good enough&#8211; only to find that someone else was hired whom I actually know that I can outperform.</p>
<p>I am not going to apply for a job as a Python ninja or a Ruby Rockstar, because I&#8217;m not a ninja or a rockstar. I&#8217;m a person who knows a heck of a lot less about Ruby than many other Ruby programmers.</p>
<p>I&#8217;m a person with a lot to learn.</p>
<p>Exactly zero of my qualities describe a rockstar.</p>
<h3>Are you an incompetent company with an overblown sense of  self-worth?</h3>
<p>And I know that&#8217;s also true of many of my developer friends and colleagues. Companies select for people who are not them.</p>
<p>Here&#8217;s the clincher. Most of those companies who are hiring ninjas and rockstars are probably doing so because they see themselves as ninja and rockstar companies.</p>
<p>They are the companies that say things like &#8220;do you want to work in our cool-ass company where everything is better than any other company you&#8217;ve ever worked for, where we have foosball all day and are all awesome and badass about everything we do?&#8221;</p>
<p>Sound familiar? I&#8217;ll bet it does.</p>
<p>It sounds like a rockstar of a company.</p>
<ol class="footnotes"><li id="footnote_0_437" class="footnote">No, don&#8217;t ask your ninja programmer why they have a European weapon, you&#8217;ll get stabbed in the face.</li><li id="footnote_1_437" class="footnote">which is all we&#8217;re really talking about in either case- neither Joel or you are talking about Dar Williams, here.</li><li id="footnote_2_437" class="footnote">5 if we count Ruby, which I&#8217;m learning more about every day</li></ol>]]></content:encoded>
			<wfw:commentRss>http://mettadore.com/analysis/so-you-want-to-hire-a-ninja-do-you/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>I Am Programmer, Hear Me Roar!</title>
		<link>http://mettadore.com/analysis/headline/my-loves-programming-and-data-analysis/</link>
		<comments>http://mettadore.com/analysis/headline/my-loves-programming-and-data-analysis/#comments</comments>
		<pubDate>Wed, 03 Feb 2010 20:26:12 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Headline]]></category>
		<category><![CDATA[data]]></category>
		<category><![CDATA[data analysis]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[web applications]]></category>

		<guid isPermaLink="false">http://mettadore.com/?p=153</guid>
		<description><![CDATA[I&#8217;m John Metta, a programmer, a hydrologist, an anthropologist, and an all around friendly guy (except when I have to program in Visual Basic… &#60;shudder&#62;… it just makes my inside bits go all wonky! Like when eating sauerkraut) I Like Doing Stuff! …like programming stuff! I&#8217;ve been programming for 20+ years. No, really! I really [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-medium wp-image-164" src="http://mettadore.com/files/2010/02/front_big-300x236.png" alt="front_big" width="300" height="236" />I&#8217;m <strong>John Metta</strong>, a programmer, a hydrologist, an anthropologist, and <strong>an all around friendly guy</strong> (except when I have to program in Visual Basic… &lt;shudder&gt;… it just makes my inside bits go all wonky! Like when eating sauerkraut)</p>
<hr />
<h3>I Like Doing Stuff!</h3>
<p><span style="font-size: small"><span style="font-family: arial black,avant garde"><strong>…like programming stuff!<br />
</strong></span></span></p>
<dl>
<dd>I&#8217;ve been programming for 20+ years. No, really! I really dig on programming tools that let you deal with <strong>complex data sets</strong> without the usual hangover. I especially like linking <strong>databases &amp; web apps</strong>. You know you need to get that data on the web… <em>you know it!</em> <strong>Call me, we&#8217;ll do lunch!</strong> </dd>
<dt><span style="font-family: arial black,avant garde"><span style="font-size: medium"><strong><span style="font-size: small">…and data stuff!</span><br />
</strong></span></span></dt>
<dd>Did I mention that I love data? And I don&#8217;t mean just because it tastes good on eggs in the morning! I also dig on <em>analyzing it</em>. <strong>Time-series data</strong> is especially yummy. I&#8217;ve worked with Oregon DEQ, The Forest Service, and The Army Corps of Engineers doing everything from <strong>hydro-ecological modeling</strong> to <strong>socio-economics</strong>. Does your head hurt dealing with it all? I know, I know, it&#8217;s gonna be okay. </dd>
<dd> </dd>
</dl>
<hr />If you&#8217;re into the old skool, you can <a href="http://mettadore.com/files/2010/02/resume-programming.pdf">download my resume</a>. I&#8217;m thinking about making a brochure and something like a portfolio myself, but some people like resumes more. They&#8217;re… clean.</p>
]]></content:encoded>
			<wfw:commentRss>http://mettadore.com/analysis/headline/my-loves-programming-and-data-analysis/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Need An Open Source Programmer Or Two (Beginners Welcome)</title>
		<link>http://mettadore.com/analysis/need-an-open-source-programmer-or-two-beginners-welcome/</link>
		<comments>http://mettadore.com/analysis/need-an-open-source-programmer-or-two-beginners-welcome/#comments</comments>
		<pubDate>Fri, 30 Oct 2009 06:50:56 +0000</pubDate>
		<dc:creator>john</dc:creator>
				<category><![CDATA[Miscellany]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[high school]]></category>
		<category><![CDATA[Hood River]]></category>
		<category><![CDATA[language]]></category>
		<category><![CDATA[Money]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[Software & Media]]></category>
		<category><![CDATA[women]]></category>
		<category><![CDATA[work]]></category>
		<category><![CDATA[writing]]></category>

		<guid isPermaLink="false">http://positivelyglorious.com/?p=1661</guid>
		<description><![CDATA[Over the past few months, I&#8217;ve been working with Rediviva Magazine on a special (somewhat secret) community project.  We&#8217;re getting [...] ]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right;margin-left: 10px">
			<a href="http://api.tweetmeme.com/share?url=http://positivelyglorious.com/software-media/need-an-open-source-programmer-or-two-beginners-welcome/"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http://positivelyglorious.com/software-media/need-an-open-source-programmer-or-two-beginners-welcome/&amp;source=mettadore&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>Over the past few months, I&#8217;ve been working with Rediviva Magazine on a special (somewhat secret) community project.  We&#8217;re getting closer to a possible launch and I&#8217;d like to get some more people involved so I thought I&#8217;d put the word out there to see whether there are any local programmers interested in working on it with me. Feel free to pass this around.</p>
<h3>Overview</h3>
<p>Ideally, I&#8217;d like to build a small team of programmers who are interested in building an <em>Open Source Software web application</em> that can hopefully become something bigger than what we at Rediviva want to start with. It&#8217;d be ideal if a couple high school hot shots are around who want to work up their resumes for later development jobs, eventually becoming a Project Manager on this one.<span></span></p>
<h3>Bottom Line</h3>
<p><strong>1) This is not a money making opportunity, full stop.</strong></p>
<p style="padding-left: 30px">Like most Open Source Software projects, this is is geared to the person who is a programmer because they <em>really love to program</em>; because they love making really cool stuff for the mortals. At best, we&#8217;ll be able to buy you lunch during code sprints. If we run into a hot shot high school hacker or two, we can definitely work out some sort of &#8220;<strong>Web Development Internship&#8221; credit</strong>, which might be useful to you.</p>
<p><strong>2) You will be working as part of a team.<br />
</strong></p>
<p style="padding-left: 30px">Sorry, but if you are the &#8220;my way or the whine-way&#8221; coder, or one who does great things sitting in his basement but can&#8217;t talk to a normal human, I can&#8217;t use you. I&#8217;ll take personality over skill any day of the week, because I can <em>teach</em> someone the <em>skills</em> they don&#8217;t have.</p>
<p style="padding-left: 30px"><strong>Speaking of good team players, a note to the girls:</strong> Female coders rock, you know you do. You communicate and work as a team by default- rather than force. Rediviva is run by 3 Women, with one more new on staff. I&#8217;m the token male. If there are some women out there who want to code, you are <em>most</em> welcome.</p>
<p><strong>3) This isn&#8217;t &#8220;work.&#8221;</strong></p>
<p style="padding-left: 30px">We&#8217;re not talking &#8220;a job,&#8221; we&#8217;re talking about &#8220;a project.&#8221; It&#8217;s Open Source Software, so I&#8217;m expecting you&#8217;ll be working on it in your spare time and during code sprints- not 8 hours/day (unless you want to). The Open Source coders out there are familiar with this, still, it&#8217;s been a question so I&#8217;ll state it outright.</p>
<h3>The Details… Or Hints Thereof</h3>
<p>Okay, if you&#8217;re still reading, you&#8217;re definitely an Open Source coder. So what are we doing? Well, I can&#8217;t give too many details,<sup><a href="http://positivelyglorious.com/software-media/need-an-open-source-programmer-or-two-beginners-welcome/#footnote_0_1661" id="identifier_0_1661" class="footnote-link footnote-identifier-link" title="And the good coders will be able to figure out a lot of details by seeing this anyway">1</a></sup> but here are the things you need to be able to do<strong> <em>or able to learn</em></strong>:</p>
<ol>
<li><strong>Programming:</strong> If it&#8217;s not obvious, you need to be a programmer. We&#8217;ll be using Python, PHP and Java, so knowledge of those languages would be great, but if you&#8217;re a programmer in any two other languages, you can probably learn what we need fast enough.</li>
<li><strong>Web Development:</strong> We&#8217;re programming for the web, and creating an application that&#8217;s easily deployed by anyone. Here&#8217;s what we&#8217;re using:
<ol>
<li> <strong><a href="http://codex.wordpress.org/Writing_a_Plugin">WordPress Custom Programming</a></strong> (PHP): We&#8217;ll be modifying a WordPress theme for Rediviva and eventually creating a Plugin.</li>
<li><strong><a href="http://codeigniter.com/">CodeIgniter</a> </strong>(PHP): We&#8217;re developing a web app using this framework to start with.<sup><a href="http://positivelyglorious.com/software-media/need-an-open-source-programmer-or-two-beginners-welcome/#footnote_1_1661" id="identifier_1_1661" class="footnote-link footnote-identifier-link" title="Don&#8217;t bother flaming that Cake is better. I don&#8217;t really care.">2</a></sup></li>
<li><strong><a href="http://code.google.com/appengine/docs/whatisgoogleappengine.html">Google App Engine</a></strong> (Python or Java): We&#8217;ll be building the web app in this eventually, so anyone can easily deploy and use it for free.</li>
<li><strong><a href="http://code.google.com/apis/gdata/">Google Data API</a> </strong>(PHP): Were working mostly with the Calendar API currently.<strong><br />
</strong></li>
<li><strong><a href="http://code.google.com/apis/wave/">Google Wave API</a></strong> (Python or Java): <strong>You&#8217;ll get a developer preview invitation to Google Wave if you don&#8217;t have access already</strong>. Go watch the developer preview to see what Wave can do. Oh, and request access to the <a href="https://services.google.com/fb/forms/wavesignupfordev/">Wave Developer Sandbox</a> now- it takes a while.</li>
</ol>
</li>
<li><strong><a href="https://www.pivotaltracker.com/">PivotalTracker:</a></strong> It&#8217;s an Agile project management tool that we&#8217;ll be using to organize our development. It&#8217;s free, so if you don&#8217;t have an account, we&#8217;ll just set up one when we start and you can learn to use it on the fly.You don&#8217;t need to know all of this, or any of it for that matter, you just have to be interested in learning how to- and able to learn how. Any programmer can pick up the details of a framework, this list is just here so you know what you&#8217;ll be picking up.</li>
<li><a href="http://github.com"><strong>Github:</strong></a> Source control is hosted at Github, so get a free account if you don&#8217;t already have one. Git&#8217;s pretty easy to use, and if you haven&#8217;t, it&#8217;s a good opportunity to learn.</li>
</ol>
<p>By the way, I&#8217;d much rather program that have flame wars, so arguments about why these tools suck and other/completely different tools are the greatest thing ever will fall on deaf ears.<sup><a href="http://positivelyglorious.com/software-media/need-an-open-source-programmer-or-two-beginners-welcome/#footnote_2_1661" id="identifier_2_1661" class="footnote-link footnote-identifier-link" title="Yes, I know there are other tools. Yes, I know there may be better tools. But honestly, tools are tools&#8211; and all are, for the most part, just as good as others. Choice of tools is basically a matter of opinion, despite the flame wars. These are what I started using when building this project, so this is what we&#8217;re going for. Not trying to be mean, just hate spending time on &#8220;what to use and why&#8221; when that could be spent building something useful.">3</a></sup></p>
<h3>What&#8217;s Next?</h3>
<p>Interested in playing along, or at least learning more about the project? Contact me (John) via any method you see fit, the best being email or Twitter links at the top of the page. We&#8217;ll set up a meeting around Hood River or somewhere else in The Gorge and talk a bit. That way I can give you more info on what we&#8217;re trying to accomplish and see whether it&#8217;d be a good fit to work on it together.</p>
<p>Let&#8217;s get coding, yo.</p>
<ol class="footnotes">
<li class="footnote">And the good coders will be able to figure out a lot of details by seeing this anyway</li>
<li class="footnote">Don&#8217;t bother flaming that Cake is better. I don&#8217;t really care.</li>
<li class="footnote">Yes, I know there are other tools. Yes, I know there may be better tools. But honestly, tools are tools&#8211; and all are, for the most part, just as good as others. Choice of tools is basically a matter of opinion, despite the flame wars. These are what I started using when building this project, so this is what we&#8217;re going for. Not trying to be mean, just hate spending time on &#8220;what to use and why&#8221; when that could be spent building something useful.</li>
</ol>
<p><img src="http://positivelyglorious.com/?ak_action=api_record_view&amp;id=1661&amp;type=feed" alt="" /><img src="http://feeds.feedburner.com/~r/PositivelyGlorious-software-media/~4/pNygKZ59YOc" height="1" width="1" /></p>
]]></content:encoded>
			<wfw:commentRss>http://mettadore.com/analysis/need-an-open-source-programmer-or-two-beginners-welcome/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

