<?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>Joakim Andersson &#187; programming</title>
	<atom:link href="http://joakimandersson.se/archives/category/programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://joakimandersson.se</link>
	<description>Passionate climber, brilliant coder</description>
	<lastBuildDate>Thu, 12 Jan 2012 11:01:55 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Bash script that shows the dates of SSL certificates</title>
		<link>http://joakimandersson.se/archives/2011/11/22/bash-script-that-shows-the-dates-of-ssl-certificates/</link>
		<comments>http://joakimandersson.se/archives/2011/11/22/bash-script-that-shows-the-dates-of-ssl-certificates/#comments</comments>
		<pubDate>Tue, 22 Nov 2011 08:55:53 +0000</pubDate>
		<dc:creator>Joakim Andersson</dc:creator>
				<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://joakimandersson.se/?p=3302</guid>
		<description><![CDATA[After a bit of trickery and combining different Google hits I came up with this script: for CERT in domain1:443 domain2:7431 domain3:443 do echo $CERT echo &#34;GET /&#34; &#124; openssl s_client -connect ${CERT} 2&#62;/dev/null &#124; sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' &#124; openssl x509 -noout -subject -dates done]]></description>
			<content:encoded><![CDATA[<p>After a bit of trickery and combining different Google hits I came up with this script:</p>

<p><pre class="brush: bash; title: ;">
for CERT in domain1:443 domain2:7431 domain3:443
do
  echo $CERT
  echo &quot;GET /&quot; | openssl s_client -connect ${CERT} 2&gt;/dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | openssl x509 -noout -subject -dates
done
</pre></p>
]]></content:encoded>
			<wfw:commentRss>http://joakimandersson.se/archives/2011/11/22/bash-script-that-shows-the-dates-of-ssl-certificates/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Logging not working with Titanium 1.6.1 and Xcode 4.3</title>
		<link>http://joakimandersson.se/archives/2011/05/13/logging-not-working-with-titanium-1-6-1-and-xcode-4-3/</link>
		<comments>http://joakimandersson.se/archives/2011/05/13/logging-not-working-with-titanium-1-6-1-and-xcode-4-3/#comments</comments>
		<pubDate>Fri, 13 May 2011 11:55:56 +0000</pubDate>
		<dc:creator>Joakim Andersson</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[ios]]></category>
		<category><![CDATA[titanium]]></category>

		<guid isPermaLink="false">http://joakimandersson.se/?p=3293</guid>
		<description><![CDATA[If logging messages are not showing after updating to the latest Xcode apply the following workaround. Appcelerator Developer Center &#8211; Titanium 1.6.1 and XCode 4.3 &#8211; Debug/Info problem Or if you want the short version: $ cd ~/Library/Application\ Support/iPhone\ Simulator/ $ ln -s 4.3.2 4.3]]></description>
			<content:encoded><![CDATA[<p>If logging messages are not showing after updating to the latest Xcode apply the following workaround.</p>

<p><a href="http://developer.appcelerator.com/question/118667/titanium-161-and-xcode-43---debuginfo-problem">Appcelerator Developer Center &#8211; Titanium 1.6.1 and XCode 4.3 &#8211; Debug/Info problem</a></p>

<p>Or if you want the short version:</p>

<pre><code>$ cd ~/Library/Application\ Support/iPhone\ Simulator/
$ ln -s 4.3.2 4.3
</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://joakimandersson.se/archives/2011/05/13/logging-not-working-with-titanium-1-6-1-and-xcode-4-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Learning Scala: Recursion</title>
		<link>http://joakimandersson.se/archives/2011/01/19/learning-scala-recursion/</link>
		<comments>http://joakimandersson.se/archives/2011/01/19/learning-scala-recursion/#comments</comments>
		<pubDate>Wed, 19 Jan 2011 22:15:42 +0000</pubDate>
		<dc:creator>Joakim Andersson</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[scala]]></category>

		<guid isPermaLink="false">http://joakimandersson.se/?p=3169</guid>
		<description><![CDATA[If you like me are learning Scala you might after a bit of coding realize that even if it is possible to write java-like code in Scala &#8211; and by using some of the nice features of Scala it will actually be more fun than writing normal Java code. It will quite often look a [...]]]></description>
			<content:encoded><![CDATA[<p>If you like me are learning <a href="http://www.scala-lang.org/">Scala</a> you might after a bit of coding realize that even if it is possible to write java-like code in Scala &#8211; and by using some of the nice features of Scala it will actually be more fun than writing normal Java code. It will quite often look a bit ugly and not feel that natural.</p>

<p>That is because it is not the Scala-way of doing it.</p>

<p>I&#8217;m still trying to understand the Scala-way of thinking but it&#8217;s not something you pick up over night. I&#8217;m taking baby steps and hopefully making some progress every day.</p>

<p>Two articles I found yesterday helped me understand how to assign immutable variables from if-statements and how Scala loves recursion:</p>

<ul>
<li><p><a href="http://www.ibm.com/developerworks/java/library/j-scala03268.html">The busy Java developer&#8217;s guide to Scala: Don&#8217;t get thrown for a loop! &#8211; Inside Scala&#8217;s control structures</a></p></li>
<li><p><a href="http://oldfashionedsoftware.com/2008/09/27/tail-recursion-basics-in-scala/">Tail-Recursion Basics In Scala</a></p></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://joakimandersson.se/archives/2011/01/19/learning-scala-recursion/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rails 3.0: It&#8217;s ready!</title>
		<link>http://joakimandersson.se/archives/2010/08/31/rails-3-0-its-ready/</link>
		<comments>http://joakimandersson.se/archives/2010/08/31/rails-3-0-its-ready/#comments</comments>
		<pubDate>Tue, 31 Aug 2010 17:02:24 +0000</pubDate>
		<dc:creator>Joakim Andersson</dc:creator>
				<category><![CDATA[rails]]></category>

		<guid isPermaLink="false">http://joakimandersson.se/?p=2987</guid>
		<description><![CDATA[&#8220;Rails 3.0 has been underway for a good two years, so it’s with immense pleasure that we can declare it’s finally here. We’ve brought the work of more than 1,600 contributors together to make everything better, faster, cleaner, and more beautiful.&#8221; Riding Rails: Rails 3.0: It&#8217;s ready!]]></description>
			<content:encoded><![CDATA[<blockquote>
  <p>&#8220;Rails 3.0 has been underway for a good two years, so it’s with immense pleasure that we can declare it’s finally here. We’ve brought the work of more than 1,600 contributors together to make everything better, faster, cleaner, and more beautiful.&#8221;</p>
</blockquote>

<p><a href="http://weblog.rubyonrails.org/2010/8/29/rails-3-0-it-s-done">Riding Rails: Rails 3.0: It&#8217;s ready!</a></p>
]]></content:encoded>
			<wfw:commentRss>http://joakimandersson.se/archives/2010/08/31/rails-3-0-its-ready/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>id Software Demos Rage On iPhone</title>
		<link>http://joakimandersson.se/archives/2010/08/13/id-software-demos-rage-on-iphone/</link>
		<comments>http://joakimandersson.se/archives/2010/08/13/id-software-demos-rage-on-iphone/#comments</comments>
		<pubDate>Fri, 13 Aug 2010 06:58:19 +0000</pubDate>
		<dc:creator>Joakim Andersson</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[iphone]]></category>

		<guid isPermaLink="false">http://joakimandersson.se/?p=2971</guid>
		<description><![CDATA[Slashdot Games Story &#124; id Software Demos Rage On iPhone, Releases Source Code For Two Games &#8220;Kotaku has posted their liveblog of the QuakeCon 2010 keynote, with some big announcements by game developer and Slashdot regular John Carmack. Highlights include a video of the id Tech 5 engine (aka Rage) running on the iPhone 4G [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://games.slashdot.org/story/10/08/13/007227/id-Software-Demos-emRageem-On-iPhone-Releases-Source-Code-For-Two-Games?from=rss">Slashdot Games Story | id Software Demos Rage On iPhone, Releases Source Code For Two Games</a></p>

<blockquote>
  <p>&#8220;Kotaku has posted their liveblog of the QuakeCon 2010 keynote, with some big announcements by game developer and Slashdot regular John Carmack. Highlights include a video of the id Tech 5 engine (aka Rage) running on the iPhone 4G at 60fps, with claims that it also runs on the iPhone 3GS.</p>
</blockquote>

<p>Another hilarious quote from John Carmack was</p>

<blockquote>
  <p>&#8220;The game would have been more enjoyable if people could actually see it.&#8221; &#8211; Carmack on Doom 3</p>
</blockquote>

<p>If you are interested <a href="http://kotaku.com/5611429/quakecon-2010-keynote-liveblog-aka-man-i-hope-they-mention-doom-4">read through the liveblog from the QuakeCon 2010 keynote</a>. Carmack sure has some strong opinions sometimes!</p>
]]></content:encoded>
			<wfw:commentRss>http://joakimandersson.se/archives/2010/08/13/id-software-demos-rage-on-iphone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Getting even more annoyed at Maven</title>
		<link>http://joakimandersson.se/archives/2010/08/11/getting-even-more-annoyed-at-maven/</link>
		<comments>http://joakimandersson.se/archives/2010/08/11/getting-even-more-annoyed-at-maven/#comments</comments>
		<pubDate>Wed, 11 Aug 2010 08:27:39 +0000</pubDate>
		<dc:creator>Joakim Andersson</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[maven]]></category>

		<guid isPermaLink="false">http://joakimandersson.se/?p=2965</guid>
		<description><![CDATA[How can it be easier to change the java code I&#8217;m trying to execute as part of the generate goal to create the output directory than to make Maven create the directory for me? I understand that Maven is conceptually totally different compared to Makefiles and Ant but still, I just want to create a [...]]]></description>
			<content:encoded><![CDATA[<p>How can it be easier to change the java code I&#8217;m trying to execute as part of the generate goal to create the output directory than to make Maven create the directory for me?</p>

<p>I understand that Maven is conceptually totally different compared to Makefiles and Ant but still, I just want to create a directory. How hard can it be?</p>

<p>Sometimes Maven is such a pain.</p>
]]></content:encoded>
			<wfw:commentRss>http://joakimandersson.se/archives/2010/08/11/getting-even-more-annoyed-at-maven/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Update: IntelliJ IDEA bug?</title>
		<link>http://joakimandersson.se/archives/2010/03/26/update-intellij-idea-bug/</link>
		<comments>http://joakimandersson.se/archives/2010/03/26/update-intellij-idea-bug/#comments</comments>
		<pubDate>Fri, 26 Mar 2010 09:06:43 +0000</pubDate>
		<dc:creator>Joakim Andersson</dc:creator>
				<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://joakimandersson.se/?p=2841</guid>
		<description><![CDATA[I&#8217;m super impressed with JetBrains! 15 minutes after I wrote the blog post about the IntelliJ IDEA bug I found yesterday which automatically got written to my twitter account as well, Anton Makeev an IntelliJ IDEA Developer replies on twitter that he has created a bug report for the problem. So now it&#8217;s possible to [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m super impressed with <a href="http://www.jetbrains.com/">JetBrains</a>!</p>

<p>15 minutes after I wrote the blog post about the <a href="http://joakimandersson.se/archives/2010/03/26/intellij-idea-bug/">IntelliJ IDEA bug I found</a> yesterday which automatically got written to <a href="http://twitter.com/joakim666">my twitter account</a> as well, <a href="http://twitter.com/amakeev">Anton Makeev</a> an <a href="http://www.jetbrains.com/idea/index.html">IntelliJ IDEA</a> Developer replies on twitter that he has created a bug report for the problem.</p>

<p>So now it&#8217;s possible to track the status of the bug here: <a href="http://youtrack.jetbrains.net/issue/IDEA-53257">http://youtrack.jetbrains.net/issue/IDEA-53257</a></p>
]]></content:encoded>
			<wfw:commentRss>http://joakimandersson.se/archives/2010/03/26/update-intellij-idea-bug/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IntelliJ IDEA bug?</title>
		<link>http://joakimandersson.se/archives/2010/03/26/intellij-idea-bug/</link>
		<comments>http://joakimandersson.se/archives/2010/03/26/intellij-idea-bug/#comments</comments>
		<pubDate>Thu, 25 Mar 2010 22:31:26 +0000</pubDate>
		<dc:creator>Joakim Andersson</dc:creator>
				<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://joakimandersson.se/?p=2839</guid>
		<description><![CDATA[Alternative 1 Alternative 2 Me and javac think the two code snippets above are both valid and pretty much same. Funnily IntelliJ IDEA disagrees. But it&#8217;s OK, I still think it&#8217;s the best Java IDE available.]]></description>
			<content:encoded><![CDATA[<p>Alternative 1</p>

<p><img class="aligncenter" src="http://joakimandersson.se/wp-content/files/2010/03/Screen-shot-2010-03-24-at-18.06.34.png" alt="Screen shot 2010-03-24 at 18.06.34.png" border="0" width="495" height="24" /></p>

<p>Alternative 2</p>

<p><img class="aligncenter" src="http://joakimandersson.se/wp-content/files/2010/03/Screen-shot-2010-03-24-at-18.07.05.png" alt="Screen shot 2010-03-24 at 18.07.05.png" border="0" width="435" height="23" /></p>

<p>Me and javac think the two code snippets above are both valid and pretty much same. Funnily <a href="http://www.jetbrains.com/idea/">IntelliJ IDEA</a> disagrees.</p>

<p>But it&#8217;s OK, I still think it&#8217;s the best Java IDE available.</p>
]]></content:encoded>
			<wfw:commentRss>http://joakimandersson.se/archives/2010/03/26/intellij-idea-bug/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>HotCocoa!</title>
		<link>http://joakimandersson.se/archives/2010/02/04/hotcocoa/</link>
		<comments>http://joakimandersson.se/archives/2010/02/04/hotcocoa/#comments</comments>
		<pubDate>Thu, 04 Feb 2010 21:43:57 +0000</pubDate>
		<dc:creator>Joakim Andersson</dc:creator>
				<category><![CDATA[apple]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://joakimandersson.se/?p=2763</guid>
		<description><![CDATA[The latest MacRuby with HotCocoa is amazing! Finally a way to write OS X applications without having to learn Objective-C. require 'rubygems' require 'hotcocoa' include HotCocoa application do &#124;app&#124; win = window :size =&#62; [100,50] b = button :title =&#62; 'Hello' b.on_action { puts 'World!' } win &#60;&#60; b end]]></description>
			<content:encoded><![CDATA[<p>The latest <a href="http://www.macruby.org/">MacRuby</a> with <a href="http://github.com/richkilmer/hotcocoa">HotCocoa</a> is amazing! Finally a way to write OS X applications without having to learn Objective-C.</p>

<p><pre class="brush: ruby; light: true; title: ;">
require 'rubygems'
require 'hotcocoa'
include HotCocoa
application do |app|
  win = window :size =&gt; [100,50]
  b = button :title =&gt; 'Hello'
  b.on_action { puts 'World!' }
  win &lt;&lt; b
end
</pre></p>
]]></content:encoded>
			<wfw:commentRss>http://joakimandersson.se/archives/2010/02/04/hotcocoa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Facebook&#8217;s HipHop Goes Public With a New PHP Runtime</title>
		<link>http://joakimandersson.se/archives/2010/02/03/facebooks-hiphop-goes-public-with-a-new-php-runtime/</link>
		<comments>http://joakimandersson.se/archives/2010/02/03/facebooks-hiphop-goes-public-with-a-new-php-runtime/#comments</comments>
		<pubDate>Wed, 03 Feb 2010 07:24:14 +0000</pubDate>
		<dc:creator>Joakim Andersson</dc:creator>
				<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://joakimandersson.se/?p=2757</guid>
		<description><![CDATA[&#8220;Facebook said the results of using HipHop have been dramatic. CPU usage on Facebook servers has dropped by an average of 50 percent as the HipHop PHP engine reduced the load on Facebook&#8217;s infrastructure.&#8221; Facebook&#8217;s HipHop Goes Public With a New PHP Runtime — Developer.com The article isn&#8217;t that detailed but from the following quote: [...]]]></description>
			<content:encoded><![CDATA[<blockquote>
  <p>&#8220;Facebook said the results of using HipHop have been dramatic. CPU usage on Facebook servers has dropped by an average of 50 percent as the HipHop PHP engine reduced the load on Facebook&#8217;s infrastructure.&#8221;</p>
</blockquote>

<p><a href="http://www.developer.com/lang/php/article.php/3862461/Facebooks-HipHop-Goes-Public-With-a-New-PHP-Runtime.htm">Facebook&#8217;s HipHop Goes Public With a New PHP Runtime — Developer.com</a></p>

<p>The article isn&#8217;t that detailed but from the following quote:</p>

<blockquote>
  <p>&#8220;This is not an extension to PHP &#8212; this is pretty different,&#8221; Recordon said. &#8220;Right now, the process is once you build and compile HipHop, it comes with a tool that will go through the transformation process and output the binary, and that&#8217;s what you actually use to run it.&#8221;</p>
</blockquote>

<p>And the fact that they&#8217;ve removed Apache and uses an own web server. I start to wonder if what they do is actually take the PHP source code and compile it to get one binary that is both the web server and the application in one.</p>

<p>PHP is an interpreted script language so what normally happens is that PHP takes the source file and reads it line by line as it&#8217;s executing it. If they&#8217;ve bypassed this step completely by pre-compiling the script file into machine code that would explain the reduced CPU usage.</p>
]]></content:encoded>
			<wfw:commentRss>http://joakimandersson.se/archives/2010/02/03/facebooks-hiphop-goes-public-with-a-new-php-runtime/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

