<?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>dolejsky.com &#187; Bits and pieces</title>
	<atom:link href="http://www.dolejsky.com/category/uncategorized/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.dolejsky.com</link>
	<description>Things good to know...</description>
	<lastBuildDate>Sat, 01 Jan 2011 12:12:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>Western Digital HDD spin down problem in Mac OS 10.6</title>
		<link>http://www.dolejsky.com/2011/01/01/western-digital-hdd-spin-down-problem-in-mac-os-10-6/</link>
		<comments>http://www.dolejsky.com/2011/01/01/western-digital-hdd-spin-down-problem-in-mac-os-10-6/#comments</comments>
		<pubDate>Sat, 01 Jan 2011 12:11:54 +0000</pubDate>
		<dc:creator>ludek</dc:creator>
				<category><![CDATA[Bits and pieces]]></category>

		<guid isPermaLink="false">http://www.dolejsky.com/?p=488</guid>
		<description><![CDATA[I've bought brand new Western Digital Scorpio Blue 750 GB SATA HDD for my MacBook laptop (as my secondary hard drive). It's currently the maximum capacity you can get for standard height (9 mm), the 1000 GB model is taller and wouldn't fit into my OptiBay which I use instead of CD drive. There is [...]]]></description>
			<content:encoded><![CDATA[<p>I've bought brand new Western Digital Scorpio Blue 750 GB SATA HDD for my MacBook laptop (as my secondary hard drive). It's currently the maximum capacity you can get for standard height (9 mm), the 1000 GB model is taller and wouldn't fit into my <a href="http://www.mcetech.com/optibay/">OptiBay</a> which I use instead of CD drive.</p>
<p>
There is one annoying issue with this drive in Mac OS and that is its aggressive power management which spin downs the drive immediately after last application stops accessing it. Not only causes this clicking sound every few seconds and excessive wear (spin up/down cycle count is limited), but also performance is really crappy, as application accessing the drive after spin down has to wait for drive to spin up again.<br />
<span id="more-488"></span></p>
<p>
To deal with this problem, you have to set APM value of the drive to higher value (as described <a href="http://community.wdc.com/t5/Other-Externals/WD-Elements-SE-2-5-quot-1Tb-Change-Spin-down-Time/td-p/66620/page/2">here</a>):</p>
<table>
<tr>
<td>0</td>
<td>Reserved</td>
</tr>
<tr>
<td>1</td>
<td>Minimum power consumption with Standby</td>
</tr>
<tr>
<td>2 - 127</td>
<td>Intermediate power management levels with Standby</td>
</tr>
<tr>
<td>128</td>
<td>Minimum power consumption without Standby</td>
</tr>
<tr>
<td>129 - 253</td>
<td>Intermediate power management levels without Standby</td>
</tr>
<tr>
<td>254</td>
<td>Maximum performance</td>
</tr>
<tr>
<td>255</td>
<td>Reserved</td>
</tr>
</table>
<p>To observe <em>Load_Cycle_Count</em> and <em>Start_Stop_Count</em> parameters of the drive, I've used <a href="http://sixtyfive.xmghosting.com/products/smartctl/">smartctl</a>:</p>
<pre>./smartctl disk1 -a | grep -e "Load_Cycle_Count" -e "Start_Stop_Count"</pre>
<p>To set APM value, I've used <a href="http://mckinlay.net.nz/hdapm/">hdapm</a>:</p>
<pre>./hdapm disk1 128
disk1: WDC WD7500BPVT-22HXZT1
Setting APM level to 0x80: Success</pre>
<p>After experimenting a little bit I found the following:</p>
<ul>
<lI>value <strong>254</strong> seems to mean no head parking (<em>Load_Cycle_Count</em> doesn't increase) and no spin down at all (<em>Start_Stop_Count</em> doesn't increase when MacBook is up and running)</li>
<li>Value <strong>128 (possibly 128 - 253)</strong> seems to  allow head parking approx. 2.5 secs after last disk access (<em>Load_Cycle_Count</em> increases and click can be heard) but no spin down is allowed. Drive still seems to slow down a little bit after some time, but it doesn't seem to do a complete start/stop cycle as Start_Stop_Count doesn't increase</li>
<li>Value <strong>127</strong> seems to allow  heads to be parked quite often and spin down is allowed - drive seems to wait approx. 25 seconds after last access before complete spin down)</li>
</ul>
<p>Now, the decision between 128 (don't allow spin down) and 127 (allow spin down) is up to everyone's preferences. Googling a bit revealed that modern laptop drives can do somewhere about 600,000 load cycles and 50,000 start/stop cycles.</p>
<p>
To make sure APM value is set after every reboot, you can place hdapm.plist under /Library/LaunchAgents as described in documentation. I'm using the following script:</p>
<div class="igBar"><span id="lxml-2"><a href="#" onclick="javascript:showPlainTxt('xml-2'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">XML:</span>
<div id="xml-2">
<div class="xml">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;</span>?xml <span style="color: #000066;">version</span>=<span style="color: #ff0000;">"1.0"</span> <span style="color: #000066;">encoding</span>=<span style="color: #ff0000;">"UTF-8"</span>?<span style="font-weight: bold; color: black;">&gt;</span></span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <span style="color: #00bbdd;">&lt;!DOCTYPE plist PUBLIC </div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&quot;-//Apple Computer//DTD PLIST 1.0//EN&quot; &quot;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; &nbsp; &nbsp; http://www.apple.com/DTDs/PropertyList-1.0.dtd&quot;&gt;</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;plist</span> <span style="color: #000066;">version</span>=<span style="color: #ff0000;">"1.0"</span><span style="font-weight: bold; color: black;">&gt;</span></span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;dict<span style="font-weight: bold; color: black;">&gt;</span></span></span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;key<span style="font-weight: bold; color: black;">&gt;</span></span></span>Label<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/key<span style="font-weight: bold; color: black;">&gt;</span></span></span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;string<span style="font-weight: bold; color: black;">&gt;</span></span></span>hdapm<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/string<span style="font-weight: bold; color: black;">&gt;</span></span></span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;key<span style="font-weight: bold; color: black;">&gt;</span></span></span>ProgramArguments<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/key<span style="font-weight: bold; color: black;">&gt;</span></span></span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;array<span style="font-weight: bold; color: black;">&gt;</span></span></span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;string<span style="font-weight: bold; color: black;">&gt;</span></span></span>/usr/bin/hdapm<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/string<span style="font-weight: bold; color: black;">&gt;</span></span></span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;string<span style="font-weight: bold; color: black;">&gt;</span></span></span>disk1<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/string<span style="font-weight: bold; color: black;">&gt;</span></span></span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;string<span style="font-weight: bold; color: black;">&gt;</span></span></span>128<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/string<span style="font-weight: bold; color: black;">&gt;</span></span></span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/array<span style="font-weight: bold; color: black;">&gt;</span></span></span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;key<span style="font-weight: bold; color: black;">&gt;</span></span></span>RunAtLoad<span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/key<span style="font-weight: bold; color: black;">&gt;</span></span></span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;true</span><span style="font-weight: bold; color: black;">/&gt;</span></span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/dict<span style="font-weight: bold; color: black;">&gt;</span></span></span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <span style="color: #009900;"><span style="font-weight: bold; color: black;">&lt;/plist<span style="font-weight: bold; color: black;">&gt;</span></span></span> </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dolejsky.com/2011/01/01/western-digital-hdd-spin-down-problem-in-mac-os-10-6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iOpravna &amp; Apple rulez!</title>
		<link>http://www.dolejsky.com/2010/06/16/iopravna-apple-rulez/</link>
		<comments>http://www.dolejsky.com/2010/06/16/iopravna-apple-rulez/#comments</comments>
		<pubDate>Wed, 16 Jun 2010 06:00:35 +0000</pubDate>
		<dc:creator>ludek</dc:creator>
				<category><![CDATA[Bits and pieces]]></category>

		<guid isPermaLink="false">http://www.dolejsky.com/?p=475</guid>
		<description><![CDATA[After 1.5 years my Macbook battery capacity dropped suddenly (only after about 130 cycles). I've contacted iOpravna.cz to ask whether it would be possible to get the battery replaced under my 3 year NBD warranty and they've sent technician to test the battery (at my place). Result is positive: I've got new battery (for free) [...]]]></description>
			<content:encoded><![CDATA[<p>After 1.5 years my Macbook battery capacity dropped suddenly (only after about 130 cycles). I've contacted <a href='http://www.iopravna.cz/'>iOpravna.cz</a> to ask whether it would be possible to get the battery replaced under my 3 year NBD warranty and they've sent technician to test the battery (at my place).</p>
<p>
Result is positive: I've got new battery (for free) that allows me to work 4 hours again!</p>
<p>
Good job!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dolejsky.com/2010/06/16/iopravna-apple-rulez/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java &#8211; print stack trace to a String</title>
		<link>http://www.dolejsky.com/2010/02/25/java-print-stack-trace-to-a-string/</link>
		<comments>http://www.dolejsky.com/2010/02/25/java-print-stack-trace-to-a-string/#comments</comments>
		<pubDate>Thu, 25 Feb 2010 18:54:10 +0000</pubDate>
		<dc:creator>ludek</dc:creator>
				<category><![CDATA[Bits and pieces]]></category>
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://www.dolejsky.com/?p=471</guid>
		<description><![CDATA[Simple and quick one today - what if we need to print stack trace into a String? PLAIN TEXT JAVA: ... catch &#40;Exception e&#41; &#123; &#160; &#160; StringWriter sw = new StringWriter&#40;&#41;; &#160; &#160; PrintWriter pw = new PrintWriter&#40;sw&#41;; &#160; &#160; e.printStackTrace&#40;pw&#41;; &#160; &#160; pw.flush&#40;&#41;; &#160; &#160; &#160; String stackTraceString = sw.toString&#40;&#41;; &#160; &#160; //use [...]]]></description>
			<content:encoded><![CDATA[<p>Simple and quick one today - what if we need to print stack trace into a String?</p>
<div class="igBar"><span id="ljava-4"><a href="#" onclick="javascript:showPlainTxt('java-4'); return false;">PLAIN TEXT</a></span></div>
<div class="syntax_hilite"><span class="langName">JAVA:</span>
<div id="java-4">
<div class="java">
<ol>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">...</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #000000; font-weight: bold;">catch</span> <span style="color: #66cc66;">&#40;</span><a href="http://www.google.com/search?q=allinurl%3AException+java.sun.com&amp;bntl=1"><span style="color: #aaaadd; font-weight: bold;">Exception</span></a> e<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <a href="http://www.google.com/search?q=allinurl%3AStringWriter+java.sun.com&amp;bntl=1"><span style="color: #aaaadd; font-weight: bold;">StringWriter</span></a> sw = <span style="color: #000000; font-weight: bold;">new</span> <a href="http://www.google.com/search?q=allinurl%3AStringWriter+java.sun.com&amp;bntl=1"><span style="color: #aaaadd; font-weight: bold;">StringWriter</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <a href="http://www.google.com/search?q=allinurl%3APrintWriter+java.sun.com&amp;bntl=1"><span style="color: #aaaadd; font-weight: bold;">PrintWriter</span></a> pw = <span style="color: #000000; font-weight: bold;">new</span> <a href="http://www.google.com/search?q=allinurl%3APrintWriter+java.sun.com&amp;bntl=1"><span style="color: #aaaadd; font-weight: bold;">PrintWriter</span></a><span style="color: #66cc66;">&#40;</span>sw<span style="color: #66cc66;">&#41;</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; e.<span style="color: #006600;">printStackTrace</span><span style="color: #66cc66;">&#40;</span>pw<span style="color: #66cc66;">&#41;</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; pw.<span style="color: #006600;">flush</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span style="color: #aaaadd; font-weight: bold;">String</span></a> stackTraceString = sw.<span style="color: #006600;">toString</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;</div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">&nbsp; &nbsp; <span style="color: #808080; font-style: italic;">//use the stackTraceString as you need...</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;"><span style="color: #66cc66;">&#125;</span></div>
</li>
<li style="font-family: 'Courier New', Courier, monospace; color: black; font-weight: normal; font-style: normal;color:#3A6A8B; font-weight:bold;">
<div style="font-family: 'Courier New', Courier, monospace; font-weight: normal;">... </div>
</li>
</ol>
</div>
</div>
</div>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dolejsky.com/2010/02/25/java-print-stack-trace-to-a-string/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Remote Mic now supports both Mac OS and MS Windows!</title>
		<link>http://www.dolejsky.com/2009/11/19/remote-mic-now-supports-both-mac-os-and-ms-windows/</link>
		<comments>http://www.dolejsky.com/2009/11/19/remote-mic-now-supports-both-mac-os-and-ms-windows/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 12:00:07 +0000</pubDate>
		<dc:creator>ludek</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Bits and pieces]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[objective c]]></category>

		<guid isPermaLink="false">http://www.dolejsky.com/?p=414</guid>
		<description><![CDATA[Remote Mix is application that turns your iPhone into a wireless microphone (or a bug). Today, Remote Mic Console 1.3 has been released for both Mac OS 1.5.x and MS Windows XP. More information here]]></description>
			<content:encoded><![CDATA[<p>Remote Mix is application that turns your iPhone into a wireless microphone (or a bug).</p>
<p><center><a href="http://www.itunes.com/app/remotemic"><img src="http://www.dolejsky.com/img/iphone/remote-mic/Icon-alpha.png" alt="Remote Mic for iPhone" /></a></center></p>
<p>Today, Remote Mic Console 1.3 has been released for both Mac OS 1.5.x and MS Windows XP.</p>
<p>More information <a href='http://www.dolejsky.com/remote-mic'>here</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dolejsky.com/2009/11/19/remote-mic-now-supports-both-mac-os-and-ms-windows/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GrowlTunes patch accepted</title>
		<link>http://www.dolejsky.com/2009/11/10/growltunes-patch-accepted/</link>
		<comments>http://www.dolejsky.com/2009/11/10/growltunes-patch-accepted/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 11:08:40 +0000</pubDate>
		<dc:creator>ludek</dc:creator>
				<category><![CDATA[Bits and pieces]]></category>
		<category><![CDATA[objective c]]></category>

		<guid isPermaLink="false">http://www.dolejsky.com/?p=380</guid>
		<description><![CDATA[My small GrowlTunes patch (described here) made its way into official release of Growl 1.1.5: I am happy to have contributed to such a great piece of an open source software.]]></description>
			<content:encoded><![CDATA[<p>My small GrowlTunes patch (described <a href='http://www.dolejsky.com/2009/02/19/growltunes-patch/'>here</a>) made its way into official release of Growl 1.1.5:</p>
<p><img src='http://www.dolejsky.com/img/GrowlTunesPatch/growltunes-patch-v-hist-1.1.5.png' /></p>
<p>I am happy to have contributed to such a great piece of an open source software.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dolejsky.com/2009/11/10/growltunes-patch-accepted/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GrowlTunes 1.1.4 patch</title>
		<link>http://www.dolejsky.com/2009/02/19/growltunes-patch/</link>
		<comments>http://www.dolejsky.com/2009/02/19/growltunes-patch/#comments</comments>
		<pubDate>Thu, 19 Feb 2009 10:31:15 +0000</pubDate>
		<dc:creator>ludek</dc:creator>
				<category><![CDATA[Bits and pieces]]></category>
		<category><![CDATA[objective c]]></category>
		<category><![CDATA[Growl]]></category>
		<category><![CDATA[iTunes]]></category>

		<guid isPermaLink="false">http://www.dolejsky.com/?p=225</guid>
		<description><![CDATA[I use and love Growl! and especially the GrowlTunes plugin which shows you track info when iTunes song changes. What really annoys me, though - when listening to radio stream, it shows "(null)." instead of track number and there is also only radio name, not song name in the recently played songs menu. I created [...]]]></description>
			<content:encoded><![CDATA[<p>I use and love Growl! and especially the GrowlTunes plugin which shows you track info when iTunes song changes. </p>
<p>What really annoys me, though - when listening to radio stream, it shows "(null)." instead of track number and there is also only radio name, not song name in the recently played songs menu.</p>
<p>I created small <a href="http://www.dolejsky.com/files/growlTunes-1.1.4.patch">patch</a>. Or <a href="http://www.dolejsky.com/files/GrowlTunes-1.1.4-patched.binary.zip">download patched binary</a>. Simply unpack and put into your Applications folder (replacing original GrowlTunes if present).</p>
<p>This is how it looked before:<br />
<img width="200" src="http://www.dolejsky.com/img/GrowlTunesPatch/GrowlTunes-before-patch1.png" alt="GrowlTunes Before patch" /><img width="200" src="http://www.dolejsky.com/img/GrowlTunesPatch/GrowlTunes-before-patch2.png" alt="GrowlTunes Before patch 2" /></p>
<p>And this is how it looks like after patch:<br />
<img width="200" src="http://www.dolejsky.com/img/GrowlTunesPatch/GrowlTunes-after-patch1.png" alt="GrowlTunes After patch" /><img width="200" src="http://www.dolejsky.com/img/GrowlTunesPatch/GrowlTunes-after-patch2.png" alt="GrowlTunes After patch 2" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dolejsky.com/2009/02/19/growltunes-patch/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Quick &#8216;n&#8217; dirty &#8211; manipulate GIF in Java</title>
		<link>http://www.dolejsky.com/2008/03/11/quick-n-dirty-manipulate-gif-in-java/</link>
		<comments>http://www.dolejsky.com/2008/03/11/quick-n-dirty-manipulate-gif-in-java/#comments</comments>
		<pubDate>Tue, 11 Mar 2008 21:35:55 +0000</pubDate>
		<dc:creator>ludek</dc:creator>
				<category><![CDATA[Bits and pieces]]></category>
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://www.dolejsky.com/2008/03/11/quick-n-dirty-manipulate-gif-in-java/</guid>
		<description><![CDATA[I needed to directly modify pixel values of several images in a special way. First, I looked into Gimp's Script-Fu functionality, but this seemed too complicated for what I needed so I decided to write such one-off utility in Java. It simply reads all GIF images in specified directory, does some custom transformation of pixels, [...]]]></description>
			<content:encoded><![CDATA[<p>I needed to directly modify pixel values of several images in a special way. First, I looked into <a href="http://www.gimp.org">Gimp's</a> Script-Fu functionality, but this seemed too complicated for what I needed so I decided to write such one-off utility in Java.</p>
<p>It simply reads all GIF images in specified directory, does some custom transformation of pixels, and then writes images back onto disk. It is really quick'n'dirty so be warned <img src='http://www.dolejsky.com/ludek/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Source code: <a href="http://www.dolejsky.com/files/ImageManipulation.java">ImageManipulation.java</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dolejsky.com/2008/03/11/quick-n-dirty-manipulate-gif-in-java/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tweaking XOM parser &#8211; element position support</title>
		<link>http://www.dolejsky.com/2008/01/22/tweaking-xom-parser-element-position-support/</link>
		<comments>http://www.dolejsky.com/2008/01/22/tweaking-xom-parser-element-position-support/#comments</comments>
		<pubDate>Tue, 22 Jan 2008 09:49:50 +0000</pubDate>
		<dc:creator>ludek</dc:creator>
				<category><![CDATA[Bits and pieces]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://www.dolejsky.com/2008/01/22/tweaking-xom-parser-element-position-support/</guid>
		<description><![CDATA[XOM parser is a great piece of code. I was missing just one feature - to be able to get position of element in source file (line and column). So I did a quick and dirty hack resulting in two new nu.xom.Element methods: getLineNumber() and getColumnNumber(). Works nice when used in conjunction with org.apache.xerces.parsers.SAXParser (but [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.xom.nu/">XOM parser</a> is a great piece of code. I was missing just one feature - to be able to get position of element in source file (line and column). So I did a quick and dirty hack resulting in two new <strong>nu.xom.Element</strong> methods: <strong>getLineNumber()</strong> and <strong>getColumnNumber()</strong>. </p>
<p><span id="more-18"></span></p>
<p>Works nice when used in conjunction with <strong>org.apache.xerces.parsers.SAXParser</strong> (but wasn't tested with anything else so take care...). </p>
<p>If you're interested, download the original <a href="http://www.cafeconleche.org/XOM/xom-1.1.zip">xom-1.1.zip</a> file, unpack and unpack all files from my <a href="http://www.dolejsky.com/files/xom-1.1.position.patch.zip">xom-1.1.position.patch.zip</a> over original ones.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dolejsky.com/2008/01/22/tweaking-xom-parser-element-position-support/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Serious new Google Analytics security problem</title>
		<link>http://www.dolejsky.com/2007/05/17/serious-google-analytics-security-problem/</link>
		<comments>http://www.dolejsky.com/2007/05/17/serious-google-analytics-security-problem/#comments</comments>
		<pubDate>Thu, 17 May 2007 22:14:33 +0000</pubDate>
		<dc:creator>ludek</dc:creator>
				<category><![CDATA[Bits and pieces]]></category>

		<guid isPermaLink="false">http://www.dolejsky.com/2007/05/17/serious-google-analytics-security-problem/</guid>
		<description><![CDATA[I ran into a really disturbing security incident in the new Google Analytics interface today. A friend of mine was making me able to see the stats of upcoming accommodation website www.aboveeurope.com and an error occurred during the operation. What a surprise for me it was when I could see the statistics of totally foreign [...]]]></description>
			<content:encoded><![CDATA[<p>I ran into a really disturbing security incident in the new Google Analytics interface today. A friend of mine was making me able to see the  stats of upcoming accommodation website <a href="http://www.aboveeurope.com">www.aboveeurope.com</a> and an error occurred during the operation. What a surprise for me it was when I could see the statistics of totally foreign website in my analytics account afterwards!</p>
<p><span id="more-12"></span>I contacted Google immediately and will post any new facts here. </p>
<p>See the screenshot of my Analytics account with the stats of website I shouldn't be allowed to see (I don't know that corporation nor I am in any way affiliated with it):</p>
<p><center><br />
<a href="http://www.dolejsky.com/img/analytics-insecurity/analytics-insecurity.png"><img src="http://www.dolejsky.com/img/analytics-insecurity/analytics-insecurity-small.png" alt="Google Analytics security incident screenshot" /></a> <br/> (click to see full image)<br />
</center></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dolejsky.com/2007/05/17/serious-google-analytics-security-problem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>openSuse 10.2 on Lenovo 3000 n100</title>
		<link>http://www.dolejsky.com/2007/01/09/suse-102-na-lenovo-3000-n100/</link>
		<comments>http://www.dolejsky.com/2007/01/09/suse-102-na-lenovo-3000-n100/#comments</comments>
		<pubDate>Tue, 09 Jan 2007 09:55:38 +0000</pubDate>
		<dc:creator>ludek</dc:creator>
				<category><![CDATA[Bits and pieces]]></category>

		<guid isPermaLink="false">http://www.dolejsky.com/ludek/?p=8</guid>
		<description><![CDATA[Installing openSuse 10.2 on Lenovo 3000 n100. When choosing installation type, it's necessary to use "maxcpus=0" kernel parameter, otherwise kernel hangs - probably a bug (#231205, #227279). Hardware Beware of Wifi hardware switch! When switched OFF, system hangs at boot-time when detecting WiFi card. For correct 1280x800 display resolution (even after hibernate) set VIDEOBIOS_PATCH="yes" and [...]]]></description>
			<content:encoded><![CDATA[<p>Installing openSuse 10.2 on Lenovo 3000 n100.</p>
<p><span id="more-8"></span><br />
When choosing installation type, it's necessary to use "maxcpus=0" kernel parameter, otherwise kernel hangs - probably a bug (<a href="https://bugzilla.novell.com/show_bug.cgi?id=231205">#231205</a>, <a href="https://bugzilla.novell.com/show_bug.cgi?id=227279">#227279</a>).</p>
<h2>Hardware</h2>
<p>Beware of Wifi hardware switch! When switched OFF, system hangs at boot-time when detecting WiFi card.</p>
<p>For correct 1280x800 display resolution (even after hibernate) set VIDEOBIOS_PATCH="yes" and VIDEOBIOS_PARAMETERS="5a 1280 800 32" in /etc/sysconfig/videobios.</p>
<p>Sound card stopped working after every volume change. Adding "model=3stack" parameter helped. Volume up/down buttons ceased to work after keyboard layout change, didn't try to solve it yet.</p>
<p>No problems with Ethernet or WiFi. There is no support for Web camera yet.</p>
<h2>Software</h2>
<p>Firefox wasn't able to resolve hostnames. Turning off IPv6 in Firefox (about:config, network.dns.disableIPv6=true) helped. Maybe it is just problem with our router.</p>
<p>Amarok cannot play mp3, you have to uninstall xine-lib and install it again from <a href="http://en.opensuse.org/Additional_YaST_Package_Repositories">Packman repository</a>. Everything works fine, then.</p>
<h2>Tuning</h2>
<p><strong>Enabling Eclipse's Ctrl+F11 shortcut</strong><br />
Eclipse's Ctrl+F11 shortcut (Run last launched) didn't work in KDE because it is defined as KDE shortcut (Switch to Desktop 11). Removing this association helped. </p>
<p><strong>Remapping PrtSc to Home and Pause to End:</strong><br />
1. Change following lines in /usr/share/X11/xkb/symbols/pc:<br />
 key &lt;PRSC&gt;  {	[  Home			]	};<br />
 key &lt;SCLK&gt; {  [  Scroll_Lock	]	};</p>
<p>2. Make following change in file /~/.kde/share/config/khotkeysrc:</p>
<p>[Data_3_9]<br />
Comment=Launches KSnapShot when PrintScrn is pressed.\n<br />
Enabled=<strong>false</strong><br />
Name=PrintScreen<br />
Type=COMMAND_URL_SHORTCUT_ACTION_DATA</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dolejsky.com/2007/01/09/suse-102-na-lenovo-3000-n100/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

