<?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>he, who does not eat fish &#187; it</title>
	<atom:link href="http://pifostap.org.ua/blog/category/it/feed" rel="self" type="application/rss+xml" />
	<link>http://pifostap.org.ua/blog</link>
	<description>linux, math, fun, student&#039;s life</description>
	<lastBuildDate>Mon, 23 Jan 2012 23:30:28 +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>Shutdown, Reboot, Suspend or Hibernate with user priviliges via D-Bus</title>
		<link>http://pifostap.org.ua/blog/2011/12/12/shutdown-dbus.html</link>
		<comments>http://pifostap.org.ua/blog/2011/12/12/shutdown-dbus.html#comments</comments>
		<pubDate>Mon, 12 Dec 2011 12:28:14 +0000</pubDate>
		<dc:creator>::pif</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[it]]></category>
		<category><![CDATA[dbus]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://pifostap.org.ua/blog/?p=448</guid>
		<description><![CDATA[Some distros don&#8217;t allow you to shutdown -r now from terminal without superuser password. Shutdown/Reboot/Suspend/Hibernate with user priviliges in Linux is possible via D-Bus. You just need consolekit and upower packages installed. Here are the commands: Operation D-Bus command Suspend dbus-send --print-reply --system --dest=org.freedesktop.UPower /org/freedesktop/UPower org.freedesktop.UPower.Suspend Hibernate dbus-send --print-reply --system --dest=org.freedesktop.UPower /org/freedesktop/UPower org.freedesktop.UPower.Hibernate Reboot dbus-send [...]]]></description>
			<content:encoded><![CDATA[<p>Some distros don&#8217;t allow you to<br />
<code>shutdown -r now</code><br />
from terminal without superuser password.<br />
Shutdown/Reboot/Suspend/Hibernate with user priviliges in Linux is possible via D-Bus. You just need <code><strong>consolekit</strong></code> and <code><strong>upower</strong></code> packages installed.</p>
<p>Here are the commands:</p>
<table>
<thead>
<tr>
<th>Operation</th>
<th>D-Bus command</th>
</tr>
</thead>
<tbody>
<tr>
<td>Suspend</td>
<td><code>dbus-send --print-reply --system --dest=org.freedesktop.UPower /org/freedesktop/UPower org.freedesktop.UPower.Suspend</code></td>
</tr>
<tr>
<td>Hibernate</td>
<td><code>dbus-send --print-reply --system --dest=org.freedesktop.UPower /org/freedesktop/UPower org.freedesktop.UPower.Hibernate</code></td>
</tr>
<tr>
<td>Reboot</td>
<td><code>dbus-send --system --print-reply --dest=org.freedesktop.ConsoleKit /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Restart</code></td>
</tr>
<tr>
<td>Shutdown</td>
<td><code>dbus-send --system --print-reply --dest=org.freedesktop.ConsoleKit /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop</code></td>
</tr>
</tbody>
</table>
<p>Just paste them in your beloved terminal emulator and press enter <img src='http://pifostap.org.ua/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://pifostap.org.ua/blog/2011/12/12/shutdown-dbus.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>BlackBerry hidden key combinations</title>
		<link>http://pifostap.org.ua/blog/2011/11/19/blackberry-backdoors.html</link>
		<comments>http://pifostap.org.ua/blog/2011/11/19/blackberry-backdoors.html#comments</comments>
		<pubDate>Sat, 19 Nov 2011 11:05:41 +0000</pubDate>
		<dc:creator>::pif</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[it]]></category>
		<category><![CDATA[blackberry]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[reference]]></category>

		<guid isPermaLink="false">http://pifostap.org.ua/blog/?p=378</guid>
		<description><![CDATA[I&#8217;ll collect all the hidden key combinations in BlackBerry in this post. Sort of wiki-page. Combination Where Purpose ALT+LGLG Ribbon (screen with apps) Open BlackBerry Event Log SHIFT+BUYR Options&#62;Status Show data/voice usage ?123+M,M, Ribbon (screen with apps) Open BlackBerry Event Log on touchscreen devices]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ll collect all the hidden key combinations in BlackBerry in this post.<br />
Sort of wiki-page. </p>
<table>
<tr>
<th>Combination</th>
<th>Where</th>
<th>Purpose</th>
</tr>
<tr>
<td>ALT+LGLG</td>
<td>Ribbon (screen with apps)</td>
<td>Open BlackBerry Event Log</td>
</tr>
<tr>
<td>SHIFT+BUYR</td>
<td>Options&gt;Status</td>
<td>Show data/voice usage</td>
</tr>
<tr>
<td>?123+M,M,</td>
<td>Ribbon (screen with apps)</td>
<td>Open BlackBerry Event Log on touchscreen devices</td>
</tr>
</table>
]]></content:encoded>
			<wfw:commentRss>http://pifostap.org.ua/blog/2011/11/19/blackberry-backdoors.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Флеш</title>
		<link>http://pifostap.org.ua/blog/2011/11/10/flash.html</link>
		<comments>http://pifostap.org.ua/blog/2011/11/10/flash.html#comments</comments>
		<pubDate>Thu, 10 Nov 2011 20:40:47 +0000</pubDate>
		<dc:creator>::pif</dc:creator>
				<category><![CDATA[it]]></category>
		<category><![CDATA[Life]]></category>
		<category><![CDATA[Українська]]></category>
		<category><![CDATA[flash]]></category>

		<guid isPermaLink="false">http://pifostap.org.ua/blog/?p=403</guid>
		<description><![CDATA[Дуже порадували коменти в неті до цієї новини про флеш http://liza-bam.livejournal.com/1231845.html]]></description>
			<content:encoded><![CDATA[<p>Дуже порадували коменти в неті до цієї новини про флеш<br />
<a href="http://liza-bam.livejournal.com/1231845.html">http://liza-bam.livejournal.com/1231845.html</a></p>
<p><img src="http://pifostap.org.ua/blog/wp-content/uploads/2011/10/Circum-Fence-e1320957537306.png" alt="" title="Коменти" width="499" height="240" class="aligncenter size-full wp-image-427" /></p>
]]></content:encoded>
			<wfw:commentRss>http://pifostap.org.ua/blog/2011/11/10/flash.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I received my OCPJP certificate</title>
		<link>http://pifostap.org.ua/blog/2011/10/10/ocpjp.html</link>
		<comments>http://pifostap.org.ua/blog/2011/10/10/ocpjp.html#comments</comments>
		<pubDate>Mon, 10 Oct 2011 18:48:44 +0000</pubDate>
		<dc:creator>::pif</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[it]]></category>
		<category><![CDATA[Life]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[ocjp]]></category>
		<category><![CDATA[reference]]></category>
		<category><![CDATA[scjp]]></category>

		<guid isPermaLink="false">http://pifostap.org.ua/blog/?p=380</guid>
		<description><![CDATA[I successfully passed Oracle Certified Professional Java Programmer Exam (formerly SCJP) a month ago. That was my birthday present. I passed right one day before my 20-th BD. For everyone, who is willing to pass it I&#8217;d recommend just 2 things: ExamLab for SCJP 6.0 &#8211; the best mockup tests for this exam! Free, cool [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_401" class="wp-caption aligncenter" style="width: 235px"><a href="http://pifostap.org.ua/blog/wp-content/uploads/2011/09/ocjp.jpg" rel="lightbox[380]"><img class="size-medium wp-image-401" title="Oracle Certified Professional, JAVA SE 6 Programmer" src="http://pifostap.org.ua/blog/wp-content/uploads/2011/09/ocjp-225x300.jpg" alt="Oracle Certified Professional, JAVA SE 6 Programmer" width="225" height="300" /></a><p class="wp-caption-text">OCJP Certificate</p></div>
<p>I successfully passed Oracle Certified Professional Java Programmer Exam (formerly SCJP) a month ago. That was my birthday present. I passed right one day before my 20-th BD.</p>
<p>For everyone, who is willing to pass it I&#8217;d recommend just 2 things:</p>
<ol>
<li><a href="http://examlab.tk/scjp6.html"><strong>ExamLab for SCJP 6.0</strong></a> &#8211; the best mockup tests for this exam! Free, cool and deep explanations, lot&#8217;s of tests. If you can score ~60-70% in this app, you would possibly pass OCJP with a high score (~80-90%).</li>
<li><a href="http://www.amazon.com/SCJP-Certified-Programmer-Java-310-065/dp/0071591060"><strong>SCJP Sun Certified Programmer for Java 6</strong></a> &#8211; the so-called K&#038;S book (Katherine Sierra and Bert Bates). If you read all the book, you&#8217;ll definitely increse your java knowledge. The best book. 100% coverage.</li>
</ol>
<p>Have fun!</p>
]]></content:encoded>
			<wfw:commentRss>http://pifostap.org.ua/blog/2011/10/10/ocpjp.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Crappy legal java code</title>
		<link>http://pifostap.org.ua/blog/2011/09/09/java.html</link>
		<comments>http://pifostap.org.ua/blog/2011/09/09/java.html#comments</comments>
		<pubDate>Fri, 09 Sep 2011 11:09:46 +0000</pubDate>
		<dc:creator>::pif</dc:creator>
				<category><![CDATA[Creativity]]></category>
		<category><![CDATA[English]]></category>
		<category><![CDATA[it]]></category>
		<category><![CDATA[geek]]></category>
		<category><![CDATA[java]]></category>

		<guid isPermaLink="false">http://pifostap.org.ua/blog/?p=329</guid>
		<description><![CDATA[That was hard evening. After reading some java books, right before I went to sleep, some java code came to my mind&#8230; class ${public void _($ $4){}} class $&#60;_, $, $_&#62; {$ _;&#60;_&#62; $($ _){}&#60;$&#62; $($ _,$ $_){_=$_;}} And that&#8217;s not the upper bound. You can enchant it the way you want, creating crazy valid [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://pifostap.org.ua/blog/wp-content/uploads/2011/09/eviljava.png" alt="Java" title="Java" width="200"  class="alignleft size-full wp-image-353" />That was hard evening.</p>
<p>After reading some java books, right before I went to sleep, some java code came to my mind&#8230;</p>
<p><code><br />
class ${public void _($ $4){}}<br />
class $&lt;_, $, $_&gt; {$ _;&lt;_&gt; $($ _){}&lt;$&gt; $($ _,$ $_){_=$_;}}<br />
</code><br />
And that&#8217;s not the upper bound. You can enchant it the way you want, creating crazy valid useless (or even useful?) POJOs <img src='http://pifostap.org.ua/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://pifostap.org.ua/blog/2011/09/09/java.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>wait() and notify()</title>
		<link>http://pifostap.org.ua/blog/2011/07/12/wait-and-notify.html</link>
		<comments>http://pifostap.org.ua/blog/2011/07/12/wait-and-notify.html#comments</comments>
		<pubDate>Tue, 12 Jul 2011 17:25:12 +0000</pubDate>
		<dc:creator>::pif</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[it]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[notify]]></category>
		<category><![CDATA[reference]]></category>
		<category><![CDATA[threads]]></category>
		<category><![CDATA[wait]]></category>

		<guid isPermaLink="false">http://pifostap.org.ua/blog/?p=294</guid>
		<description><![CDATA[Excerpt from old &#8220;Exploring Java&#8221; book. It clearly states, what wait(), notify(), notifyAll() are used for and what they do. With the synchronized keyword, we can serialize the execution of complete methods and blocks of code. The wait() and notify() methods of the Object class extend this capability. Every object in Java is a subclass [...]]]></description>
			<content:encoded><![CDATA[<p>Excerpt from old &#8220;Exploring Java&#8221; book.<br />
It clearly states, what wait(), notify(), notifyAll() are used for and what they do.</p>
<p>With the synchronized keyword, we can serialize the execution of complete methods and blocks of code. The wait() and notify() methods of the Object class extend this capability. Every object in Java is a subclass of Object, so every object inherits these methods. By using wait() and notify(), a thread can give up its hold on a lock at an arbitrary point, and then wait for another thread to give it back before continuing. All of the coordinated activity still happens inside of synchronized blocks, and still only one thread is executing at a given time.<br />
<span id="more-294"></span><br />
By executing wait() from a synchronized block, a thread gives up its hold on the lock and goes to sleep. A thread might do this if it needs to wait for something to happen in another part of the application, as you&#8217;ll see shortly. Later, when the necessary event happens, the thread that is running it calls notify() from a block synchronized on the same object. Now the first thread wakes up and begins trying to acquire the lock again.</p>
<p>When the first thread manages to reacquire the lock, it continues from the point it left off. However, the thread that waited may not get the lock immediately (or perhaps ever). It depends on when the second thread eventually releases the lock, and which thread manages to snag it next. Note also, that the first thread won&#8217;t wake up from the wait() unless another thread calls notify(). There is an overloaded version of wait(), however, that allows us to specify a timeout period. If another thread doesn&#8217;t call notify() in the specified period, the waiting thread automatically wakes up.</p>
<p>Let&#8217;s look at a simple scenario to see what&#8217;s going on. In the following example, we&#8217;ll assume there are three threads&#8211;one waiting to execute each of the three synchronized methods of the MyThing class. We&#8217;ll call them the waiter, notifier, and related threads, respectively. Here&#8217;s a code fragment to illustrate:</p>
<p><code>class MyThing { </p>
<p>    synchronized void waiterMethod() {<br />
        // Do some stuff </p>
<p>        // Now we need to wait for notifier to do something<br />
        wait(); </p>
<p>        // Continue where we left off<br />
    } </p>
<p>    synchronized void notifierMethod() {<br />
        // Do some stuff  </p>
<p>        // Notify waiter that we've done it<br />
        notify(); </p>
<p>        // Do more things<br />
    } </p>
<p>    synchronized void relatedMethod() {<br />
        // Do some related stuff<br />
    }<br />
</code><br />
Let&#8217;s assume waiter gets through the gate first and begins executing waiterMethod(). The two other threads are initially blocked, trying to acquire the lock for the MyThing object. When waiter executes the wait() method, it relinquishes its hold on the lock and goes to sleep. Now there are now two viable threads waiting for the lock. Which thread gets it depends on several factors, including chance and the priorities of the threads. (We&#8217;ll discuss thread scheduling in the next section).</p>
<p>Let&#8217;s say that notifier is the next thread to acquire the lock, so it begins to run. waiter continues to sleep and related languishes, waiting for its turn. When notifier executes the call to notify(), Java prods the waiter thread, effectively telling it something has changed. waiter then wakes up and rejoins related in vying for the MyThing lock. Note that it doesn&#8217;t actually receive the lock; it just changes from saying &#8220;leave me alone&#8221; to &#8220;I want the lock.&#8221;</p>
<p>At this point, notifier still owns the lock and continues to hold it until it leaves its synchronized method (or perhaps executes a wait() itself). When it finally completes, the other two methods get to fight over the lock. waiter would like to continue executing waiterMethod() from the point it left off, while unrelated, which has been patient, would like to get started. We&#8217;ll let you choose your own ending for the story.</p>
<p>For each call to notify(), Java wakes up just one method that is asleep in a wait() call. If there are multiple threads waiting, Java picks the first thread on a first-in, first-out basis. The Object class also provides a notifyAll() call to wake up all waiting threads. In most cases, you&#8217;ll probably want to use notifyAll() rather than notify(). Keep in mind that notify() really means &#8220;Hey, something related to this object has changed. The condition you are waiting for may have changed, so check it again.&#8221; In general, there is no reason to assume only one thread at a time is interested in the change or able to act upon it. Different threads might look upon whatever has changed in different ways.</p>
<p>Often, our waiter thread is waiting for a particular condition to change and we will want to sit in a loop like the following:<br />
<code><br />
...<br />
while ( condition != true )<br />
    wait();<br />
... </code></p>
<p>Other synchronized threads call notify() or notifyAll() when they have modified the environment so that waiter can check the condition again. This is the civilized alternative to polling and sleeping, as you&#8217;ll see the following example. </p>
<p>Copy-pasted from <a href="http://oreilly.com/catalog/expjava/excerpt/index.html#EXJ-CH-6-SECT-3" title="Thread Synchronization">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://pifostap.org.ua/blog/2011/07/12/wait-and-notify.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rutorrent + rTorrent on Debian Server</title>
		<link>http://pifostap.org.ua/blog/2011/07/06/rutorrent-rtorrent-on-debian.html</link>
		<comments>http://pifostap.org.ua/blog/2011/07/06/rutorrent-rtorrent-on-debian.html#comments</comments>
		<pubDate>Wed, 06 Jul 2011 17:10:57 +0000</pubDate>
		<dc:creator>::pif</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[it]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[lighttpd]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[rtorrent]]></category>
		<category><![CDATA[rutorrent]]></category>
		<category><![CDATA[torrent]]></category>

		<guid isPermaLink="false">http://pifostap.org.ua/blog/?p=292</guid>
		<description><![CDATA[Once, I&#8217;ve installed it myself. Yes, in the way, everyone did this: checkout, compile with xml-rpc support, install web-server, bind everything together and enable some security. It worked great, but after some updates, it broke up. Don&#8217;t know what happened exactly, I was a bit busy at that time. Several weeks ago, I desperately needed [...]]]></description>
			<content:encoded><![CDATA[<p><img alt="ruTorrent logo" src="https://code.google.com/p/rutorrent/logo" title="ruTorrent logo" class="alignleft" width="55" height="55" />Once, I&#8217;ve installed it myself.<br />
Yes, in the way, everyone did this: checkout, compile with xml-rpc support, install web-server, bind everything together and enable some security.<br />
It worked great, but after some updates, it broke up. Don&#8217;t know what happened exactly, I was a bit busy at that time.</p>
<p>Several weeks ago, I desperately needed torrent client, but in that environment, no applications could be installed. It was a great disappointment to find out, that me own rTorrent is down on the server. So I tried to perform mentioned actions again, but with no luck.</p>
<p>Right at that moment, I found out about an AWESOME!!! script, which does everything you need! It just installs </p>
<ul>
<li>rTorrent</li>
<li>ruTorrent</li>
<li>your favourite web-server</li>
<li>FTP</li>
<li>Webmin</li>
</ul>
<p>It binds everything together, and it just works!</p>
<p>Here&#8217;s the <strong>MAGIC link</strong> to the documentation:<br />
<a href="http://forums.rutorrent.org/index.php?topic=608.msg4427" title="This script installs ruTorrent with rTorrent">http://forums.rutorrent.org/index.php?topic=608.msg4427</a><br />
Everything is pretty strait-forward and troubleless.</p>
<p><strong><em>Hint:</em> run the downloaded script inside <code>screen</code> session. </strong> Script, itself, runs several minutes. It configures and compiles everything. So, please, be patient. If you have poor ssh access, it would be much better to reattach to the running screen process, after connection failure or something.</p>
<p>The only thing, I had to modify afterwards, was a web-server&#8217;s port, &#8217;cause my ISP blocks port #80.<br />
As I&#8217;ve chosen lighttpd, as my webser, I had to modify lighttpd config file<br />
<code>nano /usr/share/lighttpd/lighttpd.conf</code><br />
and set<br />
<code>server.port = 1234</code></p>
]]></content:encoded>
			<wfw:commentRss>http://pifostap.org.ua/blog/2011/07/06/rutorrent-rtorrent-on-debian.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ALT+SHIFT</title>
		<link>http://pifostap.org.ua/blog/2011/03/19/altshift.html</link>
		<comments>http://pifostap.org.ua/blog/2011/03/19/altshift.html#comments</comments>
		<pubDate>Sat, 19 Mar 2011 12:44:36 +0000</pubDate>
		<dc:creator>::pif</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[it]]></category>
		<category><![CDATA[holywar]]></category>
		<category><![CDATA[keyboard]]></category>

		<guid isPermaLink="false">http://pifostap.org.ua/blog/?p=242</guid>
		<description><![CDATA[Recently I took part in an online Battle of the Brands http://thebattleofbrands.com/en Both of the contestants are familiar to me since my childhood. To cut the long story short, let me introduce this 2 awesome key combinations: [ALT]+[SHIFT] [CTRL]+[SHIFT] As you probably guessed both of them are used to switch keyboard layout in PCs. The heading [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I took part in an online Battle of the Brands <a href="http://thebattleofbrands.com/en">http://thebattleofbrands.com/en</a></p>
<p>Both of the contestants are familiar to me since my childhood.</p>
<p>To cut the long story short, let me introduce this 2 awesome key combinations:</p>
<ul>
<li><strong>[ALT]+[SHIFT]</strong></li>
<li><strong>[CTRL]+[SHIFT]</strong></li>
</ul>
<div>As you probably guessed both of them are used to switch keyboard layout in PCs.</div>
<div>The heading of the topic yells my choice: <strong><span style="color: #000080;">[ALT]+[SHIFT]</span></strong></div>
<div><strong><br /></strong></div>
<div><a href="http://pifostap.org.ua/blog/wp-content/uploads/2011/03/keyboard-e1300538272469.jpg" rel="lightbox[242]"><img class="alignright size-thumbnail wp-image-243" title="keyboard" src="http://pifostap.org.ua/blog/wp-content/uploads/2011/03/keyboard-e1300538272469-150x150.jpg" alt="" width="150" height="150" /></a>I&#8217;ve been using CTRL+SHIFT barely for 7 years. Since I was introduced to the PC. I can recall in my memory, that second or third lesson during computer courses back in 2001 was how to set up your Windows 98 to use it smoothly. The first issue to fix in the standard Win98 installation was to change ALT+SHIFT into CTRL+SHIFT. I still can&#8217;t get it why it was done? CTRL+SHIFT was used everywhere. I can hardly find any reason for this choice nowadays.</div>
<div></div>
<div>Possibly, that&#8217;s because <strong>people use mouse a lot. </strong>This sound a bit unclear, but I&#8217;ll make a point.</div>
<div>What do people use to select seldom words in Word/Notepad? Yeap, a mouse! But there&#8217;s a better choice: CTRL+SHIFT+(left/right arrows). You don&#8217;t have to move your mouse around and precisely click it twice over the word. Moreover, what should you do to select 2 words in a row? double click is a waste of time here. It selects only one word per time.</div>
<div></div>
<div>How do people navigate through all the tabbed interfaces &#8211; browsers, preference windows? Again, with a mouse! Mouse is not a choice if you need to get the office job done quickly. Keyboard is much quicker. The main key combination to navigate through tabs is CTRL+TAB (forth -&gt;) and <strong>CTRL+SHIFT+</strong>TAB (back &lt;-). The second one intersects with our keyboard layout combination. So it was unfairly forgotten. This OS feature often is not used at all! Since I discovered it I forgot about mouse while browsing through tabs. It greatly sped up my navigating.</div>
<div></div>
<div>The crux of the matter is that barely nobody wants to use their keyboard efficiently. They dream of it, but do nothing to improve their keyboard skills. Keyboard has much to offer! So go and get over it!</div>
<p> </p>
]]></content:encoded>
			<wfw:commentRss>http://pifostap.org.ua/blog/2011/03/19/altshift.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Understanding BlackBerry EventLog</title>
		<link>http://pifostap.org.ua/blog/2011/03/12/understanding-blackberry-eventlog.html</link>
		<comments>http://pifostap.org.ua/blog/2011/03/12/understanding-blackberry-eventlog.html#comments</comments>
		<pubDate>Sat, 12 Mar 2011 11:45:07 +0000</pubDate>
		<dc:creator>::pif</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[it]]></category>
		<category><![CDATA[blackberry]]></category>
		<category><![CDATA[logs]]></category>

		<guid isPermaLink="false">http://pifostap.org.ua/blog/?p=226</guid>
		<description><![CDATA[Recently, I&#8217;ve been digging deeply into BlackBerry EventLogs. Every row in EventLog consists of several parts. The first element is error-level (a,d,E,..) of this log entry. The next one is application&#8217;s name (e.g. net.rim.udp, System&#8230;) And finally here comes the message.I was interested in this tiny letters shown at the begining of every log event: [...]]]></description>
			<content:encoded><![CDATA[<p>Recently, I&#8217;ve been digging deeply into BlackBerry EventLogs.</p>
<p>Every row in EventLog consists of several parts.</p>
<p>The first element is error-level (a,d,E,..) of this log entry.</p>
<p>The next one is application&#8217;s name (e.g. net.rim.udp, System&#8230;)</p>
<p>And finally here comes the message.I was interested in this tiny letters shown at the begining of every log event:</p>
<p><code>#BlackBerry Event Log (cpt)<br /> #PVer: 5.1.0.177<br /> #AVer: 5.0.0.938<br /> <strong>a </strong>net.rim.ippp - RXCd 11 - 9/23 22:31:29<br /> <strong>a </strong>net.rim.ippp - RXCd 32 - 9/23 22:30:27</code><code> <strong>W </strong>net.rim.ippp - RXnp - 9/23 22:30:15</code><code><strong>a </strong>net.rim.ippp - RXCd 11 - 9/23 22:30:15</code><br /><code> <strong>d </strong>net.rim.ippp - TXSt 0 - 9/23 22:30:15<br /> <strong>a </strong>net.rim.ippp - TXca - 9/23 22:30:15</code></p>
<p><code><br /> Maybe, this knowledge will be usefull for someone.</code></p>
<table border="0">
<tbody>
<tr>
<th>Letter</th>
<th>API name</th>
<th>Description</th>
</tr>
<tr>
<td>a</td>
<td>ALWAYS_LOG</td>
<td>Always log event, regardless of severity.</td>
</tr>
<tr>
<td>d</td>
<td>DEBUG_INFO</td>
<td>Debug information level event.</td>
</tr>
<tr>
<td>E</td>
<td>ERROR</td>
<td>Error level event.</td>
</tr>
<tr>
<td>I</td>
<td>INFORMATION</td>
<td>Information level event.</td>
</tr>
<tr>
<td>S</td>
<td>SEVERE_ERROR</td>
<td>Severe level event.</td>
</tr>
<tr>
<td>W</td>
<td>WARNING</td>
<td>Warning level event.</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://pifostap.org.ua/blog/2011/03/12/understanding-blackberry-eventlog.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows 7 fail</title>
		<link>http://pifostap.org.ua/blog/2011/02/06/windows-7-fail.html</link>
		<comments>http://pifostap.org.ua/blog/2011/02/06/windows-7-fail.html#comments</comments>
		<pubDate>Sat, 05 Feb 2011 23:22:50 +0000</pubDate>
		<dc:creator>::pif</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[it]]></category>
		<category><![CDATA[Life]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://pifostap.org.ua/blog/?p=214</guid>
		<description><![CDATA[I&#8217;ve recently got access to MSDNAA. That&#8217;s MSDN Academic Alliance. This program for universities allows students to get Microsoft tools free of charge for personal use. My dream was to have licensed version of Microsoft Windows. In post-soviet countries, it&#8217;s really that hard to use one. But with msdnaa my dream came true. I&#8217;ve downloaded [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve recently got access to MSDNAA. That&#8217;s MSDN Academic Alliance. This program for universities allows students to get Microsoft tools free of charge for personal use.</p>
<p>My dream was to have licensed version of Microsoft Windows. In post-soviet countries, it&#8217;s really that hard to use one. But with msdnaa my dream came true. </p>
<p>I&#8217;ve downloaded client application (<500kb). This one is downloading iso-image of the item, I&#8217;ve chosen on microsoft.com. Finally, it downloaded 2,3 Gb Windows 7 Professional Retail x86 iso-file.</p>
<p>Unfortunately, I had no free dvd-r at that moment, and my dvd-drive was in such a horrible state, that it could hardly read any dvd. I don&#8217;t even mention it&#8217;s ability to write smth :/ But lightscribe works as it should <img src='http://pifostap.org.ua/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>So, I&#8217;ve downloaded Microsoft ISO2USB tool. This one allows users to burn their iso to usb-drive, and install OS from it. Unfortunately, it failed. That one needed some extra libraries, which I couldn&#8217;t find.<br />
I found one third-party tool, which did that for me. </p>
<p>I&#8217;m rebooting my system&#8230; and there it is! Windows 7 installation!<br />
Unfortunately, right after first screen, my setup failed <img src='http://pifostap.org.ua/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  It couldn&#8217;t find any drivers for my lapton, so with the message &#8220;Insert dvd/choose location of drivers&#8221; all my dreams fainted.<br />
I&#8217;ve been trying lot&#8217;s of solutions. But nothing could help me.<br />
The only outcome, I&#8217;ve faced was: several new partitions on hard-drive, no OS at all.</p>
<p>Right at that moment, I&#8217;ve found my Ubuntu 10.10 CD. That&#8217;s the only non-brain-damaging solution! It installed from the first time. No pop-alerts! Easy as abc! Even after logging into my braid new ubuntu installation, I wasn&#8217;t satisfied enough. I had a valid Win7 Pro key! I had no Win7 Pro. That&#8217;s ridiculous.</p>
<p>I thought, the only place in internet, where I can find valid iso-image of Win7 can be somewhere in torrents! I&#8217;ve logged into one of the most popular torrent sites out here and quickly found Genuine Win 7 Retail. </p>
<p>But there where no Pro. Only Ultimate revisions. Somewhere, I&#8217;ve read, that Ultimate installation has all the versions inside: from Starter to Ultimate, except Enterprise. And yes! You just have to remove or modify<br />
/isoimage/sources/ei.cfg file! That definitely cool <img src='http://pifostap.org.ua/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>I&#8217;ve downloaded win 7 ultimate, changed that ei.cfg with the one from the image, which I&#8217;ve got from msdnaa. Finally I&#8217;ve got working Windows 7 Professional installation image. The only problem was, that I installed Ubuntu, and got too accustomed to it. Moreover, my dvd-drive wasn&#8217;t working correctly <img src='http://pifostap.org.ua/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  I&#8217;ve downloaded Virtual Box and installed Windows 7 Pro inside it. It completed successfully and passed validation test with the key provided.</p>
<p>Currently, I&#8217;m working under ubuntu, and waiting for the moment, when I&#8217;ll suddenly kill my system with &#8220;rm -rf /&#8221; <img src='http://pifostap.org.ua/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Then, I&#8217;ll try installing Win7 once more <img src='http://pifostap.org.ua/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Have a nice day <img src='http://pifostap.org.ua/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://pifostap.org.ua/blog/2011/02/06/windows-7-fail.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

