<?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>Jayway Team Blog &#187; Uncategorized</title>
	<atom:link href="http://blog.jayway.com/category/uncategorized/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.jayway.com</link>
	<description>Sharing Experience</description>
	<lastBuildDate>Fri, 05 Mar 2010 11:34:10 +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>Maven, the new Elephant on the Block</title>
		<link>http://blog.jayway.com/2010/01/23/maven-the-new-elephant-on-the-block/</link>
		<comments>http://blog.jayway.com/2010/01/23/maven-the-new-elephant-on-the-block/#comments</comments>
		<pubDate>Sat, 23 Jan 2010 15:39:11 +0000</pubDate>
		<dc:creator>Anders Janmyr</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[build systems]]></category>
		<category><![CDATA[buildr]]></category>
		<category><![CDATA[maven]]></category>
		<category><![CDATA[maven2]]></category>
		<category><![CDATA[rake]]></category>
		<category><![CDATA[tools]]></category>

		<guid isPermaLink="false">http://blog.jayway.com/?p=4500</guid>
		<description><![CDATA[Some of you may remember the article, by Bruce Tate, Don't Make Me Eat the Elephant Again.
It was an article about EJB, and Bruce was begging Sun not to make the same mistakes with EJB3 as they had done with EJB, and EJB2. They didn't, Spring came along as better alternative and forced EJB3 to [...]]]></description>
			<content:encoded><![CDATA[<p>Some of you may remember the article, by Bruce Tate, <a href="http://today.java.net/pub/a/today/2004/06/15/ejb3.html">Don't Make Me Eat the Elephant Again</a>.<br />
It was an article about EJB, and Bruce was begging Sun not to make the same mistakes with EJB3 as they had done with EJB, and EJB2. They didn't, Spring came along as better alternative and forced EJB3 to become slimmer and better. If not for Spring, EJB3 would probably look very different from what it looks like today.<br />
Well, guess what, there is a new elephant on the block and its name Maven2.</p>
<div class="separator" style="clear: both; text-align: center;">
<a href="http://4.bp.blogspot.com/_ELioussa2vo/S1sVp6WDq8I/AAAAAAAAAbU/Vsll0_5GjII/s1600-h/maven2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;" rel="lightbox"><img border="0" height="289" src="http://4.bp.blogspot.com/_ELioussa2vo/S1sVp6WDq8I/AAAAAAAAAbU/Vsll0_5GjII/s320/maven2.png" width="320" /></a></div>
<p>
Just like EJB2, Maven2 was born out of something so unbearable that anything else was bliss. <a href="http://commons.apache.org/jelly/">Jelly</a> anyone!</p>
<div class="separator" style="clear: both; text-align: center;">
<a href="http://3.bp.blogspot.com/_ELioussa2vo/S1sWI6lm3KI/AAAAAAAAAbc/A6a_3zHxpsc/s1600-h/Maven.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;" rel="lightbox"><img border="0" height="246" src="http://3.bp.blogspot.com/_ELioussa2vo/S1sWI6lm3KI/AAAAAAAAAbc/A6a_3zHxpsc/s320/Maven.png" width="320" /></a></div>
<p>
But just as EJB was fundamentally flawed, so is Maven2. Build systems, even advanced ones like Maven is fundamentally about two things.</p>
<ol>
<li>Check if something that something else depends on has changed</li>
<li>If so, do something.</li>
</ol>
<p>That's it, that is what is important.<br />
The checking may contain various sophisticated methods for detecting if files, subsets of files, all files, web pages, twitter feeds, etc, has changed, but that is really it.<br />
And the doing can be anything, Copy files, commit files, build websites, run tests, generate code, launch missiles, whatever!<br />
But the key to doing this efficiently is a programming language with easy access to system commands and the ability to create simple abstractions, with methods, variables, and objects. The language should also, preferably, be one without a lot of ceremony, like Ruby, Javascript or Python.<br />
There are already build systems like this out there, <a href="http://buildr.apache.org/">Buildr</a>, <a href="http://www.scons.org/">SCons</a>, and <a href="http://rake.rubyforge.org/">Rake</a> come to mind, but they do not have the momentum of Maven, so a merger between Maven and Buildr would be wonderful.</p>
<div class="separator" style="clear: both; text-align: center;">
<a href="http://4.bp.blogspot.com/_ELioussa2vo/S1sWTI-SneI/AAAAAAAAAbk/Z0AI_sUPXMs/s1600-h/Maven3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;" rel="lightbox"><img border="0" src="http://4.bp.blogspot.com/_ELioussa2vo/S1sWTI-SneI/AAAAAAAAAbk/Z0AI_sUPXMs/s320/Maven3.png" /></a></div>
<p>So, Jason, hear my plea, Don't make me eat the elephant again!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jayway.com/2010/01/23/maven-the-new-elephant-on-the-block/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Working at Jayway</title>
		<link>http://blog.jayway.com/2009/11/29/working-at-jayway/</link>
		<comments>http://blog.jayway.com/2009/11/29/working-at-jayway/#comments</comments>
		<pubDate>Sun, 29 Nov 2009 07:03:11 +0000</pubDate>
		<dc:creator>Anders Janmyr</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[authority]]></category>
		<category><![CDATA[competence]]></category>
		<category><![CDATA[consultancy]]></category>
		<category><![CDATA[jayway]]></category>
		<category><![CDATA[management]]></category>
		<category><![CDATA[openness]]></category>
		<category><![CDATA[product development]]></category>
		<category><![CDATA[satisfaction]]></category>

		<guid isPermaLink="false">http://blog.jayway.com/?p=2299</guid>
		<description><![CDATA[This morning I woke up singing, like I do most mornings.   There are so many things ahead of me and most of them I like to do. One of those things is going to work. I worked at Jayway, for five years, three years ago, and I recently came back.
The reason I left [...]]]></description>
			<content:encoded><![CDATA[<p>This morning I woke up singing, like I do most mornings. <img src='http://blog.jayway.com/wordpress/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  There are so many things ahead of me and most of them I like to do. One of those things is going to work. I worked at Jayway, for five years, three years ago, and I recently came back.</p>
<p>The reason I left was that I wanted to work with one product and one team. I wanted to do everything right, I wanted to use pair-programming, domain-driven design and test-driven development. I had many plans. It didn't turn out that way, the people on the team I worked with did not want to use pair-programming, DDD or TDD! <img src='http://blog.jayway.com/wordpress/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<p>After a few years I gave up and came back to Jayway and I love it. The company has grown quite a bit, while I was away, and that is a good thing. Three years ago I probably thought that it was a bad thing. It isn't! Three years ago we had to come into a company as resource consultants, but now we, many times, come in as a team or get to do the project in-house. This is a really good thing. Getting to work with other Jayway people is a real Joy. They are smart, motivated and pragmatic. If I leave the project for a week, someone steps into my role and, everything works out fine. <a href="http://agilemanifesto.org/">People and interactions over processes and tools</a> is very, very true!</p>
<p>There are a many reasons why I think it is so nice to work at Jayway.</p>
<p><strong>Natural authority</strong> is a pattern from <a href="http://anders.janmyr.com/2009/11/adrenaline-junkies-and-template-zombies.html">Adrenaline Junkies and Template Zombies</a> that states:</p>
<blockquote><p>The meaning of an authority is a person who knows a great deal about something. Another meaning, in authority, is a person who is in charge. If someone who is <strong>an authority</strong> also is <strong>in authority</strong>, this is a natural authority.</p>
</blockquote>
<p>The person who knows best, gets to make the decisions. This is the way it is at Jayway. You are not assigned to a project, <strong>you are asked</strong> if you want to work on the project and, <strong>it is OK to say no</strong>.</p>
<p><strong>Management</strong>. My wife recently told me about a danish entrepreneur, Lars Kolind. He is usually called in when a company is not doing as well as it should. He talked about something that he called <a href="http://kolindkuren.dk/">Kolindkuren (the Kolind treatment)</a>. What he does in this treatment is that he turns things upside-down. And one specific thing he did was that instead of asking managers who they wanted as employees, he asked the employees who they wanted to have as managers. It turned out that no-one wanted many of the managers.</p>
<p>When I think about this and how this would work out if we did the same thing at Jayway, I don't think that anything would change. I am happy with my managers, I don't see them as managers, I see them as collegues who work to allow me to do the job I want to do. If I got to choose who I wanted to be my boss, I would choose exactly the people we have right now. And, I think we all feel the same way. An example of this came a few years ago.</p>
<blockquote><p>Thomas, the president of Jayway was fired by the board. What happened then was amazing, one week after Thomas was fired, 90 percent of the employees had resigned. <strong>If Thomas can't work for you, then we wont work for you</strong>, was the clear message that was sent. And it had effect, Thomas is back, the board is gone, and we are all happy.</p>
</blockquote>
<p><strong>Competence</strong> is the driving factor of everyone at Jayway. We all have different interests, but the common denominator is that everyone loves programming and want to get better at it. Take a look at this weeks competence workshops, and remember that they are all voluntary!</p>
<p><img src="http://2.bp.blogspot.com/_ELioussa2vo/SxFCBQD9gvI/AAAAAAAAAZ8/hYIqfG63PFk/s320/comptence_jayway.png" title="Competence Calendar at Jayway" alt="Competence Calendar" /></p>
<p><strong>Openness</strong> is very important to me. If I know why a decision has been made, I can understand why it was taken even though I may not agree with it. At Jayway all the managers write a short daily mail about what they are doing during the day. Every week Thomas updates the wiki with what is going on currently and what is planned for the future. Everything that does not have to be secret is open and available. If you want to find it, it is on the wiki.</p>
<blockquote><p>If a doctor wants to chop of my leg I would be happier with the decision if I knew that he wants to do this because I have an incurable tumor in the leg, instead of him wanting to practice his amputation skills.</p>
</blockquote>
<p>So, that is how it is to work at Jayway (at least in my mind). If you feel that competence and humbleness is more important than fancy titles, come and join us.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jayway.com/2009/11/29/working-at-jayway/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>On Twitter&#8230;</title>
		<link>http://blog.jayway.com/2009/03/17/on-twitter/</link>
		<comments>http://blog.jayway.com/2009/03/17/on-twitter/#comments</comments>
		<pubDate>Tue, 17 Mar 2009 14:49:28 +0000</pubDate>
		<dc:creator>Mattias Ask</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[twitter]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://blog.jayway.com/?p=1161</guid>
		<description><![CDATA[Twitter has actually just recently gotten a lot of traction in Sweden and Scandinavia. Google Trends show this clearly which means that a Swedish blog-post about Twitter is still sort of relevant  
What is Twitter? Well, it's a micro blog. Users post so called tweets, messages with 140 characters or less. You can tweet, [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://twitter.com">Twitter</a> has actually just recently gotten a lot of traction in Sweden and Scandinavia. <a href="http://www.google.com/trends?q=twitter&geo=swe&sa=N">Google Trends</a> show this clearly which means that a Swedish blog-post about Twitter is still sort of relevant <img src='http://blog.jayway.com/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>What is Twitter? Well, it's a micro blog. Users post so called tweets, messages with 140 characters or less. You can tweet, follow peoples tweets and search. That's basically it. And this is cool why?</p>
<h3>Keep yourself updated</h3>
<p>For me, one of the key features of Twitter is that there are really interesting people twittering. If you go to <a href="http://wefollow.com">WeFollow</a> you'll find people like <a href="http://twitter.com/kevinrose">Kevin Rose</a>, <a href="http://twitter.com/timoreilly">Tim O'Reilly</a> and <a href="http://twitter.com/guykawasaki">Guy Kawasaki</a> in the tech segment. Since they are active this means that you are able to listen to feeds from some of the, in their fields, most updated people. And Twitter is basically full of fantastic people to follow... like Chris Hughes (http://twitter.com/chews), less followed but equally interesting, who's Twitter Bio says "I was the one of first to hack the iPhone. BOOOM'"... In short, nothing is stopping anyone from evolving their web presence and getting people to follow them.</p>
<p>Before Twitter everyone knew people that where islands of new knowledge; people that seemed to have one ear to the ground and hear the most interesting things. With Twitter, these guys and girls broadcast their nuggets of information to the world, effectively building their personal brand and enabling everyone to listen to them. All of the sudden you have the opportunity to be as updated as these people are. Not only that, since you have the possibility to listen to multiple islands at once you can get a perspective of the entire world of islands... </p>
<p>Ok, there are great people to follow, and they share information, great links and insight, but this all sums up to a lot of information. Yes! In this day and age you have to accept a certain degree of white noise if you want to hear interesting signals... deal with it. Luckily there are plenty of tools to help you deal with it. I use <a href="http://www.tweetdeck.com/">TweetDeck</a> on my Mac, but there are tons of tools out there...</p>
<h3>The Twitter API</h3>
<p>The Twitter API is in my opinion is one of the most obvious reasons for Twitter success. It is an open API which anyone can use to create applications that uses Twitter data... and it's silly simple, especially if you use the Java API <a href="http://code.google.com/p/java-twitter/">java-twitter</a>. The following is what is needed to login a user and print their friends timeline (the stream of tweets from people a person follows):</p>
<pre class="java"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #993333;">void</span> printFriendsTimeline<span style="color: #66cc66;">&#40;</span><a href="http://www.google.com/search?hl=en&amp;q=allinurl%3AString+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #aaaadd; font-weight: bold;">String</span></a> username, <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3AString+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #aaaadd; font-weight: bold;">String</span></a> password<span style="color: #66cc66;">&#41;</span> <span style="color: #000000; font-weight: bold;">throws</span> TwitterException<span style="color: #66cc66;">&#123;</span>
	Api api = <span style="color: #000000; font-weight: bold;">new</span> Api<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
	api.<span style="color: #006600;">setCredentials</span><span style="color: #66cc66;">&#40;</span>username, password<span style="color: #66cc66;">&#41;</span>;
	Status<span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span> userTimeline = api.<span style="color: #006600;">getFriendsTimeline</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
	<span style="color: #b1b100;">for</span> <span style="color: #66cc66;">&#40;</span>Status status : userTimeline<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
		<a href="http://www.google.com/search?hl=en&amp;q=allinurl%3ASystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span style="color: #aaaadd; font-weight: bold;">System</span></a>.<span style="color: #006600;">out</span>.<span style="color: #006600;">println</span><span style="color: #66cc66;">&#40;</span>status.<span style="color: #006600;">getUser</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>.<span style="color: #006600;">getName</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> + <span style="color: #ff0000;">&quot;:&quot;</span> + status.<span style="color: #006600;">getText</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;
	<span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span>
&nbsp;</pre>
<p>This means that anyone can do just about anything with the Twitter data. Your basic level of allowed requests is 100 request per hour and IP, but if your application is request-intensive you can ask Twitter for more and get up to 20.000 requests per hour and IP. Of course this has created a flora, or even an entire ecosystem, of applications and implementations where you can tweet, watch statistics, see the most tweeted links and everything you can imagine (just check out <a href="http://www.squidoo.com/twitterapps">this list</a>).</p>
<h3>Some tweeting advice</h3>
<p>Not that I'm an authority on this, but I still wanted to end with some advice on tweeting:</p>
<p>1. Create good content that you think people want to read. Did you published a blog post? Tweet about it. Going to a conference? Tweet about it. Did you find a new interesting framework? Tweet about it. Got a new fantastic insight? Tweet about it.</p>
<p>2. #tag your tweets. If you tweet "Just found out about this great API http://tr.im/hr8S" end it with describing #tags like this "Just found out about this great API http://tr.im/hr8S #java #dev #twitter" to make it searchable and to add more context. </p>
<p>3. Re-tweet/RT when you read a good tweet. RT is a user derived notation which is used when forwarding tweets. If you get "Jayway.com is a great company!" from me and love it you simply write "RT @mattiasask : Jayway.com is a great company!". Applications like TweetDeck also help you with this...</p>
<p>4. Try to get re-tweeted if you want to spread you tweets. A tweet can travel by RT from social graph to social graph and reach a lot of people that way. Read Guy Kawasakis' blog on how to get retweeted (http://blogs.openforum.com/2009/02/18/how-to-get-retweeted/) for more on this. </p>
<p>/Mattias Ask, <a href="http://twitter.com/mattiasask">@mattiasask</a></p>
<p>PS. I have to add cool thing about Twitter and the speed of updates, something Twitter co-founder Evan Williams <a href="http://www.ted.com/index.php/talks/evan_williams_on_listening_to_twitter_users.html">talked about at TED</a> this year. During the California forest fires in -07 Twitter followers where more updated about where the fires spread than the people listing to the traditional media sources where. Why? Because people in the actual areas where the fire spread were tweeting about it from their cellphones...</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jayway.com/2009/03/17/on-twitter/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>OpenCauses.org &#8211; Do Good.</title>
		<link>http://blog.jayway.com/2009/02/25/opencausesorg-do-good/</link>
		<comments>http://blog.jayway.com/2009/02/25/opencausesorg-do-good/#comments</comments>
		<pubDate>Wed, 25 Feb 2009 15:32:57 +0000</pubDate>
		<dc:creator>Mattias Ask</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[donations]]></category>
		<category><![CDATA[innovation]]></category>
		<category><![CDATA[opencauses]]></category>

		<guid isPermaLink="false">http://blog.jayway.com/?p=962</guid>
		<description><![CDATA[I had the opportunity to present the Way Group initiated project OpenCauses.org at TED@PalmSprings this year. It was a fantastic experience and I got a great response on the project. But what is it we are doing with OpenCauses.org?
For good or for bad, the market is unprecedented in its power to generate wealth. What if [...]]]></description>
			<content:encoded><![CDATA[<p>I had the opportunity to <a href="http://blog.ted.com/2009/02/friday_mornings.php">present</a> the <a href="http://www.waygroup.se/">Way Group</a> initiated project <a href="http://opencauses.org">OpenCauses.org</a> at <a href="http://www.ted.com">TED@PalmSprings</a> this year. It was a fantastic experience and I got a great response on the project. But what is it we are doing with <a href="http://opencauses.org">OpenCauses.org</a>?</p>
<p>For good or for bad, the market is unprecedented in its power to generate wealth. What if we could use this power, not to generate wealth, but to generate good?</p>
<p>Since the market understands money really well, why not create representative money based on donations? If we do this, everyone will be able to handle donations as money. We could own it, measure it, trade with it, work to generate more of it... and every cent of it would represent donations for good causes.</p>
<p>This is what <a href="http://www.opencauses.org">OpenCauses.org</a> is doing.</p>
<p><a href="http://www.opencauses.org">OpenCauses.org</a> really only aims to change <em>one</em> word. Instead of saying "I <em>make</em> donations to good causes" you will say "I <em><strong>buy</strong></em> donations to good causes". This slight change makes all the difference. </p>
<p><strong>What is it we are doing?</strong><br />
We are creating the Open Causes Platform, a non-profit donation platform, which will enable donations to causes aimed at the <a href="http://www.un.org/millenniumgoals/">UN Millennium Development Goals</a>. The Open Causes Platform will also hold Cause Credits. Causes Credits is representative money based on donations. This means that each Causes Credit represents a donation made to a good cause. </p>
<p>When you donate through the Open Causes Platform you receive Cause Credits for your donation. Your Cause Credits are measurable and accumulative, and  they are also transferable between users of the platform. All this combined effectively makes Cause Credits into a means of trade.</p>
<p>The Open Causes Platform is an infrastructural platform which exposes a number of web-services. With these services integrators can integrate basically any site or Internet connected product to the platform. Anyone can create pretty much any implementation of donation based services imaginable. They will be able to make donations, show how much users have donated, compare and transfer donation. </p>
<p><strong>Using Cause Credits</strong><br />
If you, as a person or an organization, own 100 Cause Credits you have donated $100 through the Open Causes Platform. If you later donate $10 more, you own 110 Cause Credits. </p>
<p>Now, let's say that I have a cellular phone that I don't use. If you give me your 110CC, I'll give you my phone. If so, I have made the actual donations for $110 and you have bought my phone in two steps. The value of my phone has paid for the $110 donation. You now own a phone, but have not made any donations.</p>
<p><strong>Summary</strong><br />
We are implementing a currency based on donations. Essentially we want to complement the market of today with a market based on generosity. Just imagine if every corporation where to accept a currency based on donations for 1% of their services and products... What couldn't we do then?</p>
<p>Mattias Ask,<br />
Founder of <a href="http://opencauses.org">OpenCauses.org</a></p>
<p>If you have any questions or want more information about the project,  go to <a href="http://www.opencauses.org">OpenCauses.org</a> or contact me at mattias.ask@opencauses.org.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jayway.com/2009/02/25/opencausesorg-do-good/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Development 13 years ago</title>
		<link>http://blog.jayway.com/2008/09/22/development-13-years-ago/</link>
		<comments>http://blog.jayway.com/2008/09/22/development-13-years-ago/#comments</comments>
		<pubDate>Mon, 22 Sep 2008 17:00:07 +0000</pubDate>
		<dc:creator>Jan Kronquist</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[game]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[retrospective]]></category>

		<guid isPermaLink="false">http://blog.jayway.com/?p=314</guid>
		<description><![CDATA[Back in 1994-1995 me and a friend wrote a game called Gravity Force 2 on the Amiga. It got very popular and we still get the occasional email about it. Some people have requested to look at the source code and now it is finally released! ]]></description>
			<content:encoded><![CDATA[<p>Back in 1994-1995 me and a friend wrote a game called <a href="http://www.lysator.liu.se/~jensa/gf2/">Gravity Force 2</a> on the Amiga. It got very popular and we still get the occasional email about it. Some people have requested to look at the source code and now it is finally released! </p>
<p>This weekend I was unpacking two of the last boxes in my new apartment and I finally found my old Amiga 1200. Since it have been stored in the attic for a couple of years and in before that it was stored in the cellar, I decided that it was time to check if it was still working. It took me a quite some time to configure the TV(!) to correctly show the display, but everything else worked like a charm. It had not been booted for over 10 years! </p>
<p>Anyway I found the source code in some random folder, created an LHA archive, found an old floppy disk and using an USB floppy drive I managed to transfer the archive to my PC. Some facts:</p>
<ul>
<li>The code had not been touched since march 1995</li>
<li>It is more than 12 000 lines of (more or less) undocumented assembly code mostly in a single file</li>
<li>The labels are things like s, s2, fl, bid, cnl2 and so on</li>
<li>We didn't use a version control system. Instead all files were transfered on floppy disk between our computers</li>
</ul>
<p>Yet we were still able to create a fun computer game that worked on all the different versions of the Amiga hardware. With todays powerful hardware, different programming languages, good IDEs and the large number of frameworks I simply don't know where to start. Why is that? </p>
<p>Perhaps the fact that we were very focused on what we wanted to do and not interested in how, we were able to overcome the complexity and simply get it done.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jayway.com/2008/09/22/development-13-years-ago/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
