<?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>breakthesystem &#187; programming</title>
	<atom:link href="http://breakthesystem.org/tag/programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://breakthesystem.org</link>
	<description>Elegante Anwendungen für Web, iPhone und Mac</description>
	<lastBuildDate>Wed, 12 May 2010 14:01:26 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Alles unter Kontrolle?</title>
		<link>http://breakthesystem.org/2009/alles-unter-kontrolle/</link>
		<comments>http://breakthesystem.org/2009/alles-unter-kontrolle/#comments</comments>
		<pubDate>Tue, 10 Mar 2009 15:55:49 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Deutsch]]></category>
		<category><![CDATA[best-practice]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://breakthesystem.org/?p=278</guid>
		<description><![CDATA[Es gibt viele Dinge, die beim Entwickeln und Betreiben einer Webseite wichtig sind, aber für am unverzichtbarsten halte ich persönlich eine Versionsverwaltung. Wenn Sie eine Webseite betreiben, die für Sie wichtig ist, und sie nicht versioniert ist, machen Sie etwas falsch. Und zwar ganz schön!
Was ist Versionsverwaltung? Ein Versionsverwaltungs- oder auch Versionskontroll-System ist ein System [...]]]></description>
			<content:encoded><![CDATA[<p>Es gibt viele Dinge, die beim Entwickeln und Betreiben einer Webseite wichtig sind, aber für am unverzichtbarsten halte ich persönlich eine Versionsverwaltung. Wenn Sie eine Webseite betreiben, die für Sie wichtig ist, und sie nicht versioniert ist, machen Sie etwas falsch. Und zwar ganz schön!<span id="more-278"></span></p>
<p>Was ist Versionsverwaltung? Ein Versionsverwaltungs- oder auch Versionskontroll-System ist ein System zur Nachverfolgung und Archivierung von Änderungen an Texten, vor allem Programmquelltext. Ich sage meinem VCS (<i>Version Control System</i>), welche Dateien zu meinem Projekt gehören, und es kümmert sich darum, dass ich nie wieder etwas verliere.</p>
<h3>Nie wieder?</h3>
<p>Nie wieder. Denn ein VCS ist wie eine immerwährende, projektweite Undo-Funktion: Mit einem Klick oder Tastendruck kann ich beliebig weit in die Vergangenheit springen und den Quelltext in seiner früheren Form betrachten oder in die Gegenwart bringen. Was habe ich vorgestern abend gelöscht? Was hat der Kollege letzte Woche verändert? </p>
<p>Auch wenn für einen einzelnen Entwickler Versionierung schon hilfreich ist, ist sie noch viel mächtiger im Team. Jeder Entwickler arbeitet an seinem Rechner und schiebt Änderungen auf den Server des VCS wenn er fertig ist. Die anderen kriegen die Änderungen erst mit, wenn sie sie explizit danach fragen; zu keinem Zeitpunkt vermischt sich unfertiger Code aus Versehen mit fertigem Code. Und damit erledigt sich einfach so eines der schwierigsten Probleme bei der Zusammenarbeit in der Gruppe.</p>
<p>Eine Versionsverwaltung ist auch das ideale Backup. Wenn alles, was zu einer Anwendung oder Webseite gehört, in der Versionsverwaltung ist (und so sollte es sein!), dann reicht ein Backup von <b>einer</b> Maschine, nämlich dem VCS-Server, um den Code zuverlässig zu retten, sollte etwas passieren. Das Buch <i><a href="http://pragprog.com/titles/prj/ship-it">Ship It!</a></i> von Richardson und Gwaltney drückt es wunderbar klar aus:</p>
<blockquote><p>Be sure you have everything you need to build, deploy, and run your product in your source code management system. If you don’t, you are putting the long-term viability of your development project at risk in order to save disk space. </p>
<p>Sounds kind of silly when you phrase it that way, doesn’t it? </p></blockquote>
<h3>Empfehlungen</h3>
<p>Wenn breakthesystem anrückt, kümmern wir uns um alles, inklusive Hosting und Aufbau einer Versionsverwaltung. </p>
<p>Bis dahin empfehlen wir das kostenlose <a href="http://subversion.tigris.org/">Subversion</a>, weil es das am besten dokumentierte VCS ist, und das mit der besten Unterstützung in Editoren, IDEs, usw. Für Windows-User ganz besonders interessant ist der sehr gute Client <a href="http://tortoisesvn.tigris.org/">Tortoise SVN</a>, und für Mac OS gibt es <a href="http://versionsapp.com/">Versions</a>. Oh, und als Host empfehlen wir <a href="http://beanstalkapp.com/">Beanstalk</a>.</p>
<p>Mein ganz <b>persönlicher</b> Favorit unter den Versionssystemen ist <a href="http://www.selenic.com/mercurial/">Mercurial</a>. Mercurial ist mächtiger als Subversion, denn es ist eine <b>verteiltes</b> Versionsverwaltung, ein distributed VCS. Damit ist es möglich, Änderungen am Programmcode noch feiner abzuspeichern, denn es separiert den Arbeitsschritt &#8220;Änderung benennen und auf dem Server speichern&#8221; in die zwei Schritte &#8220;Änderung benennen und speichern&#8221; und &#8220;letzte Änderungen auf den Server hochladen.&#8221; Als Server empfehle ich dazu <a href="http://bitbucket.org/">bitbucket.org</a>, auf dem auch unsere kleineren Spaßprojekte wie <a href="http://bitbucket.org/winsmith/die-stimme-gottes/">Die Stimme Gottes</a> oder <a href="http://bitbucket.org/winsmith/the_zombie/">The_Zombie</a> gehostet sind. Mercurial ist unglaublich mächtig, aber nur für Kommandozeilen-Cowboys empfehlenswert. Klickibunti gibt dafür nämlich noch nichts wirklich brauchbares.</p>
<h3>Und Ihre Meinung dazu?</h3>
<p>Welches VCS benutzen unsere Leser? Sind Sie zufrieden damit? Oh, und noch etwas: Wie fanden Sie diesen Artikel? War der Informationsgehalt ausreichend? </p>
 ]]></content:encoded>
			<wfw:commentRss>http://breakthesystem.org/2009/alles-unter-kontrolle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Code Snippets. When, How and Why?</title>
		<link>http://breakthesystem.org/2009/code-snippets-when-how-and-why/</link>
		<comments>http://breakthesystem.org/2009/code-snippets-when-how-and-why/#comments</comments>
		<pubDate>Fri, 06 Feb 2009 11:19:22 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[ideas]]></category>
		<category><![CDATA[osx]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://breakthesystem.org/?p=61</guid>
		<description><![CDATA[So I was reading an article called <a href="http://www.noupe.com/tools/readers-pick-30-incredibly-useful-mac-apps-for-web-design.html">30+ Incredibly Useful Mac Apps for Web Design</a> and while I found most of the apps useful, I stumbled over a link to an Application called <a href="http://www.mcubedsw.com/software/codecollectorpro">Code Collector Pro</a>.  Huh?]]></description>
			<content:encoded><![CDATA[<p>So I was reading an article called <a href="http://www.noupe.com/tools/readers-pick-30-incredibly-useful-mac-apps-for-web-design.html">30+ Incredibly Useful Mac Apps for Web Design</a> and while I found most of the apps useful, I stumbled over a link to an Application called <a href="http://www.mcubedsw.com/software/codecollectorpro">Code Collector Pro</a>. </p>
<h1>Huh?</h1>
<p>In recent weeks, I&#8217;ve stumbled over so many Tools for managing code snippets, it&#8217;s not funny any more. Viusual Studio plugins, TextMate plugins, apps for Windows, apps for OSX, apps for the web&#8230; what&#8217;s the matter? Why is everybody suddenly horny for little snippets of code?</p>
<p>I&#8217;ve thought about trying out a code snippet application, but&#8230; I wouldn&#8217;t really know what to do with one. I have no fucking clue, really! Yes, of course, you&#8217;re supposed to enter little snippets of code that you think could be useful in the future, but I somehow have never come accross these.</p>
<h1>I don&#8217;t really need snippets, do I?</h1>
<p>Of course, I have code on my hard drive that I will definitely reuse. For example, I have a folder called <code>CSS</code> with CSS files to <a href="960.gs">reset font and spacing settings and set grid systems</a>. I also have a folder with an almost-finished CMS that will most certainly be included in more than one web-app of mine.</p>
<p><em>But that doesn&#8217;t really merit a whole App. So I don&#8217;t use one.</em> And this is okay by me, or at least I think so. </p>
<h1>But what if I&#8217;m missing out on something really cool?</h1>
<p>What if there are indeed cool things to be said about Schnippets, and I just haven&#8217;t realized them? That would suck. <em>Are you using a code snippet app?</em> If so, what for? I&#8217;m looking forward to your ideas.</p>
 ]]></content:encoded>
			<wfw:commentRss>http://breakthesystem.org/2009/code-snippets-when-how-and-why/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Bridge-Building Can Ruin Your Life</title>
		<link>http://breakthesystem.org/2007/bridge-building-can-ruin-your-life/</link>
		<comments>http://breakthesystem.org/2007/bridge-building-can-ruin-your-life/#comments</comments>
		<pubDate>Wed, 12 Sep 2007 17:16:22 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[drivel]]></category>
		<category><![CDATA[Geekism]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://breakthesystem.org/2007/bridge-building-can-ruin-your-life/</guid>
		<description><![CDATA[
Someone (I couldn&#8217;t find out who, if you know, contact me please) wrote an article that says Programming Can Ruin Your Life. Of course, with that title, it must go on reddit, right?
So how can programming ruin your life?

Sadly, no one ever tells you about the ways in which it will adversely affect your life. [...]]]></description>
			<content:encoded><![CDATA[<div style="text-align:center;"><img src="http://breakthesystem.org/wp-content/uploads/2007/09/programming.png" alt="programming.png" border="0" width="429" height="342" /></div>
<p>Someone (I couldn&#8217;t find out who, if you know, contact me please) wrote an article that says <a href="http://devizen.com/blog/2007/09/11/ruin/">Programming Can Ruin Your Life</a>. Of course, with that title, it <i>must</i> go on reddit, right?</p>
<p>So how can programming ruin your life?</p>
<p><span id="more-19"></span></p>
<blockquote><p>Sadly, no one ever tells you about the ways in which it will adversely affect your life. The physical effects are obvious. You’ll spend most of your time sitting, probably in an uncomfortable chair that doesn’t promote good posture. You’ll fuel yourself with food that is readily available, meaning it’s more than likely processed and full of sugar and you’ll likely choose either coffee or soda to stave off the drowsiness. A coworker once remarked, “If it doesn’t come out of a vending machine, programmers don’t eat it.”</p></blockquote>
<p>How stupid is that? So, because programming is so brain-consuming or addictive or whatever, your hypothetical programmer won&#8217;t know how eat properly or exercise? Sorry to disappoint you here, anonymous writer, but not all coders are anti-social fat suckers who spend all night in front of the computer.</p>
<p>Also, even if you learned in English class that you can close an argument in an essay with anecdotal evidence, I would recommend inventing a coworker who has <i>not</i> undergone lobotomy next time. </p>
<p>The text goes on saying that &#8220;[p]rogramming changes more than your body. Programming changes the way you think.&#8221; Well, yup.</p>
<blockquote><p>The application of programming specific processes and habits to the everyday is where peril lies. The same traits that make you a great programmer can make you an awkward, misunderstood and miserable human being.</p></blockquote>
<p>What the fuck?</p>
<blockquote><p>Programming presents you with a problem and allows you to eventually solve it provided you don’t quit. A solution is out there somewhere. Make enough attempts and chances are you’ll eventually prevail. Aren’t computers great? They afford a large degree of freedom in problem solving. If nothing else, you are able to make as may attempts as you please and it will happily execute each one. This instills in you a sense that failure is not final. Any obstacle can be hurdled. This is not true in the real world. While you may find second chances now and again, the wheels that turn in the big blue room are largely unforgiving. Time marches on in one direction.</p></blockquote>
<p>Okay, I&#8217;ll have to address this from a few different directions, because it is mind-fuckingly stupid in so many dimensions.</p>
<p>First we have the claim that failure is not possible in programming. Hello? Does a nontrivial problem somehow go away just because I try again? No, of course it does not. </p>
<p>Then, what is it with the philosophical attitude? &#8220;[T]he wheels that turn in the big blue room are largely unforgiving. Time marches on in one direction.&#8221; Somehow the author seems to think he has it all figured out: life, the universe and everything. Maybe this delusion is the reason for this rambling piece of <strike>shit</strike> text.</p>
<p>And finally, we have the idea (again) of the coder as a trained monkey who can only deal with his surroundings in the context of a computer. That everybody who decides to create software for fun or profit suddenly loses their connection to reality. I could maybe write a thousand words just about the stupidity of that claim alone, if I wasn&#8217;t sure that no one would read it.</p>
<p>The text goes on, but this is the gist: Because programmers are so <i>terribly</i> obsessed with what they do, and because they are also idiot savants, they are compelled to apply their silly ways of solving problems in the computer to every fucking situation in their lives. They just don&#8217;t know better. </p>
<p>Me, I disagree. What about you?</p>
 ]]></content:encoded>
			<wfw:commentRss>http://breakthesystem.org/2007/bridge-building-can-ruin-your-life/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
	</channel>
</rss>
