<?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>Jakubas Piotr - IT Blog &#187; problem</title>
	<atom:link href="http://jakubas.net.pl/tag/problem/feed" rel="self" type="application/rss+xml" />
	<link>http://jakubas.net.pl</link>
	<description>Informatyka stosowana</description>
	<lastBuildDate>Thu, 05 Jan 2012 00:17:10 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Problem z widgetem Like Box &#8211; Facebook</title>
		<link>http://jakubas.net.pl/ogolna/problem-z-widgetem-like-box-facebook/860</link>
		<comments>http://jakubas.net.pl/ogolna/problem-z-widgetem-like-box-facebook/860#comments</comments>
		<pubDate>Wed, 23 Mar 2011 06:50:44 +0000</pubDate>
		<dc:creator>Piotr</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Ogólna]]></category>
		<category><![CDATA[błąd]]></category>
		<category><![CDATA[czerwony]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[facebook like box]]></category>
		<category><![CDATA[Facebook wizytówka strony]]></category>
		<category><![CDATA[Fun Page]]></category>
		<category><![CDATA[komunikat błędu]]></category>
		<category><![CDATA[Like Box]]></category>
		<category><![CDATA[ograniczenia dostępu]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[problem z wyświetlaniem Like Box]]></category>
		<category><![CDATA[The page you are trying to access is restricted or unavailable]]></category>
		<category><![CDATA[Zarządzanie uprawnieniami]]></category>

		<guid isPermaLink="false">http://jakubas.net.pl/?p=860</guid>
		<description><![CDATA[Jakiś czas temu na jednej ze stron pojawił się problem z widgetem Like Box udostępnianym przez Facebook. Problem dość nietypowy ponieważ w miejscu gdzie zazwyczaj widniały znajome z Facebooka twarze pojawił się napis "The page you are trying to access is restricted or unavailable" ( na groźnie wyglądającym czerwonym tle ). Problem oczywiście był niespodziewany, Like Box działał na stronie już dłuższy czas i ani on ani Fun Page nie był zmieniany. <p>Artykuł pochodzi z: <a href="http://jakubas.net.pl/ogolna/problem-z-widgetem-like-box-facebook/860">Problem z widgetem Like Box &#8211; Facebook</a> , <a title="Piotr Jakubas" href="http://jakubas.net.pl">Jakubas Piotr - IT Blog</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Jakiś czas temu na jednej ze stron pojawił się problem z widgetem Like Box udostępnianym przez Facebook. Problem dość nietypowy ponieważ w miejscu gdzie zazwyczaj widniały znajome z Facebooka twarze pojawił się napis &#8222;The page you are trying to access is restricted or unavailable&#8221; ( na groźnie wyglądającym czerwonym tle ). Problem oczywiście był niespodziewany, Like Box działał na stronie już dłuższy czas i ani on ani Fun Page nie był zmieniany.</p>
<div id="attachment_861" class="wp-caption aligncenter" style="width: 310px"><a href="http://jakubas.net.pl/wp-content/uploads/2011/03/The-page-you-are-trying-to-access-is-restricted-or-unavailable.jpg" rel="lightbox[this_page] nofollow" title=""><img class="size-medium wp-image-861" title="The page you are trying to access is restricted or unavailable" src="http://jakubas.net.pl/wp-content/uploads/2011/03/The-page-you-are-trying-to-access-is-restricted-or-unavailable-300x74.jpg" alt="The page you are trying to access is restricted or unavailable" width="300" height="74" /></a><p class="wp-caption-text">Informacja w miejscu / zamiast &quot;Like Box&quot;</p></div>
<p style="text-align: left;">Na forum developerów facebookowych aplikacji nie udało mi się znaleźć pomocnych informacji, to co znalazłem wyjaśniało ogólną przyczynę &#8211; sytuację w której zwracany jest taki komunikat błędu. Komunikat o takim błędzie powinien być zwracany jeżeli Fun Page powiązany z widgetem Like Box ma restrykcyjne ograniczenia wiekowe lub ograniczenia co do kraju w którym można oglądać dany Fun Page. Ustawienia te można zmienić w &#8222;Edytuj stronę -&gt;  Zarządzaj uprawnieniami&#8221;.<span id="more-860"></span></p>
<div id="attachment_862" class="wp-caption aligncenter" style="width: 310px"><a href="http://jakubas.net.pl/wp-content/uploads/2011/03/Facebook_Fun_Page_zarzadzaj_uprawnieniami.jpg" rel="lightbox[this_page] nofollow" title="Facebook Fun Page - Zarządzaj uprawnieniami"><img class="size-medium wp-image-862" title="Facebook Fun Page - Zarządzaj uprawnieniami" src="http://jakubas.net.pl/wp-content/uploads/2011/03/Facebook_Fun_Page_zarzadzaj_uprawnieniami-300x183.jpg" alt="Facebook Fun Page - Zarządzaj uprawnieniami" width="300" height="183" /></a><p class="wp-caption-text">Facebook Fun Page - Zarządzaj uprawnieniami</p></div>
<p style="text-align: left;">Po przeglądnięciu zawartości tej zakładki okazało się, że i ta strona ma jak najbardziej poprawne ( standardowe ) ustawienia. Postanowiłem jednak zapisać je ponownie i odczekać trochę czasu. Nie jestem w 100% przekonany, że było to pomocne ale po paru godzinach ( około 4 h ) sytuacja wróciła do normy ( Like Box zaczął działać jak dawniej ).</p>
<p style="text-align: left;">PS: Dla niecierpliwych polecam tymczasową podmianę Like Box&#8217;a na wizytówkę strony. Nie wygląda ona zachęcająco ale zawsze to lepsze niż czerwony bloczek błędu.</p>
<p>Artykuł pochodzi z: <a href="http://jakubas.net.pl/ogolna/problem-z-widgetem-like-box-facebook/860">Problem z widgetem Like Box &#8211; Facebook</a> , <a title="Piotr Jakubas" href="http://jakubas.net.pl">Jakubas Piotr - IT Blog</a></p>
]]></content:encoded>
			<wfw:commentRss>http://jakubas.net.pl/ogolna/problem-z-widgetem-like-box-facebook/860/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[Rozwiązany] WordPress MultiSite + Domain Mapping &#8211; wolne działanie</title>
		<link>http://jakubas.net.pl/ogolna/rozwiazany-wordpress-multisite-domain-mapping-wolne-dzialanie/774</link>
		<comments>http://jakubas.net.pl/ogolna/rozwiazany-wordpress-multisite-domain-mapping-wolne-dzialanie/774#comments</comments>
		<pubDate>Wed, 10 Nov 2010 17:15:23 +0000</pubDate>
		<dc:creator>Piotr</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Ogólna]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[cachowanie]]></category>
		<category><![CDATA[czas ładowania]]></category>
		<category><![CDATA[Domain Mapping]]></category>
		<category><![CDATA[domain_mapping.php]]></category>
		<category><![CDATA[mapowanie]]></category>
		<category><![CDATA[MultiSite]]></category>
		<category><![CDATA[optymalizacja]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[remote_login_js_loader]]></category>
		<category><![CDATA[rozwiązanie]]></category>
		<category><![CDATA[szybkość]]></category>
		<category><![CDATA[wiele stron]]></category>
		<category><![CDATA[WordPress MU Domain Mapping]]></category>
		<category><![CDATA[WP Super Cache]]></category>
		<category><![CDATA[wtyczki]]></category>

		<guid isPermaLink="false">http://jakubas.net.pl/?p=774</guid>
		<description><![CDATA[Od dłuższego czasu mam przyjemność prowadzenia paru stron z pomocą WordPress MultiSite. Niestety pomimo optymalizacji kodu / grafiki strony działające na silniku WordPress w wersji MultiSite, ładowały się wolniej ( około 1900 ms - całość strony ) od tych działających na standardowych instalacjach ( 800 ms ). Początkowo jednak nie przejmowałem się tym zbytnio, zrzucając winę na obciążony już znacznie serwer.<p>Artykuł pochodzi z: <a href="http://jakubas.net.pl/ogolna/rozwiazany-wordpress-multisite-domain-mapping-wolne-dzialanie/774">[Rozwiązany] WordPress MultiSite + Domain Mapping &#8211; wolne działanie</a> , <a title="Piotr Jakubas" href="http://jakubas.net.pl">Jakubas Piotr - IT Blog</a></p>
]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-medium wp-image-778" title="Rozwiązanie" src="http://jakubas.net.pl/wp-content/uploads/2010/11/600672_31934529-300x225.jpg" alt="Rozwiązanie" width="220" height="165" />Od dłuższego czasu mam przyjemność prowadzenia paru stron z pomocą <strong>WordPress MultiSite</strong>. Niestety pomimo optymalizacji kodu / grafiki strony działające na silniku WordPress w wersji MultiSite, ładowały się wolniej ( około 1900 ms &#8211; całość strony ) od tych działających na standardowych instalacjach ( 800 ms ). Początkowo jednak nie przejmowałem się tym zbytnio, zrzucając winę na obciążony już znacznie serwer. Byłem też  przekonany, że pokazywany na wykresie średni czas pobierania strony ( Google Narzędzia dla Webmasterów ) ulegnie znaczniej zmianie po <strong>aktywowaniu wtyczki WP Super Cache</strong>. Niestety nawet precyzyjne ustawienie tego dodatku ( z zaznaczeniem opcji wspierania pluginu WordPress MU Domain Mapping ) nie przyniosło dobrych rezultatów.</p>
<p>Pierwsza część planu, <strong>uruchomienie cachowania, nie przyniosła efektów.</strong> Postanowiłem więc trochę dokładniej sprawdzić przyczyny i zlokalizować wolno działający kawałek kodu. Okazało się, że w pewnej konfiguracji wtyczek oraz ich ustawień dzieją się dziwne rzeczy.</p>
<p><span id="more-774"></span></p>
<p><strong>Okoliczności:</strong></p>
<p>Zainstalowane i uruchomione wtyczki:</p>
<ul>
<li>WordPress MU Domain Mapping</li>
<li>WP Super Cache ( z opcją wspierania WordPress MU Domain Mapping )</li>
</ul>
<p>Dodatkowo:</p>
<ul>
<li>Niezalogowany użytkownik odwiedzający stronę w domenie innej niż główna domena sieci stron. Czyli najważniejszy przypadek <img src='http://jakubas.net.pl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </li>
</ul>
<p><strong>Dziwne zachowanie:</strong></p>
<ul>
<li>Wysyłanie zapytania do głównej domeny sieci stron ( czas około 1100 ms ) . Zapytanie zakończone oczywiście błędem.</li>
</ul>
<p><strong>Przyczyny: </strong></p>
<ul>
<li>Po długich poszukiwaniach winowajcą okazał się dodatek <strong>WordPress MU Domain Mapping</strong>, który wysyłał zapytanie do domeny głównej sieci. Zapytanie to miało na celu <strong>zalogowanie do wszystkich stron sieci jednocześnie</strong>. Oczywiście wspomniany plugin posiada możliwość skonfigurowania, jednak <strong>w połączeniu z WP Super Cache</strong> ten punkt konfiguracji zdaje się być pomijany.</li>
</ul>
<p><strong>Rozwiązanie:</strong></p>
<ul>
<li>Wyłączenie funkcji / kodu odpowiedzialnej za błędne zapytanie.</li>
</ul>
<p><strong>Jak: </strong></p>
<ul>
<li>Lokalizujemy plik: <strong>/wp-content/mu-plugins/domain_mapping.php</strong></li>
<li>W znalezionym pliku szukamy <strong>&#8222;function remote_login_js_loader&#8221;</strong>.</li>
<li>I teraz możemy <strong>wykomentować </strong>zawartość funkcji ( lub tylko część odpowiedzialną za wypisywanie &#8211; echo zapytania ). Druga opcja to zlokalizowanie wszystkich wywołań tej funkcji i ich wycofanie.</li>
</ul>
<p>Po takich zabiegach strony działają normalnie. Teraz już tylko pozostaje cieszyć się zaletami WordPress MS i szukać sposobu przeniesienia innych stron na WP MS <img src='http://jakubas.net.pl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Artykuł pochodzi z: <a href="http://jakubas.net.pl/ogolna/rozwiazany-wordpress-multisite-domain-mapping-wolne-dzialanie/774">[Rozwiązany] WordPress MultiSite + Domain Mapping &#8211; wolne działanie</a> , <a title="Piotr Jakubas" href="http://jakubas.net.pl">Jakubas Piotr - IT Blog</a></p>
]]></content:encoded>
			<wfw:commentRss>http://jakubas.net.pl/ogolna/rozwiazany-wordpress-multisite-domain-mapping-wolne-dzialanie/774/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Problem z instalacja WordPress na serwerach Strefa.pl</title>
		<link>http://jakubas.net.pl/ogolna/instalacja-wordpress-serwer-strefa-pl/459</link>
		<comments>http://jakubas.net.pl/ogolna/instalacja-wordpress-serwer-strefa-pl/459#comments</comments>
		<pubDate>Thu, 29 Jul 2010 06:00:45 +0000</pubDate>
		<dc:creator>Piotr</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Ogólna]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[aktualizacja]]></category>
		<category><![CDATA[archiwalne wersje WordPress]]></category>
		<category><![CDATA[hosting]]></category>
		<category><![CDATA[instalacja]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[rozwiązanie]]></category>
		<category><![CDATA[serwer]]></category>
		<category><![CDATA[stare wersje WordPress]]></category>
		<category><![CDATA[Strefa.pl]]></category>
		<category><![CDATA[wymagania WordPress]]></category>

		<guid isPermaLink="false">http://jakubas.net.pl/?p=459</guid>
		<description><![CDATA[Dla wszystkich, którzy posiadają wykupiony hosting na serwerach Strefa.pl a którzy chcieli by zainstalować ( lub zaktualizować ) tam najnowszą wersję WordPress  'a mam złe wiadomości. Po ostatnich próbach zaktualizowania jednej ze stron, która znajduje się właśnie na serwerach Strefy.pl okazało się, że serwer nie spełnia wymagań. <p>Artykuł pochodzi z: <a href="http://jakubas.net.pl/ogolna/instalacja-wordpress-serwer-strefa-pl/459">Problem z instalacja WordPress na serwerach Strefa.pl</a> , <a title="Piotr Jakubas" href="http://jakubas.net.pl">Jakubas Piotr - IT Blog</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Dla wszystkich, którzy posiadają wykupiony <strong>hosting na serwerach Strefa.pl</strong> a którzy chcieli by zainstalować ( lub zaktualizować ) tam <strong>najnowszą wersję WordPress</strong> &#8216;a mam złe wiadomości. Po ostatnich próbach zaktualizowania jednej ze stron, która znajduje się właśnie na serwerach Strefy.pl okazało się, że serwer <strong>nie spełnia wymagań</strong>. Dokładniej, WordPress do poprawnego działania potrzebuje PHP 4.3 i MySQL 4.1.2 ( a na Strefa.pl jest PHP 4.2.2 i MySQL 5.0.72 <span style="color: #000000;"><span style="font-family: Bitstream Vera Serif; font-size: small;">). </span></span><strong>Ostatnia działająca tam wersja to WordPress 2.8.4</strong>, do pobrania z <a rel="nofollow" href="http://wordpress.org/download/release-archive/">archiwum WordPress</a>. Dość nieprzyjemna informacja, szczególnie jeżeli dowiadujemy się o tym w momencie próby aktualizacji silnika naszej strony <img src='http://jakubas.net.pl/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<p><span id="more-459"></span></p>
<p>W plikach pomocy udało mi się znaleźć coś <a rel="nofollow" href="http://www.strefa.pl/pomoc/?cat=263&amp;inf=740">lakoniczną informację</a> o możliwości &#8222;przejścia&#8221; na nowszą wersję serwera, niestety opisany sposób rozbiegał się z prawdą ( w moim przypadku ). Domyślnie też w nowo wykupywanych hostingach wersja PHP jak i wersja baz danych jest jedną z najaktualniejszych. Pomimo tych informacji pozostaje pewien niesmak, powodowany <strong>koniecznością upominania się o swoje</strong>.</p>
<p>Artykuł pochodzi z: <a href="http://jakubas.net.pl/ogolna/instalacja-wordpress-serwer-strefa-pl/459">Problem z instalacja WordPress na serwerach Strefa.pl</a> , <a title="Piotr Jakubas" href="http://jakubas.net.pl">Jakubas Piotr - IT Blog</a></p>
]]></content:encoded>
			<wfw:commentRss>http://jakubas.net.pl/ogolna/instalacja-wordpress-serwer-strefa-pl/459/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Przecinek w nazwie kolumny a red cross error na wykresie</title>
		<link>http://jakubas.net.pl/ogolna/przecinek-w-nazwie-kolumny-a-red-cross-error-na-wykresie/479</link>
		<comments>http://jakubas.net.pl/ogolna/przecinek-w-nazwie-kolumny-a-red-cross-error-na-wykresie/479#comments</comments>
		<pubDate>Thu, 27 May 2010 09:22:01 +0000</pubDate>
		<dc:creator>Piotr</dc:creator>
				<category><![CDATA[C Sharp]]></category>
		<category><![CDATA[Ogólna]]></category>
		<category><![CDATA[Programowanie]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[chart]]></category>
		<category><![CDATA[Charting]]></category>
		<category><![CDATA[czerwony krzyż]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[red cross]]></category>
		<category><![CDATA[rozwiązanie]]></category>
		<category><![CDATA[wykresy]]></category>

		<guid isPermaLink="false">http://jakubas.net.pl/?p=479</guid>
		<description><![CDATA[Niedawno miałem nieprzyjemność borykania się z problemem "czerwonego krzyża" wyświetlanego na wykresach ( Chart , System.Windows.Forms.DataVisualization.Charting ). Błąd ten pojawia się m.in. przy problemach z przetworzeniem danych wejściowych. W moim przypadku przyczyną problemów były przecinki w nazwach kolumn obiektu DataTable, który to ustawiałem jako DataSource dla wykresu. <p>Artykuł pochodzi z: <a href="http://jakubas.net.pl/ogolna/przecinek-w-nazwie-kolumny-a-red-cross-error-na-wykresie/479">Przecinek w nazwie kolumny a red cross error na wykresie</a> , <a title="Piotr Jakubas" href="http://jakubas.net.pl">Jakubas Piotr - IT Blog</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Niedawno miałem nieprzyjemność borykania się z problemem<strong> &#8222;czerwonego krzyża&#8221;</strong> wyświetlanego na <a rel="nofollow" href="http://code.msdn.microsoft.com/mschart">wykresach ( Chart , System.Windows.Forms.DataVisualization.Charting ).</a> Błąd ten pojawia się m.in. przy problemach z przetworzeniem danych wejściowych. W moim przypadku<strong> przyczyną problemów</strong> były <strong>przecinki w nazwach kolumn obiektu DataTable</strong>, który to ustawiałem jako <strong>DataSource </strong>dla wykresu.</p>
<p>Dokładnie: Wartości w nazwach kolumn, które znajdowały się po przecinku były &#8222;ignorowane&#8221; w DataSource. Skutkiem tego nazwy kolumn w DataSource nie zgadzały się z tymi w DataTable, w moim przypadku parę kolumn miało tę samą nazwę ( co jest oczywistym błędem).</p>
<div id="attachment_485" class="wp-caption aligncenter" style="width: 310px"><a href="http://jakubas.net.pl/wp-content/uploads/2010/05/red_cross_error_csharp_chart.png" rel="lightbox[this_page] nofollow" title=""><img class="size-medium wp-image-485" title="red_cross_error_csharp_chart" src="http://jakubas.net.pl/wp-content/uploads/2010/05/red_cross_error_csharp_chart-300x200.png" alt="red cross error csharp chart" width="300" height="200" /></a><p class="wp-caption-text">:)</p></div>
<p>Artykuł pochodzi z: <a href="http://jakubas.net.pl/ogolna/przecinek-w-nazwie-kolumny-a-red-cross-error-na-wykresie/479">Przecinek w nazwie kolumny a red cross error na wykresie</a> , <a title="Piotr Jakubas" href="http://jakubas.net.pl">Jakubas Piotr - IT Blog</a></p>
]]></content:encoded>
			<wfw:commentRss>http://jakubas.net.pl/ogolna/przecinek-w-nazwie-kolumny-a-red-cross-error-na-wykresie/479/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Problem z uruchomieniem aplikacji skompilowanej za pomocą Visial Studio 2008</title>
		<link>http://jakubas.net.pl/ogolna/problem-z-uruchomieniem-skompilowanej-visial-studio-2008/368</link>
		<comments>http://jakubas.net.pl/ogolna/problem-z-uruchomieniem-skompilowanej-visial-studio-2008/368#comments</comments>
		<pubDate>Wed, 10 Mar 2010 23:42:40 +0000</pubDate>
		<dc:creator>Piotr</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Ogólna]]></category>
		<category><![CDATA[0xc0150002]]></category>
		<category><![CDATA[biblioteki]]></category>
		<category><![CDATA[błąd]]></category>
		<category><![CDATA[cpp]]></category>
		<category><![CDATA[Debug]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[kompilacja]]></category>
		<category><![CDATA[linkowanie]]></category>
		<category><![CDATA[opencv]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[Release]]></category>
		<category><![CDATA[rozwiązanie]]></category>
		<category><![CDATA[Visual Studio 2008]]></category>
		<category><![CDATA[VS]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://jakubas.net.pl/?p=368</guid>
		<description><![CDATA[ Po skompilowaniu programu do wersji Release nie chciał on działać na innych komputerach. Błąd:
"The application failed to initialize properly  (0xc0150002). Click on OK to terminate the  application"<p>Artykuł pochodzi z: <a href="http://jakubas.net.pl/ogolna/problem-z-uruchomieniem-skompilowanej-visial-studio-2008/368">Problem z uruchomieniem aplikacji skompilowanej za pomocą Visial Studio 2008</a> , <a title="Piotr Jakubas" href="http://jakubas.net.pl">Jakubas Piotr - IT Blog</a></p>
]]></description>
			<content:encoded><![CDATA[<p><code></code>Jakiś czas temu pracowaliśmy nad <a rel="nofollow" href="http://jakubas.net.pl/projekty/projekty-naukowe/gra-pong-sterowana-kamera-opencv-hdm">aplikacją wykorzystującą bibliotekę OpenCV do sterowania grą Pong za pomocą kamery</a>. Cała aplikacja tworzona była w środowisku<strong> Visual Studio 2008</strong>. Po skompilowaniu działającego programu do wersji Release nie chciał on działać na innych komputerach ( z tym samym systemem operacyjnym ). Natychmiast po uruchomieniu wyświetlany był komunikat błędu:</p>
<pre>"The application failed to initialize properly  (<strong>0xc0150002</strong>). Click <strong>on</strong> OK to terminate the  application"</pre>
<p>Rozwiązanie błędu było tak proste, że aż wstyd o nim pisać <img src='http://jakubas.net.pl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Okazało się bowiem, że w czasie kompilowania linkowaliśmy biblioteki OpenCV w wersji Debug. Wystarczyło tylko zmienić linkowane biblioteki na odpowiednia wersję alby problem znikł.</p>
<p>Artykuł pochodzi z: <a href="http://jakubas.net.pl/ogolna/problem-z-uruchomieniem-skompilowanej-visial-studio-2008/368">Problem z uruchomieniem aplikacji skompilowanej za pomocą Visial Studio 2008</a> , <a title="Piotr Jakubas" href="http://jakubas.net.pl">Jakubas Piotr - IT Blog</a></p>
]]></content:encoded>
			<wfw:commentRss>http://jakubas.net.pl/ogolna/problem-z-uruchomieniem-skompilowanej-visial-studio-2008/368/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rozwiązanie problemu z SI CAPTCHA Anti-Spam</title>
		<link>http://jakubas.net.pl/internet/rozwiazanie-problemu-z-si-captcha-anti-spam/308</link>
		<comments>http://jakubas.net.pl/internet/rozwiazanie-problemu-z-si-captcha-anti-spam/308#comments</comments>
		<pubDate>Mon, 22 Feb 2010 21:43:50 +0000</pubDate>
		<dc:creator>Piotr</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[captcha]]></category>
		<category><![CDATA[dodatki]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[komentarze]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[rozwiązanie]]></category>
		<category><![CDATA[SI CAPTCHA Anti-Spam]]></category>
		<category><![CDATA[spam]]></category>
		<category><![CDATA[URL]]></category>
		<category><![CDATA[wp]]></category>
		<category><![CDATA[wtyczki]]></category>

		<guid isPermaLink="false">http://jakubas.net.pl/?p=308</guid>
		<description><![CDATA[Rozwiązanie problemu z SI CAPTCHA Anti-Spam<p>Artykuł pochodzi z: <a href="http://jakubas.net.pl/internet/rozwiazanie-problemu-z-si-captcha-anti-spam/308">Rozwiązanie problemu z SI CAPTCHA Anti-Spam</a> , <a title="Piotr Jakubas" href="http://jakubas.net.pl">Jakubas Piotr - IT Blog</a></p>
]]></description>
			<content:encoded><![CDATA[<p><span class="da"></span> Błąd <strong>SI CAPTCHA Anti-Spam</strong> a może mój? Tak czy inaczej <strong>rozwiązywałem</strong> dziś <strong>problem</strong> z dodatkiem do WordPress SI CAPTCHA Anti-Spam. Na swojej stronie w czasie próby wysłania poprawnego komentarza ( z kodem CAPTCHA ) otrzymywałem błąd:</p>
<pre>ERROR: Could not read CAPTCHA cookie. Make sure you have cookies
enabled and not blocking in your web browser settings.
Or another plugin  is conflicting.</pre>
<p>Wyruszyłem więc na poszukiwanie przyczyny błędu. Nie znalazłem niestety rozwiązania w <a rel="nofollow" href="http://wordpress.org/extend/plugins/si-captcha-for-wordpress/faq/">FAQ</a> wtyczki oraz na <a rel="nofollow" href="http://wordpress.org/support/topic/304947">forum WordPress</a>, nie pomogło też wyłączenie wszystkich innych dodatków. Po przeanalizowaniu kodu pluginu okazało się, że przytoczony <strong>komunikat błędu</strong> może dotyczyć także <strong>problemów z sesją</strong>.</p>
<p><strong>Przyczyna błędu:</strong></p>
<p><strong>Różne adresy</strong> blogu w <em>&#8222;Ustawieniach -&gt; Ogólne&#8221;</em> (  <em>&#8222;Adres URL WordPressa&#8221;</em> i <em>&#8222;Adres URL blogu&#8221; </em>). Sesja była tworzona dla adresu <em>&#8222;Adres URL blogu&#8221;</em> a <strong>formularz komentarzy</strong> przesyłany był pod <em>&#8222;Adres URL WordPressa&#8221;</em>.</p>
<p><strong>Rozwiązanie:</strong></p>
<p><strong><span id="more-308"></span><br />
</strong></p>
<p><strong>1.</strong> <strong>Zmiana atrybutu action formularza</strong> komentarzy, tak aby zawierał URL naszej strony głównej. Kod formularza znajduje się w katalogu <em>&#8222;wp-content/themes/ nasz szablon /&#8221;</em> prawdopodobnie w pliku <em>&#8222;comments.php&#8221;</em>.</p>
<p><strong>2.</strong> Wprowadzenie dwóch<strong> jednakowych adresów</strong> w panelu administracyjnym <em>&#8222;Ustawieniach -&gt; Ogólne&#8221;</em> ( <em> &#8222;Adres URL WordPressa&#8221;</em> i<em> &#8222;Adres URL  blogu&#8221; </em>).</p>
<p>Artykuł pochodzi z: <a href="http://jakubas.net.pl/internet/rozwiazanie-problemu-z-si-captcha-anti-spam/308">Rozwiązanie problemu z SI CAPTCHA Anti-Spam</a> , <a title="Piotr Jakubas" href="http://jakubas.net.pl">Jakubas Piotr - IT Blog</a></p>
]]></content:encoded>
			<wfw:commentRss>http://jakubas.net.pl/internet/rozwiazanie-problemu-z-si-captcha-anti-spam/308/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eclipse + Google App Engine + JavaEE + JSP = problem</title>
		<link>http://jakubas.net.pl/ogolna/eclipse-google-app-engine-javaee-jsp-problem/278</link>
		<comments>http://jakubas.net.pl/ogolna/eclipse-google-app-engine-javaee-jsp-problem/278#comments</comments>
		<pubDate>Fri, 12 Feb 2010 21:36:11 +0000</pubDate>
		<dc:creator>Piotr</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Ogólna]]></category>
		<category><![CDATA[app engine]]></category>
		<category><![CDATA[błąd]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[file]]></category>
		<category><![CDATA[google app engine]]></category>
		<category><![CDATA[Google App SDK]]></category>
		<category><![CDATA[google appengine]]></category>
		<category><![CDATA[IRE]]></category>
		<category><![CDATA[Java Development Kit]]></category>
		<category><![CDATA[Java Runtime Environment]]></category>
		<category><![CDATA[Java SE 6 Runtime Environment]]></category>
		<category><![CDATA[JavaEE]]></category>
		<category><![CDATA[JavaServer Pages]]></category>
		<category><![CDATA[JDK]]></category>
		<category><![CDATA[JSP]]></category>
		<category><![CDATA[JSPs]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[rozwiązanie]]></category>
		<category><![CDATA[technologia]]></category>
		<category><![CDATA[war]]></category>
		<category><![CDATA[zmiana]]></category>

		<guid isPermaLink="false">http://jakubas.net.pl/?p=278</guid>
		<description><![CDATA[Zachęcony pierwszymi sukcesami w poznawaniu JavaEE, które opisywałem w artykule "Pierwsze kroki z Google AppEngine", postanowiłem przejść do zapoznania się z technologią JSPs.<p>Artykuł pochodzi z: <a href="http://jakubas.net.pl/ogolna/eclipse-google-app-engine-javaee-jsp-problem/278">Eclipse + Google App Engine + JavaEE + JSP = problem</a> , <a title="Piotr Jakubas" href="http://jakubas.net.pl">Jakubas Piotr - IT Blog</a></p>
]]></description>
			<content:encoded><![CDATA[<p> Czyli moje pierwsze kroki z <a rel="nofollow" href="http://pl.wikipedia.org/wiki/JavaServer_Pages" target="_blank">JSPs</a> pod Eclipse &#8216;m <img src='http://jakubas.net.pl/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Zachęcony pierwszymi sukcesami w poznawaniu nowych technologi, które opisywałem w artykule <a rel="nofollow" href="http://jakubas.net.pl/internet/pierwsze-kroki-z-google-appengine/242">Pierwsze kroki z Google App Engine</a>, postanowiłem przejść do zapoznania się z technologią <strong>JSPs</strong>. Podążając za namowami <a rel="nofollow" href="http://code.google.com/intl/pl/appengine/docs/java/gettingstarted/usingjsps.html">tutoriala Google App</a>, stworzyłem w katalogu <strong><em>war</em></strong> plik<em> main.<strong>jsp</strong></em>. Plik został natychmiast zaznaczony przez Eclipse jako &#8222;zawierający błąd&#8221;</p>
<p><br class="spacer_" /></p>
<p style="text-align: center;"><a href="http://jakubas.net.pl/wp-content/uploads/2010/02/eclipse-jsp-file-error.png" rel="lightbox[this_page] nofollow" title=""><img class="size-full wp-image-280 aligncenter" title="eclipse-jsp-file-error" src="http://jakubas.net.pl/wp-content/uploads/2010/02/eclipse-jsp-file-error.png" alt="Eclipse jsp file error" /></a></p>
<p><br class="spacer_" /></p>
<p><strong>Rozwiązanie:</strong></p>
<p>Eclipse domyślnie używa jako <a rel="nofollow" href="http://pl.wikipedia.org/wiki/Java_Runtime_Environment">JRE</a> ( <strong>Java Runtime Environment</strong> ) <em>Java  SE 6 Runtime Environment</em>, które to nie są przystosowane do plików<strong> <em>.jsp</em></strong>. Należy więc <strong>zmienić JRE</strong> w<em> &#8222;Windows -&gt; Preferences -&gt; Java -&gt; Installed JREs&#8221;</em> na <strong>JDK</strong> ( Java Development Kit) . W tym celu wchodzimy do okienka wskazanego wyżej  i dodajemy ( <em>&#8222;Add&#8221;</em> ) nowe JRE, wybieramy <em>&#8222;Standard VM&#8221;</em> i <em>&#8222;Next&#8221;.</em></p>
<p><br class="spacer_" /></p>
<p style="text-align: center;"><a href="http://jakubas.net.pl/wp-content/uploads/2010/02/eclipse-add-new-ire.png" rel="lightbox[this_page] nofollow" title=""><img class="size-medium wp-image-281  aligncenter" title="Eclipse add new JRE" src="http://jakubas.net.pl/wp-content/uploads/2010/02/eclipse-add-new-ire-300x286.png" alt="Eclipse add new IRE" /></a></p>
<p><span id="more-278"></span><br class="spacer_" /></p>
<p>Katalog  <strong><em>JRE home</em> </strong>ustawiamy na ten w, którym zainstalowaliśmy JDK ( dla systemu Windows 64x domyślnie jest to katalog <em>&#8222;C:\Program Files (x86)\Java\jdk1.6.0_17\&#8221;</em> ).</p>
<p><br class="spacer_" /></p>
<p style="text-align: center;"><a href="http://jakubas.net.pl/wp-content/uploads/2010/02/eclipse-add-new-ire-home.png" rel="lightbox[this_page] nofollow" title=""><img class="size-medium wp-image-282  aligncenter" title="Eclipse add new jre" src="http://jakubas.net.pl/wp-content/uploads/2010/02/eclipse-add-new-ire-home-300x287.png" alt="Eclipse ustawianie IRE home" /></a></p>
<p><br class="spacer_" /></p>
<p>Po wybraniu katalogu musimy chwilę poczekać, aż zostanie on przeskanowany. Po ewentualnej zmianie nazwy nowego JRE możemy zakończyć proces przyciskiem <em>&#8222;Finish&#8221;</em>. W oknie <em>&#8222;Installed JREs&#8221; </em><strong>wybieramy</strong> nowo dodane JRE i zatwierdzamy zmiany przyciskiem <em>&#8222;OK&#8221;</em>.</p>
<p><br class="spacer_" /></p>
<p style="text-align: center;"><a href="http://jakubas.net.pl/wp-content/uploads/2010/02/eclipse-change-ire.png" rel="lightbox[this_page] nofollow" title=""><img class="size-medium wp-image-283  aligncenter" title="Eclipse zmiana JRE" src="http://jakubas.net.pl/wp-content/uploads/2010/02/eclipse-change-ire-300x232.png" alt="Eclipse zmiana domyślnego IRE" /></a></p>
<p><br class="spacer_" /></p>
<p>Po chwili <strong>błąd</strong> pliku <strong><em>.jsp</em></strong> powinien zniknąć.</p>
<p>Artykuł pochodzi z: <a href="http://jakubas.net.pl/ogolna/eclipse-google-app-engine-javaee-jsp-problem/278">Eclipse + Google App Engine + JavaEE + JSP = problem</a> , <a title="Piotr Jakubas" href="http://jakubas.net.pl">Jakubas Piotr - IT Blog</a></p>
]]></content:encoded>
			<wfw:commentRss>http://jakubas.net.pl/ogolna/eclipse-google-app-engine-javaee-jsp-problem/278/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Optymalizacja JavaScript</title>
		<link>http://jakubas.net.pl/internet/optymalizacja-javascriptu/149</link>
		<comments>http://jakubas.net.pl/internet/optymalizacja-javascriptu/149#comments</comments>
		<pubDate>Wed, 13 Jan 2010 16:59:59 +0000</pubDate>
		<dc:creator>Piotr</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[czas]]></category>
		<category><![CDATA[Firebug]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[JS]]></category>
		<category><![CDATA[monitorowanie]]></category>
		<category><![CDATA[optymalizacjia]]></category>
		<category><![CDATA[pętle]]></category>
		<category><![CDATA[poprawki]]></category>
		<category><![CDATA[prędkość]]></category>
		<category><![CDATA[problem]]></category>
		<category><![CDATA[reflow]]></category>
		<category><![CDATA[scope chain]]></category>
		<category><![CDATA[szybkość]]></category>

		<guid isPermaLink="false">http://jakubas.net.pl/?p=149</guid>
		<description><![CDATA[Najczęściej spotykanym zastosowaniem języka JavaScript są strony WWW. Wolne działanie napisanych przez nas skryptów może odstraszyć potencjalnych użytkowników. Powinniśmy się więc starać aby nasze aplikacje działały sprawnie i szybko.<p>Artykuł pochodzi z: <a href="http://jakubas.net.pl/internet/optymalizacja-javascriptu/149">Optymalizacja JavaScript</a> , <a title="Piotr Jakubas" href="http://jakubas.net.pl">Jakubas Piotr - IT Blog</a></p>
]]></description>
			<content:encoded><![CDATA[<p> Najczęściej spotykanym zastosowaniem języka <strong>JavaScript</strong> są strony WWW. Wolne działanie napisanych przez nas skryptów może odstraszyć potencjalnych użytkowników. Powinniśmy się więc starać aby nasze aplikacje działały <strong>sprawnie i szybko</strong>. JavaScript jako język  interpretowalny jest nieporównywalnie wolniejsza od języków kompilowalnych, zazwyczaj jednak programy pisane w JS są na tyle małe aby nie dało się tego zauważyć. Problemy zaczynają się gdy nasz kod rozrasta się i zaczynamy spostrzegać niepokojące nas spowolnienie.</p>
<p>Jak temu zaradzić:</p>
<h3>1. Narzędzia</h3>
<p>Potrzebujemy odpowiednich narzędzi aby móc sprawdzić czy wprowadzane przez nas poprawki przynoszą jakiekolwiek efekty. Z pomocą może przyjść nam dodatek do <strong>Firefoxa <a rel="nofollow" href="http://getfirebug.com/" target="_blank">Firebug</a>,</strong> z pomocą którego będziemy mogli śledzić ewentualne błędy w naszym skrypcie oraz <strong>monitorować prędkość wykonywania</strong> wybranych fragmentów naszej aplikacji.</p>
<p>Czas wywołania fragmentów kodu możemy monitorować za pomocą konsoli:</p>
<pre lang="javascript">console.time("naszaFunkcja");
naszaFunkcja();
console.timeEnd("naszaFunkcja") ;
</pre>
<p>Po odświeżeniu strony na której umieszczony jest ten kod, w <strong>konsoli Firebug&#8217;a</strong> powinniśmy zobaczyć powiadomienie:</p>
<p><span id="more-149"></span></p>
<p style="text-align: center;"><a href="http://jakubas.net.pl/wp-content/uploads/2010/01/optymalizacja-javascript-firebug-konsola.png" rel="lightbox[this_page] nofollow" title=""><img class="aligncenter size-medium wp-image-170" title="optymalizacja-javascript-firebug-konsola" src="http://jakubas.net.pl/wp-content/uploads/2010/01/optymalizacja-javascript-firebug-konsola-300x35.png" alt="Optymalizacja Javascript  - Firebug konsola" /></a></p>
<p>Wiemy więc już jak będziemy sprawdzać czy wprowadzane zmiany przynoszą efekt, możemy więc zacząć je wprowadzać.</p>
<h3>2. Zamiana zmiennych globalnych na lokalne</h3>
<p>Zamiast:</p>
<pre lang="javascript">var glob = 2;
function fun(){
glob= glob * glob * glob;
}
</pre>
<p>Napisz:</p>
<pre lang="javascript">var glob = 2;
function fun(){
var loc = glob;
loc = loc* loc* loc;
glob = loc;
}
</pre>
<p>Uzasadnienie: Dostęp do<strong> zmiennych lokalnych</strong> w JS jest znacznie szybszy niż do zmiennych <strong>globalnych</strong> ( <a rel="nofollow" href="http://blogs.msdn.com/jscript/archive/2007/07/26/scope-chain-of-jscript-functions.aspx" target="_blank">więcej o scope chain</a>). Działanie takie ma sens tylko jeżeli do zmiennej globalnej odwołujemy się w funkcji więcej niż raz.</p>
<h3>3. Unikaj używania <em>with</em></h3>
<p>Uzasadnienie: Powoduje dodanie dodatkowych pól do <strong>scope chain</strong>, co znacząco wpływa na szybkość odwołań do zmiennych lokalnych i globalnych.</p>
<h3>4. Pamiętaj o używaniu <em>var</em> podczas deklarowania zmiennych.</h3>
<h3>5. Dostęp do atrybutów obiektów</h3>
<p>Pamiętaj o tym, że <strong>dostęp do atrybutu obiektu</strong> np. <em>object.name </em>zawsze będzie szybszy niż<em> object.name.name</em> . ( Nie ma natomiast różnicy pomiędzy odwołaniami <em>object.name</em> i <em>object.["name"]</em>. )</p>
<p>Zamiast:</p>
<pre lang="javascript">function fun( data ){
if( data.count &gt; 0 ){
for( var i = 0 ; i&lt; data.count ; i++){
fun_2( data.item[i] );
}
}
}
</pre>
<p>Napisz:</p>
<pre lang="javascript">function fun( data ){
var  count = data.count ,   item = data.item ;

if( count &gt; 0 ){

for( var i = 0 ; i&lt; count ; i++){
fun_2( item[i] );
}
}
}
</pre>
<h3>6. Pętle</h3>
<p>Nie istotne jest, którego rodzaju pętli używasz ( <em>while, for, do-while</em> ) najważniejsze jest jakie zabiegi przeprowadzasz wewnątrz pętli oraz <strong>ilość iteracji</strong> jakie pętla wykonuje.</p>
<p>Zamiast:</p>
<pre lang="javascript">for( var i = 0 ; i&lt; data.count ; i++){
}
</pre>
<p>Napisz:</p>
<pre lang="javascript">var  count = data.count  ;
for( var i = 0 ; i&lt; count ; i++){
}
</pre>
<p>Warunek końca pętli:  <em>i&lt; count</em> sprawdza czy wyrażenie i&lt; count == true, a więc wykonuje <strong>podwójne porównanie</strong>.</p>
<p>Więc zamiast:</p>
<pre lang="javascript">for( var i = 0 ; i&lt; data.count ; i++){
}
</pre>
<p>Napisz:</p>
<pre lang="javascript">var  count = data.count  ;
for( var i = count ;   i-- ; ){
}
</pre>
<p>Wszystkie <strong>pętle typu forEach</strong> ( wliczając w to dostępne w bibliotekach np. JQuery ) <strong>są wolniejsze</strong> od standardowych pętli. Należy więc rozważyć ich zmianę na standardowe pętle przynajmniej w <strong>krytycznych częściach</strong> naszej aplikacji.</p>
<h3>7. DOM</h3>
<p>Pamiętaj o tym, że dostęp do obiektów <a rel="nofollow" href="http://pl.wikipedia.org/wiki/Obiektowy_model_dokumentu" target="_blank">DOM</a> jest bardzo wolny.</p>
<p>Unikaj więc:</p>
<pre lang="javascript">var divs = document.getElementsByTagName("div");
for( var i = 0 ; i &lt; divs.length ; i++) {
}
</pre>
<p>Stosując:</p>
<pre lang="javascript">var divs = document.getElementsByTagName("div");
for( var i = 0 , len = divs.length ; i &lt; len ; i++) {
}
</pre>
<p>Jeżeli jesteś zmuszony do częstego odwoływania się do zbiorów elementów, rozważ przepisanie ich do tablicy ( dostęp do tablicy będzie wydajniejszy).</p>
<h3>8. Zmiana layoutu</h3>
<p>Każda zmiana dokonywana przez nas w DOM ( <strong>dodawanie nowych bloków</strong> ) , <strong>zmiany w CSS</strong>&#8216;sie wymuszają na przeglądarce ponowne przeliczenie pozycji elementów strony. <a rel="nofollow" href="http://code.google.com/intl/pl/speed/articles/reflow.html" target="_blank">Więcej na temat <em>reflow</em></a>.</p>
<p>Zamiast:</p>
<pre lang="javascript">element.style.height = "100px";
element.style.display= "block";
element.style.fontSize= "14px";
</pre>
<p>Użyj:</p>
<pre lang="css">.new_style{
height: 100px;
display: block;
font-size: 14px;
}
</pre>
<pre lang="javascript">element.className = "new_style";
</pre>
<p>Ograniczysz w ten sposób ilość &#8222;odświeżeń&#8221; z trzech do jednego.</p>
<h3>9. Uruchomienie JS w tle.</h3>
<p>Jeżeli dokonaliśmy już wszelkich możliwych poprawek, ale dalej nie jesteśmy zadowoleni z wyników, możemy postarać się aby nasza aplikacja <strong>nie przeszkadzała użytkownikom</strong>. Sposoby, które nam w tym pomogą:</p>
<ul>
<li>Uruchomienie krytycznych fragmentów kodu ( lub całych funkcji ) &#8222;w tle&#8221; za pomocą</li>
</ul>
<p style="padding-left: 90px;"><strong>setTimeout(</strong> &#8216;fun()&#8217; , 1 <strong>)</strong>;</p>
<p style="padding-left: 60px;">sprawi, że nie będziemy czekali na skończenie wykonywania funkcji fun().</p>
<ul>
<li>Importowanie pliku z naszym kodem na końcu strony tuż przed <strong>&lt;/body&gt;</strong> nie będzie spowalniało ładowania się zawartości strony.</li>
</ul>
<h3>10. Na koniec</h3>
<p>Jednym z ostatnich zabiegów jakie możemy zrobić jest archiwizacja pliku z kodem JavaScript za pomocą <a rel="nofollow" href="http://www.crockford.com/javascript/jsmin.html" target="_blank">JSMin</a>, który m.in. usunie z pliku niepotrzebne komentarze oraz białe znaki.</p>
<p><br class="spacer_" /></p>
<p>Opracowane na podstawie:  <a rel="nofollow" href="http://www.youtube.com/watch?v=mHtdZgou0qU" target="_blank">Speed Up Your JavaScript</a></p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 570px; width: 1px; height: 1px; overflow: hidden;"><strong>javascript</strong></div>
<p>Artykuł pochodzi z: <a href="http://jakubas.net.pl/internet/optymalizacja-javascriptu/149">Optymalizacja JavaScript</a> , <a title="Piotr Jakubas" href="http://jakubas.net.pl">Jakubas Piotr - IT Blog</a></p>
]]></content:encoded>
			<wfw:commentRss>http://jakubas.net.pl/internet/optymalizacja-javascriptu/149/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 0.538 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2012-02-06 04:35:27 -->

