<?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>Tomasz Marszał Blog &#187; informatyka</title>
	<atom:link href="http://bymarszal.pl/blog/category/informatyka/feed/" rel="self" type="application/rss+xml" />
	<link>http://bymarszal.pl/blog</link>
	<description>WebDevelopment. Informatyka. Ciekawe projekty.</description>
	<lastBuildDate>Fri, 16 Sep 2011 19:25:19 +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>Włączenie mikrofonu w Ubuntu 11.04</title>
		<link>http://bymarszal.pl/blog/2011/09/16/wlaczenie-mikrofonu-w-ubuntu-11-04/</link>
		<comments>http://bymarszal.pl/blog/2011/09/16/wlaczenie-mikrofonu-w-ubuntu-11-04/#comments</comments>
		<pubDate>Fri, 16 Sep 2011 19:25:19 +0000</pubDate>
		<dc:creator>Tomek</dc:creator>
				<category><![CDATA[informatyka]]></category>
		<category><![CDATA[alsamixer]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[microphone]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[ubuntu 11.04]]></category>

		<guid isPermaLink="false">http://bymarszal.pl/blog/?p=1168</guid>
		<description><![CDATA[Chyba jak sporej liczbie osób (sądząc po postach wygooglanych na różnych forach) także i mi po upgradzie Ubuntu z 10.10 na 11.04 przestał działać wbudowany w laptopa mikrofon (podpinany przez minijacka działał bez problemu). W końcu udało mi się znaleźć prosty opis, co ponaciskać w alsamixerze, żeby zaczęło działać. Żeby pomóc innym, postanowiłem podpozycjonować trochę [...]]]></description>
			<content:encoded><![CDATA[<p>Chyba jak sporej liczbie osób (sądząc po postach wygooglanych na różnych forach) także i mi po upgradzie Ubuntu z 10.10 na 11.04 przestał działać wbudowany w laptopa mikrofon (podpinany przez minijacka działał bez problemu). W końcu udało mi się znaleźć prosty opis, co ponaciskać w alsamixerze, żeby zaczęło działać.</p>
<p>Żeby pomóc innym, postanowiłem podpozycjonować trochę <a href="http://embraceubuntu.com/2005/12/05/fixing-the-errant-microphone/" title="Fixing microphone in ubuntu 11.04">źródłowy artykuł</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://bymarszal.pl/blog/2011/09/16/wlaczenie-mikrofonu-w-ubuntu-11-04/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jak tworzyć dobre diagramy w prezentacjach</title>
		<link>http://bymarszal.pl/blog/2011/08/20/jak-tworzyc-dobre-diagramy-w-prezentacjach/</link>
		<comments>http://bymarszal.pl/blog/2011/08/20/jak-tworzyc-dobre-diagramy-w-prezentacjach/#comments</comments>
		<pubDate>Sat, 20 Aug 2011 06:16:30 +0000</pubDate>
		<dc:creator>Tomek</dc:creator>
				<category><![CDATA[informatyka]]></category>
		<category><![CDATA[inne]]></category>
		<category><![CDATA[diagramy]]></category>
		<category><![CDATA[prezentacja]]></category>

		<guid isPermaLink="false">http://bymarszal.pl/blog/?p=1169</guid>
		<description><![CDATA[Pierwsza ciekawa rzecz zdobyta dzięki Google+ :) How to make Awesome Diagrams for your slides View more presentations from otikik Najważniejsza dla mnie informacja &#8211; dobre kolory do użycia w diagramach: RED#C5000BChart 11 YELLOW#FFD320Chart 3 GREEN#008000Green BLUE#0084D1Chart 12]]></description>
			<content:encoded><![CDATA[<p>Pierwsza ciekawa rzecz zdobyta dzięki Google+ :)</p>
<div style="width:425px" id="__ss_8555051"> <strong style="display:block;margin:12px 0 4px"><a href="http://www.slideshare.net/otikik/how-to-make-awesome-diagrams-for-your-slides" title="How to make Awesome Diagrams for your slides" target="_blank">How to make Awesome Diagrams for your slides</a></strong> <iframe src="http://www.slideshare.net/slideshow/embed_code/8555051" width="425" height="355" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
<div style="padding:5px 0 12px"> View more <a href="http://www.slideshare.net/" target="_blank">presentations</a> from <a href="http://www.slideshare.net/otikik" target="_blank">otikik</a> </div>
</p></div>
<p>Najważniejsza dla mnie informacja &#8211; dobre kolory do użycia w diagramach:</p>
<style type="text/css">
#presentationColors {
color: #000;
font-weight: bold;
width: 100%;
text-align: center;
}
#presentationColors td {
width: 25%;
}
</style>
<table id="presentationColors">
<tbody>
<tr>
<td style="background:#C5000B;">RED<br />#C5000B<br />Chart 11</td>
<td style="background:#FFD320;">YELLOW<br />#FFD320<br />Chart 3</td>
<td style="background:#008000;">GREEN<br />#008000<br />Green</td>
<td style="background:#0084D1;">BLUE<br />#0084D1<br />Chart 12</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://bymarszal.pl/blog/2011/08/20/jak-tworzyc-dobre-diagramy-w-prezentacjach/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ściąganie całej strony na dysk z wykorzystaniem wget-a</title>
		<link>http://bymarszal.pl/blog/2011/08/17/sciaganie-calej-strony-na-dysk-z-wykorzystaniem-wget-a/</link>
		<comments>http://bymarszal.pl/blog/2011/08/17/sciaganie-calej-strony-na-dysk-z-wykorzystaniem-wget-a/#comments</comments>
		<pubDate>Wed, 17 Aug 2011 19:57:46 +0000</pubDate>
		<dc:creator>Tomek</dc:creator>
				<category><![CDATA[informatyka]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[wget]]></category>

		<guid isPermaLink="false">http://bymarszal.pl/blog/?p=1161</guid>
		<description><![CDATA[$ wget \ --recursive \ --no-clobber \ --page-requisites \ --html-extension \ --convert-links \ --restrict-file-names=windows \ --domains website.org \ --no-parent \ www.website.org/tutorials/html/ pełny artykuł: Linux Journal]]></description>
			<content:encoded><![CDATA[<blockquote>
<pre>$ wget \
     --recursive \
     --no-clobber \
     --page-requisites \
     --html-extension \
     --convert-links \
     --restrict-file-names=windows \
     --domains website.org \
     --no-parent \
     www.website.org/tutorials/html/</pre>
<div style="text-align:right;">pełny artykuł: <a href="http://www.linuxjournal.com/content/downloading-entire-web-site-wget" title="Linux Journal">Linux Journal</a></div>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://bymarszal.pl/blog/2011/08/17/sciaganie-calej-strony-na-dysk-z-wykorzystaniem-wget-a/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Labeled break and continue</title>
		<link>http://bymarszal.pl/blog/2011/07/03/labeled-break-and-continue/</link>
		<comments>http://bymarszal.pl/blog/2011/07/03/labeled-break-and-continue/#comments</comments>
		<pubDate>Sun, 03 Jul 2011 10:26:33 +0000</pubDate>
		<dc:creator>Tomek</dc:creator>
				<category><![CDATA[informatyka]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[scjp]]></category>

		<guid isPermaLink="false">http://bymarszal.pl/blog/?p=1127</guid>
		<description><![CDATA[Dawno nie było żadnych postów. Ostatnio ucząc się do Javowego certyfikatu natrafiłem na kilka ciekawych, rzadko stosowanych funkcji Javy, o których nie wiedziałem i którymi chciałem się podzielić. Pierwszą z nich jest labeled break. Rzecz polega na tym, że normalne instrukcje break i continue, jeżeli odpalone są w zagnieżdżonych pętlach, działają tylko na tą najbardziej [...]]]></description>
			<content:encoded><![CDATA[<p>Dawno nie było żadnych postów. Ostatnio ucząc się do Javowego certyfikatu natrafiłem na kilka ciekawych, rzadko stosowanych funkcji Javy, o których nie wiedziałem i którymi chciałem się podzielić. Pierwszą z nich jest labeled break.</p>
<p>Rzecz polega na tym, że normalne instrukcje break i continue, jeżeli odpalone są w zagnieżdżonych pętlach, działają tylko na tą najbardziej wewnętrzną. Moim dotychczasowym tradycyjnym podejściem pozwalającym na przeprowadzenie break&#8217;a na pętli zewnętrznej było coś takiego:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"><span class="co1">// szukamy pozycji zmiennej o wartości takiej jak search w tablicy dwuwymiarowej tab</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw4">int</span><span class="br0">&#91;</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="br0">&#93;</span> tab;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw4">int</span> search;</div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// odpowiednia inicjalizacja powyższych zmiennych</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw4">boolean</span> found = <span class="kw2">false</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw4">int</span> foundI;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw4">int</span> foundJ;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li2">
<div class="de2"><span class="kw1">for</span> <span class="br0">&#40;</span><span class="kw4">int</span> i = <span class="nu0">0</span>; i &lt; tab.<span class="me1">length</span>; i++<span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="kw4">int</span> j = <span class="nu0">0</span>; j &lt; tab<span class="br0">&#91;</span>i<span class="br0">&#93;</span>.<span class="me1">length</span>; j++<span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>tab<span class="br0">&#91;</span>i<span class="br0">&#93;</span><span class="br0">&#91;</span>j<span class="br0">&#93;</span> == search<span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foundI = i;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foundJ = j;</div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; found = <span class="kw2">true</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">break</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>found<span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">break</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
</ol>
</div>
<p>Można jednak nadać etykietę pętli zewnętrznej i w ten sposób przeprowadzać wyskakiwanie z dowolnego poziomu zagnieżdżenia pętli (jednak możemy przeprowadzać te skoki tylko wewnątrz pętli, której nadaliśmy etykietę i w pętlach w niej zagnieżdżonych). Powyższy kod z zastosowaniem etykiety mógłby wyglądać następująco:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"><span class="co1">// szukamy pozycji zmiennej o wartości takiej jak search w tablicy dwuwymiarowej tab</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">int</span><span class="br0">&#91;</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="br0">&#93;</span> tab;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">int</span> search;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// odpowiednia inicjalizacja powyższych zmiennych</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">int</span> foundI;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">int</span> foundJ;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">outer:</div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="kw4">int</span> i = <span class="nu0">0</span>; i &lt; tab.<span class="me1">length</span>; i++<span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="kw4">int</span> j = <span class="nu0">0</span>; j &lt; tab<span class="br0">&#91;</span>i<span class="br0">&#93;</span>.<span class="me1">length</span>; j++<span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>tab<span class="br0">&#91;</span>i<span class="br0">&#93;</span><span class="br0">&#91;</span>j<span class="br0">&#93;</span> == search<span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foundI = i;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foundJ = j;</div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">break</span> outer;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
</ol>
</div>
<p>A poniżej przykład zastosowania instrukcji continue bez etykiety:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"><span class="co1">// sprawdzamy, czy zmienna o takiej wartości jak search wystąpi w każdym wierszu tablicy tab</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw4">int</span><span class="br0">&#91;</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="br0">&#93;</span> tab;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw4">int</span> search;</div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// odpowiednia inicjalizacja powyższej zmiennej</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">for</span> <span class="br0">&#40;</span><span class="kw4">int</span> i = <span class="nu0">0</span>; i &lt; tab.<span class="me1">length</span>; i++<span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">boolean</span> found = <span class="kw2">false</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="kw4">int</span> j = <span class="nu0">0</span>; j &lt; tab<span class="br0">&#91;</span>i<span class="br0">&#93;</span>.<span class="me1">length</span>; j++<span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>tab<span class="br0">&#91;</span>i<span class="br0">&#93;</span><span class="br0">&#91;</span>j<span class="br0">&#93;</span> == search<span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3ASystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span class="kw3">System</span></a>.<span class="me1">out</span>.<span class="me1">println</span><span class="br0">&#40;</span><span class="st0">&quot;Wystąpienie w wierszu &quot;</span> + i<span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; found = <span class="kw2">true</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">break</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>!found<span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3ASystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span class="kw3">System</span></a>.<span class="me1">out</span>.<span class="me1">println</span><span class="br0">&#40;</span><span class="st0">&quot;Brak wystąpienia w wierszu &quot;</span> + i<span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
</ol>
</div>
<p>Oraz z etykietą:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"><span class="co1">// sprawdzamy, czy zmienna o takiej wartości jak search wystąpi w każdym wierszu tablicy tab</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">int</span><span class="br0">&#91;</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="br0">&#93;</span> tab;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw4">int</span> search;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="co1">// odpowiednia inicjalizacja powyższej zmiennej</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">outer:</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="kw4">int</span> i = <span class="nu0">0</span>; i &lt; tab.<span class="me1">length</span>; i++<span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="kw4">int</span> j = <span class="nu0">0</span>; j &lt; tab<span class="br0">&#91;</span>i<span class="br0">&#93;</span>.<span class="me1">length</span>; j++<span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>tab<span class="br0">&#91;</span>i<span class="br0">&#93;</span><span class="br0">&#91;</span>j<span class="br0">&#93;</span> == search<span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3ASystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span class="kw3">System</span></a>.<span class="me1">out</span>.<span class="me1">println</span><span class="br0">&#40;</span><span class="st0">&quot;Wystąpienie w wierszu &quot;</span> + i<span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">continue</span> outer;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.google.com/search?hl=en&amp;q=allinurl%3ASystem+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span class="kw3">System</span></a>.<span class="me1">out</span>.<span class="me1">println</span><span class="br0">&#40;</span><span class="st0">&quot;Brak wystąpienia w wierszu &quot;</span> + i<span class="br0">&#41;</span>;</div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
</ol>
</div>
<p>Pomyślnych kodów! :)</p>
]]></content:encoded>
			<wfw:commentRss>http://bymarszal.pl/blog/2011/07/03/labeled-break-and-continue/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ruby 1.9.2 i Rails 3 na Ubuntu 10.10</title>
		<link>http://bymarszal.pl/blog/2011/03/09/ruby-1-9-2-i-rails-3-na-ubuntu-10-10/</link>
		<comments>http://bymarszal.pl/blog/2011/03/09/ruby-1-9-2-i-rails-3-na-ubuntu-10-10/#comments</comments>
		<pubDate>Wed, 09 Mar 2011 18:41:47 +0000</pubDate>
		<dc:creator>Tomek</dc:creator>
				<category><![CDATA[informatyka]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://bymarszal.pl/blog/?p=1078</guid>
		<description><![CDATA[Po kilku nieudanych próbach, udało mi się wreszcie zainstalować Rails 3. Poniżej znalezione przeze mnie rozwiązanie z linkiem do źródła: sudo apt-get install build-essential libssl-dev libreadline-dev zlib1g-dev sqlite3 libsqlite3-dev libxml2 libxml2-dev libxslt1.1 libxslt1-dev wget sudo mkdir -p /opt cd /opt sudo wget ftp://ftp.ruby-lang.org//pub/ruby/1.9/ruby-1.9.2-p180.tar.gz sudo tar xvfz ruby-1.9.2-p180.tar.gz cd ruby-1.9.2-p180 sudo ./configure sudo make sudo make [...]]]></description>
			<content:encoded><![CDATA[<p>Po kilku nieudanych próbach, udało mi się wreszcie zainstalować Rails 3. Poniżej znalezione przeze mnie rozwiązanie z linkiem do źródła:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"><span class="kw2">sudo</span> apt-get <span class="kw2">install</span> build-essential libssl-dev libreadline-dev zlib1g-dev sqlite3 libsqlite3-dev libxml2 libxml2-dev libxslt1<span class="nu0">.1</span> libxslt1-dev <span class="kw2">wget</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">sudo</span> <span class="kw2">mkdir</span> -p /opt</div>
</li>
<li class="li1">
<div class="de1"><span class="kw3">cd</span> /opt</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">sudo</span> <span class="kw2">wget</span> <span class="kw2">ftp</span>://<span class="kw2">ftp</span>.ruby-lang.org//pub/ruby/<span class="nu0">1.9</span>/ruby<span class="nu0">-1.9</span><span class="nu0">.2</span>-p180.<span class="kw2">tar</span>.gz</div>
</li>
<li class="li2">
<div class="de2"><span class="kw2">sudo</span> <span class="kw2">tar</span> xvfz ruby<span class="nu0">-1.9</span><span class="nu0">.2</span>-p180.<span class="kw2">tar</span>.gz</div>
</li>
<li class="li1">
<div class="de1"><span class="kw3">cd</span> ruby<span class="nu0">-1.9</span><span class="nu0">.2</span>-p180</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">sudo</span> ./configure</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">sudo</span> <span class="kw2">make</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">sudo</span> <span class="kw2">make</span> <span class="kw2">install</span></div>
</li>
<li class="li2">
<div class="de2"><span class="kw2">sudo</span> gem update &#8211;system</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">sudo</span> gem <span class="kw2">install</span> rails</div>
</li>
</ol>
</div>
<p><a href="https://gist.github.com/858430">Ruby 1.9.2 + Rails 3 installation in Ubuntu</a></p>
]]></content:encoded>
			<wfw:commentRss>http://bymarszal.pl/blog/2011/03/09/ruby-1-9-2-i-rails-3-na-ubuntu-10-10/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Beware the Bloat Monster</title>
		<link>http://bymarszal.pl/blog/2011/02/28/beware-the-bloat-monster/</link>
		<comments>http://bymarszal.pl/blog/2011/02/28/beware-the-bloat-monster/#comments</comments>
		<pubDate>Mon, 28 Feb 2011 20:49:18 +0000</pubDate>
		<dc:creator>Tomek</dc:creator>
				<category><![CDATA[informatyka]]></category>
		<category><![CDATA[37signals]]></category>
		<category><![CDATA[feature management]]></category>
		<category><![CDATA[myśli]]></category>

		<guid isPermaLink="false">http://bymarszal.pl/blog/?p=1093</guid>
		<description><![CDATA[Beware the Bloat Monster This is one of the key benefits to building web-based software instead of traditional desktop based software. Desktop software makers such as Adobe, Intuit, and Microsoft need to sell you new versions every year. And since they can&#8217;t just sell you the same version, they have to justify the expense by [...]]]></description>
			<content:encoded><![CDATA[<h2><a href="http://gettingreal.37signals.com/ch15_Beware_the_Bloat_Monster.php">Beware the Bloat Monster</a></h2>
<blockquote><p>This is one of the key benefits to building web-based software instead of traditional desktop based software. Desktop software makers such as Adobe, Intuit, and Microsoft need to sell you new versions every year. And since they can&#8217;t just sell you the same version, they have to justify the expense by adding new features. That&#8217;s where the bloat begins.</p>
<p>With web-based software based on the subscription model, people pay a monthly fee to use the service. You don&#8217;t need to keep upselling them by adding more and more and more, you just need to provide an ongoing valuable service.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://bymarszal.pl/blog/2011/02/28/beware-the-bloat-monster/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Yellow Fade Technique</title>
		<link>http://bymarszal.pl/blog/2011/02/27/the-yellow-fade-technique/</link>
		<comments>http://bymarszal.pl/blog/2011/02/27/the-yellow-fade-technique/#comments</comments>
		<pubDate>Sun, 27 Feb 2011 21:33:04 +0000</pubDate>
		<dc:creator>Tomek</dc:creator>
				<category><![CDATA[informatyka]]></category>
		<category><![CDATA[37signals]]></category>
		<category><![CDATA[myśli]]></category>
		<category><![CDATA[usability]]></category>

		<guid isPermaLink="false">http://bymarszal.pl/blog/?p=1086</guid>
		<description><![CDATA[Web Interface Design Tip: The Yellow Fade Technique “Because something is happening here / But you don’t know what it is / Do you, Mister Jones?” - Bob Dylan A lot of web sites &#38; applications make you feel a bit like Mr. Jones. That’s why we’ve pioneered the Yellow Fade Technique (YFT) in Basecamp. [...]]]></description>
			<content:encoded><![CDATA[<h2><a href="http://37signals.com/svn/archives/000558.php">Web Interface Design Tip: The Yellow Fade Technique</a></h2>
<blockquote>
<p>“Because something is happening here / But you don’t know what it is / Do you, Mister Jones?” -	<a href="http://www.bobdylan.com/songs/thinman.html">Bob Dylan</a></p>
<p>A lot of web sites &amp; applications make you feel a bit like Mr. Jones.</p>
<p>That’s why we’ve pioneered the Yellow Fade Technique (YFT) in <a class="external" href="http://www.basecampHQ.com">Basecamp</a>. It’s a nifty way to subtly spotlight a recently changed area on a page.</p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://bymarszal.pl/blog/2011/02/27/the-yellow-fade-technique/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Interface First &amp; Three State Solution</title>
		<link>http://bymarszal.pl/blog/2011/02/27/interface-first/</link>
		<comments>http://bymarszal.pl/blog/2011/02/27/interface-first/#comments</comments>
		<pubDate>Sun, 27 Feb 2011 09:21:37 +0000</pubDate>
		<dc:creator>Tomek</dc:creator>
				<category><![CDATA[informatyka]]></category>
		<category><![CDATA[37signals]]></category>
		<category><![CDATA[myśli]]></category>
		<category><![CDATA[usability]]></category>

		<guid isPermaLink="false">http://bymarszal.pl/blog/?p=1070</guid>
		<description><![CDATA[Jak widać, ostatnio jestem pod dużym wpływem 37signals :) Interface First Design the interface before you start programming Too many apps start with a program-first mentality. That&#8217;s a bad idea. Programming is the heaviest component of building an app, meaning it&#8217;s the most expensive and hardest to change. Instead, start by designing first. Three State [...]]]></description>
			<content:encoded><![CDATA[<p><em>Jak widać, ostatnio jestem pod dużym wpływem 37signals :)</em></p>
<h2><a href="http://gettingreal.37signals.com/ch09_Interface_First.php">Interface First</a></h2>
<blockquote><h3>Design the interface before you start programming</h3>
<p>Too many apps start with a program-first mentality. That&#8217;s a bad idea. Programming is the heaviest component of building an app, meaning it&#8217;s the most expensive and hardest to change. Instead, start by designing first.</p></blockquote>
<h2><a href="http://gettingreal.37signals.com/ch09_Three_State_Solution.php">Three State Solution</a></h2>
<blockquote><p>For each screen, you need to consider three possible states:</p>
<ul>
<li><strong>Regular</strong><br />(&hellip;)</li>
<li><strong>Blank</strong><br />(&hellip;)</li>
<li><strong>Error</strong><br />(&hellip;)</li>
</ul>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://bymarszal.pl/blog/2011/02/27/interface-first/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>It Just Doesn&#8217;t Matter</title>
		<link>http://bymarszal.pl/blog/2011/02/26/it-just-doesnt-matter/</link>
		<comments>http://bymarszal.pl/blog/2011/02/26/it-just-doesnt-matter/#comments</comments>
		<pubDate>Sat, 26 Feb 2011 08:21:58 +0000</pubDate>
		<dc:creator>Tomek</dc:creator>
				<category><![CDATA[informatyka]]></category>
		<category><![CDATA[37signals]]></category>
		<category><![CDATA[feature management]]></category>
		<category><![CDATA[myśli]]></category>

		<guid isPermaLink="false">http://bymarszal.pl/blog/?p=1065</guid>
		<description><![CDATA[It Just Doesn&#8217;t Matter Most of the time you spend is wasted on things that just don&#8217;t matter. If you can cut out the work and thinking that just don&#8217;t matter, you&#8217;ll achieve productivity you&#8217;ve never imagined.]]></description>
			<content:encoded><![CDATA[<h2><a href="http://gettingreal.37signals.com/ch05_It_Just_Doesnt_Matter.php">It Just Doesn&#8217;t Matter</a></h2>
<blockquote><p>Most of the time you spend is wasted on things that just don&#8217;t matter. If you can cut out the work and thinking that just don&#8217;t matter, you&#8217;ll achieve productivity you&#8217;ve never imagined.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://bymarszal.pl/blog/2011/02/26/it-just-doesnt-matter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Waterfall Comfort Blanket</title>
		<link>http://bymarszal.pl/blog/2011/02/09/the-waterfall-comfort-blanket/</link>
		<comments>http://bymarszal.pl/blog/2011/02/09/the-waterfall-comfort-blanket/#comments</comments>
		<pubDate>Wed, 09 Feb 2011 09:26:13 +0000</pubDate>
		<dc:creator>Tomek</dc:creator>
				<category><![CDATA[informatyka]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[myśli]]></category>
		<category><![CDATA[waterfall]]></category>

		<guid isPermaLink="false">http://bymarszal.pl/blog/?p=1043</guid>
		<description><![CDATA[The Waterfall Comfort Blanket Commercial Alignment I have often heard it said that an iterative or agile approach isn’t feasible because of the constraints imposed upon a project by delivery contracts. It’s true that this is a common issue for software delivery organisations, but these constraints have typically come about from a breakdown of trust [...]]]></description>
			<content:encoded><![CDATA[<h2><a href="http://agile.dzone.com/news/waterfall-comfort-blanket" title="The Waterfall Comfort Blanket">The Waterfall Comfort Blanket</a></h2>
<blockquote><h3>Commercial Alignment</h3>
<p>I have often heard it said that an iterative or agile approach isn’t feasible because of the constraints imposed upon a project by delivery contracts. It’s true that this is a common issue for software delivery organisations, but these constraints have typically come about from a breakdown of trust between the delivery team and its customer, typically resulting in a scenario such as:</p>
<blockquote><p>The customer has little confidence in the delivery team and demands that they provide a fixed-price for the delivery of the solution. In reaction to this fixed-price constraint, the delivery team requests that the customer defines everything they need in detail before a price will be given. The customer, knowing that this is their one chance to specify what they want or risk severe change control later on, provides the details of everything they might ever want. The delivery team ties the customer to this specification, unless they pay extra to change it, resulting in a solution that provides functions that are either never used or no-longer need.</p></blockquote>
<p>This classic waterfall scenario is typically driven by an old-school procurement mindset that wants to know exactly what they are going to get for their money, even if the business can’t say what it is that they will actually need.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://bymarszal.pl/blog/2011/02/09/the-waterfall-comfort-blanket/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

