<?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>Stefan Sundin</title>
	<atom:link href="http://stefansundin.com/blog/feed" rel="self" type="application/rss+xml" />
	<link>http://stefansundin.com/blog</link>
	<description>Me and my projects</description>
	<lastBuildDate>Mon, 06 Feb 2012 18:22:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>2011 &#8211; Year in review</title>
		<link>http://stefansundin.com/blog/358</link>
		<comments>http://stefansundin.com/blog/358#comments</comments>
		<pubDate>Tue, 03 Jan 2012 13:20:15 +0000</pubDate>
		<dc:creator>recover</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[me]]></category>

		<guid isPermaLink="false">http://stefansundin.com/blog/?p=358</guid>
		<description><![CDATA[It is now officially 2012. The last year was a very busy year indeed. I thought I would write a short list of what happened. January: I got involved in the Baldos project in school. I put my blood, sweat and tears into this project, which continued until late May. Incredibly fun! I made a [...]]]></description>
			<content:encoded><![CDATA[<p>It is now officially 2012. The last year was a very busy year indeed. I thought I would write a short list of what happened.</p>
<p><strong>January:</strong><br />
I got involved in the <a href="http://11.baldos.se/" target="_blank">Baldos</a> project in school. I put my blood, sweat and tears into this project, which continued until late May. Incredibly fun!<br />
I made <a href="/blog/206">a video tutorial</a> on how to compile my programs.<br />
I also wrote <a href="/blog/193">about a bunch of videos</a> about my programs that I had found on the web.</p>
<p><strong>February:<br />
</strong>I found some time to release <a href="http://code.google.com/p/altdrag/" target="_blank">AltDrag</a> 0.9. That version has since received over 13,000 downloads. All in all, AltDrag has received over 55,000 downloads so far. I think that&#8217;s pretty decent. For reference, <a href="http://code.google.com/p/superf4/" target="_blank">SuperF4</a> has over 110,000 downloads and <a href="http://code.google.com/p/shutdownguard/" target="_blank">ShutdownGuard</a> has over 150,000 downloads.<br />
I wrote a blog post called &#8220;<a href="/blog/277" target="_blank">How to copy YouTube annotations</a>&#8220;. It is currently my most commented blog post ever. It has even brought in some money from a few nice people. Someone is trying to make a business on this idea (autoannotate.com), but somehow I doubt it&#8217;s successful.</p>
<p><strong>March:<br />
</strong>I earned €0,01 on Flattr this month. The service hasn&#8217;t gotten the recognition I hoped for, unfortunately.</p>
<p><strong>April &amp; May:</strong><br />
110% Baldos. I barely had time to sleep and eat. Watch some <a href="http://www.youtube.com/playlist?list=PLFF83A9B8DC9E8309" target="_blank">videos from the race</a>.</p>
<p><strong>June &amp; July:</strong><br />
<del>Spring break.</del> Summer jobs.</p>
<p><strong>August:</strong><br />
After resuming work on it during June and July, I released AltDrag 1.0 beta 1.</p>
<p><strong>September:</strong><br />
School mostly.</p>
<p><strong>October:</strong><br />
I released a new program, <a href="http://code.google.com/p/removable-drive-reminder/" target="_blank">Removable Drive Reminder</a>. I am quite comfortable with the codebase for my programs now, so the program was done in a day!</p>
<p><strong>November &amp; December:</strong><br />
Worked on <a href="http://thejobmap.se/">The Job Map</a> with a class mate, which is a website for a course. It has been a long time since I have done web development on this scale, and it has been great fun learning all the new tools that are out there. I especially enjoyed learning how to do large scale deployment with Google App Engine (&#8220;the cloud&#8221;), learning to code for high-replication databases and learning how to make a RESTful service.</p>
<p><strong>For 2012:</strong><br />
Hopefully AltDrag 1.0 and a lot of other fun stuff.</p>
]]></content:encoded>
			<wfw:commentRss>http://stefansundin.com/blog/358/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Removable Drive Reminder</title>
		<link>http://stefansundin.com/blog/339</link>
		<comments>http://stefansundin.com/blog/339#comments</comments>
		<pubDate>Sun, 02 Oct 2011 22:53:08 +0000</pubDate>
		<dc:creator>recover</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[programs]]></category>

		<guid isPermaLink="false">http://stefansundin.com/blog/?p=339</guid>
		<description><![CDATA[I have just created a new program: Removable Drive Reminder. I required a program like Flash Drive Reminder, but it had to be installable on the system, rather than only on the flash drive. I emailed the author of that program, but he told me that he had lost the source code. So I was [...]]]></description>
			<content:encoded><![CDATA[<p>I have just created a new program: <a href="http://code.google.com/p/removable-drive-reminder/">Removable Drive Reminder</a>. I required a program like <a href="http://www.bgreco.net/reminder.php">Flash Drive Reminder</a>, but it had to be installable on the system, rather than only on the flash drive. I emailed the author of that program, but he told me that he had lost the source code. So I was back to square one. With nothing better to do, I made my own version of his program.</p>
<p>I basically took AltDrag&#8217;s source code, stripped out everything related to AltDrag, copied some code from ShutdownGuard, some code from TrayCD, and mashed it all together into Removable Drive Reminder. And all in one day!</p>
<p>In other news, AltDrag 1.0 beta was released about two months ago. I&#8217;m pretty slow at completing 1.0, but hopefully soon that will be released. I am really looking forward to it though, AltDrag 1.0 will be my finest release so far.</p>
<p>I have also planned some more blog posts, but I haven&#8217;t taken the time to complete them. There will be time for that later.</p>
]]></content:encoded>
			<wfw:commentRss>http://stefansundin.com/blog/339/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Baldos</title>
		<link>http://stefansundin.com/blog/328</link>
		<comments>http://stefansundin.com/blog/328#comments</comments>
		<pubDate>Sun, 15 May 2011 15:06:26 +0000</pubDate>
		<dc:creator>recover</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[projects]]></category>

		<guid isPermaLink="false">http://stefansundin.com/blog/?p=328</guid>
		<description><![CDATA[In one week I will go to Germany and compete in the Shell Eco Marathon with the rest of Team Baldos. We will soon launch Baldos Live, a website which will give people the opportunity to follow us live in the competition. The competition dates are the 26th throughout the 28th. Be sure to tune [...]]]></description>
			<content:encoded><![CDATA[<p>In one week I will go to Germany and compete in the Shell Eco Marathon with the rest of <a href="http://11.baldos.se/">Team Baldos</a>. We will soon launch <a href="http://live.baldos.se/">Baldos Live</a>, a website which will give people the opportunity to follow us live in the competition. The competition dates are the 26th throughout the 28th. Be sure to tune in!</p>
<p><strong>Edit:</strong> Some videos from the race are now available <a href="http://www.youtube.com/BaldosLTU" target="_blank">on our new YouTube channel</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://stefansundin.com/blog/328/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Feature creeps</title>
		<link>http://stefansundin.com/blog/307</link>
		<comments>http://stefansundin.com/blog/307#comments</comments>
		<pubDate>Sun, 27 Mar 2011 12:56:03 +0000</pubDate>
		<dc:creator>recover</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[projects]]></category>

		<guid isPermaLink="false">http://stefansundin.com/blog/?p=307</guid>
		<description><![CDATA[Every time someone tries to get me to add some feature to AltDrag that doesn&#8217;t really fit the goals of the program, I show them this: The picture really explains the situation well. A small and handy program only stays small and handy until it gets too big. So don&#8217;t let the feature creeps get [...]]]></description>
			<content:encoded><![CDATA[<p>Every time someone tries to get me to add some feature to AltDrag that doesn&#8217;t really fit the goals of the program, I show them this:</p>
<div id="attachment_310" class="wp-caption aligncenter" style="width: 472px"><a href="http://stefansundin.com/blog/wp-content/uploads/2011/03/swiss-knife.jpg"><img class="size-full wp-image-310   " title="Giant Swiss Army Knife" src="http://stefansundin.com/blog/wp-content/uploads/2011/03/swiss-knife.jpg" alt="" width="462" height="343" /></a><p class="wp-caption-text">I don&#39;t want AltDrag to become this.</p></div>
<p style="text-align: left;">The picture really explains the situation well. A small and handy program only stays small and handy until it gets too big.</p>
<p style="text-align: left;">So don&#8217;t let the feature creeps get to you. It might be tempting at first but it never pays off. You might get liked by the feature creeps, but you risk alienating your other users. Add features in small increments as it suits you.</p>
]]></content:encoded>
			<wfw:commentRss>http://stefansundin.com/blog/307/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I forgot to mention&#8230;</title>
		<link>http://stefansundin.com/blog/296</link>
		<comments>http://stefansundin.com/blog/296#comments</comments>
		<pubDate>Tue, 22 Mar 2011 19:26:24 +0000</pubDate>
		<dc:creator>recover</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[me]]></category>

		<guid isPermaLink="false">http://stefansundin.com/blog/?p=296</guid>
		<description><![CDATA[I have mostly written about my projects on this blog so far, and not so much about myself. Let&#8217;s fix that. A little more than one year ago I wrote that I had made my first circuit board. I&#8217;m not quite sure how it happened, but I am now the chairman of XP-el, the organization [...]]]></description>
			<content:encoded><![CDATA[<p>I have mostly written about my projects on this blog so far, and not so much about myself. Let&#8217;s fix that.</p>
<p>A little more than one year ago <a href="http://stefansundin.com/blog/101">I wrote</a> that I had made my first circuit board. I&#8217;m not quite sure how it happened, but I am now the chairman of XP-el, the organization that arranged the course last year. I held this year&#8217;s circuit board course just a few weeks ago. You can read more about XP-el <a href="http://www.datasektionen.com/xp-el/">on its website</a>. As chairman of XP-el, I am also in the board for <a href="http://www.datasektionen.com/">Datasektionen</a>, a students&#8217; union at LTU.</p>
<p>I am also a member of Teknologkåren&#8217;s council. <a href="http://teknologkaren.se/">Teknologkåren</a> is the student union at the highest level, and the one with the most influence here at the university. We are about 35 students that get to vote on what the union should do, and I am one of the members that is representing Datasektionen.</p>
<p>I have also helped Teknologkåren build a website called <a href="http://kurswiki.se/">Kurswiki</a> (<em>course wiki</em>). It is a wiki where the students at LTU can review their courses and look up information about courses they want to take in the future. In short: course reviews; by the students, for the students. I have helped by programming everything on the site since it was conceived in 2008.</p>
<p>In school, we are currently having a project course that has been ongoing since the start of 2011, and it will continue this whole semester. In it, we are a group working on building a highly fuel efficient car that will compete in the annual <a href="http://www.shell.com/home/content/ecomarathon/europe/">Shell Eco Marathon</a> this May. The car is called Skilži and you can read more about it and Team Baldos over at <a href="http://11.baldos.se/">baldos.se</a>. Within Team Baldos, we are a smaller group of four students that are working on the electronics and software of the car. You can read our little blog <a href="http://baldos-kod.blogspot.com/">here</a> (it&#8217;s in swedish). I&#8217;ve just finished redesigning the car&#8217;s ignition module and we will soon see if it works. <img src='http://stefansundin.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p>Besides from the project course, I have just finished a course called Electronics II. Had the finals today, actually, and I think it went pretty well. Since I am in the third year of my university education, I have (finally) been able to choose some of the courses that I want to take, so I have picked a few courses about electronics. It&#8217;s pretty fun for a change, since the programming courses that I&#8217;ve had so far haven&#8217;t been that challenging because I do a lot of that in my free time already.</p>
<p>I think that&#8217;s most things that is worth mentioning at the moment.</p>
]]></content:encoded>
			<wfw:commentRss>http://stefansundin.com/blog/296/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Your preliminary flattr revenue</title>
		<link>http://stefansundin.com/blog/283</link>
		<comments>http://stefansundin.com/blog/283#comments</comments>
		<pubDate>Tue, 01 Mar 2011 21:35:31 +0000</pubDate>
		<dc:creator>recover</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[flattr]]></category>
		<category><![CDATA[projects]]></category>

		<guid isPermaLink="false">http://stefansundin.com/blog/?p=283</guid>
		<description><![CDATA[€0,01. Well, this is promising.]]></description>
			<content:encoded><![CDATA[<p>€0,01. Well, this is promising.</p>
]]></content:encoded>
			<wfw:commentRss>http://stefansundin.com/blog/283/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How to copy YouTube annotations</title>
		<link>http://stefansundin.com/blog/277</link>
		<comments>http://stefansundin.com/blog/277#comments</comments>
		<pubDate>Mon, 21 Feb 2011 22:32:59 +0000</pubDate>
		<dc:creator>recover</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[hacks]]></category>

		<guid isPermaLink="false">http://stefansundin.com/blog/?p=277</guid>
		<description><![CDATA[TL;DR: Use this website. Hello. This weekend I had the need to copy YouTube annotations from one video to several other videos. After a lot of ideas that did not work I finally found a solution that worked quite beautifully. Eureka! You first download the annotations in an XML format that YouTube uses internally. The [...]]]></description>
			<content:encoded><![CDATA[<p><strong>TL;DR</strong>: <a href="http://stefansundin.com/stuff/youtube/youtube-copy-annotations.html">Use this website</a>.</p>
<p>Hello.</p>
<p>This weekend I had the need to copy YouTube annotations from one video to several other videos. After a lot of ideas that did not work I finally found a solution that worked quite beautifully. Eureka!</p>
<p>You first download the annotations in an XML format that YouTube uses internally. The url goes something like this: <tt>http://www.google.com/reviews/y/read2?video_id=<strong>X</strong>&amp;username=<strong>Y</strong>&amp;auth_token=<strong>Z</strong>&amp;owner=1&amp;timestamp=&amp;draft=1</tt>. You can get the <tt>auth_token</tt> by looking at the source of the &#8220;edit annotations&#8221; page.</p>
<p>Now that you have liberated your annotations data, you have to upload it to your other video. First get the <tt>auth_token</tt> of your destination video. You now have to edit your XML to fit a new format that is used when submitting new annotation data. First update the <tt>video_id</tt> value in the <tt>requestHeader</tt> tag. Then add this tag just below the <tt>requestHeader</tt> tag: <tt>&lt;authenticationHeader timestamp="" owner="1" auth_token="<strong>Z</strong>" username="<strong>Y</strong>" /&gt;</tt>. Then rename the <tt>annotations</tt> tag to <tt>updatedItems</tt>. The XML file should now be ready for submission.</p>
<p>Now upload the new XML file as POST data to this url: <tt>http://www.google.com/reviews/y/update2</tt>. Make sure you are logged into the account that owns the destination video. Now voila! The new annotations have been saved as a draft. Just go to the &#8220;edit annotations&#8221; page and press Publish!</p>
<p><strong>Okay, the above sounds very complicated, but I have of course made <a href="http://stefansundin.com/stuff/youtube/youtube-copy-annotations.html">a website with client-side JavaScript</a> which makes it very easy.</strong> You can use it to to copy the annotations to several videos at once very quickly.</p>
<p>Take a moment to think about the importance of having control over your own data. Google is thinking about this if you <a href="http://www.dataliberation.org/google/youtube-1">look at their Data Liberation site</a>. But annotations data is something they haven&#8217;t gotten around to yet.</p>
<p>Anyway&#8230; there you go. Happy copying!</p>
<p>Be sure to leave a kind comment if this helped you. <img src='http://stefansundin.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><strong>Edit:</strong> The urls have changed in a recent update. The latest code is on <a href="http://stefansundin.com/stuff/youtube/youtube-copy-annotations.html">the script page</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://stefansundin.com/blog/277/feed</wfw:commentRss>
		<slash:comments>56</slash:comments>
		</item>
		<item>
		<title>How to compile my programs</title>
		<link>http://stefansundin.com/blog/206</link>
		<comments>http://stefansundin.com/blog/206#comments</comments>
		<pubDate>Mon, 10 Jan 2011 20:34:43 +0000</pubDate>
		<dc:creator>recover</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[programs]]></category>

		<guid isPermaLink="false">http://stefansundin.com/blog/?p=206</guid>
		<description><![CDATA[Hello. Time for one more video. This time it&#8217;s me explaining how to compile SuperF4. The instructions in the video works just as well with any other of my programs. I hope this will result in more contributions coming in and more people getting involved. This is the first screencast that I&#8217;ve ever done. I&#8217;m [...]]]></description>
			<content:encoded><![CDATA[<p>Hello. Time for one more video.</p>
<p>This time it&#8217;s me explaining how to compile SuperF4. The instructions in the video works just as well with any other of my programs.</p>
<iframe width="560" height="345" src="http://www.youtube.com/embed/4ENwQxSr_So?rel=0" frameborder="0" type="text/html"></iframe>
<p>I hope this will result in more contributions coming in and more people getting involved.</p>
<p>This is the first screencast that I&#8217;ve ever done. I&#8217;m pretty pleased with the result.</p>
<p>Like the wallpaper? <a href="http://stefansundin.com/stuff/myapps-wallpaper/">You can get it here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://stefansundin.com/blog/206/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Videos!!</title>
		<link>http://stefansundin.com/blog/193</link>
		<comments>http://stefansundin.com/blog/193#comments</comments>
		<pubDate>Fri, 07 Jan 2011 15:44:00 +0000</pubDate>
		<dc:creator>recover</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://stefansundin.com/blog/?p=193</guid>
		<description><![CDATA[It&#8217;s always nice to see when people likes your program. It gives you that warm feeling that you are doing something that people appreciate. In this post, I will show some videos that also have given me that feeling. First of all, there&#8217;s that review of SuperF4 from Tekzilla. I hope everyone have watched it, [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s always nice to see when people likes your program. It gives you that warm feeling that you are doing something that people appreciate. In this post, I will show some videos that also have given me that feeling.</p>
<p>First of all, there&#8217;s that review of SuperF4 from Tekzilla. I hope everyone have watched it, but here it is anyway:</p>
<iframe width="560" height="345" src="http://www.youtube.com/embed/LLtxSkoWKfc?rel=0" frameborder="0" type="text/html"></iframe>
<p>It was really great to see that video for the first time. I had felt for quite some time that my programs were useful and really did something great, and this was real confirmation. The only thing about this video is that it took two weeks for me to get notice of it. It was a user who emailed me and told me about it. It would have been nice if the Tekzilla staff had sent me an email, but I guess they are too busy. Also, even though she mentions SuperF4 in the video several times, the text &#8216;SuperF4&#8242; never appears in the video description or in the tags, which obviously isn&#8217;t good.</p>
<p>A month or so ago, I randomly searched for AltDrag on YouTube. Guess what I found? Two videos of AltDrag that I had never seen before.</p>
<iframe width="560" height="345" src="http://www.youtube.com/embed/22OaiP_HPXY?rel=0" frameborder="0" type="text/html"></iframe>
<p>The first video is a simple demonstration of AltDrag, set to some background music. Quite nice and explains how AltDrag works in a simple way.</p>
<iframe width="560" height="345" src="http://www.youtube.com/embed/nQf96F3_1dI?rel=0" frameborder="0" type="text/html"></iframe>
<p>The second video also demonstrates AltDrag. The cool thing here is that it is in Chinese. <img src='http://stefansundin.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  The video belongs to <a href="http://www.randgad.com/2010/10/gad-altdrag.html">this site</a>, a Chinese tech blog.</p>
<p>Anyway, my point with this blog post is that I really appreciate these contributions. The only complaint I have is that I have trouble finding these videos. If you know of a video or any other media where a program of mine has been featured, please let me know!</p>
<p><strong>P.S.</strong> While writing this blog post, I found four videos demonstrating ShutdownGuard: <a href="http://www.youtube.com/watch?v=Ubgs8oMrduQ" target="_blank">#1</a>, <a href="http://www.youtube.com/watch?v=prKq5zYDi1M" target="_blank">#2</a>, <a href="http://www.youtube.com/watch?v=EIyR4emDNUs" target="_blank">#3</a>, <a href="http://www.youtube.com/watch?v=VhKADfOUCus" target="_blank">#4</a>. Not bad. <img src='http://stefansundin.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://stefansundin.com/blog/193/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Server down</title>
		<link>http://stefansundin.com/blog/213</link>
		<comments>http://stefansundin.com/blog/213#comments</comments>
		<pubDate>Wed, 05 Jan 2011 18:22:23 +0000</pubDate>
		<dc:creator>recover</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://stefansundin.com/blog/?p=213</guid>
		<description><![CDATA[My server was down the last few days. This was because the cooling system broke down at Ludd where I now host my server. I&#8217;m sorry about this, but these things can happen. The next time this happens I will try to have a backup server ready to take over. As for other news, I [...]]]></description>
			<content:encoded><![CDATA[<p>My server was down the last few days. This was because the cooling system broke down at Ludd where I now host my server. I&#8217;m sorry about this, but these things can happen.</p>
<p>The next time this happens I will try to have a backup server ready to take over.</p>
<p>As for other news, I have re-uploaded some missing files and re-enabled the <a href="http://stefansundin.com/speedruns/submit.php">speedruns submissions</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://stefansundin.com/blog/213/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

